From 8ae6ceac90c586a0e285a9dc1bc2de17f559521a Mon Sep 17 00:00:00 2001 From: M66B Date: Tue, 1 Mar 2022 20:46:09 +0100 Subject: [PATCH] Fixed auto pos interaction --- .../eu/faircode/email/FragmentCompose.java | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/FragmentCompose.java b/app/src/main/java/eu/faircode/email/FragmentCompose.java index 4d5089a152..4117376e9e 100644 --- a/app/src/main/java/eu/faircode/email/FragmentCompose.java +++ b/app/src/main/java/eu/faircode/email/FragmentCompose.java @@ -6346,12 +6346,6 @@ public class FragmentCompose extends FragmentBase { hint.setSpan(new RelativeSizeSpan(0.7f), start, hint.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); etBody.setHint(hint); - if (state != State.LOADED) { - int pos = getAutoPos(0, etBody.length()); - if (pos < 0) - pos = 0; - etBody.setSelection(pos); - } grpBody.setVisibility(View.VISIBLE); cbSignature.setChecked(draft.signature); @@ -6403,7 +6397,17 @@ public class FragmentCompose extends FragmentBase { return; state = State.LOADED; - setFocus(selStart > 0 ? R.id.etBody : null, selStart, selEnd, postShow == null); + int s = (selStart == 0 ? -1 : selStart); + int e = (selStart == 0 ? -1 : selEnd); + + if (s < 0) { + int pos = getAutoPos(0, etBody.length()); + if (pos < 0) + pos = 0; + etBody.setSelection(pos); + } + + setFocus(s < 0 ? null : R.id.etBody, s, e, postShow == null); if (postShow != null) getMainHandler().post(postShow); }