io/input: implement lazy event routing

This change defers event routing from the time the event is queued until
the time Events is called. This allows a future change to execute
commands immediately and to react to event order changes during a frame.

Signed-off-by: Elias Naur <mail@eliasnaur.com>
This commit is contained in:
Elias Naur
2023-11-15 19:14:14 -06:00
parent 651094d692
commit 9dfada745c
8 changed files with 390 additions and 230 deletions
+1 -1
View File
@@ -319,7 +319,7 @@ func (w *Window) processFrame(d driver) {
if mime, txt, ok := q.WriteClipboard(); ok {
d.WriteClipboard(mime, txt)
}
if q.ReadClipboard() {
if q.ClipboardRequested() {
d.ReadClipboard()
}
oldState := w.imeState