┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmmanuel Pescosta <[email protected]>2014-09-11 10:50:56 +0200
committerEmmanuel Pescosta <[email protected]>2014-09-11 10:50:56 +0200
commit32b51b7b92e16cfaf1121cbe80ca267fc8bb0718 (patch)
treeec6f9da3684589dbbfe0cebf33cefd613020b5f2
parent087f4cb8081ac16ae4de102d49963c72e9bb64d2 (diff)
parent4a774cb250cc4133f6f6d3fe6156d481ff82c2e8 (diff)
Merge branch 'master' into frameworks
-rw-r--r--src/dolphinviewcontainer.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/dolphinviewcontainer.cpp b/src/dolphinviewcontainer.cpp
index b18e43631..0f3aa9761 100644
--- a/src/dolphinviewcontainer.cpp
+++ b/src/dolphinviewcontainer.cpp
@@ -488,7 +488,16 @@ void DolphinViewContainer::slotDirectoryLoadingCanceled()
void DolphinViewContainer::slotUrlIsFileError(const KUrl& url)
{
const KFileItem item(KFileItem::Unknown, KFileItem::Unknown, url);
- slotItemActivated(item);
+
+ // Find out if the file can be opened in the view (for example, this is the
+ // case if the file is an archive). The mime type must be known for that.
+ item.determineMimeType();
+ const KUrl& folderUrl = DolphinView::openItemAsFolderUrl(item, true);
+ if (!folderUrl.isEmpty()) {
+ m_view->setUrl(folderUrl);
+ } else {
+ slotItemActivated(item);
+ }
}
void DolphinViewContainer::slotItemActivated(const KFileItem& item)