Skip to content

Conversation

@glastonbridge
Copy link
Collaborator

@glastonbridge glastonbridge commented Dec 2, 2025

Google is transitioning all apps to work edge-to-edge. As CreateAI has a fixed ActionBar, it makes sense for this bar to be the component that extends to the top of the screen.

As a minor design decision: if you extend the ActionBar to the top of the screen, with the buttons appearing in the safe area beneath the status bar, the ActionBar buttons look misaligned on the vertical axis. As an initial approach I have darkened the colour beneath the status bar a little to provide contrast. MakeCode looks fine with solid blue, so I have kept the default colour.

Android Chromium webviews less than version 140 do not correctly support edge-to-edge. In versions of the WebView that do not have edge-to-edge capability, this functionality is inert and the safe-area plugin transitions us safely back to a non-edge-to-edge layout with a solid status bar. The introduction to the readme for safe-area contains additional context about why this is not always trivial on Android.

On android 35 emulator, the status bar seems inordinately big compared to android 36, but still usable.

iOS is always edge to edge.

Screenshots

Android 36, older webview

Screenshot_20251202_103704 Screenshot_20251202_103854

Android 36, newer webview

Screenshot_20251202_103527 Screenshot_20251202_103607

Android 35, older webview

Screenshot_20251202_111616 Screenshot_20251202_112232

Android 35, newer webview

Screenshot_20251202_111512 Screenshot_20251202_111536

iOS 16

Simulator Screenshot - iPad Air 11-inch (M2) - 2025-12-02 at 10 44 59 Simulator Screenshot - iPad Air 11-inch (M2) - 2025-12-02 at 10 46 42

@github-actions
Copy link

github-actions bot commented Dec 2, 2025

@glastonbridge glastonbridge marked this pull request as ready for review December 2, 2025 11:25
h="64px"
gap={0}
minH="64px"
sx={{

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we do this without affecting the web layout? Although these changes are targetting an apps branch for now, we paln to merge them back once more stable.

Capacitor code has API to platform detect, or we might be able to write CSS that just works on all platforms.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It was my understanding that this does work on all platforms already, but happy to switch it out if not. https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/env#browser_compatibility (safe-area-inset-top specifically)

Copy link

@microbit-matt-hillsdon microbit-matt-hillsdon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, makes sense. I'm going to approve this without device testing as your sim work seems fine for this and we won't miss any issues that do arise.

@glastonbridge glastonbridge merged commit 367a8cc into apps Dec 4, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants