From b32f409b35d3deea6bbae2e8c37631bd992ab97b Mon Sep 17 00:00:00 2001 From: Thibault Deckers Date: Tue, 6 Feb 2024 20:22:13 +0100 Subject: [PATCH] #898 fixed viewer transition direction for RTL locales --- CHANGELOG.md | 2 ++ lib/widgets/viewer/visual/entry_page_view.dart | 11 +++++++---- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 99a509938..db86e15ab 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,8 @@ All notable changes to this project will be documented in this file. ### Fixed - motion photo detection for xml variant of google container item +- HEIF size detection for some corrupted files +- viewer transition direction for RTL locales ## [v1.10.3] - 2024-01-29 diff --git a/lib/widgets/viewer/visual/entry_page_view.dart b/lib/widgets/viewer/visual/entry_page_view.dart index b026993d4..287d1d836 100644 --- a/lib/widgets/viewer/visual/entry_page_view.dart +++ b/lib/widgets/viewer/visual/entry_page_view.dart @@ -12,6 +12,7 @@ import 'package:aves/theme/icons.dart'; import 'package:aves/view/view.dart'; import 'package:aves/widgets/common/action_mixins/feedback.dart'; import 'package:aves/widgets/common/basic/insets.dart'; +import 'package:aves/widgets/common/extensions/build_context.dart'; import 'package:aves/widgets/viewer/controls/controller.dart'; import 'package:aves/widgets/viewer/controls/notifications.dart'; import 'package:aves/widgets/viewer/hero.dart'; @@ -420,11 +421,12 @@ class _EntryPageViewState extends State with TickerProviderStateM } void _onFling(AxisDirection direction) { + const animate = true; switch (direction) { case AxisDirection.left: - const ShowPreviousEntryNotification(animate: true).dispatch(context); + (context.isRtl ? const ShowNextEntryNotification(animate: animate) : const ShowPreviousEntryNotification(animate: animate)).dispatch(context); case AxisDirection.right: - const ShowNextEntryNotification(animate: true).dispatch(context); + (context.isRtl ? const ShowPreviousEntryNotification(animate: animate) : const ShowNextEntryNotification(animate: animate)).dispatch(context); case AxisDirection.up: PopVisualNotification().dispatch(context); case AxisDirection.down: @@ -437,11 +439,12 @@ class _EntryPageViewState extends State with TickerProviderStateM final x = alignment.x; final sideRatio = _getSideRatio(); if (sideRatio != null) { + const animate = false; if (x < sideRatio) { - const ShowPreviousEntryNotification(animate: false).dispatch(context); + (context.isRtl ? const ShowNextEntryNotification(animate: animate) : const ShowPreviousEntryNotification(animate: animate)).dispatch(context); return; } else if (x > 1 - sideRatio) { - const ShowNextEntryNotification(animate: false).dispatch(context); + (context.isRtl ? const ShowPreviousEntryNotification(animate: animate) : const ShowNextEntryNotification(animate: animate)).dispatch(context); return; } }