commit da19408c757975c31b0927d39d26746aa62c44eb
parent 8864be681443f7b847297fae8aef7dc8e692c6d9
Author: rhunk <101876869+rhunk@users.noreply.github.com>
Date:   Mon,  6 May 2024 22:36:00 +0200

fix(core/send_override): audio note transcription

Diffstat:
Mcore/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/messaging/SendOverride.kt | 6+++++-
Mcore/src/main/kotlin/me/rhunk/snapenhance/core/messaging/MessageSender.kt | 5++++-
2 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/messaging/SendOverride.kt b/core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/messaging/SendOverride.kt @@ -13,6 +13,7 @@ import me.rhunk.snapenhance.core.features.impl.experiments.MediaFilePicker import me.rhunk.snapenhance.core.messaging.MessageSender import me.rhunk.snapenhance.core.ui.ViewAppearanceHelper import me.rhunk.snapenhance.nativelib.NativeLib +import java.util.Locale class SendOverride : Feature("Send Override", loadParams = FeatureLoadParams.INIT_SYNC) { private var isLastSnapSavable = false @@ -129,7 +130,10 @@ class SendOverride : Feature("Send Override", loadParams = FeatureLoadParams.INI "NOTE" -> { localMessageContent.contentType = ContentType.NOTE localMessageContent.content = - MessageSender.audioNoteProto(messageProtoReader.getVarInt(3, 3, 5, 1, 1, 15) ?: context.feature(MediaFilePicker::class).lastMediaDuration ?: 0) + MessageSender.audioNoteProto( + messageProtoReader.getVarInt(3, 3, 5, 1, 1, 15) ?: context.feature(MediaFilePicker::class).lastMediaDuration ?: 0, + Locale.getDefault().toLanguageTag() + ) } } diff --git a/core/src/main/kotlin/me/rhunk/snapenhance/core/messaging/MessageSender.kt b/core/src/main/kotlin/me/rhunk/snapenhance/core/messaging/MessageSender.kt @@ -38,7 +38,7 @@ class MessageSender( }.toByteArray() } - val audioNoteProto: (Long) -> ByteArray = { duration -> + val audioNoteProto: (Long, String?) -> ByteArray = { duration, userLocale -> ProtoWriter().apply { from(6, 1) { from(1) { @@ -50,6 +50,9 @@ class MessageSender( addVarInt(7, 0) addVarInt(13, duration) } + if (userLocale != null) { + addString(3, userLocale) + } } }.toByteArray() }