Added disabled TLS error handling signal for convenience

This commit is contained in:
2026-06-06 21:45:38 -05:00
parent fac9ee028b
commit b86f10b007

View File

@@ -36,6 +36,8 @@ class WebkitUI(WebKit2.WebView):
def _setup_signals(self): def _setup_signals(self):
self.connect("context-menu", self._on_context_menu) self.connect("context-menu", self._on_context_menu)
# Note: If you want to change/handle/ignore TLS issues. Not secure to ignore!
# self.connect("load-failed-with-tls-errors", self._on_tls_errors)
def _subscribe_to_events(self): def _subscribe_to_events(self):
event_system.subscribe(f"ui-message", self.ui_message) event_system.subscribe(f"ui-message", self.ui_message)
@@ -48,6 +50,19 @@ class WebkitUI(WebKit2.WebView):
content_manager.connect("script-message-received", self._process_js_message) content_manager.connect("script-message-received", self._process_js_message)
content_manager.register_script_message_handler("backend") content_manager.register_script_message_handler("backend")
def _on_tls_errors(self, webview, uri, certificate, errors):
print("TLS error:", uri)
print("Errors:", errors)
webview.get_website_data_manager().get_tls_errors_policy()
webview.get_context().allow_tls_certificate_for_host(
certificate,
uri.split("/")[2]
)
webview.load_url(uri)
return True
def _process_js_message(self, user_content_manager, js_result): def _process_js_message(self, user_content_manager, js_result):
js_value = js_result.get_js_value() js_value = js_result.get_js_value()
message = js_value.to_string() message = js_value.to_string()