In AutoCaps on Shift lock mode not retained
authorSungmin Kwak <sungmin.kwak@samsung.com>
Mon, 3 Sep 2012 10:12:00 +0000 (19:12 +0900)
committerSungmin Kwak <sungmin.kwak@samsung.com>
Mon, 3 Sep 2012 10:12:00 +0000 (19:12 +0900)
debian/changelog
packaging/ise-default.spec
src/ise.cpp

index 7bf7a4ea22a5fe5d8cad1babe6dbed25f9d1b80d..3b7afa134d3bfe4cd1cff594e2058bf20a7a8f7a 100755 (executable)
@@ -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 <ankush.d@samsung.com>  Mon, 03 Sep 2012 14:12:38 +0530
+
 ise-default (0.3.019-1) unstable; urgency=low
 
   * Center line 2 pixels were left unclickable
index 7f06b051f06a7c03ce2cd8c81342181c51d8678d..b6b1211cb044d1c8585c331e3f7251da1be2533c 100755 (executable)
@@ -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
index 562963f5723a7b6833afad082dc2123e788dc8ed..d5c0016c8daafe967350cff2a3263245d4f95569 100755 (executable)
@@ -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);
+                       }
        }
 }