X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/40c71d5ce0f6978ce48eb67fd73ed211bab4e887..47d7cdffdd2d2c04067a5088eaeff67add53dde3:/src/dolphinmainwindow.cpp diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index aca4d15b6..6800daefb 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -67,6 +67,7 @@ #include #include #include +#include #include #include #include @@ -331,29 +332,23 @@ void DolphinMainWindow::showCommand(CommandType command) DolphinStatusBar* statusBar = m_activeViewContainer->statusBar(); switch (command) { case KIO::FileUndoManager::Copy: - statusBar->setMessage(i18nc("@info:status", "Successfully copied."), - DolphinStatusBar::OperationCompleted); + statusBar->setText(i18nc("@info:status", "Successfully copied.")); break; case KIO::FileUndoManager::Move: - statusBar->setMessage(i18nc("@info:status", "Successfully moved."), - DolphinStatusBar::OperationCompleted); + statusBar->setText(i18nc("@info:status", "Successfully moved.")); break; case KIO::FileUndoManager::Link: - statusBar->setMessage(i18nc("@info:status", "Successfully linked."), - DolphinStatusBar::OperationCompleted); + statusBar->setText(i18nc("@info:status", "Successfully linked.")); break; case KIO::FileUndoManager::Trash: - statusBar->setMessage(i18nc("@info:status", "Successfully moved to trash."), - DolphinStatusBar::OperationCompleted); + statusBar->setText(i18nc("@info:status", "Successfully moved to trash.")); break; case KIO::FileUndoManager::Rename: - statusBar->setMessage(i18nc("@info:status", "Successfully renamed."), - DolphinStatusBar::OperationCompleted); + statusBar->setText(i18nc("@info:status", "Successfully renamed.")); break; case KIO::FileUndoManager::Mkdir: - statusBar->setMessage(i18nc("@info:status", "Created folder."), - DolphinStatusBar::OperationCompleted); + statusBar->setText(i18nc("@info:status", "Created folder.")); break; default: @@ -729,10 +724,7 @@ void DolphinMainWindow::quit() void DolphinMainWindow::showErrorMessage(const QString& message) { - if (!message.isEmpty()) { - DolphinStatusBar* statusBar = m_activeViewContainer->statusBar(); - statusBar->setMessage(message, DolphinStatusBar::Error); - } + m_activeViewContainer->showMessage(message, DolphinViewContainer::Error); } void DolphinMainWindow::slotUndoAvailable(bool available) @@ -1293,11 +1285,14 @@ void DolphinMainWindow::handleUrl(const KUrl& url) } else if (KProtocolManager::supportsListing(url)) { // stat the URL to see if it is a dir or not m_lastHandleUrlStatJob = KIO::stat(url, KIO::HideProgressInfo); + if (m_lastHandleUrlStatJob->ui()) { + m_lastHandleUrlStatJob->ui()->setWindow(this); + } connect(m_lastHandleUrlStatJob, SIGNAL(result(KJob*)), this, SLOT(slotHandleUrlStatFinished(KJob*))); } else { - new KRun(url, this); + new KRun(url, this); // Automatically deletes itself after being finished } } @@ -1309,7 +1304,7 @@ void DolphinMainWindow::slotHandleUrlStatFinished(KJob* job) if (entry.isDir()) { activeViewContainer()->setUrl(url); } else { - new KRun(url, this); + new KRun(url, this); // Automatically deletes itself after being finished } } @@ -1320,7 +1315,10 @@ void DolphinMainWindow::tabDropEvent(int tab, QDropEvent* event) const ViewTab& viewTab = m_viewTab[tab]; const DolphinView* view = viewTab.isPrimaryViewActive ? viewTab.primaryView->view() : viewTab.secondaryView->view(); - DragAndDropHelper::dropUrls(view->rootItem(), view->url(), event); + const QString error = DragAndDropHelper::dropUrls(view->rootItem(), view->url(), event); + if (!error.isEmpty()) { + activeViewContainer()->showMessage(error, DolphinViewContainer::Error); + } } } @@ -2061,7 +2059,7 @@ void DolphinMainWindow::refreshViews() void DolphinMainWindow::clearStatusBar() { - m_activeViewContainer->statusBar()->clear(); + m_activeViewContainer->statusBar()->resetToDefaultText(); } void DolphinMainWindow::connectViewSignals(DolphinViewContainer* container) @@ -2233,8 +2231,8 @@ void DolphinMainWindow::UndoUiInterface::jobError(KIO::Job* job) { DolphinMainWindow* mainWin= qobject_cast(parentWidget()); if (mainWin) { - DolphinStatusBar* statusBar = mainWin->activeViewContainer()->statusBar(); - statusBar->setMessage(job->errorString(), DolphinStatusBar::Error); + DolphinViewContainer* container = mainWin->activeViewContainer(); + container->showMessage(job->errorString(), DolphinViewContainer::Error); } else { KIO::FileUndoManager::UiInterface::jobError(job); }