After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 701097 - Message tray lightbox breakage
Message tray lightbox breakage
Status: RESOLVED FIXED
Product: gnome-shell
Classification: Core
Component: message-tray
unspecified
Other Linux
: Normal normal
: ---
Assigned To: gnome-shell-maint
gnome-shell-maint
Depends on:
Blocks:
 
 
Reported: 2013-05-27 19:17 UTC by Florian Müllner
Modified: 2013-05-28 14:34 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
messageTray: Fix lightbox outside the overview (3.03 KB, patch)
2013-05-27 20:13 UTC, Florian Müllner
committed Details | Review

Description Florian Müllner 2013-05-27 19:17:20 UTC
Commit d0310bd745968 blindly replaced global.overlay_group with Main.layoutManager.overviewGroup. However while the former is always visible, the latter is hidden while the overview isn't active; as a result, the message tray lightbox now only works in the overview.
Comment 1 Florian Müllner 2013-05-27 20:13:50 UTC
Created attachment 245410 [details] [review]
messageTray: Fix lightbox outside the overview

Commit d0310bd745968 blindly replaced global.overlay_group with
Main.layout.overviewGroup, but unlike the former, the latter is
hidden while the overview is not active, which makes it unsuitable
for the message tray's light box. In fact, with the removal of
global.overlay_group, there is no longer a container which may
be used both inside and outside the overview, so we can either
recreate the lightbox each time we show/hide the overview, or
use different lightboxes altogether; this opts for the latter.
Comment 2 Ray Strode [halfline] 2013-05-28 14:22:46 UTC
Review of attachment 245410 [details] [review]:

+

::: js/ui/messageTray.js
@@ +1661,3 @@
+        this._lightboxes = [];
+        let lightboxContainers = [global.window_group,
+                                  Main.layoutManager.overviewGroup];

Since only one lightbox can be visible at once, it might be better if  the code only created on lightbox and just moved it around as necessary, but there's something to be said for keeping things straightforward like you have here, too.  Your way seems less likely to go wrong during transitions.
Comment 3 Florian Müllner 2013-05-28 14:34:12 UTC
Attachment 245410 [details] pushed as 365cda3 - messageTray: Fix lightbox outside the overview