diff --git a/src/gui/DatabaseTabWidget.cpp b/src/gui/DatabaseTabWidget.cpp index ea4723e5..2c14ace1 100644 --- a/src/gui/DatabaseTabWidget.cpp +++ b/src/gui/DatabaseTabWidget.cpp @@ -552,6 +552,16 @@ bool DatabaseTabWidget::isModified(int index) return indexDatabaseManagerStruct(index).modified; } +QString DatabaseTabWidget::databasePath(int index) +{ + if (index == -1) { + index = currentIndex(); + } + + return indexDatabaseManagerStruct(index).filePath; +} + + void DatabaseTabWidget::updateTabName(Database* db) { int index = databaseIndex(db); diff --git a/src/gui/DatabaseTabWidget.h b/src/gui/DatabaseTabWidget.h index 443fc73e..ea8f6003 100644 --- a/src/gui/DatabaseTabWidget.h +++ b/src/gui/DatabaseTabWidget.h @@ -81,6 +81,7 @@ public slots: bool isModified(int index = -1); void performGlobalAutoType(); void lockDatabases(); + QString databasePath(int index = -1); signals: void tabNameChanged(); diff --git a/src/gui/MainWindow.cpp b/src/gui/MainWindow.cpp index 0f883e4a..712566e5 100644 --- a/src/gui/MainWindow.cpp +++ b/src/gui/MainWindow.cpp @@ -530,6 +530,12 @@ void MainWindow::updateWindowTitle() windowTitle = QString("%1 - %2").arg(customWindowTitlePart, BaseWindowTitle); } + if (customWindowTitlePart.isEmpty() || stackedWidgetIndex == 1) { + setWindowFilePath(""); + } else { + setWindowFilePath(m_ui->tabWidget->databasePath(tabWidgetIndex)); + } + setWindowModified(m_ui->tabWidget->isModified(tabWidgetIndex)); setWindowTitle(windowTitle);