summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonas Ã…dahl <jadahl@gmail.com>2022-05-27 19:55:16 +0200
committerMarge Bot <marge-bot@gnome.org>2022-12-17 13:52:51 +0000
commitc45ab10c0e9b5414fb0bbeec1560f7e6f04ee429 (patch)
tree015aa4aed7965108abe359b890df53e24bf5ad30
parent872420f460caddc2446a15d30c2426112d34abf6 (diff)
downloadmutter-c45ab10c0e9b5414fb0bbeec1560f7e6f04ee429.tar.gz
Make VT switch API explicitly part of the native backend
It already was, more or less, but make it a bit more in your face. Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2718>
-rw-r--r--src/backends/native/meta-backend-native.c10
-rw-r--r--src/backends/native/meta-backend-native.h4
-rw-r--r--src/core/keybindings.c5
3 files changed, 12 insertions, 7 deletions
diff --git a/src/backends/native/meta-backend-native.c b/src/backends/native/meta-backend-native.c
index 3d3711e18..43e5b10a4 100644
--- a/src/backends/native/meta-backend-native.c
+++ b/src/backends/native/meta-backend-native.c
@@ -916,13 +916,13 @@ meta_backend_native_get_kms (MetaBackendNative *native)
}
gboolean
-meta_activate_vt (int vt, GError **error)
+meta_backend_native_activate_vt (MetaBackendNative *backend_native,
+ int vt,
+ GError **error)
{
- MetaBackend *backend = meta_get_backend ();
- MetaBackendNative *native = META_BACKEND_NATIVE (backend);
- MetaLauncher *launcher = meta_backend_native_get_launcher (native);
+ MetaLauncher *launcher = meta_backend_native_get_launcher (backend_native);
- switch (native->mode)
+ switch (backend_native->mode)
{
case META_BACKEND_NATIVE_MODE_DEFAULT:
return meta_launcher_activate_vt (launcher, vt, error);
diff --git a/src/backends/native/meta-backend-native.h b/src/backends/native/meta-backend-native.h
index 821d2dfd3..2a675acb9 100644
--- a/src/backends/native/meta-backend-native.h
+++ b/src/backends/native/meta-backend-native.h
@@ -38,7 +38,9 @@ META_EXPORT_TEST
G_DECLARE_FINAL_TYPE (MetaBackendNative, meta_backend_native,
META, BACKEND_NATIVE, MetaBackend)
-gboolean meta_activate_vt (int vt, GError **error);
+gboolean meta_backend_native_activate_vt (MetaBackendNative *backend_native,
+ int vt,
+ GError **error);
void meta_backend_native_pause (MetaBackendNative *backend_native);
diff --git a/src/core/keybindings.c b/src/core/keybindings.c
index 975e68897..17c5fe75b 100644
--- a/src/core/keybindings.c
+++ b/src/core/keybindings.c
@@ -3573,10 +3573,13 @@ handle_switch_vt (MetaDisplay *display,
MetaKeyBinding *binding,
gpointer dummy)
{
+ MetaContext *context = meta_display_get_context (display);
+ MetaBackend *backend = meta_context_get_backend (context);
gint vt = binding->handler->data;
GError *error = NULL;
- if (!meta_activate_vt (vt, &error))
+ if (!meta_backend_native_activate_vt (META_BACKEND_NATIVE (backend),
+ vt, &error))
{
g_warning ("Failed to switch VT: %s", error->message);
g_error_free (error);