else if (item->isFile()) {
// allow to browse through ZIP and tar files
KMimeType::Ptr mime = item->mimeTypePtr();
- if (mime->is("application/x-zip")) {
+ if (mime->is("application/zip")) {
url.setProtocol("zip");
setUrl(url);
}
else if (mime->is("application/x-tar") ||
mime->is("application/x-tarz") ||
- mime->is("application/x-tbz") ||
- mime->is("application/x-tgz") ||
+ mime->is("application/x-bzip-compressed-tar") ||
+ mime->is("application/x-compressed-tar") ||
mime->is("application/x-tzo")) {
url.setProtocol("tar");
setUrl(url);
const QMimeData* mimeData = QApplication::clipboard()->mimeData();
if (KonqMimeData::decodeIsCutSelection(mimeData) && isCutItem(*item)) {
KIconEffect iconEffect;
- QPixmap cutPixmap = iconEffect.apply(pixmap, K3Icon::Desktop, K3Icon::DisabledState);
- m_dirModel->setData(idx, cutPixmap, Qt::DecorationRole);
+ const QPixmap cutPixmap = iconEffect.apply(pixmap, K3Icon::Desktop, K3Icon::DisabledState);
+ m_dirModel->setData(idx, QIcon(cutPixmap), Qt::DecorationRole);
}
else {
- m_dirModel->setData(idx, pixmap, Qt::DecorationRole);
+ m_dirModel->setData(idx, QIcon(pixmap), Qt::DecorationRole);
}
}
}
while (it != end) {
KFileItem* item = *it;
if (isCutItem(*item)) {
- QPixmap pixmap = item->pixmap(0);
- KIconEffect iconEffect;
- pixmap = iconEffect.apply(pixmap, K3Icon::Desktop, K3Icon::DisabledState);
const QModelIndex idx = m_dirModel->indexForItem(*item);
- if (idx.isValid()) {
- m_dirModel->setData(idx, pixmap, Qt::DecorationRole);
+ const QVariant value = m_dirModel->data(idx, Qt::DecorationRole);
+ if (value.type() == QVariant::Icon) {
+ const QIcon icon(qvariant_cast<QIcon>(value));
+ KIconEffect iconEffect;
+ const QPixmap pixmap = iconEffect.apply(icon.pixmap(128, 128),
+ K3Icon::Desktop,
+ K3Icon::DisabledState);
+ m_dirModel->setData(idx, QIcon(pixmap), Qt::DecorationRole);
}
}
++it;