diff options
author | kt programs <ktprograms@gmail.com> | 2022-08-23 19:40:39 +0800 |
---|---|---|
committer | kt programs <ktprograms@gmail.com> | 2022-08-23 20:01:59 +0800 |
commit | 0c3aa86c074aa213ee052f48a0b436ab2d198a6c (patch) | |
tree | e6974611cdfc3e93dcb0935f0867f7b1ac4cb690 | |
parent | 21c82b029b141fe9d89946b0c9378538ff395b26 (diff) | |
download | qutebrowser-0c3aa86c074aa213ee052f48a0b436ab2d198a6c.tar.gz qutebrowser-0c3aa86c074aa213ee052f48a0b436ab2d198a6c.zip |
Make elide position in truncated tab title configurable
-rw-r--r-- | qutebrowser/config/configdata.yml | 5 | ||||
-rw-r--r-- | qutebrowser/config/configtypes.py | 12 | ||||
-rw-r--r-- | qutebrowser/mainwindow/tabwidget.py | 2 |
3 files changed, 18 insertions, 1 deletions
diff --git a/qutebrowser/config/configdata.yml b/qutebrowser/config/configdata.yml index c46cc5e29..8a676145d 100644 --- a/qutebrowser/config/configdata.yml +++ b/qutebrowser/config/configdata.yml @@ -2286,6 +2286,11 @@ tabs.title.alignment: type: TextAlignment desc: Alignment of the text inside of tabs. +tabs.title.elide: + default: right + type: ElidePosition + desc: Position of ellipsis in truncated title of tabs. + tabs.title.format: default: '{audio}{index}: {current_title}' type: diff --git a/qutebrowser/config/configtypes.py b/qutebrowser/config/configtypes.py index eef43ded4..70337b848 100644 --- a/qutebrowser/config/configtypes.py +++ b/qutebrowser/config/configtypes.py @@ -1816,6 +1816,18 @@ class TextAlignment(MappingType): } +class ElidePosition(MappingType): + + """Position of ellipsis in truncated text.""" + + MAPPING = { + 'left': (Qt.ElideLeft, None), + 'right': (Qt.ElideRight, None), + 'middle': (Qt.ElideMiddle, None), + 'none': (Qt.ElideNone, None), + } + + class VerticalPosition(String): """The position of the download bar.""" diff --git a/qutebrowser/mainwindow/tabwidget.py b/qutebrowser/mainwindow/tabwidget.py index bbd5af8a0..604b9eebd 100644 --- a/qutebrowser/mainwindow/tabwidget.py +++ b/qutebrowser/mainwindow/tabwidget.py @@ -67,7 +67,6 @@ class TabWidget(QTabWidget): bar.new_tab_requested.connect(self._on_new_tab_requested) self.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) self.setDocumentMode(True) - self.setElideMode(Qt.ElideRight) self.setUsesScrollButtons(True) bar.setDrawBase(False) self._init_config() @@ -81,6 +80,7 @@ class TabWidget(QTabWidget): position = config.val.tabs.position selection_behavior = config.val.tabs.select_on_remove self.setTabPosition(position) + self.setElideMode(config.val.tabs.title.elide) tabbar = self.tab_bar() tabbar.vertical = position in [QTabWidget.West, QTabWidget.East] |