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

umputun / agterm / 30568763100
98%

Build:
DEFAULT BRANCH: master
Ran 30 Jul 2026 06:06PM UTC
Jobs 1
Files 83
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

30 Jul 2026 06:03PM UTC coverage: 97.424%. Remained the same
30568763100

push

github

web-flow
fix: hold the resize cursor over the sidebar and split dividers (#326)

* fix: hold the resize cursor over the sidebar and split dividers

`NSCursor` is process-global and two writers set it for the same event over a divider. The pane's
tracking area ignores sibling overlap, which #225 relies on, so a pane keeps getting `mouseMoved`
under the chrome drawn over it and re-asserts its own shape there. The sidebar handle set ↔ once on
hover entry and AppKit owns the split divider, and one set on entry cannot hold against a per-move
writer. Regression from #207, which replaced cursor rectangles with a per-move `NSCursor.set`.

`deckVisible` answers "am I the on-screen pane?", not "do I own this pixel?", so all four cursor
writers now also gate on `ownsPointer`, a hit test against the window content view. No guessed
widths, and it declines for chrome only, treating a hit on any surface as ownership, so it cannot
silence the visible terminal. The handle re-asserts ↔ per move and per drag tick, then again on the
next runloop turn re-reading live hover state, since a replacement arrives after the synchronous
set returns.

Fix #324

* fix: clear the divider drag state when the sidebar hides

hiding the sidebar mid-drag removes the divider and cancels its gesture without `onEnded`, so
`dividerHovered` and `dividerDragging` stayed latched on the parent view. A stuck `dividerDragging`
suppressed the arrow on every later hover exit and let the deferred re-assert clear its own liveness
guard after the pointer had left, stranding ↔ over the sidebar where nothing repaints it.

covers `ownsPointer` with hosted tests for the chrome, self, descendant, sibling-surface, no-hit and
detached cases. Both surfaces stay at their zero init frame so `viewDidMoveToWindow` parks in
`pendingSurfaceCreation` rather than spawning a surface and a shell.

6543 of 6716 relevant lines covered (97.42%)

4476802.01 hits per line

Jobs
ID Job ID Ran Files Coverage
1 30568763100.1 30 Jul 2026 06:06PM UTC 83
97.42
GitHub Action Run
Source Files on build 30568763100
  • Tree
  • List 83
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #30568763100
  • 9bd82a08 on github
  • Prev Build on master (#30528733547)
  • Next Build on master (#30583286959)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc