Package router implements Router, a event.Queue implementation that that disambiguates and routes events to handlers declared in operation lists.

Router is used by app.Window and is otherwise only useful for using Gio with external window implementations.



This section is empty.


This section is empty.


This section is empty.


type Router

type Router struct {
	// contains filtered or unexported fields

Router is a Queue implementation that routes events to handlers declared in operation lists.

func (*Router) Cursor

func (q *Router) Cursor() pointer.CursorName

Cursor returns the last cursor set.

func (*Router) Events

func (q *Router) Events(k event.Tag) []event.Event

Events returns the available events for the handler key.

func (*Router) Frame

func (q *Router) Frame(ops *op.Ops)

Frame replaces the declared handlers from the supplied operation list. The text input state, wakeup time and whether there are active profile handlers is also saved.

func (*Router) Profiling

func (q *Router) Profiling() bool

Profiling reports whether there was profile handlers in the most recent Frame call.

func (*Router) Queue

func (q *Router) Queue(events ...event.Event) bool

Queue an event and report whether at least one handler had an event queued.

func (*Router) ReadClipboard

func (q *Router) ReadClipboard() bool

ReadClipboard reports if any new handler is waiting to read the clipboard.

func (*Router) TextInputHint

func (q *Router) TextInputHint() (key.InputHint, bool)

TextInputHint returns the input mode from the most recent key.InputOp.

func (*Router) TextInputState

func (q *Router) TextInputState() TextInputState

TextInputState returns the input state from the most recent call to Frame.

func (*Router) WakeupTime

func (q *Router) WakeupTime() (time.Time, bool)

WakeupTime returns the most recent time for doing another frame, as determined from the last call to Frame.

func (*Router) WriteClipboard

func (q *Router) WriteClipboard() (string, bool)

WriteClipboard returns the most recent text to be copied to the clipboard, if any.

type TextInputState

type TextInputState uint8
const (
	TextInputKeep TextInputState = iota