Revert "io/router: try all handlers if a key don't match the focus ancestor tree"

This reverts commit 28c206fc78. The commit
introduced counter-intuitive behaviour as demonstrated by #503. In the
meantime, topmost handlers now receive all unhandled key.Events[0], which
should cover the use-cases that motivated the original commit.

[0] https://gioui.org/commit/0dba85f52e5131c03d903c84355fb90cdb978811

Fixes: https://todo.sr.ht/~eliasnaur/gio/503
Signed-off-by: Elias Naur <mail@eliasnaur.com>
This commit is contained in:
Elias Naur
2023-05-26 17:03:49 -06:00
parent 4677b72a4c
commit e3ef98dda3
2 changed files with 2 additions and 8 deletions
+2 -2
View File
@@ -363,11 +363,11 @@ func TestKeyRouting(t *testing.T) {
r2.Queue(A, B)
// With focus, the events should traverse the branch of the hit tree
// containing the focused element, and then every handler.
// containing the focused element.
assertKeyEvent(t, r2.Events(&handlers[4]), false)
assertKeyEvent(t, r2.Events(&handlers[3]), true)
assertKeyEvent(t, r2.Events(&handlers[2]), false)
assertKeyEvent(t, r2.Events(&handlers[1]), false, B)
assertKeyEvent(t, r2.Events(&handlers[1]), false)
assertKeyEvent(t, r2.Events(&handlers[0]), false, A)
}