use CombiningRules extra value for setting the combiner

allows flexibility which is needed for the combiner suggested in GH-214
This commit is contained in:
Helium314 2025-06-07 21:44:14 +02:00
parent 48f6c21b57
commit ccc287c4ea
9 changed files with 33 additions and 72 deletions

View file

@ -18,11 +18,13 @@ import helium314.keyboard.keyboard.internal.keyboard_parser.floris.KeyCode
import helium314.keyboard.latin.ShadowFacilitator2.Companion.lastAddedWord
import helium314.keyboard.latin.SuggestedWords.SuggestedWordInfo
import helium314.keyboard.latin.common.Constants
import helium314.keyboard.latin.common.LocaleUtils.constructLocale
import helium314.keyboard.latin.common.StringUtils
import helium314.keyboard.latin.inputlogic.InputLogic
import helium314.keyboard.latin.inputlogic.SpaceState
import helium314.keyboard.latin.settings.Settings
import helium314.keyboard.latin.utils.ScriptUtils
import helium314.keyboard.latin.utils.SubtypeSettings
import helium314.keyboard.latin.utils.getTimestamp
import helium314.keyboard.latin.utils.prefs
import org.junit.runner.RunWith
@ -141,7 +143,7 @@ class InputLogicTest {
@Test fun insertLetterIntoWordHangul() {
if (BuildConfig.BUILD_TYPE == "runTests") return
reset()
currentScript = ScriptUtils.SCRIPT_HANGUL
latinIME.switchToSubtype(SubtypeSettings.getResourceSubtypesForLocale("ko".constructLocale()).first())
chainInput("ㅛㅎㄹㅎㅕㅛ")
setCursorPosition(3)
input('ㄲ') // fails, as expected from the hangul issue when processing the event in onCodeInput
@ -155,7 +157,7 @@ class InputLogicTest {
// see issue 1447
@Test fun separatorAfterHangul() {
reset()
currentScript = ScriptUtils.SCRIPT_HANGUL
latinIME.switchToSubtype(SubtypeSettings.getResourceSubtypesForLocale("ko".constructLocale()).first())
chainInput("ㅛ.")
assertEquals("ㅛ.", text)
}
@ -163,7 +165,7 @@ class InputLogicTest {
// see issue 1551 (debug only)
@Test fun deleteHangul() {
reset()
currentScript = ScriptUtils.SCRIPT_HANGUL
latinIME.switchToSubtype(SubtypeSettings.getResourceSubtypesForLocale("ko".constructLocale()).first())
setText("ㅛㅛ ")
functionalKeyPress(KeyCode.DELETE)
functionalKeyPress(KeyCode.DELETE)