diff --git a/7gui/counter/main.go b/7gui/counter/main.go index 9e4563b..b09e872 100644 --- a/7gui/counter/main.go +++ b/7gui/counter/main.go @@ -82,13 +82,8 @@ func (ui *UI) Run(w *app.Window) error { event.Op(gtx.Ops, w) // check for presses of the escape key and close the window if we find them. - for { - event, ok := gtx.Event(key.Filter{ - Name: key.NameEscape, - }) - if !ok { - break - } + + for event := range gtx.Events(key.Filter{Name: key.NameEscape}) { switch event := event.(type) { case key.Event: if event.Name == key.NameEscape { @@ -96,6 +91,7 @@ func (ui *UI) Run(w *app.Window) error { } } } + // render and handle UI. ui.Layout(gtx) area.Pop() diff --git a/7gui/temperature/main.go b/7gui/temperature/main.go index fec32ff..f77e932 100644 --- a/7gui/temperature/main.go +++ b/7gui/temperature/main.go @@ -85,11 +85,8 @@ func (ui *UI) Run(w *app.Window) error { event.Op(gtx.Ops, w) // check for presses of the escape key and close the window if we find them. - for { - event, ok := gtx.Event(key.Filter{Name: key.NameEscape}) - if !ok { - break - } + + for event := range gtx.Events(key.Filter{Name: key.NameEscape}) { switch event := event.(type) { case key.Event: if event.Name == key.NameEscape { @@ -97,6 +94,7 @@ func (ui *UI) Run(w *app.Window) error { } } } + // render and handle UI. ui.Layout(gtx) area.Pop() diff --git a/7gui/timer/main.go b/7gui/timer/main.go index 9969220..ddbf9a3 100644 --- a/7gui/timer/main.go +++ b/7gui/timer/main.go @@ -98,11 +98,8 @@ func (ui *UI) Run(w *app.Window) error { event.Op(gtx.Ops, w) // check for presses of the escape key and close the window if we find them. - for { - event, ok := gtx.Event(key.Filter{Name: key.NameEscape}) - if !ok { - break - } + + for event := range gtx.Events(key.Filter{Name: key.NameEscape}) { switch event := event.(type) { case key.Event: if event.Name == key.NameEscape { @@ -110,6 +107,7 @@ func (ui *UI) Run(w *app.Window) error { } } } + // render and handle UI. ui.Layout(gtx) area.Pop() diff --git a/cursor_position/cursor_position.go b/cursor_position/cursor_position.go index 1031d69..edfaec5 100644 --- a/cursor_position/cursor_position.go +++ b/cursor_position/cursor_position.go @@ -49,14 +49,11 @@ func loop(w *app.Window) error { area := clip.Rect(r).Push(&ops) event.Op(&ops, &mousePos) area.Pop() - for { - ev, ok := gtx.Event(pointer.Filter{ - Target: &mousePos, - Kinds: pointer.Move | pointer.Enter | pointer.Leave, - }) - if !ok { - break - } + + for ev := range gtx.Events(pointer.Filter{ + Target: &mousePos, + Kinds: pointer.Move | pointer.Enter | pointer.Leave, + }) { switch ev := ev.(type) { case pointer.Event: switch ev.Kind { diff --git a/galaxy/main.go b/galaxy/main.go index 0e1b50e..5e59471 100644 --- a/galaxy/main.go +++ b/galaxy/main.go @@ -281,14 +281,10 @@ func layoutControls(gtx C) D { } func layoutSelectionLayer(gtx C) D { - for { - event, ok := gtx.Event(pointer.Filter{ - Target: &selected, - Kinds: pointer.Press | pointer.Release | pointer.Drag, - }) - if !ok { - break - } + for event := range gtx.Events(pointer.Filter{ + Target: &selected, + Kinds: pointer.Press | pointer.Release | pointer.Drag, + }) { switch event := event.(type) { case pointer.Event: var intPt image.Point diff --git a/gophers/main.go b/gophers/main.go index 5465e97..770b1b8 100644 --- a/gophers/main.go +++ b/gophers/main.go @@ -129,22 +129,18 @@ func (a *App) run() error { event.Op(gtx.Ops, a.w) // check for presses of global keyboard shortcuts and process them. - for { - event, ok := gtx.Event( - key.Filter{ - Required: key.ModShortcut, - Name: "P", - }, - key.Filter{ - Name: key.NameBack, - }, - key.Filter{ - Name: key.NameEscape, - }, - ) - if !ok { - break - } + for event := range gtx.Events( + key.Filter{ + Required: key.ModShortcut, + Name: "P", + }, + key.Filter{ + Name: key.NameBack, + }, + key.Filter{ + Name: key.NameEscape, + }, + ) { switch event := event.(type) { case key.Event: switch event.Name { diff --git a/gophers/ui.go b/gophers/ui.go index 92fe461..a396c17 100644 --- a/gophers/ui.go +++ b/gophers/ui.go @@ -130,11 +130,7 @@ func (u *UI) layoutTimings(gtx layout.Context) { func (u *UI) Layout(gtx layout.Context) { for i := range u.userClicks { click := &u.userClicks[i] - for { - e, ok := click.Update(gtx.Source) - if !ok { - break - } + for e := range click.Update(gtx.Source) { if e.Kind == gesture.KindClick { u.selectedUser = u.newUserPage(u.users[i]) } diff --git a/kitchen/kitchen.go b/kitchen/kitchen.go index 64734d7..7ebef95 100644 --- a/kitchen/kitchen.go +++ b/kitchen/kitchen.go @@ -248,11 +248,7 @@ func (b iconAndTextButton) Layout(gtx layout.Context) layout.Dimensions { } func kitchen(gtx layout.Context, th *material.Theme) layout.Dimensions { - for { - e, ok := lineEditor.Update(gtx) - if !ok { - break - } + for e := range lineEditor.Update(gtx) { if e, ok := e.(widget.SubmitEvent); ok { topLabel = e.Text lineEditor.SetText("") diff --git a/life/main.go b/life/main.go index b7b261b..9352fa5 100644 --- a/life/main.go +++ b/life/main.go @@ -105,13 +105,9 @@ func (ui *UI) Run(w *app.Window) error { event.Op(gtx.Ops, w) // check for presses of the escape key and close the window if we find them. - for { - event, ok := gtx.Event(key.Filter{ - Name: key.NameEscape, - }) - if !ok { - break - } + for event := range gtx.Events(key.Filter{ + Name: key.NameEscape, + }) { switch event := event.(type) { case key.Event: if event.Name == key.NameEscape { diff --git a/life/style.go b/life/style.go index e8ac2b1..30479c5 100644 --- a/life/style.go +++ b/life/style.go @@ -29,14 +29,10 @@ func (board BoardStyle) Layout(gtx layout.Context) layout.Dimensions { gtx.Constraints = layout.Exact(size) // Handle any input from a pointer. - for { - ev, ok := gtx.Event(pointer.Filter{ - Target: board.Board, - Kinds: pointer.Drag, - }) - if !ok { - break - } + for ev := range gtx.Events(pointer.Filter{ + Target: board.Board, + Kinds: pointer.Drag, + }) { if ev, ok := ev.(pointer.Event); ok { p := image.Pt(int(ev.Position.X), int(ev.Position.Y)) // Calculate the board coordinate given a cursor position. diff --git a/markdown/main.go b/markdown/main.go index 775d315..474b65d 100644 --- a/markdown/main.go +++ b/markdown/main.go @@ -133,11 +133,7 @@ func (ui *UI) Update(gtx C) { } } } - for { - event, ok := ui.Editor.Update(gtx) - if !ok { - break - } + for event := range ui.Editor.Update(gtx) { if _, ok := event.(widget.ChangeEvent); ok { var err error ui.Theme.cache, err = ui.Renderer.Render([]byte(ui.Editor.Text())) diff --git a/opengl/main.go b/opengl/main.go index d9c7daa..8252a4e 100644 --- a/opengl/main.go +++ b/opengl/main.go @@ -170,14 +170,10 @@ func loop(w *app.Window) (windowErr error) { // Catch pointer events not hitting UI. types := pointer.Move | pointer.Press | pointer.Release event.Op(gtx.Ops, w) - for { - e, ok := gtx.Event(pointer.Filter{ - Target: w, - Kinds: types, - }) - if !ok { - break - } + for e := range gtx.Events(pointer.Filter{ + Target: w, + Kinds: types, + }) { log.Println("Event:", e) } if btnScreenshot.Clicked(gtx) { diff --git a/outlay/fan/widget/state.go b/outlay/fan/widget/state.go index d2702cd..f90e617 100644 --- a/outlay/fan/widget/state.go +++ b/outlay/fan/widget/state.go @@ -21,14 +21,10 @@ type HoverState struct { func (c *HoverState) Hovering(gtx C) bool { start := c.hovering - for { - ev, ok := gtx.Event(pointer.Filter{ - Target: c, - Kinds: pointer.Enter | pointer.Leave, - }) - if !ok { - break - } + for ev := range gtx.Events(pointer.Filter{ + Target: c, + Kinds: pointer.Enter | pointer.Leave, + }) { switch ev := ev.(type) { case pointer.Event: switch ev.Kind {