diff --git a/src/calibre/gui2/complete2.py b/src/calibre/gui2/complete2.py index 5539d6edd3..9cc8d3414b 100644 --- a/src/calibre/gui2/complete2.py +++ b/src/calibre/gui2/complete2.py @@ -340,6 +340,13 @@ class LineEdit(QLineEdit, LineEditECM): return property(fget=fget, fset=fset) # }}} + def event(self, ev): + # See https://bugreports.qt.io/browse/QTBUG-46911 + if ev.type() == ev.ShortcutOverride and ( + ev.key() in (Qt.Key_Left, Qt.Key_Right) and (ev.modifiers() & ~Qt.KeypadModifier) == Qt.ControlModifier): + ev.accept() + return QLineEdit.event(self, ev) + def complete(self, show_all=False, select_first=True): orig = None if show_all: diff --git a/src/calibre/gui2/widgets.py b/src/calibre/gui2/widgets.py index ed40a97e35..85b649109b 100644 --- a/src/calibre/gui2/widgets.py +++ b/src/calibre/gui2/widgets.py @@ -480,7 +480,13 @@ class EnLineEdit(LineEditECM, QLineEdit): # {{{ Includes an extended content menu. ''' - pass + def event(self, ev): + # See https://bugreports.qt.io/browse/QTBUG-46911 + if ev.type() == ev.ShortcutOverride and ( + ev.key() in (Qt.Key_Left, Qt.Key_Right) and (ev.modifiers() & ~Qt.KeypadModifier) == Qt.ControlModifier): + ev.accept() + return QLineEdit.event(self, ev) + # }}} class ItemsCompleter(QCompleter): # {{{