core/stack: Get workspace_manager from display whenever possible

Simplifies meta_stack_update_layer and meta_stack_update_transient

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4183>
This commit is contained in:
Mattia Formichetti
2024-12-11 17:01:49 +01:00
committed by Marge Bot
parent e591850206
commit e1cf5352a6
5 changed files with 11 additions and 19 deletions

View File

@ -3228,7 +3228,7 @@ check_fullscreen_func (gpointer data)
status so we need to trigger a re-layering. */
MetaWindow *top_window = meta_stack_get_top (display->stack);
if (top_window)
meta_stack_update_layer (display->stack, top_window);
meta_stack_update_layer (display->stack);
g_signal_emit (display, display_signals[IN_FULLSCREEN_CHANGED], 0, NULL);
}

View File

@ -245,10 +245,9 @@ meta_stack_remove (MetaStack *stack,
}
void
meta_stack_update_layer (MetaStack *stack,
MetaWindow *window)
meta_stack_update_layer (MetaStack *stack)
{
MetaWorkspaceManager *workspace_manager = window->display->workspace_manager;
MetaWorkspaceManager *workspace_manager = stack->display->workspace_manager;
stack->need_relayer = TRUE;
meta_stack_changed (stack);
@ -256,10 +255,9 @@ meta_stack_update_layer (MetaStack *stack,
}
void
meta_stack_update_transient (MetaStack *stack,
MetaWindow *window)
meta_stack_update_transient (MetaStack *stack)
{
MetaWorkspaceManager *workspace_manager = window->display->workspace_manager;
MetaWorkspaceManager *workspace_manager = stack->display->workspace_manager;
stack->need_constrain = TRUE;
meta_stack_changed (stack);

View File

@ -134,27 +134,22 @@ void meta_stack_remove (MetaStack *stack,
/**
* meta_stack_update_layer:
* @stack: The stack to recalculate
* @window: Dummy parameter
*
* Recalculates the correct layer for all windows in the stack,
* and moves them about accordingly.
*
*/
void meta_stack_update_layer (MetaStack *stack,
MetaWindow *window);
void meta_stack_update_layer (MetaStack *stack);
/**
* meta_stack_update_transient:
* @stack: The stack to recalculate
* @window: Dummy parameter
*
* Recalculates the correct stacking order for all windows in the stack
* according to their transience, and moves them about accordingly.
*
* FIXME: What's with the dummy parameter?
*/
void meta_stack_update_transient (MetaStack *stack,
MetaWindow *window);
void meta_stack_update_transient (MetaStack *stack);
/**
* meta_stack_raise:

View File

@ -6209,11 +6209,11 @@ meta_window_update_layer (MetaWindow *window)
if (group)
meta_group_update_layers (group);
else
meta_stack_update_layer (window->display->stack, window);
meta_stack_update_layer (window->display->stack);
meta_stack_thaw (window->display->stack);
#else
meta_stack_freeze (window->display->stack);
meta_stack_update_layer (window->display->stack, window);
meta_stack_update_layer (window->display->stack);
meta_stack_thaw (window->display->stack);
#endif
}
@ -7332,7 +7332,7 @@ meta_window_set_transient_for (MetaWindow *window,
/* update stacking constraints */
if (!window->override_redirect)
meta_stack_update_transient (window->display->stack, window);
meta_stack_update_transient (window->display->stack);
if (!window->constructing && !window->override_redirect)
meta_window_queue (window, META_QUEUE_MOVE_RESIZE | META_QUEUE_CALC_SHOWING);

View File

@ -181,8 +181,7 @@ meta_group_update_layers (MetaGroup *group)
meta_stack_freeze (window->display->stack);
frozen_stacks = g_slist_prepend (frozen_stacks, window->display->stack);
meta_stack_update_layer (window->display->stack,
window);
meta_stack_update_layer (window->display->stack);
tmp = tmp->next;
}