react / react/react-native

[Android] Texts and Modals are broken in Android Desktop/Computer Mode

Offen
#56,129 2 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Component: Modal Needs: Triage :mag: Platform: Android
Vorherrschende Sprache
C++
Sterne
127k
Forks
25.3k
Ø Merge
1 T. 23 Std.
Gemergte PRs (30 T.)
4

Beschreibung

Description

When connecting an Android device to an external display all Texts seem to collapse (the only exception is when a minHeight is forced) and Modals do not open in fullscreen.

Steps to reproduce
  1. Make a fresh 0.84.1 install
  2. Use the attached reproducer or create some Text and a Modal
  3. Verify on physical device everything works as expected
  4. Connect the device to an external display and choose Computer/Desktop mode
  5. Open the app on the display and you should see all broken Texts and the Modal that is shown incorrectly
React Native Version

0.84.1

Affected Platforms

Runtime - Android

Output of npx @react-native-community/cli info
System:
  OS: macOS 26.3
  CPU: (8) arm64 Apple M2
  Memory: 112.36 MB / 16.00 GB
  Shell:
    version: "5.9"
    path: /bin/zsh
Binaries:
  Node:
    version: 22.7.0
    path: /Users/XXX/.nvm/versions/node/v22.7.0/bin/node
  Yarn:
    version: 1.22.22
    path: /opt/homebrew/bin/yarn
  npm:
    version: 10.8.2
    path: /Users/XXX/.nvm/versions/node/v22.7.0/bin/npm
  Watchman:
    version: 2022.11.28.00
    path: /opt/homebrew/bin/watchman
Managers:
  CocoaPods:
    version: 1.15.2
    path: /Users/XXX/.rbenv/shims/pod
SDKs:
  iOS SDK:
    Platforms:
      - DriverKit 25.2
      - iOS 26.2
      - macOS 26.2
      - tvOS 26.2
      - visionOS 26.2
      - watchOS 26.2
  Android SDK: Not Found
IDEs:
  Android Studio: 2025.2 AI-252.25557.131.2521.14344949
  Xcode:
    version: 26.2/17C52
    path: /usr/bin/xcodebuild
Languages:
  Java:
    version: 17.0.16
    path: /usr/bin/javac
  Ruby:
    version: 2.7.5
    path: /Users/XXX/.rbenv/shims/ruby
npmPackages:
  "@react-native-community/cli":
    installed: 20.1.0
    wanted: 20.1.0
  react:
    installed: 19.2.3
    wanted: 19.2.3
  react-native:
    installed: 0.84.1
    wanted: 0.84.1
  react-native-macos: Not Found
npmGlobalPackages:
  "*react-native*": Not Found
Android:
  hermesEnabled: true
  newArchEnabled: true
iOS:
  hermesEnabled: Not found
  newArchEnabled: false
Stacktrace or Logs
-
MANDATORY Reproducer

https://snack.expo.dev/@andreamartinez/android-computer-mode-bugs

Screenshots and Videos

This is how the reproducer appears on device:

Image

The Modal should look like this:

Image

Attach the device to an external display and choose "Computer" or "Desktop" depending on your device:

Image

Open the app and Text and Modals are broken in React Native 0.84.1:

https://github.com/user-attachments/assets/495a0490-46d6-4534-9c6d-f305dc22440e

Making the same test using React Native 0.73.1 everything looks fine:

https://github.com/user-attachments/assets/b513c32a-af72-4314-9cf1-0d52f14e137d

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit dem obligatorischen Snack-Reproducer auf React Native 0.84.1 und verwende ein Android-Gerät, das im Modus Computer/Desktop mit einem externen Display verbunden ist; vergleiche es mit 0.73.1. Untersuche das Laufzeitverhalten von Android für Text und Modal in diesem Modus; abgeschlossen ist die Untersuchung, wenn Text normal gerendert wird und Modal auf dem externen Display im Vollbild geöffnet wird.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
android, react-native
Bereich
mobile-dev
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Ruhig
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
42/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.