X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/54dfdc930a5511eae2b15f3e87e5d1cd425bdbe4..665ca266e9a6cedb1a014b730e64c91f3c57e11d:/src/dolphinviewcontainer.cpp diff --git a/src/dolphinviewcontainer.cpp b/src/dolphinviewcontainer.cpp index 99c76bee2..fff14578c 100644 --- a/src/dolphinviewcontainer.cpp +++ b/src/dolphinviewcontainer.cpp @@ -119,8 +119,6 @@ DolphinViewContainer::DolphinViewContainer(DolphinMainWindow* mainWindow, m_urlNavigator, SLOT(setUrl(const KUrl&))); connect(m_view, SIGNAL(requestContextMenu(KFileItem, const KUrl&)), this, SLOT(openContextMenu(KFileItem, const KUrl&))); - connect(m_view, SIGNAL(urlsDropped(const KUrl::List&, const KUrl&)), - m_mainWindow, SLOT(dropUrls(const KUrl::List&, const KUrl&))); connect(m_view, SIGNAL(contentsMoved(int, int)), this, SLOT(saveContentsPos(int, int))); connect(m_view, SIGNAL(requestItemInfo(KFileItem)), @@ -158,6 +156,10 @@ DolphinViewContainer::DolphinViewContainer(DolphinMainWindow* mainWindow, DolphinViewContainer::~DolphinViewContainer() { + m_dirLister->disconnect(); + + delete m_proxyModel; + m_proxyModel = 0; delete m_dolphinModel; m_dolphinModel = 0; m_dirLister = 0; // deleted by m_dolphinModel @@ -395,10 +397,15 @@ void DolphinViewContainer::slotItemTriggered(const KFileItem& item) if (item.isDir()) { m_view->setUrl(url); - } else if (item.isFile()) { + } else if (item.isFile() && url.isLocalFile()) { // 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")) { + + // Don't use mime->is("application/zip"), as this would + // also browse through Open Office files: + if (mime->name() == "application/zip") { url.setProtocol("zip"); m_view->setUrl(url); } else if (mime->is("application/x-tar") ||