From 5b6024584a54bc4b0969cfd3604a87a7acb8bf9a Mon Sep 17 00:00:00 2001 From: adbenitez Date: Fri, 20 Dec 2024 17:47:45 +0100 Subject: [PATCH] force sending sticker --- jni/dc_wrapper.c | 6 ++++++ src/main/java/com/b44t/messenger/DcMsg.java | 1 + .../org/thoughtcrime/securesms/ConversationActivity.java | 1 + .../thoughtcrime/securesms/util/SendRelayedMessageUtil.java | 1 + 4 files changed, 9 insertions(+) diff --git a/jni/dc_wrapper.c b/jni/dc_wrapper.c index c6c62485a..9738c5c2d 100644 --- a/jni/dc_wrapper.c +++ b/jni/dc_wrapper.c @@ -1658,6 +1658,12 @@ JNIEXPORT void Java_com_b44t_messenger_DcMsg_setFile(JNIEnv *env, jobject obj, j } +JNIEXPORT void Java_com_b44t_messenger_DcMsg_forceSticker(JNIEnv *env, jobject obj) +{ + dc_msg_force_sticker(get_dc_msg(env, obj)); +} + + JNIEXPORT void Java_com_b44t_messenger_DcMsg_setDimension(JNIEnv *env, jobject obj, int width, int height) { dc_msg_set_dimension(get_dc_msg(env, obj), width, height); diff --git a/src/main/java/com/b44t/messenger/DcMsg.java b/src/main/java/com/b44t/messenger/DcMsg.java index 10baacf62..4dcfdf722 100644 --- a/src/main/java/com/b44t/messenger/DcMsg.java +++ b/src/main/java/com/b44t/messenger/DcMsg.java @@ -160,6 +160,7 @@ public class DcMsg { public native void setSubject (String text); public native void setHtml (String text); public native void setFile (String file, String filemime); + public native void forceSticker (); public native void setDimension (int width, int height); public native void setDuration (int duration); public native void setLocation (float latitude, float longitude); diff --git a/src/main/java/org/thoughtcrime/securesms/ConversationActivity.java b/src/main/java/org/thoughtcrime/securesms/ConversationActivity.java index 67923cd91..cc1eae7cf 100644 --- a/src/main/java/org/thoughtcrime/securesms/ConversationActivity.java +++ b/src/main/java/org/thoughtcrime/securesms/ConversationActivity.java @@ -1296,6 +1296,7 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity msg.setQuote(quote.get().getQuotedMsg()); } msg.setFile(path, null); + msg.forceSticker(); dcContext.sendMsg(chatId, msg); } diff --git a/src/main/java/org/thoughtcrime/securesms/util/SendRelayedMessageUtil.java b/src/main/java/org/thoughtcrime/securesms/util/SendRelayedMessageUtil.java index 8cd8aa496..7b08dc226 100644 --- a/src/main/java/org/thoughtcrime/securesms/util/SendRelayedMessageUtil.java +++ b/src/main/java/org/thoughtcrime/securesms/util/SendRelayedMessageUtil.java @@ -110,6 +110,7 @@ public class SendRelayedMessageUtil { message = new DcMsg(dcContext, DcMsg.DC_MSG_TEXT); } else if ("sticker".equals(type)) { message = new DcMsg(dcContext, DcMsg.DC_MSG_STICKER); + message.forceSticker(); } else if ("image".equals(type) || MediaUtil.isImageType(mimeType)) { message = new DcMsg(dcContext, DcMsg.DC_MSG_IMAGE); } else if ("audio".equals(type) || MediaUtil.isAudioType(mimeType)) {