From 566effbc503c3698f34de1f660849932b6532865 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Mon, 23 Oct 2017 12:05:34 +0200 Subject: [PATCH] Added event layout to chat bubble --- res/drawable-xhdpi/event_gray.png | Bin 0 -> 176 bytes res/drawable/chat_room_group_infos.xml | 8 ++++ res/layout/chat.xml | 10 ++++ res/layout/chat_bubble.xml | 44 ++++++++++++++++-- res/values/strings.xml | 1 + .../org/linphone/chat/ChatFragment.java | 11 ++++- .../org/linphone/chat/GroupChatFragment.java | 9 ++++ 7 files changed, 77 insertions(+), 6 deletions(-) create mode 100644 res/drawable-xhdpi/event_gray.png create mode 100644 res/drawable/chat_room_group_infos.xml diff --git a/res/drawable-xhdpi/event_gray.png b/res/drawable-xhdpi/event_gray.png new file mode 100644 index 0000000000000000000000000000000000000000..3c1ba6e96daa1200fa9160cc3c983735f19191e1 GIT binary patch literal 176 zcmeAS@N?(olHy`uVBq!ia0vp^AT|>R8<0#)^t}M2*pj^6T^Rm@;DWu&Cj&(|3p^r= z85p>QL70(Y)*K0-AbW|YuPggQE^$s1w$oY_zCa<_%#er@=ltB<)VvZPmw~~#C^fMp zHASI3vm`^o-P1Q9MK6^dC@$jZ;uyklJ=vz{$%%S4B?e*Ui9mbHnf)u}CBr}(Jzf1= J);T3K0RTMsDO~^n literal 0 HcmV?d00001 diff --git a/res/drawable/chat_room_group_infos.xml b/res/drawable/chat_room_group_infos.xml new file mode 100644 index 000000000..018bdd84d --- /dev/null +++ b/res/drawable/chat_room_group_infos.xml @@ -0,0 +1,8 @@ + + + + + + diff --git a/res/layout/chat.xml b/res/layout/chat.xml index 1077f67a2..be9cfb442 100644 --- a/res/layout/chat.xml +++ b/res/layout/chat.xml @@ -42,6 +42,16 @@ android:layout_weight="0.2" android:padding="15dp"/> + + - + android:orientation="horizontal" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:gravity="center_vertical"> - + + + + + + + + + + + Linphone Service Linphone Notification Group chat room subject + Group chat room infos diff --git a/src/android/org/linphone/chat/ChatFragment.java b/src/android/org/linphone/chat/ChatFragment.java index 593e4ed2e..a33604a6e 100644 --- a/src/android/org/linphone/chat/ChatFragment.java +++ b/src/android/org/linphone/chat/ChatFragment.java @@ -133,9 +133,9 @@ public class ChatFragment extends Fragment implements OnClickListener, ChatMessa private EditText message; private ImageView edit, selectAll, deselectAll, startCall, delete, sendImage, sendMessage, cancel; private TextView contactName, remoteComposing; - private ImageView back, backToCall; + private ImageView back, backToCall, infos; private EditText searchContactField; - private LinearLayout topBar, editList; + private LinearLayout topBar, editList, event; private SearchContactsListAdapter searchAdapter; private ListView messagesList, resultContactsSearch; private LayoutInflater inflater; @@ -211,6 +211,9 @@ public class ChatFragment extends Fragment implements OnClickListener, ChatMessa startCall = (ImageView) view.findViewById(R.id.start_call); startCall.setOnClickListener(this); + infos = view.findViewById(R.id.group_infos); + infos.setVisibility(View.GONE); + backToCall = (ImageView) view.findViewById(R.id.back_to_call); backToCall.setOnClickListener(this); @@ -1262,6 +1265,7 @@ public class ChatFragment extends Fragment implements OnClickListener, ChatMessa class ChatMessageAdapter extends BaseAdapter { private class ViewHolder implements ChatMessageListener { public int id; + public LinearLayout eventLayout; public RelativeLayout bubbleLayout; public CheckBox delete; public LinearLayout background; @@ -1283,6 +1287,8 @@ public class ChatFragment extends Fragment implements OnClickListener, ChatMessa public ViewHolder(View view) { id = view.getId(); + + eventLayout = (LinearLayout) view.findViewById(R.id.event); bubbleLayout = (RelativeLayout) view.findViewById(R.id.bubble); delete = (CheckBox) view.findViewById(R.id.delete_message); background = (LinearLayout) view.findViewById(R.id.background); @@ -1421,6 +1427,7 @@ public class ChatFragment extends Fragment implements OnClickListener, ChatMessa String externalBodyUrl = message.getExternalBodyUrl(); Content fileTransferContent = message.getFileTransferInformation(); + holder.eventLayout.setVisibility(View.GONE); holder.delete.setVisibility(View.GONE); holder.messageText.setVisibility(View.GONE); holder.messageImage.setVisibility(View.GONE); diff --git a/src/android/org/linphone/chat/GroupChatFragment.java b/src/android/org/linphone/chat/GroupChatFragment.java index 3ffc96503..136f03f16 100644 --- a/src/android/org/linphone/chat/GroupChatFragment.java +++ b/src/android/org/linphone/chat/GroupChatFragment.java @@ -5,6 +5,7 @@ import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import android.widget.ImageView; import org.linphone.R; @@ -28,6 +29,8 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ public class GroupChatFragment extends Fragment implements View.OnClickListener { + private ImageView call, infos; + private LayoutInflater mInflater; @Override @@ -35,6 +38,12 @@ public class GroupChatFragment extends Fragment implements View.OnClickListener mInflater = inflater; View view = inflater.inflate(R.layout.chat, container, false); + call = view.findViewById(R.id.start_call); + call.setVisibility(View.GONE); + + infos = view.findViewById(R.id.group_infos); + infos.setVisibility(View.VISIBLE); + return view; }