diff options
| -rw-r--r-- | src/dolphinmainwindow.cpp | 1 | ||||
| -rw-r--r-- | src/search/dolphinsearchbox.cpp | 4 | ||||
| -rw-r--r-- | src/views/dolphinview.cpp | 6 | ||||
| -rw-r--r-- | src/views/dolphinview.h | 7 | ||||
| -rw-r--r-- | src/views/dolphinviewactionhandler.cpp | 1 |
5 files changed, 14 insertions, 5 deletions
diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index 744ad8f0a..ca0038586 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -2387,6 +2387,7 @@ void DolphinMainWindow::connectViewSignals(DolphinViewContainer *container) { connect(container, &DolphinViewContainer::showFilterBarChanged, this, &DolphinMainWindow::updateFilterBarAction); connect(container, &DolphinViewContainer::writeStateChanged, this, &DolphinMainWindow::slotWriteStateChanged); + slotWriteStateChanged(container->view()->isFolderWritable()); connect(container, &DolphinViewContainer::searchModeEnabledChanged, this, &DolphinMainWindow::updateSearchAction); connect(container, &DolphinViewContainer::captionChanged, this, &DolphinMainWindow::updateWindowTitle); connect(container, &DolphinViewContainer::tabRequested, this, &DolphinMainWindow::openNewTab); diff --git a/src/search/dolphinsearchbox.cpp b/src/search/dolphinsearchbox.cpp index a09f25293..a3cec6fe7 100644 --- a/src/search/dolphinsearchbox.cpp +++ b/src/search/dolphinsearchbox.cpp @@ -265,9 +265,7 @@ void DolphinSearchBox::slotSearchTextChanged(const QString &text) if (text.isEmpty()) { // Restore URL when search box is cleared by closing and reopening the box. emitCloseRequest(); - QTimer::singleShot(0, this, [this] { - Q_EMIT openRequest(); - }); + Q_EMIT openRequest(); } else { m_startSearchTimer->start(); } diff --git a/src/views/dolphinview.cpp b/src/views/dolphinview.cpp index d8eab142d..ace763b15 100644 --- a/src/views/dolphinview.cpp +++ b/src/views/dolphinview.cpp @@ -270,7 +270,6 @@ void DolphinView::setActive(bool active) if (active) { m_container->setFocus(); Q_EMIT activated(); - Q_EMIT writeStateChanged(m_isFolderWritable); } } @@ -2246,6 +2245,11 @@ void DolphinView::updateWritableState() } } +bool DolphinView::isFolderWritable() const +{ + return m_isFolderWritable; +} + QUrl DolphinView::viewPropertiesUrl() const { if (m_viewPropertiesContext.isEmpty()) { diff --git a/src/views/dolphinview.h b/src/views/dolphinview.h index 05b9e009c..0b0c83487 100644 --- a/src/views/dolphinview.h +++ b/src/views/dolphinview.h @@ -344,6 +344,11 @@ public: /** Activates the view if the item list container gets focus. */ bool eventFilter(QObject *watched, QEvent *event) override; + /** + * Returns whether the folder represented by the current URL is writable. + */ + bool isFolderWritable() const; + public Q_SLOTS: void reload(); @@ -880,7 +885,7 @@ private: /** * Updates m_isFolderWritable dependent on whether the folder represented by * the current URL is writable. If the state has changed, the signal - * writeableStateChanged() will be emitted. + * writeStateChanged() will be emitted. */ void updateWritableState(); diff --git a/src/views/dolphinviewactionhandler.cpp b/src/views/dolphinviewactionhandler.cpp index 7117e9e1b..f73c613e0 100644 --- a/src/views/dolphinviewactionhandler.cpp +++ b/src/views/dolphinviewactionhandler.cpp @@ -60,6 +60,7 @@ void DolphinViewActionHandler::setCurrentView(DolphinView *view) connect(view, &DolphinView::sortRoleChanged, this, &DolphinViewActionHandler::slotSortRoleChanged); connect(view, &DolphinView::zoomLevelChanged, this, &DolphinViewActionHandler::slotZoomLevelChanged); connect(view, &DolphinView::writeStateChanged, this, &DolphinViewActionHandler::slotWriteStateChanged); + slotWriteStateChanged(view->isFolderWritable()); connect(view, &DolphinView::selectionModeChangeRequested, this, [this](bool enabled) { Q_EMIT selectionModeChangeTriggered(enabled); }); |
