From b12a294f4e5acab7d585fefb9fdfbc51490d0ee2 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 30 Jan 2022 17:03:16 +0330 Subject: [PATCH] radars search bug fixed --- lib/pages/home/radar/radar.dart | 7 ++++--- .../home/radar/radar_details/radar_details_state.dart | 2 ++ lib/widgets/search_field.dart | 1 - 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index 1baf079..6da91c3 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -66,8 +66,7 @@ class _RadarState extends State { builder: (context, state, child) => Stack( children: [ CustomScrollView( - physics: _isAnimating || - (state.appState == AppState.busy && state.radars.isEmpty) + physics: _isAnimating ? const NeverScrollableScrollPhysics() : const ScrollPhysics(), controller: _scrollController, @@ -159,7 +158,8 @@ class _RadarState extends State { ), if (state.appState != AppState.failed) CategoriesRow1(), if (state.appState != AppState.failed) CategoriesRow2(), - if (state.appState != AppState.failed) CategoriesList(), + if (state.appState != AppState.failed && !state.searching) + CategoriesList(), ], ), ); @@ -281,6 +281,7 @@ class _RadarState extends State { @override void dispose() { + _focusNode.dispose(); _scrollController.dispose(); super.dispose(); } diff --git a/lib/pages/home/radar/radar_details/radar_details_state.dart b/lib/pages/home/radar/radar_details/radar_details_state.dart index ddaef05..f426a89 100644 --- a/lib/pages/home/radar/radar_details/radar_details_state.dart +++ b/lib/pages/home/radar/radar_details/radar_details_state.dart @@ -48,6 +48,7 @@ class RadarDetailsState extends CoreProvier { if (result['nextRadar'].isNotEmpty) { nextRadar = RadarDetailsData.fromJson(result['nextRadar']); } + if (isForward == null) { radars.addAll(List.generate(max(radar.order - 2, 0), (index) => null)); if (prevRadar != null) { @@ -72,6 +73,7 @@ class RadarDetailsState extends CoreProvier { appState = AppState.idle; return; } + if (isForward == null) { appState = AppState.failed; } diff --git a/lib/widgets/search_field.dart b/lib/widgets/search_field.dart index da923b3..1dd684c 100644 --- a/lib/widgets/search_field.dart +++ b/lib/widgets/search_field.dart @@ -125,7 +125,6 @@ class _SearchFieldState extends State { @override void dispose() { - widget.focusNode.dispose(); super.dispose(); } }