fix(mobile): polish the redesign on phone-width screens - #76
Conversation
- Cameras: compact header (actions beside the title, full-width search, stretched group filter); fixes the clipped search box - Sheets: pad the bottom by the safe area plus a small gap so actions clear the gesture bar - Recordings: phone calendar is a full-width card with a week strip that expands to the month - Player: clock row, centred transport and one row of equal pills (sound, speed menu, clip)
PR Summary by QodoPolish camera, recordings, player, and sheet layouts on phones
AI Description
Diagram
High-Level Assessment
Files changed (9)
|
Code Review by Qodo
1. The expanded calendar can hide recordings
|
| <ItemsControl ItemsSource="{Binding Days}" ItemTemplate="{StaticResource DayCell}" | ||
| IsVisible="{Binding IsExpanded}"> |
There was a problem hiding this comment.
1. The expanded calendar can hide recordings 🐞 Bug ≡ Correctness
The compact calendar renders all 42 day cells when IsExpanded is true, but its host docks it above a recordings grid with no page-level scrolling. On short phone screens, the month grid consumes the space needed by the list and pager; only the list itself has a scroll viewer, so scrolling cannot recover the displaced content.
Agent Prompt
## Issue description
Expanding the compact month calendar can consume the recordings list's available height on short phones, with no page-level scrolling to reach displaced content.
## Fix Focus Areas
- src/OpenIPC.Viewer.App/Views/Pages/ArchiveCalendarView.axaml[228-243]
- src/OpenIPC.Viewer.App/Views/Pages/RecordingsPage.axaml[92-100]
## Recommended Fix
Constrain the expanded compact calendar to a height that preserves usable space for the recordings grid, and make the expanded days scroll within that constraint. Verify that the list and pager remain reachable on short phone-height viewports.
ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools
| IsExpanded = false; | ||
| UpdateWeek(); |
There was a problem hiding this comment.
2. Clearing a day leaves the week strip stale 🐞 Bug ≡ Correctness
SelectDay clears SelectedDate in its same-day toggle-off branch but returns before setting IsExpanded = false or calling UpdateWeek(). Tapping the selected day clears the recording filter while the collapsed strip retains the old week, and doing so while expanded leaves the month open.
Agent Prompt
## Issue description
Toggling off an already-selected day clears the recording filter but bypasses the compact calendar state updates, leaving the old week visible or the month expanded.
## Fix Focus Areas
- src/OpenIPC.Viewer.App/ViewModels/ArchiveCalendarViewModel.cs[267-285]
## Recommended Fix
In the same-day toggle-off branch, after clearing `SelectedDate` and cell selection and before raising `DaySelected(null)` and returning, set `IsExpanded = false` and call `UpdateWeek()`. This aligns date clearing with the existing `ShowAll()` behavior and rebuilds the collapsed week strip.
ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools
Summary
Related
Type
Checklist
TreatWarningsAsErrors=true).dotnet test); new Core logic has unit tests.AppreferencesCoreonly (Infrastructure / Video / Devices wired via DI in a head).Platforms tested
Screenshots / notes