X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/be077d3a0cde5b461fd6d4e7d73054538b44470b..27e3907a3daf9a63d05c00a0ff746de6cfdf2bdf:/src/dolphinviewcontainer.cpp diff --git a/src/dolphinviewcontainer.cpp b/src/dolphinviewcontainer.cpp index 5978ae938..1e5d0f7d1 100644 --- a/src/dolphinviewcontainer.cpp +++ b/src/dolphinviewcontainer.cpp @@ -30,6 +30,9 @@ #include "views/viewmodecontroller.h" #include "views/viewproperties.h" +#ifdef HAVE_KACTIVITIES +#include +#endif #include #include #include @@ -40,7 +43,6 @@ #include #include #include -#include #include #include @@ -64,20 +66,20 @@ DolphinViewContainer::DolphinViewContainer(const QUrl& url, QWidget* parent) : m_statusBarTimer(nullptr), m_statusBarTimestamp(), m_autoGrabFocus(true) -#ifdef KActivities_FOUND - , m_activityResourceInstance(0) +#ifdef HAVE_KACTIVITIES + , m_activityResourceInstance(nullptr) #endif { hide(); m_topLayout = new QVBoxLayout(this); m_topLayout->setSpacing(0); - m_topLayout->setMargin(0); + m_topLayout->setContentsMargins(0, 0, 0, 0); m_navigatorWidget = new QWidget(this); QHBoxLayout* navigatorLayout = new QHBoxLayout(m_navigatorWidget); navigatorLayout->setSpacing(0); - navigatorLayout->setMargin(0); + navigatorLayout->setContentsMargins(0, 0, 0, 0); m_urlNavigator = new KUrlNavigator(DolphinPlacesModelSingleton::instance().placesModel(), url, this); connect(m_urlNavigator, &KUrlNavigator::activated, @@ -118,7 +120,21 @@ DolphinViewContainer::DolphinViewContainer(const QUrl& url, QWidget* parent) : } #endif + // Initialize filter bar + m_filterBar = new FilterBar(this); + m_filterBar->setVisible(settings->filterBar()); + + connect(m_filterBar, &FilterBar::filterChanged, + this, &DolphinViewContainer::setNameFilter); + connect(m_filterBar, &FilterBar::closeRequest, + this, &DolphinViewContainer::closeFilterBar); + connect(m_filterBar, &FilterBar::focusViewRequest, + this, &DolphinViewContainer::requestFocus); + + // Initialize the main view m_view = new DolphinView(url, this); + connect(m_view, &DolphinView::urlChanged, + m_filterBar, &FilterBar::slotUrlChanged); connect(m_view, &DolphinView::urlChanged, m_urlNavigator, &KUrlNavigator::setLocationUrl); connect(m_view, &DolphinView::urlChanged, @@ -196,18 +212,6 @@ DolphinViewContainer::DolphinViewContainer(const QUrl& url, QWidget* parent) : connect(undoManager, &KIO::FileUndoManager::jobRecordingFinished, this, &DolphinViewContainer::delayedStatusBarUpdate); - // Initialize filter bar - m_filterBar = new FilterBar(this); - m_filterBar->setVisible(settings->filterBar()); - connect(m_filterBar, &FilterBar::filterChanged, - this, &DolphinViewContainer::setNameFilter); - connect(m_filterBar, &FilterBar::closeRequest, - this, &DolphinViewContainer::closeFilterBar); - connect(m_filterBar, &FilterBar::focusViewRequest, - this, &DolphinViewContainer::requestFocus); - connect(m_view, &DolphinView::urlChanged, - m_filterBar, &FilterBar::slotUrlChanged); - navigatorLayout->addWidget(m_urlNavigator); navigatorLayout->addWidget(m_emptyTrashButton); @@ -222,11 +226,10 @@ DolphinViewContainer::DolphinViewContainer(const QUrl& url, QWidget* parent) : // Initialize kactivities resource instance - #ifdef KActivities_FOUND - m_activityResourceInstance = new KActivities::ResourceInstance( - window()->winId(), url); +#ifdef HAVE_KACTIVITIES + m_activityResourceInstance = new KActivities::ResourceInstance(window()->winId(), url); m_activityResourceInstance->setParent(this); - #endif +#endif } DolphinViewContainer::~DolphinViewContainer() @@ -244,13 +247,13 @@ void DolphinViewContainer::setActive(bool active) m_urlNavigator->setActive(active); m_view->setActive(active); - #ifdef KActivities_FOUND +#ifdef HAVE_KACTIVITIES if (active) { m_activityResourceInstance->notifyFocusedIn(); } else { m_activityResourceInstance->notifyFocusedOut(); } - #endif +#endif } bool DolphinViewContainer::isActive() const @@ -312,6 +315,10 @@ void DolphinViewContainer::showMessage(const QString& msg, MessageType type) m_messageWidget->setText(msg); + // TODO: wrap at arbitrary character positions once QLabel can do this + // https://bugreports.qt.io/browse/QTBUG-1276 + m_messageWidget->setWordWrap(true); + switch (type) { case Information: m_messageWidget->setMessageType(KMessageWidget::Information); break; case Warning: m_messageWidget->setMessageType(KMessageWidget::Warning); break; @@ -466,9 +473,9 @@ void DolphinViewContainer::setUrl(const QUrl& newUrl) m_urlNavigator->setLocationUrl(newUrl); } - #ifdef KActivities_FOUND +#ifdef HAVE_KACTIVITIES m_activityResourceInstance->setUri(newUrl); - #endif +#endif } void DolphinViewContainer::setFilterBarVisible(bool visible) @@ -684,7 +691,6 @@ void DolphinViewContainer::slotUrlNavigatorLocationChanged(const QUrl& url) void DolphinViewContainer::slotUrlSelectionRequested(const QUrl& url) { - qCDebug(DolphinDebug) << "slotUrlSelectionRequested: " << url; m_view->markUrlsAsSelected({url}); m_view->markUrlAsCurrent(url); // makes the item scroll into view }