def __init__(self, service, parent=None): self.context = WebKit2.WebContext.new() if "http_proxy" in os.environ: proxy = WebKit2.NetworkProxySettings.new(os.environ["http_proxy"]) self.context.set_network_proxy_settings( WebKit2.NetworkProxyMode.CUSTOM, proxy ) WebKit2.CookieManager.set_persistent_storage( self.context.get_cookie_manager(), service.credentials_path, WebKit2.CookiePersistentStorage(0), ) self.service = service super(WebConnectDialog, self).__init__(title=service.name, parent=parent) self.set_border_width(0) self.set_default_size(390, 500) self.webview = WebKit2.WebView.new_with_context(self.context) self.webview.load_uri(service.login_url) self.webview.connect("load-changed", self.on_navigation) self.vbox.pack_start(self.webview, True, True, 0) self.show_all()
def __init__(self, service, parent=None): self.context = WebKit2.WebContext.new() if "http_proxy" in os.environ: proxy = WebKit2.NetworkProxySettings.new(os.environ["http_proxy"]) self.context.set_network_proxy_settings( WebKit2.NetworkProxyMode.CUSTOM, proxy) WebKit2.CookieManager.set_persistent_storage( self.context.get_cookie_manager(), service.cookies_path, WebKit2.CookiePersistentStorage(0), ) self.service = service super().__init__(title=service.name, parent=parent) self.set_border_width(0) self.set_default_size(390, 500) self.webview = WebKit2.WebView.new_with_context(self.context) self.webview.load_uri(service.login_url) self.webview.connect("load-changed", self.on_navigation) self.webview.connect("create", self.on_webview_popup) self.vbox.pack_start(self.webview, True, True, 0) # pylint: disable=no-member webkit_settings = self.webview.get_settings() # Allow popups (Doesn't work...) webkit_settings.set_enable_write_console_messages_to_stdout(True) webkit_settings.set_allow_modal_dialogs(True) # Enable developer options for troubleshooting (Can be disabled in # releases) webkit_settings.set_javascript_can_open_windows_automatically(True) webkit_settings.set_enable_developer_extras(True) self.show_all()