GNOME Bugzilla – Bug 632007
mis-stacking of attached dialogs
Last modified: 2021-07-05 13:44:00 UTC
the packagekit icon was yelling at me, so I opened it up, clicked the "install updates" (or whatever it is) button, and then minimized the window and went back to what I was doing. When the updates finished installing, packagekit presented a modal dialog saying it was done, which also unminimized its main window. However, the main window got focus-stealing-prevented from restacking itself over the terminal window I was using, *but the "attached" dialog didn't. So I had packagekit's modal dialog floating over my terminal window, with packagekit's window underneath the terminal.
*** Bug 644842 has been marked as a duplicate of this bug. ***
Created attachment 183481 [details] [review] stack: if attach_modal_dialogs enabled, place modal dialog near parent
(In reply to comment #2) > Created an attachment (id=183481) [details] [review] > stack: if attach_modal_dialogs enabled, place modal dialog near parent Fixes the situation I reported in bug 644842.
Created attachment 184030 [details] Test program Here's a test program I used, to reproduce the problem, start this program then raise two windows above it in quick succession before the dialog shows up - the stacking will be, bottom to top: stack.c parent window first raised window stack.c dialog second raised window
Review of attachment 183481 [details] [review]: Hmm: - If two windows are both transient for each other, this patch will go into an infinite loop. - Patch doesn't do the right thing for parent/child/grandchild relationships since it can encounter them in any order, it might move the grandchild next to the child, then move the child away next to the parent would like to see this tested against test cases for both things before this lands. Also, would like to see a test case for what happens if the parent and dialog are in different layers. I guess this effectively squashes the layer of the dialog to the layer of the parent it is attached to, which is probably OK.
This is still an issue in 3.27.
GNOME is going to shut down bugzilla.gnome.org in favor of gitlab.gnome.org. As part of that, we are mass-closing older open tickets in bugzilla.gnome.org which have not seen updates for a longer time (resources are unfortunately quite limited so not every ticket can get handled). If you can still reproduce the situation described in this ticket in a recent and supported software version, then please follow https://wiki.gnome.org/GettingInTouch/BugReportingGuidelines and create a new ticket at https://gitlab.gnome.org/GNOME/mutter/-/issues/ Thank you for your understanding and your help.