previousPage method
void
previousPage()
Previous page.
Implementation
void previousPage() {
if (_paged) {
if (_pageInChapter > 0) {
_goToPageInChapter(_pageInChapter - 1);
} else if (_hasPreviousChapter) {
unawaited(_loadChapter(_controller.value.pageIndex - 1, atEnd: true));
}
return;
}
if (!_scroll.hasClients) return;
if (_scroll.offset <= 2) {
if (_hasPreviousChapter) unawaited(_loadChapter(_controller.value.pageIndex - 1, atEnd: true));
return;
}
final double viewport = _scroll.position.viewportDimension;
unawaited(_scroll.animateTo((_scroll.offset - viewport * 0.85).clamp(0, _scroll.position.maxScrollExtent).toDouble(), duration: const Duration(milliseconds: 240), curve: Curves.easeOut));
}