Loading java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java +16 −19 Original line number Diff line number Diff line Loading @@ -381,6 +381,7 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha } private void setShifted(int shiftMode) { mInputMethodService.mHandler.cancelUpdateShiftState(); LatinKeyboard latinKeyboard = getLatinKeyboard(); if (latinKeyboard == null) return; Loading @@ -404,19 +405,25 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha } private void setShiftLocked(boolean shiftLocked) { mInputMethodService.mHandler.cancelUpdateShiftState(); LatinKeyboard latinKeyboard = getLatinKeyboard(); if (latinKeyboard == null) return; mState.setShiftLocked(shiftLocked); latinKeyboard.setShiftLocked(shiftLocked); mKeyboardView.invalidateAllKeys(); if (!shiftLocked) { // To be able to turn off caps lock by "double tap" on shift key, we should ignore // the second tap of the "double tap" from now for a while because we just have // already turned off caps lock above. mKeyboardView.startIgnoringDoubleTap(); } } /** * Toggle keyboard shift state triggered by user touch event. */ public void toggleShift() { mInputMethodService.mHandler.cancelUpdateShiftState(); if (DEBUG_STATE) { Log.d(TAG, "toggleShift: " + mState); } Loading @@ -428,16 +435,16 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha } public void toggleCapsLock() { mInputMethodService.mHandler.cancelUpdateShiftState(); if (DEBUG_STATE) { Log.d(TAG, "toggleCapsLock: " + mState); } if (isAlphabetMode()) { if (mState.isShiftLocked()) { setShiftLocked(false); // TODO: Remove this. // Shift key is long pressed while caps lock state, we will toggle back to normal // state. And mark as if shift key is released. setShiftLocked(false); mState.onToggleCapsLock(); mState.onReleaseCapsLock(); } else { setShiftLocked(true); } Loading @@ -451,12 +458,6 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha toggleAlphabetAndSymbols(); } private void startIgnoringDoubleTap() { if (mKeyboardView != null) { mKeyboardView.startIgnoringDoubleTap(); } } /** * Update keyboard shift state triggered by connected EditText status change. */ Loading Loading @@ -504,7 +505,7 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha // shifted state. } else { // In base layout, chording or manual temporary upper case mode is started. toggleShift(); setShifted(MANUAL_SHIFT); } } else { // In symbol mode, just toggle symbol and symbol more keyboard. Loading @@ -530,26 +531,22 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha if (isAlphabetMode) { if (mState.isShiftKeyMomentary()) { // After chording input while normal state. toggleShift(); setShifted(UNSHIFT); } else if (isShiftLocked && !isShiftLockShifted && (mState.isShiftKeyPressing() || mState.isShiftKeyPressingOnShifted()) && !withSliding) { // Shift has been long pressed, ignore this release. } else if (isShiftLocked && !mState.isShiftKeyIgnoring() && !withSliding) { // Shift has been pressed without chording while caps lock state. toggleCapsLock(); // To be able to turn off caps lock by "double tap" on shift key, we should ignore // the second tap of the "double tap" from now for a while because we just have // already turned off caps lock above. startIgnoringDoubleTap(); setShiftLocked(false); } else if (isShiftedOrShiftLocked && mState.isShiftKeyPressingOnShifted() && !withSliding) { // Shift has been pressed without chording while shifted state. toggleShift(); setShifted(UNSHIFT); } else if (isManualTemporaryUpperCaseFromAuto && mState.isShiftKeyPressing() && !withSliding) { // Shift has been pressed without chording while manual temporary upper case // transited from automatic temporary upper case. toggleShift(); setShifted(UNSHIFT); } } else { // In symbol mode, snap back to the previous keyboard mode if the user chords the shift Loading java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java +1 −1 Original line number Diff line number Diff line Loading @@ -98,7 +98,7 @@ public class KeyboardState { return mShiftKeyState.isPressingOnShifted(); } public void onToggleCapsLock() { public void onReleaseCapsLock() { mShiftKeyState.onRelease(); } Loading Loading
java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java +16 −19 Original line number Diff line number Diff line Loading @@ -381,6 +381,7 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha } private void setShifted(int shiftMode) { mInputMethodService.mHandler.cancelUpdateShiftState(); LatinKeyboard latinKeyboard = getLatinKeyboard(); if (latinKeyboard == null) return; Loading @@ -404,19 +405,25 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha } private void setShiftLocked(boolean shiftLocked) { mInputMethodService.mHandler.cancelUpdateShiftState(); LatinKeyboard latinKeyboard = getLatinKeyboard(); if (latinKeyboard == null) return; mState.setShiftLocked(shiftLocked); latinKeyboard.setShiftLocked(shiftLocked); mKeyboardView.invalidateAllKeys(); if (!shiftLocked) { // To be able to turn off caps lock by "double tap" on shift key, we should ignore // the second tap of the "double tap" from now for a while because we just have // already turned off caps lock above. mKeyboardView.startIgnoringDoubleTap(); } } /** * Toggle keyboard shift state triggered by user touch event. */ public void toggleShift() { mInputMethodService.mHandler.cancelUpdateShiftState(); if (DEBUG_STATE) { Log.d(TAG, "toggleShift: " + mState); } Loading @@ -428,16 +435,16 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha } public void toggleCapsLock() { mInputMethodService.mHandler.cancelUpdateShiftState(); if (DEBUG_STATE) { Log.d(TAG, "toggleCapsLock: " + mState); } if (isAlphabetMode()) { if (mState.isShiftLocked()) { setShiftLocked(false); // TODO: Remove this. // Shift key is long pressed while caps lock state, we will toggle back to normal // state. And mark as if shift key is released. setShiftLocked(false); mState.onToggleCapsLock(); mState.onReleaseCapsLock(); } else { setShiftLocked(true); } Loading @@ -451,12 +458,6 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha toggleAlphabetAndSymbols(); } private void startIgnoringDoubleTap() { if (mKeyboardView != null) { mKeyboardView.startIgnoringDoubleTap(); } } /** * Update keyboard shift state triggered by connected EditText status change. */ Loading Loading @@ -504,7 +505,7 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha // shifted state. } else { // In base layout, chording or manual temporary upper case mode is started. toggleShift(); setShifted(MANUAL_SHIFT); } } else { // In symbol mode, just toggle symbol and symbol more keyboard. Loading @@ -530,26 +531,22 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha if (isAlphabetMode) { if (mState.isShiftKeyMomentary()) { // After chording input while normal state. toggleShift(); setShifted(UNSHIFT); } else if (isShiftLocked && !isShiftLockShifted && (mState.isShiftKeyPressing() || mState.isShiftKeyPressingOnShifted()) && !withSliding) { // Shift has been long pressed, ignore this release. } else if (isShiftLocked && !mState.isShiftKeyIgnoring() && !withSliding) { // Shift has been pressed without chording while caps lock state. toggleCapsLock(); // To be able to turn off caps lock by "double tap" on shift key, we should ignore // the second tap of the "double tap" from now for a while because we just have // already turned off caps lock above. startIgnoringDoubleTap(); setShiftLocked(false); } else if (isShiftedOrShiftLocked && mState.isShiftKeyPressingOnShifted() && !withSliding) { // Shift has been pressed without chording while shifted state. toggleShift(); setShifted(UNSHIFT); } else if (isManualTemporaryUpperCaseFromAuto && mState.isShiftKeyPressing() && !withSliding) { // Shift has been pressed without chording while manual temporary upper case // transited from automatic temporary upper case. toggleShift(); setShifted(UNSHIFT); } } else { // In symbol mode, snap back to the previous keyboard mode if the user chords the shift Loading
java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java +1 −1 Original line number Diff line number Diff line Loading @@ -98,7 +98,7 @@ public class KeyboardState { return mShiftKeyState.isPressingOnShifted(); } public void onToggleCapsLock() { public void onReleaseCapsLock() { mShiftKeyState.onRelease(); } Loading