diff --git a/src/main/java/org/thoughtcrime/securesms/preferences/AdvancedPreferenceFragment.java b/src/main/java/org/thoughtcrime/securesms/preferences/AdvancedPreferenceFragment.java
index b6225518e..21ebc923a 100644
--- a/src/main/java/org/thoughtcrime/securesms/preferences/AdvancedPreferenceFragment.java
+++ b/src/main/java/org/thoughtcrime/securesms/preferences/AdvancedPreferenceFragment.java
@@ -210,7 +210,7 @@ public class AdvancedPreferenceFragment extends ListSummaryPreferenceFragment
callsEnabled.setOnPreferenceChangeListener((preference, newValue) -> {
if ((Boolean)newValue) {
new AlertDialog.Builder(requireActivity())
- .setTitle("Thanks for trying out \"Video Calls\"!")
+ .setTitle("Thanks for trying out \"Calls\"!")
.setMessage("• You can now call contacts\n\n"
+ "• If you want to quit the experimental feature, you can disable it at \"Settings / Advanced\"")
.setCancelable(false)
diff --git a/src/main/java/org/thoughtcrime/securesms/videochat/VideochatActivity.java b/src/main/java/org/thoughtcrime/securesms/videochat/VideochatActivity.java
index 58814052b..572ab27e0 100644
--- a/src/main/java/org/thoughtcrime/securesms/videochat/VideochatActivity.java
+++ b/src/main/java/org/thoughtcrime/securesms/videochat/VideochatActivity.java
@@ -1,5 +1,6 @@
package org.thoughtcrime.securesms.videochat;
+import android.Manifest;
import android.annotation.SuppressLint;
import android.content.Context;
import android.os.Bundle;
@@ -18,9 +19,11 @@ import com.b44t.messenger.DcChat;
import com.b44t.messenger.DcContext;
import com.b44t.messenger.DcEvent;
+import org.thoughtcrime.securesms.R;
import org.thoughtcrime.securesms.WebViewActivity;
import org.thoughtcrime.securesms.connect.DcEventCenter;
import org.thoughtcrime.securesms.connect.DcHelper;
+import org.thoughtcrime.securesms.permissions.Permissions;
import org.thoughtcrime.securesms.recipients.Recipient;
import org.thoughtcrime.securesms.util.AvatarUtil;
import org.thoughtcrime.securesms.util.Util;
@@ -79,8 +82,21 @@ public class VideochatActivity extends WebViewActivity implements DcEventCenter.
Util.runOnMain(() -> Objects.requireNonNull(getSupportActionBar()).setTitle(chat.getName()));
});
- String url = "file:///android_asset/calls/index.html";
- webView.loadUrl(url + hash);
+ Permissions.with(this)
+ .request(Manifest.permission.CAMERA, Manifest.permission.RECORD_AUDIO)
+ .ifNecessary()
+ .withPermanentDenialDialog(getString(R.string.perm_explain_access_to_camera_denied))
+ .onAllGranted(() -> {
+ String url = "file:///android_asset/calls/index.html";
+ webView.loadUrl(url + hash);
+ }).onAnyDenied(this::finish)
+ .execute();
+ }
+
+ @Override
+ public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
+ super.onRequestPermissionsResult(requestCode, permissions, grantResults);
+ Permissions.onRequestPermissionsResult(this, requestCode, permissions, grantResults);
}
@Override
diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml
index 64fdeea8d..d2d76b772 100644
--- a/src/main/res/values/strings.xml
+++ b/src/main/res/values/strings.xml
@@ -369,7 +369,7 @@
File saved to \"%1$s\".
Call
- Video Calls
+ Calls
Answer
Decline
diff --git a/src/main/res/xml/preferences_advanced.xml b/src/main/res/xml/preferences_advanced.xml
index 4cb87cfa1..8aebc9e4a 100644
--- a/src/main/res/xml/preferences_advanced.xml
+++ b/src/main/res/xml/preferences_advanced.xml
@@ -23,7 +23,7 @@
+ android:title="@string/calls"/>