ensureCoreDataLoaded method
Future<void>
ensureCoreDataLoaded(
)
Implementation
Future<void> ensureCoreDataLoaded() async {
if (state.pages.isNotEmpty && state.allAyahs.isNotEmpty) return;
_coreDataLoadFuture ??= () async {
try {
await Future.wait<void>([
loadQuranDataV3(),
fetchSurahs(),
]);
} catch (e, st) {
log('Failed to load core Quran data: $e',
name: 'QuranCtrl', stackTrace: st);
} finally {
// تحديث عام + تحديث خاص بالـ PageViewBuild
update();
update(['_pageViewBuild']);
}
}();
QuranCtrl.instance.state.isTajweedEnabled.value =
GetStorage().read(_StorageConstants().isTajweed) ?? false;
await _coreDataLoadFuture;
}