prewarmQpcV4Pages method
Future<void>
prewarmQpcV4Pages(
- int pageIndex
)
Implementation
Future<void> prewarmQpcV4Pages(int pageIndex) async {
if (!isQpcV4Enabled) return;
await _ensureQpcV4AssetsLoaded();
if (_qpcV4PageRenderer == null) return;
final basePage = pageIndex + 1;
final candidates = <int>{
basePage,
basePage - 1,
basePage + 1,
basePage - 2,
basePage + 2,
}.where((p) => p >= 1 && p <= 604);
var didBuildAny = false;
for (final p in candidates) {
if (_qpcV4BlocksByPage.containsKey(p)) continue;
_qpcV4BlocksByPage[p] = _qpcV4PageRenderer!.buildPage(pageNumber: p);
didBuildAny = true;
}
if (didBuildAny) {
// تحديث الصفحات المعنيّة فقط (بدل update() الذي يُعيد بناء الكل)
update([
for (final p in candidates) 'qpc_page_${p - 1}',
]);
}
}