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

Commit edf107e2 authored by Tadashi G. Takaoka's avatar Tadashi G. Takaoka Committed by Android (Google) Code Review
Browse files

Merge "Add "force non-distinct multitouch" debug option"

parents 2764e1df 06b7c256
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -120,6 +120,7 @@
    <!-- Title for Latin keyboard debug settings activity / dialog -->
    <string name="english_ime_debug_settings">Android keyboard Debug settings</string>
    <string name="prefs_debug_mode">Debug Mode</string>
    <string name="prefs_force_non_distinct_multitouch">Force non-distinct multitouch</string>

    <!-- Keyboard theme names -->
    <string name="layout_basic">Basic</string>
+6 −0
Original line number Diff line number Diff line
@@ -42,4 +42,10 @@
            android:defaultValue="false"
            />

    <CheckBoxPreference
            android:key="force_non_distinct_multitouch"
            android:title="@string/prefs_force_non_distinct_multitouch"
            android:persistent="true"
            android:defaultValue="false"
            />
</PreferenceScreen>
+7 −0
Original line number Diff line number Diff line
@@ -28,6 +28,7 @@ import android.view.inputmethod.EditorInfo;

import com.android.inputmethod.accessibility.AccessibleKeyboardViewProxy;
import com.android.inputmethod.keyboard.internal.KeyboardState;
import com.android.inputmethod.latin.DebugSettings;
import com.android.inputmethod.latin.InputView;
import com.android.inputmethod.latin.LatinIME;
import com.android.inputmethod.latin.LatinImeLogger;
@@ -53,6 +54,7 @@ public class KeyboardSwitcher implements KeyboardState.SwitchActions,

    private SubtypeSwitcher mSubtypeSwitcher;
    private SharedPreferences mPrefs;
    private boolean mForceNonDistinctMultitouch;

    private InputView mCurrentInputView;
    private LatinKeyboardView mKeyboardView;
@@ -92,6 +94,8 @@ public class KeyboardSwitcher implements KeyboardState.SwitchActions,
        mState = new KeyboardState(this);
        setContextThemeWrapper(ims, getKeyboardThemeIndex(ims, prefs));
        prefs.registerOnSharedPreferenceChangeListener(this);
        mForceNonDistinctMultitouch = prefs.getBoolean(
                DebugSettings.FORCE_NON_DISTINCT_MULTITOUCH_KEY, false);
    }

    private static int getKeyboardThemeIndex(Context context, SharedPreferences prefs) {
@@ -389,6 +393,9 @@ public class KeyboardSwitcher implements KeyboardState.SwitchActions,

        mKeyboardView = (LatinKeyboardView) mCurrentInputView.findViewById(R.id.keyboard_view);
        mKeyboardView.setKeyboardActionListener(mInputMethodService);
        if (mForceNonDistinctMultitouch) {
            mKeyboardView.setDistinctMultitouch(false);
        }

        // This always needs to be set since the accessibility state can
        // potentially change without the input view being re-created.
+5 −1
Original line number Diff line number Diff line
@@ -115,7 +115,7 @@ public class LatinKeyboardView extends KeyboardView implements PointerTracker.Ke
    /** Listener for {@link KeyboardActionListener}. */
    private KeyboardActionListener mKeyboardActionListener;

    private final boolean mHasDistinctMultitouch;
    private boolean mHasDistinctMultitouch;
    private int mOldPointerCount = 1;
    private Key mOldKey;

@@ -371,6 +371,10 @@ public class LatinKeyboardView extends KeyboardView implements PointerTracker.Ke
        return mHasDistinctMultitouch;
    }

    public void setDistinctMultitouch(boolean hasDistinctMultitouch) {
        mHasDistinctMultitouch = hasDistinctMultitouch;
    }

    /**
     * When enabled, calls to {@link KeyboardActionListener#onCodeInput} will include key
     * codes for adjacent keys.  When disabled, only the primary key code will be
+3 −0
Original line number Diff line number Diff line
@@ -30,6 +30,7 @@ public class DebugSettings extends PreferenceActivity

    private static final String TAG = "DebugSettings";
    private static final String DEBUG_MODE_KEY = "debug_mode";
    public static final String FORCE_NON_DISTINCT_MULTITOUCH_KEY = "force_non_distinct_multitouch";

    private boolean mServiceNeedsRestart = false;
    private CheckBoxPreference mDebugMode;
@@ -60,6 +61,8 @@ public class DebugSettings extends PreferenceActivity
                updateDebugMode();
                mServiceNeedsRestart = true;
            }
        } else if (key.equals(FORCE_NON_DISTINCT_MULTITOUCH_KEY)) {
            mServiceNeedsRestart = true;
        }
    }