feature request: Support iPhone Duo layouts and folding transitions

Abierto
#7,843 1 comentario 1 reacción 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
35/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
ios, react-native, typescript
Área
frontend, mobile

Línea de trabajo

Start by reading the React Native app’s existing iPhone and iPad layout handling and the related issue #7832, which addresses an outer-display header gap. Then check how the app responds to window size changes and preserves conversation state; the suggested device workflow gives the validation steps. Done means both displays, folding transitions, rotation, Split View, keyboard, threads, attachments, and modals work without losing context or regressing existing iPhone and iPad layouts.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

🎉 feature type: feature
Feature Description

Please validate and support Rocket.Chat on Apple’s iPhone Duo, including its outer display, larger unfolded display, and transitions between them.

  • Adapt the layout to the current window size on both displays, including rotation and Split View.
  • On the wider unfolded display, show the room list and conversation side by side where space permits.
  • Preserve the current room, message draft, and reading position when folding, unfolding, rotating, or resizing.
  • Keep headers, safe areas, the keyboard, and the message composer correctly positioned, with no clipped or unreachable controls.
Motivation and Use Case

I would like to use Rocket.Chat comfortably on both displays and benefit from the extra space when the device is open. A typical workflow is reading a conversation on the outer display, unfolding to work in a larger view, and folding again without losing context or an unfinished message.

This is a compatibility and layout feature request, not a report of a reproduced crash or a claim that the app is entirely unsupported.

Implementation Ideas

Use the available window size to determine the layout and update it when the window changes. Reuse existing tablet layout behavior where appropriate.

Suggested validation:

  1. Open a conversation on the outer display and start a draft.
  2. Unfold, rotate, and fold the device again.
  3. Check that the room, draft, and reading position remain intact and the layout updates correctly.
  4. Repeat with the keyboard open and in Split View; also check threads, attachments, and modal screens.
  5. Check existing iPhone and iPad layouts for regressions.
Is this feature available in the API or web version?

Not sure

Rocket.Chat Server Version

No response

Rocket.Chat App Version

No response

Device Name

Apple iPhone Duo

OS Version

No response

Additional Context

Related: #7832 fixes a white gap above opaque headers on iPhone Duo’s outer display. This request covers broader layout and transition support rather than duplicating that fix.

I searched existing issues for “iPhone Duo”, “Duo”, “foldable”, “fold”, and “split view” and did not find a matching support request.

Apple references:

If this is already covered by existing work, please link the tracking issue or supported app version.

Lenguaje dominante
TypeScript
Estrellas
2.4k
Forks
1.5k
Merge medio
1 d 15 h
PR fusionados (30 d)
29

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de RocketChat/Rocket.Chat.ReactNative

Todos los issues de RocketChat/Rocket.Chat.ReactNative

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.