GNOME Bugzilla – Bug 598902
Flash effect implementation problematic from window-management POV
Last modified: 2009-12-03 19:42:52 UTC
The flash effect uses a regular top-level fullscreen window. This is not a good choice from a WM point of view, as that appears to the WM as if another application was started. If using Mutter as the WM, you will likely get the map() effect run on this window, and even worse, in Moblin, where the default policy is to place each application on a new workspace, the flash will trigger temporary workspace switch away from the Cheese main window. Windows like this should be override-redirect (e.g. GTK_WINDOW_POPUP), and also parented to the application main window.
Confirmed on gnome-shell/mutter, cannot test it on moblin right now but I'm pretty sure you're right.
Do you have any idea about an alternative implementation? mutter doesn't seem to honor fullscreen requests on POPUP gtk windows (probably because of override redirect all those skip_pager, skip_taskbar, fullscreen, etc. functions don't work with popups). Shouldn't the window manager disable the effects on undecorated+skip taskbar+skip pager windows?
The fullscreen state only makes sense for windows that the WM manages, and it does not manage override-redirects; I think the simplest thing is to size the popup window manually to match the screen size.
Created attachment 149029 [details] [review] Make the flash window a popup To fix problems with some window managers.
Attachment 149029 [details] pushed as 272eb3f - Make the flash window a popup