Commit 6a51646b authored by Grigory Fedorov's avatar Grigory Fedorov

Chat: empty messages are not shown (space removed)

parent 11498240
...@@ -183,7 +183,13 @@ public class ChatMessageAdapter extends RecyclerView.Adapter<RecyclerView.ViewHo ...@@ -183,7 +183,13 @@ public class ChatMessageAdapter extends RecyclerView.Adapter<RecyclerView.ViewHo
switch (viewType) { switch (viewType) {
case VIEW_TYPE_HINT: case VIEW_TYPE_HINT:
((HintMessage)holder).info.setText(hint); HintMessage hintMessage = (HintMessage) holder;
if (hint == null || hint.trim().isEmpty()) {
(hintMessage).info.setVisibility(View.GONE);
} else {
(hintMessage).info.setText(hint);
(hintMessage).info.setVisibility(View.VISIBLE);
}
break; break;
case VIEW_TYPE_ACTION_MESSAGE: case VIEW_TYPE_ACTION_MESSAGE:
...@@ -194,8 +200,7 @@ public class ChatMessageAdapter extends RecyclerView.Adapter<RecyclerView.ViewHo ...@@ -194,8 +200,7 @@ public class ChatMessageAdapter extends RecyclerView.Adapter<RecyclerView.ViewHo
break; break;
case VIEW_TYPE_INCOMING_MESSAGE: case VIEW_TYPE_INCOMING_MESSAGE:
setUpMessage(messageItem, (Message) holder); setUpIncomingMessage((IncomingMessage) holder, messageItem);
setUpAvatar(messageItem, (IncomingMessage) holder);
break; break;
case VIEW_TYPE_OUTGOING_MESSAGE: case VIEW_TYPE_OUTGOING_MESSAGE:
setUpMessage(messageItem, (Message) holder); setUpMessage(messageItem, (Message) holder);
...@@ -205,6 +210,22 @@ public class ChatMessageAdapter extends RecyclerView.Adapter<RecyclerView.ViewHo ...@@ -205,6 +210,22 @@ public class ChatMessageAdapter extends RecyclerView.Adapter<RecyclerView.ViewHo
} }
private void setUpIncomingMessage(IncomingMessage incomingMessage, MessageItem messageItem) {
setUpMessage(messageItem, incomingMessage);
setUpAvatar(messageItem, incomingMessage);
if (messageItem.getText().trim().isEmpty()) {
incomingMessage.messageBalloon.setVisibility(View.GONE);
incomingMessage.messageTime.setVisibility(View.GONE);
incomingMessage.avatar.setVisibility(View.GONE);
} else {
incomingMessage.messageBalloon.setVisibility(View.VISIBLE);
incomingMessage.messageTime.setVisibility(View.VISIBLE);
}
}
@Override @Override
public int getItemCount() { public int getItemCount() {
return messages.size() + 1; return messages.size() + 1;
...@@ -254,14 +275,7 @@ public class ChatMessageAdapter extends RecyclerView.Adapter<RecyclerView.ViewHo ...@@ -254,14 +275,7 @@ public class ChatMessageAdapter extends RecyclerView.Adapter<RecyclerView.ViewHo
message.messageText.setTextAppearance(context, appearanceStyle); message.messageText.setTextAppearance(context, appearanceStyle);
String text = messageItem.getText().trim(); message.messageText.setText(messageItem.getText().trim());
if (text.isEmpty()) {
message.itemView.setVisibility(View.GONE);
} else {
message.itemView.setVisibility(View.VISIBLE);
message.messageText.setText(text);
}
message.messageBalloon.getBackground().setLevel(AccountManager.getInstance().getColorLevel(account)); message.messageBalloon.getBackground().setLevel(AccountManager.getInstance().getColorLevel(account));
......
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2013, Redsolution LTD. All rights reserved.
This file is part of Xabber project; you can redistribute it and/or
modify it under the terms of the GNU General Public License, Version 3.
Xabber is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License,
along with this program. If not, see http://www.gnu.org/licenses/.
-->
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="1px"
/>
\ No newline at end of file
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