opt: search reload

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-04-17 16:27:05 +08:00
parent 4db7711a36
commit 8dc9f68584
4 changed files with 27 additions and 5 deletions

View File

@@ -6,4 +6,12 @@ class SearchResultController extends GetxController {
RxList<int> count =
List.generate(SearchType.values.length, (_) => -1).toList().obs;
RxInt toTopIndex = (-1).obs;
@override
void onClose() {
toTopIndex.close();
super.onClose();
}
}

View File

@@ -1,6 +1,5 @@
import 'package:PiliPlus/pages/search/controller.dart';
import 'package:PiliPlus/pages/search_panel/article/view.dart';
import 'package:PiliPlus/pages/search_panel/controller.dart';
import 'package:PiliPlus/pages/search_panel/live/view.dart';
import 'package:PiliPlus/pages/search_panel/pgc/view.dart';
import 'package:PiliPlus/pages/search_panel/user/view.dart';
@@ -133,9 +132,11 @@ class _SearchResultPageState extends State<SearchResultPage>
tabAlignment: TabAlignment.start,
onTap: (index) {
if (_tabController.indexIsChanging.not) {
Get.find<SearchPanelController>(
tag: SearchType.values[index].name + _tag)
.animateToTop();
if (_searchResultController.toTopIndex.value == index) {
_searchResultController.toTopIndex.refresh();
} else {
_searchResultController.toTopIndex.value = index;
}
}
},
),