[mutter] Don't use gtk_settings callback to set shell_shows_app_menu
- From: Jonas Ã…dahl <jadahl src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter] Don't use gtk_settings callback to set shell_shows_app_menu
- Date: Sat, 7 Jul 2018 10:00:59 +0000 (UTC)
commit de5e7a717554d12aff944608b018ae9d2bddd2c0
Author: Armin Krezović <krezovic armin gmail com>
Date: Sat Aug 26 22:43:57 2017 +0200
Don't use gtk_settings callback to set shell_shows_app_menu
GTK+ won't be initialized if X11 is not available
Instead, when setting gtk-shell-shows-app-menu,
meta_prefs_set_show_fallback_app_menu should be
called as well.
https://bugzilla.gnome.org/show_bug.cgi?id=759538
src/core/prefs.c | 43 +++++++++++++------------------------------
src/meta/prefs.h | 2 ++
2 files changed, 15 insertions(+), 30 deletions(-)
---
diff --git a/src/core/prefs.c b/src/core/prefs.c
index bad54cbf2..2f96e5633 100644
--- a/src/core/prefs.c
+++ b/src/core/prefs.c
@@ -137,10 +137,6 @@ static void bindings_changed (GSettings *settings,
gchar *key,
gpointer data);
-static void shell_shows_app_menu_changed (GtkSettings *settings,
- GParamSpec *pspec,
- gpointer data);
-
static void update_cursor_size_from_gtk (GtkSettings *settings,
GParamSpec *pspec,
gpointer data);
@@ -974,10 +970,6 @@ meta_prefs_init (void)
G_CALLBACK (wayland_settings_changed), NULL);
g_hash_table_insert (settings_schemas, g_strdup (SCHEMA_INTERFACE), settings);
- g_signal_connect (gtk_settings_get_default (),
- "notify::gtk-shell-shows-app-menu",
- G_CALLBACK (shell_shows_app_menu_changed), NULL);
-
if (!meta_is_wayland_compositor ())
g_signal_connect (gtk_settings_get_default (), "notify::gtk-cursor-theme-size",
G_CALLBACK (update_cursor_size_from_gtk), NULL);
@@ -1003,7 +995,6 @@ meta_prefs_init (void)
handle_preference_init_int ();
update_cursor_size ();
- shell_shows_app_menu_changed (gtk_settings_get_default (), NULL, NULL);
init_bindings ();
}
@@ -1218,27 +1209,6 @@ bindings_changed (GSettings *settings,
g_strfreev (strokes);
}
-static void
-shell_shows_app_menu_changed (GtkSettings *settings,
- GParamSpec *pspec,
- gpointer data)
-{
- int shell_shows_app_menu = 1;
- gboolean changed = FALSE;
-
- g_object_get (settings,
- "gtk-shell-shows-app-menu", &shell_shows_app_menu,
- NULL);
-
-
- changed = (show_fallback_app_menu == !!shell_shows_app_menu);
-
- show_fallback_app_menu = !shell_shows_app_menu;
-
- if (changed)
- queue_changed (META_PREF_BUTTON_LAYOUT);
-}
-
static void
update_cursor_size (void)
{
@@ -1343,6 +1313,19 @@ meta_prefs_get_show_fallback_app_menu (void)
return show_fallback_app_menu;
}
+void
+meta_prefs_set_show_fallback_app_menu (gboolean whether)
+{
+ gboolean changed = FALSE;
+
+ changed = (show_fallback_app_menu == !whether);
+
+ show_fallback_app_menu = whether;
+
+ if (changed)
+ queue_changed (META_PREF_BUTTON_LAYOUT);
+}
+
const char*
meta_prefs_get_cursor_theme (void)
{
diff --git a/src/meta/prefs.h b/src/meta/prefs.h
index 378ef5d4f..b2618af48 100644
--- a/src/meta/prefs.h
+++ b/src/meta/prefs.h
@@ -140,7 +140,9 @@ gboolean meta_prefs_get_gnome_animations (void);
gboolean meta_prefs_get_edge_tiling (void);
gboolean meta_prefs_get_auto_maximize (void);
gboolean meta_prefs_get_center_new_windows (void);
+
gboolean meta_prefs_get_show_fallback_app_menu (void);
+void meta_prefs_set_show_fallback_app_menu (gboolean whether);
void meta_prefs_get_button_layout (MetaButtonLayout *button_layout);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]