Update to 44.beta
This commit is contained in:
parent
cb9e45bab9
commit
3fe61002dd
155
309.patch
155
309.patch
@ -1,155 +0,0 @@
|
||||
From 27bc0889c87a49100bf4b1c0ecf01be1629ff9c6 Mon Sep 17 00:00:00 2001
|
||||
From: Carlos Garnacho <carlosg@gnome.org>
|
||||
Date: Tue, 20 Sep 2022 18:08:44 +0200
|
||||
Subject: [PATCH] xsettings: Always fallback to ibus
|
||||
|
||||
Traditionally, we've used ibus strictly when necessary (i.e. there
|
||||
was an IM configured that required IBus to be enabled). A bit more
|
||||
recently, we added OSK checks so that environments with an OSK
|
||||
would also have IBus enabled so that GNOME Shell could track focus
|
||||
positions without pulling a11y.
|
||||
|
||||
Nowadays, we simply want ibus always enabled, even if the underlying
|
||||
keymap wouldn't seemingly use its features. We anyways want it for
|
||||
the handling of emojis and dead keys.
|
||||
|
||||
Always enable IBus for X11 clients, unless there is another IM
|
||||
configured in the global GSetting.
|
||||
|
||||
Closes: https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/issues/705
|
||||
---
|
||||
plugins/xsettings/gsd-xsettings-manager.c | 70 +----------------------
|
||||
1 file changed, 1 insertion(+), 69 deletions(-)
|
||||
|
||||
diff --git a/plugins/xsettings/gsd-xsettings-manager.c b/plugins/xsettings/gsd-xsettings-manager.c
|
||||
index 68b6ed77..567d3bbd 100644
|
||||
--- a/plugins/xsettings/gsd-xsettings-manager.c
|
||||
+++ b/plugins/xsettings/gsd-xsettings-manager.c
|
||||
@@ -57,8 +57,6 @@
|
||||
#define WM_SETTINGS_SCHEMA "org.gnome.desktop.wm.preferences"
|
||||
#define A11Y_SCHEMA "org.gnome.desktop.a11y"
|
||||
#define A11Y_INTERFACE_SCHEMA "org.gnome.desktop.a11y.interface"
|
||||
-#define A11Y_APPLICATIONS_SCHEMA "org.gnome.desktop.a11y.applications"
|
||||
-#define INPUT_SOURCES_SCHEMA "org.gnome.desktop.input-sources"
|
||||
#define CLASSIC_WM_SETTINGS_SCHEMA "org.gnome.shell.extensions.classic-overrides"
|
||||
|
||||
#define XSETTINGS_PLUGIN_SCHEMA "org.gnome.settings-daemon.plugins.xsettings"
|
||||
@@ -77,16 +75,11 @@
|
||||
|
||||
#define HIGH_CONTRAST_KEY "high-contrast"
|
||||
|
||||
-#define INPUT_SOURCES_KEY "sources"
|
||||
-#define OSK_ENABLED_KEY "screen-keyboard-enabled"
|
||||
#define GTK_IM_MODULE_KEY "gtk-im-module"
|
||||
|
||||
#define GTK_SETTINGS_DBUS_PATH "/org/gtk/Settings"
|
||||
#define GTK_SETTINGS_DBUS_NAME "org.gtk.Settings"
|
||||
|
||||
-#define INPUT_SOURCE_TYPE_IBUS "ibus"
|
||||
-
|
||||
-#define GTK_IM_MODULE_SIMPLE "gtk-im-context-simple"
|
||||
#define GTK_IM_MODULE_IBUS "ibus"
|
||||
|
||||
static const gchar introspection_xml[] =
|
||||
@@ -292,8 +285,6 @@ struct _GsdXSettingsManager
|
||||
gint64 fontconfig_timestamp;
|
||||
|
||||
GSettings *interface_settings;
|
||||
- GSettings *input_sources_settings;
|
||||
- GSettings *a11y_settings;
|
||||
GdkSeat *user_seat;
|
||||
|
||||
GsdXSettingsGtk *gtk;
|
||||
@@ -1341,51 +1332,6 @@ migrate_settings (void)
|
||||
mouse_entries, G_N_ELEMENTS (mouse_entries));
|
||||
}
|
||||
|
||||
-static gboolean
|
||||
-need_ibus (GsdXSettingsManager *manager)
|
||||
-{
|
||||
- GVariant *sources;
|
||||
- GVariantIter iter;
|
||||
- const gchar *type;
|
||||
- gboolean needs_ibus = FALSE;
|
||||
-
|
||||
- sources = g_settings_get_value (manager->input_sources_settings,
|
||||
- INPUT_SOURCES_KEY);
|
||||
-
|
||||
- g_variant_iter_init (&iter, sources);
|
||||
- while (g_variant_iter_next (&iter, "(&s&s)", &type, NULL)) {
|
||||
- if (g_str_equal (type, INPUT_SOURCE_TYPE_IBUS)) {
|
||||
- needs_ibus = TRUE;
|
||||
- break;
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- g_variant_unref (sources);
|
||||
-
|
||||
- return needs_ibus;
|
||||
-}
|
||||
-
|
||||
-static gboolean
|
||||
-need_osk (GsdXSettingsManager *manager)
|
||||
-{
|
||||
- gboolean has_touchscreen = FALSE;
|
||||
- GList *devices;
|
||||
- GdkSeat *seat;
|
||||
-
|
||||
- if (g_settings_get_boolean (manager->a11y_settings,
|
||||
- OSK_ENABLED_KEY))
|
||||
- return TRUE;
|
||||
-
|
||||
- seat = gdk_display_get_default_seat (gdk_display_get_default ());
|
||||
- devices = gdk_seat_get_slaves (seat, GDK_SEAT_CAPABILITY_TOUCH);
|
||||
-
|
||||
- has_touchscreen = devices != NULL;
|
||||
-
|
||||
- g_list_free (devices);
|
||||
-
|
||||
- return has_touchscreen;
|
||||
-}
|
||||
-
|
||||
static void
|
||||
update_gtk_im_module (GsdXSettingsManager *manager)
|
||||
{
|
||||
@@ -1396,10 +1342,8 @@ update_gtk_im_module (GsdXSettingsManager *manager)
|
||||
GTK_IM_MODULE_KEY);
|
||||
if (setting && *setting)
|
||||
module = setting;
|
||||
- else if (need_ibus (manager) || need_osk (manager))
|
||||
- module = GTK_IM_MODULE_IBUS;
|
||||
else
|
||||
- module = GTK_IM_MODULE_SIMPLE;
|
||||
+ module = GTK_IM_MODULE_IBUS;
|
||||
|
||||
xsettings_manager_set_string (manager->manager, "Gtk/IMModule", module);
|
||||
g_free (setting);
|
||||
@@ -1473,16 +1417,6 @@ gsd_xsettings_manager_start (GsdXSettingsManager *manager,
|
||||
g_signal_connect_swapped (manager->interface_settings,
|
||||
"changed::" GTK_IM_MODULE_KEY,
|
||||
G_CALLBACK (update_gtk_im_module), manager);
|
||||
-
|
||||
- manager->input_sources_settings = g_settings_new (INPUT_SOURCES_SCHEMA);
|
||||
- g_signal_connect_swapped (manager->input_sources_settings,
|
||||
- "changed::" INPUT_SOURCES_KEY,
|
||||
- G_CALLBACK (update_gtk_im_module), manager);
|
||||
-
|
||||
- manager->a11y_settings = g_settings_new (A11Y_APPLICATIONS_SCHEMA);
|
||||
- g_signal_connect_swapped (manager->a11y_settings,
|
||||
- "changed::" OSK_ENABLED_KEY,
|
||||
- G_CALLBACK (update_gtk_im_module), manager);
|
||||
update_gtk_im_module (manager);
|
||||
|
||||
manager->monitors_changed_id =
|
||||
@@ -1689,8 +1623,6 @@ gsd_xsettings_manager_stop (GsdXSettingsManager *manager)
|
||||
manager->user_seat = NULL;
|
||||
}
|
||||
|
||||
- g_clear_object (&manager->a11y_settings);
|
||||
- g_clear_object (&manager->input_sources_settings);
|
||||
g_clear_object (&manager->interface_settings);
|
||||
}
|
||||
|
||||
--
|
||||
GitLab
|
||||
|
@ -17,8 +17,8 @@
|
||||
%global major_version %%(echo %{version} | cut -f 1 -d '~' | cut -f 1 -d '.')
|
||||
|
||||
Name: gnome-settings-daemon
|
||||
Version: 43.0
|
||||
Release: 3%{?dist}
|
||||
Version: 44~beta
|
||||
Release: 1%{?dist}
|
||||
Summary: The daemon sharing settings from GNOME to GTK+/KDE applications
|
||||
|
||||
License: GPLv2+
|
||||
@ -26,11 +26,6 @@ URL: https://gitlab.gnome.org/GNOME/gnome-settings-daemon
|
||||
Source0: https://download.gnome.org/sources/%{name}/%{major_version}/%{name}-%{tarball_version}.tar.xz
|
||||
Source1: org.gnome.settings-daemon.plugins.power.gschema.override
|
||||
|
||||
# Backported from upstream
|
||||
# https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/merge_requests/309
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=2128423
|
||||
Patch0: 309.patch
|
||||
|
||||
BuildRequires: gcc
|
||||
BuildRequires: gettext
|
||||
BuildRequires: meson >= 0.49.0
|
||||
@ -206,6 +201,9 @@ install -p %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/glib-2.0/schemas
|
||||
%{_libdir}/pkgconfig/gnome-settings-daemon.pc
|
||||
|
||||
%changelog
|
||||
* Wed Feb 15 2023 David King <amigadave@amigadave.com> - 44~beta-1
|
||||
- Update to 44.beta
|
||||
|
||||
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 43.0-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (gnome-settings-daemon-43.0.tar.xz) = 8cc3ed73fa66d2cf72621db78be68e4fe01f292ab3987aff8cc67a1c67d910622e306c2d3e69a8dca5ac6517c8e57883faf02aec871c7aa1f1348d13ff1900a3
|
||||
SHA512 (gnome-settings-daemon-44.beta.tar.xz) = fc6b63c905147c3b50f53de6028cf2760c659864bdf3894707f7294ca977517b789c3ca21375a6c4e527098e342ede45359057e7eb41e180f477fd48cc445d49
|
||||
|
Loading…
Reference in New Issue
Block a user