diff options
author | Bilal Elmoussaoui <belmouss@redhat.com> | 2022-06-17 11:20:06 +0200 |
---|---|---|
committer | Bilal Elmoussaoui <belmouss@redhat.com> | 2023-05-15 21:25:22 +0200 |
commit | bc481f41adf14f2c10a557999fd2a19168a500c5 (patch) | |
tree | c76d6b67328efbc342ed27fa96f5141988a33421 | |
parent | 3326c7da8f7577f06585ee57b272990f5e3fbf20 (diff) | |
download | mutter-bc481f41adf14f2c10a557999fd2a19168a500c5.tar.gz |
core/stack-tracker: Guard X11 types
-rw-r--r-- | src/core/stack-tracker.c | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/src/core/stack-tracker.c b/src/core/stack-tracker.c index 8292b7b91..56f24ffb1 100644 --- a/src/core/stack-tracker.c +++ b/src/core/stack-tracker.c @@ -41,9 +41,13 @@ #include "compositor/compositor-private.h" #include "core/display-private.h" #include "core/frame.h" -#include "meta/meta-x11-errors.h" +#include "meta/compositor.h" #include "meta/util.h" + +#ifdef HAVE_X11_CLIENT +#include "meta/meta-x11-errors.h" #include "x11/meta-x11-display-private.h" +#endif /* The complexity here comes from resolving two competing factors: * @@ -493,6 +497,7 @@ copy_stack (GArray *stack) return copy; } +#ifdef HAVE_X11_CLIENT static void query_xserver_stack (MetaDisplay *display, MetaStackTracker *tracker) @@ -554,6 +559,7 @@ drop_x11_windows (MetaDisplay *display, l = next; } } +#endif /* HAVE_X11_CLIENT */ MetaStackTracker * meta_stack_tracker_new (MetaDisplay *display) @@ -566,6 +572,7 @@ meta_stack_tracker_new (MetaDisplay *display) tracker->verified_stack = g_array_new (FALSE, FALSE, sizeof (guint64)); tracker->unverified_predictions = g_queue_new (); +#ifdef HAVE_X11_CLIENT g_signal_connect (display, "x11-display-setup", G_CALLBACK (query_xserver_stack), @@ -574,6 +581,7 @@ meta_stack_tracker_new (MetaDisplay *display) "x11-display-closing", G_CALLBACK (drop_x11_windows), tracker); +#endif meta_stack_tracker_dump (tracker); @@ -600,12 +608,14 @@ meta_stack_tracker_free (MetaStackTracker *tracker) g_queue_free (tracker->unverified_predictions); tracker->unverified_predictions = NULL; +#ifdef HAVE_X11_CLIENT g_signal_handlers_disconnect_by_func (tracker->display, (gpointer)query_xserver_stack, tracker); g_signal_handlers_disconnect_by_func (tracker->display, drop_x11_windows, tracker); +#endif g_free (tracker); } @@ -849,12 +859,16 @@ static gboolean meta_stack_tracker_is_guard_window (MetaStackTracker *tracker, uint64_t stack_id) { +#ifdef HAVE_X11_CLIENT MetaX11Display *x11_display = tracker->display->x11_display; if (!x11_display) return FALSE; return stack_id == x11_display->guard_window; +#else + return FALSE; +#endif } /** @@ -941,6 +955,7 @@ meta_stack_tracker_sync_stack (MetaStackTracker *tracker) { guint64 window = windows[i]; +#ifdef HAVE_X11_CLIENT if (META_STACK_ID_IS_X11 (window)) { MetaX11Display *x11_display = tracker->display->x11_display; @@ -961,6 +976,7 @@ meta_stack_tracker_sync_stack (MetaStackTracker *tracker) meta_windows = g_list_prepend (meta_windows, meta_window); } else +#endif meta_windows = g_list_prepend (meta_windows, meta_display_lookup_stamp (tracker->display, window)); } @@ -1013,6 +1029,7 @@ meta_stack_tracker_queue_sync_stack (MetaStackTracker *tracker) * otherwise it searches downwards looking for the nearest X window. * * If no X based sibling could be found return NULL. */ +#ifdef HAVE_X11_CLIENT static Window find_x11_sibling_downwards (MetaStackTracker *tracker, guint64 sibling) @@ -1070,6 +1087,7 @@ find_x11_sibling_upwards (MetaStackTracker *tracker, return None; } +#endif /* HAVE_X11_CLIENT */ static void meta_stack_tracker_lower_below (MetaStackTracker *tracker, @@ -1077,6 +1095,7 @@ meta_stack_tracker_lower_below (MetaStackTracker *tracker, guint64 sibling) { gulong serial = 0; +#ifdef HAVE_X11_CLIENT MetaX11Display *x11_display = tracker->display->x11_display; if (META_STACK_ID_IS_X11 (window)) @@ -1100,6 +1119,7 @@ meta_stack_tracker_lower_below (MetaStackTracker *tracker, meta_x11_error_trap_pop (x11_display); } } +#endif meta_stack_tracker_record_lower_below (tracker, window, sibling, @@ -1112,6 +1132,8 @@ meta_stack_tracker_raise_above (MetaStackTracker *tracker, guint64 sibling) { gulong serial = 0; + +#ifdef HAVE_X11_CLIENT MetaX11Display *x11_display = tracker->display->x11_display; if (META_STACK_ID_IS_X11 (window)) @@ -1135,6 +1157,7 @@ meta_stack_tracker_raise_above (MetaStackTracker *tracker, meta_x11_error_trap_pop (x11_display); } } +#endif meta_stack_tracker_record_raise_above (tracker, window, sibling, serial); |