sticky windows aren't visibile on all screens. Check the workspace is on

2002-06-20  Mark McLoughlin  <mark@skynet.ie>

        * src/window.c: (meta_window_visible_on_workspace): sticky
        windows aren't visibile on all screens. Check the workspace
        is on the same screen as the window.

        * src/workspace.c: (meta_workspace_list_windows): use
        meta_window_visible_on_workspace here.
This commit is contained in:
Mark McLoughlin 2002-06-20 02:29:19 +00:00 committed by Mark McLoughlin
parent fb49dabcc2
commit 854e58fd82
3 changed files with 11 additions and 3 deletions

View File

@ -1,3 +1,12 @@
2002-06-20 Mark McLoughlin <mark@skynet.ie>
* src/window.c: (meta_window_visible_on_workspace): sticky
windows aren't visibile on all screens. Check the workspace
is on the same screen as the window.
* src/workspace.c: (meta_workspace_list_windows): use
meta_window_visible_on_workspace here.
2002-06-19 Havoc Pennington <hp@pobox.com>
* src/display.c (meta_resize_gravity_from_grab_op): handle UNKNOWN

View File

@ -953,7 +953,7 @@ gboolean
meta_window_visible_on_workspace (MetaWindow *window,
MetaWorkspace *workspace)
{
return window->on_all_workspaces ||
return (window->on_all_workspaces && window->screen == workspace->screen) ||
meta_workspace_contains_window (workspace, window);
}

View File

@ -285,8 +285,7 @@ meta_workspace_list_windows (MetaWorkspace *workspace)
{
MetaWindow *window = tmp->data;
if (window->on_all_workspaces ||
meta_workspace_contains_window (workspace, window))
if (meta_window_visible_on_workspace (window, workspace))
workspace_windows = g_list_prepend (workspace_windows,
window);