diff --git a/FAQ.md b/FAQ.md index c71b08a967..2103a3cfb5 100644 --- a/FAQ.md +++ b/FAQ.md @@ -224,6 +224,7 @@ FairEmail follows all the best practices for an email client as decribed in [thi * [(128) How can I reset asked questions, for example to show images?](#user-content-faq128) * [(129) Is ProtonMail supported?](#user-content-faq129) * [(130) What does message error ... mean?](#user-content-faq130) +* [(131) Can you change the direction for swiping to previous/next message?](#user-content-faq131) [I have another question.](#user-content-support) @@ -2188,6 +2189,8 @@ ProtonMail uses a proprietary email protocol and [does not directly support IMAP](https://protonmail.com/support/knowledge-base/imap-smtp-and-pop3-setup/), so you cannot use FairEmail to access ProtonMail. +
+ **(130) What does message error ... mean?** @@ -2203,6 +2206,18 @@ The error will almost always include a reason. Common reasons are that the messa Please see [here](#user-content-faq22) for other error messages in the outbox. +
+ + +**(131) Can you change the direction for swiping to previous/next message?** + +If you read from left to right, swiping to the left will show the next message. +Similarly, if you read from right to left, swiping to the right will show the next message. + +This behavior seems quite natural to me. + +
+ ## Support If you have another question, want to request a feature or report a bug, you can use [this forum](https://forum.xda-developers.com/android/apps-games/source-email-t3824168). diff --git a/app/src/main/java/eu/faircode/email/FragmentMessages.java b/app/src/main/java/eu/faircode/email/FragmentMessages.java index f1bc251a24..9d6bc93dae 100644 --- a/app/src/main/java/eu/faircode/email/FragmentMessages.java +++ b/app/src/main/java/eu/faircode/email/FragmentMessages.java @@ -944,6 +944,8 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. if (swipenav) { Log.i("Swipe navigation"); + boolean ltr = (getContext().getResources().getConfiguration().getLayoutDirection() == View.LAYOUT_DIRECTION_LTR); + final SwipeListener swipeListener = new SwipeListener(getContext(), new SwipeListener.ISwipeListener() { @Override public boolean onSwipeRight() { @@ -951,7 +953,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. Animation bounce = AnimationUtils.loadAnimation(getContext(), R.anim.bounce_right); view.startAnimation(bounce); } else - navigate(previous, true); + navigate(previous, ltr); return (previous != null); } @@ -962,7 +964,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. Animation bounce = AnimationUtils.loadAnimation(getContext(), R.anim.bounce_left); view.startAnimation(bounce); } else - navigate(next, false); + navigate(next, !ltr); return (next != null); }