diff options
author | Nicholas Schwab <git@nicholas-schwab.de> | 2021-04-08 14:30:02 +0200 |
---|---|---|
committer | Nicholas Schwab <git@nicholas-schwab.de> | 2021-04-08 14:30:02 +0200 |
commit | 3474604dea49381980c27a8d5caabfe3655b165a (patch) | |
tree | 59b1fd33ebc8580465e3e5423fa0f5cae504f2a1 | |
parent | a6356b55047bac81ad6d36fb2c4ffe6c8f64c421 (diff) | |
download | qutebrowser-3474604dea49381980c27a8d5caabfe3655b165a.tar.gz qutebrowser-3474604dea49381980c27a8d5caabfe3655b165a.zip |
Added simple text widgets to status bar with currently hard-coded content.
-rw-r--r-- | qutebrowser/config/configdata.yml | 1 | ||||
-rw-r--r-- | qutebrowser/mainwindow/statusbar/bar.py | 16 |
2 files changed, 16 insertions, 1 deletions
diff --git a/qutebrowser/config/configdata.yml b/qutebrowser/config/configdata.yml index 1c0f03d37..dc8ddd1dc 100644 --- a/qutebrowser/config/configdata.yml +++ b/qutebrowser/config/configdata.yml @@ -1927,6 +1927,7 @@ statusbar.widgets: - tabs: "Current active tab, e.g. `2`." - keypress: "Display pressed keys when composing a vi command." - progress: "Progress bar for the current page loading." + - text: "A text widget. Currently hard coded content." none_ok: true default: ['keypress', 'url', 'scroll', 'history', 'tabs', 'progress'] desc: List of widgets displayed in the statusbar. diff --git a/qutebrowser/mainwindow/statusbar/bar.py b/qutebrowser/mainwindow/statusbar/bar.py index 0f6cd9fbc..54f62f1ad 100644 --- a/qutebrowser/mainwindow/statusbar/bar.py +++ b/qutebrowser/mainwindow/statusbar/bar.py @@ -200,6 +200,7 @@ class StatusBar(QWidget): self.tabindex = tabindex.TabIndex() self.keystring = keystring.KeyString() self.prog = progress.Progress(self) + self.text_widgets = [] self._draw_widgets() config.instance.changed.connect(self._on_config_changed) @@ -222,12 +223,13 @@ class StatusBar(QWidget): # Start with widgets hidden and show them when needed for widget in [self.url, self.percentage, self.backforward, self.tabindex, - self.keystring, self.prog]: + self.keystring, self.prog, *self.text_widgets]: assert isinstance(widget, QWidget) widget.hide() self._hbox.removeWidget(widget) tab = self._current_tab() + text_widget_nr = 0 # Read the list and set widgets accordingly for segment in config.val.statusbar.widgets: @@ -257,6 +259,18 @@ class StatusBar(QWidget): self.prog.enabled = True if tab: self.prog.on_tab_changed(tab) + elif segment == 'text': + try: + cur_widget = self.text_widgets[text_widget_nr] + except IndexError: + cur_widget = textbase.TextBase() + self.text_widgets.append(cur_widget) + cur_widget.setText('Lorem %s' % text_widget_nr) + self._hbox.addWidget(cur_widget) + cur_widget.show() + text_widget_nr += 1 + + del self.text_widgets[text_widget_nr:] @pyqtSlot() def maybe_hide(self): |