From eab06bcf2464cdba80e302e3ecb8c0e83d22a332 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20=C3=85dahl?= Date: Mon, 25 Mar 2024 11:01:02 +0100 Subject: [PATCH] window: Move out 'showable' check from should_be_showing_on_workspace() Part-of: --- src/core/window.c | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/src/core/window.c b/src/core/window.c index ef9a058f7..edfa1ed62 100644 --- a/src/core/window.c +++ b/src/core/window.c @@ -1690,6 +1690,22 @@ window_has_buffer (MetaWindow *window) return TRUE; } +static gboolean +meta_window_is_showable (MetaWindow *window) +{ +#ifdef HAVE_WAYLAND + if (window->client_type == META_WINDOW_CLIENT_TYPE_WAYLAND && + !window_has_buffer (window)) + return FALSE; +#endif + + if (window->client_type == META_WINDOW_CLIENT_TYPE_X11 && + window->decorated && !window->frame) + return FALSE; + + return TRUE; +} + /** * meta_window_should_be_showing_on_workspace: * @@ -1703,14 +1719,7 @@ gboolean meta_window_should_be_showing_on_workspace (MetaWindow *window, MetaWorkspace *workspace) { -#ifdef HAVE_WAYLAND - if (window->client_type == META_WINDOW_CLIENT_TYPE_WAYLAND && - !window_has_buffer (window)) - return FALSE; -#endif - - if (window->client_type == META_WINDOW_CLIENT_TYPE_X11 && - window->decorated && !window->frame) + if (!meta_window_is_showable (window)) return FALSE; /* Windows should be showing if they're located on the