Repository navigation
Conversation
Tapping the ISO chip opened the whole controls sheet, then waited 250 ms for it to map and scrolled to the right row. You asked for ISO and the app gave you every setting it has, over the picture you were taking. A chip now opens just what that chip governs, in a popover above it. The full sheet is unchanged and still a tap away on the header, for the times you do want everything. The strip owns no state. Its sliders share the very same gtk::Adjustment as the sheet's row, so moving either moves both and the row's existing handler still fires; mode toggles and switches drive the sheet's widgets directly. There is no second copy of a value to drift, and no new wiring to keep in step -- which is also why a control the camera does not have simply does not appear. A chip whose controls produce nothing compact still falls back to the sheet, so no chip becomes a dead tap. Assisted-by: Claude
Zoom, a zero-byte 4K recording, and hot pixels. Each entry says what was observed and what the evidence points at; the one that is not yet diagnosed says so rather than guessing. The zoom entry is the useful one: the viewfinder, a photo and a recording each implement zoom differently, which is why the preview is pixelated, the photo comes out framed wider than the preview showed, and video zoom does nothing at all. One ScalerCrop makes all three agree. Assisted-by: Claude
Jertlok
marked this pull request as draft
September 16, 2026 13:15
Assisted-by: Codex
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.
Two things: the quick-controls change, and a record of three bugs found in real use.
Quick controls
Tapping the ISO chip opened the whole controls sheet, then waited 250 ms for it to map and scrolled to the right row. You asked for ISO and the app gave you every setting it has, over the picture you were taking.
A chip now opens just what that chip governs, in a popover above it. The full sheet is unchanged and still a tap away on the header, for the times you do want everything.
The strip owns no state. Its sliders share the very same
gtk::Adjustmentas the sheet's row, so moving either moves both and the row's existing handler still fires; mode toggles and switches drive the sheet's widgets directly. There is no second copy of a value to drift, and no new wiring to keep in step — which is also why a control the camera does not have simply does not appear. A chip whose controls produce nothing compact still falls back to the sheet, so no chip becomes a dead tap.Checks pass with 0 failures across Italian, reduced-motion, wide and landscape.
docs/known-issues.md
Three problems found using the app, each saying what was observed and what the evidence points at. The one that is not yet diagnosed says so rather than guessing.
The zoom entry is the useful one: the viewfinder, a photo and a recording each implement zoom differently. The viewfinder magnifies the already-downscaled preview (hence pixelated), a photo crops the full-resolution frame at save time (hence sharp, and framed differently from what the preview showed), and a recording ignores zoom entirely. One
ScalerCropmakes all three agree and gives video zoom for free.Also recorded: a 4K recording that saved a zero-byte file behind a spinner that never resolved, and hot pixels — measured as 5713 bright pixels at identical coordinates across two dark frames, where chance predicts 4.7.