From 4b3cab2ccad5a46e207184326abc260553176e65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20=C3=85dahl?= Date: Wed, 7 Sep 2022 17:45:23 +0200 Subject: [PATCH] compositor: Don't make internal API public Things like meta_compositor_destroy() and meta_compositor_add_window() isn't intended to be used externally, and if they was, things would probably fall apart rather quickly. MetaCompositor also isn't introspected, meaning things that technically belong to the compositing parts isn't easily available via some object, but much take detours via other objects like MetaDisplay. So move the API intended for internal usage to compositor-private.h, and leave API that is meant to be expose in the public compositor.h. Part-of: --- src/compositor/compositor-private.h | 76 +++++++++++++++++++++++ src/core/stack-tracker.c | 2 +- src/core/window.c | 1 + src/core/workspace.c | 2 +- src/meta/compositor.h | 96 ----------------------------- src/wayland/meta-window-wayland.c | 1 + src/x11/window-props.c | 1 + src/x11/window-x11.c | 2 +- 8 files changed, 82 insertions(+), 99 deletions(-) diff --git a/src/compositor/compositor-private.h b/src/compositor/compositor-private.h index 4262f23cc..a95df0721 100644 --- a/src/compositor/compositor-private.h +++ b/src/compositor/compositor-private.h @@ -81,8 +81,84 @@ ClutterStage * meta_compositor_get_stage (MetaCompositor *compositor); gboolean meta_compositor_is_switching_workspace (MetaCompositor *compositor); void meta_compositor_grab_begin (MetaCompositor *compositor); + void meta_compositor_grab_end (MetaCompositor *compositor); +void meta_compositor_destroy (MetaCompositor *compositor); + +void meta_compositor_manage (MetaCompositor *compositor); + +void meta_compositor_unmanage (MetaCompositor *compositor); + +void meta_compositor_window_shape_changed (MetaCompositor *compositor, + MetaWindow *window); + +void meta_compositor_window_opacity_changed (MetaCompositor *compositor, + MetaWindow *window); + +gboolean meta_compositor_filter_keybinding (MetaCompositor *compositor, + MetaKeyBinding *binding); + +void meta_compositor_add_window (MetaCompositor *compositor, + MetaWindow *window); + +void meta_compositor_remove_window (MetaCompositor *compositor, + MetaWindow *window); + +void meta_compositor_show_window (MetaCompositor *compositor, + MetaWindow *window, + MetaCompEffect effect); + +void meta_compositor_hide_window (MetaCompositor *compositor, + MetaWindow *window, + MetaCompEffect effect); + +void meta_compositor_switch_workspace (MetaCompositor *compositor, + MetaWorkspace *from, + MetaWorkspace *to, + MetaMotionDirection direction); + +void meta_compositor_size_change_window (MetaCompositor *compositor, + MetaWindow *window, + MetaSizeChange which_change, + MetaRectangle *old_frame_rect, + MetaRectangle *old_buffer_rect); + +void meta_compositor_sync_window_geometry (MetaCompositor *compositor, + MetaWindow *window, + gboolean did_placement); + +void meta_compositor_sync_updates_frozen (MetaCompositor *compositor, + MetaWindow *window); + +void meta_compositor_queue_frame_drawn (MetaCompositor *compositor, + MetaWindow *window, + gboolean no_delay_frame); + +void meta_compositor_sync_stack (MetaCompositor *compositor, + GList *stack); + +void meta_compositor_flash_display (MetaCompositor *compositor, + MetaDisplay *display); + +void meta_compositor_show_tile_preview (MetaCompositor *compositor, + MetaWindow *window, + MetaRectangle *tile_rect, + int tile_monitor_number); + +void meta_compositor_hide_tile_preview (MetaCompositor *compositor); + +void meta_compositor_show_window_menu (MetaCompositor *compositor, + MetaWindow *window, + MetaWindowMenuType menu, + int x, + int y); + +void meta_compositor_show_window_menu_for_rect (MetaCompositor *compositor, + MetaWindow *window, + MetaWindowMenuType menu, + MetaRectangle *rect); + /* * This function takes a 64 bit time stamp from the monotonic clock, and clamps * it to the scope of the X server clock, without losing the granularity. diff --git a/src/core/stack-tracker.c b/src/core/stack-tracker.c index 24d5d25db..8292b7b91 100644 --- a/src/core/stack-tracker.c +++ b/src/core/stack-tracker.c @@ -38,9 +38,9 @@ #include +#include "compositor/compositor-private.h" #include "core/display-private.h" #include "core/frame.h" -#include "meta/compositor.h" #include "meta/meta-x11-errors.h" #include "meta/util.h" #include "x11/meta-x11-display-private.h" diff --git a/src/core/window.c b/src/core/window.c index d046d505c..57511ed92 100644 --- a/src/core/window.c +++ b/src/core/window.c @@ -68,6 +68,7 @@ #include "backends/meta-backend-private.h" #include "backends/meta-logical-monitor.h" #include "cogl/cogl.h" +#include "compositor/compositor-private.h" #include "core/boxes-private.h" #include "core/constraints.h" #include "core/edge-resistance.h" diff --git a/src/core/workspace.c b/src/core/workspace.c index 5e7b325b1..b638177a8 100644 --- a/src/core/workspace.c +++ b/src/core/workspace.c @@ -42,10 +42,10 @@ #include "backends/meta-cursor-tracker-private.h" #include "backends/meta-logical-monitor.h" #include "cogl/cogl.h" +#include "compositor/compositor-private.h" #include "core/boxes-private.h" #include "core/meta-workspace-manager-private.h" #include "core/workspace-private.h" -#include "meta/compositor.h" #include "meta/meta-x11-errors.h" #include "meta/prefs.h" #include "x11/meta-x11-display-private.h" diff --git a/src/meta/compositor.h b/src/meta/compositor.h index f06f95227..1263a4add 100644 --- a/src/meta/compositor.h +++ b/src/meta/compositor.h @@ -67,102 +67,6 @@ typedef enum META_SIZE_CHANGE_MONITOR_MOVE, } MetaSizeChange; -META_EXPORT -void meta_compositor_destroy (MetaCompositor *compositor); - -META_EXPORT -void meta_compositor_manage (MetaCompositor *compositor); - -META_EXPORT -void meta_compositor_unmanage (MetaCompositor *compositor); - -META_EXPORT -void meta_compositor_window_shape_changed (MetaCompositor *compositor, - MetaWindow *window); - -META_EXPORT -void meta_compositor_window_opacity_changed (MetaCompositor *compositor, - MetaWindow *window); - -META_EXPORT -gboolean meta_compositor_filter_keybinding (MetaCompositor *compositor, - MetaKeyBinding *binding); - -META_EXPORT -void meta_compositor_add_window (MetaCompositor *compositor, - MetaWindow *window); - -META_EXPORT -void meta_compositor_remove_window (MetaCompositor *compositor, - MetaWindow *window); - -META_EXPORT -void meta_compositor_show_window (MetaCompositor *compositor, - MetaWindow *window, - MetaCompEffect effect); - -META_EXPORT -void meta_compositor_hide_window (MetaCompositor *compositor, - MetaWindow *window, - MetaCompEffect effect); - -META_EXPORT -void meta_compositor_switch_workspace (MetaCompositor *compositor, - MetaWorkspace *from, - MetaWorkspace *to, - MetaMotionDirection direction); - -META_EXPORT -void meta_compositor_size_change_window (MetaCompositor *compositor, - MetaWindow *window, - MetaSizeChange which_change, - MetaRectangle *old_frame_rect, - MetaRectangle *old_buffer_rect); - -META_EXPORT -void meta_compositor_sync_window_geometry (MetaCompositor *compositor, - MetaWindow *window, - gboolean did_placement); - -META_EXPORT -void meta_compositor_sync_updates_frozen (MetaCompositor *compositor, - MetaWindow *window); - -META_EXPORT -void meta_compositor_queue_frame_drawn (MetaCompositor *compositor, - MetaWindow *window, - gboolean no_delay_frame); - -META_EXPORT -void meta_compositor_sync_stack (MetaCompositor *compositor, - GList *stack); - -META_EXPORT -void meta_compositor_flash_display (MetaCompositor *compositor, - MetaDisplay *display); - -META_EXPORT -void meta_compositor_show_tile_preview (MetaCompositor *compositor, - MetaWindow *window, - MetaRectangle *tile_rect, - int tile_monitor_number); - -META_EXPORT -void meta_compositor_hide_tile_preview (MetaCompositor *compositor); - -META_EXPORT -void meta_compositor_show_window_menu (MetaCompositor *compositor, - MetaWindow *window, - MetaWindowMenuType menu, - int x, - int y); - -META_EXPORT -void meta_compositor_show_window_menu_for_rect (MetaCompositor *compositor, - MetaWindow *window, - MetaWindowMenuType menu, - MetaRectangle *rect); - META_EXPORT MetaLaters * meta_compositor_get_laters (MetaCompositor *compositor); diff --git a/src/wayland/meta-window-wayland.c b/src/wayland/meta-window-wayland.c index b04849025..287b03dc1 100644 --- a/src/wayland/meta-window-wayland.c +++ b/src/wayland/meta-window-wayland.c @@ -32,6 +32,7 @@ #include "backends/meta-backend-private.h" #include "backends/meta-backend-private.h" #include "backends/meta-logical-monitor.h" +#include "compositor/compositor-private.h" #include "compositor/meta-surface-actor-wayland.h" #include "compositor/meta-window-actor-private.h" #include "core/boxes-private.h" diff --git a/src/x11/window-props.c b/src/x11/window-props.c index bf4d06711..4cf01daea 100644 --- a/src/x11/window-props.c +++ b/src/x11/window-props.c @@ -44,6 +44,7 @@ #include #include +#include "compositor/compositor-private.h" #include "core/frame.h" #include "core/meta-workspace-manager-private.h" #include "core/util-private.h" diff --git a/src/x11/window-x11.c b/src/x11/window-x11.c index 93cacb882..a21be1fff 100644 --- a/src/x11/window-x11.c +++ b/src/x11/window-x11.c @@ -35,6 +35,7 @@ #include "backends/meta-logical-monitor.h" #include "backends/x11/meta-backend-x11.h" +#include "compositor/compositor-private.h" #include "compositor/meta-window-actor-private.h" #include "core/boxes-private.h" #include "core/frame.h" @@ -42,7 +43,6 @@ #include "core/window-private.h" #include "core/workspace-private.h" #include "meta/common.h" -#include "meta/compositor.h" #include "meta/meta-cursor-tracker.h" #include "meta/meta-later.h" #include "meta/meta-x11-errors.h"