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) } } }