diff --git a/app/src/main/java/org/thoughtcrime/securesms/messages/CallMessageProcessor.kt b/app/src/main/java/org/thoughtcrime/securesms/messages/CallMessageProcessor.kt index 8337c96432..b7d889a2ea 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/messages/CallMessageProcessor.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/messages/CallMessageProcessor.kt @@ -39,7 +39,7 @@ object CallMessageProcessor { callMessage.iceUpdateList.isNotEmpty() -> handleCallIceUpdateMessage(envelope, metadata, callMessage.iceUpdateList, senderRecipient.id) callMessage.hasHangup() || callMessage.hasLegacyHangup() -> { val hangup = if (callMessage.hasHangup()) callMessage.hangup else callMessage.legacyHangup - handleCallHangupMessage(envelope, metadata, hangup, senderRecipient.id, callMessage.hasLegacyHangup()) + handleCallHangupMessage(envelope, metadata, hangup, senderRecipient.id) } callMessage.hasBusy() -> handleCallBusyMessage(envelope, metadata, callMessage.busy, senderRecipient.id) callMessage.hasOpaque() -> handleCallOpaqueMessage(envelope, metadata, callMessage.opaque, senderRecipient.requireAci(), serverDeliveredTimestamp) @@ -115,8 +115,7 @@ object CallMessageProcessor { envelope: Envelope, metadata: EnvelopeMetadata, hangup: SignalServiceProtos.CallMessage.Hangup, - senderRecipientId: RecipientId, - isLegacyHangup: Boolean + senderRecipientId: RecipientId ) { log(envelope.timestamp, "handleCallHangupMessage") @@ -124,7 +123,7 @@ object CallMessageProcessor { ApplicationDependencies.getSignalCallManager() .receivedCallHangup( CallMetadata(remotePeer, metadata.sourceDeviceId), - HangupMetadata(HangupMessage.Type.fromProto(hangup.type), isLegacyHangup, hangup.deviceId) + HangupMetadata(HangupMessage.Type.fromProto(hangup.type), hangup.deviceId) ) } diff --git a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/SignalCallManager.java b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/SignalCallManager.java index 25175ea71c..9cf36e9063 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/SignalCallManager.java +++ b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/SignalCallManager.java @@ -720,7 +720,7 @@ private void processStateless(@NonNull Function1 p.handleSendHangup(s, callMetadata, hangupMetadata, broadcast)); } diff --git a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/WebRtcActionProcessor.java b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/WebRtcActionProcessor.java index 73b9f5e69e..4769241434 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/WebRtcActionProcessor.java +++ b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/WebRtcActionProcessor.java @@ -404,13 +404,13 @@ public abstract class WebRtcActionProcessor { } protected final @NonNull WebRtcServiceState handleSendHangup(@NonNull WebRtcServiceState currentState, - @NonNull CallMetadata callMetadata, - @NonNull HangupMetadata hangupMetadata, - boolean broadcast) + @NonNull CallMetadata callMetadata, + @NonNull HangupMetadata hangupMetadata, + boolean broadcast) { Log.i(tag, "handleSendHangup(): id: " + callMetadata.getCallId().format(callMetadata.getRemoteDevice())); - HangupMessage hangupMessage = new HangupMessage(callMetadata.getCallId().longValue(), hangupMetadata.getType(), hangupMetadata.getDeviceId(), hangupMetadata.isLegacy()); + HangupMessage hangupMessage = new HangupMessage(callMetadata.getCallId().longValue(), hangupMetadata.getType(), hangupMetadata.getDeviceId()); Integer destinationDeviceId = broadcast ? null : callMetadata.getRemoteDevice(); SignalServiceCallMessage callMessage = SignalServiceCallMessage.forHangup(hangupMessage, true, destinationDeviceId); diff --git a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/WebRtcData.java b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/WebRtcData.java index 508fb5e2e5..9aeb415642 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/WebRtcData.java +++ b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/WebRtcData.java @@ -148,16 +148,14 @@ public class WebRtcData { */ public static class HangupMetadata { private final @NonNull HangupMessage.Type type; - private final boolean isLegacy; private final int deviceId; static @NonNull HangupMetadata fromType(@NonNull HangupMessage.Type type) { - return new HangupMetadata(type, true, 0); + return new HangupMetadata(type, 0); } - public HangupMetadata(@NonNull HangupMessage.Type type, boolean isLegacy, int deviceId) { + public HangupMetadata(@NonNull HangupMessage.Type type, int deviceId) { this.type = type; - this.isLegacy = isLegacy; this.deviceId = deviceId; } @@ -176,10 +174,6 @@ public class WebRtcData { } } - boolean isLegacy() { - return isLegacy; - } - int getDeviceId() { return deviceId; } diff --git a/libsignal/service/src/main/java/org/whispersystems/signalservice/api/SignalServiceMessageSender.java b/libsignal/service/src/main/java/org/whispersystems/signalservice/api/SignalServiceMessageSender.java index ab940fd859..bcfa22f535 100644 --- a/libsignal/service/src/main/java/org/whispersystems/signalservice/api/SignalServiceMessageSender.java +++ b/libsignal/service/src/main/java/org/whispersystems/signalservice/api/SignalServiceMessageSender.java @@ -1320,11 +1320,7 @@ public class SignalServiceMessageSender { builderForHangup.setDeviceId(callMessage.getHangupMessage().get().getDeviceId()); } - if (callMessage.getHangupMessage().get().isLegacy()) { - builder.setLegacyHangup(builderForHangup); - } else { - builder.setHangup(builderForHangup); - } + builder.setHangup(builderForHangup); } else if (callMessage.getBusyMessage().isPresent()) { builder.setBusy(CallMessage.Busy.newBuilder().setId(callMessage.getBusyMessage().get().getId())); } else if (callMessage.getOpaqueMessage().isPresent()) { diff --git a/libsignal/service/src/main/java/org/whispersystems/signalservice/api/messages/calls/HangupMessage.java b/libsignal/service/src/main/java/org/whispersystems/signalservice/api/messages/calls/HangupMessage.java index 5fa2cecdf3..ea373c1792 100644 --- a/libsignal/service/src/main/java/org/whispersystems/signalservice/api/messages/calls/HangupMessage.java +++ b/libsignal/service/src/main/java/org/whispersystems/signalservice/api/messages/calls/HangupMessage.java @@ -8,13 +8,11 @@ public class HangupMessage { private final long id; private final Type type; private final int deviceId; - private final boolean isLegacy; - public HangupMessage(long id, Type type, int deviceId, boolean isLegacy) { + public HangupMessage(long id, Type type, int deviceId) { this.id = id; this.type = type; this.deviceId = deviceId; - this.isLegacy = isLegacy; } public long getId() { @@ -29,10 +27,6 @@ public class HangupMessage { return deviceId; } - public boolean isLegacy() { - return isLegacy; - } - public enum Type { NORMAL("normal", SignalServiceProtos.CallMessage.Hangup.Type.HANGUP_NORMAL), ACCEPTED("accepted", SignalServiceProtos.CallMessage.Hangup.Type.HANGUP_ACCEPTED),