diff --git a/src/main/java/eu/siacs/conversations/entities/Conversation.java b/src/main/java/eu/siacs/conversations/entities/Conversation.java index b85fbebef8e88060a39686c95f7eec2c838ea8bc..63f0c1579cf3fb548be8bf744bd7a0825dcb6ec7 100644 --- a/src/main/java/eu/siacs/conversations/entities/Conversation.java +++ b/src/main/java/eu/siacs/conversations/entities/Conversation.java @@ -41,6 +41,7 @@ import android.widget.ListView; import android.widget.TextView; import android.widget.Toast; import android.widget.Spinner; +import android.webkit.PermissionRequest; import android.webkit.JavascriptInterface; import android.webkit.WebMessage; import android.webkit.WebView; @@ -2826,6 +2827,7 @@ public class Conversation extends AbstractEntity public void bind(Item oob) { setTextOrHide(binding.desc, Optional.fromNullable(oob.el.findChildContent("desc", "jabber:x:oob"))); binding.webview.getSettings().setJavaScriptEnabled(true); + binding.webview.getSettings().setMediaPlaybackRequiresUserGesture(false); binding.webview.getSettings().setUserAgentString("Mozilla/5.0 (Linux; Android 11) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.106 Mobile Safari/537.36"); binding.webview.getSettings().setDatabaseEnabled(true); binding.webview.getSettings().setDomStorageEnabled(true); @@ -2835,6 +2837,13 @@ public class Conversation extends AbstractEntity binding.progressbar.setVisibility(newProgress < 100 ? View.VISIBLE : View.GONE); binding.progressbar.setProgress(newProgress); } + + @Override + public void onPermissionRequest(final PermissionRequest request) { + getView().post(() -> { + request.grant(request.getResources()); + }); + } }); binding.webview.setWebViewClient(new WebViewClient() { @Override