Skip to content

Commit c6f758b

Browse files
authored
[flutter_adaptive_scaffold] Fix top padding for NavigationBar (#4661)
This pr removes the top padding in `MediaQuery` for NavigationBar to fix unexpected padding. The `Scaffold` in flutter framework actually did this but this package didn't. Fix flutter/flutter#127088
1 parent 354af05 commit c6f758b

File tree

5 files changed

+20
-10
lines changed

5 files changed

+20
-10
lines changed

packages/flutter_adaptive_scaffold/AUTHORS

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,5 @@
33
#
44
# Name/Organization <email address>
55

6-
Google Inc.
6+
Google Inc.
7+
Jason C.H <ctrysbita@outlook.com>

packages/flutter_adaptive_scaffold/CHANGELOG.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1-
## NEXT
1+
## 0.1.7
22

3+
* Fix top padding for NavigationBar.
34
* Updates minimum supported SDK version to Flutter 3.7/Dart 2.19.
45

56
## 0.1.6
@@ -15,7 +16,7 @@
1516
## 0.1.4
1617

1718
* Use Material 3 NavigationBar instead of BottomNavigationBar
18-
19+
1920
## 0.1.3
2021

2122
* Fixes `groupAlignment` property not available in `standardNavigationRail` - [flutter/flutter#121994](https://github.com/flutter/flutter/issues/121994)

packages/flutter_adaptive_scaffold/lib/src/adaptive_scaffold.dart

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -328,20 +328,25 @@ class AdaptiveScaffold extends StatefulWidget {
328328
final NavigationBarThemeData currentNavBarTheme =
329329
NavigationBarTheme.of(context);
330330
return NavigationBarTheme(
331-
data: currentNavBarTheme.copyWith(
332-
iconTheme: MaterialStateProperty.resolveWith(
333-
(Set<MaterialState> states) {
331+
data: currentNavBarTheme.copyWith(
332+
iconTheme: MaterialStateProperty.resolveWith(
333+
(Set<MaterialState> states) {
334334
return currentNavBarTheme.iconTheme
335335
?.resolve(states)
336336
?.copyWith(size: iconSize) ??
337337
IconTheme.of(context).copyWith(size: iconSize);
338-
}),
338+
},
339339
),
340+
),
341+
child: MediaQuery(
342+
data: MediaQuery.of(context).removePadding(removeTop: true),
340343
child: NavigationBar(
341344
selectedIndex: currentIndex ?? 0,
342345
destinations: destinations,
343346
onDestinationSelected: onDestinationSelected,
344-
));
347+
),
348+
),
349+
);
345350
},
346351
);
347352
}

packages/flutter_adaptive_scaffold/pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name: flutter_adaptive_scaffold
22
description: Widgets to easily build adaptive layouts, including navigation elements.
3-
version: 0.1.6
3+
version: 0.1.7
44
issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+flutter_adaptive_scaffold%22
55
repository: https://github.com/flutter/packages/tree/main/packages/flutter_adaptive_scaffold
66

packages/flutter_adaptive_scaffold/test/simulated_layout.dart

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,10 @@ enum SimulatedLayout {
136136
),
137137
),
138138
home: MediaQuery(
139-
data: MediaQueryData(size: size),
139+
data: MediaQueryData(
140+
size: size,
141+
padding: const EdgeInsets.only(top: 30),
142+
),
140143
child: TestScaffold(
141144
initialIndex: initialIndex,
142145
isAnimated: animations,

0 commit comments

Comments
 (0)