def create_browser(debug=False, cache_model=None, process_model=None): """Creates a WebView instance, properly configured. Arguments: debug -- boolean to indicate if it should output debug and add context menu and inspector. """ gi.require_version('WebKit', '3.0') from gi.repository.WebKit import WebView, WebSettings, set_cache_model if debug: WebKitMethods.print_version() if cache_model is not None: # http://lazka.github.io/pgi-docs/WebKit-3.0/functions.html#WebKit.set_cache_model set_cache_model(cache_model) # Setting for WebKit via git http://lazka.github.io/pgi-docs/#WebKit-3.0/classes/WebSettings.html settings = WebSettings() settings.set_property('enable-accelerated-compositing', True) settings.set_property('enable-file-access-from-file-uris', True) settings.set_property('enable-default-context-menu', not debug) webview = WebView() webview.set_settings(settings) return webview
def create_browser(debug=False, cache_model=None, process_model=None): """Creates a WebView instance, properly configured. Arguments: debug -- boolean to indicate if it should output debug and add context menu and inspector. """ gi.require_version('WebKit2', '4.0') from gi.repository.WebKit2 import WebView, Settings if debug: WebKit2Methods.print_version() settings = Settings() settings.set_allow_file_access_from_file_urls(True) if debug: settings.set_enable_developer_extras(True) settings.set_enable_write_console_messages_to_stdout(True) webview = WebView() if cache_model is not None: # http://lazka.github.io/pgi-docs/WebKit2-4.0/classes/WebContext.html#WebKit2.WebContext.set_cache_model context = webview.get_context() context.set_cache_model(cache_model) if process_model is not None: # http://lazka.github.io/pgi-docs/WebKit2-4.0/classes/WebContext.html#WebKit2.WebContext.set_process_model context = webview.get_context() context.set_process_model(process_model) if not debug: # https://people.gnome.org/~gcampagna/docs/WebKit2-3.0/WebKit2.WebView-context-menu.html def menu_contextual(webview, context_menu, event, hit_test_result): context_menu.remove_all() webview.connect('context-menu', menu_contextual) webview.set_settings(settings) return webview