diff --git a/ankiqt/config.py b/ankiqt/config.py
index 3638a94a4..36c3d0afc 100644
--- a/ankiqt/config.py
+++ b/ankiqt/config.py
@@ -98,6 +98,7 @@ class Config(dict):
'loadLastDeck': False,
'deckBrowserRefreshPeriod': 3600,
'deckBrowserOrder': 0,
+ 'deleteMedia': False,
}
for (k,v) in fields.items():
if not self.has_key(k):
diff --git a/ankiqt/ui/facteditor.py b/ankiqt/ui/facteditor.py
index cfcd0451e..24009b56c 100644
--- a/ankiqt/ui/facteditor.py
+++ b/ankiqt/ui/facteditor.py
@@ -865,6 +865,7 @@ class FactEditor(object):
else:
w = self.focusedEdit()
path = self.deck.addMedia(file)
+ self.maybeDelete(path, file)
w.insertHtml('
' % path)
def onAddSound(self):
@@ -883,9 +884,20 @@ class FactEditor(object):
else:
w = self.focusedEdit()
path = self.deck.addMedia(file)
+ self.maybeDelete(path, file)
anki.sound.play(path)
w.insertHtml('[sound:%s]' % path)
+ def maybeDelete(self, new, old):
+ if not ankiqt.mw.config['deleteMedia']:
+ return
+ if new == os.path.basename(old):
+ return
+ try:
+ os.unlink(old)
+ except:
+ pass
+
def onRecSound(self):
self.initMedia()
w = self.focusedEdit()
diff --git a/ankiqt/ui/preferences.py b/ankiqt/ui/preferences.py
index b56edbbd9..70e9ad83a 100644
--- a/ankiqt/ui/preferences.py
+++ b/ankiqt/ui/preferences.py
@@ -143,6 +143,7 @@ class Preferences(QDialog):
self.dialog.showProgress.setChecked(self.config['showProgress'])
self.dialog.openLastDeck.setChecked(self.config['loadLastDeck'])
self.dialog.deckBrowserOrder.setChecked(self.config['deckBrowserOrder'])
+ self.dialog.deleteMedia.setChecked(self.config['deleteMedia'])
def updateAdvanced(self):
self.config['showTrayIcon'] = self.dialog.showTray.isChecked()
@@ -160,6 +161,7 @@ class Preferences(QDialog):
self.config['deckBrowserOrder'] = 1
else:
self.config['deckBrowserOrder'] = 0
+ self.config['deleteMedia'] = self.dialog.deleteMedia.isChecked()
def codeToIndex(self, code):
n = 0
diff --git a/designer/preferences.ui b/designer/preferences.ui
index c6c2303f1..2ad65a627 100644
--- a/designer/preferences.ui
+++ b/designer/preferences.ui
@@ -557,7 +557,7 @@
- -
+
-
Add hidden char to text (fixes Thai on OSX)
@@ -578,6 +578,13 @@
+ -
+
+
+ Delete original media on add
+
+
+
-
@@ -648,6 +655,7 @@
showStudyOptions
openLastDeck
deckBrowserOrder
+ deleteMedia
addZeroSpace
buttonBox