Preserve terminal feedback while coalescing repaints

This commit is contained in:
Storm Dragon committed 2026-11-04 12:22:11 -05:00
1 parent 8c26aad128
commit e222d336a5
13 files changed
+321 -39

No files matched your search

+7
View File
@@ -187,6 +187,13 @@ func TestTerminalCaretSeedsReviewFocusWithoutFocusEvent(t *testing.T) {
if got := worker.Focus(); got != terminal.ID() {
t.Fatalf("review focus after unfocused caret = %+v, want %+v", got, terminal.ID())
}
// Another widget in the same application can retain a stale focused
// bit. Its caret must not move review away from the known focus.
other.Focused = true
handler.handleCaret(atspi.NewEvent(atspi.CaretEvent, other), input.Activity{}, input.TypingIntent)
if got := worker.Focus(); got != state.focusedID {
t.Fatalf("stale focused bit split review and input ownership: %+v != %+v", got, state.focusedID)
}
}
func TestProcessEventsSpeaksCaretCharacters(t *testing.T) {