diff --git a/ChangeLog b/ChangeLog index 044734b3a..83d58be12 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2001-10-24 Havoc Pennington + + * src/window.c (meta_window_new): support initial + on-all-workspaces setting + 2001-10-22 Havoc Pennington * src/stack.c (meta_stack_sync_to_server): fix to keep desktop diff --git a/src/window.c b/src/window.c index ea0ed14da..0005dbb47 100644 --- a/src/window.c +++ b/src/window.c @@ -427,13 +427,21 @@ meta_window_new (MetaDisplay *display, Window xwindow, if (window->initial_workspace_set) { - space = - meta_display_get_workspace_by_screen_index (window->display, - window->screen, - window->initial_workspace); - - if (space) - meta_workspace_add_window (space, window); + if (window->initial_workspace == 0xFFFFFFFF) + { + meta_workspace_add_window (window->screen->active_workspace, window); + window->on_all_workspaces = TRUE; + } + else + { + space = + meta_display_get_workspace_by_screen_index (window->display, + window->screen, + window->initial_workspace); + + if (space) + meta_workspace_add_window (space, window); + } } if (window->workspaces == NULL &&