diff options
Diffstat (limited to 'libwnck/window.c')
-rw-r--r-- | libwnck/window.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/libwnck/window.c b/libwnck/window.c index 229b4cb..6e23d01 100644 --- a/libwnck/window.c +++ b/libwnck/window.c @@ -72,6 +72,7 @@ struct _WnckWindowPrivate WnckScreen *screen; WnckApplication *app; WnckClassGroup *class_group; + gboolean has_group_leader; Window group_leader; Window transient_for; int orig_event_mask; @@ -504,6 +505,7 @@ _wnck_window_create (Window xwindow, /* Default the group leader to the window itself; it is set in * update_wmhints() if a different group leader is specified. */ + window->priv->has_group_leader = FALSE; window->priv->group_leader = window->priv->xwindow; window->priv->session_id = @@ -767,6 +769,12 @@ wnck_window_get_group_leader (WnckWindow *window) return window->priv->group_leader; } +gboolean +_wnck_window_get_has_group_leader (WnckWindow *window) +{ + return window->priv->has_group_leader; +} + /** * wnck_window_get_xid: * @window: a #WnckWindow. @@ -3188,7 +3196,10 @@ update_wmhints (WnckWindow *window) _wnck_atom_get ("WM_HINTS")); if (hints->flags & WindowGroupHint) + { + window->priv->group_leader = TRUE; window->priv->group_leader = hints->window_group; + } if (hints->flags & XUrgencyHint) { |