From dd8cd642b9770f862ad6ec5fa99fe9e66f05824a Mon Sep 17 00:00:00 2001 From: "B. Petersen" Date: Mon, 14 Oct 2024 15:25:53 +0200 Subject: [PATCH] adapt to simplified api --- jni/dc_wrapper.c | 12 ++++-------- src/main/java/com/b44t/messenger/DcMsg.java | 7 +------ .../securesms/MessageSelectorFragment.java | 6 +++--- 3 files changed, 8 insertions(+), 17 deletions(-) diff --git a/jni/dc_wrapper.c b/jni/dc_wrapper.c index ddca8971e..c1ad895d9 100644 --- a/jni/dc_wrapper.c +++ b/jni/dc_wrapper.c @@ -1722,25 +1722,21 @@ JNIEXPORT jlong Java_com_b44t_messenger_DcMsg_getParentCPtr(JNIEnv *env, jobject return (jlong)dc_msg_get_parent(get_dc_msg(env, obj)); } - -JNIEXPORT jlong Java_com_b44t_messenger_DcMsg_getOriginalMsgCPtr(JNIEnv *env, jobject obj) -{ - return (jlong)dc_msg_get_original_msg(get_dc_msg(env, obj)); -} - - JNIEXPORT jint Java_com_b44t_messenger_DcMsg_getOriginalChatId(JNIEnv *env, jobject obj) { return (jint)dc_msg_get_original_chat_id(get_dc_msg(env, obj)); } +JNIEXPORT jint Java_com_b44t_messenger_DcMsg_getOriginalMsgId(JNIEnv *env, jobject obj) +{ + return (jint)dc_msg_get_original_msg_id(get_dc_msg(env, obj)); +} JNIEXPORT jint Java_com_b44t_messenger_DcMsg_getSavedMsgId(JNIEnv *env, jobject obj) { return (jint)dc_msg_get_saved_msg_id(get_dc_msg(env, obj)); } - JNIEXPORT jstring Java_com_b44t_messenger_DcMsg_getError(JNIEnv *env, jobject obj) { char* temp = dc_msg_get_error(get_dc_msg(env, obj)); diff --git a/src/main/java/com/b44t/messenger/DcMsg.java b/src/main/java/com/b44t/messenger/DcMsg.java index 70e721cf8..72365e653 100644 --- a/src/main/java/com/b44t/messenger/DcMsg.java +++ b/src/main/java/com/b44t/messenger/DcMsg.java @@ -186,13 +186,9 @@ public DcMsg getParent() { public boolean hasOriginal () { return getOriginalChatId() != 0; } public native int getOriginalChatId (); + public native int getOriginalMsgId (); public native int getSavedMsgId (); - public DcMsg getOriginalMsg() { - long cPtr = getOriginalMsgCPtr(); - return cPtr != 0 ? new DcMsg(cPtr) : null; - } - public File getFileAsFile() { if(getFile()==null) throw new AssertionError("expected a file to be present."); @@ -258,6 +254,5 @@ public boolean isSeen() { private native void setQuoteCPtr (long quoteCPtr); private native long getQuotedMsgCPtr (); private native long getParentCPtr (); - private native long getOriginalMsgCPtr(); private native String getWebxdcInfoJson (); }; diff --git a/src/main/java/org/thoughtcrime/securesms/MessageSelectorFragment.java b/src/main/java/org/thoughtcrime/securesms/MessageSelectorFragment.java index 8e11c33ff..5185f0074 100644 --- a/src/main/java/org/thoughtcrime/securesms/MessageSelectorFragment.java +++ b/src/main/java/org/thoughtcrime/securesms/MessageSelectorFragment.java @@ -113,9 +113,9 @@ protected void handleShowInChat(final DcMsg savedMsg) { Intent intent = new Intent(getContext(), ConversationActivity.class); intent.putExtra(ConversationActivity.CHAT_ID_EXTRA, savedMsg.getOriginalChatId()); - DcMsg originalMsg = savedMsg.getOriginalMsg(); - if (originalMsg != null) { - intent.putExtra(ConversationActivity.STARTING_POSITION_EXTRA, DcMsg.getMessagePosition(originalMsg, dcContext)); + int originalMsgId = savedMsg.getOriginalMsgId(); + if (originalMsgId != 0) { + intent.putExtra(ConversationActivity.STARTING_POSITION_EXTRA, DcMsg.getMessagePosition(dcContext.getMsg(originalMsgId), dcContext)); } startActivity(intent);