mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-07 10:14:46 -04:00
Sort default settings and larger handler definitions
Use session defaults in reader settings to reduce code duplication
This commit is contained in:
parent
94ac5ef102
commit
208734f47b
@ -91,22 +91,22 @@ class IframeBoss:
|
||||
self.forward_keypresses = False
|
||||
set_boss(self)
|
||||
handlers = {
|
||||
'initialize':self.initialize,
|
||||
'display': self.display,
|
||||
'scroll_to_anchor': self.on_scroll_to_anchor,
|
||||
'scroll_to_ref': self.on_scroll_to_ref,
|
||||
'scroll_to_frac': self.on_scroll_to_frac,
|
||||
'next_screen': self.on_next_screen,
|
||||
'change_font_size': self.change_font_size,
|
||||
'change_color_scheme': self.change_color_scheme,
|
||||
'gesture_from_margin': self.gesture_from_margin,
|
||||
'wheel_from_margin': self.wheel_from_margin,
|
||||
'change_font_size': self.change_font_size,
|
||||
'display': self.display,
|
||||
'find': self.find,
|
||||
'window_size': self.received_window_size,
|
||||
'gesture_from_margin': self.gesture_from_margin,
|
||||
'get_current_cfi': self.get_current_cfi,
|
||||
'initialize':self.initialize,
|
||||
'modify_selection': self.modify_selection,
|
||||
'next_screen': self.on_next_screen,
|
||||
'scroll_to_anchor': self.on_scroll_to_anchor,
|
||||
'scroll_to_frac': self.on_scroll_to_frac,
|
||||
'scroll_to_ref': self.on_scroll_to_ref,
|
||||
'set_forward_keypresses': self.set_forward_keypresses,
|
||||
'set_reference_mode': self.set_reference_mode,
|
||||
'modify_selection': self.modify_selection,
|
||||
'wheel_from_margin': self.wheel_from_margin,
|
||||
'window_size': self.received_window_size,
|
||||
}
|
||||
self.comm = IframeClient(handlers)
|
||||
self.last_window_ypos = 0
|
||||
|
@ -4,23 +4,24 @@ from __python__ import hash_literals
|
||||
|
||||
from elementmaker import E
|
||||
from read_book.globals import runtime
|
||||
from session import defaults
|
||||
|
||||
opts = {}
|
||||
|
||||
def update_settings(settings):
|
||||
settings = settings or {}
|
||||
opts.columns_per_screen = settings.columns_per_screen or {'portrait':0, 'landscape':0}
|
||||
opts.margin_left = max(0, settings.margin_left or 0)
|
||||
opts.margin_right = max(0, settings.margin_right or 0)
|
||||
opts.color_scheme = settings.color_scheme
|
||||
opts.base_font_size = max(8, min(settings.base_font_size or 16, 64))
|
||||
opts.user_stylesheet = settings.user_stylesheet or ''
|
||||
opts.hide_tooltips = settings.hide_tooltips
|
||||
opts.cover_preserve_aspect_ratio = v'!!settings.cover_preserve_aspect_ratio'
|
||||
settings = settings or defaults
|
||||
opts.base_font_size = max(8, min(settings.base_font_size, 64))
|
||||
opts.bg_image_fade = settings.bg_image_fade or 'transparent'
|
||||
opts.paged_wheel_scrolls_by_screen = v'!!settings.paged_wheel_scrolls_by_screen'
|
||||
opts.color_scheme = settings.color_scheme
|
||||
opts.columns_per_screen = settings.columns_per_screen
|
||||
opts.cover_preserve_aspect_ratio = v'!!settings.cover_preserve_aspect_ratio'
|
||||
opts.hide_tooltips = settings.hide_tooltips
|
||||
opts.is_dark_theme = v'!!settings.is_dark_theme'
|
||||
opts.override_book_colors = settings.override_book_colors or 'never'
|
||||
opts.margin_left = max(0, settings.margin_left)
|
||||
opts.margin_right = max(0, settings.margin_right)
|
||||
opts.override_book_colors = settings.override_book_colors
|
||||
opts.paged_wheel_scrolls_by_screen = v'!!settings.paged_wheel_scrolls_by_screen'
|
||||
opts.user_stylesheet = settings.user_stylesheet
|
||||
|
||||
update_settings()
|
||||
|
||||
|
@ -200,29 +200,29 @@ class View:
|
||||
),
|
||||
)
|
||||
handlers = {
|
||||
'ready': self.on_iframe_ready,
|
||||
'bump_font_size': self.bump_font_size,
|
||||
'content_loaded': self.on_content_loaded,
|
||||
'error': self.on_iframe_error,
|
||||
'next_spine_item': self.on_next_spine_item,
|
||||
'next_section': self.on_next_section,
|
||||
'lookup_word': self.on_lookup_word,
|
||||
'find_in_spine': self.on_find_in_spine,
|
||||
'goto_doc_boundary': def(data): self.goto_doc_boundary(data.start);,
|
||||
'handle_keypress': self.on_handle_keypress,
|
||||
'handle_shortcut': self.on_handle_shortcut,
|
||||
'human_scroll': self.on_human_scroll,
|
||||
'lookup_word': self.on_lookup_word,
|
||||
'next_section': self.on_next_section,
|
||||
'next_spine_item': self.on_next_spine_item,
|
||||
'print': self.on_print,
|
||||
'ready': self.on_iframe_ready,
|
||||
'reference_item_changed': self.on_reference_item_changed,
|
||||
'report_cfi': self.on_report_cfi,
|
||||
'request_size': self.on_request_size,
|
||||
'scroll_to_anchor': self.on_scroll_to_anchor,
|
||||
'selectionchange': self.on_selection_change,
|
||||
'show_chrome': self.show_chrome,
|
||||
'show_footnote': self.on_show_footnote,
|
||||
'update_cfi': self.on_update_cfi,
|
||||
'update_progress_frac': self.on_update_progress_frac,
|
||||
'report_cfi': self.on_report_cfi,
|
||||
'update_toc_position': self.on_update_toc_position,
|
||||
'content_loaded': self.on_content_loaded,
|
||||
'show_chrome': self.show_chrome,
|
||||
'bump_font_size': self.bump_font_size,
|
||||
'find_in_spine': self.on_find_in_spine,
|
||||
'request_size': self.on_request_size,
|
||||
'show_footnote': self.on_show_footnote,
|
||||
'print': self.on_print,
|
||||
'human_scroll': self.on_human_scroll,
|
||||
'selectionchange': self.on_selection_change,
|
||||
'handle_shortcut': self.on_handle_shortcut,
|
||||
'handle_keypress': self.on_handle_keypress,
|
||||
'reference_item_changed': self.on_reference_item_changed,
|
||||
}
|
||||
entry_point = None if runtime.is_standalone_viewer else 'read_book.iframe'
|
||||
if runtime.is_standalone_viewer:
|
||||
|
@ -9,72 +9,72 @@ from ajax import ajax_send
|
||||
|
||||
defaults = {
|
||||
# Book list settings
|
||||
'view_mode': 'cover_grid',
|
||||
'sort': 'timestamp.desc', # comma separated list of items of the form: field.order
|
||||
'copy_to_library_dupes': 'add;overwrite',
|
||||
'last_sort_order': {},
|
||||
'show_all_metadata': False, # show all metadata fields in the book details panel
|
||||
'copy_to_library_dupes': 'add;overwrite',
|
||||
'sort': 'timestamp.desc', # comma separated list of items of the form: field.order
|
||||
'view_mode': 'cover_grid',
|
||||
|
||||
# Tag Browser settings
|
||||
'partition_method': 'first letter', # other choices: 'disable', 'partition'
|
||||
'and_search_terms': False, # how to add search terms to the search expression from the Tag Browser
|
||||
'collapse_at': 25, # number of items at which sub-groups are created, 0 to disable
|
||||
'dont_collapse': '', # comma separated list of category names
|
||||
'sort_tags_by': 'name', # other choices: popularity, rating
|
||||
'hide_empty_categories': 'no',
|
||||
'and_search_terms': False, # how to add search terms to the search expression from the Tag Browser
|
||||
'partition_method': 'first letter', # other choices: 'disable', 'partition'
|
||||
'sort_tags_by': 'name', # other choices: popularity, rating
|
||||
|
||||
# Book reader settings
|
||||
'margin_right': 20,
|
||||
'margin_left': 20,
|
||||
'margin_top': 20,
|
||||
'margin_bottom': 20,
|
||||
'read_mode': 'paged',
|
||||
'cover_preserve_aspect_ratio': True,
|
||||
'max_text_height': 0,
|
||||
'max_text_width': 0,
|
||||
'columns_per_screen': {'portrait':0, 'landscape':0},
|
||||
'user_stylesheet': '',
|
||||
'background_image': None,
|
||||
'background_image_style': 'scaled',
|
||||
'background_image_fade': 0,
|
||||
'current_color_scheme': 'system',
|
||||
'user_color_schemes': {},
|
||||
'override_book_colors': 'never',
|
||||
'background_image_style': 'scaled',
|
||||
'background_image': None,
|
||||
'base_font_size': 16,
|
||||
'book_scrollbar': False,
|
||||
'columns_per_screen': {'portrait':0, 'landscape':0},
|
||||
'controls_help_shown_count': 0,
|
||||
'header': {},
|
||||
'cover_preserve_aspect_ratio': True,
|
||||
'current_color_scheme': 'system',
|
||||
'footer': {'right': 'progress'},
|
||||
'word_actions': v'[]',
|
||||
'header': {},
|
||||
'hide_tooltips': False,
|
||||
'keyboard_shortcuts': {},
|
||||
'book_scrollbar': False,
|
||||
'margin_bottom': 20,
|
||||
'margin_left': 20,
|
||||
'margin_right': 20,
|
||||
'margin_top': 20,
|
||||
'max_text_height': 0,
|
||||
'max_text_width': 0,
|
||||
'override_book_colors': 'never',
|
||||
'paged_margin_clicks_scroll_by_screen': True,
|
||||
'paged_wheel_scrolls_by_screen': False,
|
||||
'read_mode': 'paged',
|
||||
'standalone_font_settings': {},
|
||||
'standalone_misc_settings': {},
|
||||
'standalone_recently_opened': v'[]',
|
||||
'paged_wheel_scrolls_by_screen': False,
|
||||
'paged_margin_clicks_scroll_by_screen': True,
|
||||
'user_color_schemes': {},
|
||||
'user_stylesheet': '',
|
||||
'word_actions': v'[]',
|
||||
}
|
||||
|
||||
is_local_setting = {
|
||||
'margin_right': True,
|
||||
'margin_left': True,
|
||||
'margin_top': True,
|
||||
'background_image_fade': True,
|
||||
'background_image_style': True,
|
||||
'background_image': True,
|
||||
'base_font_size': True,
|
||||
'columns_per_screen': True,
|
||||
'controls_help_shown_count': True,
|
||||
'current_color_scheme': True,
|
||||
'margin_bottom': True,
|
||||
'read_mode': 'paged',
|
||||
'margin_left': True,
|
||||
'margin_right': True,
|
||||
'margin_top': True,
|
||||
'max_text_height': True,
|
||||
'max_text_width': True,
|
||||
'columns_per_screen': True,
|
||||
'user_stylesheet': True,
|
||||
'background_image': True,
|
||||
'background_image_style': True,
|
||||
'background_image_fade': True,
|
||||
'current_color_scheme': True,
|
||||
'override_book_colors': True,
|
||||
'base_font_size': True,
|
||||
'controls_help_shown_count': True,
|
||||
'read_mode': 'paged',
|
||||
'standalone_font_settings': True,
|
||||
'standalone_misc_settings': True,
|
||||
'standalone_recently_opened': True,
|
||||
'user_stylesheet': True,
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user