From 5757748e300e30b0449dea040408e811dc71a39c Mon Sep 17 00:00:00 2001 From: Sungmin Kwak Date: Mon, 3 Sep 2012 19:12:00 +0900 Subject: [PATCH] In AutoCaps on Shift lock mode not retained --- debian/changelog | 8 ++++++++ packaging/ise-default.spec | 2 +- src/ise.cpp | 22 +++++++++++++--------- 3 files changed, 22 insertions(+), 10 deletions(-) diff --git a/debian/changelog b/debian/changelog index 7bf7a4ea..3b7afa13 100755 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +ise-default (0.3.020-1) unstable; urgency=low + + * In AutoCaps on Shift lock mode not retained + * Git: slp/pkgs/i/ise-default + * Tag: ise-default_0.3.020-1 + + -- Ankush Dua Mon, 03 Sep 2012 14:12:38 +0530 + ise-default (0.3.019-1) unstable; urgency=low * Center line 2 pixels were left unclickable diff --git a/packaging/ise-default.spec b/packaging/ise-default.spec index 7f06b051..b6b1211c 100755 --- a/packaging/ise-default.spec +++ b/packaging/ise-default.spec @@ -1,6 +1,6 @@ Name: ise-default Summary: Tizen keyboard -Version: 0.3.019 +Version: 0.3.020 Release: 1 Group: TO_BE/FILLED_IN License: Flora Software License diff --git a/src/ise.cpp b/src/ise.cpp index 562963f5..d5c0016c 100755 --- a/src/ise.cpp +++ b/src/ise.cpp @@ -949,12 +949,14 @@ void ise_show(int ic) _set_prediction_private_key(); } + /* We need to set shift state after setting input mode, + since setting input mode restores shift state back to off */ if(gExternalShiftLockMode) { - change_shiftmode(SHIFTMODE_LOCK); + change_shiftmode(SHIFTMODE_ON); helper_agent.update_input_context(ECORE_IMF_INPUT_PANEL_SHIFT_MODE_EVENT, ECORE_IMF_INPUT_PANEL_SHIFT_MODE_ON); - if (gCore->get_shift_state() != MCF_SHIFT_STATE_LOCK) { - gCore->set_shift_state(MCF_SHIFT_STATE_LOCK); + if (gCore->get_shift_state() != MCF_SHIFT_STATE_ON) { + gCore->set_shift_state(MCF_SHIFT_STATE_ON); bShouldUpdate = TRUE; } } else { @@ -1280,13 +1282,15 @@ void ise_set_caps_mode(unsigned int mode) } if (inputmode == INPUT_MODE_QTY_ENGLISH || - inputmode >= INPUT_MODE_QTY_FRENCH && inputmode <= INPUT_MODE_QTY_RUSSIAN || - inputmode == INPUT_MODE_QTY_URL || - inputmode == INPUT_MODE_QTY_EMAIL) { - change_shiftmode(mode ? SHIFTMODE_ON : SHIFTMODE_OFF); - gCore->set_shift_state(mode ? MCF_SHIFT_STATE_ON : MCF_SHIFT_STATE_OFF); - helper_agent.update_input_context(ECORE_IMF_INPUT_PANEL_SHIFT_MODE_EVENT, + inputmode >= INPUT_MODE_QTY_FRENCH && inputmode <= INPUT_MODE_QTY_RUSSIAN || + inputmode == INPUT_MODE_QTY_URL || + inputmode == INPUT_MODE_QTY_EMAIL) { + if(get_Ise_default_context().ShiftMode != SHIFTMODE_LOCK) { + change_shiftmode(mode ? SHIFTMODE_ON : SHIFTMODE_OFF); + gCore->set_shift_state(mode ? MCF_SHIFT_STATE_ON : MCF_SHIFT_STATE_OFF); + helper_agent.update_input_context(ECORE_IMF_INPUT_PANEL_SHIFT_MODE_EVENT, mode ? ECORE_IMF_INPUT_PANEL_SHIFT_MODE_ON : ECORE_IMF_INPUT_PANEL_SHIFT_MODE_OFF); + } } } -- 2.34.1