[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: kdelibs/kio
From: David Faure <faure () kde ! org>
Date: 2005-04-07 12:37:17
Message-ID: 20050407123717.7D743646 () office ! kde ! org
[Download RAW message or body]
CVS commit by faure:
Make iconForURL("trash:/") use the trash icon, i.e. prefer the protocol icon [or \
favicon] when there's one, over the mimetype icon, for the root of a protocol.
Added regression tests for iconForURL(). [but this wasn't a regression :)]
BUG: 100321
A tests/kmimetypetest.cpp 1.1 [LGPL]
M +56 -48 kio/kmimetype.cpp 1.194
M +2 -1 tests/Makefile.am 1.60
--- kdelibs/kio/kio/kmimetype.cpp #1.193:1.194
@@ -504,15 +504,23 @@ QPixmap KMimeType::pixmapForURL( const K
QString KMimeType::iconForURL( const KURL & _url, mode_t _mode )
{
- KMimeType::Ptr mt = findByURL( _url, _mode, _url.isLocalFile(),
+ const KMimeType::Ptr mt = findByURL( _url, _mode, _url.isLocalFile(),
false /*HACK*/);
static const QString& unknown = KGlobal::staticQString("unknown");
- QString i( mt->icon( _url, _url.isLocalFile() ));
+ const QString mimeTypeIcon = mt->icon( _url, _url.isLocalFile() );
+ QString i = mimeTypeIcon;
// if we don't find an icon, maybe we can use the one for the protocol
- if ( i == unknown || i.isEmpty() || mt == defaultMimeTypePtr()) {
+ if ( i == unknown || i.isEmpty() || mt == defaultMimeTypePtr()
+ // and for the root of the protocol (e.g. trash:/) the protocol icon has \
priority over the mimetype icon + || _url.path().length() <= 1 )
+ {
i = favIconForURL( _url ); // maybe there is a favicon?
if ( i.isEmpty() )
i = KProtocolInfo::icon( _url.protocol() );
+
+ // root of protocol: if we found nothing, revert to mimeTypeIcon (which is \
usually "folder") + if ( _url.path().length() <= 1 && ( i == unknown || \
i.isEmpty() ) ) + i = mimeTypeIcon;
}
return i;
--- kdelibs/kio/tests/Makefile.am #1.59:1.60
@@ -28,5 +28,5 @@
kmimefromext kpropsdlgtest kmfitest dataprotocoltest \
kprotocolinfotest ksycocaupdatetest netaccesstest jobtest \
- kurlcompletiontest
+ kurlcompletiontest kmimetypetest
# Unfortunately some tests depend on the network settings, it seems
@@ -71,4 +71,5 @@
jobtest_SOURCES = jobtest.cpp
kurlcompletiontest_SOURCES = kurlcompletiontest.cpp
+kmimetypetest_SOURCES = kmimetypetest.cpp
# kfile meta stuff. Comment this in, if you want a small
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic