From d2661753076a60a7981836e4a85e88c4588fb1b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20M=C3=BCllner?= Date: Thu, 17 Nov 2022 15:21:42 +0100 Subject: [PATCH] layout: Initialize regions unconditionally We currently initialize regions in all code paths except for the greeter. But while there are no windows on the login screen, the work area can still be used for positioning, for example for notifications. Part-of: --- js/ui/layout.js | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/js/ui/layout.js b/js/ui/layout.js index beb4c0a5d..bb51946b7 100644 --- a/js/ui/layout.js +++ b/js/ui/layout.js @@ -624,20 +624,19 @@ var LayoutManager = GObject.registerClass({ reactive: true }); this.addChrome(this._coverPane); + // Force an update of the regions before we scale the UI group to + // get the correct allocation for the struts. + // Do this even when we don't animate on restart, so that maximized + // windows restore to the right size. + this._updateRegions(); + if (Meta.is_restart()) { - // On restart, we don't do an animation. Force an update of the - // regions immediately so that maximized windows restore to the - // right size taking struts into account. - this._updateRegions(); + // On restart, we don't do an animation. } else if (Main.sessionMode.isGreeter) { this.panelBox.translation_y = -this.panelBox.height; } else { this._updateBackgrounds(); - // We need to force an update of the regions now before we scale - // the UI group to get the correct allocation for the struts. - this._updateRegions(); - this.keyboardBox.hide(); let monitor = this.primaryMonitor; -- 2.38.1