Repository navigation
Fix empty tab bar click handling - #116
Conversation
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
📝 WalkthroughWalkthroughThis PR refines tab-bar interaction handling by introducing a ChangesTrailing Empty Chrome Hit Region and Event Routing
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Greptile SummaryThis PR fixes accidental tab creation caused by single clicks in the empty tab-bar chrome. It introduces a
Confidence Score: 3/5The empty-chrome click rework is mostly correct, but standard-mode single clicks on unfocused panes are now silently swallowed — the outer overlay captures the event and returns without calling focusPaneFromTabBarChrome. The outer overlay correctly narrows the hit region to the trailing empty chrome and the double-click new-tab path works as intended. The gap is in the standard-mode single-click branch: onSingleClick is passed to the new overlay but is never reachable in the !isMinimalMode code path, so a single tap on an unfocused pane's empty chrome does nothing — no focus transfer, no tab, no super call. Sources/Bonsplit/Internal/Views/TabBarView.swift — specifically the !isMinimalMode branch of mouseDown in DragNSView and the shouldCaptureHit helper's reliance on NSApp.currentEvent. Important Files Changed
Reviews (1): Last reviewed commit: "fix: stabilize empty tab bar click handl..." | Re-trigger Greptile |
Summary
Testing
swift test --filter BonsplitTests/testTabBarDragZone, 7 tests passedswift test, 111 tests passedChecklist