Skip to content

Commit 9e7e19d

Browse files
committed
Move windows to shell group when window type changes
1 parent ace6eed commit 9e7e19d

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

src/WindowListener.vala

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ public class Gala.WindowListener : Object {
5555

5656
public signal void window_workspace_changed (Meta.Window window);
5757
public signal void window_on_all_workspaces_changed (Meta.Window window);
58+
public signal void window_type_changed (Meta.Window window);
5859

5960
private Gee.HashMap<Meta.Window, WindowGeometry?> unmaximized_state_geometry;
6061

@@ -81,6 +82,9 @@ public class Gala.WindowListener : Object {
8182
case "on-all-workspaces":
8283
window_on_all_workspaces_changed (window);
8384
break;
85+
case "window-type":
86+
window_type_changed (window);
87+
break;
8488
}
8589
}
8690

src/WindowManager.vala

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ namespace Gala {
4747
* It will (eventually) never be hidden by other components and is always on top of everything. Therefore elements are
4848
* responsible themselves for hiding depending on the state we are currently in (e.g. normal desktop, open multitasking view, fullscreen, etc.).
4949
*/
50-
public Clutter.Actor shell_group { get; private set; }
50+
private Clutter.Actor shell_group { get; private set; }
5151

5252
private Clutter.Actor menu_group { get; set; }
5353

@@ -388,6 +388,13 @@ namespace Gala {
388388
InternalUtils.wait_for_window_actor_visible (window, check_shell_window)
389389
);
390390

391+
WindowListener.get_default ().window_type_changed.connect ((window) => {
392+
unowned var window_actor = (Meta.WindowActor) window.get_compositor_private ();
393+
if (window_actor != null) {
394+
check_shell_window (window_actor);
395+
}
396+
});
397+
391398
stage.show ();
392399

393400
plugin_manager.load_waiting_plugins ();

0 commit comments

Comments
 (0)