Backport an upstream patch for setting xkb layout index
Needed for mutter 3.13.90.
This commit is contained in:
parent
e6707ef809
commit
09fbe649a6
72
0001-evdev-Add-API-to-set-the-xkb-layout-index.patch
Normal file
72
0001-evdev-Add-API-to-set-the-xkb-layout-index.patch
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
From f95493e7bff650f7c2da4d8bfe50a498cc652ddf Mon Sep 17 00:00:00 2001
|
||||||
|
From: Rui Matos <tiagomatos@gmail.com>
|
||||||
|
Date: Sun, 6 Jul 2014 17:43:14 +0200
|
||||||
|
Subject: [PATCH] evdev: Add API to set the xkb layout index
|
||||||
|
|
||||||
|
https://bugzilla.gnome.org/show_bug.cgi?id=733202
|
||||||
|
---
|
||||||
|
clutter/evdev/clutter-device-manager-evdev.c | 32 ++++++++++++++++++++++++++++
|
||||||
|
clutter/evdev/clutter-evdev.h | 4 ++++
|
||||||
|
2 files changed, 36 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/clutter/evdev/clutter-device-manager-evdev.c b/clutter/evdev/clutter-device-manager-evdev.c
|
||||||
|
index 51e4550..7b833b5 100644
|
||||||
|
--- a/clutter/evdev/clutter-device-manager-evdev.c
|
||||||
|
+++ b/clutter/evdev/clutter-device-manager-evdev.c
|
||||||
|
@@ -1847,6 +1847,38 @@ clutter_evdev_get_keyboard_map (ClutterDeviceManager *evdev)
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
+ * clutter_evdev_set_keyboard_layout_index: (skip)
|
||||||
|
+ * @evdev: the #ClutterDeviceManager created by the evdev backend
|
||||||
|
+ * @idx: the xkb layout index to set
|
||||||
|
+ *
|
||||||
|
+ * Sets the xkb layout index on the backend's #xkb_state .
|
||||||
|
+ *
|
||||||
|
+ * Since: 1.20
|
||||||
|
+ * Stability: unstable
|
||||||
|
+ */
|
||||||
|
+void
|
||||||
|
+clutter_evdev_set_keyboard_layout_index (ClutterDeviceManager *evdev,
|
||||||
|
+ xkb_layout_index_t idx)
|
||||||
|
+{
|
||||||
|
+ ClutterDeviceManagerEvdev *manager_evdev;
|
||||||
|
+ xkb_mod_mask_t depressed_mods;
|
||||||
|
+ xkb_mod_mask_t latched_mods;
|
||||||
|
+ xkb_mod_mask_t locked_mods;
|
||||||
|
+ struct xkb_state *state;
|
||||||
|
+
|
||||||
|
+ g_return_val_if_fail (CLUTTER_IS_DEVICE_MANAGER_EVDEV (evdev), NULL);
|
||||||
|
+
|
||||||
|
+ manager_evdev = CLUTTER_DEVICE_MANAGER_EVDEV (evdev);
|
||||||
|
+ state = manager_evdev->priv->main_seat->xkb;
|
||||||
|
+
|
||||||
|
+ depressed_mods = xkb_state_serialize_mods (state, XKB_STATE_MODS_DEPRESSED);
|
||||||
|
+ latched_mods = xkb_state_serialize_mods (state, XKB_STATE_MODS_LATCHED);
|
||||||
|
+ locked_mods = xkb_state_serialize_mods (state, XKB_STATE_MODS_LOCKED);
|
||||||
|
+
|
||||||
|
+ xkb_state_update_mask (state, depressed_mods, latched_mods, locked_mods, 0, 0, idx);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+/**
|
||||||
|
* clutter_evdev_set_pointer_constrain_callback:
|
||||||
|
* @evdev: the #ClutterDeviceManager created by the evdev backend
|
||||||
|
* @callback: the callback
|
||||||
|
diff --git a/clutter/evdev/clutter-evdev.h b/clutter/evdev/clutter-evdev.h
|
||||||
|
index d5f9deb..4239139 100644
|
||||||
|
--- a/clutter/evdev/clutter-evdev.h
|
||||||
|
+++ b/clutter/evdev/clutter-evdev.h
|
||||||
|
@@ -97,6 +97,10 @@ void clutter_evdev_set_keyboard_map (ClutterDeviceManager *evdev
|
||||||
|
CLUTTER_AVAILABLE_IN_1_18
|
||||||
|
struct xkb_keymap * clutter_evdev_get_keyboard_map (ClutterDeviceManager *evdev);
|
||||||
|
|
||||||
|
+CLUTTER_AVAILABLE_IN_1_20
|
||||||
|
+void clutter_evdev_set_keyboard_layout_index (ClutterDeviceManager *evdev,
|
||||||
|
+ xkb_layout_index_t idx);
|
||||||
|
+
|
||||||
|
CLUTTER_AVAILABLE_IN_1_18
|
||||||
|
void clutter_evdev_set_keyboard_repeat (ClutterDeviceManager *evdev,
|
||||||
|
gboolean repeat,
|
||||||
|
--
|
||||||
|
2.1.0
|
||||||
|
|
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
Name: clutter
|
Name: clutter
|
||||||
Version: 1.19.6
|
Version: 1.19.6
|
||||||
Release: 2%{?dist}
|
Release: 3%{?dist}
|
||||||
Summary: Open Source software library for creating rich graphical user interfaces
|
Summary: Open Source software library for creating rich graphical user interfaces
|
||||||
|
|
||||||
Group: Development/Libraries
|
Group: Development/Libraries
|
||||||
@ -16,6 +16,9 @@ License: LGPLv2+
|
|||||||
URL: http://www.clutter-project.org/
|
URL: http://www.clutter-project.org/
|
||||||
Source0: http://download.gnome.org/sources/clutter/1.19/clutter-%{version}.tar.xz
|
Source0: http://download.gnome.org/sources/clutter/1.19/clutter-%{version}.tar.xz
|
||||||
|
|
||||||
|
# Backported patch from upstream, needed for mutter 3.13.90
|
||||||
|
Patch0: 0001-evdev-Add-API-to-set-the-xkb-layout-index.patch
|
||||||
|
|
||||||
BuildRequires: glib2-devel mesa-libGL-devel pkgconfig pango-devel
|
BuildRequires: glib2-devel mesa-libGL-devel pkgconfig pango-devel
|
||||||
BuildRequires: cairo-gobject-devel gdk-pixbuf2-devel atk-devel
|
BuildRequires: cairo-gobject-devel gdk-pixbuf2-devel atk-devel
|
||||||
BuildRequires: cogl-devel >= 1.15.1
|
BuildRequires: cogl-devel >= 1.15.1
|
||||||
@ -79,6 +82,7 @@ the functionality of the installed clutter package.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
|
%patch0 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%configure \
|
%configure \
|
||||||
@ -133,6 +137,9 @@ make check %{?_smp_mflags} V=1
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Aug 20 2014 Kalev Lember <kalevlember@gmail.com> - 1.19.6-3
|
||||||
|
- Backport an upstream patch for setting xkb layout index
|
||||||
|
|
||||||
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org>
|
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org>
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user