diff --git a/lib/pages/player/player_item.dart b/lib/pages/player/player_item.dart index f21524e2..817b428c 100644 --- a/lib/pages/player/player_item.dart +++ b/lib/pages/player/player_item.dart @@ -261,6 +261,9 @@ class _PlayerItemState extends State with WindowListener { @override void dispose() { //player.dispose(); + if (playerTimer != null) { + playerTimer!.cancel(); + } super.dispose(); } diff --git a/lib/pages/webview/webview_controller.dart b/lib/pages/webview/webview_controller.dart index 0e8839ba..a6160480 100644 --- a/lib/pages/webview/webview_controller.dart +++ b/lib/pages/webview/webview_controller.dart @@ -123,7 +123,7 @@ class WebviewItemController { var iframe = iframes[i]; var src = iframe.getAttribute('src'); - if (src && src.trim() !== '' && src.includes('http')) { + if (src && src.trim() !== '' && src.includes('http') && !src.includes('googleads')) { window.location.href = src; JSBridgeDebug.postMessage(src); break; @@ -139,7 +139,7 @@ class WebviewItemController { VideoBridgeDebug.postMessage('The number of video tags is' + videos.length); for (var i = 0; i < videos.length; i++) { var src = videos[i].getAttribute('src'); - if (src && src.trim() !== '' && !src.startsWith('blob:')) { + if (src && src.trim() !== '' && !src.startsWith('blob:') && !src.includes('googleads')) { VideoBridgeDebug.postMessage(src); break; } diff --git a/lib/pages/webview_desktop/webview_desktop_controller.dart b/lib/pages/webview_desktop/webview_desktop_controller.dart index ff4fe301..7be496f3 100644 --- a/lib/pages/webview_desktop/webview_desktop_controller.dart +++ b/lib/pages/webview_desktop/webview_desktop_controller.dart @@ -101,7 +101,7 @@ class WebviewDesktopItemController { var iframe = iframes[i]; var src = iframe.getAttribute('src'); - if (src && src.trim() !== '' && src.includes('http')) { + if (src && src.trim() !== '' && src.includes('http') && !src.includes('googleads')) { window.chrome.webview.postMessage('iframeMessage:' + src); window.location.href = src; break; @@ -116,7 +116,7 @@ class WebviewDesktopItemController { var videos = document.querySelectorAll('video'); for (var i = 0; i < videos.length; i++) { var src = videos[i].getAttribute('src'); - if (src && src.trim() !== '' && !src.startsWith('blob:')) { + if (src && src.trim() !== '' && !src.startsWith('blob:') && !src.includes('googleads')) { window.chrome.webview.postMessage('videoMessage:' + src); } }