From 0596ef15b8ef04ea142fefbbf05863168a7f4e54 Mon Sep 17 00:00:00 2001 From: "Joshua A. Horton" Date: Wed, 6 Jul 2022 12:11:30 +0700 Subject: [PATCH] fix(web): set(layer) should not trigger for hardware keystrokes --- common/core/web/keyboard-processor/src/text/kbdInterface.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/common/core/web/keyboard-processor/src/text/kbdInterface.ts b/common/core/web/keyboard-processor/src/text/kbdInterface.ts index bf8dad08d7..5bb27e1841 100644 --- a/common/core/web/keyboard-processor/src/text/kbdInterface.ts +++ b/common/core/web/keyboard-processor/src/text/kbdInterface.ts @@ -882,7 +882,8 @@ namespace com.keyman.text { */ setStore(systemId: number, strValue: string, outputTarget: OutputTarget): boolean { this.resetContextCache(); - if(systemId == KeyboardInterface.TSS_LAYER) { + // Unique case: we only allow set-store ops from keyboard rules triggered by touch OSKs. + if(systemId == KeyboardInterface.TSS_LAYER && this.activeDevice.touchable) { // Denote the changed store as part of the matched rule's behavior. this.ruleBehavior.setStore[systemId] = strValue; } else {