51 lines
1.6 KiB
Kotlin
51 lines
1.6 KiB
Kotlin
package net.mezimmah.wkt9.inputmode
|
|
|
|
import android.util.Log
|
|
import net.mezimmah.wkt9.keypad.Command
|
|
import net.mezimmah.wkt9.keypad.Key
|
|
import net.mezimmah.wkt9.keypad.KeyEventResult
|
|
|
|
class IdleInputMode : BaseInputMode() {
|
|
private val tag = "WKT9"
|
|
|
|
init {
|
|
mode = "idle"
|
|
status = Status.NA
|
|
|
|
Log.d(tag, "Started $mode input mode.")
|
|
}
|
|
|
|
override fun onKeyDown(key: Key, composing: Boolean): KeyEventResult {
|
|
return when(keyCommandResolver.getCommand(key)) {
|
|
Command.FN -> KeyEventResult(true)
|
|
else -> KeyEventResult(false)
|
|
}
|
|
}
|
|
|
|
override fun onKeyLongDown(key: Key, composing: Boolean): KeyEventResult {
|
|
return when(keyCommandResolver.getCommand(key, true)) {
|
|
else -> KeyEventResult(false)
|
|
}
|
|
}
|
|
|
|
override fun onKeyDownRepeatedly(key: Key, repeat: Int, composing: Boolean): KeyEventResult {
|
|
return when(keyCommandResolver.getCommand(key, repeat = repeat)) {
|
|
Command.HOME -> goHome(repeat, composing)
|
|
else -> KeyEventResult(false)
|
|
}
|
|
}
|
|
|
|
override fun afterKeyDown(key: Key, composing: Boolean): KeyEventResult {
|
|
return when(keyCommandResolver.getCommand(key, after = true)) {
|
|
Command.BACK -> goBack(composing)
|
|
Command.FN -> functionMode()
|
|
else -> KeyEventResult(false)
|
|
}
|
|
}
|
|
|
|
override fun afterKeyLongDown(key: Key, keyDownMS: Long, composing: Boolean): KeyEventResult {
|
|
return when(keyCommandResolver.getCommand(key, after = true, longPress = true)) {
|
|
else -> KeyEventResult(false)
|
|
}
|
|
}
|
|
} |