guard uninitialized state

This commit is contained in:
Fabian Freund
2025-06-23 22:32:19 +02:00
parent 12c9d32a9b
commit 967ff8fd6d
4 changed files with 14 additions and 11 deletions
@@ -50,6 +50,8 @@ class FindInPageController extends _$FindInPageController {
fireImmediately: true, fireImmediately: true,
selectedTabStateProvider, selectedTabStateProvider,
(previous, next) async { (previous, next) async {
//Ensure state is already initialized
if (stateOrNull != null) {
if (state.visible && state.lastSearchText.isNotEmpty) { if (state.visible && state.lastSearchText.isNotEmpty) {
if (previous != null && next != null) { if (previous != null && next != null) {
final loadingOrReloading = final loadingOrReloading =
@@ -62,6 +64,7 @@ class FindInPageController extends _$FindInPageController {
} }
} }
} }
}
}, },
onError: (error, stackTrace) { onError: (error, stackTrace) {
logger.e( logger.e(
@@ -7,7 +7,7 @@ part of 'find_in_page.dart';
// ************************************************************************** // **************************************************************************
String _$findInPageControllerHash() => String _$findInPageControllerHash() =>
r'63a2fbf4f75be59d341501c58512792de82fdb3d'; r'ab421be931406325bf6b22dd9f545117ea426665';
/// See also [FindInPageController]. /// See also [FindInPageController].
@ProviderFor(FindInPageController) @ProviderFor(FindInPageController)
@@ -80,7 +80,7 @@ class SelectedContainer extends _$SelectedContainer {
fireImmediately: true, fireImmediately: true,
containersWithCountProvider, containersWithCountProvider,
(previous, next) { (previous, next) {
if (state != null && next.valueOrNull != null) { if (stateOrNull != null && next.valueOrNull != null) {
if (!next.value!.any((container) => container.id == state)) { if (!next.value!.any((container) => container.id == state)) {
clearContainer(); clearContainer();
} }
@@ -25,7 +25,7 @@ final selectedContainerDataProvider =
@Deprecated('Will be removed in 3.0. Use Ref instead') @Deprecated('Will be removed in 3.0. Use Ref instead')
// ignore: unused_element // ignore: unused_element
typedef SelectedContainerDataRef = AutoDisposeStreamProviderRef<ContainerData?>; typedef SelectedContainerDataRef = AutoDisposeStreamProviderRef<ContainerData?>;
String _$selectedContainerHash() => r'075190a8a58cc6de8ce554b0a6ed54809832fdb0'; String _$selectedContainerHash() => r'736a60b8f19273d3bdc25d1717e3a613384e59a6';
/// See also [SelectedContainer]. /// See also [SelectedContainer].
@ProviderFor(SelectedContainer) @ProviderFor(SelectedContainer)