#python #user-interface #gtk
Вопрос:
В моей Ubuntu 18.04 у меня есть этот файл рабочего стола:
$ cat gnome-connection-manager.desktop
[Desktop Entry]
Version=1.0
Encoding=UTF-8
Name=Gnome Connection Manager
Comment=A simple ssh connection manager for gnome
GenericName=Connection Manager
Exec=python3 /opt/gnome-connection-manager-1.2.1/gnome_connection_manager.py
Terminal=false
Type=Application
Icon=/opt/gnome-connection-manager-1.2.1/icon.png
Categories=GTK;GNOME;Network;
Name[en]=Gnome Connection Manager
StartupWMClass=[gnome_connection_manager.py]
Я поставил Exec
так, потому что для этого нужен python3, и я не могу поставить только скрипт, он не запускается.
И теперь я закрепляю это приложение как избранное на своей панели инструментов/панели задач, и при запуске оно не сочетает значок запущенного приложения с закрепленным значком приложения.
Когда я xprop
и нажимаю на окно запущенного приложения, я вижу эту строку:
WM_CLASS(STRING) = "gnome_connection_manager.py", "Gnome_connection_manager.py"
Так почему же он не объединяет значки, если я уже поместил свойство WM_CLASS в файл рабочего стола?
Я использую gnome.
И, разыскивая gtk, у меня есть:
$ dpkg -l | grep gtk
ii apport-gtk 2.20.9-0ubuntu7.24 all GTK frontend for the apport crash report system
ii gir1.2-gtk-3.0:amd64 3.22.30-1ubuntu4 amd64 GTK graphical user interface library -- gir bindings
ii gir1.2-gtksource-3.0:amd64 3.24.7-1 amd64 gir files for the GTK syntax highlighting widget
ii gir1.2-javascriptcoregtk-3.0:amd64 2.4.11-3ubuntu3 amd64 JavaScript engine library from WebKitGTK - GObject introspection data
ii gir1.2-javascriptcoregtk-4.0:amd64 2.32.3-0ubuntu0.18.04.1 amd64 JavaScript engine library from WebKitGTK - GObject introspection data
ii gir1.2-spiceclientgtk-3.0:amd64 0.34-1.1build1 amd64 GTK3 widget for SPICE clients (GObject-Introspection)
ii gstreamer1.0-gtk3:amd64 1.14.5-0ubuntu1~18.04.2 amd64 GStreamer plugin for GTK 3
ii gtk-update-icon-cache 3.22.30-1ubuntu4 amd64 icon theme caching utility
ii gtk2-engines-murrine:amd64 0.98.2-2ubuntu1 amd64 cairo-based gtk -2.0 theme engine
ii gtk2-engines-pixbuf:amd64 2.24.32-1ubuntu1 amd64 pixbuf-based theme for GTK 2.x
ii gtk2hs-buildtools 0.13.3.1-1 amd64 Tools to build the Gtk2Hs suite of User Interface libraries
ii gtkterm 0.99.7 git9d63182-1 amd64 simple GTK serial port terminal
ii ibus-gtk:amd64 1.5.17-3ubuntu5.3 amd64 Intelligent Input Bus - GTK 2 support
ii ibus-gtk3:amd64 1.5.17-3ubuntu5.3 amd64 Intelligent Input Bus - GTK 3 support
ii libavahi-ui-gtk3-0:amd64 0.7-3.1ubuntu1.3 amd64 Avahi GTK User interface library for GTK3
ii libcanberra-gtk-module:amd64 0.30-5ubuntu1 amd64 translates GTK widgets signals to event sounds
ii libcanberra-gtk0:amd64 0.30-5ubuntu1 amd64 GTK helper for playing widget event sounds with libcanberra
ii libcanberra-gtk3-0:amd64 0.30-5ubuntu1 amd64 GTK 3.0 helper for playing widget event sounds with libcanberra
ii libcanberra-gtk3-module:amd64 0.30-5ubuntu1 amd64 translates GTK3 widgets signals to event sounds
ii libchamplain-gtk-0.12-0:amd64 0.12.16-2 amd64 Gtk widget to display maps
ii libcheese-gtk25:amd64 3.28.0-1ubuntu1 amd64 tool to take pictures and videos from your webcam - widgets
ii libclutter-gtk-1.0-0:amd64 1.8.4-3 amd64 Open GL based interactive canvas library GTK widget
ii libcolord-gtk1:amd64 0.1.26-2 amd64 GTK convenience library for interacting with colord
ii libdbusmenu-gtk3-4:amd64 16.04.1 18.04.20171206-0ubuntu2 amd64 library for passing menus over DBus - GTK version
ii libdbusmenu-gtk4:amd64 16.04.1 18.04.20171206-0ubuntu2 amd64 library for passing menus over DBus - GTK version
ii libgnome-autoar-gtk-0-0:amd64 0.2.3-1ubuntu0.4 amd64 GTK widgets for the GNOME Autoar library
ii libgtk-3-0:amd64 3.22.30-1ubuntu4 amd64 GTK graphical user interface library
ii libgtk-3-bin 3.22.30-1ubuntu4 amd64 programs for the GTK graphical user interface library
ii libgtk-3-common 3.22.30-1ubuntu4 all common files for the GTK graphical user interface library
ii libgtk-3-dev:amd64 3.22.30-1ubuntu4 amd64 development files for the GTK library
ii libgtk2-perl 2:1.24992-1build1 amd64 Perl interface to the 2.x series of the Gimp Toolkit library
ii libgtk2.0-0:amd64 2.24.32-1ubuntu1 amd64 GTK graphical user interface library
ii libgtk2.0-bin 2.24.32-1ubuntu1 amd64 programs for the GTK graphical user interface library
ii libgtk2.0-common 2.24.32-1ubuntu1 all common files for the GTK graphical user interface library
ii libgtk3-perl 0.032-1 all Perl bindings for the GTK graphical user interface library
ii libgtkmm-3.0-1v5:amd64 3.22.2-2 amd64 C wrappers for GTK (shared libraries)
ii libgtksourceview-3.0-1:amd64 3.24.7-1 amd64 shared libraries for the GTK syntax highlighting widget
ii libgtksourceview-3.0-common 3.24.7-1 all common files for the GTK syntax highlighting widget
ii libgtksourceview-3.0-dev:amd64 3.24.7-1 amd64 development files for the GTK syntax highlighting widget
ii libgtksourceview-3.0-doc 3.24.7-1 all documentation for the GTK syntax highlighting widget
ii libgtkspell0:amd64 2.0.16-1.2 amd64 spell-checking addon for GTK's TextView widget
ii libgtkspell3-3-0:amd64 3.0.9-2 amd64 spell-checking addon for GTK 's TextView widget
ii libjavascriptcoregtk-1.0-0:amd64 2.4.11-3ubuntu3 amd64 JavaScript engine library from WebKitGTK
ii libjavascriptcoregtk-3.0-0:amd64 2.4.11-3ubuntu3 amd64 JavaScript engine library from WebKitGTK
ii libjavascriptcoregtk-3.0-bin 2.4.11-3ubuntu3 amd64 JavaScript engine library from WebKitGTK - command-line interpreter
ii libjavascriptcoregtk-3.0-dev:amd64 2.4.11-3ubuntu3 amd64 JavaScript engine library from WebKitGTK - development files
ii libjavascriptcoregtk-4.0-18:amd64 2.32.3-0ubuntu0.18.04.1 amd64 JavaScript engine library from WebKitGTK
ii libreoffice-gtk3 1:6.0.7-0ubuntu0.18.04.10 amd64 office productivity suite -- GTK 3 integration
ii libspice-client-gtk-3.0-5:amd64 0.34-1.1build1 amd64 GTK3 widget for SPICE clients (runtime library)
ii libspice-client-gtk-3.0-dev 0.34-1.1build1 amd64 GTK3 widget for SPICE clients (development files)
ii libwebkit2gtk-4.0-37:amd64 2.32.3-0ubuntu0.18.04.1 amd64 Web content engine library for GTK
ii libwebkitgtk-1.0-0:amd64 2.4.11-3ubuntu3 amd64 Web content engine library for GTK
ii libwebkitgtk-3.0-0:amd64 2.4.11-3ubuntu3 amd64 Web content engine library for GTK
ii libwebkitgtk-3.0-dev:amd64 2.4.11-3ubuntu3 amd64 Web content engine library for GTK - development files
ii libwmf0.2-7-gtk 0.2.8.4-12 amd64 Windows metafile conversion library
ii libwxgtk-media3.0-gtk3-0v5:amd64 3.0.4 dfsg-3 amd64 wxWidgets Cross-platform C GUI toolkit (GTK 3 media library runtime)
ii libwxgtk-media3.0-gtk3-dev 3.0.4 dfsg-3 amd64 wxWidgets Cross-platform C GUI toolkit (GTK 3 media library development)
ii libwxgtk3.0-gtk3-0v5:amd64 3.0.4 dfsg-3 amd64 wxWidgets Cross-platform C GUI toolkit (GTK 3 runtime)
ii libwxgtk3.0-gtk3-dev 3.0.4 dfsg-3 amd64 wxWidgets Cross-platform C GUI toolkit (GTK 3 development)
ii python-gtk2 2.24.0-5.1ubuntu2 amd64 Python bindings for the GTK widget set
ii python3-aptdaemon.gtk3widgets 1.1.1 bzr982-0ubuntu19.5 all Python 3 GTK 3 widgets to run an aptdaemon client
ii software-properties-gtk 0.96.24.32.14 all manage the repositories that you install software from (gtk)
ii transmission-gtk 2.92-3ubuntu2 amd64 lightweight BitTorrent client (GTK interface)
ii ubuntu-release-upgrader-gtk 1:18.04.44 all manage release upgrades
ii usb-creator-gtk 0.3.5ubuntu18.04.2 amd64 create a startup disk using a CD or disc image (for GNOME)
ii xdg-desktop-portal-gtk 1.0.2-0ubuntu1.1 amd64 GTK /GNOME portal backend for xdg-desktop-portal
ii xdg-user-dirs-gtk 0.10-2 amd64 tool to manage well known user directories (Gtk extension)
Я знаю, что прикрепленный файл рабочего стола-это тот, который я редактирую, так как редактирование и сохранение вступают в силу немедленно. Он внутри ~/.local/share/applications/
.
Другие файлы рабочего стола в той же папке хорошо сочетаются. Я установил приложение с именем xpad
, и другим примером является приложение Chrome. Все хорошо работают с xprop
gtk и gtk, кроме этого.
Ответ №1:
Хм….
Я снял скобки вокруг StartupWMClass
, и это работает. Так не должно быть [xxx]
. Это может быть только xxx
.