Adjust delete to handle repeat count

This commit is contained in:
Nehemiah of Zebulun 2023-12-03 20:10:11 -05:00
parent 92a4ac541c
commit 3a1f1a595c

View File

@ -88,7 +88,7 @@ class WordInputHandler(
when (command) { when (command) {
Command.CAP_MODE -> toggleCapMode(key) Command.CAP_MODE -> toggleCapMode(key)
Command.CHARACTER -> buildCodeword(key) Command.CHARACTER -> buildCodeword(key)
Command.DELETE -> delete() Command.DELETE -> delete(event.repeatCount)
Command.ENTER -> enter(key) Command.ENTER -> enter(key)
Command.INPUT_MODE -> inputMode(key) Command.INPUT_MODE -> inputMode(key)
Command.MOVE_CURSOR -> moveCursor(key) Command.MOVE_CURSOR -> moveCursor(key)
@ -114,16 +114,18 @@ class WordInputHandler(
handleCodewordChange(codeword) handleCodewordChange(codeword)
} }
private fun delete() { private fun delete(repeatCount: Int) {
lastSelectedWord = null lastSelectedWord = null
if (codeword.length > 1) { if (codeword.length > 1) {
codeword.deleteAt(codeword.length - 1) codeword.deleteAt(codeword.length - 1)
handleCodewordChange(codeword) handleCodewordChange(codeword)
} else if (codeword.isNotEmpty() && repeatCount > 1) {
codeword.clear()
wkt9.onCompose("")
} else if (codeword.isNotEmpty()) { } else if (codeword.isNotEmpty()) {
codeword.clear() codeword.clear()
wkt9.onCommit() wkt9.onCompose("")
wkt9.onDeleteText(1)
} else { } else {
wkt9.onDeleteText(1) wkt9.onDeleteText(1)
} }