diff --git a/lib/model/covers.dart b/lib/model/covers.dart index a99308f35..8e9066fa5 100644 --- a/lib/model/covers.dart +++ b/lib/model/covers.dart @@ -25,7 +25,7 @@ final Covers covers = Covers._private(); typedef CoverProps = (int? entryId, String? packageName, Color? color); class Covers { - final List _subscriptions = []; + final Set _subscriptions = {}; final _lock = Lock(); final StreamController?> _entryChangeStreamController = StreamController.broadcast(); diff --git a/lib/model/dynamic_albums.dart b/lib/model/dynamic_albums.dart index 2313f0773..488e43307 100644 --- a/lib/model/dynamic_albums.dart +++ b/lib/model/dynamic_albums.dart @@ -15,7 +15,7 @@ import 'package:synchronized/synchronized.dart'; final DynamicAlbums dynamicAlbums = DynamicAlbums._private(); class DynamicAlbums with ChangeNotifier { - final List _subscriptions = []; + final Set _subscriptions = {}; final _lock = Lock(); Set _rows = {}; diff --git a/lib/model/settings/settings.dart b/lib/model/settings/settings.dart index 873900386..592e1768b 100644 --- a/lib/model/settings/settings.dart +++ b/lib/model/settings/settings.dart @@ -46,7 +46,7 @@ import 'package:latlong2/latlong.dart'; final Settings settings = Settings._private(); class Settings with ChangeNotifier, SettingsAccess, SearchSettings, AppSettings, CollectionSettings, DebugSettings, DisplaySettings, FilterGridsSettings, InfoSettings, NavigationSettings, PrivacySettings, ScreenSaverSettings, SlideshowSettings, SubtitlesSettings, VideoSettings, ViewerSettings, WidgetSettings { - final List _subscriptions = []; + final Set _subscriptions = {}; final EventChannel _platformSettingsChangeChannel = const OptionalEventChannel('deckers.thibault/aves/settings_change'); final StreamController _updateStreamController = StreamController.broadcast(); final StreamController _updateTileExtentStreamController = StreamController.broadcast(); diff --git a/lib/model/source/collection_lens.dart b/lib/model/source/collection_lens.dart index 97b29fc9d..f8be3a91d 100644 --- a/lib/model/source/collection_lens.dart +++ b/lib/model/source/collection_lens.dart @@ -34,7 +34,7 @@ class CollectionLens with ChangeNotifier { EntrySortFactor sortFactor; bool sortReverse; final AChangeNotifier filterChangeNotifier = AChangeNotifier(), sortSectionChangeNotifier = AChangeNotifier(); - final List _subscriptions = []; + final Set _subscriptions = {}; int? id; bool listenToSource, stackBursts, stackDevelopedRaws, fixedSort; List? fixedSelection; diff --git a/lib/model/vaults/vaults.dart b/lib/model/vaults/vaults.dart index 7f80c563a..c2bfd653a 100644 --- a/lib/model/vaults/vaults.dart +++ b/lib/model/vaults/vaults.dart @@ -15,7 +15,7 @@ import 'package:provider/provider.dart'; final Vaults vaults = Vaults._private(); class Vaults extends ChangeNotifier { - final List _subscriptions = []; + final Set _subscriptions = {}; Set _rows = {}; final Set _unlockedDirPaths = {}; diff --git a/lib/services/media/media_session_service.dart b/lib/services/media/media_session_service.dart index 8b970a7a6..33db933ac 100644 --- a/lib/services/media/media_session_service.dart +++ b/lib/services/media/media_session_service.dart @@ -25,7 +25,7 @@ abstract class MediaSessionService { class PlatformMediaSessionService implements MediaSessionService, Disposable { static const _platformObject = MethodChannel('deckers.thibault/aves/media_session'); - final List _subscriptions = []; + final Set _subscriptions = {}; final EventChannel _mediaCommandChannel = const OptionalEventChannel('deckers.thibault/aves/media_command'); final StreamController _streamController = StreamController.broadcast(); diff --git a/lib/widgets/aves_app.dart b/lib/widgets/aves_app.dart index 0c4b507d0..45e76d824 100644 --- a/lib/widgets/aves_app.dart +++ b/lib/widgets/aves_app.dart @@ -160,7 +160,7 @@ class AvesApp extends StatefulWidget { } class _AvesAppState extends State with WidgetsBindingObserver { - final List _subscriptions = []; + final Set _subscriptions = {}; late final Future _appSetup; late final Future _shouldUseBoldFontLoader; final TvRailController _tvRailController = TvRailController(); diff --git a/lib/widgets/collection/app_bar.dart b/lib/widgets/collection/app_bar.dart index f85689966..ab89a3ac2 100644 --- a/lib/widgets/collection/app_bar.dart +++ b/lib/widgets/collection/app_bar.dart @@ -57,7 +57,7 @@ class CollectionAppBar extends StatefulWidget { } class _CollectionAppBarState extends State with SingleTickerProviderStateMixin, WidgetsBindingObserver { - final List _subscriptions = []; + final Set _subscriptions = {}; final EntrySetActionDelegate _actionDelegate = EntrySetActionDelegate(); late AnimationController _browseToSelectAnimation; final ValueNotifier _isSelectingNotifier = ValueNotifier(false); diff --git a/lib/widgets/collection/collection_page.dart b/lib/widgets/collection/collection_page.dart index e2631b6bd..3d4d958f6 100644 --- a/lib/widgets/collection/collection_page.dart +++ b/lib/widgets/collection/collection_page.dart @@ -52,7 +52,7 @@ class CollectionPage extends StatefulWidget { } class _CollectionPageState extends State { - final List _subscriptions = []; + final Set _subscriptions = {}; late CollectionLens _collection; final StreamController _draggableScrollBarEventStreamController = StreamController.broadcast(); diff --git a/lib/widgets/common/action_controls/quick_choosers/common/menu.dart b/lib/widgets/common/action_controls/quick_choosers/common/menu.dart index a70fbee60..68660854f 100644 --- a/lib/widgets/common/action_controls/quick_choosers/common/menu.dart +++ b/lib/widgets/common/action_controls/quick_choosers/common/menu.dart @@ -45,7 +45,7 @@ class MenuQuickChooser extends StatefulWidget { } class _MenuQuickChooserState extends State> { - final List _subscriptions = []; + final Set _subscriptions = {}; final ValueNotifier _selectedRowRect = ValueNotifier(Rect.zero); final ScrollController _scrollController = ScrollController(); int _scrollDirection = 0; diff --git a/lib/widgets/common/action_controls/quick_choosers/rate_chooser.dart b/lib/widgets/common/action_controls/quick_choosers/rate_chooser.dart index cdb857522..687d4ea65 100644 --- a/lib/widgets/common/action_controls/quick_choosers/rate_chooser.dart +++ b/lib/widgets/common/action_controls/quick_choosers/rate_chooser.dart @@ -23,7 +23,7 @@ class RateQuickChooser extends StatefulWidget { } class _RateQuickChooserState extends State { - final List _subscriptions = []; + final Set _subscriptions = {}; ValueNotifier get valueNotifier => widget.valueNotifier; diff --git a/lib/widgets/common/action_controls/togglers/play.dart b/lib/widgets/common/action_controls/togglers/play.dart index 9e76d2d13..67c5a5bf6 100644 --- a/lib/widgets/common/action_controls/togglers/play.dart +++ b/lib/widgets/common/action_controls/togglers/play.dart @@ -28,7 +28,7 @@ class PlayToggler extends StatefulWidget { } class _PlayTogglerState extends State with SingleTickerProviderStateMixin { - final List _subscriptions = []; + final Set _subscriptions = {}; late AnimationController _playPauseAnimation; AvesVideoController? get controller => widget.controller; diff --git a/lib/widgets/common/grid/item_tracker.dart b/lib/widgets/common/grid/item_tracker.dart index 52048a563..ea8aadf68 100644 --- a/lib/widgets/common/grid/item_tracker.dart +++ b/lib/widgets/common/grid/item_tracker.dart @@ -44,7 +44,7 @@ class _GridItemTrackerState extends State> with WidgetsBin return (scrollableContext.findRenderObject() as RenderBox).size; } - final List _subscriptions = []; + final Set _subscriptions = {}; // grid section metrics before the app is laid out with the new orientation late SectionedListLayout _lastSectionedListLayout; diff --git a/lib/widgets/common/identity/aves_filter_chip.dart b/lib/widgets/common/identity/aves_filter_chip.dart index 163017c57..1bbe9f22a 100644 --- a/lib/widgets/common/identity/aves_filter_chip.dart +++ b/lib/widgets/common/identity/aves_filter_chip.dart @@ -150,7 +150,7 @@ class AvesFilterChip extends StatefulWidget { } class _AvesFilterChipState extends State { - final List _subscriptions = []; + final Set _subscriptions = {}; late Future _colorFuture; late Color _outlineColor; late bool _tapped; diff --git a/lib/widgets/common/map/geo_map.dart b/lib/widgets/common/map/geo_map.dart index b8a43c7aa..1f6196957 100644 --- a/lib/widgets/common/map/geo_map.dart +++ b/lib/widgets/common/map/geo_map.dart @@ -83,7 +83,7 @@ class GeoMap extends StatefulWidget { } class _GeoMapState extends State { - final List _subscriptions = []; + final Set _subscriptions = {}; // as of google_maps_flutter v2.0.6, Google map initialization is blocking // cf https://github.com/flutter/flutter/issues/28493 diff --git a/lib/widgets/common/map/leaflet/map.dart b/lib/widgets/common/map/leaflet/map.dart index 39ee02248..829476be7 100644 --- a/lib/widgets/common/map/leaflet/map.dart +++ b/lib/widgets/common/map/leaflet/map.dart @@ -66,7 +66,7 @@ class EntryLeafletMap extends StatefulWidget { class _EntryLeafletMapState extends State> with TickerProviderStateMixin { final MapController _leafletMapController = MapController(); - final List _subscriptions = []; + final Set _subscriptions = {}; Map, GeoEntry> _geoEntryByMarkerKey = {}; final Debouncer _debouncer = Debouncer(delay: ADurations.mapIdleDebounceDelay); diff --git a/lib/widgets/common/tile_extent_controller.dart b/lib/widgets/common/tile_extent_controller.dart index f328f12a4..bf4567d02 100644 --- a/lib/widgets/common/tile_extent_controller.dart +++ b/lib/widgets/common/tile_extent_controller.dart @@ -15,7 +15,7 @@ class TileExtentController { late double userPreferredExtent; Size _viewportSize = Size.zero; - final List _subscriptions = []; + final Set _subscriptions = {}; Size get viewportSize => _viewportSize; diff --git a/lib/widgets/dialogs/entry_editors/edit_location_dialog.dart b/lib/widgets/dialogs/entry_editors/edit_location_dialog.dart index fbdbef1d1..a133210ae 100644 --- a/lib/widgets/dialogs/entry_editors/edit_location_dialog.dart +++ b/lib/widgets/dialogs/entry_editors/edit_location_dialog.dart @@ -56,7 +56,7 @@ class EditEntryLocationDialog extends StatefulWidget { } class _EditEntryLocationDialogState extends State with FeedbackMixin { - final List _subscriptions = []; + final Set _subscriptions = {}; LocationEditAction _action = LocationEditAction.chooseOnMap; LatLng? _mapCoordinates; late final AvesEntry mainEntry; diff --git a/lib/widgets/dialogs/pick_dialogs/location_pick_page.dart b/lib/widgets/dialogs/pick_dialogs/location_pick_page.dart index 217e2b282..ca2fa32b2 100644 --- a/lib/widgets/dialogs/pick_dialogs/location_pick_page.dart +++ b/lib/widgets/dialogs/pick_dialogs/location_pick_page.dart @@ -63,7 +63,7 @@ class _Content extends StatefulWidget { } class _ContentState extends State<_Content> with SingleTickerProviderStateMixin { - final List _subscriptions = []; + final Set _subscriptions = {}; final AvesMapController _mapController = AvesMapController(); late final ValueNotifier _isPageAnimatingNotifier; final ValueNotifier _dotLocationNotifier = ValueNotifier(null), _infoLocationNotifier = ValueNotifier(null); diff --git a/lib/widgets/editor/entry_editor_page.dart b/lib/widgets/editor/entry_editor_page.dart index c8cba2b81..907afe33e 100644 --- a/lib/widgets/editor/entry_editor_page.dart +++ b/lib/widgets/editor/entry_editor_page.dart @@ -28,7 +28,7 @@ class ImageEditorPage extends StatefulWidget { } class _ImageEditorPageState extends State { - final List _subscriptions = []; + final Set _subscriptions = {}; final ValueNotifier _actionNotifier = ValueNotifier(null); final ValueNotifier _marginNotifier = ValueNotifier(EdgeInsets.zero); final ValueNotifier _viewStateNotifier = ValueNotifier(ViewState.zero); diff --git a/lib/widgets/editor/image.dart b/lib/widgets/editor/image.dart index ce5836c84..df6213591 100644 --- a/lib/widgets/editor/image.dart +++ b/lib/widgets/editor/image.dart @@ -36,7 +36,7 @@ class EditorImage extends StatefulWidget { } class _EditorImageState extends State { - final List _subscriptions = []; + final Set _subscriptions = {}; final ValueNotifier _scrimOpacityNotifier = ValueNotifier(0); AvesEntry get entry => widget.entry; diff --git a/lib/widgets/editor/transform/cropper.dart b/lib/widgets/editor/transform/cropper.dart index a160ef408..1c37f85bc 100644 --- a/lib/widgets/editor/transform/cropper.dart +++ b/lib/widgets/editor/transform/cropper.dart @@ -38,7 +38,7 @@ class Cropper extends StatefulWidget { } class _CropperState extends State with SingleTickerProviderStateMixin { - final List _subscriptions = []; + final Set _subscriptions = {}; final ValueNotifier _outlineNotifier = ValueNotifier(Rect.zero); final ValueNotifier _gridDivisionNotifier = ValueNotifier(0); late AnimationController _gridAnimationController; diff --git a/lib/widgets/explorer/explorer_page.dart b/lib/widgets/explorer/explorer_page.dart index cadf2e5f5..749f1a0e8 100644 --- a/lib/widgets/explorer/explorer_page.dart +++ b/lib/widgets/explorer/explorer_page.dart @@ -40,7 +40,7 @@ class ExplorerPage extends StatefulWidget { } class _ExplorerPageState extends State { - final List _subscriptions = []; + final Set _subscriptions = {}; final ValueNotifier _directory = ValueNotifier(null); final ValueNotifier _contentsDirectory = ValueNotifier(null); final ValueNotifier> _contents = ValueNotifier([]); diff --git a/lib/widgets/filter_grids/common/app_bar.dart b/lib/widgets/filter_grids/common/app_bar.dart index 322e8fe1d..b24a5380f 100644 --- a/lib/widgets/filter_grids/common/app_bar.dart +++ b/lib/widgets/filter_grids/common/app_bar.dart @@ -79,7 +79,7 @@ class FilterGridAppBar> extends State> with SingleTickerProviderStateMixin, WidgetsBindingObserver { - final List _subscriptions = []; + final Set _subscriptions = {}; late AnimationController _browseToSelectAnimation; final ValueNotifier _isSelectingNotifier = ValueNotifier(false); final FocusNode _queryBarFocusNode = FocusNode(); diff --git a/lib/widgets/map/map_page.dart b/lib/widgets/map/map_page.dart index 0131ea2b4..83bca4a6b 100644 --- a/lib/widgets/map/map_page.dart +++ b/lib/widgets/map/map_page.dart @@ -115,7 +115,7 @@ class _Content extends StatefulWidget { } class _ContentState extends State<_Content> with SingleTickerProviderStateMixin { - final List _subscriptions = []; + final Set _subscriptions = {}; final AvesMapController _mapController = AvesMapController(); final ValueNotifier _isPageAnimatingNotifier = ValueNotifier(false); final ValueNotifier _selectedIndexNotifier = ValueNotifier(0); diff --git a/lib/widgets/navigation/nav_bar/floating.dart b/lib/widgets/navigation/nav_bar/floating.dart index 63ffb53a4..da0e7d51b 100644 --- a/lib/widgets/navigation/nav_bar/floating.dart +++ b/lib/widgets/navigation/nav_bar/floating.dart @@ -23,7 +23,7 @@ class FloatingNavBar extends StatefulWidget { } class _FloatingNavBarState extends State with SingleTickerProviderStateMixin { - final List _subscriptions = []; + final Set _subscriptions = {}; late AnimationController _controller; late CurvedAnimation _animation; late Animation _offset; diff --git a/lib/widgets/viewer/entry_vertical_pager.dart b/lib/widgets/viewer/entry_vertical_pager.dart index 8f32956cb..61ec662c2 100644 --- a/lib/widgets/viewer/entry_vertical_pager.dart +++ b/lib/widgets/viewer/entry_vertical_pager.dart @@ -64,7 +64,7 @@ class ViewerVerticalPageView extends StatefulWidget { } class _ViewerVerticalPageViewState extends State { - final List _subscriptions = []; + final Set _subscriptions = {}; final ValueNotifier _backgroundOpacityNotifier = ValueNotifier(1); final ValueNotifier _isVerticallyScrollingNotifier = ValueNotifier(false); final ValueNotifier _isImageFocusedNotifier = ValueNotifier(true); diff --git a/lib/widgets/viewer/info/info_page.dart b/lib/widgets/viewer/info/info_page.dart index 2b88828f2..0326d636d 100644 --- a/lib/widgets/viewer/info/info_page.dart +++ b/lib/widgets/viewer/info/info_page.dart @@ -150,7 +150,7 @@ class _InfoPageContent extends StatefulWidget { } class _InfoPageContentState extends State<_InfoPageContent> { - final List _subscriptions = []; + final Set _subscriptions = {}; late EntryInfoActionDelegate _actionDelegate; final ValueNotifier> _metadataNotifier = ValueNotifier({}); final ValueNotifier _isEditingMetadataNotifier = ValueNotifier(null); diff --git a/lib/widgets/viewer/visual/entry_page_view.dart b/lib/widgets/viewer/visual/entry_page_view.dart index 9ef35fabc..3a5cbd7ff 100644 --- a/lib/widgets/viewer/visual/entry_page_view.dart +++ b/lib/widgets/viewer/visual/entry_page_view.dart @@ -54,7 +54,7 @@ class EntryPageView extends StatefulWidget { class _EntryPageViewState extends State with TickerProviderStateMixin { late ValueNotifier _viewStateNotifier; late AvesMagnifierController _magnifierController; - final List _subscriptions = []; + final Set _subscriptions = {}; final ValueNotifier _actionFeedbackChildNotifier = ValueNotifier(null); OverlayEntry? _actionFeedbackOverlayEntry;