From a926c27ae7bbe3fdbb2c8b56ac082a8c3cf350b7 Mon Sep 17 00:00:00 2001 From: rapterjet2004 Date: Tue, 23 May 2023 10:54:43 -0500 Subject: [PATCH 1/3] working on issue 3026 Signed-off-by: Julius Linus Signed-off-by: Andy Scherzinger --- .../talk/adapters/messages/IncomingTextMessageViewHolder.kt | 3 ++- .../talk/adapters/messages/OutcomingTextMessageViewHolder.kt | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/adapters/messages/IncomingTextMessageViewHolder.kt b/app/src/main/java/com/nextcloud/talk/adapters/messages/IncomingTextMessageViewHolder.kt index b4b1a6516..413cdcf20 100644 --- a/app/src/main/java/com/nextcloud/talk/adapters/messages/IncomingTextMessageViewHolder.kt +++ b/app/src/main/java/com/nextcloud/talk/adapters/messages/IncomingTextMessageViewHolder.kt @@ -171,6 +171,7 @@ class IncomingTextMessageViewHolder(itemView: View, payload: Any) : } private fun processParentMessage(message: ChatMessage) { + val maxReplyLength = 250 val parentChatMessage = message.parentMessage parentChatMessage!!.activeUser = message.activeUser parentChatMessage.imageUrl?.let { @@ -189,7 +190,7 @@ class IncomingTextMessageViewHolder(itemView: View, payload: Any) : } else { parentChatMessage.actorDisplayName } - binding.messageQuote.quotedMessage.text = parentChatMessage.text + binding.messageQuote.quotedMessage.text = DisplayUtils.ellipsize(parentChatMessage.text, maxReplyLength) if (parentChatMessage.actorId?.equals(message.activeUser!!.userId) == true) { viewThemeUtils.platform.colorViewBackground(binding.messageQuote.quoteColoredView) diff --git a/app/src/main/java/com/nextcloud/talk/adapters/messages/OutcomingTextMessageViewHolder.kt b/app/src/main/java/com/nextcloud/talk/adapters/messages/OutcomingTextMessageViewHolder.kt index f4525fbce..6e6ca9783 100644 --- a/app/src/main/java/com/nextcloud/talk/adapters/messages/OutcomingTextMessageViewHolder.kt +++ b/app/src/main/java/com/nextcloud/talk/adapters/messages/OutcomingTextMessageViewHolder.kt @@ -148,6 +148,7 @@ class OutcomingTextMessageViewHolder(itemView: View) : OutcomingTextMessageViewH } private fun processParentMessage(message: ChatMessage) { + val maxReplyLength = 250 val parentChatMessage = message.parentMessage val textColor = viewThemeUtils.getScheme(binding.messageQuote.quotedMessage.context).onSurfaceVariant parentChatMessage!!.activeUser = message.activeUser @@ -164,7 +165,7 @@ class OutcomingTextMessageViewHolder(itemView: View) : OutcomingTextMessageViewH } binding.messageQuote.quotedMessageAuthor.text = parentChatMessage.actorDisplayName ?: context!!.getText(R.string.nc_nick_guest) - binding.messageQuote.quotedMessage.text = parentChatMessage.text + binding.messageQuote.quotedMessage.text = DisplayUtils.ellipsize(parentChatMessage.text, maxReplyLength) binding.messageQuote.quotedMessageAuthor.setTextColor(textColor) binding.messageQuote.quotedMessage.setTextColor(textColor) From 93da3a9c6569ff8b3741e959294aa92b65c7916c Mon Sep 17 00:00:00 2001 From: rapterjet2004 Date: Tue, 23 May 2023 11:24:33 -0500 Subject: [PATCH 2/3] Making reply length a const Signed-off-by: Julius Linus Signed-off-by: Andy Scherzinger --- .../talk/adapters/messages/IncomingTextMessageViewHolder.kt | 4 ++-- .../talk/adapters/messages/OutcomingTextMessageViewHolder.kt | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/adapters/messages/IncomingTextMessageViewHolder.kt b/app/src/main/java/com/nextcloud/talk/adapters/messages/IncomingTextMessageViewHolder.kt index 413cdcf20..33dcf4f37 100644 --- a/app/src/main/java/com/nextcloud/talk/adapters/messages/IncomingTextMessageViewHolder.kt +++ b/app/src/main/java/com/nextcloud/talk/adapters/messages/IncomingTextMessageViewHolder.kt @@ -171,7 +171,6 @@ class IncomingTextMessageViewHolder(itemView: View, payload: Any) : } private fun processParentMessage(message: ChatMessage) { - val maxReplyLength = 250 val parentChatMessage = message.parentMessage parentChatMessage!!.activeUser = message.activeUser parentChatMessage.imageUrl?.let { @@ -190,7 +189,7 @@ class IncomingTextMessageViewHolder(itemView: View, payload: Any) : } else { parentChatMessage.actorDisplayName } - binding.messageQuote.quotedMessage.text = DisplayUtils.ellipsize(parentChatMessage.text, maxReplyLength) + binding.messageQuote.quotedMessage.text = DisplayUtils.ellipsize(parentChatMessage.text, MAX_REPLY_LENGTH) if (parentChatMessage.actorId?.equals(message.activeUser!!.userId) == true) { viewThemeUtils.platform.colorViewBackground(binding.messageQuote.quoteColoredView) @@ -263,5 +262,6 @@ class IncomingTextMessageViewHolder(itemView: View, payload: Any) : companion object { const val TEXT_SIZE_MULTIPLIER = 2.5 + const val MAX_REPLY_LENGTH = 250 } } diff --git a/app/src/main/java/com/nextcloud/talk/adapters/messages/OutcomingTextMessageViewHolder.kt b/app/src/main/java/com/nextcloud/talk/adapters/messages/OutcomingTextMessageViewHolder.kt index 6e6ca9783..66021b181 100644 --- a/app/src/main/java/com/nextcloud/talk/adapters/messages/OutcomingTextMessageViewHolder.kt +++ b/app/src/main/java/com/nextcloud/talk/adapters/messages/OutcomingTextMessageViewHolder.kt @@ -148,7 +148,6 @@ class OutcomingTextMessageViewHolder(itemView: View) : OutcomingTextMessageViewH } private fun processParentMessage(message: ChatMessage) { - val maxReplyLength = 250 val parentChatMessage = message.parentMessage val textColor = viewThemeUtils.getScheme(binding.messageQuote.quotedMessage.context).onSurfaceVariant parentChatMessage!!.activeUser = message.activeUser @@ -165,7 +164,7 @@ class OutcomingTextMessageViewHolder(itemView: View) : OutcomingTextMessageViewH } binding.messageQuote.quotedMessageAuthor.text = parentChatMessage.actorDisplayName ?: context!!.getText(R.string.nc_nick_guest) - binding.messageQuote.quotedMessage.text = DisplayUtils.ellipsize(parentChatMessage.text, maxReplyLength) + binding.messageQuote.quotedMessage.text = DisplayUtils.ellipsize(parentChatMessage.text, MAX_REPLY_LENGTH) binding.messageQuote.quotedMessageAuthor.setTextColor(textColor) binding.messageQuote.quotedMessage.setTextColor(textColor) @@ -227,5 +226,6 @@ class OutcomingTextMessageViewHolder(itemView: View) : OutcomingTextMessageViewH companion object { const val TEXT_SIZE_MULTIPLIER = 2.5 + const val MAX_REPLY_LENGTH = 250 } } From 72e231098801f9c8c22a677464e3d3a5997ea4fc Mon Sep 17 00:00:00 2001 From: Andy Scherzinger Date: Wed, 24 May 2023 09:52:30 +0200 Subject: [PATCH 3/3] Limit quoted message to max 4 lines Signed-off-by: Andy Scherzinger --- app/src/main/res/layout/item_message_quote.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/src/main/res/layout/item_message_quote.xml b/app/src/main/res/layout/item_message_quote.xml index 07ed0d414..0200d3cb2 100644 --- a/app/src/main/res/layout/item_message_quote.xml +++ b/app/src/main/res/layout/item_message_quote.xml @@ -85,7 +85,9 @@ android:layout_height="wrap_content" android:layout_below="@id/quotedMessageImage" android:layout_alignStart="@id/quotedMessageAuthor" + android:ellipsize="end" android:lineSpacingMultiplier="1.2" + android:maxLines="4" android:textAlignment="viewStart" android:textColor="@color/high_emphasis_text" android:textIsSelectable="false"