Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f5948737 authored by Jean Chalard's avatar Jean Chalard
Browse files

[IL79] Some refactoring

Bug: 8636060
Change-Id: I931c553f68a1f15d22711a661dbffd4e5d421979
parent 10460441
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -912,7 +912,13 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
                    composingSpanEnd, mInputLogic.mConnection);
        }

        if (mInputLogic.onUpdateSelection(mSettings.getCurrent(), oldSelStart, oldSelEnd,
        // If the keyboard is not visible, we don't need to do all the housekeeping work, as it
        // will be reset when the keyboard shows up anyway.
        // TODO: revisit this when LatinIME supports hardware keyboards.
        // NOTE: the test harness subclasses LatinIME and overrides isInputViewShown().
        // TODO: find a better way to simulate actual execution.
        if (isInputViewShown() &&
                mInputLogic.onUpdateSelection(mSettings.getCurrent(), oldSelStart, oldSelEnd,
                        newSelStart, newSelEnd, composingSpanStart, composingSpanEnd)) {
            mKeyboardSwitcher.updateShiftState();
        }
+10 −18
Original line number Diff line number Diff line
@@ -195,7 +195,14 @@ public final class InputLogic {
            final int oldSelStart, final int oldSelEnd,
            final int newSelStart, final int newSelEnd,
            final int composingSpanStart, final int composingSpanEnd) {
        final boolean selectionChanged = oldSelStart != newSelStart || oldSelEnd != newSelEnd;
        if (!mConnection.isBelatedExpectedUpdate(oldSelStart, newSelStart, oldSelEnd, newSelEnd)) {
            // TODO: the following is probably better done in resetEntireInputState().
            // it should only happen when the cursor moved, and the very purpose of the
            // test below is to narrow down whether this happened or not. Likewise with
            // the call to updateShiftState.
            // We set this to NONE because after a cursor move, we don't want the space
            // state-related special processing to kick in.
            mSpaceState = SpaceState.NONE;

            // if composingSpanStart and composingSpanEnd are -1, it means there is no composing
            // span in the view - we can use that to narrow down whether the cursor was moved
@@ -204,22 +211,7 @@ public final class InputLogic {
            // the state. TODO: rescind this policy: the framework never removes the composing
            // span on its own accord while editing. This test is useless.
            final boolean noComposingSpan = composingSpanStart == -1 && composingSpanEnd == -1;

        // If the keyboard is not visible, we don't need to do all the housekeeping work, as it
        // will be reset when the keyboard shows up anyway.
        // TODO: revisit this when LatinIME supports hardware keyboards.
        // NOTE: the test harness subclasses LatinIME and overrides isInputViewShown().
        // TODO: find a better way to simulate actual execution.
        // TODO: remove the #isInputViewShown() call from here.
        if (mLatinIME.isInputViewShown() && !mConnection.isBelatedExpectedUpdate(oldSelStart,
                newSelStart, oldSelEnd, newSelEnd)) {
            // TODO: the following is probably better done in resetEntireInputState().
            // it should only happen when the cursor moved, and the very purpose of the
            // test below is to narrow down whether this happened or not. Likewise with
            // the call to updateShiftState.
            // We set this to NONE because after a cursor move, we don't want the space
            // state-related special processing to kick in.
            mSpaceState = SpaceState.NONE;
            final boolean selectionChanged = oldSelStart != newSelStart || oldSelEnd != newSelEnd;

            // TODO: is it still necessary to test for composingSpan related stuff?
            final boolean selectionChangedOrSafeToReset = selectionChanged