#include "dolphinviewcontainer.h"
#include "mainwindowadaptor.h"
#ifdef HAVE_NEPOMUK
- #include "panels/filter/filterpanel.h"
+ #include "panels/search/searchpanel.h"
#include <Nepomuk/ResourceManager>
#endif
#include "panels/folders/folderspanel.h"
#include "dolphin_generalsettings.h"
#include "dolphin_iconsmodesettings.h"
+#include "dolphin_searchsettings.h"
#include <KAction>
#include <KActionCollection>
m_remoteEncoding(0),
m_settingsDialog(0),
m_lastHandleUrlStatJob(0),
- m_filterDockIsTemporaryVisible(false)
+ m_searchDockIsTemporaryVisible(false)
{
// Workaround for a X11-issue in combination with KModifierInfo
// (see DolphinContextMenu::initializeModifierKeyInfo() for
return;
}
+ if (dirs.count() == 1) {
+ m_activeViewContainer->setUrl(dirs.first());
+ return;
+ }
+
const int oldOpenTabsCount = m_viewTab.count();
const GeneralSettings* generalSettings = DolphinSettings::instance().generalSettings();
viewTab.primaryView = new DolphinViewContainer(url, viewTab.splitter);
viewTab.primaryView->setActive(false);
connectViewSignals(viewTab.primaryView);
- viewTab.primaryView->view()->reload();
m_viewTab.append(viewTab);
settings.save();
- if (m_filterDockIsTemporaryVisible) {
- QDockWidget* filterDock = findChild<QDockWidget*>("filterDock");
- if (filterDock) {
- filterDock->hide();
+ if (m_searchDockIsTemporaryVisible) {
+ QDockWidget* searchDock = findChild<QDockWidget*>("searchDock");
+ if (searchDock) {
+ searchDock->hide();
}
- m_filterDockIsTemporaryVisible = false;
+ m_searchDockIsTemporaryVisible = false;
}
KXmlGuiWindow::closeEvent(event);
return;
}
- QDockWidget* filterDock = findChild<QDockWidget*>("filterDock");
- if (!filterDock) {
+ QDockWidget* searchDock = findChild<QDockWidget*>("searchDock");
+ if (!searchDock) {
return;
}
if (enabled) {
- if (!filterDock->isVisible()) {
- m_filterDockIsTemporaryVisible = true;
+ if (!searchDock->isVisible()) {
+ m_searchDockIsTemporaryVisible = true;
}
- filterDock->show();
+ searchDock->show();
} else {
- if (filterDock->isVisible() && m_filterDockIsTemporaryVisible) {
- filterDock->hide();
+ if (searchDock->isVisible() && m_searchDockIsTemporaryVisible) {
+ searchDock->hide();
+ }
+ m_searchDockIsTemporaryVisible = false;
+ }
+
+ SearchPanel* searchPanel = qobject_cast<SearchPanel*>(searchDock->widget());
+ if (searchPanel) {
+ // Per default any search-operation triggered by the Search Panel is done
+ // "Everywhere".
+ SearchPanel::SearchMode searchMode = SearchPanel::Everywhere;
+
+ if (enabled && (SearchSettings::location() == QLatin1String("FromHere"))) {
+ // Only if the search-mode is enabled it is visible for the user whether
+ // a searching is done "Everywhere" or "From Here" (= current directory).
+ searchMode = SearchPanel::FromCurrentDir;
}
- m_filterDockIsTemporaryVisible = false;
+ searchPanel->setSearchMode(searchMode);
}
#else
Q_UNUSED(enabled);
m_activeViewContainer = m_viewTab[m_tabIndex].primaryView;
connectViewSignals(m_activeViewContainer);
DolphinView* view = m_activeViewContainer->view();
- view->reload();
m_activeViewContainer->show();
m_actionHandler->setCurrentView(view);
terminalPanel, SLOT(setUrl(KUrl)));
#endif
- // Setup "Filter"
+ // Setup "Search"
#ifdef HAVE_NEPOMUK
- DolphinDockWidget* filterDock = new DolphinDockWidget(i18nc("@title:window", "Filter"));
- filterDock->setLocked(lock);
- filterDock->setObjectName("filterDock");
- filterDock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);
- Panel* filterPanel = new FilterPanel(filterDock);
- filterPanel->setCustomContextMenuActions(QList<QAction*>() << lockLayoutAction);
- connect(filterPanel, SIGNAL(urlActivated(KUrl)), this, SLOT(handleUrl(KUrl)));
- filterDock->setWidget(filterPanel);
-
- QAction* filterAction = filterDock->toggleViewAction();
- filterAction->setShortcut(Qt::Key_F12);
- filterAction->setIcon(KIcon("view-filter"));
- addActionCloneToCollection(filterAction, "show_filter_panel");
- addDockWidget(Qt::RightDockWidgetArea, filterDock);
+ DolphinDockWidget* searchDock = new DolphinDockWidget(i18nc("@title:window", "Search"));
+ searchDock->setLocked(lock);
+ searchDock->setObjectName("searchDock");
+ searchDock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);
+ Panel* searchPanel = new SearchPanel(searchDock);
+ searchPanel->setCustomContextMenuActions(QList<QAction*>() << lockLayoutAction);
+ connect(searchPanel, SIGNAL(urlActivated(KUrl)), this, SLOT(handleUrl(KUrl)));
+ searchDock->setWidget(searchPanel);
+
+ QAction* searchAction = searchDock->toggleViewAction();
+ searchAction->setShortcut(Qt::Key_F12);
+ searchAction->setIcon(KIcon("system-search"));
+ addActionCloneToCollection(searchAction, "show_search_panel");
+ addDockWidget(Qt::RightDockWidgetArea, searchDock);
connect(this, SIGNAL(urlChanged(KUrl)),
- filterPanel, SLOT(setUrl(KUrl)));
+ searchPanel, SLOT(setUrl(KUrl)));
#endif
const bool firstRun = DolphinSettings::instance().generalSettings()->firstRun();
terminalDock->hide();
#endif
#ifdef HAVE_NEPOMUK
- filterDock->hide();
+ searchDock->hide();
#endif
}
panelsMenu->addAction(terminalAction);
#endif
#ifdef HAVE_NEPOMUK
- panelsMenu->addAction(filterAction);
+ panelsMenu->addAction(searchAction);
#endif
panelsMenu->addSeparator();
panelsMenu->addAction(lockLayoutAction);
splitter->addWidget(m_viewTab[tabIndex].secondaryView);
splitter->setSizes(QList<int>() << newWidth << newWidth);
connectViewSignals(m_viewTab[tabIndex].secondaryView);
- m_viewTab[tabIndex].secondaryView->view()->reload();
m_viewTab[tabIndex].secondaryView->setActive(false);
m_viewTab[tabIndex].secondaryView->show();
}