Combine event listener interfaces
This commit is contained in:
parent
5b64946dfb
commit
70bb2b7fee
@ -44,8 +44,7 @@ import im.vector.app.core.platform.OnBackPressed
|
|||||||
import im.vector.app.core.platform.VectorBaseFragment
|
import im.vector.app.core.platform.VectorBaseFragment
|
||||||
import im.vector.app.core.utils.openUrlInExternalBrowser
|
import im.vector.app.core.utils.openUrlInExternalBrowser
|
||||||
import im.vector.app.databinding.FragmentRoomWidgetBinding
|
import im.vector.app.databinding.FragmentRoomWidgetBinding
|
||||||
import im.vector.app.features.webview.WebChromeEventListener
|
import im.vector.app.features.webview.WebEventListener
|
||||||
import im.vector.app.features.webview.WebViewEventListener
|
|
||||||
import im.vector.app.features.widgets.webview.WebviewPermissionUtils
|
import im.vector.app.features.widgets.webview.WebviewPermissionUtils
|
||||||
import im.vector.app.features.widgets.webview.clearAfterWidget
|
import im.vector.app.features.widgets.webview.clearAfterWidget
|
||||||
import im.vector.app.features.widgets.webview.setupForWidget
|
import im.vector.app.features.widgets.webview.setupForWidget
|
||||||
@ -68,8 +67,7 @@ class WidgetFragment @Inject constructor(
|
|||||||
private val permissionUtils: WebviewPermissionUtils
|
private val permissionUtils: WebviewPermissionUtils
|
||||||
) :
|
) :
|
||||||
VectorBaseFragment<FragmentRoomWidgetBinding>(),
|
VectorBaseFragment<FragmentRoomWidgetBinding>(),
|
||||||
WebViewEventListener,
|
WebEventListener,
|
||||||
WebChromeEventListener,
|
|
||||||
OnBackPressed {
|
OnBackPressed {
|
||||||
|
|
||||||
private val fragmentArgs: WidgetArgs by args()
|
private val fragmentArgs: WidgetArgs by args()
|
||||||
@ -82,7 +80,7 @@ class WidgetFragment @Inject constructor(
|
|||||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||||
super.onViewCreated(view, savedInstanceState)
|
super.onViewCreated(view, savedInstanceState)
|
||||||
setHasOptionsMenu(true)
|
setHasOptionsMenu(true)
|
||||||
views.widgetWebView.setupForWidget(this, this)
|
views.widgetWebView.setupForWidget(this)
|
||||||
if (fragmentArgs.kind.isAdmin()) {
|
if (fragmentArgs.kind.isAdmin()) {
|
||||||
viewModel.getPostAPIMediator().setWebView(views.widgetWebView)
|
viewModel.getPostAPIMediator().setWebView(views.widgetWebView)
|
||||||
}
|
}
|
||||||
|
@ -25,11 +25,10 @@ import android.webkit.WebView
|
|||||||
import im.vector.app.R
|
import im.vector.app.R
|
||||||
import im.vector.app.features.themes.ThemeUtils
|
import im.vector.app.features.themes.ThemeUtils
|
||||||
import im.vector.app.features.webview.VectorWebViewClient
|
import im.vector.app.features.webview.VectorWebViewClient
|
||||||
import im.vector.app.features.webview.WebChromeEventListener
|
import im.vector.app.features.webview.WebEventListener
|
||||||
import im.vector.app.features.webview.WebViewEventListener
|
|
||||||
|
|
||||||
@SuppressLint("NewApi")
|
@SuppressLint("NewApi")
|
||||||
fun WebView.setupForWidget(webViewEventListener: WebViewEventListener, webChromeEventListener: WebChromeEventListener) {
|
fun WebView.setupForWidget(eventListener: WebEventListener) {
|
||||||
// xml value seems ignored
|
// xml value seems ignored
|
||||||
setBackgroundColor(ThemeUtils.getColor(context, R.attr.colorSurface))
|
setBackgroundColor(ThemeUtils.getColor(context, R.attr.colorSurface))
|
||||||
|
|
||||||
@ -60,10 +59,10 @@ fun WebView.setupForWidget(webViewEventListener: WebViewEventListener, webChrome
|
|||||||
// Permission requests
|
// Permission requests
|
||||||
webChromeClient = object : WebChromeClient() {
|
webChromeClient = object : WebChromeClient() {
|
||||||
override fun onPermissionRequest(request: PermissionRequest) {
|
override fun onPermissionRequest(request: PermissionRequest) {
|
||||||
webChromeEventListener.onPermissionRequest(request)
|
eventListener.onPermissionRequest(request)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
webViewClient = VectorWebViewClient(webViewEventListener)
|
webViewClient = VectorWebViewClient(eventListener)
|
||||||
|
|
||||||
val cookieManager = CookieManager.getInstance()
|
val cookieManager = CookieManager.getInstance()
|
||||||
cookieManager.setAcceptThirdPartyCookies(this, false)
|
cookieManager.setAcceptThirdPartyCookies(this, false)
|
||||||
|
Loading…
Reference in New Issue
Block a user