[mutter] clutter/evdev: Implement togglekeys notification
- From: Olivier Fourdan <ofourdan src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter] clutter/evdev: Implement togglekeys notification
- Date: Thu, 20 Jun 2019 11:51:58 +0000 (UTC)
commit 02fc0b453374c21c76c3b2a83eb9edf5e18b110f
Author: Olivier Fourdan <ofourdan redhat com>
Date: Wed Jun 12 11:59:41 2019 +0200
clutter/evdev: Implement togglekeys notification
Notify with a system sound when the modifiers lock state is changed.
Closes: https://gitlab.gnome.org/GNOME/mutter/issues/637
clutter/clutter/evdev/clutter-input-device-evdev.c | 7 +++++++
clutter/clutter/evdev/clutter-input-device-evdev.h | 1 +
clutter/clutter/evdev/clutter-seat-evdev.c | 1 +
3 files changed, 9 insertions(+)
---
diff --git a/clutter/clutter/evdev/clutter-input-device-evdev.c
b/clutter/clutter/evdev/clutter-input-device-evdev.c
index 105d769fa..f315bfb60 100644
--- a/clutter/clutter/evdev/clutter-input-device-evdev.c
+++ b/clutter/clutter/evdev/clutter-input-device-evdev.c
@@ -1246,6 +1246,13 @@ clutter_input_device_evdev_apply_kbd_a11y_settings (ClutterInputDeviceEvdev *dev
device->a11y_flags = settings->controls;
}
+void
+clutter_evdev_a11y_maybe_notify_toggle_keys (ClutterInputDeviceEvdev *device)
+{
+ if (device->a11y_flags & CLUTTER_A11Y_TOGGLE_KEYS_ENABLED)
+ clutter_input_device_evdev_bell_notify ();
+}
+
static void
release_device_touch_slot (gpointer value)
{
diff --git a/clutter/clutter/evdev/clutter-input-device-evdev.h
b/clutter/clutter/evdev/clutter-input-device-evdev.h
index d3cd45a44..f4515a7d3 100644
--- a/clutter/clutter/evdev/clutter-input-device-evdev.h
+++ b/clutter/clutter/evdev/clutter-input-device-evdev.h
@@ -150,6 +150,7 @@ void clutter_input_device_evdev_release_touch_state (Clutte
void clutter_input_device_evdev_release_touch_slots (ClutterInputDeviceEvdev
*device_evdev,
uint64_t time_us);
+void clutter_evdev_a11y_maybe_notify_toggle_keys (ClutterInputDeviceEvdev *);
G_END_DECLS
diff --git a/clutter/clutter/evdev/clutter-seat-evdev.c b/clutter/clutter/evdev/clutter-seat-evdev.c
index 9e8e3ffb1..888db6e4f 100644
--- a/clutter/clutter/evdev/clutter-seat-evdev.c
+++ b/clutter/clutter/evdev/clutter-seat-evdev.c
@@ -326,6 +326,7 @@ clutter_seat_evdev_notify_key (ClutterSeatEvdev *seat,
backend = clutter_get_default_backend ();
g_signal_emit_by_name (clutter_backend_get_keymap (backend), "state-changed");
clutter_seat_evdev_sync_leds (seat);
+ clutter_evdev_a11y_maybe_notify_toggle_keys (CLUTTER_INPUT_DEVICE_EVDEV (seat->core_keyboard));
}
if (state == 0 || /* key release */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]