From 91726261d1c0ddedeab88bb7e7eedf419690e934 Mon Sep 17 00:00:00 2001 From: sowjanyakch Date: Tue, 7 May 2024 20:51:15 +0200 Subject: [PATCH 1/5] show description in open conversation list Signed-off-by: sowjanyakch --- .../adapters/OpenConversationsAdapter.kt | 1 + .../data/OpenConversation.kt | 3 ++- .../data/OpenConversationsRepositoryImpl.kt | 3 ++- .../layout/activity_open_conversations.xml | 8 ++++---- .../res/layout/rv_item_open_conversation.xml | 20 ++++++++++++++++--- 5 files changed, 26 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/openconversations/adapters/OpenConversationsAdapter.kt b/app/src/main/java/com/nextcloud/talk/openconversations/adapters/OpenConversationsAdapter.kt index 79300cfef..52ab261be 100644 --- a/app/src/main/java/com/nextcloud/talk/openconversations/adapters/OpenConversationsAdapter.kt +++ b/app/src/main/java/com/nextcloud/talk/openconversations/adapters/OpenConversationsAdapter.kt @@ -36,6 +36,7 @@ class OpenConversationsAdapter(val user: User, private val onClick: (OpenConvers fun bindItem(conversation: OpenConversation) { currentConversation = conversation itemBinding.nameText.text = conversation.displayName + itemBinding.descriptionText.text = conversation.description // load avatar from server when https://github.com/nextcloud/spreed/issues/9600 is solved // itemBinding.avatarView.loadUserAvatar(user, conversation.displayName, true, false) diff --git a/app/src/main/java/com/nextcloud/talk/openconversations/data/OpenConversation.kt b/app/src/main/java/com/nextcloud/talk/openconversations/data/OpenConversation.kt index e682fa016..33918185d 100644 --- a/app/src/main/java/com/nextcloud/talk/openconversations/data/OpenConversation.kt +++ b/app/src/main/java/com/nextcloud/talk/openconversations/data/OpenConversation.kt @@ -9,5 +9,6 @@ package com.nextcloud.talk.openconversations.data data class OpenConversation( var roomId: String, var roomToken: String, - var displayName: String + var displayName: String, + var description: String? ) diff --git a/app/src/main/java/com/nextcloud/talk/openconversations/data/OpenConversationsRepositoryImpl.kt b/app/src/main/java/com/nextcloud/talk/openconversations/data/OpenConversationsRepositoryImpl.kt index b86b86700..156d0f4e5 100644 --- a/app/src/main/java/com/nextcloud/talk/openconversations/data/OpenConversationsRepositoryImpl.kt +++ b/app/src/main/java/com/nextcloud/talk/openconversations/data/OpenConversationsRepositoryImpl.kt @@ -34,7 +34,8 @@ class OpenConversationsRepositoryImpl(private val ncApi: NcApi, currentUserProvi OpenConversation( conversation.roomId!!, conversation.token!!, - conversation.name!! + conversation.name!!, + conversation.description ?: "" ) } ) diff --git a/app/src/main/res/layout/activity_open_conversations.xml b/app/src/main/res/layout/activity_open_conversations.xml index f3d18364c..a13e48734 100644 --- a/app/src/main/res/layout/activity_open_conversations.xml +++ b/app/src/main/res/layout/activity_open_conversations.xml @@ -30,10 +30,10 @@ + android:id="@+id/open_conversations_recycler_view" + android:layout_width="match_parent" + android:layout_height="match_parent" + app:layoutManager="LinearLayoutManager" /> + + From f0670f9f15c3cf62fb830a024242a273e96d5288 Mon Sep 17 00:00:00 2001 From: sowjanyakch Date: Wed, 8 May 2024 17:31:49 +0200 Subject: [PATCH 2/5] update description for open and group conversations in the chatActivity Signed-off-by: sowjanyakch --- .../com/nextcloud/talk/chat/ChatActivity.kt | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt b/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt index 2bcd67874..1d0b7398f 100644 --- a/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt +++ b/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt @@ -182,6 +182,7 @@ import com.nextcloud.talk.ui.recyclerview.MessageSwipeCallback import com.nextcloud.talk.utils.ApiUtils import com.nextcloud.talk.utils.AudioUtils import com.nextcloud.talk.utils.CapabilitiesUtil +import com.nextcloud.talk.utils.CharPolicy import com.nextcloud.talk.utils.ContactUtils import com.nextcloud.talk.utils.ConversationUtils import com.nextcloud.talk.utils.DateConstants @@ -190,7 +191,6 @@ import com.nextcloud.talk.utils.DisplayUtils import com.nextcloud.talk.utils.FileUtils import com.nextcloud.talk.utils.FileViewerUtils import com.nextcloud.talk.utils.ImageEmojiEditText -import com.nextcloud.talk.utils.CharPolicy import com.nextcloud.talk.utils.Mimetype import com.nextcloud.talk.utils.NotificationUtils import com.nextcloud.talk.utils.ParticipantPermissions @@ -3493,7 +3493,20 @@ class ChatActivity : statusMessageView.visibility = View.GONE } } else { - statusMessageView.visibility = View.GONE + var descriptionMessage = "" + if (currentConversation?.type == ConversationType.ROOM_GROUP_CALL || + currentConversation?.type == ConversationType.ROOM_PUBLIC_CALL + ) { + descriptionMessage += currentConversation?.description + + if (descriptionMessage.isNotEmpty()) { + viewThemeUtils.platform.colorTextView(statusMessageView, ColorRole.ON_SURFACE) + statusMessageView.text = descriptionMessage + statusMessageView.visibility = View.VISIBLE + } else { + statusMessageView.visibility = View.GONE + } + } } } From ed5a12b7daa2d9668112f2795e8235611a1bcfba Mon Sep 17 00:00:00 2001 From: sowjanyakch Date: Fri, 10 May 2024 11:18:02 +0200 Subject: [PATCH 3/5] Refactor code Signed-off-by: sowjanyakch --- .../com/nextcloud/talk/chat/ChatActivity.kt | 33 ++++++++----------- .../res/layout/rv_item_open_conversation.xml | 6 ++-- 2 files changed, 17 insertions(+), 22 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt b/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt index 1d0b7398f..9e59da0c1 100644 --- a/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt +++ b/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt @@ -3474,42 +3474,37 @@ class ChatActivity : "" } - val statusMessageView = binding.chatToolbar.findViewById(R.id.chat_toolbar_status_message) if (currentConversation?.type == ConversationType.ROOM_TYPE_ONE_TO_ONE_CALL) { var statusMessage = "" if (currentConversation?.statusIcon != null) { statusMessage += currentConversation?.statusIcon } - if (currentConversation?.statusMessage != null) { statusMessage += currentConversation?.statusMessage } - - if (statusMessage.isNotEmpty()) { - viewThemeUtils.platform.colorTextView(statusMessageView, ColorRole.ON_SURFACE) - statusMessageView.text = statusMessage - statusMessageView.visibility = View.VISIBLE - } else { - statusMessageView.visibility = View.GONE - } + statusMessageViewContents(statusMessage) } else { - var descriptionMessage = "" if (currentConversation?.type == ConversationType.ROOM_GROUP_CALL || currentConversation?.type == ConversationType.ROOM_PUBLIC_CALL ) { + var descriptionMessage = "" descriptionMessage += currentConversation?.description - - if (descriptionMessage.isNotEmpty()) { - viewThemeUtils.platform.colorTextView(statusMessageView, ColorRole.ON_SURFACE) - statusMessageView.text = descriptionMessage - statusMessageView.visibility = View.VISIBLE - } else { - statusMessageView.visibility = View.GONE - } + statusMessageViewContents(descriptionMessage) } } } + private fun statusMessageViewContents(statusMessageContent: String) { + val statusMessageView = binding.chatToolbar.findViewById(R.id.chat_toolbar_status_message) + if (statusMessageContent.isNotEmpty()) { + viewThemeUtils.platform.colorTextView(statusMessageView, ColorRole.ON_SURFACE) + statusMessageView.text = statusMessageContent + statusMessageView.visibility = View.VISIBLE + } else { + statusMessageView.visibility = View.GONE + } + } + public override fun onDestroy() { super.onDestroy() logConversationInfos("onDestroy") diff --git a/app/src/main/res/layout/rv_item_open_conversation.xml b/app/src/main/res/layout/rv_item_open_conversation.xml index e42a1d2b5..455372ec7 100644 --- a/app/src/main/res/layout/rv_item_open_conversation.xml +++ b/app/src/main/res/layout/rv_item_open_conversation.xml @@ -40,13 +40,13 @@ android:lines="1" android:textAlignment="viewStart" android:textColor="@color/low_emphasis_text" - android:textSize="14sp" + android:textSize="13sp" tools:text="Jane Doe" /> From a2739b506c4cb88e97bba3416cc5fcb3b83eb8b5 Mon Sep 17 00:00:00 2001 From: sowjanyakch Date: Mon, 13 May 2024 22:50:19 +0200 Subject: [PATCH 4/5] created dimensions Signed-off-by: sowjanyakch --- app/src/main/res/layout/rv_item_open_conversation.xml | 8 ++++---- app/src/main/res/values/dimens.xml | 1 + 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/app/src/main/res/layout/rv_item_open_conversation.xml b/app/src/main/res/layout/rv_item_open_conversation.xml index 455372ec7..31afe2bd1 100644 --- a/app/src/main/res/layout/rv_item_open_conversation.xml +++ b/app/src/main/res/layout/rv_item_open_conversation.xml @@ -22,7 +22,7 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_toEndOf="@id/avatar_view" - android:layout_marginTop="4dp" + android:layout_marginTop="@dimen/standard_quarter_margin" android:ellipsize="end" android:lines="1" android:textAlignment="viewStart" @@ -35,7 +35,7 @@ android:layout_height="wrap_content" android:layout_toEndOf="@id/avatar_view" android:layout_below= "@id/name_text" - android:paddingTop="4dp" + android:paddingTop="@dimen/standard_quarter_margin" android:ellipsize="end" android:lines="1" android:textAlignment="viewStart" @@ -45,8 +45,8 @@ diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml index bfc6aa91e..3e7f74171 100644 --- a/app/src/main/res/values/dimens.xml +++ b/app/src/main/res/values/dimens.xml @@ -23,6 +23,7 @@ 40dp 30dp 96dp + 52dp 14sp 20dp From 59966998125c3358d26714674a10ff00a438d339 Mon Sep 17 00:00:00 2001 From: sowjanyakch Date: Tue, 14 May 2024 10:41:25 +0200 Subject: [PATCH 5/5] Align display name of conversation to center when description is empty. Signed-off-by: sowjanyakch --- .../adapters/OpenConversationsAdapter.kt | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/nextcloud/talk/openconversations/adapters/OpenConversationsAdapter.kt b/app/src/main/java/com/nextcloud/talk/openconversations/adapters/OpenConversationsAdapter.kt index 52ab261be..645b49c5f 100644 --- a/app/src/main/java/com/nextcloud/talk/openconversations/adapters/OpenConversationsAdapter.kt +++ b/app/src/main/java/com/nextcloud/talk/openconversations/adapters/OpenConversationsAdapter.kt @@ -7,7 +7,9 @@ package com.nextcloud.talk.openconversations.adapters import android.view.LayoutInflater +import android.view.View import android.view.ViewGroup +import android.widget.RelativeLayout import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.ListAdapter import androidx.recyclerview.widget.RecyclerView @@ -34,9 +36,17 @@ class OpenConversationsAdapter(val user: User, private val onClick: (OpenConvers } fun bindItem(conversation: OpenConversation) { + val nameTextLayoutParams: RelativeLayout.LayoutParams = itemBinding.nameText.layoutParams as + RelativeLayout.LayoutParams + currentConversation = conversation itemBinding.nameText.text = conversation.displayName - itemBinding.descriptionText.text = conversation.description + if (conversation.description == "") { + itemBinding.descriptionText.visibility = View.GONE + nameTextLayoutParams.addRule(RelativeLayout.CENTER_VERTICAL) + } else { + itemBinding.descriptionText.text = conversation.description + } // load avatar from server when https://github.com/nextcloud/spreed/issues/9600 is solved // itemBinding.avatarView.loadUserAvatar(user, conversation.displayName, true, false)