def __init__(self): gobject.threads_init() gtk.HBox.__init__(self) self.connect("destroy", self._destroy_cb) self._ready = False self._paginator = None self._loaded_page = -1 #self._old_scrollval = -1 self._loaded_filename = None self._pagecount = -1 self.__going_fwd = True self.__going_back = False self.__page_changed = False self._has_selection = False self.scale = 1.0 self._epub = None self._findjob = None self.__in_search = False self.__search_fwd = True self._sw = gtk.ScrolledWindow() self._view = widgets._WebView() self._view.load_string(LOADING_HTML, 'text/html', 'utf-8', '/') settings = self._view.get_settings() settings.props.default_font_family = 'DejaVu LGC Serif' settings.props.enable_plugins = False settings.props.default_encoding = 'utf-8' self._view.connect('load-finished', self._view_load_finished_cb) self._view.connect('scroll-event', self._view_scroll_event_cb) self._view.connect('key-press-event', self._view_keypress_event_cb) self._view.connect('button-release-event', self._view_buttonrelease_event_cb) self._view.connect('selection-changed', self._view_selection_changed_cb) self._view.connect_after('populate-popup', self._view_populate_popup_cb) self._sw.add(self._view) self._sw.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_NEVER) self._v_vscrollbar = self._sw.get_vscrollbar() self._v_scrollbar_value_changed_cb_id = \ self._v_vscrollbar.connect('value-changed', \ self._v_scrollbar_value_changed_cb) self._scrollbar = gtk.VScrollbar() self._scrollbar.set_update_policy(gtk.UPDATE_DISCONTINUOUS) self._scrollbar_change_value_cb_id = \ self._scrollbar.connect('change-value', \ self._scrollbar_change_value_cb) self.pack_start(self._sw, expand=True, fill=True) self.pack_start(self._scrollbar, expand=False, fill=False) self._view.set_flags(gtk.CAN_DEFAULT | gtk.CAN_FOCUS)
def __init__(self, filelist): GObject.GObject.__init__(self) self._filelist = filelist self._filedict = {} self._pagemap = {} self._bookheight = 0 self._count = 0 self._pagecount = 0 #TODO """ self._screen = Gdk.Screen.get_default() self._old_fontoptions = self._screen.get_font_options() options = cairo.FontOptions() options.set_hint_style(cairo.HINT_STYLE_MEDIUM) options.set_antialias(cairo.ANTIALIAS_GRAY) options.set_subpixel_order(cairo.SUBPIXEL_ORDER_DEFAULT) options.set_hint_metrics(cairo.HINT_METRICS_DEFAULT) self._screen.set_font_options(options) """ self._temp_win = Gtk.Window() self._temp_view = widgets._WebView(only_to_measure=True) settings = self._temp_view.get_settings() settings.props.default_font_family = 'DejaVu LGC Serif' settings.props.sans_serif_font_family = 'DejaVu LGC Sans' settings.props.serif_font_family = 'DejaVu LGC Serif' settings.props.monospace_font_family = 'DejaVu LGC Sans Mono' settings.props.enforce_96_dpi = True #FIXME: This does not seem to work #settings.props.auto_shrink_images = False settings.props.enable_plugins = False settings.props.default_font_size = 12 settings.props.default_monospace_font_size = 10 settings.props.default_encoding = 'utf-8' sw = Gtk.ScrolledWindow() sw.set_policy(Gtk.PolicyType.NEVER, Gtk.PolicyType.NEVER) self._dpi = 96 self._single_page_height = _mm_to_pixel(PAGE_HEIGHT, self._dpi) sw.set_size_request(_mm_to_pixel(PAGE_WIDTH, self._dpi), self._single_page_height) sw.add(self._temp_view) self._temp_win.add(sw) self._temp_view.connect('load-finished', self._page_load_finished_cb) self._temp_win.show_all() self._temp_win.unmap() self._temp_view.open(self._filelist[self._count])
def __init__(self, filelist): GObject.GObject.__init__(self) self._filelist = filelist self._filedict = {} self._pagemap = {} self._bookheight = 0 self._count = 0 self._pagecount = 0 # TODO """ self._screen = Gdk.Screen.get_default() self._old_fontoptions = self._screen.get_font_options() options = cairo.FontOptions() options.set_hint_style(cairo.HINT_STYLE_MEDIUM) options.set_antialias(cairo.ANTIALIAS_GRAY) options.set_subpixel_order(cairo.SUBPIXEL_ORDER_DEFAULT) options.set_hint_metrics(cairo.HINT_METRICS_DEFAULT) self._screen.set_font_options(options) """ self._temp_win = Gtk.Window() self._temp_view = widgets._WebView() settings = self._temp_view.get_settings() settings.props.default_font_family = 'DejaVu LGC Serif' settings.props.sans_serif_font_family = 'DejaVu LGC Sans' settings.props.serif_font_family = 'DejaVu LGC Serif' settings.props.monospace_font_family = 'DejaVu LGC Sans Mono' # FIXME: This does not seem to work # settings.props.auto_shrink_images = False settings.props.enable_plugins = False settings.props.default_font_size = 16 settings.props.default_monospace_font_size = 13 settings.props.default_charset = 'utf-8' self._dpi = Gdk.Screen.get_default().get_resolution() self._single_page_height = _mm_to_pixel(PAGE_HEIGHT, self._dpi) self._temp_view.set_size_request(_mm_to_pixel(PAGE_WIDTH, self._dpi), self._single_page_height) self._temp_win.add(self._temp_view) self._temp_view.connect('load-changed', self._page_load_changed_cb) self._temp_win.show_all() self._temp_win.unmap() self._temp_view.load_uri('file://' + self._filelist[self._count])
def __init__(self): GObject.threads_init() Gtk.HBox.__init__(self) self.connect("destroy", self._destroy_cb) self._ready = False self._paginator = None self._loaded_page = -1 #self._old_scrollval = -1 self._loaded_filename = None self.__going_fwd = True self.__going_back = False self.__page_changed = False self._has_selection = False self.scale = 1.0 self._epub = None self._findjob = None self.__in_search = False self.__search_fwd = True self._sw = Gtk.ScrolledWindow() self._view = widgets._WebView() self._view.load_string(LOADING_HTML, 'text/html', 'utf-8', '/') settings = self._view.get_settings() settings.props.default_font_family = 'DejaVu LGC Serif' settings.props.enable_plugins = False settings.props.default_encoding = 'utf-8' self._view.connect('load-finished', self._view_load_finished_cb) self._view.connect('scroll-event', self._view_scroll_event_cb) self._view.connect('selection-changed', self._view_selection_changed_cb) self._view.connect_after('populate-popup', self._view_populate_popup_cb) self._sw.add(self._view) self._sw.set_policy(Gtk.PolicyType.NEVER, Gtk.PolicyType.NEVER) self._v_vscrollbar = self._sw.get_vscrollbar() self._v_vscrollbar.set_child_visible(False) self.pack_start(self._sw, True, True, 0) self._view.set_flags(Gtk.CAN_DEFAULT | Gtk.CAN_FOCUS)
def __init__(self): GObject.threads_init() Gtk.HBox.__init__(self) self.connect("destroy", self._destroy_cb) self._ready = False self._paginator = None self._loaded_page = -1 self._file_loaded = True #self._old_scrollval = -1 self._loaded_filename = None self._pagecount = -1 self.__going_fwd = True self.__going_back = False self.__page_changed = False self._has_selection = False self.scale = 1.0 self._epub = None self._findjob = None self.__in_search = False self.__search_fwd = True self._filelist = None self._internal_link = None self._sw = Gtk.ScrolledWindow() self._view = widgets._WebView() self._view.load_string(LOADING_HTML, 'text/html', 'utf-8', '/') settings = self._view.get_settings() settings.props.default_font_family = 'DejaVu LGC Serif' settings.props.enable_plugins = False settings.props.default_encoding = 'utf-8' self._view.connect('load-finished', self._view_load_finished_cb) self._view.connect('scroll-event', self._view_scroll_event_cb) self._view.connect('key-press-event', self._view_keypress_event_cb) self._view.connect('selection-changed', self._view_selection_changed_cb) self._view.connect_after('populate-popup', self._view_populate_popup_cb) self._view.connect('touch-change-page', self.__touch_page_changed_cb) self._sw.add(self._view) self._v_vscrollbar = self._sw.get_vscrollbar() self._v_scrollbar_value_changed_cb_id = \ self._v_vscrollbar.connect('value-changed', \ self._v_scrollbar_value_changed_cb) self._scrollbar = Gtk.VScrollbar() self._scrollbar_change_value_cb_id = \ self._scrollbar.connect('change-value', \ self._scrollbar_change_value_cb) overlay = Gtk.Overlay() hbox = Gtk.HBox() overlay.add(hbox) hbox.add(self._sw) self._scrollbar.props.halign = Gtk.Align.END self._scrollbar.props.valign = Gtk.Align.FILL overlay.add_overlay(self._scrollbar) self.pack_start(overlay, True, True, 0) self._view.set_can_default(True) self._view.set_can_focus(True) def map_cp(widget): widget.setup_touch() widget.disconnect(self._setup_handle) self._setup_handle = self._view.connect('map', map_cp)
def __init__(self): GObject.threads_init() Gtk.HBox.__init__(self) self.connect("destroy", self._destroy_cb) self._ready = False self._paginator = None self._loaded_page = -1 # self._old_scrollval = -1 self._loaded_filename = None self._pagecount = -1 self.__scroll_to_end = False self.__page_changed = False self._has_selection = False self._scrollval = 0.0 self.scale = 1.0 self._epub = None self._findjob = None self.__in_search = False self.__search_fwd = True self._filelist = None self._internal_link = None self._view = widgets._WebView() self._view.load_html(LOADING_HTML, '/') settings = self._view.get_settings() settings.props.default_font_family = 'DejaVu LGC Serif' settings.props.enable_plugins = False settings.props.default_charset = 'utf-8' self._view.connect('load-changed', self._view_load_changed_cb) self._view.connect('scrolled', self._view_scrolled_cb) self._view.connect('scrolled-top', self._view_scrolled_top_cb) self._view.connect('scrolled-bottom', self._view_scrolled_bottom_cb) self._view.connect('selection-changed', self._view_selection_changed_cb) find = self._view.get_find_controller() find.connect('failed-to-find-text', self._find_failed_cb) self._eventbox = Gtk.EventBox() self._eventbox.connect('scroll-event', self._eventbox_scroll_event_cb) self._eventbox.add_events(Gdk.EventMask.SCROLL_MASK) self._eventbox.add(self._view) self._scrollbar = Gtk.VScrollbar() self._scrollbar_change_value_cb_id = self._scrollbar.connect( 'change-value', self._scrollbar_change_value_cb) hbox = Gtk.HBox() hbox.pack_start(self._eventbox, True, True, 0) hbox.pack_end(self._scrollbar, False, True, 0) self.pack_start(hbox, True, True, 0) self._view.set_can_default(True) self._view.set_can_focus(True) def map_cp(widget): widget.setup_touch() widget.disconnect(self._setup_handle) self._setup_handle = self._view.connect('map', map_cp)