From 007058aac4588ada0092819790c9d25ea845a277 Mon Sep 17 00:00:00 2001 From: Sebastian Wick Date: Tue, 10 Sep 2024 18:47:18 +0200 Subject: [PATCH] backend: Re-order backend component initialization Move components without dependencies to the top and try to move components with dependencies close to the component they depend on. While this is an improvement, we really should start tracking and documenting the actual dependencies between our components so that the order here becomes comprehensible. Part-of: --- src/backends/meta-backend.c | 61 +++++++++++++++++++------------------ 1 file changed, 31 insertions(+), 30 deletions(-) diff --git a/src/backends/meta-backend.c b/src/backends/meta-backend.c index 3072a3b31..52b8c3c50 100644 --- a/src/backends/meta-backend.c +++ b/src/backends/meta-backend.c @@ -1184,16 +1184,20 @@ meta_backend_initable_init (GInitable *initable, g_assert (priv->context); + priv->cancellable = g_cancellable_new (); + + g_bus_get (G_BUS_TYPE_SYSTEM, + priv->cancellable, + system_bus_gotten_cb, + backend); + priv->settings = meta_settings_new (backend); -#ifdef HAVE_LIBWACOM - priv->wacom_db = libwacom_database_new (); - if (!priv->wacom_db) - { - g_warning ("Could not create database of Wacom devices, " - "expect tablets to misbehave"); - } -#endif + priv->dnd = meta_dnd_new (backend); + + priv->orientation_manager = g_object_new (META_TYPE_ORIENTATION_MANAGER, NULL); + + priv->cursor_tracker = meta_backend_create_cursor_tracker (backend); if (META_BACKEND_GET_CLASS (backend)->is_lid_closed == meta_backend_real_is_lid_closed) @@ -1207,6 +1211,15 @@ meta_backend_initable_init (GInitable *initable, NULL); } +#ifdef HAVE_LIBWACOM + priv->wacom_db = libwacom_database_new (); + if (!priv->wacom_db) + { + g_warning ("Could not create database of Wacom devices, " + "expect tablets to misbehave"); + } +#endif + #ifdef HAVE_EGL priv->egl = g_object_new (META_TYPE_EGL, NULL); #endif @@ -1215,8 +1228,6 @@ meta_backend_initable_init (GInitable *initable, !META_BACKEND_GET_CLASS (backend)->init_basic (backend, error)) return FALSE; - priv->orientation_manager = g_object_new (META_TYPE_ORIENTATION_MANAGER, NULL); - priv->monitor_manager = meta_backend_create_monitor_manager (backend, error); if (!priv->monitor_manager) return FALSE; @@ -1227,19 +1238,19 @@ meta_backend_initable_init (GInitable *initable, if (!priv->renderer) return FALSE; - priv->cursor_tracker = meta_backend_create_cursor_tracker (backend); - - priv->dnd = meta_dnd_new (backend); - - priv->cancellable = g_cancellable_new (); - g_bus_get (G_BUS_TYPE_SYSTEM, - priv->cancellable, - system_bus_gotten_cb, - backend); - if (!init_clutter (backend, error)) return FALSE; + g_signal_connect_object (priv->default_seat, "device-added", + G_CALLBACK (on_device_added), backend, 0); + g_signal_connect_object (priv->default_seat, "device-removed", + G_CALLBACK (on_device_removed), backend, + G_CONNECT_AFTER); + + priv->idle_manager = meta_idle_manager_new (backend); + + priv->input_mapper = meta_backend_create_input_mapper (backend); + if (META_BACKEND_GET_CLASS (backend)->init_render && !META_BACKEND_GET_CLASS (backend)->init_render (backend, error)) return FALSE; @@ -1250,16 +1261,6 @@ meta_backend_initable_init (GInitable *initable, meta_backend_update_stage (backend); - priv->idle_manager = meta_idle_manager_new (backend); - - g_signal_connect_object (priv->default_seat, "device-added", - G_CALLBACK (on_device_added), backend, 0); - g_signal_connect_object (priv->default_seat, "device-removed", - G_CALLBACK (on_device_removed), backend, - G_CONNECT_AFTER); - - priv->input_mapper = meta_backend_create_input_mapper (backend); - priv->remote_access_controller = meta_remote_access_controller_new (); priv->dbus_session_watcher =