From f6ce98f9a2edfcca319fbca2e0c71793efef06ca Mon Sep 17 00:00:00 2001 From: adbenitez Date: Tue, 9 Sep 2025 16:10:42 +0200 Subject: [PATCH] remove DC_MSG_VIDEOCHAT_INVITATION --- src/main/java/com/b44t/messenger/DcMsg.java | 3 +- .../securesms/ConversationActivity.java | 2 +- .../securesms/ConversationAdapter.java | 5 - .../securesms/ConversationFragment.java | 7 +- .../securesms/ConversationVideochatItem.java | 99 ----------------- .../securesms/reactions/AddReactionView.java | 1 - .../securesms/videochat/VideochatUtil.java | 11 -- .../layout/conversation_item_videochat.xml | 105 ------------------ 8 files changed, 4 insertions(+), 229 deletions(-) delete mode 100644 src/main/java/org/thoughtcrime/securesms/ConversationVideochatItem.java delete mode 100644 src/main/res/layout/conversation_item_videochat.xml diff --git a/src/main/java/com/b44t/messenger/DcMsg.java b/src/main/java/com/b44t/messenger/DcMsg.java index ebea2f682..c141d8e2e 100644 --- a/src/main/java/com/b44t/messenger/DcMsg.java +++ b/src/main/java/com/b44t/messenger/DcMsg.java @@ -18,7 +18,6 @@ public class DcMsg { public final static int DC_MSG_VOICE = 41; public final static int DC_MSG_VIDEO = 50; public final static int DC_MSG_FILE = 60; - public final static int DC_MSG_VIDEOCHAT_INVITATION = 70; public final static int DC_MSG_WEBXDC = 80; public final static int DC_MSG_VCARD = 90; @@ -191,7 +190,7 @@ public class DcMsg { public boolean canSave() { // saving info-messages out of context results in confusion, see https://github.com/deltachat/deltachat-ios/issues/2567 - return !isInfo() && getType() != DC_MSG_VIDEOCHAT_INVITATION; + return !isInfo(); } public File getFileAsFile() { diff --git a/src/main/java/org/thoughtcrime/securesms/ConversationActivity.java b/src/main/java/org/thoughtcrime/securesms/ConversationActivity.java index 1990473d9..485822c71 100644 --- a/src/main/java/org/thoughtcrime/securesms/ConversationActivity.java +++ b/src/main/java/org/thoughtcrime/securesms/ConversationActivity.java @@ -1459,7 +1459,7 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity Recipient author = new Recipient(this, dcContext.getContact(msg.getFromId())); SlideDeck slideDeck = new SlideDeck(); - if (msg.getType() != DcMsg.DC_MSG_TEXT) { + if (msg.hasFile()) { slideDeck.addSlide(MediaUtil.getSlideForMsg(this, msg)); } diff --git a/src/main/java/org/thoughtcrime/securesms/ConversationAdapter.java b/src/main/java/org/thoughtcrime/securesms/ConversationAdapter.java index c2e805af4..960ba481c 100644 --- a/src/main/java/org/thoughtcrime/securesms/ConversationAdapter.java +++ b/src/main/java/org/thoughtcrime/securesms/ConversationAdapter.java @@ -77,7 +77,6 @@ public class ConversationAdapter private static final int MESSAGE_TYPE_THUMBNAIL_INCOMING = 6; private static final int MESSAGE_TYPE_DOCUMENT_OUTGOING = 7; private static final int MESSAGE_TYPE_DOCUMENT_INCOMING = 8; - private static final int MESSAGE_TYPE_VIDEOCHAT_INVITE = 9; private static final int MESSAGE_TYPE_STICKER_INCOMING = 10; private static final int MESSAGE_TYPE_STICKER_OUTGOING = 11; @@ -279,7 +278,6 @@ public class ConversationAdapter case MESSAGE_TYPE_STICKER_INCOMING: case MESSAGE_TYPE_INCOMING: return R.layout.conversation_item_received; case MESSAGE_TYPE_INFO: return R.layout.conversation_item_update; - case MESSAGE_TYPE_VIDEOCHAT_INVITE:return R.layout.conversation_item_videochat; default: throw new IllegalArgumentException("unsupported item view type given to ConversationAdapter"); } } @@ -303,9 +301,6 @@ public class ConversationAdapter else if (type == DcMsg.DC_MSG_STICKER) { return dcMsg.isOutgoing()? MESSAGE_TYPE_STICKER_OUTGOING : MESSAGE_TYPE_STICKER_INCOMING; } - else if (type == DcMsg.DC_MSG_VIDEOCHAT_INVITATION) { - return MESSAGE_TYPE_VIDEOCHAT_INVITE; - } else { return dcMsg.isOutgoing()? MESSAGE_TYPE_OUTGOING : MESSAGE_TYPE_INCOMING; } diff --git a/src/main/java/org/thoughtcrime/securesms/ConversationFragment.java b/src/main/java/org/thoughtcrime/securesms/ConversationFragment.java index a1fb8c28a..10fdabb75 100644 --- a/src/main/java/org/thoughtcrime/securesms/ConversationFragment.java +++ b/src/main/java/org/thoughtcrime/securesms/ConversationFragment.java @@ -362,11 +362,11 @@ public class ConversationFragment extends MessageSelectorFragment } static boolean canReplyToMsg(DcMsg dcMsg) { - return !dcMsg.isInfo() && dcMsg.getType() != DcMsg.DC_MSG_VIDEOCHAT_INVITATION; + return !dcMsg.isInfo(); } static boolean canEditMsg(DcMsg dcMsg) { - return dcMsg.isOutgoing() && !dcMsg.isInfo() && dcMsg.getType() != DcMsg.DC_MSG_VIDEOCHAT_INVITATION && !dcMsg.hasHtml() && !dcMsg.getText().isEmpty(); + return dcMsg.isOutgoing() && !dcMsg.isInfo() && !dcMsg.hasHtml() && !dcMsg.getText().isEmpty(); } public void handleClearChat() { @@ -738,9 +738,6 @@ public class ConversationFragment extends MessageSelectorFragment actionMode.setTitleOptionalHint(false); // the title represents important information, also indicating implicitly, more items can be selected } } - else if (messageRecord.getType()==DcMsg.DC_MSG_VIDEOCHAT_INVITATION) { - VideochatUtil.joinMeeting(getActivity(), messageRecord.getId()); - } else if(DozeReminder.isDozeReminderMsg(getContext(), messageRecord)) { DozeReminder.dozeReminderTapped(getContext()); } diff --git a/src/main/java/org/thoughtcrime/securesms/ConversationVideochatItem.java b/src/main/java/org/thoughtcrime/securesms/ConversationVideochatItem.java deleted file mode 100644 index 92ea322cc..000000000 --- a/src/main/java/org/thoughtcrime/securesms/ConversationVideochatItem.java +++ /dev/null @@ -1,99 +0,0 @@ -package org.thoughtcrime.securesms; - -import android.content.Context; -import android.text.TextUtils; -import android.util.AttributeSet; -import android.view.ViewGroup; -import android.widget.LinearLayout; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; - -import com.b44t.messenger.DcChat; -import com.b44t.messenger.DcContact; -import com.b44t.messenger.DcContext; -import com.b44t.messenger.DcMsg; - -import org.thoughtcrime.securesms.components.AvatarImageView; -import org.thoughtcrime.securesms.components.ConversationItemFooter; -import org.thoughtcrime.securesms.connect.DcHelper; -import org.thoughtcrime.securesms.mms.GlideRequests; -import org.thoughtcrime.securesms.recipients.Recipient; -import org.thoughtcrime.securesms.util.Util; -import org.thoughtcrime.securesms.util.ViewUtil; - -import java.util.Set; - -public class ConversationVideochatItem extends LinearLayout - implements BindableConversationItem -{ - private TextView body; - private ConversationItemFooter footer; - private AvatarImageView contactPhoto; - private ViewGroup contactPhotoHolder; - private DcMsg dcMsg; - - public ConversationVideochatItem(Context context) { - super(context); - } - - public ConversationVideochatItem(Context context, AttributeSet attrs) { - super(context, attrs); - } - - @Override - public void onFinishInflate() { - super.onFinishInflate(); - this.body = findViewById(R.id.conversation_update_body); - this.footer = findViewById(R.id.conversation_item_footer); - this.contactPhoto = findViewById(R.id.contact_photo); - this.contactPhotoHolder = findViewById(R.id.contact_photo_container); - } - - @Override - public void bind(@NonNull DcMsg dcMsg, - @NonNull DcChat dcChat, - @NonNull GlideRequests glideRequests, - @NonNull Set batchSelected, - @NonNull Recipient conversationRecipient, - boolean pulseUpdate) - { - this.dcMsg = dcMsg; - DcContext dcContext = DcHelper.getContext(getContext()); - DcContact dcContact = dcContext.getContact(dcMsg.getFromId()); - - CharSequence line1 = dcMsg.isOutgoing()? getContext().getString(R.string.videochat_you_invited_hint) : - getContext().getString(R.string.videochat_contact_invited_hint, dcContact.getDisplayName()); - CharSequence line2 = Util.getBoldedString(dcMsg.isOutgoing()? getContext().getString(R.string.videochat_tap_to_open) : - getContext().getString(R.string.videochat_tap_to_join)); - - body.setText(TextUtils.concat(line1, "\n", line2)); - - contactPhoto.setAvatar(glideRequests, new Recipient(getContext(), dcContact), true); - - setSelected(batchSelected.contains(dcMsg)); - setFooter(dcMsg); - } - - private void setFooter(@NonNull DcMsg dcMsg) { - ViewUtil.updateLayoutParams(footer, LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); - - footer.setVisibility(VISIBLE); - footer.setMessageRecord(dcMsg); - } - - @Override - public void setEventListener(@Nullable EventListener listener) { - // No events to report yet - } - - @Override - public DcMsg getMessageRecord() { - return dcMsg; - } - - @Override - public void unbind() { - } -} diff --git a/src/main/java/org/thoughtcrime/securesms/reactions/AddReactionView.java b/src/main/java/org/thoughtcrime/securesms/reactions/AddReactionView.java index 6754bba62..da49a41a7 100644 --- a/src/main/java/org/thoughtcrime/securesms/reactions/AddReactionView.java +++ b/src/main/java/org/thoughtcrime/securesms/reactions/AddReactionView.java @@ -66,7 +66,6 @@ public class AddReactionView extends LinearLayout { init(); // init delayed as needed if ( msgToReactTo.isInfo() - || msgToReactTo.getType() == DcMsg.DC_MSG_VIDEOCHAT_INVITATION || !dcContext.getChat(msgToReactTo.getChatId()).canSend()) { return; } diff --git a/src/main/java/org/thoughtcrime/securesms/videochat/VideochatUtil.java b/src/main/java/org/thoughtcrime/securesms/videochat/VideochatUtil.java index 8201134c7..f4e72adc5 100644 --- a/src/main/java/org/thoughtcrime/securesms/videochat/VideochatUtil.java +++ b/src/main/java/org/thoughtcrime/securesms/videochat/VideochatUtil.java @@ -5,26 +5,15 @@ import android.app.Activity; import android.content.Intent; import android.os.Build; -import androidx.appcompat.app.AlertDialog; - -import com.b44t.messenger.DcChat; import com.b44t.messenger.DcContext; import com.b44t.messenger.DcMsg; import org.thoughtcrime.securesms.R; import org.thoughtcrime.securesms.connect.DcHelper; import org.thoughtcrime.securesms.permissions.Permissions; -import org.thoughtcrime.securesms.util.IntentUtils; public class VideochatUtil { - public static void joinMeeting(Activity activity, int msgId) { - DcContext dcContext = DcHelper.getContext(activity); - DcMsg dcMsg = dcContext.getMsg(msgId); - String videochatUrl = dcMsg.getVideochatUrl(); - IntentUtils.showInBrowser(activity, videochatUrl); - } - public static void startCall(Activity activity, int chatId) { openCall(activity, chatId, 0, "#call"); } diff --git a/src/main/res/layout/conversation_item_videochat.xml b/src/main/res/layout/conversation_item_videochat.xml deleted file mode 100644 index ce8f49d44..000000000 --- a/src/main/res/layout/conversation_item_videochat.xml +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - -