diff --git a/qt/aqt/editor.py b/qt/aqt/editor.py
index 74b9d9358..86e861a83 100644
--- a/qt/aqt/editor.py
+++ b/qt/aqt/editor.py
@@ -956,6 +956,8 @@ class EditorWebView(AnkiWebView):
def _onPaste(self, mode):
extended = not (self.editor.mw.app.queryKeyboardModifiers() & Qt.ShiftModifier)
+ if self.editor.mw.pm.profile.get("pasteInvert", False):
+ extended = not extended
mime = self.editor.mw.app.clipboard().mimeData(mode=mode)
html, internal = self._processMime(mime)
if not html:
diff --git a/qt/aqt/preferences.py b/qt/aqt/preferences.py
index 02a5bee6c..a789ec236 100644
--- a/qt/aqt/preferences.py
+++ b/qt/aqt/preferences.py
@@ -225,9 +225,11 @@ Not currently enabled; click the sync button in the main window to enable."""
def setupOptions(self):
self.form.pastePNG.setChecked(self.prof.get("pastePNG", False))
self.form.uiScale.setValue(self.mw.pm.uiScale() * 100)
+ self.form.pasteInvert.setChecked(self.prof.get("pasteInvert", False))
def updateOptions(self):
self.prof["pastePNG"] = self.form.pastePNG.isChecked()
+ self.prof["pasteInvert"] = self.form.pasteInvert.isChecked()
newScale = self.form.uiScale.value() / 100
if newScale != self.mw.pm.uiScale():
self.mw.pm.setUiScale(newScale)
diff --git a/qt/designer/preferences.ui b/qt/designer/preferences.ui
index 796e64adb..bcbc77e73 100644
--- a/qt/designer/preferences.ui
+++ b/qt/designer/preferences.ui
@@ -94,6 +94,13 @@
+ -
+
+
+ Paste without shift key strips formatting
+
+
+
-
@@ -508,6 +515,7 @@
showEstimates
showProgress
pastePNG
+ pasteInvert
nightMode
dayLearnFirst
newSched