From 4bbab3ff4c371e4f17628ee3f79e98e0751a9b17 Mon Sep 17 00:00:00 2001 From: PJ Date: Sat, 15 Aug 2026 16:23:16 +0530 Subject: [PATCH] fix(sidecar): treat a failed ime probe as no keyboard open --- .../src/main/kotlin/dev/sanderling/sidecar/DriverBackend.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sidecar/src/main/kotlin/dev/sanderling/sidecar/DriverBackend.kt b/sidecar/src/main/kotlin/dev/sanderling/sidecar/DriverBackend.kt index 2409f06..ca3c63f 100644 --- a/sidecar/src/main/kotlin/dev/sanderling/sidecar/DriverBackend.kt +++ b/sidecar/src/main/kotlin/dev/sanderling/sidecar/DriverBackend.kt @@ -901,7 +901,11 @@ class MaestroDriverBackend(private val serial: String?) : DriverBackend { } else { driver.inputText(text) } - dismissSoftKeyboard { dadb.shell(it).allOutput } + // A probe that fails reads as "no IME open", which is the safe way to be + // wrong: it skips the dismissal rather than sending a stray BACK. + dismissSoftKeyboard { + runCatching { dadb.shell(it).allOutput }.getOrDefault("") + } } // typeShellSafe types shell-safe ASCII through adb `input text` in chunks,