GNOME Bugzilla – Bug 770163
stacked "modal" dim does not go away
Last modified: 2016-09-09 15:18:18 UTC
After using Transmission's "Set Location" context-menu item, a modal window "Set Torrent Location" appears, and the parent window dims to match. When the location is chosen, another modal window "Moving..." appears on top of it, and the parent window is dimmed more. When the move is finished, both modal windows automatically close, but the main window only loses one dim layer and remains dimmed. The only way to fix it is to again open "Set Location" and cancel it. mutter & gnome-shell all the way up to 3.21-git
Created attachment 333914 [details] [review] windowManager: Fix windows not getting undimmed in some cases meta_window_foreach_transient() iterates through all transients of a window, not only direct transients. This means that simply checking if a transient is an attached dialog isn't enough because it might be a non-direct transient for the window we're checking, in which case we don't want to dim the window. In particular this fixes windows not getting undimmed when they have more that one level of transient children and the direct transient gets destroyed. In that case we would still find at least one non-direct transient child and decide to keep the window dimmed.
Review of attachment 333914 [details] [review]: LGTM
Attachment 333914 [details] pushed as dbd04df - windowManager: Fix windows not getting undimmed in some cases