From dd515e65e76e69a0adbd82589c2edbf80eea54e4 Mon Sep 17 00:00:00 2001 From: Henrik Giesel Date: Sun, 9 Aug 2020 13:10:14 +0200 Subject: [PATCH] Add new use of requireReset --- qt/aqt/addcards.py | 2 +- qt/aqt/browser.py | 16 ++++++++-------- qt/aqt/editcurrent.py | 2 +- qt/aqt/editor.py | 2 +- qt/aqt/main.py | 4 ++-- 5 files changed, 13 insertions(+), 13 deletions(-) diff --git a/qt/aqt/addcards.py b/qt/aqt/addcards.py index 0194c3296..0f602cda8 100644 --- a/qt/aqt/addcards.py +++ b/qt/aqt/addcards.py @@ -177,8 +177,8 @@ class AddCards(QDialog): self.mw.col.add_note(note, self.deckChooser.selectedId()) self.mw.col.clearUndo() self.addHistory(note) - self.mw.requireReset() self.previousNote = note + self.mw.requireReset('addCardsAddNote', self) gui_hooks.add_cards_did_add_note(note) return note diff --git a/qt/aqt/browser.py b/qt/aqt/browser.py index f68ad3670..21a77a918 100644 --- a/qt/aqt/browser.py +++ b/qt/aqt/browser.py @@ -1564,7 +1564,7 @@ where id in %s""" newRow = max(newRow, 0) self.model.focusedCard = self.model.cards[newRow] self.model.endReset() - self.mw.requireReset() + self.mw.requireReset('browserDeleteNote', self) tooltip( ngettext("%d note deleted.", "%d notes deleted.", len(nids)) % len(nids) ) @@ -1616,7 +1616,7 @@ update cards set usn=?, mod=?, did=? where id in """ did, ) self.model.endReset() - self.mw.requireReset() + self.mw.requireReset('browserSetDeck', self) # Tags ###################################################################### @@ -1642,7 +1642,7 @@ update cards set usn=?, mod=?, did=? where id in """ self.model.beginReset() func(self.selectedNotes(), tags) self.model.endReset() - self.mw.requireReset() + self.mw.requireReset('browserAddTags', self) def deleteTags(self, tags=None, label=None): if label is None: @@ -1675,7 +1675,7 @@ update cards set usn=?, mod=?, did=? where id in """ else: self.col.sched.unsuspendCards(c) self.model.reset() - self.mw.requireReset() + self.mw.requireReset('browserSuspend', self) # Exporting ###################################################################### @@ -1763,7 +1763,7 @@ update cards set usn=?, mod=?, did=? where id in """ shift=frm.shift.isChecked(), ) self.search() - self.mw.requireReset() + self.mw.requireReset('browserReposition', self) self.model.endReset() # Rescheduling @@ -1789,7 +1789,7 @@ update cards set usn=?, mod=?, did=? where id in """ fmax = max(fmin, fmax) self.col.sched.reschedCards(self.selectedCards(), fmin, fmax) self.search() - self.mw.requireReset() + self.mw.requireReset('browserReschedule', self) self.model.endReset() # Edit: selection @@ -1923,7 +1923,7 @@ update cards set usn=?, mod=?, did=? where id in """ def on_done(fut): self.search() - self.mw.requireReset() + self.mw.requireReset('browserFindReplace', self) self.model.endReset() total = len(nids) @@ -2025,7 +2025,7 @@ update cards set usn=?, mod=?, did=? where id in """ self.col.tags.bulkAdd(list(nids), _("duplicate")) self.mw.progress.finish() self.model.endReset() - self.mw.requireReset() + self.mw.requireReset('browserTagDupes', self) tooltip(_("Notes tagged.")) def dupeLinkClicked(self, link): diff --git a/qt/aqt/editcurrent.py b/qt/aqt/editcurrent.py index e612f6c65..2452652b3 100644 --- a/qt/aqt/editcurrent.py +++ b/qt/aqt/editcurrent.py @@ -27,7 +27,7 @@ class EditCurrent(QDialog): self.editor.setNote(self.mw.reviewer.card.note(), focusTo=0) restoreGeom(self, "editcurrent") gui_hooks.state_did_reset.append(self.onReset) - self.mw.requireReset() + self.mw.requireReset('editCurrentInit', self) self.show() # reset focus after open, taking care not to retain webview # pylint: disable=unnecessary-lambda diff --git a/qt/aqt/editor.py b/qt/aqt/editor.py index 2f0e95c81..4e418bc4e 100644 --- a/qt/aqt/editor.py +++ b/qt/aqt/editor.py @@ -393,7 +393,7 @@ class Editor: if not self.addMode: self.note.flush() - self.mw.requireReset() + self.mw.requireReset('editorBridgeCmd', self) if type == "blur": self.currentField = None # run any filters diff --git a/qt/aqt/main.py b/qt/aqt/main.py index 6861eaeec..62d626be4 100644 --- a/qt/aqt/main.py +++ b/qt/aqt/main.py @@ -684,11 +684,11 @@ from the profile screen." self.maybeEnableUndo() self.moveToState(self.state) - def requireReset(self, modal=False): + def requireReset(self, reason, context=None, modal=False): "Signal queue needs to be rebuilt when edits are finished or by user." self.autosave() self.resetModal = modal - if gui_hooks.main_window_will_require_reset(self.interactiveState()): + if gui_hooks.main_window_will_require_reset(self.interactiveState(), reason, context): self.moveToState("resetRequired") def interactiveState(self):