fix: refresh home page when libraries are hidden/unhidden

close #465
This commit is contained in:
edde746
2026-02-16 03:12:46 +01:00
parent 23c4c400f0
commit 3dde8334e0
+17
View File
@@ -78,6 +78,7 @@ class _DiscoverScreenState extends State<DiscoverScreen>
Timer? _indicatorTimer;
final ValueNotifier<double> _indicatorProgress = ValueNotifier(0.0);
bool _isAutoScrollPaused = false;
HiddenLibrariesProvider? _hiddenLibrariesProvider;
String _toGlobalKey(String ratingKey, String serverId) => '$serverId:$ratingKey';
@@ -256,6 +257,21 @@ class _DiscoverScreenState extends State<DiscoverScreen>
_startAutoScroll();
}
@override
void didChangeDependencies() {
super.didChangeDependencies();
final provider = context.read<HiddenLibrariesProvider>();
if (provider != _hiddenLibrariesProvider) {
_hiddenLibrariesProvider?.removeListener(_onHiddenLibrariesChanged);
_hiddenLibrariesProvider = provider;
_hiddenLibrariesProvider!.addListener(_onHiddenLibrariesChanged);
}
}
void _onHiddenLibrariesChanged() {
_loadContent();
}
void _onRefreshFocusChange() {
if (mounted) {
setState(() {
@@ -497,6 +513,7 @@ class _DiscoverScreenState extends State<DiscoverScreen>
@override
void dispose() {
_hiddenLibrariesProvider?.removeListener(_onHiddenLibrariesChanged);
WidgetsBinding.instance.removeObserver(this);
_autoScrollTimer?.cancel();
_indicatorTimer?.cancel();