mirror of
https://github.com/bggRGjQaUbCoE/PiliPlus.git
synced 2026-04-23 04:00:28 +08:00
@@ -1,3 +1,5 @@
|
||||
import 'dart:async' show StreamSubscription;
|
||||
|
||||
import 'package:PiliPlus/http/loading_state.dart';
|
||||
import 'package:PiliPlus/http/search.dart';
|
||||
import 'package:PiliPlus/models/common/search/article_search_type.dart';
|
||||
@@ -54,16 +56,18 @@ class SearchPanelController<R extends SearchNumData<T>, T>
|
||||
onReload().whenComplete(SmartDialog.dismiss);
|
||||
}
|
||||
|
||||
StreamSubscription? _listener;
|
||||
|
||||
@override
|
||||
void onInit() {
|
||||
super.onInit();
|
||||
try {
|
||||
searchResultController = Get.find<SearchResultController>(tag: tag)
|
||||
..toTopIndex.listen((index) {
|
||||
if (index == searchType.index) {
|
||||
scrollController.animToTop();
|
||||
}
|
||||
});
|
||||
searchResultController = Get.find<SearchResultController>(tag: tag);
|
||||
_listener = searchResultController!.toTopIndex.listen((index) {
|
||||
if (index == searchType.index) {
|
||||
scrollController.animToTop();
|
||||
}
|
||||
});
|
||||
} catch (_) {}
|
||||
queryData();
|
||||
}
|
||||
@@ -109,4 +113,10 @@ class SearchPanelController<R extends SearchNumData<T>, T>
|
||||
scrollController.jumpToTop();
|
||||
return super.onReload();
|
||||
}
|
||||
|
||||
@override
|
||||
void onClose() {
|
||||
_listener?.cancel();
|
||||
super.onClose();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user