X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/53d65e6392d3b03d7709385df5006d5d34c22852..737b74aa294e05cebc2cd1e48a4fa66cf62f222e:/src/dolphinviewcontainer.cpp diff --git a/src/dolphinviewcontainer.cpp b/src/dolphinviewcontainer.cpp index 7e28a30fe..64b0d400f 100644 --- a/src/dolphinviewcontainer.cpp +++ b/src/dolphinviewcontainer.cpp @@ -129,6 +129,8 @@ DolphinViewContainer::DolphinViewContainer(DolphinMainWindow* mainWindow, this, SLOT(showErrorMessage(const QString&))); connect(m_view, SIGNAL(infoMessage(const QString&)), this, SLOT(showInfoMessage(const QString&))); + connect(m_view, SIGNAL(operationCompletedMessage(const QString&)), + this, SLOT(showOperationCompletedMessage(const QString&))); connect(m_view, SIGNAL(itemTriggered(KFileItem)), this, SLOT(slotItemTriggered(KFileItem))); connect(m_view, SIGNAL(startedPathLoading(const KUrl&)), @@ -156,8 +158,13 @@ DolphinViewContainer::DolphinViewContainer(DolphinMainWindow* mainWindow, DolphinViewContainer::~DolphinViewContainer() { - delete m_dirLister; - m_dirLister = 0; + m_dirLister->disconnect(); + + delete m_proxyModel; + m_proxyModel = 0; + delete m_dolphinModel; + m_dolphinModel = 0; + m_dirLister = 0; // deleted by m_dolphinModel } void DolphinViewContainer::setUrl(const KUrl& url) @@ -250,6 +257,11 @@ void DolphinViewContainer::showErrorMessage(const QString& msg) m_statusBar->setMessage(msg, DolphinStatusBar::Error); } +void DolphinViewContainer::showOperationCompletedMessage(const QString& msg) +{ + m_statusBar->setMessage(msg, DolphinStatusBar::OperationCompleted); +} + void DolphinViewContainer::closeFilterBar() { m_filterBar->hide(); @@ -389,8 +401,9 @@ void DolphinViewContainer::slotItemTriggered(const KFileItem& item) m_view->setUrl(url); } else if (item.isFile()) { // allow to browse through ZIP and tar files + // TODO: make this configurable for Dolphin in KDE 4.1 KMimeType::Ptr mime = item.mimeTypePtr(); - if (mime->is("application/zip")) { + if (mime->is("application/zip") && mime->patterns().contains("*.zip")) { url.setProtocol("zip"); m_view->setUrl(url); } else if (mime->is("application/x-tar") ||