[gnome-settings-daemon] keyboard: Always create input sources from X layouts under GDM



commit 62f045599d51afffdacf10e65f1254c1db452c08
Author: Rui Matos <tiagomatos gmail com>
Date:   Fri Sep 21 23:00:39 2012 +0200

    keyboard: Always create input sources from X layouts under GDM
    
    Since we don't yet have a way to export gsettings into a system wide
    store g-c-c exports input sources as XKB layouts through the locald
    DBus API which stores them in an xorg.conf.d file which the X server
    uses to configure itself initially.
    
    This means that, when running under GDM, we should consider the
    current X server's layouts the canonical setting for input sources and
    thus always use them instead of whatever we have in the GDM user's
    gsetting.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=684586

 plugins/keyboard/gsd-keyboard-manager.c |    8 +++++---
 1 files changed, 5 insertions(+), 3 deletions(-)
---
diff --git a/plugins/keyboard/gsd-keyboard-manager.c b/plugins/keyboard/gsd-keyboard-manager.c
index 037bea7..d06cf33 100644
--- a/plugins/keyboard/gsd-keyboard-manager.c
+++ b/plugins/keyboard/gsd-keyboard-manager.c
@@ -1120,15 +1120,17 @@ static void
 maybe_create_input_sources (GsdKeyboardManager *manager)
 {
         GVariant *sources;
+        gboolean gdm;
         gsize n;
 
+        gdm = g_getenv ("RUNNING_UNDER_GDM") != NULL;
+
         sources = g_settings_get_value (manager->priv->input_sources_settings, KEY_INPUT_SOURCES);
         n = g_variant_n_children (sources);
         g_variant_unref (sources);
-        if (n > 0)
-                return;
 
-        create_sources_from_current_xkb_config (manager->priv->input_sources_settings);
+        if (n < 1 || gdm)
+                create_sources_from_current_xkb_config (manager->priv->input_sources_settings);
 }
 
 static gboolean



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]