mirror of
https://invent.kde.org/system/dolphin
synced 2024-07-04 17:30:55 +00:00
Fix: closing split view doesn't update tab name
BUG: 469316
This commit is contained in:
parent
348a36439e
commit
3619e74eb1
|
@ -920,6 +920,7 @@ void DolphinMainWindow::toggleSplitView()
|
|||
{
|
||||
DolphinTabPage *tabPage = m_tabWidget->currentTabPage();
|
||||
tabPage->setSplitViewEnabled(!tabPage->splitViewEnabled(), WithAnimation);
|
||||
m_tabWidget->updateTabName(m_tabWidget->indexOf(tabPage));
|
||||
updateViewActions();
|
||||
}
|
||||
|
||||
|
|
|
@ -104,11 +104,17 @@ void DolphinTabWidget::refreshViews()
|
|||
|
||||
const int tabCount = count();
|
||||
for (int i = 0; i < tabCount; ++i) {
|
||||
tabBar()->setTabText(i, tabName(tabPageAt(i)));
|
||||
updateTabName(i);
|
||||
tabPageAt(i)->refreshViews();
|
||||
}
|
||||
}
|
||||
|
||||
void DolphinTabWidget::updateTabName(int index)
|
||||
{
|
||||
Q_ASSERT(index >= 0);
|
||||
tabBar()->setTabText(index, tabName(tabPageAt(index)));
|
||||
}
|
||||
|
||||
bool DolphinTabWidget::isUrlOpen(const QUrl &url) const
|
||||
{
|
||||
return viewOpenAtDirectory(url).has_value();
|
||||
|
@ -163,9 +169,7 @@ void DolphinTabWidget::openNewTab(const QUrl &primaryUrl, const QUrl &secondaryU
|
|||
connect(tabPage, &DolphinTabPage::activeViewChanged, this, &DolphinTabWidget::activeViewChanged);
|
||||
connect(tabPage, &DolphinTabPage::activeViewUrlChanged, this, &DolphinTabWidget::tabUrlChanged);
|
||||
connect(tabPage->activeViewContainer(), &DolphinViewContainer::captionChanged, this, [this, tabPage]() {
|
||||
const int tabIndex = indexOf(tabPage);
|
||||
Q_ASSERT(tabIndex >= 0);
|
||||
tabBar()->setTabText(tabIndex, tabName(tabPage));
|
||||
updateTabName(indexOf(tabPage));
|
||||
});
|
||||
|
||||
if (position == NewTabPosition::FollowSetting) {
|
||||
|
@ -407,7 +411,7 @@ void DolphinTabWidget::tabUrlChanged(const QUrl &url)
|
|||
{
|
||||
const int index = indexOf(qobject_cast<QWidget *>(sender()));
|
||||
if (index >= 0) {
|
||||
tabBar()->setTabText(index, tabName(tabPageAt(index)));
|
||||
updateTabName(index);
|
||||
tabBar()->setTabToolTip(index, url.toDisplayString(QUrl::PreferLocalFile));
|
||||
if (tabBar()->isVisible()) {
|
||||
// ensure the path url ends with a slash to have proper folder icon for remote folders
|
||||
|
|
|
@ -69,6 +69,11 @@ public:
|
|||
*/
|
||||
void refreshViews();
|
||||
|
||||
/**
|
||||
* Update the name of the tab with the index \a index.
|
||||
*/
|
||||
void updateTabName(int index);
|
||||
|
||||
/**
|
||||
* @return Whether any of the tab pages has @p url opened
|
||||
* in their primary or secondary view.
|
||||
|
|
Loading…
Reference in New Issue
Block a user