Reply: Remove unnecessary inboxKey from AdaptiveNav (#952) ## Description If the intent is to change the state of the MailboxBody widget based on a change in the selected destination, I believe that the Provider package already handles this efficiently. Co-authored-by: Pierre-Louis <6655696+guidezpl@users.noreply.github.com>
diff --git a/lib/studies/reply/adaptive_nav.dart b/lib/studies/reply/adaptive_nav.dart index 3cf232a..63038e0 100644 --- a/lib/studies/reply/adaptive_nav.dart +++ b/lib/studies/reply/adaptive_nav.dart
@@ -35,8 +35,6 @@ } class _AdaptiveNavState extends State<AdaptiveNav> { - UniqueKey _inboxKey = UniqueKey(); - @override void initState() { super.initState(); @@ -91,7 +89,6 @@ if (isDesktop) { return _DesktopNav( - inboxKey: _inboxKey, extended: !isTablet, destinations: navigationDestinations, folders: folders, @@ -99,7 +96,6 @@ ); } else { return _MobileNav( - inboxKey: _inboxKey, destinations: navigationDestinations, folders: folders, onItemTapped: _onDestinationSelected, @@ -115,10 +111,6 @@ final isDesktop = isDisplayDesktop(context); - if (emailStore.selectedMailboxPage != destination) { - _inboxKey = UniqueKey(); - } - emailStore.selectedMailboxPage = destination; if (isDesktop) { @@ -139,7 +131,6 @@ class _DesktopNav extends StatefulWidget { const _DesktopNav({ - this.inboxKey, required this.extended, required this.destinations, required this.folders, @@ -147,7 +138,6 @@ }); final bool extended; - final UniqueKey? inboxKey; final List<_Destination> destinations; final Map<String, String> folders; final void Function(int, MailboxPageType) onItemTapped; @@ -242,9 +232,9 @@ child: Center( child: ConstrainedBox( constraints: const BoxConstraints(maxWidth: 1340), - child: _SharedAxisTransitionSwitcher( + child: const _SharedAxisTransitionSwitcher( defaultChild: _MailNavigator( - child: MailboxBody(key: widget.inboxKey), + child: MailboxBody(), ), ), ), @@ -448,13 +438,11 @@ class _MobileNav extends StatefulWidget { const _MobileNav({ - this.inboxKey, required this.destinations, required this.folders, required this.onItemTapped, }); - final UniqueKey? inboxKey; final List<_Destination> destinations; final Map<String, String> folders; final void Function(int, MailboxPageType) onItemTapped; @@ -618,10 +606,8 @@ children: [ NotificationListener<ScrollNotification>( onNotification: _handleScrollNotification, - child: _MailNavigator( - child: MailboxBody( - key: widget.inboxKey, - ), + child: const _MailNavigator( + child: MailboxBody(), ), ), MouseRegion(