diff --git a/debian/dde-desktop.install b/debian/dde-desktop.install index d33403b9b8..6622955c84 100644 --- a/debian/dde-desktop.install +++ b/debian/dde-desktop.install @@ -1,5 +1,6 @@ usr/bin/dde-desktop usr/lib/*/dde-file-manager/plugins/desktop-core/*.so +usr/bin/dfm-open.sh usr/share/applications/dde-computer.desktop usr/share/applications/dde-trash.desktop usr/share/applications/dde-home.desktop diff --git a/src/apps/dde-desktop/CMakeLists.txt b/src/apps/dde-desktop/CMakeLists.txt index 6fe2895ef4..1ac359dc4d 100644 --- a/src/apps/dde-desktop/CMakeLists.txt +++ b/src/apps/dde-desktop/CMakeLists.txt @@ -47,6 +47,7 @@ install(TARGETS ${PROJECT_NAME} DESTINATION bin) install(FILES data/com.deepin.dde.desktop.service DESTINATION share/dbus-1/services) # computer and trash +install(FILES data/applications/dfm-open.sh DESTINATION bin/) install(FILES data/applications/dde-computer.desktop DESTINATION share/applications/) install(FILES data/applications/dde-trash.desktop DESTINATION share/applications/) install(FILES data/applications/dde-home.desktop DESTINATION share/applications/) diff --git a/src/apps/dde-desktop/data/applications/dde-computer.desktop b/src/apps/dde-desktop/data/applications/dde-computer.desktop index 1c6bf262ad..845a9d66f0 100644 --- a/src/apps/dde-desktop/data/applications/dde-computer.desktop +++ b/src/apps/dde-desktop/data/applications/dde-computer.desktop @@ -1,7 +1,7 @@ [Desktop Entry] Categories=System; Comment=Show basic info of the computer. -Exec=gio open computer:/// +Exec=dfm-open.sh computer:/// GenericName=Computer Icon=computer Name=Computer diff --git a/src/apps/dde-desktop/data/applications/dde-trash.desktop b/src/apps/dde-desktop/data/applications/dde-trash.desktop index e1934dc65e..8584d71596 100644 --- a/src/apps/dde-desktop/data/applications/dde-trash.desktop +++ b/src/apps/dde-desktop/data/applications/dde-trash.desktop @@ -1,7 +1,7 @@ [Desktop Entry] Categories=System; Comment=Open trash. -Exec=gio open trash:/// +Exec=dfm-open.sh trash:/// GenericName=Open Trash. Icon=user-trash Name=Trash diff --git a/src/apps/dde-desktop/data/applications/dfm-open.sh b/src/apps/dde-desktop/data/applications/dfm-open.sh new file mode 100755 index 0000000000..2b1fab6084 --- /dev/null +++ b/src/apps/dde-desktop/data/applications/dfm-open.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +sys_name=$(grep "^SystemName=" /etc/os-version | cut -d'=' -f2) +sys_ver=$(grep "^MajorVersion=" /etc/os-version | cut -d'=' -f2) + +if [ "$sys_name" = "Deepin" ] && [ "$sys_ver" = "23" ]; then + echo "open $1 with xdg-open." + xdg-open $1 +else + echo "open $1 with gio open." + gio open $1 +fi +