mirror of
https://invent.kde.org/system/dolphin
synced 2024-09-12 12:54:29 +00:00
Fix updating of new item menu when changing tabs
Correctly set the active status of views when changing tabs. Before: Right click in home folder, see create new enabled, open tab, go to /usr, right click and see it is disabled, switch back to first tab and right click, and it is still disabled. After: It is enabled and disabled as appropriate when switching tab. REVIEW: 129664
This commit is contained in:
parent
ae935d36b1
commit
6af0dad2ee
|
@ -32,7 +32,8 @@
|
|||
|
||||
DolphinTabWidget::DolphinTabWidget(QWidget* parent) :
|
||||
QTabWidget(parent),
|
||||
m_placesSelectorVisible(true)
|
||||
m_placesSelectorVisible(true),
|
||||
m_previousTab(-1)
|
||||
{
|
||||
connect(this, &DolphinTabWidget::tabCloseRequested,
|
||||
this, static_cast<void (DolphinTabWidget::*)(int)>(&DolphinTabWidget::closeTab));
|
||||
|
@ -304,9 +305,15 @@ void DolphinTabWidget::tabUrlChanged(const QUrl& url)
|
|||
void DolphinTabWidget::currentTabChanged(int index)
|
||||
{
|
||||
DolphinViewContainer* viewContainer = tabPageAt(index)->activeViewContainer();
|
||||
viewContainer->setActive(true);
|
||||
emit activeViewChanged(viewContainer);
|
||||
emit currentUrlChanged(viewContainer->url());
|
||||
viewContainer->view()->setFocus();
|
||||
|
||||
if (tabPageAt(m_previousTab)) {
|
||||
tabPageAt(m_previousTab)->activeViewContainer()->setActive(false);
|
||||
}
|
||||
m_previousTab = index;
|
||||
}
|
||||
|
||||
void DolphinTabWidget::tabInserted(int index)
|
||||
|
|
|
@ -186,6 +186,8 @@ private:
|
|||
private:
|
||||
/** Caches the (negated) places panel visibility */
|
||||
bool m_placesSelectorVisible;
|
||||
|
||||
int m_previousTab;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in a new issue