From 28892996704478a8a2bf0c22c63ba17542e18963 Mon Sep 17 00:00:00 2001 From: Ben Nguyen <105088397+bpnguyen107@users.noreply.github.com> Date: Sun, 27 Oct 2024 21:16:42 -0700 Subject: [PATCH] Enable strict_optional for aqt/deckbrowser.py (#3537) * Enable strict_optional * Fix mypy errors --- .mypy.ini | 2 ++ qt/aqt/deckbrowser.py | 10 +++++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/.mypy.ini b/.mypy.ini index 891aaa659..c0d7700dc 100644 --- a/.mypy.ini +++ b/.mypy.ini @@ -50,6 +50,8 @@ strict_optional = True strict_optional = True [mypy-aqt.taglimit] strict_optional = True +[mypy-aqt.deckbrowser] +strict_optional = True [mypy-anki.scheduler.base] strict_optional = True [mypy-anki._backend.rsbridge] diff --git a/qt/aqt/deckbrowser.py b/qt/aqt/deckbrowser.py index a9e450871..a3969cedf 100644 --- a/qt/aqt/deckbrowser.py +++ b/qt/aqt/deckbrowser.py @@ -309,12 +309,16 @@ class DeckBrowser: def _showOptions(self, did: str) -> None: m = QMenu(self.mw) a = m.addAction(tr.actions_rename()) + assert a is not None qconnect(a.triggered, lambda b, did=did: self._rename(DeckId(int(did)))) a = m.addAction(tr.actions_options()) + assert a is not None qconnect(a.triggered, lambda b, did=did: self._options(DeckId(int(did)))) a = m.addAction(tr.actions_export()) + assert a is not None qconnect(a.triggered, lambda b, did=did: self._export(DeckId(int(did)))) a = m.addAction(tr.actions_delete()) + assert a is not None qconnect(a.triggered, lambda b, did=did: self._delete(DeckId(int(did)))) gui_hooks.deck_browser_will_show_options_menu(m, int(did)) m.popup(QCursor.pos()) @@ -357,9 +361,9 @@ class DeckBrowser: ).run_in_background() def _delete(self, did: DeckId) -> None: - deck_name = self.mw.col.decks.find_deck_in_tree( - self._render_data.tree, did - ).name + deck = self.mw.col.decks.find_deck_in_tree(self._render_data.tree, did) + assert deck is not None + deck_name = deck.name remove_decks( parent=self.mw, deck_ids=[did], deck_name=deck_name ).run_in_background()