Mobile: live camera viewfinder squished/stretched (Android)
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 75/100
Línea de trabajo
Empieza en mobile/lib/features/channels/compose_bar/camera_preview.dart, cerca de _CameraFeed y del SizedBox que envuelve CameraPreview. Comprueba cómo se relacionan las dimensiones de la vista previa con la orientación del sensor de la cámara y reproduce el problema en Android, si está disponible. Se considera terminado cuando el visor en directo mantiene la relación de aspecto nativa con distintas orientaciones del dispositivo y cámaras, mientras que las fotos capturadas no se ven afectadas.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
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").
- Lenguaje dominante
- Rust
- Estrellas
- 36.2k
- Forks
- 4.8k
- Merge medio
- 1 d 13 h
- PR fusionados (30 d)
- 260
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de block/buzz
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
Los mantenedores suelen responder en 1 día
-
Mobile: show Topic, then Purpose, when a channel has no DescriptionPosiblemente ocupada @chkdesign la tomó hace 8 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 83/100
Los mantenedores suelen responder en 1 día
Todos los issues de block/buzz
Issues similares
-
area:io kernel-paused needs-triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
bherbruck/solvecraft#7854 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
transit-audio/transit#159 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
HakanSeven12/OpenCADStudio#2257 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
priority: low ui
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
storytold/photocraft#9884 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
triage: new type: bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 67/100
Jagalite/superseedr#376 ·
Los mantenedores suelen responder en 1 día