From e44ca5f067ecc5b0bcc879b1bc946c7e0ee14764 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Tue, 13 Sep 2016 09:13:55 +0530 Subject: [PATCH] Edit Book: When unmarking marked text, automatically ensure the current search scope is not to search in marked text --- src/calibre/gui2/tweak_book/boss.py | 2 ++ src/calibre/gui2/tweak_book/search.py | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/src/calibre/gui2/tweak_book/boss.py b/src/calibre/gui2/tweak_book/boss.py index 33ef1bc886..75aca83844 100644 --- a/src/calibre/gui2/tweak_book/boss.py +++ b/src/calibre/gui2/tweak_book/boss.py @@ -796,6 +796,8 @@ class Boss(QObject): ed.mark_selected_text() if ed.has_marked_text: self.gui.central.search_panel.set_where('selected-text') + else: + self.gui.central.search_panel.unset_marked() def editor_action(self, action): ed = self.gui.central.current_editor diff --git a/src/calibre/gui2/tweak_book/search.py b/src/calibre/gui2/tweak_book/search.py index df8c841467..09440a343f 100644 --- a/src/calibre/gui2/tweak_book/search.py +++ b/src/calibre/gui2/tweak_book/search.py @@ -485,6 +485,10 @@ class SearchPanel(QWidget): # {{{ def set_where(self, val): self.widget.where = val + def unset_marked(self): + if self.widget.where == 'selected-text': + self.widget.where = self.widget.DEFAULT_STATE['where'] + def keyPressEvent(self, ev): if ev.key() == Qt.Key_Escape: self.hide_panel()