mirror of
https://github.com/flutter/flutter.git
synced 2025-06-03 00:51:18 +00:00
![]() fixes [NavigationDrawer selected item has wrong icon color [Material3 spec]](https://github.com/flutter/flutter/issues/129572) ### Description This PR fixes a mistake in the `NavigationDrawer` defaults, where generated token value returns a `null`. This issue can be detected when you want to customize the selected icon color for `NavigationDrawerDestination` using a custom color scheme. ### Code sample <details> <summary>expanded to view the code sample</summary> ```dart import 'package:flutter/material.dart'; void main() => runApp(const MyApp()); class MyApp extends StatelessWidget { const MyApp({super.key}); @override Widget build(BuildContext context) { return MaterialApp( debugShowCheckedModeBanner: false, themeMode: ThemeMode.light, theme: ThemeData( colorScheme: ColorScheme.fromSeed(seedColor: Colors.blue).copyWith( onSecondaryContainer: Colors.red, ), useMaterial3: true, ), home: const Example(), ); } } class Example extends StatelessWidget { const Example({super.key}); @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: const Text('NavigationDrawer Sample'), ), drawer: const NavigationDrawer( children: <Widget>[ NavigationDrawerDestination( icon: Icon(Icons.favorite_outline_rounded), label: Text('Favorite'), selectedIcon: Icon(Icons.favorite_rounded), ), NavigationDrawerDestination( icon: Icon(Icons.favorite_outline_rounded), label: Text('Favorite'), ), ], ), ); } } ``` </details> ### Before <img width="1053" alt="Screenshot 2023-06-27 at 13 24 38" src="https://github.com/flutter/flutter/assets/48603081/18c13a73-688f-4586-bb60-bddef45d173f"> ### After <img width="1053" alt="Screenshot 2023-06-27 at 13 24 25" src="https://github.com/flutter/flutter/assets/48603081/8a1427c6-517f-424a-b0bd-24bad7c5fbb0"> |
||
---|---|---|
.. | ||
action_chip_template.dart | ||
app_bar_template.dart | ||
badge_template.dart | ||
banner_template.dart | ||
bottom_app_bar_template.dart | ||
bottom_sheet_template.dart | ||
button_template.dart | ||
card_template.dart | ||
checkbox_template.dart | ||
chip_template.dart | ||
color_scheme_template.dart | ||
date_picker_template.dart | ||
dialog_template.dart | ||
divider_template.dart | ||
drawer_template.dart | ||
expansion_tile_template.dart | ||
fab_template.dart | ||
filter_chip_template.dart | ||
icon_button_template.dart | ||
input_chip_template.dart | ||
input_decorator_template.dart | ||
list_tile_template.dart | ||
menu_template.dart | ||
navigation_bar_template.dart | ||
navigation_drawer_template.dart | ||
navigation_rail_template.dart | ||
popup_menu_template.dart | ||
progress_indicator_template.dart | ||
radio_template.dart | ||
search_bar_template.dart | ||
search_view_template.dart | ||
segmented_button_template.dart | ||
slider_template.dart | ||
snackbar_template.dart | ||
surface_tint.dart | ||
switch_template.dart | ||
tabs_template.dart | ||
template.dart | ||
text_field_template.dart | ||
time_picker_template.dart | ||
token_logger.dart | ||
typography_template.dart |