程序打开后修改桌面应用程序图标,例如在 alt-tab 中

程序打开后修改桌面应用程序图标,例如在 alt-tab 中

你可能会说我是一个完美主义者,但我正在努力解决以下问题:

我有两个应用程序不是来自存储库,但我的应用程序图标有问题。我目前使用的是 Debian 9 和 Gnome 3.22.2,带有 Moka 图标主题(抱歉缺少链接,我可能只使用其中两个)。

因此,我成功地创建了桌面文件,以便从正确的图标目录(具有适当的大小)中获取图标\usr\share\icons\Moka,但在打开应用程序时,Gnome 破折号和 alt-tab 中会引入不同的图标。实际和显示的图标示例如下所示:

Matlab Moka 图标- 我的收藏夹、桌面等中的应用程序图标,本来就是这样的。

显示图标- 打开程序后和 Alt-Tab 上显示的图标。

考虑到所显示的图标,我的问题是它的分辨率低,而且它不被识别为同一图标。其他应用程序也会发生同样的情况,但我认为一个例子就足够了。

我熟悉此论坛上名为“窗口切换上的 Lowres 应用程序图标(alt-tab)”的类似帖子,但不幸的是,这没有提供解决方案。我还尝试放置一个高分辨率图标,/usr/share/pixmaps但这并不能提供解决方案。即使指定指向高分辨率图形的直接链接也.desktop不会更改“alt-tab”图标。

有谁知道如何克服/解决这个问题?

答案1

问题是gnome-shell需要能够将窗口与 .desktop 文件关联起来。在不使用 API 的应用程序GtkApplication(即大多数非 GNOME 应用程序)中,这是通过将WM_CLASS窗口的 与相应的 .desktop 文件进行匹配来完成的。因此,您要么必须更改 .desktop 文件的名称以匹配WM_CLASS应用程序窗口的名称,要么必须StartupWMClass在 .desktop 文件中指定一个WM_CLASS包含应与该 .desktop 文件匹配的键。您可以找到WM_CLASS正在使用的窗口xprop,然后单击该窗口。这是列表中的第二个条目。否则gnome-shell使用窗口本身指定的图标,这可能是您看到的低分辨率图标。

相关内容