]> cloud.milkyroute.net Git - dolphin.git/commitdiff
Disable the filter-dock if Nepomuk is not active.
authorPeter Penz <peter.penz19@gmail.com>
Sat, 6 Nov 2010 14:33:23 +0000 (14:33 +0000)
committerPeter Penz <peter.penz19@gmail.com>
Sat, 6 Nov 2010 14:33:23 +0000 (14:33 +0000)
svn path=/trunk/KDE/kdebase/apps/; revision=1193611

src/dolphinmainwindow.cpp
src/search/dolphinsearchbox.cpp

index 9d5533d6d73b8995eafc89e4d251b51ad76d024c..8017e9c82511d671c9e0069a752d4bddce974b48 100644 (file)
@@ -30,6 +30,7 @@
 #include "mainwindowadaptor.h"
 #ifdef HAVE_NEPOMUK
     #include "panels/filter/filterpanel.h"
+    #include <nepomuk/resourcemanager.h>
 #endif
 #include "panels/folders/folderspanel.h"
 #include "panels/places/placespanel.h"
@@ -1218,7 +1219,7 @@ void DolphinMainWindow::slotWriteStateChanged(bool isFolderWritable)
 void DolphinMainWindow::slotSearchModeChanged(bool enabled)
 {
     QDockWidget* filterDock = findChild<QDockWidget*>("filterDock");
-    if (filterDock == 0) {
+    if ((filterDock == 0) || !filterDock->isEnabled()) {
         return;
     }
 
@@ -1629,9 +1630,11 @@ void DolphinMainWindow::setupDockWidgets()
 
     // setup "Filter"
 #ifdef HAVE_NEPOMUK
+    const bool nepomukActivated = (Nepomuk::ResourceManager::instance()->init() == 0);
     QDockWidget* filterDock = new QDockWidget(i18nc("@title:window", "Filter"));
     filterDock->setObjectName("filterDock");
     filterDock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);
+    filterDock->setEnabled(nepomukActivated);
     Panel* filterPanel = new FilterPanel(filterDock);
     connect(filterPanel, SIGNAL(urlActivated(KUrl)), this, SLOT(handleUrl(KUrl)));
     filterDock->setWidget(filterPanel);
@@ -1639,9 +1642,10 @@ void DolphinMainWindow::setupDockWidgets()
     QAction* filterAction = filterDock->toggleViewAction();
     filterAction->setShortcut(Qt::Key_F12);
     filterAction->setIcon(KIcon("view-filter"));
+    filterAction->setEnabled(nepomukActivated);
     addDockWidget(Qt::RightDockWidgetArea, filterDock);
     connect(this, SIGNAL(urlChanged(KUrl)),
-           filterPanel, SLOT(setUrl(KUrl)));
+            filterPanel, SLOT(setUrl(KUrl)));
 #endif
 
     const bool firstRun = DolphinSettings::instance().generalSettings()->firstRun();
index 2e4b58d9f6013f6d3bf52a927b04515774515dff..6fb22fb17af32956caa50c0ac9e76ebe375a2862 100644 (file)
@@ -80,7 +80,7 @@ QString DolphinSearchBox::text() const
 void DolphinSearchBox::setSearchPath(const KUrl& url)
 {
     m_searchPath = url;
-    m_filterButton->setVisible(isSearchPathIndexed());
+    m_filterButton->setVisible(m_nepomukActivated && isSearchPathIndexed());
 }
 
 KUrl DolphinSearchBox::searchPath() const
@@ -91,7 +91,7 @@ KUrl DolphinSearchBox::searchPath() const
 KUrl DolphinSearchBox::urlForSearching() const
 {
     KUrl url;
-    if (isSearchPathIndexed()) {
+    if (m_nepomukActivated && isSearchPathIndexed()) {
         url = nepomukUrlForSearching();
     } else {
         url = m_searchPath;