Loading java/src/com/android/inputmethod/latin/LatinIME.java +2 −1 Original line number Original line Diff line number Diff line Loading @@ -1033,7 +1033,8 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen // with cursor movement when we have a hardware keyboard since we are not in charge. // with cursor movement when we have a hardware keyboard since we are not in charge. final SettingsValues settingsValues = mSettings.getCurrent(); final SettingsValues settingsValues = mSettings.getCurrent(); if ((!settingsValues.mHasHardwareKeyboard || ProductionFlags.IS_HARDWARE_KEYBOARD_SUPPORTED) if ((!settingsValues.mHasHardwareKeyboard || ProductionFlags.IS_HARDWARE_KEYBOARD_SUPPORTED) && mInputLogic.onUpdateSelection(oldSelStart, oldSelEnd, newSelStart, newSelEnd)) { && mInputLogic.onUpdateSelection(oldSelStart, oldSelEnd, newSelStart, newSelEnd, settingsValues)) { mKeyboardSwitcher.requestUpdatingShiftState(getCurrentAutoCapsState(), mKeyboardSwitcher.requestUpdatingShiftState(getCurrentAutoCapsState(), getCurrentRecapitalizeState()); getCurrentRecapitalizeState()); } } Loading java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java +5 −3 Original line number Original line Diff line number Diff line Loading @@ -358,10 +358,11 @@ public final class InputLogic { * @param oldSelEnd old selection end * @param oldSelEnd old selection end * @param newSelStart new selection start * @param newSelStart new selection start * @param newSelEnd new selection end * @param newSelEnd new selection end * @param settingsValues the current values of the settings. * @return whether the cursor has moved as a result of user interaction. * @return whether the cursor has moved as a result of user interaction. */ */ public boolean onUpdateSelection(final int oldSelStart, final int oldSelEnd, public boolean onUpdateSelection(final int oldSelStart, final int oldSelEnd, final int newSelStart, final int newSelEnd) { final int newSelStart, final int newSelEnd, final SettingsValues settingsValues) { if (mConnection.isBelatedExpectedUpdate(oldSelStart, newSelStart, oldSelEnd, newSelEnd)) { if (mConnection.isBelatedExpectedUpdate(oldSelStart, newSelStart, oldSelEnd, newSelEnd)) { return false; return false; } } Loading @@ -386,7 +387,8 @@ public final class InputLogic { // should be true, but that is if the framework had taken that wrong cursor position // should be true, but that is if the framework had taken that wrong cursor position // into account, which means we have to reset the entire composing state whenever there // into account, which means we have to reset the entire composing state whenever there // is or was a selection regardless of whether it changed or not. // is or was a selection regardless of whether it changed or not. if (hasOrHadSelection || (selectionChangedOrSafeToReset if (hasOrHadSelection || !settingsValues.needsToLookupSuggestions() || (selectionChangedOrSafeToReset && !mWordComposer.moveCursorByAndReturnIfInsideComposingWord(moveAmount))) { && !mWordComposer.moveCursorByAndReturnIfInsideComposingWord(moveAmount))) { // If we are composing a word and moving the cursor, we would want to set a // If we are composing a word and moving the cursor, we would want to set a // suggestion span for recorrection to work correctly. Unfortunately, that // suggestion span for recorrection to work correctly. Unfortunately, that Loading Loading
java/src/com/android/inputmethod/latin/LatinIME.java +2 −1 Original line number Original line Diff line number Diff line Loading @@ -1033,7 +1033,8 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen // with cursor movement when we have a hardware keyboard since we are not in charge. // with cursor movement when we have a hardware keyboard since we are not in charge. final SettingsValues settingsValues = mSettings.getCurrent(); final SettingsValues settingsValues = mSettings.getCurrent(); if ((!settingsValues.mHasHardwareKeyboard || ProductionFlags.IS_HARDWARE_KEYBOARD_SUPPORTED) if ((!settingsValues.mHasHardwareKeyboard || ProductionFlags.IS_HARDWARE_KEYBOARD_SUPPORTED) && mInputLogic.onUpdateSelection(oldSelStart, oldSelEnd, newSelStart, newSelEnd)) { && mInputLogic.onUpdateSelection(oldSelStart, oldSelEnd, newSelStart, newSelEnd, settingsValues)) { mKeyboardSwitcher.requestUpdatingShiftState(getCurrentAutoCapsState(), mKeyboardSwitcher.requestUpdatingShiftState(getCurrentAutoCapsState(), getCurrentRecapitalizeState()); getCurrentRecapitalizeState()); } } Loading
java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java +5 −3 Original line number Original line Diff line number Diff line Loading @@ -358,10 +358,11 @@ public final class InputLogic { * @param oldSelEnd old selection end * @param oldSelEnd old selection end * @param newSelStart new selection start * @param newSelStart new selection start * @param newSelEnd new selection end * @param newSelEnd new selection end * @param settingsValues the current values of the settings. * @return whether the cursor has moved as a result of user interaction. * @return whether the cursor has moved as a result of user interaction. */ */ public boolean onUpdateSelection(final int oldSelStart, final int oldSelEnd, public boolean onUpdateSelection(final int oldSelStart, final int oldSelEnd, final int newSelStart, final int newSelEnd) { final int newSelStart, final int newSelEnd, final SettingsValues settingsValues) { if (mConnection.isBelatedExpectedUpdate(oldSelStart, newSelStart, oldSelEnd, newSelEnd)) { if (mConnection.isBelatedExpectedUpdate(oldSelStart, newSelStart, oldSelEnd, newSelEnd)) { return false; return false; } } Loading @@ -386,7 +387,8 @@ public final class InputLogic { // should be true, but that is if the framework had taken that wrong cursor position // should be true, but that is if the framework had taken that wrong cursor position // into account, which means we have to reset the entire composing state whenever there // into account, which means we have to reset the entire composing state whenever there // is or was a selection regardless of whether it changed or not. // is or was a selection regardless of whether it changed or not. if (hasOrHadSelection || (selectionChangedOrSafeToReset if (hasOrHadSelection || !settingsValues.needsToLookupSuggestions() || (selectionChangedOrSafeToReset && !mWordComposer.moveCursorByAndReturnIfInsideComposingWord(moveAmount))) { && !mWordComposer.moveCursorByAndReturnIfInsideComposingWord(moveAmount))) { // If we are composing a word and moving the cursor, we would want to set a // If we are composing a word and moving the cursor, we would want to set a // suggestion span for recorrection to work correctly. Unfortunately, that // suggestion span for recorrection to work correctly. Unfortunately, that Loading