From 22e416c09beb1c61bed7a2c3f9191d3e31d0a8f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20M=C3=BCllner?= Date: Mon, 25 Dec 2017 10:21:18 +0100 Subject: [PATCH] window-list: Fix icons not showing for some windows on wayland On wayland, the properties that are used for application matching are generally set after the window has been created, so it is normal that buttons start with the fallback icon. While we already track the properties that are relevant for app matching, our signal handler may run before the window is matched to its app. Make sure the WindowTracker gets to process those signals first by using connect_after() for our own handlers. Fixes https://gitlab.gnome.org/GNOME/gnome-shell-extensions/issues/10. --- extensions/window-list/extension.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/extensions/window-list/extension.js b/extensions/window-list/extension.js index 4978b497..760ba152 100644 --- a/extensions/window-list/extension.js +++ b/extensions/window-list/extension.js @@ -156,11 +156,11 @@ class WindowTitle { this._textureCache.connect('icon-theme-changed', this._updateIcon.bind(this)); this._notifyWmClass = - this._metaWindow.connect('notify::wm-class', - this._updateIcon.bind(this)); + this._metaWindow.connect_after('notify::wm-class', + this._updateIcon.bind(this)); this._notifyAppId = - this._metaWindow.connect('notify::gtk-application-id', - this._updateIcon.bind(this)); + this._metaWindow.connect_after('notify::gtk-application-id', + this._updateIcon.bind(this)); this._updateIcon(); this.actor.connect('destroy', this._onDestroy.bind(this));