summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkt programs <ktprograms@gmail.com>2022-08-23 19:40:39 +0800
committerkt programs <ktprograms@gmail.com>2022-08-23 20:01:59 +0800
commit0c3aa86c074aa213ee052f48a0b436ab2d198a6c (patch)
treee6974611cdfc3e93dcb0935f0867f7b1ac4cb690
parent21c82b029b141fe9d89946b0c9378538ff395b26 (diff)
downloadqutebrowser-0c3aa86c074aa213ee052f48a0b436ab2d198a6c.tar.gz
qutebrowser-0c3aa86c074aa213ee052f48a0b436ab2d198a6c.zip
Make elide position in truncated tab title configurable
-rw-r--r--qutebrowser/config/configdata.yml5
-rw-r--r--qutebrowser/config/configtypes.py12
-rw-r--r--qutebrowser/mainwindow/tabwidget.py2
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]