parent
1d7f704804
commit
d611a37d7d
@ -159,11 +159,12 @@ class ModeManager(QObject):
|
|||||||
arg2: The window ID of this mode manager.
|
arg2: The window ID of this mode manager.
|
||||||
left: Emitted when a mode is left.
|
left: Emitted when a mode is left.
|
||||||
arg1: The mode which has been left.
|
arg1: The mode which has been left.
|
||||||
arg2: The window ID of this mode manager.
|
arg2: The new current mode.
|
||||||
|
arg3: The window ID of this mode manager.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
entered = pyqtSignal(usertypes.KeyMode, int)
|
entered = pyqtSignal(usertypes.KeyMode, int)
|
||||||
left = pyqtSignal(usertypes.KeyMode, int)
|
left = pyqtSignal(usertypes.KeyMode, usertypes.KeyMode, int)
|
||||||
|
|
||||||
def __init__(self, win_id, parent=None):
|
def __init__(self, win_id, parent=None):
|
||||||
super().__init__(parent)
|
super().__init__(parent)
|
||||||
@ -321,7 +322,7 @@ class ModeManager(QObject):
|
|||||||
log.modes.debug("Leaving mode {}{}, new mode stack {}".format(
|
log.modes.debug("Leaving mode {}{}, new mode stack {}".format(
|
||||||
mode, '' if reason is None else ' (reason: {})'.format(reason),
|
mode, '' if reason is None else ' (reason: {})'.format(reason),
|
||||||
self.mode_stack))
|
self.mode_stack))
|
||||||
self.left.emit(mode, self._win_id)
|
self.left.emit(mode, self.mode(), self._win_id)
|
||||||
|
|
||||||
@cmdutils.register(instance='mode-manager', name='leave-mode',
|
@cmdutils.register(instance='mode-manager', name='leave-mode',
|
||||||
not_modes=[usertypes.KeyMode.normal], hide=True,
|
not_modes=[usertypes.KeyMode.normal], hide=True,
|
||||||
|
@ -235,6 +235,11 @@ class StatusBar(QWidget):
|
|||||||
self._insert_active = val
|
self._insert_active = val
|
||||||
self.setStyleSheet(style.get_stylesheet(self.STYLESHEET))
|
self.setStyleSheet(style.get_stylesheet(self.STYLESHEET))
|
||||||
|
|
||||||
|
def _set_mode_text(self, mode):
|
||||||
|
"""Set the mode text."""
|
||||||
|
text = "-- {} MODE --".format(mode.upper())
|
||||||
|
self.txt.set_text(self.txt.Text.normal, text)
|
||||||
|
|
||||||
def _pop_text(self):
|
def _pop_text(self):
|
||||||
"""Display a text in the statusbar and pop it from _text_queue."""
|
"""Display a text in the statusbar and pop it from _text_queue."""
|
||||||
try:
|
try:
|
||||||
@ -386,19 +391,21 @@ class StatusBar(QWidget):
|
|||||||
mode_manager = objreg.get('mode-manager', scope='window',
|
mode_manager = objreg.get('mode-manager', scope='window',
|
||||||
window=self._win_id)
|
window=self._win_id)
|
||||||
if mode in mode_manager.passthrough:
|
if mode in mode_manager.passthrough:
|
||||||
text = "-- {} MODE --".format(mode.name.upper())
|
self._set_mode_text(mode.name)
|
||||||
self.txt.set_text(self.txt.Text.normal, text)
|
|
||||||
if mode == usertypes.KeyMode.insert:
|
if mode == usertypes.KeyMode.insert:
|
||||||
self._set_insert_active(True)
|
self._set_insert_active(True)
|
||||||
|
|
||||||
@pyqtSlot(usertypes.KeyMode)
|
@pyqtSlot(usertypes.KeyMode, usertypes.KeyMode)
|
||||||
def on_mode_left(self, mode):
|
def on_mode_left(self, old_mode, new_mode):
|
||||||
"""Clear marked mode."""
|
"""Clear marked mode."""
|
||||||
mode_manager = objreg.get('mode-manager', scope='window',
|
mode_manager = objreg.get('mode-manager', scope='window',
|
||||||
window=self._win_id)
|
window=self._win_id)
|
||||||
if mode in mode_manager.passthrough:
|
if old_mode in mode_manager.passthrough:
|
||||||
self.txt.set_text(self.txt.Text.normal, '')
|
if new_mode in mode_manager.passthrough:
|
||||||
if mode == usertypes.KeyMode.insert:
|
self._set_mode_text(new_mode.name)
|
||||||
|
else:
|
||||||
|
self.txt.set_text(self.txt.Text.normal, '')
|
||||||
|
if old_mode == usertypes.KeyMode.insert:
|
||||||
self._set_insert_active(False)
|
self._set_insert_active(False)
|
||||||
|
|
||||||
@config.change_filter('ui', 'message-timeout')
|
@config.change_filter('ui', 'message-timeout')
|
||||||
|
Loading…
Reference in New Issue
Block a user