diff --git a/lib/pages/image_viewer/image_viewer.dart b/lib/pages/image_viewer/image_viewer.dart index f56b7212e..e99eb719b 100644 --- a/lib/pages/image_viewer/image_viewer.dart +++ b/lib/pages/image_viewer/image_viewer.dart @@ -2,6 +2,7 @@ import 'package:flutter/material.dart'; import 'package:matrix/matrix.dart'; +import 'package:fluffychat/config/themes.dart'; import 'package:fluffychat/pages/image_viewer/image_viewer_view.dart'; import 'package:fluffychat/utils/platform_infos.dart'; import 'package:fluffychat/utils/show_scaffold_dialog.dart'; @@ -44,6 +45,24 @@ class ImageViewerController extends State { late final List allEvents; + void prevImage() { + setState(() { + pageController.previousPage( + duration: FluffyThemes.animationDuration, + curve: FluffyThemes.animationCurve, + ); + }); + } + + void nextImage() { + setState(() { + pageController.nextPage( + duration: FluffyThemes.animationDuration, + curve: FluffyThemes.animationCurve, + ); + }); + } + int get _index => pageController.page?.toInt() ?? 0; Event get currentEvent => allEvents[_index]; diff --git a/lib/pages/image_viewer/image_viewer_view.dart b/lib/pages/image_viewer/image_viewer_view.dart index c96b16b0b..c6a0b8835 100644 --- a/lib/pages/image_viewer/image_viewer_view.dart +++ b/lib/pages/image_viewer/image_viewer_view.dart @@ -2,7 +2,6 @@ import 'package:flutter/material.dart'; import 'package:flutter_gen/gen_l10n/l10n.dart'; -import 'package:fluffychat/config/themes.dart'; import 'package:fluffychat/utils/platform_infos.dart'; import 'package:fluffychat/widgets/hover_builder.dart'; import 'package:fluffychat/widgets/mxc_image.dart'; @@ -104,10 +103,7 @@ class ImageViewerView extends StatelessWidget { style: iconButtonStyle, tooltip: L10n.of(context).previous, icon: const Icon(Icons.chevron_left_outlined), - onPressed: () => controller.pageController.previousPage( - duration: FluffyThemes.animationDuration, - curve: FluffyThemes.animationCurve, - ), + onPressed: controller.prevImage, ), ), ), @@ -120,10 +116,7 @@ class ImageViewerView extends StatelessWidget { style: iconButtonStyle, tooltip: L10n.of(context).next, icon: const Icon(Icons.chevron_right_outlined), - onPressed: () => controller.pageController.nextPage( - duration: FluffyThemes.animationDuration, - curve: FluffyThemes.animationCurve, - ), + onPressed: controller.nextImage, ), ), ),