[mutter] clutter/evdev: Add API to get current layout index
- From: Jonas Ådahl <jadahl src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter] clutter/evdev: Add API to get current layout index
- Date: Mon, 21 Aug 2017 13:25:00 +0000 (UTC)
commit 5685449e15ffa401485547cbdcf58e96d3b045f2
Author: Jonas Ådahl <jadahl gmail com>
Date: Thu Aug 17 16:17:45 2017 +0800
clutter/evdev: Add API to get current layout index
We set the layout index when changing keyboard layout, but have no way
to get it back would so be needed. Add that.
https://bugzilla.gnome.org/show_bug.cgi?id=786408
.../clutter/evdev/clutter-device-manager-evdev.c | 15 +++++++++++++++
clutter/clutter/evdev/clutter-evdev.h | 3 +++
2 files changed, 18 insertions(+), 0 deletions(-)
---
diff --git a/clutter/clutter/evdev/clutter-device-manager-evdev.c
b/clutter/clutter/evdev/clutter-device-manager-evdev.c
index c3fdc90..479f869 100644
--- a/clutter/clutter/evdev/clutter-device-manager-evdev.c
+++ b/clutter/clutter/evdev/clutter-device-manager-evdev.c
@@ -2603,6 +2603,21 @@ clutter_evdev_set_keyboard_layout_index (ClutterDeviceManager *evdev,
}
/**
+ * clutter_evdev_get_keyboard_layout_index: (skip)
+ */
+xkb_layout_index_t
+clutter_evdev_get_keyboard_layout_index (ClutterDeviceManager *evdev)
+{
+ ClutterDeviceManagerEvdev *manager_evdev;
+ struct xkb_state *state;
+
+ manager_evdev = CLUTTER_DEVICE_MANAGER_EVDEV (evdev);
+ state = manager_evdev->priv->main_seat->xkb;
+
+ return xkb_state_serialize_layout (state, XKB_STATE_LAYOUT_LOCKED);
+}
+
+/**
* clutter_evdev_set_keyboard_numlock: (skip)
* @evdev: the #ClutterDeviceManager created by the evdev backend
* @numlock_set: TRUE to set NumLock ON, FALSE otherwise.
diff --git a/clutter/clutter/evdev/clutter-evdev.h b/clutter/clutter/evdev/clutter-evdev.h
index b64b136..be7f09c 100644
--- a/clutter/clutter/evdev/clutter-evdev.h
+++ b/clutter/clutter/evdev/clutter-evdev.h
@@ -120,6 +120,9 @@ CLUTTER_AVAILABLE_IN_1_20
void clutter_evdev_set_keyboard_layout_index (ClutterDeviceManager *evdev,
xkb_layout_index_t idx);
+CLUTTER_AVAILABLE_IN_MUTTER
+xkb_layout_index_t clutter_evdev_get_keyboard_layout_index (ClutterDeviceManager *evdev);
+
CLUTTER_AVAILABLE_IN_1_26
void clutter_evdev_set_keyboard_numlock (ClutterDeviceManager *evdev,
gboolean numlock_state);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]