From 0559b69e7e81dc4308eb13b15685499fe1d036d3 Mon Sep 17 00:00:00 2001
From: itdominator <1itdominator@gmail.com>
Date: Sat, 10 Oct 2026 17:43:21 -0500
Subject: [PATCH] Improved WebKit example setup/fallback
---
src/core/widgets/webkit/index.html | 36 ++++++++++++++++++++++++++++
src/core/widgets/webkit/webkit_ui.py | 15 ++++++++++--
2 files changed, 49 insertions(+), 2 deletions(-)
create mode 100644 src/core/widgets/webkit/index.html
diff --git a/src/core/widgets/webkit/index.html b/src/core/widgets/webkit/index.html
new file mode 100644
index 0000000..ea5c25f
--- /dev/null
+++ b/src/core/widgets/webkit/index.html
@@ -0,0 +1,36 @@
+
+
+
+
+ Example
+
+
+
+
+
+
+
+
+ Hello, World!
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/core/widgets/webkit/webkit_ui.py b/src/core/widgets/webkit/webkit_ui.py
index e5f6cc8..9bb78c5 100644
--- a/src/core/widgets/webkit/webkit_ui.py
+++ b/src/core/widgets/webkit/webkit_ui.py
@@ -47,7 +47,10 @@ class WebkitUI(WebKit2.WebView):
def _setup_content_manager(self):
content_manager = self.get_user_content_manager()
- content_manager.connect("script-message-received", self._process_js_message)
+ # content_manager.connect("script-message-received", self._process_js_message) # If generic no sub group target
+ content_manager.connect("script-message-received::logger", self._process_logger_js_message)
+ content_manager.connect("script-message-received::backend", self._process_backend_js_message)
+ content_manager.register_script_message_handler("logger")
content_manager.register_script_message_handler("backend")
def _on_tls_errors(self, webview, uri, certificate, errors):
@@ -63,7 +66,12 @@ class WebkitUI(WebKit2.WebView):
webview.load_url(uri)
return True
- def _process_js_message(self, user_content_manager, js_result):
+ def _process_logger_js_message(self, user_content_manager, js_result):
+ js_value = js_result.get_js_value()
+ message = js_value.to_string()
+ logger.info(message)
+
+ def _process_backend_js_message(self, user_content_manager, js_result):
js_value = js_result.get_js_value()
message = js_value.to_string()
@@ -95,6 +103,9 @@ class WebkitUI(WebKit2.WebView):
if not path:
path = settings_manager.path_manager.get_context_path()
+ if not path:
+ path = str( Path(__file__).parent )
+
base_path = Path(path)
index_file = base_path / "index.html"