예제 #1
0
def completer_obj(qtbot, status_command_stub, config_stub, monkeypatch, stubs,
                  completion_widget_stub):
    """Create the completer used for testing."""
    monkeypatch.setattr('qutebrowser.completion.completer.QTimer',
                        stubs.InstaTimer)
    config_stub.data = {'completion': {'show': 'auto'}}
    return completer.Completer(status_command_stub, 0, completion_widget_stub)
예제 #2
0
    def __init__(self, win_id, parent=None):
        super().__init__(parent)
        self._win_id = win_id
        objreg.register('completion', self, scope='window', window=win_id)
        cmd = objreg.get('status-command', scope='window', window=win_id)
        completer_obj = completer.Completer(cmd, win_id, self)
        completer_obj.next_prev_item.connect(self.on_next_prev_item)
        objreg.register('completer', completer_obj, scope='window',
                        window=win_id)
        self.enabled = config.get('completion', 'show')
        objreg.get('config').changed.connect(self.set_enabled)
        # FIXME handle new aliases.
        # objreg.get('config').changed.connect(self.init_command_completion)

        self._column_widths = base.BaseCompletionModel.COLUMN_WIDTHS

        self._delegate = completiondelegate.CompletionItemDelegate(self)
        self.setItemDelegate(self._delegate)
        style.set_register_stylesheet(self)
        self.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Minimum)
        self.setHeaderHidden(True)
        self.setAlternatingRowColors(True)
        self.setIndentation(0)
        self.setItemsExpandable(False)
        self.setExpandsOnDoubleClick(False)
        self.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
        # WORKAROUND
        # This is a workaround for weird race conditions with invalid
        # item indexes leading to segfaults in Qt.
        #
        # Some background: http://bugs.quassel-irc.org/issues/663
        # The proposed fix there was later reverted because it didn't help.
        self.setUniformRowHeights(True)
        self.hide()
예제 #3
0
def completer_obj(qtbot, status_command_stub, config_stub, monkeypatch, stubs,
                  completion_widget_stub):
    """Create the completer used for testing."""
    monkeypatch.setattr(completer, 'QTimer', stubs.InstaTimer)
    config_stub.val.completion.show = 'auto'
    return completer.Completer(cmd=status_command_stub, win_id=0,
                               parent=completion_widget_stub)
예제 #4
0
 def _init_completion(self):
     self._completion = completionwidget.CompletionView(self.win_id, self)
     cmd = objreg.get('status-command', scope='window', window=self.win_id)
     completer_obj = completer.Completer(cmd, self.win_id, self._completion)
     self._completion.selection_changed.connect(
         completer_obj.on_selection_changed)
     objreg.register('completion', self._completion, scope='window',
                     window=self.win_id)
예제 #5
0
 def _init_completion(self):
     self._completion = completionwidget.CompletionView(self.win_id, self)
     cmd = objreg.get('status-command', scope='window', window=self.win_id)
     completer_obj = completer.Completer(cmd=cmd, win_id=self.win_id,
                                         parent=self._completion)
     self._completion.selection_changed.connect(
         completer_obj.on_selection_changed)
     objreg.register('completion', self._completion, scope='window',
                     window=self.win_id)
     self._add_overlay(self._completion, self._completion.update_geometry)