layout: Don't use reparent
reparent() defines the new actor stacking order based on the existing depth of the actor, which is flat out wrong. Simply remove the actor from its old parent and add the new one in. https://bugzilla.gnome.org/show_bug.cgi?id=633620
This commit is contained in:
parent
eb5a836822
commit
978ac65cae
@ -151,7 +151,8 @@ const LayoutManager = new Lang.Class({
|
|||||||
[alloc.min_size, alloc.natural_size] = [height, height];
|
[alloc.min_size, alloc.natural_size] = [height, height];
|
||||||
});
|
});
|
||||||
|
|
||||||
global.window_group.reparent(this.uiGroup);
|
global.stage.remove_actor(global.window_group);
|
||||||
|
this.uiGroup.add_actor(global.window_group);
|
||||||
|
|
||||||
// Now, you might wonder why we went through all the hoops to implement
|
// Now, you might wonder why we went through all the hoops to implement
|
||||||
// the GDM greeter inside an X11 compositor, to do this at the end...
|
// the GDM greeter inside an X11 compositor, to do this at the end...
|
||||||
@ -160,7 +161,9 @@ const LayoutManager = new Lang.Class({
|
|||||||
if (Main.sessionMode.isGreeter)
|
if (Main.sessionMode.isGreeter)
|
||||||
global.window_group.hide();
|
global.window_group.hide();
|
||||||
|
|
||||||
global.overlay_group.reparent(this.uiGroup);
|
global.stage.remove_actor(global.overlay_group);
|
||||||
|
this.uiGroup.add_actor(global.overlay_group);
|
||||||
|
|
||||||
global.stage.add_child(this.uiGroup);
|
global.stage.add_child(this.uiGroup);
|
||||||
|
|
||||||
this.screenShieldGroup = new St.Widget({ name: 'screenShieldGroup',
|
this.screenShieldGroup = new St.Widget({ name: 'screenShieldGroup',
|
||||||
|
Loading…
Reference in New Issue
Block a user