diff --git a/io/router/router.go b/io/router/router.go index 38b6c567..ef4b7978 100644 --- a/io/router/router.go +++ b/io/router/router.go @@ -79,14 +79,16 @@ func (q *Router) Frame(ops *op.Ops) { } } -func (q *Router) Add(e event.Event) bool { - switch e := e.(type) { - case profile.Event: - q.profile = e - case pointer.Event: - q.pqueue.Push(e, &q.handlers) - case key.EditEvent, key.Event, key.FocusEvent: - q.kqueue.Push(e, &q.handlers) +func (q *Router) Add(events ...event.Event) bool { + for _, e := range events { + switch e := e.(type) { + case profile.Event: + q.profile = e + case pointer.Event: + q.pqueue.Push(e, &q.handlers) + case key.EditEvent, key.Event, key.FocusEvent: + q.kqueue.Push(e, &q.handlers) + } } return q.handlers.HadEvents() }