update to version 44.1
This commit is contained in:
parent
81ef1ff4d6
commit
098e925979
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
|
||||
|
||||
Binary file not shown.
BIN
gnome-settings-daemon-44.1.tar.xz
Normal file
BIN
gnome-settings-daemon-44.1.tar.xz
Normal file
Binary file not shown.
@ -12,18 +12,14 @@
|
||||
%global major_version %%(echo %{version} | cut -f 1 -d '~' | cut -f 1 -d '.')
|
||||
|
||||
Name: gnome-settings-daemon
|
||||
Version: 43.0
|
||||
Release: 2
|
||||
Version: 44.1
|
||||
Release: 1
|
||||
Summary: The daemon sharing settings from GNOME to GTK+/KDE applications
|
||||
License: GPLv2+
|
||||
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: cups-devel gcc gettext meson >= 0.49.0 perl-interpreter pkgconfig(alsa)
|
||||
BuildRequires: pkgconfig(colord) >= %{colord_version} pkgconfig(fontconfig) pkgconfig(geoclue-2.0) >= %{geoclue_version}
|
||||
@ -33,8 +29,9 @@ BuildRequires: pkgconfig(gtk+-3.0) >= %{gtk3_version} pkgconfig(gudev-1.0) pkgc
|
||||
BuildRequires: pkgconfig(lcms2) >= 2.2 pkgconfig(libcanberra-gtk3) pkgconfig(libgeoclue-2.0)
|
||||
BuildRequires: pkgconfig(libnm) pkgconfig(libnotify) pkgconfig(libpulse) pkgconfig(libpulse-mainloop-glib)
|
||||
BuildRequires: pkgconfig(librsvg-2.0) pkgconfig(nss) pkgconfig(polkit-gobject-1) pkgconfig(upower-glib)
|
||||
BuildRequires: pkgconfig(x11) pkgconfig(xi) pkgconfig(xtst) pkgconfig(wayland-client)
|
||||
BuildRequires: pkgconfig(libwacom) >= 0.7 pkgconfig(xorg-wacom) pkgconfig(gcr-base-3) pkgconfig(mm-glib) chrpath
|
||||
BuildRequires: pkgconfig(x11) pkgconfig(xi) pkgconfig(wayland-client)
|
||||
BuildRequires: pkgconfig(libwacom) >= 0.7 pkgconfig(xorg-wacom) pkgconfig(mm-glib) chrpath
|
||||
BuildRequires: pkgconfig(gcr-4)
|
||||
|
||||
Requires: colord >= %{colord_version} geoclue2 >= %{geoclue_version} geocode-glib2 >= %{geocode_glib_version} glib2 >= %{glib2_version}
|
||||
Requires: gnome-desktop3 >= %{gnome_desktop_version} gsettings-desktop-schemas >= %{gsettings_desktop_schemas_version}
|
||||
@ -54,7 +51,6 @@ and other related development files of gnome-settings-daemon.
|
||||
|
||||
%prep
|
||||
%autosetup -p1
|
||||
sed -i '14s/false/true/' meson_options.txt
|
||||
|
||||
%build
|
||||
%meson
|
||||
@ -102,6 +98,9 @@ echo "%{_libdir}/gnome-settings-daemon-43" > %{buildroot}%{_sysconfdir}/ld.so.co
|
||||
%{_libdir}/pkgconfig/gnome-settings-daemon.pc
|
||||
|
||||
%changelog
|
||||
* Mon Nov 27 2023 lwg <liweiganga@uniontech.com> - 44.1-1
|
||||
- update to version 44.1
|
||||
|
||||
* Fri Feb 10 2023 Wenlong Ding <wenlong.ding@turbolinux.com.cn> - 43.0-2
|
||||
- Add missing global define %{systemd_units}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user