compositor: Drop get_stage_for_display helper
As one can get that from the backend/compositor directly. Expose the necessary functions to allow doing so. Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4131>
This commit is contained in:
parent
1152326ac0
commit
38a4b2e102
@ -66,12 +66,7 @@ gboolean meta_compositor_is_unredirect_inhibited (MetaCompositor *compositor);
|
||||
|
||||
MetaDisplay * meta_compositor_get_display (MetaCompositor *compositor);
|
||||
|
||||
MetaBackend * meta_compositor_get_backend (MetaCompositor *compositor);
|
||||
|
||||
MetaWindowActor * meta_compositor_get_top_window_actor (MetaCompositor *compositor);
|
||||
|
||||
ClutterStage * meta_compositor_get_stage (MetaCompositor *compositor);
|
||||
|
||||
gboolean meta_compositor_is_switching_workspace (MetaCompositor *compositor);
|
||||
|
||||
gboolean meta_compositor_drag_window (MetaCompositor *compositor,
|
||||
|
@ -208,27 +208,6 @@ get_compositor_for_display (MetaDisplay *display)
|
||||
return display->compositor;
|
||||
}
|
||||
|
||||
/**
|
||||
* meta_get_stage_for_display:
|
||||
* @display: a #MetaDisplay
|
||||
*
|
||||
* Returns: (transfer none): The #ClutterStage for the display
|
||||
*/
|
||||
ClutterActor *
|
||||
meta_get_stage_for_display (MetaDisplay *display)
|
||||
{
|
||||
MetaCompositor *compositor;
|
||||
MetaCompositorPrivate *priv;
|
||||
|
||||
g_return_val_if_fail (display, NULL);
|
||||
|
||||
compositor = get_compositor_for_display (display);
|
||||
g_return_val_if_fail (compositor, NULL);
|
||||
priv = meta_compositor_get_instance_private (compositor);
|
||||
|
||||
return meta_backend_get_stage (priv->backend);
|
||||
}
|
||||
|
||||
/**
|
||||
* meta_get_window_group_for_display:
|
||||
* @display: a #MetaDisplay
|
||||
@ -1329,12 +1308,14 @@ void
|
||||
meta_compositor_flash_display (MetaCompositor *compositor,
|
||||
MetaDisplay *display)
|
||||
{
|
||||
MetaBackend *backend;
|
||||
ClutterActor *stage;
|
||||
ClutterActor *flash;
|
||||
ClutterTransition *transition;
|
||||
gfloat width, height;
|
||||
|
||||
stage = meta_get_stage_for_display (display);
|
||||
backend = meta_compositor_get_backend (compositor);
|
||||
stage = meta_backend_get_stage (backend);
|
||||
clutter_actor_get_size (stage, &width, &height);
|
||||
|
||||
flash = clutter_actor_new ();
|
||||
@ -1517,6 +1498,12 @@ meta_compositor_get_display (MetaCompositor *compositor)
|
||||
return priv->display;
|
||||
}
|
||||
|
||||
/**
|
||||
* meta_compositor_get_stage:
|
||||
* @compositor: a #MetaCompositor
|
||||
*
|
||||
* Returns: (transfer none): The stage corresponding to @compositor
|
||||
*/
|
||||
ClutterStage *
|
||||
meta_compositor_get_stage (MetaCompositor *compositor)
|
||||
{
|
||||
@ -1526,6 +1513,12 @@ meta_compositor_get_stage (MetaCompositor *compositor)
|
||||
return CLUTTER_STAGE (meta_backend_get_stage (priv->backend));
|
||||
}
|
||||
|
||||
/**
|
||||
* meta_compositor_get_backend:
|
||||
* @compositor: a #MetaCompositor
|
||||
*
|
||||
* Returns: (transfer none): The backend corresponding to @compositor
|
||||
*/
|
||||
MetaBackend *
|
||||
meta_compositor_get_backend (MetaCompositor *compositor)
|
||||
{
|
||||
|
@ -453,7 +453,7 @@ start (MetaPlugin *plugin)
|
||||
if (meta_is_wayland_compositor ())
|
||||
init_keymap (self, backend);
|
||||
|
||||
clutter_actor_show (meta_get_stage_for_display (display));
|
||||
clutter_actor_show (meta_backend_get_stage (backend));
|
||||
}
|
||||
|
||||
static void
|
||||
@ -462,6 +462,7 @@ switch_workspace (MetaPlugin *plugin,
|
||||
MetaMotionDirection direction)
|
||||
{
|
||||
MetaDisplay *display;
|
||||
MetaCompositor *compositor;
|
||||
MetaDefaultPluginPrivate *priv = META_DEFAULT_PLUGIN (plugin)->priv;
|
||||
GList *l;
|
||||
ClutterActor *stage;
|
||||
@ -475,7 +476,8 @@ switch_workspace (MetaPlugin *plugin,
|
||||
}
|
||||
|
||||
display = meta_plugin_get_display (plugin);
|
||||
stage = meta_get_stage_for_display (display);
|
||||
compositor = meta_display_get_compositor (display);
|
||||
stage = CLUTTER_ACTOR (meta_compositor_get_stage (compositor));
|
||||
|
||||
meta_display_get_size (display,
|
||||
&screen_width,
|
||||
|
@ -28,8 +28,6 @@
|
||||
#include "meta/types.h"
|
||||
|
||||
/* Public compositor API */
|
||||
META_EXPORT
|
||||
ClutterActor *meta_get_stage_for_display (MetaDisplay *display);
|
||||
|
||||
META_EXPORT
|
||||
GList *meta_get_window_actors (MetaDisplay *display);
|
||||
|
@ -71,3 +71,9 @@ MetaLaters * meta_compositor_get_laters (MetaCompositor *compositor);
|
||||
|
||||
META_EXPORT
|
||||
ClutterActor * meta_compositor_get_feedback_group (MetaCompositor *compositor);
|
||||
|
||||
META_EXPORT
|
||||
MetaBackend * meta_compositor_get_backend (MetaCompositor *compositor);
|
||||
|
||||
META_EXPORT
|
||||
ClutterStage * meta_compositor_get_stage (MetaCompositor *compositor);
|
||||
|
@ -368,7 +368,7 @@ meta_test_shell_start (MetaPlugin *plugin)
|
||||
test_shell);
|
||||
|
||||
if (test_shell->show_stage)
|
||||
clutter_actor_show (meta_get_stage_for_display (display));
|
||||
clutter_actor_show (meta_backend_get_stage (backend));
|
||||
}
|
||||
|
||||
static void
|
||||
@ -378,6 +378,7 @@ meta_test_shell_switch_workspace (MetaPlugin *plugin,
|
||||
MetaMotionDirection direction)
|
||||
{
|
||||
MetaTestShell *test_shell = META_TEST_SHELL (plugin);
|
||||
MetaCompositor *compositor;
|
||||
MetaDisplay *display;
|
||||
ClutterActor *stage;
|
||||
ClutterActor *workspace1, *workspace2;
|
||||
@ -391,7 +392,8 @@ meta_test_shell_switch_workspace (MetaPlugin *plugin,
|
||||
}
|
||||
|
||||
display = meta_plugin_get_display (plugin);
|
||||
stage = meta_get_stage_for_display (display);
|
||||
compositor = meta_display_get_compositor (display);
|
||||
stage = CLUTTER_ACTOR (meta_compositor_get_stage (compositor));
|
||||
|
||||
meta_display_get_size (display,
|
||||
&screen_width,
|
||||
|
@ -1276,7 +1276,7 @@ static gboolean
|
||||
stage_is_focused (MetaX11Display *x11_display)
|
||||
{
|
||||
MetaDisplay *display = x11_display->display;
|
||||
ClutterStage *stage = CLUTTER_STAGE (meta_get_stage_for_display (display));
|
||||
ClutterStage *stage = CLUTTER_STAGE (meta_compositor_get_stage (display->compositor));
|
||||
Window xwindow = meta_x11_get_stage_window (stage);
|
||||
|
||||
return x11_display->focus_xwindow == xwindow;
|
||||
@ -1286,7 +1286,7 @@ static gboolean
|
||||
stage_has_focus_actor (MetaX11Display *x11_display)
|
||||
{
|
||||
MetaDisplay *display = x11_display->display;
|
||||
ClutterStage *stage = CLUTTER_STAGE (meta_get_stage_for_display (display));
|
||||
ClutterStage *stage = CLUTTER_STAGE (meta_compositor_get_stage (display->compositor));
|
||||
ClutterActor *key_focus;
|
||||
|
||||
key_focus = clutter_stage_get_key_focus (stage);
|
||||
@ -1542,7 +1542,7 @@ meta_x11_display_new (MetaDisplay *display,
|
||||
if (!meta_is_wayland_compositor ())
|
||||
{
|
||||
ClutterStage *stage =
|
||||
CLUTTER_STAGE (meta_get_stage_for_display (display));
|
||||
CLUTTER_STAGE (meta_backend_get_stage (backend));
|
||||
|
||||
g_signal_connect_object (stage,
|
||||
"notify::key-focus",
|
||||
@ -2327,7 +2327,7 @@ meta_x11_display_set_input_focus (MetaX11Display *x11_display,
|
||||
MetaFrame *frame;
|
||||
#ifdef HAVE_X11
|
||||
MetaDisplay *display = x11_display->display;
|
||||
ClutterStage *stage = CLUTTER_STAGE (meta_get_stage_for_display (display));
|
||||
ClutterStage *stage = CLUTTER_STAGE (meta_compositor_get_stage (display->compositor));
|
||||
#endif
|
||||
|
||||
if (window && META_IS_WINDOW_X11 (window))
|
||||
|
Loading…
x
Reference in New Issue
Block a user