def __init__(self, parentWidget): WebKit.WebView.__init__(self) self.load_finish_flag = False self.set_property('can-focus', True) self.set_property('can-default', True) self.set_full_content_zoom(1) self.parentWidget = parentWidget settings = self.get_settings() try: settings.set_property('enable-universal-access-from-file-uris', True) settings.set_property('javascript-can-access-clipboard', True) settings.set_property('enable-default-context-menu', True) settings.set_property('enable-page-cache', True) settings.set_property('tab-key-cycles-through-elements', True) settings.set_property('enable-file-access-from-file-uris', True) settings.set_property('enable-spell-checking', False) settings.set_property('enable-caret-browsing', False) settings.set_property('enable-developer-extras', config.ENABLE_INSPECTOR) try: # Since 1.7.5 settings.set_property('enable-accelerated-compositing', True) except TypeError: pass except: print 'Error: settings property was not set.' WebKit.set_web_database_directory_path(config.get_path("db")) WebKit.set_default_web_database_quota(1024**3L) ## bind events self.connect('navigation-requested', self.on_navigation_requested) self.connect('new-window-policy-decision-requested', self.on_new_window_requested) self.connect('script-alert', self.on_script_alert) self.connect('load-finished', self.on_load_finish) self.connect("hovering-over-link", self.on_over_link) # self.connect('drag_data_received', self.on_drag_data_received) # self.connect('drag_motion', self.on_drag_motion) # self.connect('drag_drop', self.on_drag_drop) # # @TODO DND for gir # TARGET_TYPE_URI_LIST = 80 # dnd_list = [ ( 'text/uri-list', 0, TARGET_TYPE_URI_LIST ) ] # te = Gtk.TargetEntry.new( # 'text/uri-list', 0, TARGET_TYPE_URI_LIST) # self.drag_dest_set( Gtk.DestDefaults.ALL, # [te], Gdk.DragAction.COPY) if config.ENABLE_INSPECTOR: from inspector import HermelinInspector HermelinInspector(self.get_inspector()) templatefile = utils.get_ui_object(config.TEMPLATE) template = open(templatefile, 'rb').read() self.load_string(template, 'text/html', 'UTF-8', 'file://' + templatefile)
def __init__(self, parentWidget): WebKit.WebView.__init__(self) self.load_finish_flag = False self.set_property('can-focus', True) self.set_property('can-default', True) self.set_full_content_zoom(1) self.parentWidget = parentWidget; settings = self.get_settings() try: settings.set_property('enable-universal-access-from-file-uris', True) settings.set_property('javascript-can-access-clipboard', True) settings.set_property('enable-default-context-menu', True) settings.set_property('enable-page-cache', True) settings.set_property('tab-key-cycles-through-elements', True) settings.set_property('enable-file-access-from-file-uris', True) settings.set_property('enable-spell-checking', False) settings.set_property('enable-caret-browsing', False) settings.set_property('enable-developer-extras', config.ENABLE_INSPECTOR) try: # Since 1.7.5 settings.set_property('enable-accelerated-compositing', True) except TypeError: pass except: print 'Error: settings property was not set.' WebKit.set_web_database_directory_path(config.get_path("db")) WebKit.set_default_web_database_quota(1024**3L) ## bind events self.connect('navigation-requested', self.on_navigation_requested); self.connect('new-window-policy-decision-requested', self.on_new_window_requested); self.connect('script-alert', self.on_script_alert); self.connect('load-finished', self.on_load_finish); self.connect("hovering-over-link", self.on_over_link); # self.connect('drag_data_received', self.on_drag_data_received) # self.connect('drag_motion', self.on_drag_motion) # self.connect('drag_drop', self.on_drag_drop) # # @TODO DND for gir # TARGET_TYPE_URI_LIST = 80 # dnd_list = [ ( 'text/uri-list', 0, TARGET_TYPE_URI_LIST ) ] # te = Gtk.TargetEntry.new( # 'text/uri-list', 0, TARGET_TYPE_URI_LIST) # self.drag_dest_set( Gtk.DestDefaults.ALL, # [te], Gdk.DragAction.COPY) if config.ENABLE_INSPECTOR: from inspector import HermelinInspector HermelinInspector(self.get_inspector()) templatefile = utils.get_ui_object(config.TEMPLATE) template = open(templatefile, 'rb').read() self.load_string(template, 'text/html', 'UTF-8', 'file://' + templatefile)
def setup_webview(self, webview): try: os.makedirs(BASE_PATH) except: pass session = WebKit.get_default_session() jar = Soup.CookieJarText.new(COOKIE_FILE, False) jar.set_accept_policy(Soup.CookieJarAcceptPolicy.ALWAYS) session.add_feature(jar) WebKit.set_web_database_directory_path(DATABASE_PATH) settings = webview.get_settings() settings.props.enable_page_cache = True settings.props.enable_default_context_menu = False # for speed up settings.props.auto_load_images = False settings.props.enable_dns_prefetching = True webview.set_settings(settings)
def __init__(self, parentWidget): WebKit.WebView.__init__(self) self.load_finish_flag = False self.set_property('can-focus', True) self.set_property('can-default', True) self.set_full_content_zoom(1) self.parentWidget = parentWidget; settings = self.get_settings() try: settings.set_property('enable-universal-access-from-file-uris', True) settings.set_property('javascript-can-access-clipboard', True) settings.set_property('enable-default-context-menu', True) settings.set_property('enable-page-cache', True) settings.set_property('tab-key-cycles-through-elements', True) settings.set_property('enable-file-access-from-file-uris', True) settings.set_property('enable-spell-checking', False) settings.set_property('enable-caret-browsing', False) settings.set_property('enable-developer-extras', config.ENABLE_INSPECTOR) except: print 'Error: settings property was not set.' WebKit.set_web_database_directory_path(config.DB_DIR) WebKit.set_default_web_database_quota(1024**3L) ## bind events self.connect('navigation-requested', self.on_navigation_requested); self.connect('new-window-policy-decision-requested', self.on_new_window_requested); self.connect('script-alert', self.on_script_alert); self.connect('load-finished', self.on_load_finish); self.connect("hovering-over-link", self.on_over_link); if config.ENABLE_INSPECTOR: from inspector import HototInspector HototInspector(self.get_inspector()) templatefile = utils.get_ui_object(config.TEMPLATE) template = open(templatefile, 'rb').read() self.load_string(template, 'text/html', 'UTF-8', 'file://' + templatefile)