fix: keep ErrorReportActivity content below the status bar on edge-to-edge - #2054
aleclarson wants to merge 1 commit into
Conversation
…-edge targetSdk 35 forces edge-to-edge, so the debug crash screen's root layout drew behind the status bar and clipped the top error banner. Setting fitsSystemWindows on the root RelativeLayout pads the content by the system window insets (status bar, nav bar, display cutout); it is a no-op on older targets where the decor consumes those insets. Closes NativeScript#2053
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (1)
Included review availability: This review used your included allowance. Your plan provides up to 4 included reviews per hour; 3 remain after this review. 📝 WalkthroughWalkthroughThe debug error screen’s root ChangesDebug error screen
Priority: ➖ Normal Estimated code review effort: 1 (Trivial) | ~5 minutes Change: Bug fix · Severity of issue fixed: Medium Merge Risk: ⚪ Minimal · up to The debug error screen’s content is inset from the system bars, keeping its message and bottom controls clear. No actionable issue remains for merge. Architecture SummaryArchitecture risk: 🔵 Low · up to The change affects 1 system. Changed systems: Architecture concerns Review detailsSystems and components
Before / after behavior
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. A rabbit hops past the status bar, Comment |
Closes #2053
Summary
com.tns.ErrorReportActivity/error_activity.xml) applies no window-insets handling, so ontargetSdkVersion 35— where Android 15 enforces edge-to-edge — the rootRelativeLayoutdraws behind the status bar and clips the toperrorExceptionbanner.android:fitsSystemWindows="true"to the rootRelativeLayout, so the default inset dispatch pads the content by the system window insets (status bar, navigation bar, display cutout).NativeScriptActivitylives in the app template, not this repo, and nothing here handles insets today, so there was no existing convention to match — this is the minimal fix suggested in the issue (SDK version 35 breaks the layout. It is stretched behind the status bar and the system bottom buttons. #1833 tracks the same root cause for normal app content).Test plan
ns run androidon an API 35 emulator/device, throw an uncaught JS exception on startup, confirm the red error banner renders fully below the status bar and the bottom buttons clear the nav barSummary by CodeRabbit