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

Commit 28a38fdf authored by Tadashi G. Takaoka's avatar Tadashi G. Takaoka
Browse files

Tab key is shown when editor navigation flag is set

Previously tab key is shown only when the input type variant says that
it is web input.  In addition to that, this change also shows tab key
when the IME option includes editor action (next and/or previous)
flag.

Bug: 3094312
Change-Id: I3f8841fdbcee918a0f93f3259090f24e70d96471
parent 1b7362b5
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -221,7 +221,7 @@
            <enum name="phone" value="4" />
            <enum name="number" value="5" />
        </attr>
        <attr name="webInput" format="boolean" />
        <attr name="navigateAction" format="boolean" />
        <attr name="passwordInput" format="boolean" />
        <attr name="hasSettingsKey" format="boolean" />
        <attr name="voiceKeyEnabled" format="boolean" />
+1 −1
Original line number Diff line number Diff line
@@ -46,7 +46,7 @@
                </case>
                <!-- latin:hasVoiceKey="false" -->
                <case
                    latin:webInput="true"
                    latin:navigateAction="true"
                >
                    <Key
                        latin:keyLabel="."
+1 −1
Original line number Diff line number Diff line
@@ -56,7 +56,7 @@
        </switch>
        <switch>
            <case
                latin:webInput="true"
                latin:navigateAction="true"
            >
                <Key
                    latin:keyStyle="tabKeyStyle"
+1 −1
Original line number Diff line number Diff line
@@ -27,7 +27,7 @@ public class EditorInfoCompatUtils {
    private static final Field FIELD_IME_FLAG_NAVIGATE_PREVIOUS = CompatUtils.getField(
            EditorInfo.class, "IME_FLAG_NAVIGATE_PREVIOUS");
    private static final Field FIELD_IME_ACTION_PREVIOUS = CompatUtils.getField(
            EditorInfo.class, "IME_FLAG_ACTION_PREVIOUS");
            EditorInfo.class, "IME_ACTION_PREVIOUS");
    private static final Integer OBJ_IME_FLAG_NAVIGATE_NEXT = (Integer) CompatUtils
            .getFieldValue(null, null, FIELD_IME_FLAG_NAVIGATE_NEXT);
    private static final Integer OBJ_IME_FLAG_NAVIGATE_PREVIOUS = (Integer) CompatUtils
+7 −5
Original line number Diff line number Diff line
@@ -43,7 +43,7 @@ public class KeyboardId {
    public final int mMode;
    public final int mXmlId;
    public final int mColorScheme;
    public final boolean mWebInput;
    public final boolean mNavigateAction;
    public final boolean mPasswordInput;
    public final boolean mHasSettingsKey;
    public final boolean mVoiceKeyEnabled;
@@ -67,7 +67,9 @@ public class KeyboardId {
        this.mMode = mode;
        this.mXmlId = xmlId;
        this.mColorScheme = colorScheme;
        this.mWebInput = InputTypeCompatUtils.isWebInputType(inputType);
        this.mNavigateAction = InputTypeCompatUtils.isWebInputType(inputType)
                || EditorInfoCompatUtils.hasFlagNavigateNext(imeOptions)
                || EditorInfoCompatUtils.hasFlagNavigatePrevious(imeOptions);
        this.mPasswordInput = InputTypeCompatUtils.isPasswordInputType(inputType)
                || InputTypeCompatUtils.isVisiblePasswordInputType(inputType);
        this.mHasSettingsKey = hasSettingsKey;
@@ -89,7 +91,7 @@ public class KeyboardId {
                mode,
                xmlId,
                colorScheme,
                mWebInput,
                mNavigateAction,
                mPasswordInput,
                hasSettingsKey,
                voiceKeyEnabled,
@@ -143,7 +145,7 @@ public class KeyboardId {
            && other.mMode == this.mMode
            && other.mXmlId == this.mXmlId
            && other.mColorScheme == this.mColorScheme
            && other.mWebInput == this.mWebInput
            && other.mNavigateAction == this.mNavigateAction
            && other.mPasswordInput == this.mPasswordInput
            && other.mHasSettingsKey == this.mHasSettingsKey
            && other.mVoiceKeyEnabled == this.mVoiceKeyEnabled
@@ -166,7 +168,7 @@ public class KeyboardId {
                modeName(mMode),
                EditorInfoCompatUtils.imeOptionsName(mImeAction),
                colorSchemeName(mColorScheme),
                (mWebInput ? " webInput" : ""),
                (mNavigateAction ? " navigateAction" : ""),
                (mPasswordInput ? " passwordInput" : ""),
                (mHasSettingsKey ? " hasSettingsKey" : ""),
                (mVoiceKeyEnabled ? " voiceKeyEnabled" : ""),
Loading