From af5de51a17c372eb983a9bf4b7255d55054466d7 Mon Sep 17 00:00:00 2001 From: gallonyin Date: Mon, 30 Jan 2023 00:00:09 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E6=96=87=E4=BB=B6=E5=92=8C=E8=A7=86?= =?UTF-8?q?=E9=A2=91=E8=BD=AC=E5=8F=91=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yameida/worktool/utils/WeworkTextUtil.kt | 38 ++++++++++++++----- 1 file changed, 28 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/org/yameida/worktool/utils/WeworkTextUtil.kt b/app/src/main/java/org/yameida/worktool/utils/WeworkTextUtil.kt index 19ab38e..3f87438 100644 --- a/app/src/main/java/org/yameida/worktool/utils/WeworkTextUtil.kt +++ b/app/src/main/java/org/yameida/worktool/utils/WeworkTextUtil.kt @@ -340,13 +340,22 @@ object WeworkTextUtil { if (nameList.isEmpty()) { val backNode = getMessageListNode(item, WeworkMessageBean.ROOM_TYPE_INTERNAL_CONTACT) if (backNode != null) { - val textNode = AccessibilityUtil.findOnceByText(backNode, replyContent) - if (textNode != null && replyContent.isNotEmpty()) { + if ((replyTextType == WeworkMessageBean.TEXT_TYPE_IMAGE) + && (replyTextType == getTextTypeFromItem(item))) { LogUtils.d("nameList: $nameList\nreplyContent: $replyContent") return longClickMessageItem(item, WeworkMessageBean.ROOM_TYPE_INTERNAL_CONTACT, key) - } else if ((replyTextType == WeworkMessageBean.TEXT_TYPE_IMAGE - || replyTextType == WeworkMessageBean.TEXT_TYPE_VIDEO) - && (replyTextType == getTextTypeFromItem(item))) { + } + if ((replyTextType == WeworkMessageBean.TEXT_TYPE_FILE || replyTextType == WeworkMessageBean.TEXT_TYPE_VIDEO) + && replyContent.contains("###")) { + val replyContentList = replyContent.split("###") + if (AccessibilityUtil.findOnceByText(backNode, replyContentList[0]) != null + && AccessibilityUtil.findOnceByText(backNode, replyContentList[1]) != null) { + LogUtils.d("nameList: $nameList\nreplyContent: $replyContent") + return longClickMessageItem(item, WeworkMessageBean.ROOM_TYPE_INTERNAL_GROUP, key) + } + } + val textNode = AccessibilityUtil.findOnceByText(backNode, replyContent) + if (textNode != null && replyContent.isNotEmpty()) { LogUtils.d("nameList: $nameList\nreplyContent: $replyContent") return longClickMessageItem(item, WeworkMessageBean.ROOM_TYPE_INTERNAL_CONTACT, key) } @@ -356,13 +365,22 @@ object WeworkTextUtil { if (name == replyNick) { val backNode = getMessageListNode(item, WeworkMessageBean.ROOM_TYPE_INTERNAL_GROUP) if (backNode != null) { - val textNode = AccessibilityUtil.findOnceByText(backNode, replyContent) - if (textNode != null && replyContent.isNotEmpty()) { + if ((replyTextType == WeworkMessageBean.TEXT_TYPE_IMAGE) + && (replyTextType == getTextTypeFromItem(item))) { LogUtils.d("nameList: $nameList\nreplyContent: $replyContent") return longClickMessageItem(item, WeworkMessageBean.ROOM_TYPE_INTERNAL_GROUP, key) - } else if ((replyTextType == WeworkMessageBean.TEXT_TYPE_IMAGE - || replyTextType == WeworkMessageBean.TEXT_TYPE_VIDEO) - && (replyTextType == getTextTypeFromItem(item))) { + } + if ((replyTextType == WeworkMessageBean.TEXT_TYPE_FILE || replyTextType == WeworkMessageBean.TEXT_TYPE_VIDEO) + && replyContent.contains("###")) { + val replyContentList = replyContent.split("###") + if (AccessibilityUtil.findOnceByText(backNode, replyContentList[0]) != null + && AccessibilityUtil.findOnceByText(backNode, replyContentList[1]) != null) { + LogUtils.d("nameList: $nameList\nreplyContent: $replyContent") + return longClickMessageItem(item, WeworkMessageBean.ROOM_TYPE_INTERNAL_GROUP, key) + } + } + val textNode = AccessibilityUtil.findOnceByText(backNode, replyContent) + if (textNode != null && replyContent.isNotEmpty()) { LogUtils.d("nameList: $nameList\nreplyContent: $replyContent") return longClickMessageItem(item, WeworkMessageBean.ROOM_TYPE_INTERNAL_GROUP, key) }