From adee104899bed57e8735b2daa1ed8f193ed5a340 Mon Sep 17 00:00:00 2001 From: Cody Henthorne Date: Tue, 1 Dec 2020 15:46:51 -0500 Subject: [PATCH] Stop camera from turning on when returning to a group call. --- .../service/webrtc/GroupConnectedActionProcessor.java | 11 +++++++++++ .../service/webrtc/GroupJoiningActionProcessor.java | 11 +++++++++++ 2 files changed, 22 insertions(+) diff --git a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/GroupConnectedActionProcessor.java b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/GroupConnectedActionProcessor.java index 36586679b9..856fefe964 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/GroupConnectedActionProcessor.java +++ b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/GroupConnectedActionProcessor.java @@ -1,6 +1,9 @@ package org.thoughtcrime.securesms.service.webrtc; +import android.os.ResultReceiver; + import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import com.annimon.stream.Stream; @@ -28,6 +31,14 @@ public class GroupConnectedActionProcessor extends GroupActionProcessor { super(webRtcInteractor, TAG); } + @Override + protected @NonNull WebRtcServiceState handleIsInCallQuery(@NonNull WebRtcServiceState currentState, @Nullable ResultReceiver resultReceiver) { + if (resultReceiver != null) { + resultReceiver.send(1, null); + } + return currentState; + } + @Override protected @NonNull WebRtcServiceState handleGroupLocalDeviceStateChanged(@NonNull WebRtcServiceState currentState) { Log.i(tag, "handleGroupLocalDeviceStateChanged():"); diff --git a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/GroupJoiningActionProcessor.java b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/GroupJoiningActionProcessor.java index 14dbb9bb00..035336d019 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/GroupJoiningActionProcessor.java +++ b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/GroupJoiningActionProcessor.java @@ -1,6 +1,9 @@ package org.thoughtcrime.securesms.service.webrtc; +import android.os.ResultReceiver; + import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import org.signal.ringrtc.CallException; import org.signal.ringrtc.GroupCall; @@ -27,6 +30,14 @@ public class GroupJoiningActionProcessor extends GroupActionProcessor { callSetupDelegate = new CallSetupActionProcessorDelegate(webRtcInteractor, TAG); } + @Override + protected @NonNull WebRtcServiceState handleIsInCallQuery(@NonNull WebRtcServiceState currentState, @Nullable ResultReceiver resultReceiver) { + if (resultReceiver != null) { + resultReceiver.send(1, null); + } + return currentState; + } + @Override protected @NonNull WebRtcServiceState handleGroupLocalDeviceStateChanged(@NonNull WebRtcServiceState currentState) { Log.i(tag, "handleGroupLocalDeviceStateChanged():");