#include "statusbar/dolphinstatusbar.h"
#include "views/dolphinviewactionhandler.h"
#include "views/dolphinremoteencoding.h"
+#include "views/draganddrophelper.h"
#include "views/viewproperties.h"
#ifndef Q_OS_WIN
actionCollection()->action("close_tab")->setEnabled(true);
- // provide a split view, if the startup settings are set this way
+ // Provide a split view, if the startup settings are set this way
if (GeneralSettings::splitView()) {
const int newTabIndex = m_viewTab.count() - 1;
createSecondaryView(newTabIndex);
- viewTab.secondaryView->setActive(true);
- viewTab.isPrimaryViewActive = false;
+ m_viewTab[newTabIndex].secondaryView->setActive(true);
+ m_viewTab[newTabIndex].isPrimaryViewActive = false;
}
if (focusWidget) {
}
}
+void DolphinMainWindow::goHome(Qt::MouseButtons buttons)
+{
+ // The default case (left button pressed) is handled in goHome().
+ if (buttons == Qt::MidButton) {
+ openNewTab(GeneralSettings::self()->homeUrl());
+ }
+}
+
void DolphinMainWindow::compareFiles()
{
// The method is only invoked if exactly 2 files have
void DolphinMainWindow::editSettings()
{
if (!m_settingsDialog) {
- const KUrl url = activeViewContainer()->url();
+ DolphinViewContainer* container = activeViewContainer();
+ container->view()->writeSettings();
+
+ const KUrl url = container->url();
DolphinSettingsDialog* settingsDialog = new DolphinSettingsDialog(url, this);
connect(settingsDialog, SIGNAL(settingsChanged()), this, SLOT(refreshViews()));
settingsDialog->setAttribute(Qt::WA_DeleteOnClose);
const KUrl::List urls = KUrl::List::fromMimeData(event->mimeData());
if (!urls.isEmpty() && tab != -1) {
const ViewTab& viewTab = m_viewTab[tab];
- const KUrl destPath = viewTab.isPrimaryViewActive ? viewTab.primaryView->url() : viewTab.secondaryView->url();
- Q_UNUSED(destPath);
- //DragAndDropHelper::instance().dropUrls(KFileItem(), destPath, event, m_tabBar);
+ const DolphinView* view = viewTab.isPrimaryViewActive ? viewTab.primaryView->view()
+ : viewTab.secondaryView->view();
+ DragAndDropHelper::dropUrls(view->rootItem(), view->url(), event);
}
}
KAction* upAction = KStandardAction::up(this, SLOT(goUp()), actionCollection());
connect(upAction, SIGNAL(triggered(Qt::MouseButtons,Qt::KeyboardModifiers)), this, SLOT(goUp(Qt::MouseButtons)));
- KStandardAction::home(this, SLOT(goHome()), actionCollection());
+ KAction* homeAction = KStandardAction::home(this, SLOT(goHome()), actionCollection());
+ connect(homeAction, SIGNAL(triggered(Qt::MouseButtons,Qt::KeyboardModifiers)), this, SLOT(goHome(Qt::MouseButtons)));
// setup 'Tools' menu
KAction* showFilterBar = actionCollection()->addAction("show_filter_bar");
const int tabCount = m_viewTab.count();
for (int i = 0; i < tabCount; ++i) {
- m_viewTab[i].primaryView->refresh();
+ m_viewTab[i].primaryView->readSettings();
if (m_viewTab[i].secondaryView) {
- m_viewTab[i].secondaryView->refresh();
+ m_viewTab[i].secondaryView->readSettings();
}
}