Skip to content

Fix/mobile fullscreen ux - #65

Merged
ProdigyV21 merged 3 commits into
ProdigyV21:mainfrom
Himanth-reddy:fix/mobile-fullscreen-ux
Mar 28, 2026
Merged

Fix/mobile fullscreen ux#65
ProdigyV21 merged 3 commits into
ProdigyV21:mainfrom
Himanth-reddy:fix/mobile-fullscreen-ux

Conversation

@Himanth-reddy

Copy link
Copy Markdown
Collaborator

This PR resolves layout and windowing issues on mobile devices where the app incorrectly rendered behind system bars (status bar, navigation bar) or remained stuck in an unwanted edge-to-edge fullscreen state.

It configures the main app window to conditionally support two distinct screen modes: a standard, inset-aware interface tailored for mobile, and a fully immersive, edge-to-edge experience designed for Android TV.

Key Features

  • Device-Aware Windowing: Implemented runtime logic to dynamically detect whether the app is running on a Mobile/Tablet device or an Android TV.
  • Standard Mobile Interface: Disabled forced fullscreen on mobile devices. The app now properly respects device window insets, safely constraining content natively between the status and navigation bars without overlapping them.
  • Immersive TV Experience: Maintained the existing edge-to-edge fullscreen interface for Android TV ensuring the cinematic lean-back experience is uncompromised.
  • System Bar Polish: Streamlined system bar (status/nav) transparency defaults so they align cleanly with the device's system theme.

Technical Changes

  • Updated MainActivity window configuration to conditionally disable WindowCompat.setDecorFitsSystemWindows(window, false) when running on mobile.
  • Enforced root-level Modifier.systemBarsPadding() and WindowInsets rules for non-TV form factors throughout the main Scaffold layouts.

Verification Steps

  1. Launch the app on a mobile device (or emulator). Verify that the status bar (clock, battery) and bottom navigation bars are visible, and that the app's top bar or bottom navigation tabs do not clip underneath them.
  2. Launch the app on an Android TV device. Verify that the app launches successfully in an immersive, full-screen mode, with no letterboxing or visible system layout constraints.

@Himanth-reddy
Himanth-reddy marked this pull request as ready for review March 27, 2026 09:38
@ProdigyV21
ProdigyV21 merged commit 192cf66 into ProdigyV21:main Mar 28, 2026
2 checks passed
@Himanth-reddy
Himanth-reddy deleted the fix/mobile-fullscreen-ux branch April 12, 2026 17:17
@Himanth-reddy Himanth-reddy added gssoc-approved level:intermediate Intermediate level task quality:clean Clean code implementation type:bug Bug fix type:design UI/UX design enhancements gssoc:approved GSSoC approved contribution and removed gssoc:approved labels Jul 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

gssoc:approved GSSoC approved contribution level:intermediate Intermediate level task quality:clean Clean code implementation type:bug Bug fix type:design UI/UX design enhancements

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants