• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

umputun / revdiff / 24824793047
90%

Build:
DEFAULT BRANCH: master
Ran 23 Apr 2026 08:21AM UTC
Jobs 1
Files 59
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

23 Apr 2026 08:20AM UTC coverage: 89.581% (+0.03%) from 89.548%
24824793047

push

github

web-flow
Mouse wheel and click support in overlay popups (#144)

* feat(ui): route mouse wheel through overlay popups

PR #142 left all mouse events swallowed while any overlay was open.
Most visibly, the commit-info popup (i) supports j/k/g/G keyboard
scroll but ignored the wheel.

Wire tea.MouseMsg through the overlay manager when an overlay is
active:
- commitinfo: wheel adjusts offset by 3; shift+wheel by half viewport
- annotlist:  wheel moves cursor by 1; shift+wheel by half page
- themeselect: wheel moves cursor + live preview; shift+wheel by half page
- help: no scrollable state, wheel is a no-op

Clicks inside overlays remain swallowed (follow-up). --no-mouse still
turns everything off, same flag.

* feat(ui): left-click selection in overlay popups

Extend the overlay mouse routing so left-click inside a popup selects
an item, not just wheel-scrolls it.

- annotlist: click on an item row jumps to that annotation (same as
  Enter) and closes the overlay
- themeselect: click on an entry confirms that theme (same as Enter);
  clicks on filter, blank separator, or border/padding are no-ops
- commitinfo / help: no selectable items, clicks are no-ops

Manager records the popup rectangle during Compose and translates
screen coords to popup-local before dispatch, so each overlay reasons
about its own layout. Clicks outside the popup are swallowed rather
than dismissing, to avoid accidental close.

* fix(ui): address code review findings for overlay mouse support

Bug fixes:
- annotlist/themeselect click handlers now check X coordinate against
  the popup width; clicks on the left/right border or horizontal
  padding are no-ops (previously selected items). Fixes accidental
  theme-persist on mis-clicked chrome.
- themeselect click now updates lastPreviewedName so a subsequent
  keyboard-wheel back to the same entry does not re-emit a preview.

Test improvements:
- Strengthen TestModel_HandleMouse_WheelScrollsCommitInfoOverlay to
  park diffCursor at a non-zero... (continued)

169 of 185 new or added lines in 6 files covered. (91.35%)

8185 of 9137 relevant lines covered (89.58%)

458.5 hits per line

Uncovered Changes

Lines Coverage ∆ File
6
95.8
-2.04% app/ui/overlay/themeselect.go
4
97.08
-2.14% app/ui/overlay/annotlist.go
2
93.08
-0.8% app/ui/mouse.go
2
95.02
-0.58% app/ui/overlay/commitinfo.go
2
94.3
-0.1% app/ui/overlay/overlay.go
Jobs
ID Job ID Ran Files Coverage
1 24824793047.1 23 Apr 2026 08:21AM UTC 59
89.58
GitHub Action Run
Source Files on build 24824793047
  • Tree
  • List 59
  • Changed 8
  • Source Changed 0
  • Coverage Changed 8
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 61523693 on github
  • Prev Build on master (#24821449577)
  • Next Build on master (#24824924445)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc