Repository navigation
Even out the collapsed controls drawer's spacing - #913
Merged
Merged
Conversation
The collapsed peek looked cramped and lopsided. The 120.dp peek height was a flat constant that happened to sit 6.dp past the bottom of the 72.dp Call CQ / Hunt row, while the row itself butted straight against the 42.dp handle strip: 0.dp of padding above the buttons, 6.dp below, and the buttons effectively jammed onto the tab bar. The status line above had no gap either, so the sheet's rounded top edge read as clipping it. - Derive OperateDrawerPeekHeight from its parts (handle + top gap + the shared OperatePrimaryRowHeight + bottom padding) instead of hard-coding it, so the peek can neither clip the primary row nor reveal the row below it when any of those change. Row spacing is now larger than the bottom padding, which is what keeps the next row hidden; both invariants are unit-tested. - 10.dp above the primary row, 14.dp below it (was 0 / 6), and a 10.dp gap between the docked status line and the sheet's top edge. - Shrink the handle strip 42 -> 36.dp and stop the "More controls" hint bobbing. A caption drifting up and down directly above fixed buttons reads as uneven spacing, not as an affordance; the up-chevron already says "pulls up". Measured on an emulator (1080x2400, xhdpi): clearance under the Call CQ row goes from 6.1.dp to 14.1.dp. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Lbd9brnZDMCzipgsu9n8Xg
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## dev #913 +/- ##
=========================================
Coverage 41.50% 41.51%
Complexity 252 252
=========================================
Files 280 280
Lines 33973 33980 +7
Branches 4033 4033
=========================================
+ Hits 14100 14106 +6
- Misses 19584 19585 +1
Partials 289 289
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
4 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
The collapsed operate-controls drawer (the peek showing Call CQ + Hunt) felt off — reported as "something about margins and whitespacing".
Measuring it, the geometry was genuinely lopsided:
OperateDrawerPeekHeightwas a flat120.dpthat happened to land 6 dp past the bottom of the 72 dp button row, so the buttons sat jammed onto the tab bar with all the peek's whitespace stacked above them in the 42 dp handle strip.What changed
OperatePrimaryRowHeight+ bottom padding. It can no longer clip the primary row, and because the inter-row gap is larger than the bottom padding, the next row still can't peek through. Both invariants are unit-tested, so a future change to the button height or the row spacing can't silently re-break it.Verification
testDebugUnitTest --tests …OperateControlsDrawerTest(13 tests, incl. 4 new geometry ones) — pass.Not yet checked on real hardware — no phone was attached to this machine.
🤖 Generated with Claude Code
https://claude.ai/code/session_01Lbd9brnZDMCzipgsu9n8Xg