Skip to content

Commit 9efb528

Browse files
committed
[EdgeChromium] Fix alert
1 parent c8fd734 commit 9efb528

File tree

3 files changed

+11
-3
lines changed

3 files changed

+11
-3
lines changed

webview/js/alert.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,13 @@
44

55
src = """
66
window.alert = function(message) {
7-
window.external.alert(message);
7+
var platform = '%(platform)s';
8+
9+
if (platform == 'edgechromium') {
10+
window.chrome.webview.postMessage(['_pywebviewAlert', pywebview._stringify(message), 'alert']); } else {
11+
window.external.alert(message);
12+
}
13+
814
};
915
1016
"""

webview/platforms/edgechromium.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99

1010
from webview import _settings, settings as webview_settings
1111
from webview.dom import _dnd_state
12+
from webview.js import alert
1213
from webview.js.css import disable_text_select
1314
from webview.util import DEFAULT_HTML, create_cookie, interop_dll_path, js_bridge_call, inject_pywebview
1415

@@ -172,7 +173,7 @@ def on_script_notify(self, _, args):
172173

173174
func_name, func_param, value_id = json.loads(return_value)
174175
func_param = json.loads(func_param)
175-
if func_name == 'alert':
176+
if func_name == '_pywebviewAlert':
176177
WinForms.MessageBox.Show(func_param)
177178
elif func_name == 'console':
178179
print(func_param)
@@ -265,6 +266,7 @@ def on_navigation_completed(self, sender, _):
265266
self.url = None if self.ishtml else url
266267

267268
self.web_view.ExecuteScriptAsync(inject_pywebview(self.pywebview_window, 'chromium'))
269+
self.web_view.ExecuteScriptAsync(alert.src % {'platform': 'edgechromium'})
268270

269271
if not self.pywebview_window.text_select:
270272
self.web_view.ExecuteScriptAsync(disable_text_select)

webview/platforms/mshtml.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -209,7 +209,7 @@ def on_navigating(self, _, args):
209209

210210
def on_document_completed(self, _, args):
211211
document = self.web_view.Document
212-
document.InvokeScript('eval', (alert.src,))
212+
document.InvokeScript('eval', (alert.src % {'platform': 'mshtml'}))
213213

214214
if _settings['debug']:
215215
document.InvokeScript(

0 commit comments

Comments
 (0)