mirror of
https://github.com/ankitects/anki.git
synced 2025-11-06 20:57:13 -05:00
Fix #1024 – catch deck rename errors
This commit is contained in:
parent
8e43b29816
commit
1dca43f409
2 changed files with 19 additions and 6 deletions
|
|
@ -88,11 +88,7 @@ class DeckBrowser:
|
|||
elif cmd == "import":
|
||||
self.mw.onImport()
|
||||
elif cmd == "create":
|
||||
deck = getOnlyText(tr(TR.DECKS_NAME_FOR_DECK))
|
||||
if deck:
|
||||
self.mw.col.decks.id(deck)
|
||||
gui_hooks.sidebar_should_refresh_decks()
|
||||
self.refresh()
|
||||
self._on_create()
|
||||
elif cmd == "drag":
|
||||
source, target = arg.split(",")
|
||||
self._handle_drag_and_drop(int(source), int(target or 0))
|
||||
|
|
@ -352,6 +348,17 @@ class DeckBrowser:
|
|||
def _onShared(self) -> None:
|
||||
openLink(f"{aqt.appShared}decks/")
|
||||
|
||||
def _on_create(self) -> None:
|
||||
deck = getOnlyText(tr(TR.DECKS_NAME_FOR_DECK))
|
||||
if deck:
|
||||
try:
|
||||
self.mw.col.decks.id(deck)
|
||||
except DeckRenameError as err:
|
||||
show_rename_deck_error(err)
|
||||
return
|
||||
gui_hooks.sidebar_should_refresh_decks()
|
||||
self.refresh()
|
||||
|
||||
######################################################################
|
||||
|
||||
def _v1_upgrade_message(self) -> str:
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@
|
|||
from typing import List, Optional
|
||||
|
||||
import aqt
|
||||
from anki.decks import DeckRenameError
|
||||
from aqt import gui_hooks
|
||||
from aqt.qt import *
|
||||
from aqt.utils import (
|
||||
|
|
@ -16,6 +17,7 @@ from aqt.utils import (
|
|||
restoreGeom,
|
||||
saveGeom,
|
||||
shortcut,
|
||||
show_rename_deck_error,
|
||||
showInfo,
|
||||
tr,
|
||||
)
|
||||
|
|
@ -164,7 +166,11 @@ class StudyDeck(QDialog):
|
|||
n = getOnlyText(tr(TR.DECKS_NEW_DECK_NAME), default=default)
|
||||
n = n.strip()
|
||||
if n:
|
||||
try:
|
||||
did = self.mw.col.decks.id(n)
|
||||
except DeckRenameError as err:
|
||||
show_rename_deck_error(err)
|
||||
return
|
||||
# deck name may not be the same as user input. ex: ", ::
|
||||
self.name = self.mw.col.decks.name(did)
|
||||
# make sure we clean up reset hook when manually exiting
|
||||
|
|
|
|||
Loading…
Reference in a new issue