mirror of
https://github.com/ankitects/anki.git
synced 2025-11-09 14:17:13 -05:00
disable some commands when not in main window, allow command+w from any window
This commit is contained in:
parent
8c8da8dedc
commit
ad80548f19
1 changed files with 14 additions and 4 deletions
|
|
@ -703,10 +703,13 @@ To upgrade an old deck, download Anki 0.9.8.7."""))
|
||||||
##########################################################################
|
##########################################################################
|
||||||
|
|
||||||
def onClose(self):
|
def onClose(self):
|
||||||
|
if self.inMainWindow():
|
||||||
cramming = self.deck is not None and self.deck.name() == "cram"
|
cramming = self.deck is not None and self.deck.name() == "cram"
|
||||||
self.saveAndClose(hideWelcome=cramming)
|
self.saveAndClose(hideWelcome=cramming)
|
||||||
if cramming:
|
if cramming:
|
||||||
self.loadRecent(0)
|
self.loadRecent(0)
|
||||||
|
else:
|
||||||
|
self.app.activeWindow().close()
|
||||||
|
|
||||||
def saveAndClose(self, hideWelcome=False):
|
def saveAndClose(self, hideWelcome=False):
|
||||||
"(Auto)save and close. Prompt if necessary. True if okay to proceed."
|
"(Auto)save and close. Prompt if necessary. True if okay to proceed."
|
||||||
|
|
@ -750,7 +753,11 @@ To upgrade an old deck, download Anki 0.9.8.7."""))
|
||||||
self.closeAllDeckWindows()
|
self.closeAllDeckWindows()
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
def inMainWindow(self):
|
||||||
|
return self.app.activeWindow() == self
|
||||||
|
|
||||||
def onNew(self, initial=False, path=None):
|
def onNew(self, initial=False, path=None):
|
||||||
|
if not self.inMainWindow(): return
|
||||||
if not self.saveAndClose(hideWelcome=True): return
|
if not self.saveAndClose(hideWelcome=True): return
|
||||||
if initial:
|
if initial:
|
||||||
path = os.path.join(self.documentDir, "mydeck.anki")
|
path = os.path.join(self.documentDir, "mydeck.anki")
|
||||||
|
|
@ -794,6 +801,7 @@ To upgrade an old deck, download Anki 0.9.8.7."""))
|
||||||
self.config['syncPassword'] = unicode(passwd.text())
|
self.config['syncPassword'] = unicode(passwd.text())
|
||||||
|
|
||||||
def onOpenOnline(self):
|
def onOpenOnline(self):
|
||||||
|
if not self.inMainWindow(): return
|
||||||
self.ensureSyncParams()
|
self.ensureSyncParams()
|
||||||
if not self.saveAndClose(hideWelcome=True): return
|
if not self.saveAndClose(hideWelcome=True): return
|
||||||
# we need a disk-backed file for syncing
|
# we need a disk-backed file for syncing
|
||||||
|
|
@ -812,6 +820,7 @@ To upgrade an old deck, download Anki 0.9.8.7."""))
|
||||||
self.moveToState("initial")
|
self.moveToState("initial")
|
||||||
|
|
||||||
def onOpen(self, samples=False):
|
def onOpen(self, samples=False):
|
||||||
|
if not self.inMainWindow(): return
|
||||||
key = _("Deck files (*.anki)")
|
key = _("Deck files (*.anki)")
|
||||||
if samples: defaultDir = self.getSamplesDir()
|
if samples: defaultDir = self.getSamplesDir()
|
||||||
else: defaultDir = self.getDefaultDir()
|
else: defaultDir = self.getDefaultDir()
|
||||||
|
|
@ -1491,6 +1500,7 @@ day = :d""", d=yesterday)
|
||||||
def syncDeck(self, interactive=True, create=False, onlyMerge=False,
|
def syncDeck(self, interactive=True, create=False, onlyMerge=False,
|
||||||
reload=True, checkSources=True):
|
reload=True, checkSources=True):
|
||||||
"Synchronise a deck with the server."
|
"Synchronise a deck with the server."
|
||||||
|
if not self.inMainWindow() and interactive: return
|
||||||
# vet input
|
# vet input
|
||||||
self.ensureSyncParams()
|
self.ensureSyncParams()
|
||||||
u=self.config['syncUsername']
|
u=self.config['syncUsername']
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue