mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Fix auto-scroll across file boundaries
This commit is contained in:
parent
9be75841ba
commit
7c143c7207
@ -187,9 +187,13 @@ def handle_shortcut(sc_name, evt):
|
|||||||
|
|
||||||
def layout(is_single_page):
|
def layout(is_single_page):
|
||||||
line_height.ans = None
|
line_height.ans = None
|
||||||
|
set_css(document.body, margin='0', border_width='0', padding='0')
|
||||||
|
|
||||||
|
|
||||||
|
def flow_auto_scroll_resume():
|
||||||
scroll_animator.wait = False
|
scroll_animator.wait = False
|
||||||
scroll_animator.sync()
|
scroll_animator.sync()
|
||||||
set_css(document.body, margin='0', border_width='0', padding='0')
|
|
||||||
|
|
||||||
# Pause auto-scroll while minimized
|
# Pause auto-scroll while minimized
|
||||||
document.addEventListener("visibilitychange", def():
|
document.addEventListener("visibilitychange", def():
|
||||||
|
@ -10,9 +10,10 @@ from iframe_comm import IframeClient
|
|||||||
from read_book.cfi import scroll_to as scroll_to_cfi
|
from read_book.cfi import scroll_to as scroll_to_cfi
|
||||||
from read_book.extract import get_elements
|
from read_book.extract import get_elements
|
||||||
from read_book.flow_mode import (
|
from read_book.flow_mode import (
|
||||||
anchor_funcs as flow_anchor_funcs, flow_onwheel, flow_to_scroll_fraction,
|
anchor_funcs as flow_anchor_funcs, cancel_scroll as flow_cancel_auto_scroll,
|
||||||
|
flow_auto_scroll_resume, flow_onwheel, flow_to_scroll_fraction,
|
||||||
handle_gesture as flow_handle_gesture, handle_shortcut as flow_handle_shortcut,
|
handle_gesture as flow_handle_gesture, handle_shortcut as flow_handle_shortcut,
|
||||||
layout as flow_layout, scroll_by_page as flow_scroll_by_page, cancel_scroll as flow_cancel_auto_scroll
|
layout as flow_layout, scroll_by_page as flow_scroll_by_page
|
||||||
)
|
)
|
||||||
from read_book.footnotes import is_footnote_link
|
from read_book.footnotes import is_footnote_link
|
||||||
from read_book.globals import (
|
from read_book.globals import (
|
||||||
@ -24,8 +25,9 @@ from read_book.paged_mode import (
|
|||||||
anchor_funcs as paged_anchor_funcs, calc_columns_per_screen, current_cfi,
|
anchor_funcs as paged_anchor_funcs, calc_columns_per_screen, current_cfi,
|
||||||
handle_gesture as paged_handle_gesture, handle_shortcut as paged_handle_shortcut,
|
handle_gesture as paged_handle_gesture, handle_shortcut as paged_handle_shortcut,
|
||||||
jump_to_cfi as paged_jump_to_cfi, layout as paged_layout,
|
jump_to_cfi as paged_jump_to_cfi, layout as paged_layout,
|
||||||
onwheel as paged_onwheel, prepare_for_resize as paged_prepare_for_resize,
|
onwheel as paged_onwheel, paged_auto_scroll_resume,
|
||||||
progress_frac, reset_paged_mode_globals, resize_done as paged_resize_done,
|
prepare_for_resize as paged_prepare_for_resize, progress_frac,
|
||||||
|
reset_paged_mode_globals, resize_done as paged_resize_done,
|
||||||
scroll_by_page as paged_scroll_by_page, scroll_to_elem,
|
scroll_by_page as paged_scroll_by_page, scroll_to_elem,
|
||||||
scroll_to_fraction as paged_scroll_to_fraction, snap_to_selection
|
scroll_to_fraction as paged_scroll_to_fraction, snap_to_selection
|
||||||
)
|
)
|
||||||
@ -186,6 +188,7 @@ class IframeBoss:
|
|||||||
self.to_scroll_fraction = flow_to_scroll_fraction
|
self.to_scroll_fraction = flow_to_scroll_fraction
|
||||||
self.jump_to_cfi = scroll_to_cfi
|
self.jump_to_cfi = scroll_to_cfi
|
||||||
self.anchor_funcs = flow_anchor_funcs
|
self.anchor_funcs = flow_anchor_funcs
|
||||||
|
self.auto_scroll_resume = flow_auto_scroll_resume
|
||||||
else:
|
else:
|
||||||
self.do_layout = paged_layout
|
self.do_layout = paged_layout
|
||||||
self.handle_wheel = paged_onwheel
|
self.handle_wheel = paged_onwheel
|
||||||
@ -194,6 +197,7 @@ class IframeBoss:
|
|||||||
self.jump_to_cfi = paged_jump_to_cfi
|
self.jump_to_cfi = paged_jump_to_cfi
|
||||||
self._handle_gesture = paged_handle_gesture
|
self._handle_gesture = paged_handle_gesture
|
||||||
self.anchor_funcs = paged_anchor_funcs
|
self.anchor_funcs = paged_anchor_funcs
|
||||||
|
self.auto_scroll_resume = paged_auto_scroll_resume
|
||||||
update_settings(data.settings)
|
update_settings(data.settings)
|
||||||
self.keyboard_shortcut_map = create_shortcut_map(data.settings.keyboard_shortcuts)
|
self.keyboard_shortcut_map = create_shortcut_map(data.settings.keyboard_shortcuts)
|
||||||
set_current_spine_item({
|
set_current_spine_item({
|
||||||
@ -313,6 +317,7 @@ class IframeBoss:
|
|||||||
self.onscroll()
|
self.onscroll()
|
||||||
self.send_message('content_loaded', progress_frac=self.calculate_progress_frac(), file_progress_frac=progress_frac())
|
self.send_message('content_loaded', progress_frac=self.calculate_progress_frac(), file_progress_frac=progress_frac())
|
||||||
self.last_cfi = None
|
self.last_cfi = None
|
||||||
|
self.auto_scroll_resume()
|
||||||
window.setTimeout(self.update_cfi, 0)
|
window.setTimeout(self.update_cfi, 0)
|
||||||
window.setTimeout(self.update_toc_position, 0)
|
window.setTimeout(self.update_toc_position, 0)
|
||||||
|
|
||||||
|
@ -653,3 +653,7 @@ def prepare_for_resize(width, height):
|
|||||||
|
|
||||||
def resize_done():
|
def resize_done():
|
||||||
resize_manager.end_resize()
|
resize_manager.end_resize()
|
||||||
|
|
||||||
|
|
||||||
|
def paged_auto_scroll_resume():
|
||||||
|
pass
|
||||||
|
Loading…
x
Reference in New Issue
Block a user