Unverified Commit 7e33cd5e authored by Qun Cheng's avatar Qun Cheng Committed by GitHub

Fixed leading button size on app bar (#110043)

parent d79a3d7a
......@@ -998,11 +998,16 @@ class _AppBarState extends State<AppBar> {
}
}
if (leading != null) {
leading = Container(
alignment: Alignment.center,
constraints: BoxConstraints.tightFor(width: widget.leadingWidth ?? _kLeadingWidth),
child: leading,
);
leading = theme.useMaterial3
? Container(
alignment: Alignment.center,
constraints: BoxConstraints.tightFor(width: widget.leadingWidth ?? _kLeadingWidth),
child: leading,
)
: ConstrainedBox(
constraints: BoxConstraints.tightFor(width: widget.leadingWidth ?? _kLeadingWidth),
child: leading,
);
}
Widget? title = widget.title;
......
......@@ -694,9 +694,11 @@ void main() {
});
testWidgets('leading button extends to edge and is square', (WidgetTester tester) async {
final ThemeData themeData = ThemeData(platform: TargetPlatform.android);
final bool material3 = themeData.useMaterial3;
await tester.pumpWidget(
MaterialApp(
theme: ThemeData(platform: TargetPlatform.android),
theme: themeData,
home: Scaffold(
appBar: AppBar(
title: const Text('X'),
......@@ -706,9 +708,9 @@ void main() {
),
);
final Finder hamburger = find.byTooltip('Open navigation menu');
expect(tester.getTopLeft(hamburger), const Offset(4.0, 4.0));
expect(tester.getSize(hamburger), const Size(48.0, 48.0));
final Finder hamburger = find.byType(IconButton);
expect(tester.getTopLeft(hamburger), material3 ? const Offset(4.0, 4.0) : Offset.zero);
expect(tester.getSize(hamburger), material3 ? const Size(48.0, 48.0) : const Size(56.0, 56.0));
});
testWidgets('test action is 4dp from edge and 48dp min', (WidgetTester tester) async {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment