Skip to content

Commit dc9d068

Browse files
ENOA-ANSUL-EDENlzlv312WhiredPlanck
committed
fix: key state not updated after composing & has_menu state completed
Co-authored-by: iSilen <lzlv312@gmail.com> Co-authored-by: WhiredPlanck <whiredplanck@outlook.com>
1 parent b933757 commit dc9d068

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

app/src/main/java/com/osfans/trime/ime/keyboard/KeyboardWindow.kt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import android.widget.FrameLayout
1212
import androidx.core.content.ContextCompat
1313
import com.osfans.trime.R
1414
import com.osfans.trime.core.RimeMessage
15+
import com.osfans.trime.core.RimeProto
1516
import com.osfans.trime.core.SchemaItem
1617
import com.osfans.trime.daemon.RimeSession
1718
import com.osfans.trime.data.theme.KeyActionManager
@@ -261,6 +262,13 @@ class KeyboardWindow(
261262
}
262263
}
263264

265+
override fun onCompositionUpdate(data: RimeProto.Context.Composition) {
266+
val status = rime.run { statusCached }
267+
if (!status.isAsciiMode && data.length == 0 && data.preedit.isNullOrEmpty()) {
268+
currentKeyboardView?.invalidateAllKeys()
269+
}
270+
}
271+
264272
override fun onSelectionUpdate(
265273
start: Int,
266274
end: Int,

0 commit comments

Comments
 (0)