diff options
| author | ambar chakravartty <[email protected]> | 2025-01-27 16:50:13 +0530 |
|---|---|---|
| committer | Méven Car <[email protected]> | 2025-02-06 14:32:35 +0000 |
| commit | 625599462a8ec82f0e43267d333b3ed74a4401bf (patch) | |
| tree | fea1bf6d046daa53c7e96940cb23ed7d6d2a7f1f /src/dolphintabwidget.cpp | |
| parent | 529df26a3f99f186ffc8848d32d6ec8f2a4b2f5c (diff) | |
Added code for a "Rename Tab" feature.
BUG: 197009
Diffstat (limited to 'src/dolphintabwidget.cpp')
| -rw-r--r-- | src/dolphintabwidget.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/dolphintabwidget.cpp b/src/dolphintabwidget.cpp index 5ad2a368c..41b2a3eb9 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)->title().isEmpty()) { + QString name = tabPageAt(index)->title(); + tabBar()->setTabText(index, name); + return; + } + tabBar()->setTabText(index, tabName(tabPageAt(index))); } @@ -472,6 +480,16 @@ void DolphinTabWidget::currentTabChanged(int index) m_lastViewedTab = tabPage; } +void DolphinTabWidget::renameTab(int index, const QString &name) +{ + if (name.isEmpty()) { + updateTabName(index); + } else { + tabPageAt(index)->setTitle(name); + tabBar()->setTabText(index, name); + } +} + void DolphinTabWidget::tabInserted(int index) { QTabWidget::tabInserted(index); @@ -506,6 +524,7 @@ QString DolphinTabWidget::tabName(DolphinTabPage *tabPage) const if (!tabPage) { return QString(); } + // clang-format off QString name; if (tabPage->splitViewEnabled()) { |
