From 06eae476ee7e19029fe1ac28eae75fdcc1d4d1e6 Mon Sep 17 00:00:00 2001 From: Daniel Gultsch Date: Fri, 9 Jan 2015 19:23:26 +0100 Subject: [PATCH] Introduced expert options to control enter-is-send (default == off) --- .../eu/siacs/conversations/ui/ConversationActivity.java | 4 ++++ .../eu/siacs/conversations/ui/ConversationFragment.java | 9 +++++++-- src/main/java/eu/siacs/conversations/ui/EditMessage.java | 9 ++++++--- src/main/res/values/strings.xml | 3 +++ src/main/res/xml/preferences.xml | 7 +++++++ 5 files changed, 27 insertions(+), 5 deletions(-) diff --git a/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java b/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java index ba5b3e59d..a461656e5 100644 --- a/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java +++ b/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java @@ -1058,4 +1058,8 @@ public class ConversationActivity extends XmppActivity public void blockConversation(final Blockable conversation) { xmppConnectionService.sendBlockRequest(conversation); } + + public boolean enterIsSend() { + return getPreferences().getBoolean("enter_is_send",false); + } } diff --git a/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java b/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java index 93a4cc7ef..5eb81e64e 100644 --- a/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java +++ b/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java @@ -316,8 +316,13 @@ public class ConversationFragment extends Fragment { mEditMessage.setOnEnterPressedListener(new OnEnterPressed() { @Override - public void onEnterPressed() { - sendMessage(); + public boolean onEnterPressed() { + if (activity.enterIsSend()) { + sendMessage(); + return true; + } else { + return false; + } } }); diff --git a/src/main/java/eu/siacs/conversations/ui/EditMessage.java b/src/main/java/eu/siacs/conversations/ui/EditMessage.java index f83020506..5090bbf53 100644 --- a/src/main/java/eu/siacs/conversations/ui/EditMessage.java +++ b/src/main/java/eu/siacs/conversations/ui/EditMessage.java @@ -21,9 +21,12 @@ public class EditMessage extends EditText { public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_ENTER) { if (mOnEnterPressed != null) { - mOnEnterPressed.onEnterPressed(); + if (mOnEnterPressed.onEnterPressed()) { + return true; + } else { + return super.onKeyDown(keyCode, event); + } } - return true; } return super.onKeyDown(keyCode, event); } @@ -33,7 +36,7 @@ public class EditMessage extends EditText { } public interface OnEnterPressed { - public void onEnterPressed(); + public boolean onEnterPressed(); } } diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml index 9cb60cf83..31f4dbea3 100644 --- a/src/main/res/values/strings.xml +++ b/src/main/res/values/strings.xml @@ -434,4 +434,7 @@ 2 hours 8 hours Until further notice + Input options + Enter is send + Use enter key to send message diff --git a/src/main/res/xml/preferences.xml b/src/main/res/xml/preferences.xml index 9974f14d4..3f18512b8 100644 --- a/src/main/res/xml/preferences.xml +++ b/src/main/res/xml/preferences.xml @@ -122,6 +122,13 @@ android:summary="@string/pref_enable_legacy_ssl_summary" android:title="@string/pref_enable_legacy_ssl" /> + + +