meta_screen_foreach_window(): Skip override-redirect windows
Don't include override-redirect windows when iterating the windows in the screen. We don't need them for any of the current uses: - Queueing redraws and resizes on managed windows - Checking which windows should be added to a new workspace http://bugzilla.gnome.org/show_bug.cgi?id=582639
This commit is contained in:
parent
00d955eb40
commit
3d81a1e5ec
@ -1045,6 +1045,15 @@ listify_func (gpointer key, gpointer value, gpointer data)
|
|||||||
*listp = g_slist_prepend (*listp, value);
|
*listp = g_slist_prepend (*listp, value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* meta_screen_foreach_window:
|
||||||
|
* @screen: a #MetaScreen
|
||||||
|
* @func: function to call for each window
|
||||||
|
* @data: user data to pass to @func
|
||||||
|
*
|
||||||
|
* Calls the specified function for each window on the screen,
|
||||||
|
* ignoring override-redirect windows.
|
||||||
|
*/
|
||||||
void
|
void
|
||||||
meta_screen_foreach_window (MetaScreen *screen,
|
meta_screen_foreach_window (MetaScreen *screen,
|
||||||
MetaScreenWindowFunc func,
|
MetaScreenWindowFunc func,
|
||||||
@ -1075,7 +1084,7 @@ meta_screen_foreach_window (MetaScreen *screen,
|
|||||||
{
|
{
|
||||||
MetaWindow *window = tmp->data;
|
MetaWindow *window = tmp->data;
|
||||||
|
|
||||||
if (window->screen == screen)
|
if (window->screen == screen && !window->override_redirect)
|
||||||
(* func) (screen, window, data);
|
(* func) (screen, window, data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user