1
0
Fork 0
tt9/src/io/github/sspanak/tt9/ime/modes/Mode123.java
Dimo Karaivanov 008590bdf8
Fixed unusable hotkeys and typing issues in very specific cases (#258)
* fixed '*', '#', "." and "," not working properly in 123 mode

* fixed typing "+" by holding 0-key not working in Dialer fields

* fixed Predictive mode not allowing the same key for typing and as a hotkey, when being pressed and held, respectively.

* removed EDITING_STRICT_NUMERIC, EDITING_DIALER and deprecated mEditing

* added ModeDialer
2023-05-13 08:51:55 +03:00

43 lines
906 B
Java

package io.github.sspanak.tt9.ime.modes;
import android.view.KeyEvent;
import androidx.annotation.NonNull;
import io.github.sspanak.tt9.ime.helpers.Key;
public class Mode123 extends InputMode {
public int getId() { return MODE_123; }
Mode123() {
allowedTextCases.add(CASE_LOWER);
}
@Override
public boolean onNumber(int number, boolean hold, int repeat) {
reset();
keyCode = (number == 0 && hold) ? KeyEvent.KEYCODE_PLUS : Key.numberToCode(number);
return true;
}
@Override
public boolean onOtherKey(int key) {
reset();
if (Key.isDecimalSeparator(key) || Key.isPoundOrStar(key)) {
keyCode = key;
return true;
}
return false;
}
@Override public boolean is123() { return true; }
@Override final public boolean isNumeric() { return true; }
@Override public int getSequenceLength() { return 0; }
@NonNull
@Override
public String toString() {
return "123";
}
}