aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/eu/siacs/conversations/ui
diff options
context:
space:
mode:
authorChristian S. <kriztan@users.noreply.github.com>2015-09-05 23:27:49 +0200
committerChristian S. <kriztan@users.noreply.github.com>2015-09-05 23:27:49 +0200
commitfe730fca1b06a2c02b5161716f22fdf13286408e (patch)
tree5d00e41673e6b7d6679b0bc5ec7b700296182929 /src/main/java/eu/siacs/conversations/ui
parent0f03097572e8c33685f167edc7da5bbf174798a9 (diff)
parent2c4a6b09127c8e6776020cd90c782ab950a70324 (diff)
Merge pull request #34 from siacs/master
Diffstat (limited to 'src/main/java/eu/siacs/conversations/ui')
-rw-r--r--src/main/java/eu/siacs/conversations/ui/ConversationActivity.java1
-rw-r--r--src/main/java/eu/siacs/conversations/ui/ConversationFragment.java20
-rw-r--r--src/main/java/eu/siacs/conversations/ui/EditMessage.java2
3 files changed, 14 insertions, 9 deletions
diff --git a/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java b/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java
index aaa46825d..071db609d 100644
--- a/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java
+++ b/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java
@@ -988,6 +988,7 @@ public class ConversationActivity extends XmppActivity
} else {
this.mConversationFragment.messageListAdapter.updatePreferences();
this.mConversationFragment.messagesView.invalidateViews();
+ this.mConversationFragment.setupIme();
}
if(!forbidProcessingPendings) {
diff --git a/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java b/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java
index 3adbc8431..f25e338b4 100644
--- a/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java
+++ b/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java
@@ -232,7 +232,9 @@ public class ConversationFragment extends Fragment implements EditMessage.Keyboa
if (actionId == EditorInfo.IME_ACTION_SEND) {
InputMethodManager imm = (InputMethodManager) v.getContext()
.getSystemService(Context.INPUT_METHOD_SERVICE);
- imm.hideSoftInputFromWindow(v.getWindowToken(), 0);
+ if (imm.isFullscreenMode()) {
+ imm.hideSoftInputFromWindow(v.getWindowToken(), 0);
+ }
sendMessage();
return true;
} else {
@@ -345,21 +347,24 @@ public class ConversationFragment extends Fragment implements EditMessage.Keyboa
}
}
- private void setupIme() {
- if (((ConversationActivity) getActivity()).usingEnterKey()) {
+ public void setupIme() {
+ if (activity.usingEnterKey() && activity.enterIsSend()) {
+ mEditMessage.setInputType(mEditMessage.getInputType() & (~InputType.TYPE_TEXT_FLAG_MULTI_LINE));
+ mEditMessage.setInputType(mEditMessage.getInputType() & (~InputType.TYPE_TEXT_VARIATION_SHORT_MESSAGE));
+ } else if (activity.usingEnterKey()) {
+ mEditMessage.setInputType(mEditMessage.getInputType() | InputType.TYPE_TEXT_FLAG_MULTI_LINE);
mEditMessage.setInputType(mEditMessage.getInputType() & (~InputType.TYPE_TEXT_VARIATION_SHORT_MESSAGE));
} else {
+ mEditMessage.setInputType(mEditMessage.getInputType() | InputType.TYPE_TEXT_FLAG_MULTI_LINE);
mEditMessage.setInputType(mEditMessage.getInputType() | InputType.TYPE_TEXT_VARIATION_SHORT_MESSAGE);
}
}
@Override
- public View onCreateView(final LayoutInflater inflater,
- ViewGroup container, Bundle savedInstanceState) {
+ public View onCreateView(final LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
final View view = inflater.inflate(R.layout.fragment_conversation, container, false);
view.setOnClickListener(null);
mEditMessage = (EditMessage) view.findViewById(R.id.textinput);
- setupIme();
mEditMessage.setOnClickListener(new OnClickListener() {
@Override
@@ -639,9 +644,8 @@ public class ConversationFragment extends Fragment implements EditMessage.Keyboa
if (conversation == null) {
return;
}
-
this.activity = (ConversationActivity) getActivity();
-
+ setupIme();
if (this.conversation != null) {
final String msg = mEditMessage.getText().toString();
this.conversation.setNextMessage(msg);
diff --git a/src/main/java/eu/siacs/conversations/ui/EditMessage.java b/src/main/java/eu/siacs/conversations/ui/EditMessage.java
index a58cf2b8b..72975bb76 100644
--- a/src/main/java/eu/siacs/conversations/ui/EditMessage.java
+++ b/src/main/java/eu/siacs/conversations/ui/EditMessage.java
@@ -36,7 +36,7 @@ public class EditMessage extends EditText {
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
- if (keyCode == KeyEvent.KEYCODE_ENTER) {
+ if (keyCode == KeyEvent.KEYCODE_ENTER && !event.isShiftPressed()) {
if (keyboardListener != null && keyboardListener.onEnterPressed()) {
return true;
}