X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/15e0c2a98f480f203ce168b6fa9a2e1f2b0ed8f8..a35af3a0d2022a23c5a1cc30d693141a13673b8f:/src/dolphintabwidget.cpp diff --git a/src/dolphintabwidget.cpp b/src/dolphintabwidget.cpp index 5ad2a368c..b2f838a40 100644 --- a/src/dolphintabwidget.cpp +++ b/src/dolphintabwidget.cpp @@ -38,6 +38,7 @@ DolphinTabWidget::DolphinTabWidget(DolphinNavigatorsWidgetAction *navigatorsWidg connect(tabBar, &DolphinTabBar::tabDragMoveEvent, this, &DolphinTabWidget::tabDragMoveEvent); connect(tabBar, &DolphinTabBar::tabDropEvent, this, &DolphinTabWidget::tabDropEvent); connect(tabBar, &DolphinTabBar::tabDetachRequested, this, &DolphinTabWidget::detachTab); + connect(tabBar, &DolphinTabBar::tabRenamed, this, &DolphinTabWidget::renameTab); setTabBar(tabBar); setDocumentMode(true); @@ -122,6 +123,13 @@ void DolphinTabWidget::refreshViews() void DolphinTabWidget::updateTabName(int index) { Q_ASSERT(index >= 0); + + if (!tabPageAt(index)->customLabel().isEmpty()) { + QString name = tabPageAt(index)->customLabel(); + tabBar()->setTabText(index, name); + return; + } + tabBar()->setTabText(index, tabName(tabPageAt(index))); } @@ -472,6 +480,12 @@ void DolphinTabWidget::currentTabChanged(int index) m_lastViewedTab = tabPage; } +void DolphinTabWidget::renameTab(int index, const QString &name) +{ + tabPageAt(index)->setCustomLabel(name); + updateTabName(index); +} + void DolphinTabWidget::tabInserted(int index) { QTabWidget::tabInserted(index);