diff --git a/qutebrowser/completion/completer.py b/qutebrowser/completion/completer.py index 12f607b51..ebdb1d10b 100644 --- a/qutebrowser/completion/completer.py +++ b/qutebrowser/completion/completer.py @@ -22,7 +22,7 @@ from PyQt5.QtCore import pyqtSignal, pyqtSlot, QObject, QTimer from qutebrowser.config import config -from qutebrowser.commands import cmdexc, cmdutils, runners +from qutebrowser.commands import cmdutils, runners from qutebrowser.utils import usertypes, log, objreg, utils from qutebrowser.completion.models import instances, sortfilter @@ -485,16 +485,3 @@ class Completer(QObject): """Select the next completion item.""" self._open_completion_if_needed() self.next_prev_item.emit(False) - - @cmdutils.register(instance='completion', hide=True, - modes=[usertypes.KeyMode.command], scope='window') - def completion_item_del(self): - """Delete the current completion item.""" - completion = objreg.get('completion', scope='window', - window=self._win_id) - if not completion.currentIndex().isValid(): - raise cmdexc.CommandError("No item selected!") - try: - self.model().srcmodel.delete_cur_item(completion) - except NotImplementedError: - raise cmdexc.CommandError("Cannot delete this item.") diff --git a/qutebrowser/completion/completionwidget.py b/qutebrowser/completion/completionwidget.py index 8c2b8c1fd..80e87dbe4 100644 --- a/qutebrowser/completion/completionwidget.py +++ b/qutebrowser/completion/completionwidget.py @@ -29,7 +29,8 @@ from PyQt5.QtCore import pyqtSlot, pyqtSignal, Qt, QItemSelectionModel from qutebrowser.config import config, style from qutebrowser.completion import completiondelegate, completer from qutebrowser.completion.models import base -from qutebrowser.utils import qtutils, objreg, utils +from qutebrowser.utils import qtutils, objreg, utils, usertypes +from qutebrowser.commands import cmdexc, cmdutils class CompletionView(QTreeView): @@ -277,3 +278,14 @@ class CompletionView(QTreeView): if scrollbar is not None: scrollbar.setValue(scrollbar.minimum()) super().showEvent(e) + + @cmdutils.register(instance='completion', hide=True, + modes=[usertypes.KeyMode.command], scope='window') + def completion_item_del(self): + """Delete the current completion item.""" + if not self.currentIndex().isValid(): + raise cmdexc.CommandError("No item selected!") + try: + self.model().srcmodel.delete_cur_item(self) + except NotImplementedError: + raise cmdexc.CommandError("Cannot delete this item.")