From 9482641c386350dd7fd9f33911b819b17fa9b930 Mon Sep 17 00:00:00 2001 From: whitechi73 Date: Sun, 28 Jan 2024 22:38:54 +0800 Subject: [PATCH] `Shamrock`: fix #213 --- .../msg/convert/MessageElemConverter.kt | 30 ++++++++++--------- .../shamrock/xposed/hooks/IpcService.kt | 2 +- 2 files changed, 17 insertions(+), 15 deletions(-) diff --git a/xposed/src/main/java/moe/fuqiuluo/qqinterface/servlet/msg/convert/MessageElemConverter.kt b/xposed/src/main/java/moe/fuqiuluo/qqinterface/servlet/msg/convert/MessageElemConverter.kt index c23edf0..bacf6c0 100644 --- a/xposed/src/main/java/moe/fuqiuluo/qqinterface/servlet/msg/convert/MessageElemConverter.kt +++ b/xposed/src/main/java/moe/fuqiuluo/qqinterface/servlet/msg/convert/MessageElemConverter.kt @@ -18,7 +18,7 @@ internal sealed class MessageElemConverter: IMessageConvert { /** * 文本 / 艾特 消息转换消息段 */ - object TextConverter: MessageElemConverter() { + data object TextConverter: MessageElemConverter() { override suspend fun convert(chatType: Int, peerId: String, element: MsgElement): MessageSegment { val text = element.textElement return if (text.atType != MsgConstant.ATTYPEUNKNOWN) { @@ -42,7 +42,7 @@ internal sealed class MessageElemConverter: IMessageConvert { /** * 小表情 / 戳一戳 消息转换消息段 */ - object FaceConverter: MessageElemConverter() { + data object FaceConverter: MessageElemConverter() { override suspend fun convert(chatType: Int, peerId: String, element: MsgElement): MessageSegment { val face = element.faceElement if (face.faceType == 5) { @@ -97,7 +97,7 @@ internal sealed class MessageElemConverter: IMessageConvert { /** * 图片消息转换消息段 */ - object ImageConverter: MessageElemConverter() { + data object ImageConverter: MessageElemConverter() { override suspend fun convert( chatType: Int, peerId: String, @@ -121,7 +121,9 @@ internal sealed class MessageElemConverter: IMessageConvert { MsgConstant.KCHATTYPEGROUP -> RichProtoSvc.getGroupPicDownUrl(md5) MsgConstant.KCHATTYPEC2C -> RichProtoSvc.getC2CPicDownUrl(md5) else -> unknownChatType(chatType) - } + }, + "subType" to image.picSubType, + "type" to if (image.isFlashPic) "flash" else "show" ) ) } @@ -130,7 +132,7 @@ internal sealed class MessageElemConverter: IMessageConvert { /** * 语音消息转换消息段 */ - object VoiceConverter: MessageElemConverter() { + data object VoiceConverter: MessageElemConverter() { override suspend fun convert( chatType: Int, peerId: String, @@ -166,7 +168,7 @@ internal sealed class MessageElemConverter: IMessageConvert { /** * 视频消息转换消息段 */ - object VideoConverter: MessageElemConverter() { + data object VideoConverter: MessageElemConverter() { override suspend fun convert( chatType: Int, peerId: String, @@ -195,7 +197,7 @@ internal sealed class MessageElemConverter: IMessageConvert { /** * 商城大表情消息转换消息段 */ - object MarketFaceConverter: MessageElemConverter() { + data object MarketFaceConverter: MessageElemConverter() { override suspend fun convert( chatType: Int, peerId: String, @@ -218,7 +220,7 @@ internal sealed class MessageElemConverter: IMessageConvert { /** * JSON消息转消息段 */ - object StructJsonConverter: MessageElemConverter() { + data object StructJsonConverter: MessageElemConverter() { override suspend fun convert( chatType: Int, peerId: String, @@ -280,7 +282,7 @@ internal sealed class MessageElemConverter: IMessageConvert { /** * 回复消息转消息段 */ - object ReplyConverter: MessageElemConverter() { + data object ReplyConverter: MessageElemConverter() { override suspend fun convert( chatType: Int, peerId: String, @@ -312,7 +314,7 @@ internal sealed class MessageElemConverter: IMessageConvert { /** * 灰色提示条消息过滤 */ - object GrayTipsConverter: MessageElemConverter() { + data object GrayTipsConverter: MessageElemConverter() { override suspend fun convert( chatType: Int, peerId: String, @@ -347,7 +349,7 @@ internal sealed class MessageElemConverter: IMessageConvert { /** * 文件消息转换消息段 */ - object FileConverter: MessageElemConverter() { + data object FileConverter: MessageElemConverter() { override suspend fun convert( chatType: Int, peerId: String, @@ -381,7 +383,7 @@ internal sealed class MessageElemConverter: IMessageConvert { /** * 老板QQ的合并转发信息 */ - object XmlMultiMsgConverter: MessageElemConverter() { + data object XmlMultiMsgConverter: MessageElemConverter() { override suspend fun convert( chatType: Int, peerId: String, @@ -397,7 +399,7 @@ internal sealed class MessageElemConverter: IMessageConvert { } } - object XmlLongMsgConverter: MessageElemConverter() { + data object XmlLongMsgConverter: MessageElemConverter() { override suspend fun convert( chatType: Int, peerId: String, @@ -413,7 +415,7 @@ internal sealed class MessageElemConverter: IMessageConvert { } } - object MarkdownConverter: MessageElemConverter() { + data object MarkdownConverter: MessageElemConverter() { override suspend fun convert( chatType: Int, peerId: String, diff --git a/xposed/src/main/java/moe/fuqiuluo/shamrock/xposed/hooks/IpcService.kt b/xposed/src/main/java/moe/fuqiuluo/shamrock/xposed/hooks/IpcService.kt index 4eb8077..8777ee1 100644 --- a/xposed/src/main/java/moe/fuqiuluo/shamrock/xposed/hooks/IpcService.kt +++ b/xposed/src/main/java/moe/fuqiuluo/shamrock/xposed/hooks/IpcService.kt @@ -16,7 +16,7 @@ import moe.fuqiuluo.shamrock.xposed.ipc.ShamrockIpc import moe.fuqiuluo.symbols.Process import moe.fuqiuluo.symbols.XposedHook -@XposedHook(Process.MSF, 0) +@XposedHook(Process.MSF, priority = 0) internal class IpcService: IAction { override fun invoke(ctx: Context) { if (!PlatformUtils.isMsfProcess()) return