Commit 693dea77 authored by Lucio Maciel's avatar Lucio Maciel Committed by GitHub

Merge pull request #435 from filipedelimabrito/iss417

[IMPROVEMENT] Prevents keyboard hiding after typing a message.
parents 0103fdb6 37a4b500
...@@ -20,7 +20,6 @@ import android.support.v7.app.AlertDialog; ...@@ -20,7 +20,6 @@ import android.support.v7.app.AlertDialog;
import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView; import android.support.v7.widget.RecyclerView;
import android.view.View; import android.view.View;
import android.view.ViewGroup;
import chat.rocket.core.models.User; import chat.rocket.core.models.User;
import java.lang.reflect.Field; import java.lang.reflect.Field;
...@@ -327,7 +326,7 @@ public class RoomFragment extends AbstractChatRoomFragment implements ...@@ -327,7 +326,7 @@ public class RoomFragment extends AbstractChatRoomFragment implements
} }
private boolean closeSideMenuIfNeeded() { private boolean closeSideMenuIfNeeded() {
DrawerLayout drawerLayout = (DrawerLayout) rootView.findViewById(R.id.drawer_layout); DrawerLayout drawerLayout = rootView.findViewById(R.id.drawer_layout);
if (drawerLayout != null && drawerLayout.isDrawerOpen(GravityCompat.END)) { if (drawerLayout != null && drawerLayout.isDrawerOpen(GravityCompat.END)) {
drawerLayout.closeDrawer(GravityCompat.END); drawerLayout.closeDrawer(GravityCompat.END);
return true; return true;
...@@ -336,12 +335,12 @@ public class RoomFragment extends AbstractChatRoomFragment implements ...@@ -336,12 +335,12 @@ public class RoomFragment extends AbstractChatRoomFragment implements
} }
private void setupMessageComposer() { private void setupMessageComposer() {
final MessageFormLayout messageFormLayout = (MessageFormLayout) rootView.findViewById(R.id.messageComposer); final MessageFormLayout messageFormLayout = rootView.findViewById(R.id.messageComposer);
messageFormManager = new MessageFormManager(messageFormLayout, this::showExtraActionSelectionDialog); messageFormManager = new MessageFormManager(messageFormLayout, this::showExtraActionSelectionDialog);
messageFormManager.setSendMessageCallback(this::sendMessage); messageFormManager.setSendMessageCallback(this::sendMessage);
messageFormLayout.setEditTextCommitContentListener(this::onCommitContent); messageFormLayout.setEditTextCommitContentListener(this::onCommitContent);
autocompleteManager = new AutocompleteManager((ViewGroup) rootView.findViewById(R.id.messageListRelativeLayout)); autocompleteManager = new AutocompleteManager(rootView.findViewById(R.id.messageListRelativeLayout));
autocompleteManager.registerSource( autocompleteManager.registerSource(
new ChannelSource( new ChannelSource(
......
...@@ -3,14 +3,13 @@ package chat.rocket.android.layouthelper.chatroom; ...@@ -3,14 +3,13 @@ package chat.rocket.android.layouthelper.chatroom;
import chat.rocket.android.widget.message.MessageFormLayout; import chat.rocket.android.widget.message.MessageFormLayout;
/** /**
* handling MessageForm. * Handles MessageForm.
*/ */
public class MessageFormManager { public class MessageFormManager {
private final MessageFormLayout messageFormLayout; private final MessageFormLayout messageFormLayout;
private SendMessageCallback sendMessageCallback; private SendMessageCallback sendMessageCallback;
public MessageFormManager(MessageFormLayout messageFormLayout, public MessageFormManager(MessageFormLayout messageFormLayout, MessageFormLayout.ExtraActionSelectionClickListener callback) {
MessageFormLayout.ExtraActionSelectionClickListener callback) {
this.messageFormLayout = messageFormLayout; this.messageFormLayout = messageFormLayout;
init(callback); init(callback);
} }
...@@ -24,13 +23,8 @@ public class MessageFormManager { ...@@ -24,13 +23,8 @@ public class MessageFormManager {
this.sendMessageCallback = sendMessageCallback; this.sendMessageCallback = sendMessageCallback;
} }
public void clearComposingText() {
messageFormLayout.setText("");
}
public void onMessageSend() { public void onMessageSend() {
clearComposingText(); clearComposingText();
messageFormLayout.setEnabled(true);
} }
public void setEditMessage(String message) { public void setEditMessage(String message) {
...@@ -38,12 +32,14 @@ public class MessageFormManager { ...@@ -38,12 +32,14 @@ public class MessageFormManager {
messageFormLayout.setText(message); messageFormLayout.setText(message);
} }
public void clearComposingText() {
messageFormLayout.setText("");
}
private void sendMessage(String message) { private void sendMessage(String message) {
if (sendMessageCallback == null) { if (sendMessageCallback == null) {
return; return;
} }
messageFormLayout.setEnabled(false);
sendMessageCallback.onSubmitText(message); sendMessageCallback.onSubmitText(message);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment