From bd18e264f4536a9305c04ce56c6ab4094967aa02 Mon Sep 17 00:00:00 2001 From: kabeer khan Date: Mon, 15 Sep 2014 23:38:54 -0400 Subject: [PATCH] Added Caps Lock On/Off Hint in Lock Screen Summary: Signed-off-by: kabeer khan Reviewers: devilhorns, zmike Subscribers: cedric Maniphest Tasks: T1570 Differential Revision: https://phab.enlightenment.org/D1397 --- src/modules/lokker/lokker.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/src/modules/lokker/lokker.c b/src/modules/lokker/lokker.c index 15c6e1408..c09c59bdc 100644 --- a/src/modules/lokker/lokker.c +++ b/src/modules/lokker/lokker.c @@ -333,6 +333,12 @@ _text_login_box_add(Lokker_Popup *lp) "e/desklock/login_box"); edje_object_part_text_set(lp->login_box, "e.text.title", _("Please enter your unlock password")); + if (evas_key_lock_is_set(evas_key_lock_get(evas), "Caps_Lock")) + edje_object_part_text_set(lp->login_box, "e.text.hint", + _("Caps Lock is On")); + else + edje_object_part_text_set(lp->login_box, "e.text.hint", + _("")); edje_object_size_min_calc(lp->login_box, &mw, &mh); if (edje_object_part_exists(lp->bg_object, "e.swallow.login_box")) { @@ -626,6 +632,17 @@ _desklock_auth(char *passwd) return (_auth_child_pid > 0); } +static void +_lokker_caps_hint_update(const char *msg) +{ + Eina_List *l; + Lokker_Popup *lp; + EINA_LIST_FOREACH(edd->elock_wnd_list, l, lp) + { + edje_object_part_text_set(lp->login_box, "e.text.hint", _(msg)); + } +} + static int _lokker_check_auth(void) { @@ -710,6 +727,13 @@ _lokker_cb_key_down(void *data EINA_UNUSED, int type EINA_UNUSED, void *event) } _lokker_delete(); } + else if (!strcmp(ev->key, "Caps_Lock")) + { + if(ev->modifiers & ECORE_EVENT_LOCK_CAPS) + _lokker_caps_hint_update(""); + else + _lokker_caps_hint_update("Caps Lock is On"); + } else if ((!strcmp(ev->key, "u") && (ev->modifiers & ECORE_EVENT_MODIFIER_CTRL))) _lokker_null();