diff --git a/app/src/main/java/org/thoughtcrime/securesms/WebRtcCallActivity.java b/app/src/main/java/org/thoughtcrime/securesms/WebRtcCallActivity.java index 42a39e5e15..1812a72d3f 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/WebRtcCallActivity.java +++ b/app/src/main/java/org/thoughtcrime/securesms/WebRtcCallActivity.java @@ -39,7 +39,7 @@ import androidx.appcompat.app.AlertDialog; import androidx.appcompat.app.AppCompatDelegate; import androidx.core.content.ContextCompat; import androidx.core.util.Consumer; -import androidx.lifecycle.ViewModelProviders; +import androidx.lifecycle.ViewModelProvider; import androidx.window.DisplayFeature; import androidx.window.FoldingFeature; import androidx.window.WindowLayoutInfo; @@ -167,9 +167,7 @@ public class WebRtcCallActivity extends BaseActivity implements SafetyNumberChan ephemeralStateDisposable = ApplicationDependencies.getSignalCallManager() .ephemeralStates() .observeOn(AndroidSchedulers.mainThread()) - .subscribe(state -> { - viewModel.updateFromEphemeralState(state); - }); + .subscribe(viewModel::updateFromEphemeralState); } @Override @@ -306,7 +304,7 @@ public class WebRtcCallActivity extends BaseActivity implements SafetyNumberChan WebRtcCallViewModel.Factory factory = new WebRtcCallViewModel.Factory(deviceOrientationMonitor); - viewModel = ViewModelProviders.of(this, factory).get(WebRtcCallViewModel.class); + viewModel = new ViewModelProvider(this, factory).get(WebRtcCallViewModel.class); viewModel.setIsLandscapeEnabled(isLandscapeEnabled); viewModel.setIsInPipMode(isInPipMode()); viewModel.getMicrophoneEnabled().observe(this, callScreen::setMicEnabled); diff --git a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/CallSetupActionProcessorDelegate.java b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/CallSetupActionProcessorDelegate.java index 90720826bd..baeb1a2619 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/CallSetupActionProcessorDelegate.java +++ b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/CallSetupActionProcessorDelegate.java @@ -98,6 +98,16 @@ public class CallSetupActionProcessorDelegate extends WebRtcActionProcessor { .cameraState(camera.getCameraState()) .build(); + //noinspection SimplifiableBooleanExpression + if ((enable && camera.isInitialized()) || !enable) { + try { + CallManager callManager = webRtcInteractor.getCallManager(); + callManager.setVideoEnable(enable); + } catch (CallException e) { + Log.w(tag, "Unable change video enabled state to " + enable, e); + } + } + WebRtcUtil.enableSpeakerPhoneIfNeeded(webRtcInteractor, currentState); return currentState; diff --git a/app/src/main/res/layout/webrtc_call_view_large_local_render.xml b/app/src/main/res/layout/webrtc_call_view_large_local_render.xml deleted file mode 100644 index eb75a4d6d1..0000000000 --- a/app/src/main/res/layout/webrtc_call_view_large_local_render.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - diff --git a/dependencies.gradle b/dependencies.gradle index e8fec534bb..94e7e48213 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -76,7 +76,7 @@ dependencyResolutionManagement { alias('libsignal-android').to('org.signal', 'libsignal-android').versionRef('libsignal-client') alias('signal-aesgcmprovider').to('org.signal:aesgcmprovider:0.0.3') alias('signal-argon2').to('org.signal:argon2:13.1') - alias('signal-ringrtc').to('org.signal:ringrtc-android:2.20.2') + alias('signal-ringrtc').to('org.signal:ringrtc-android:2.20.4') alias('signal-android-database-sqlcipher').to('org.signal:android-database-sqlcipher:4.4.3-S8') // Third Party diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml index 4cd7360597..75d6b7e081 100644 --- a/gradle/verification-metadata.xml +++ b/gradle/verification-metadata.xml @@ -3626,14 +3626,9 @@ https://docs.gradle.org/current/userguide/dependency_verification.html - - - - - - - - + + +