fix(projects): mobile project view rendered off-screen#288
Conversation
ProjectsApp's refresh() auto-selected the first project on every load. On mobile that flipped MobileSplitView straight into the detail view, and as the workspace mounted the browser pulled focus into one of its tab buttons. With the slider track at translateX(-50%), focusing an off-screen child causes the outer overflow:hidden container to scroll-into-view, doubling the offset and pushing the active pane right off the screen — the user lands on the dock + bare wallpaper. Two fixes, both small: 1. Skip the auto-select on mobile. Mobile shows the list as its own screen, so picking a project should be the user's first action. Desktop's split layout still benefits from the auto-select default. 2. MobileSplitView pins scrollLeft = 0 on its outer container. Any future consumer that auto-routes into the detail view (or any focus event that drags the page sideways) is then safe. Verified by emulating the iPhone PWA in Playwright at 390×844 with launched-gate forced. Pre-fix: detail pane at viewport x=-386, only 3.5px sliver visible. Post-fix: list pane visible at x=0, w=390; tapping a project slides smoothly to detail at x=0, w=390.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (22)
💤 Files with no reviewable changes (1)
📝 WalkthroughWalkthroughImplements conditional selection state handling in ProjectsApp based on mobile/desktop context, and adds scroll position reset behavior to MobileSplitView with a container reference and scroll listener. Multiple build artifacts updated with new hashed filenames. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 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)
Review rate limit: 9/10 reviews remaining, refill in 6 minutes. Comment |
Code Review SummaryStatus: No Issues Found | Recommendation: Merge Files Reviewed (2 files)
Reviewed by grok-code-fast-1:optimized:free · 128,834 tokens |
Summary
Repro (pre-fix)
Verification
Reproduced via Playwright at 390×844 with the launched gate manually forced. Pre-fix: SV scrollLeft=386.5 + track translate(-390) = pane at -776.5. Post-fix: list visible at x=0, w=390; tapping a project slides to detail at x=0, w=390.
Test plan
bin/update.sh)Summary by CodeRabbit
Release Notes