Hello community,

here is the log from the commit of package gnome-initial-setup for 
openSUSE:Factory checked in at 2020-06-04 17:56:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gnome-initial-setup (Old)
 and      /work/SRC/openSUSE:Factory/.gnome-initial-setup.new.3606 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gnome-initial-setup"

Thu Jun  4 17:56:43 2020 rev:3 rq:811439 version:3.36.3

Changes:
--------
--- /work/SRC/openSUSE:Factory/gnome-initial-setup/gnome-initial-setup.changes  
2020-04-27 23:44:02.964200740 +0200
+++ 
/work/SRC/openSUSE:Factory/.gnome-initial-setup.new.3606/gnome-initial-setup.changes
        2020-06-04 17:56:47.669069017 +0200
@@ -1,0 +2,7 @@
+Thu Jun  4 10:33:50 UTC 2020 - Bjørn Lie <[email protected]>
+
+- Update to version 3.36.3:
+  + Bugs fixed: Japanese (Kana Kanji) no longer the default input
+    method for Japanese in 3.36.2.
+
+-------------------------------------------------------------------

Old:
----
  gnome-initial-setup-3.36.2.tar.xz

New:
----
  gnome-initial-setup-3.36.3.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ gnome-initial-setup.spec ++++++
--- /var/tmp/diff_new_pack.nMPXBD/_old  2020-06-04 17:56:48.157070546 +0200
+++ /var/tmp/diff_new_pack.nMPXBD/_new  2020-06-04 17:56:48.161070558 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           gnome-initial-setup
-Version:        3.36.2
+Version:        3.36.3
 Release:        0
 Summary:        GNOME Initial Setup Assistant
 License:        GPL-2.0-or-later

++++++ gnome-initial-setup-3.36.2.tar.xz -> gnome-initial-setup-3.36.3.tar.xz 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gnome-initial-setup-3.36.2/NEWS 
new/gnome-initial-setup-3.36.3/NEWS
--- old/gnome-initial-setup-3.36.2/NEWS 2020-04-25 22:34:57.000000000 +0200
+++ new/gnome-initial-setup-3.36.3/NEWS 2020-05-29 22:44:47.000000000 +0200
@@ -1,3 +1,9 @@
+3.36.3
+------
+
+* Bugs fixed:
+ - #104 Japanese (Kana Kanji) no longer the default input method for Japanese 
in 3.36.2
+
 3.36.2
 ------
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gnome-initial-setup-3.36.2/gnome-initial-setup/pages/keyboard/gis-keyboard-page.c
 
new/gnome-initial-setup-3.36.3/gnome-initial-setup/pages/keyboard/gis-keyboard-page.c
--- 
old/gnome-initial-setup-3.36.2/gnome-initial-setup/pages/keyboard/gis-keyboard-page.c
       2020-04-25 22:34:57.000000000 +0200
+++ 
new/gnome-initial-setup-3.36.3/gnome-initial-setup/pages/keyboard/gis-keyboard-page.c
       2020-05-29 22:44:47.000000000 +0200
@@ -354,6 +354,8 @@
         const gchar *type;
         const gchar *id;
         gchar *language;
+        gboolean desktop_got_something;
+        gboolean desktop_got_input_method;
 
         GisKeyboardPagePrivate *priv = gis_keyboard_page_get_instance_private 
(self);
         GSList *sources = get_localed_input (priv->localed);
@@ -363,25 +365,46 @@
         g_slist_free_full (priv->system_sources, g_free);
         priv->system_sources = g_slist_reverse (sources);
 
-        /* For languages that use an input method, we will add both
-         * system keyboard layout and the ibus input method. For
-         * languages that use keyboard layout only, we will add only
-         * system keyboard layout. Because the keyboard layout
-         * information from gnome-desktop is not as accurate as system
-         * keyboard layout, if gnome-desktop returns keyboard layout,
-         * we ignore it and use system keyboard layout instead. If
-         * gnome-desktop instead returns an ibus input method, we will
-         * add both system keyboard layout and the ibus input method. */
+        /* We have two potential sources of information as to which
+         * source to pre-select here: the keyboard layout that is
+         * configured system-wide (read from priv->system_sources),
+         * and a gnome-desktop function that lets us look up a default
+         * input source for a given language.
+         *
+         * An important limitation here is that there is no system-wide
+         * configuration for input methods, so if the best choice for the
+         * language is an input method, we will only find it from the
+         * gnome-desktop lookup. But if both sources give us keyboard layouts,
+         * we want to prefer the one that's configured system-wide over the one
+         * from gnome-desktop.
+         *
+         * So we first do the gnome-desktop lookup, and keep track of what we
+         * got.
+         *
+         * - If we got an input method, we preselect that, and we're done.
+         * - If we got a keyboard layout, and there's no system-wide keyboard
+         *   layout set, we preselect the layout we got from gnome-desktop.
+         * - If we didn't get an input method from gnome-desktop and there
+         *   is a system-wide keyboard layout set, we preselect that.
+         * - If we got nothing from gnome-desktop and there's no system-wide
+         *   keyboard layout set, we don't preselect anything.
+         *
+         * See:
+         * - https://bugzilla.gnome.org/show_bug.cgi?id=776189
+         * - https://gitlab.gnome.org/GNOME/gnome-initial-setup/-/issues/104
+         */
         language = cc_common_language_get_current_language ();
 
-        if (priv->system_sources) {
+        desktop_got_something = gnome_get_input_source_from_locale (language, 
&type, &id);
+        desktop_got_input_method = (desktop_got_something && g_strcmp0 (type, 
"xkb") != 0);
+
+        if (desktop_got_something && (desktop_got_input_method || 
!priv->system_sources)) {
+                cc_input_chooser_set_input (CC_INPUT_CHOOSER 
(priv->input_chooser),
+                                            id, type);
+        } else if (priv->system_sources) {
                 cc_input_chooser_set_input (CC_INPUT_CHOOSER 
(priv->input_chooser),
                                             (const gchar *) 
priv->system_sources->data,
                                             "xkb");
-        } else if (gnome_get_input_source_from_locale (language, &type, &id) &&
-                   g_strcmp0 (type, "xkb") != 0) {
-                cc_input_chooser_set_input (CC_INPUT_CHOOSER 
(priv->input_chooser),
-                                            id, type);
         }
 
         g_free (language);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gnome-initial-setup-3.36.2/meson.build 
new/gnome-initial-setup-3.36.3/meson.build
--- old/gnome-initial-setup-3.36.2/meson.build  2020-04-25 22:34:57.000000000 
+0200
+++ new/gnome-initial-setup-3.36.3/meson.build  2020-05-29 22:44:47.000000000 
+0200
@@ -1,6 +1,6 @@
 project('gnome-initial-setup',
         ['c'],
-        version: '3.36.2',
+        version: '3.36.3',
         license: 'GPLv2',
         meson_version: '>= 0.47.0',
 )


Reply via email to