mirror of
https://github.com/Helium314/HeliBoard.git
synced 2025-05-31 11:52:13 +00:00
switch from start / stop one-handed mode key codes to a toggle code
mainly so there is no awkward state-dependent key code on the toolbar key
This commit is contained in:
parent
5afb1e3a0c
commit
419c0d847b
8 changed files with 18 additions and 19 deletions
|
@ -52,8 +52,9 @@ public final class KeyboardCodesSet {
|
|||
"key_emoji",
|
||||
"key_unspecified",
|
||||
"key_clipboard",
|
||||
"key_start_onehanded",
|
||||
"key_stop_onehanded",
|
||||
"key_toggle_onehanded",
|
||||
"key_start_onehanded", // keep name to avoid breaking custom layouts
|
||||
"key_stop_onehanded", // keep name to avoid breaking custom layouts
|
||||
"key_switch_onehanded"
|
||||
};
|
||||
|
||||
|
@ -77,8 +78,9 @@ public final class KeyboardCodesSet {
|
|||
KeyCode.EMOJI,
|
||||
KeyCode.NOT_SPECIFIED,
|
||||
KeyCode.CLIPBOARD,
|
||||
KeyCode.START_ONE_HANDED_MODE,
|
||||
KeyCode.STOP_ONE_HANDED_MODE,
|
||||
KeyCode.TOGGLE_ONE_HANDED_MODE,
|
||||
KeyCode.TOGGLE_ONE_HANDED_MODE,
|
||||
KeyCode.TOGGLE_ONE_HANDED_MODE,
|
||||
KeyCode.SWITCH_ONE_HANDED_MODE
|
||||
};
|
||||
|
||||
|
|
|
@ -808,10 +808,8 @@ public final class KeyboardState {
|
|||
toggleNumpad(false, autoCapsFlags, recapitalizeMode, false, true);
|
||||
} else if (code == KeyCode.SYMBOL) {
|
||||
setSymbolsKeyboard();
|
||||
} else if (code == KeyCode.START_ONE_HANDED_MODE) {
|
||||
setOneHandedModeEnabled(true);
|
||||
} else if (code == KeyCode.STOP_ONE_HANDED_MODE) {
|
||||
setOneHandedModeEnabled(false);
|
||||
} else if (code == KeyCode.TOGGLE_ONE_HANDED_MODE) {
|
||||
setOneHandedModeEnabled(!Settings.getInstance().getCurrent().mOneHandedModeEnabled);
|
||||
} else if (code == KeyCode.SWITCH_ONE_HANDED_MODE) {
|
||||
switchOneHandedMode();
|
||||
}
|
||||
|
|
|
@ -125,8 +125,8 @@ object KeyCode {
|
|||
|
||||
// heliboard only codes
|
||||
const val SYMBOL_ALPHA = -10001
|
||||
const val START_ONE_HANDED_MODE = -10002
|
||||
const val STOP_ONE_HANDED_MODE = -10003
|
||||
const val TOGGLE_ONE_HANDED_MODE = -10002
|
||||
const val TOGGLE_ONE_HANDED_MODE_2 = -10003 // does the same as TOGGLE_ONE_HANDED_MODE (used to be start & stop)
|
||||
const val SWITCH_ONE_HANDED_MODE = -10004
|
||||
const val SHIFT_ENTER = -10005
|
||||
const val ACTION_NEXT = -10006
|
||||
|
@ -179,7 +179,7 @@ object KeyCode {
|
|||
FN, CLIPBOARD_CLEAR_HISTORY, NUMPAD,
|
||||
|
||||
// heliboard only
|
||||
SYMBOL_ALPHA, START_ONE_HANDED_MODE, STOP_ONE_HANDED_MODE, SWITCH_ONE_HANDED_MODE, SHIFT_ENTER,
|
||||
SYMBOL_ALPHA, TOGGLE_ONE_HANDED_MODE, SWITCH_ONE_HANDED_MODE, SHIFT_ENTER,
|
||||
ACTION_NEXT, ACTION_PREVIOUS, NOT_SPECIFIED, CLIPBOARD_COPY_ALL, WORD_LEFT, WORD_RIGHT, PAGE_UP,
|
||||
PAGE_DOWN, META, TAB, ESCAPE, INSERT, SLEEP, MEDIA_PLAY, MEDIA_PAUSE, MEDIA_PLAY_PAUSE, MEDIA_NEXT,
|
||||
MEDIA_PREVIOUS, VOL_UP, VOL_DOWN, MUTE, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, BACK
|
||||
|
@ -189,6 +189,7 @@ object KeyCode {
|
|||
IME_UI_MODE_TEXT -> ALPHA
|
||||
VIEW_PHONE -> ALPHA // phone keyboard is treated like alphabet, just with different layout
|
||||
VIEW_PHONE2 -> SYMBOL
|
||||
TOGGLE_ONE_HANDED_MODE_2 -> TOGGLE_ONE_HANDED_MODE
|
||||
|
||||
else -> throw IllegalStateException("key code $this not yet supported")
|
||||
}
|
||||
|
|
|
@ -127,7 +127,7 @@ sealed interface KeyData : AbstractKeyData {
|
|||
if (!params.mId.mLanguageSwitchKeyEnabled && !params.mId.isNumberLayout && RichInputMethodManager.canSwitchLanguage())
|
||||
keys.add("!icon/language_switch_key|!code/key_language_switch")
|
||||
if (!params.mId.mOneHandedModeEnabled)
|
||||
keys.add("!icon/start_onehanded_mode_key|!code/key_start_onehanded")
|
||||
keys.add("!icon/start_onehanded_mode_key|!code/key_toggle_onehanded")
|
||||
if (!params.mId.mDeviceLocked)
|
||||
keys.add("!icon/settings_key|!code/key_settings")
|
||||
return keys
|
||||
|
|
|
@ -84,8 +84,7 @@ class KeyboardWrapperView @JvmOverloads constructor(
|
|||
if (newScale == oldScale) return@setOnTouchListener true
|
||||
Settings.getInstance().writeOneHandedModeScale(newScale)
|
||||
oneHandedModeEnabled = false // intentionally putting wrong value, so KeyboardSwitcher.setOneHandedModeEnabled does actually reload
|
||||
keyboardActionListener?.onCodeInput(KeyCode.START_ONE_HANDED_MODE,
|
||||
Constants.NOT_A_COORDINATE, Constants.NOT_A_COORDINATE, false)
|
||||
KeyboardSwitcher.getInstance().setOneHandedModeEnabled(true)
|
||||
}
|
||||
else -> x = 0f
|
||||
}
|
||||
|
@ -119,7 +118,7 @@ class KeyboardWrapperView @JvmOverloads constructor(
|
|||
|
||||
override fun onClick(view: View) {
|
||||
if (view === stopOneHandedModeBtn) {
|
||||
keyboardActionListener?.onCodeInput(KeyCode.STOP_ONE_HANDED_MODE,
|
||||
keyboardActionListener?.onCodeInput(KeyCode.TOGGLE_ONE_HANDED_MODE,
|
||||
Constants.NOT_A_COORDINATE, Constants.NOT_A_COORDINATE,
|
||||
false /* isKeyRepeat */)
|
||||
} else if (view === switchOneHandedModeBtn) {
|
||||
|
|
|
@ -224,8 +224,7 @@ public final class Constants {
|
|||
case CODE_TAB: return "tab";
|
||||
case CODE_ENTER: return "enter";
|
||||
case CODE_SPACE: return "space";
|
||||
case KeyCode.START_ONE_HANDED_MODE: return "startOneHandedMode";
|
||||
case KeyCode.STOP_ONE_HANDED_MODE: return "stopOneHandedMode";
|
||||
case KeyCode.TOGGLE_ONE_HANDED_MODE: return "toggleOneHandedMode";
|
||||
case KeyCode.SWITCH_ONE_HANDED_MODE: return "switchOneHandedMode";
|
||||
case KeyCode.NUMPAD: return "numpad";
|
||||
default:
|
||||
|
|
|
@ -779,7 +779,7 @@ public final class InputLogic {
|
|||
// We need to switch to the shortcut IME. This is handled by LatinIME since the
|
||||
// input logic has no business with IME switching.
|
||||
case KeyCode.CAPS_LOCK, KeyCode.SYMBOL_ALPHA, KeyCode.ALPHA, KeyCode.SYMBOL, KeyCode.NUMPAD, KeyCode.EMOJI,
|
||||
KeyCode.START_ONE_HANDED_MODE, KeyCode.STOP_ONE_HANDED_MODE, KeyCode.SWITCH_ONE_HANDED_MODE,
|
||||
KeyCode.TOGGLE_ONE_HANDED_MODE, KeyCode.SWITCH_ONE_HANDED_MODE,
|
||||
KeyCode.CTRL, KeyCode.ALT, KeyCode.FN, KeyCode.META:
|
||||
break;
|
||||
default:
|
||||
|
|
|
@ -60,7 +60,7 @@ fun getCodeForToolbarKey(key: ToolbarKey) = Settings.getInstance().getCustomTool
|
|||
COPY -> KeyCode.CLIPBOARD_COPY
|
||||
CUT -> KeyCode.CLIPBOARD_CUT
|
||||
PASTE -> KeyCode.CLIPBOARD_PASTE
|
||||
ONE_HANDED -> if (Settings.getInstance().current.mOneHandedModeEnabled) KeyCode.STOP_ONE_HANDED_MODE else KeyCode.START_ONE_HANDED_MODE
|
||||
ONE_HANDED -> KeyCode.TOGGLE_ONE_HANDED_MODE
|
||||
INCOGNITO -> KeyCode.TOGGLE_INCOGNITO_MODE
|
||||
AUTOCORRECT -> KeyCode.TOGGLE_AUTOCORRECT
|
||||
CLEAR_CLIPBOARD -> KeyCode.CLIPBOARD_CLEAR_HISTORY
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue