mutter/src
Dan Winship eb0e658c99 window: fix a case of appears-focused getting stuck
Since appears-focus only propagates up from modal dialogs, if an
application removed the modal hint from a dialog before destroying it,
then its parent would be left with a stray reference to it in
attached_focus_window, causing it to be permanently appears-focused.

The obvious fix, calling meta_window_propagate_focus_appearance() when
the modal hint is removed, tends to cause noticeable flashing, because
the window will get drawn unfocused and then focused again.

So instead we just change meta_window_propagate_focus_appearance() to
check the window type only when focusing in, not when focusing out.

This would also cause flashing, but in this case we can avoid it by
not notifying the change in appears-focus on the parent window if it
is the expected_focus_window (which it will be by this point). (This
does mean though that if something weird happens and the window
doesn't end up becoming the focus window, it won't get redrawn
unfocused until something else forces it to.)

https://bugzilla.gnome.org/show_bug.cgi?id=647613
2011-04-20 14:40:47 -04:00
..
compositor window: add an appears-focused property, redraw shadows when it changes 2011-03-28 12:09:10 -04:00
core window: fix a case of appears-focused getting stuck 2011-04-20 14:40:47 -04:00
meta Export meta_get_replace_current_wm() 2011-03-23 16:08:51 -04:00
tools Remove meta_restart() / "mutter-message restart" 2011-03-07 18:03:43 -05:00
ui Move the installed includes to a subdir 2011-03-07 18:19:53 -05:00
wm-tester Fix missing comma in previous commit 2010-04-11 19:59:29 +02:00
.cvsignore Install desktop files in both .../share/applications and 2008-09-12 04:05:17 +00:00
default_icon.png
libmutter.pc.in Go with a single libmutter library 2011-03-17 15:31:53 +01:00
Makefile.am Go with a single libmutter library 2011-03-17 15:31:53 +01:00
mutter-enum-types.c.in Add bits missing from last commit 2009-07-04 17:14:48 +01:00
mutter-enum-types.h.in Add bits missing from last commit 2009-07-04 17:14:48 +01:00
mutter-marshal.list Add signals for when windows change monitors 2011-03-17 13:48:54 +01:00
mutter-plugins.pc.in Comprehensively rename to Mutter 2009-06-16 14:17:10 -04:00
mutter-wm.desktop.in Remove deprecated Encoding key from desktop files 2009-08-22 14:24:22 +02:00
mutter.desktop.in Remove deprecated Encoding key from desktop files 2009-08-22 14:24:22 +02:00
mutter.schemas.in Fix description for workspaces_only_on_primary key 2011-03-21 15:30:28 -04:00
run-mutter.sh Comprehensively rename to Mutter 2009-06-16 14:17:10 -04:00
stock_delete.png
stock_maximize.png
stock_minimize.png