ThemeController class

Manages the app's ThemeMode with persistence across sessions.

Annotations
  • @Riverpod.new(keepAlive: true)

Constructors

ThemeController()

Properties

future Future<ThemeMode>
Obtains a Future that resolves with the first state value that is not AsyncLoading.
no setterinherited
hashCode int
The hash code for this object.
no setterinherited
ref → Ref
The Ref associated with this notifier.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
state ↔ AsyncValue<ThemeMode>
The value currently exposed by this notifier.
getter/setter pairinherited

Methods

build() Future<ThemeMode>
listenSelf(void listener(AsyncValue<ThemeMode>? previous, AsyncValue<ThemeMode> next), {void onError(Object error, StackTrace stackTrace)?}) → RemoveListener
Listens to changes on the value exposed by this provider.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
runBuild() → WhenComplete?
Executes Notifier.build.
inherited
setTheme(ThemeMode mode) Future<void>
Persists mode and immediately updates the UI.
toString() String
A string representation of this object.
inherited
update(FutureOr<ThemeMode> cb(ThemeMode previousState), {FutureOr<ThemeMode> onError(Object err, StackTrace stackTrace)?}) Future<ThemeMode>
A function to update state from its previous value, while abstracting loading/error cases for state.
inherited
updateShouldNotify(AsyncValue<ThemeMode> previous, AsyncValue<ThemeMode> next) bool
A method invoked when the state exposed by this Notifier changes. It compares the previous and new value, and return whether listeners should be notified.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited