#include <kdirmodel.h>
#include <kfileitemdelegate.h>
#include <kfileplacesmodel.h>
+#include <kglobalsettings.h>
#include <klocale.h>
#include <kiconeffect.h>
#include <kio/netaccess.h>
this, SLOT(updateCutItems()));
m_urlNavigator = new KUrlNavigator(DolphinSettings::instance().placesModel(), url, this);
- m_urlNavigator->setUrlEditable(DolphinSettings::instance().generalSettings()->editableUrl());
- m_urlNavigator->setHomeUrl(DolphinSettings::instance().generalSettings()->homeUrl());
+
+ const GeneralSettings* settings = DolphinSettings::instance().generalSettings();
+ m_urlNavigator->setUrlEditable(settings->editableUrl());
+ m_urlNavigator->setHomeUrl(settings->homeUrl());
+
connect(m_urlNavigator, SIGNAL(urlChanged(const KUrl&)),
this, SLOT(changeDirectory(const KUrl&)));
connect(m_urlNavigator, SIGNAL(urlsDropped(const KUrl::List&, const KUrl&)),
m_iconSize = K3Icon::SizeMedium;
m_filterBar = new FilterBar(this);
- m_filterBar->hide();
+ m_filterBar->setVisible(settings->filterBar());
connect(m_filterBar, SIGNAL(filterChanged(const QString&)),
this, SLOT(changeNameFilter(const QString&)));
connect(m_filterBar, SIGNAL(closeRequest()),
return m_urlNavigator->url();
}
+KUrl DolphinView::rootUrl() const
+{
+ return isColumnViewActive() ? m_dirLister->url() : url();
+}
+
bool DolphinView::isActive() const
{
return m_mainWindow->activeView() == this;
return itemView()->verticalScrollBar()->value();
}
-void DolphinView::emitRequestItemInfo(const KUrl& url)
-{
- emit requestItemInfo(url);
-}
-
bool DolphinView::isFilterBarVisible() const
{
return m_filterBar->isVisible();
void DolphinView::updateActivationState()
{
m_urlNavigator->setActive(isActive());
+
+ QColor color = KGlobalSettings::baseColor();
if (isActive()) {
emit urlChanged(url());
emit selectionChanged(selectedItems());
+ } else {
+ // darken the background if the view is inactive
+ // TODO: does not work for a black background
+ color = color.darker(105);
}
+
+ QWidget* viewport = itemView()->viewport();
+ QPalette palette;
+ palette.setColor(viewport->backgroundRole(), color);
+ viewport->setPalette(palette);
+
+ update();
}
void DolphinView::updateCutItems()
void DolphinView::clearHoverInformation()
{
m_statusBar->clear();
+ emit requestItemInfo(KUrl());
}