LocalePref class

User-selected UI language. null means "follow the device locale" — the root MaterialApp.locale is left null and Flutter resolves against AppLocalizations.supportedLocales. Persisted to SharedPreferences.

As a side effect this keeps Intl.defaultLocale in sync with the effective language so the app's bare DateFormat call-sites format dates for the chosen locale instead of always en_US (audit M6). When the pref is null (follow-system), Intl.defaultLocale is cleared so intl falls back to the platform locale.

Inheritance
Annotations

Constructors

LocalePref()

Properties

future → Future<Locale?>
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<Locale?>
The value currently exposed by this notifier.
getter/setter pairinherited

Methods

build() → Future<Locale?>
listenSelf(void listener(AsyncValue<Locale?>? previous, AsyncValue<Locale?> 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() → void
Executes Notifier.build.
inherited
set(Locale? locale) → Future<void>
toString() → String
A string representation of this object.
inherited
update(FutureOr<Locale?> cb(Locale? previousState), {FutureOr<Locale?> onError(Object err, StackTrace stackTrace)?}) → Future<Locale?>
A function to update state from its previous value, while abstracting loading/error cases for state.
inherited
updateShouldNotify(AsyncValue<Locale?> previous, AsyncValue<Locale?> 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