From 2e29088d656d6b949dfdbed6c1922c8d14f80184 Mon Sep 17 00:00:00 2001 From: Vavassor Date: Tue, 20 Jun 2017 16:57:04 -0400 Subject: [PATCH] Fixes cursor being placed after a media link when it is added in the composer. Also, adjusts a tinting error in the composer buttons. --- .../com/keylesspalace/tusky/ComposeActivity.java | 15 +++++++++++---- app/src/main/res/values/colors.xml | 4 ++-- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/com/keylesspalace/tusky/ComposeActivity.java b/app/src/main/java/com/keylesspalace/tusky/ComposeActivity.java index 1e34124ea..88f56f4c6 100644 --- a/app/src/main/java/com/keylesspalace/tusky/ComposeActivity.java +++ b/app/src/main/java/com/keylesspalace/tusky/ComposeActivity.java @@ -682,7 +682,7 @@ public class ComposeActivity extends BaseActivity implements ComposeOptionsFragm mediaIds.add(item.id); } - mastodonAPI.createStatus(content, inReplyToId, spoilerText, visibility, sensitive, mediaIds).enqueue(new Callback() { + Callback callback = new Callback() { @Override public void onResponse(Call call, Response response) { if (response.isSuccessful()) { @@ -696,11 +696,14 @@ public class ComposeActivity extends BaseActivity implements ComposeOptionsFragm public void onFailure(Call call, Throwable t) { onSendFailure(); } - }); + }; + mastodonAPI.createStatus(content, inReplyToId, spoilerText, visibility, sensitive, mediaIds) + .enqueue(callback); } private void onSendSuccess() { - Snackbar bar = Snackbar.make(findViewById(R.id.activity_compose), getString(R.string.confirmation_send), Snackbar.LENGTH_SHORT); + Snackbar bar = Snackbar.make(findViewById(R.id.activity_compose), + getString(R.string.confirmation_send), Snackbar.LENGTH_SHORT); bar.show(); setResult(COMPOSE_SUCCESS); finish(); @@ -1059,8 +1062,12 @@ public class ComposeActivity extends BaseActivity implements ComposeOptionsFragm SpannableStringBuilder builder = new SpannableStringBuilder(); builder.append(' '); builder.append(media.textUrl); - builder.setSpan(item.uploadUrl, 0, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); + builder.setSpan(item.uploadUrl, 1, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); + int cursorStart = textEditor.getSelectionStart(); textEditor.append(builder); + if (cursorStart == textEditor.getText().length()) { + textEditor.setSelection(cursorStart); + } waitForMediaLatch.countDown(); } diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 093a0d1cd..1a01b4fe6 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -32,7 +32,7 @@ #4C534B #FFFFFF #000000 - #FFFFFF + #d9e1e8 #8F8F8F #AFBFCF #000000 @@ -66,7 +66,7 @@ #9F9F9F #DE000000 #EFEFEF - #DE000000 + #4f4f4f #8F8F8F #2F5F6F #EFEFEF