Mobile: live camera viewfinder squished/stretched (Android)
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 75/100
Direzione di ricerca
Inizia da mobile/lib/features/channels/compose_bar/camera_preview.dart, in prossimità di _CameraFeed e del SizedBox che racchiude CameraPreview. Verifica come le dimensioni dell’anteprima siano correlate all’orientamento del sensore della fotocamera e riproduci il problema su Android, se disponibile. Il lavoro è completato quando il mirino in tempo reale mantiene le proporzioni native con diversi orientamenti del dispositivo e diverse fotocamere, mentre le foto acquisite restano inalterate.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Describe the bug
On Android (reported on GrapheneOS), the live camera viewfinder in the mobile composer's in-app camera is visibly squished/stretched while framing a shot. The captured photo itself is unaffected — only the live preview.
Steps to reproduce
- On Buzz mobile (Android), open a channel.
- Tap the composer's attachment button → Camera.
- Watch the live viewfinder before tapping the shutter.
Expected behavior
The viewfinder should render at the camera's native aspect ratio without stretching or squishing.
Version and platform
- Buzz version: 0.5.14 (mobile)
- OS: Android, GrapheneOS
Logs / additional context
mobile/lib/features/channels/compose_bar/camera_preview.dart (_CameraFeed, ~lines 170-190):
final previewSize = controller.value.previewSize;
...
SizedBox(width: previewSize.height, height: previewSize.width, child: camera.CameraPreview(controller))
This hardcodes a width/height swap on CameraController.value.previewSize instead of checking CameraDescription.sensorOrientation. It assumes the sensor is always exactly 90° off from the UI orientation, which doesn't hold universally across devices/cameras.
GrapheneOS routes camera access through its own permission-sandboxed camera layer, which may report previewSize/camera characteristics differently than stock Android — worth checking whether that's what makes this visible here specifically (vs. stock Android where the assumption may happen to hold more often).
No existing issue found for this (searched "camera preview," "viewfinder," "distorted," "squished/stretched," "aspect ratio," "rotated," "sideways").
- Lingua principale
- Rust
- Stelle
- 36.2k
- Fork
- 4.8k
- Merge medio
- 1g 11h
- PR unite (30g)
- 249
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di block/buzz
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
I maintainer di solito rispondono entro 1 giorno
-
Mobile: show Topic, then Purpose, when a channel has no DescriptionForse già presa @chkdesign l’ha presa 6 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 83/100
I maintainer di solito rispondono entro 1 giorno
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
manuscript-lang/manuscript#1364 ·
I maintainer di solito rispondono entro 1 giorno
-
`printf "%o"` prints decimalAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
fable-compiler/Fable#5157 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 73/100
I maintainer di solito rispondono entro 1 giorno
-
C-bug needs-triage O-UEFI T-libs
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
移动端宽屏适配Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 64/100
I maintainer di solito rispondono entro 1 giorno