From 5cfd7477ab67d8a13404cf8bbeb46b2d5b65fe82 Mon Sep 17 00:00:00 2001 From: Moxie Marlinspike Date: Fri, 3 Feb 2017 11:03:56 -0800 Subject: [PATCH] Keep websocket connection open during call // FREEBIE --- .../thoughtcrime/securesms/WebRtcCallActivity.java | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/org/thoughtcrime/securesms/WebRtcCallActivity.java b/src/org/thoughtcrime/securesms/WebRtcCallActivity.java index bd2ed2b5e1..7da27b8e1f 100644 --- a/src/org/thoughtcrime/securesms/WebRtcCallActivity.java +++ b/src/org/thoughtcrime/securesms/WebRtcCallActivity.java @@ -42,7 +42,9 @@ import org.thoughtcrime.securesms.components.webrtc.WebRtcIncomingCallOverlay; import org.thoughtcrime.securesms.database.DatabaseFactory; import org.thoughtcrime.securesms.database.IdentityDatabase; import org.thoughtcrime.securesms.events.WebRtcViewModel; +import org.thoughtcrime.securesms.push.SignalServiceNetworkAccess; import org.thoughtcrime.securesms.recipients.Recipient; +import org.thoughtcrime.securesms.service.MessageRetrievalService; import org.thoughtcrime.securesms.service.WebRtcCallService; import org.thoughtcrime.securesms.util.TextSecurePreferences; import org.thoughtcrime.securesms.util.ViewUtil; @@ -61,8 +63,10 @@ public class WebRtcCallActivity extends Activity { public static final String DENY_ACTION = WebRtcCallActivity.class.getCanonicalName() + ".DENY_ACTION"; public static final String END_CALL_ACTION = WebRtcCallActivity.class.getCanonicalName() + ".END_CALL_ACTION"; - private WebRtcCallScreen callScreen; - private BroadcastReceiver bluetoothStateReceiver; + private WebRtcCallScreen callScreen; + private BroadcastReceiver bluetoothStateReceiver; + private BroadcastReceiver wiredHeadsetStateReceiver; + private SignalServiceNetworkAccess networkAccess; @Override public void onCreate(Bundle savedInstanceState) { @@ -84,7 +88,7 @@ public class WebRtcCallActivity extends Activity { public void onResume() { Log.w(TAG, "onResume()"); super.onResume(); - + if (!networkAccess.isCensored(this)) MessageRetrievalService.registerActivityStarted(this); initializeScreenshotSecurity(); EventBus.getDefault().registerSticky(this); registerBluetoothReceiver(); @@ -106,7 +110,7 @@ public class WebRtcCallActivity extends Activity { public void onPause() { Log.w(TAG, "onPause"); super.onPause(); - + if (!networkAccess.isCensored(this)) MessageRetrievalService.registerActivityStopped(this); EventBus.getDefault().unregister(this); unregisterReceiver(bluetoothStateReceiver); } @@ -133,6 +137,8 @@ public class WebRtcCallActivity extends Activity { callScreen.setAudioMuteButtonListener(new AudioMuteButtonListener()); callScreen.setVideoMuteButtonListener(new VideoMuteButtonListener()); callScreen.setAudioButtonListener(new AudioButtonListener()); + + networkAccess = new SignalServiceNetworkAccess(this); } private void handleSetMuteAudio(boolean enabled) {