Move completion_item_del to completion widget.
It was implemented as a member of the Completer object, but registered to the CompletionWidget. This led to the weird scenario where self was actually a CompletionWidget, even though it was declared in Completer.
This commit is contained in:
parent
9bfff1c685
commit
1ea28890b5
@ -22,7 +22,7 @@
|
|||||||
from PyQt5.QtCore import pyqtSignal, pyqtSlot, QObject, QTimer
|
from PyQt5.QtCore import pyqtSignal, pyqtSlot, QObject, QTimer
|
||||||
|
|
||||||
from qutebrowser.config import config
|
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.utils import usertypes, log, objreg, utils
|
||||||
from qutebrowser.completion.models import instances, sortfilter
|
from qutebrowser.completion.models import instances, sortfilter
|
||||||
|
|
||||||
@ -485,16 +485,3 @@ class Completer(QObject):
|
|||||||
"""Select the next completion item."""
|
"""Select the next completion item."""
|
||||||
self._open_completion_if_needed()
|
self._open_completion_if_needed()
|
||||||
self.next_prev_item.emit(False)
|
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.")
|
|
||||||
|
@ -29,7 +29,8 @@ from PyQt5.QtCore import pyqtSlot, pyqtSignal, Qt, QItemSelectionModel
|
|||||||
from qutebrowser.config import config, style
|
from qutebrowser.config import config, style
|
||||||
from qutebrowser.completion import completiondelegate, completer
|
from qutebrowser.completion import completiondelegate, completer
|
||||||
from qutebrowser.completion.models import base
|
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):
|
class CompletionView(QTreeView):
|
||||||
@ -277,3 +278,14 @@ class CompletionView(QTreeView):
|
|||||||
if scrollbar is not None:
|
if scrollbar is not None:
|
||||||
scrollbar.setValue(scrollbar.minimum())
|
scrollbar.setValue(scrollbar.minimum())
|
||||||
super().showEvent(e)
|
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.")
|
||||||
|
Loading…
Reference in New Issue
Block a user