X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/36e89e9fa614cbc428ada94784147dca341d2fb7..6e34ec835d495ea3c8c385f12bb493c8f7dfea15:/src/dolphinmainwindow.cpp diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index e3f3a4d10..efae23d6e 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -28,6 +28,7 @@ #include "dolphinnewfilemenu.h" #include "dolphinviewcontainer.h" #include "mainwindowadaptor.h" +#include "panels/facets/facetpanel.h" #include "panels/folders/folderspanel.h" #include "panels/places/placespanel.h" #include "panels/information/informationpanel.h" @@ -919,7 +920,7 @@ void DolphinMainWindow::compareFiles() case 0: { Q_ASSERT(m_viewTab[m_tabIndex].secondaryView != 0); items = m_viewTab[m_tabIndex].secondaryView->view()->selectedItems(); - Q_ASSERT(urls.count() == 2); + Q_ASSERT(items.count() == 2); urlA = items[0].url(); urlB = items[1].url(); break; @@ -1193,9 +1194,9 @@ void DolphinMainWindow::openContextMenu(const KFileItem& item, const KUrl& url, const QList& customActions) { - DolphinContextMenu contextMenu(this, item, url); - contextMenu.setCustomActions(customActions); - const DolphinContextMenu::Command command = contextMenu.open(); + QPointer contextMenu = new DolphinContextMenu(this, item, url); + contextMenu->setCustomActions(customActions); + const DolphinContextMenu::Command command = contextMenu->open(); switch (command) { case DolphinContextMenu::OpenParentFolderInNewWindow: { @@ -1213,6 +1214,8 @@ void DolphinMainWindow::openContextMenu(const KFileItem& item, default: break; } + + delete contextMenu; } void DolphinMainWindow::init() @@ -1560,6 +1563,22 @@ void DolphinMainWindow::setupDockWidgets() connect(foldersPanel, SIGNAL(changeUrl(KUrl, Qt::MouseButtons)), this, SLOT(handlePlacesClick(KUrl, Qt::MouseButtons))); + // setup "Facets" +#ifdef HAVE_NEPOMUK + QDockWidget* facetDock = new QDockWidget(i18nc("@title:window", "Filter")); + facetDock->setObjectName("facetDock"); + facetDock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea); + Panel* facetPanel = new FacetPanel(facetDock); + connect(facetPanel, SIGNAL(urlActivated(KUrl)), this, SLOT(handleUrl(KUrl))); + facetDock->setWidget(facetPanel); + + QAction* facetAction = facetDock->toggleViewAction(); + facetAction->setIcon(KIcon("dialog-facet")); + addDockWidget(Qt::RightDockWidgetArea, facetDock); + connect(this, SIGNAL(urlChanged(KUrl)), + facetPanel, SLOT(setUrl(KUrl))); +#endif + // setup "Terminal" #ifndef Q_OS_WIN QDockWidget* terminalDock = new QDockWidget(i18nc("@title:window Shell terminal", "Terminal")); @@ -1614,6 +1633,9 @@ void DolphinMainWindow::setupDockWidgets() panelsMenu->addAction(placesAction); panelsMenu->addAction(infoAction); panelsMenu->addAction(foldersAction); +#ifdef HAVE_NEPOMUK + panelsMenu->addAction(facetAction); +#endif #ifndef Q_OS_WIN panelsMenu->addAction(terminalAction); #endif