fix landscape safe area padding across settings and list screens

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Tommy Chow 2026-03-09 20:04:00 -07:00
parent 1dab572280
commit 5be231da73
6 changed files with 28 additions and 22 deletions

View file

@ -81,9 +81,11 @@ class OfflineChannelCard extends StatelessWidget {
);
},
child: Padding(
padding: EdgeInsets.symmetric(
horizontal: 16 + MediaQuery.of(context).padding.left,
vertical: 8,
padding: EdgeInsets.fromLTRB(
16 + MediaQuery.of(context).padding.left,
8,
16 + MediaQuery.of(context).padding.right,
8,
),
child: Row(
spacing: 12,

View file

@ -77,11 +77,14 @@ class Settings extends StatelessWidget {
body: Stack(
children: [
// Main scrollable content
FrostyScrollbar(
padding: EdgeInsets.only(
top: MediaQuery.of(context).padding.top + kToolbarHeight,
),
child: CustomScrollView(
SafeArea(
top: false,
bottom: false,
child: FrostyScrollbar(
padding: EdgeInsets.only(
top: MediaQuery.of(context).padding.top + kToolbarHeight,
),
child: CustomScrollView(
slivers: [
SliverPadding(
padding: EdgeInsets.only(
@ -201,6 +204,7 @@ class Settings extends StatelessWidget {
],
),
),
),
// Blurred app bar overlay
Positioned(
top: 0,

View file

@ -74,9 +74,9 @@ class _ReleaseNotesState extends State<ReleaseNotes> {
),
child: Markdown(
padding: EdgeInsets.fromLTRB(
16,
16 + MediaQuery.of(context).padding.left,
MediaQuery.of(context).padding.top + kToolbarHeight,
16,
16 + MediaQuery.of(context).padding.right,
16,
),
controller: _scrollController,

View file

@ -70,10 +70,14 @@ class _BlurredSettingsPage extends StatelessWidget {
children: [
// Main scrollable content
Positioned.fill(
child: MediaQuery.removePadding(
context: context,
removeTop: true,
child: child,
child: SafeArea(
top: false,
bottom: false,
child: MediaQuery.removePadding(
context: context,
removeTop: true,
child: child,
),
),
),
// Blurred app bar overlay - positioned AFTER content so it renders on top

View file

@ -22,8 +22,6 @@ class ExpandableSectionHeader extends StatelessWidget {
@override
Widget build(BuildContext context) {
final isLandscape = context.isLandscape;
return InkWell(
onTap: onToggle != null
? () {
@ -35,9 +33,9 @@ class ExpandableSectionHeader extends StatelessWidget {
padding:
padding ??
EdgeInsets.fromLTRB(
isLandscape ? MediaQuery.of(context).padding.left : 16,
16 + MediaQuery.of(context).padding.left,
0,
isLandscape ? MediaQuery.of(context).padding.right : 16,
16 + MediaQuery.of(context).padding.right,
8,
),
child: Column(

View file

@ -19,15 +19,13 @@ class SectionHeader extends StatelessWidget {
@override
Widget build(BuildContext context) {
final isLandscape = context.isLandscape;
return Padding(
padding:
padding ??
EdgeInsets.fromLTRB(
isLandscape ? MediaQuery.of(context).padding.left : 16,
16 + MediaQuery.of(context).padding.left,
0,
isLandscape ? MediaQuery.of(context).padding.right : 16,
16 + MediaQuery.of(context).padding.right,
8,
),
child: Column(