┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/dolphintabwidget.cpp
diff options
context:
space:
mode:
authorambar chakravartty <[email protected]>2025-01-27 16:50:13 +0530
committerMéven Car <[email protected]>2025-02-06 14:32:35 +0000
commit625599462a8ec82f0e43267d333b3ed74a4401bf (patch)
treefea1bf6d046daa53c7e96940cb23ed7d6d2a7f1f /src/dolphintabwidget.cpp
parent529df26a3f99f186ffc8848d32d6ec8f2a4b2f5c (diff)
Added code for a "Rename Tab" feature.
BUG: 197009
Diffstat (limited to 'src/dolphintabwidget.cpp')
-rw-r--r--src/dolphintabwidget.cpp19
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()) {