From 6ec52ff4515e565b4109a269afb65159acb6e992 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sun, 18 Apr 2021 08:38:32 +0530 Subject: [PATCH] Fix #1924872 [Shift select with no current selection results in error](https://bugs.launchpad.net/calibre/+bug/1924872) --- src/pyj/read_book/flow_mode.pyj | 5 ++++- src/pyj/read_book/paged_mode.pyj | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/pyj/read_book/flow_mode.pyj b/src/pyj/read_book/flow_mode.pyj index f6e16d1b74..8f4b4d15c9 100644 --- a/src/pyj/read_book/flow_mode.pyj +++ b/src/pyj/read_book/flow_mode.pyj @@ -628,7 +628,10 @@ def ensure_selection_visible(): def ensure_selection_boundary_visible(use_end): sel = window.getSelection() - rr = sel.getRangeAt(0) + try: + rr = sel.getRangeAt(0) + except: + rr = None if rr: r = rr.getBoundingClientRect() if r: diff --git a/src/pyj/read_book/paged_mode.pyj b/src/pyj/read_book/paged_mode.pyj index f5b36a3ef3..bc17069196 100644 --- a/src/pyj/read_book/paged_mode.pyj +++ b/src/pyj/read_book/paged_mode.pyj @@ -569,7 +569,10 @@ def snap_to_selection(): def ensure_selection_boundary_visible(use_end): sel = window.getSelection() - rr = sel.getRangeAt(0) + try: + rr = sel.getRangeAt(0) + except: + rr = None if rr: r = rr.getBoundingClientRect() if r: