diff options
Diffstat (limited to 'gdk/directfb')
-rw-r--r-- | gdk/directfb/gdkkeys-directfb.c | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/gdk/directfb/gdkkeys-directfb.c b/gdk/directfb/gdkkeys-directfb.c index e87b67834..34cb4c4a6 100644 --- a/gdk/directfb/gdkkeys-directfb.c +++ b/gdk/directfb/gdkkeys-directfb.c @@ -1715,7 +1715,7 @@ _gdk_directfb_keyboard_exit (void) void gdk_directfb_translate_key_event (DFBWindowEvent *dfb_event, - GdkEventKey *event) + GdkEventKey *event) { gint len; gchar buf[6]; @@ -1754,6 +1754,32 @@ gdk_directfb_translate_key_event (DFBWindowEvent *dfb_event, } /** + * gdk_keymap_get_caps_lock_state: + * @keymap: a #GdkKeymap + * + * Returns whether the Caps Lock modifer is locked. + * + * Returns: %TRUE if Caps Lock is on + * + * Since: 2.16 + */ +gboolean +gdk_keymap_get_caps_lock_state (GdkKeymap *keymap) +{ + IDirectFBInputDevice *keyboard = _gdk_display->keyboard; + + if (keyboard) + { + DFBInputDeviceLockState state; + + if (keyboard->GetLockState (keyboard, &state) == DFB_OK) + return ((state & DILS_CAPS) != 0); + } + + return FALSE; +} + +/** * gdk_keymap_get_entries_for_keycode: * @keymap: a #GdkKeymap or %NULL to use the default keymap * @hardware_keycode: a keycode |