panel: Also ignore hidden windows for proximity

We currently only ignore minimized windows, not windows that are
hidden for other reasons - namely on wayland windows are initially
hidden until they are placed.

This fixes a flicker in the transparent top bar on wayland when the
"position" of an unplaced window wrongly suggests the window is
overlapping the top bar.

https://gitlab.gnome.org/GNOME/gnome-shell/issues/693
This commit is contained in:
Florian Müllner 2018-10-23 16:05:01 +02:00
parent b405ed6442
commit a0dc8dc7ef

View File

@ -1087,6 +1087,7 @@ var Panel = new Lang.Class({
let windows = activeWorkspace.list_windows().filter(metaWindow => { let windows = activeWorkspace.list_windows().filter(metaWindow => {
return metaWindow.is_on_primary_monitor() && return metaWindow.is_on_primary_monitor() &&
metaWindow.showing_on_its_workspace() && metaWindow.showing_on_its_workspace() &&
!metaWindow.is_hidden() &&
metaWindow.get_window_type() != Meta.WindowType.DESKTOP; metaWindow.get_window_type() != Meta.WindowType.DESKTOP;
}); });