diff --git a/ui/input/pointer.go b/ui/input/pointer.go index 70da98fd..15b05e30 100644 --- a/ui/input/pointer.go +++ b/ui/input/pointer.go @@ -129,7 +129,10 @@ func (q *pointerQueue) opHit(handlers *[]Key, pos f32.Point) { idx = n.next } if n.key != nil { - *handlers = append(*handlers, n.key) + if _, exists := q.handlers[n.key]; exists { + *handlers = append(*handlers, n.key) + } + } } }