mirror of
https://github.com/transmission/transmission
synced 2024-12-23 16:24:02 +00:00
(trunk qt) 1. fix icon sizing issue. 2. add a mechanism to get the favicon from the hostname as an alternative to passing in the full announce UR.L
This commit is contained in:
parent
ab7fafcf42
commit
729bbd292f
2 changed files with 17 additions and 2 deletions
|
@ -81,10 +81,22 @@ Favicons :: getHost( const QUrl& url )
|
||||||
|
|
||||||
QPixmap
|
QPixmap
|
||||||
Favicons :: find( const QUrl& url )
|
Favicons :: find( const QUrl& url )
|
||||||
|
{
|
||||||
|
return findFromHost( getHost( url ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace
|
||||||
|
{
|
||||||
|
const QSize rightSize( 16, 16 );
|
||||||
|
};
|
||||||
|
|
||||||
|
QPixmap
|
||||||
|
Favicons :: findFromHost( const QString& host )
|
||||||
{
|
{
|
||||||
ensureCacheDirHasBeenScanned( );
|
ensureCacheDirHasBeenScanned( );
|
||||||
|
|
||||||
return myPixmaps[ getHost(url) ];
|
const QPixmap pixmap = myPixmaps[ host ];
|
||||||
|
return pixmap.size()==rightSize ? pixmap : pixmap.scaled(rightSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -97,7 +109,7 @@ Favicons :: add( const QUrl& url )
|
||||||
if( !myPixmaps.contains( host ) )
|
if( !myPixmaps.contains( host ) )
|
||||||
{
|
{
|
||||||
// add a placholder s.t. we only ping the server once per session
|
// add a placholder s.t. we only ping the server once per session
|
||||||
QPixmap tmp( 16, 16 );
|
QPixmap tmp( rightSize );
|
||||||
tmp.fill( Qt::transparent );
|
tmp.fill( Qt::transparent );
|
||||||
myPixmaps.insert( host, tmp );
|
myPixmaps.insert( host, tmp );
|
||||||
|
|
||||||
|
|
|
@ -38,6 +38,9 @@ class Favicons: public QObject
|
||||||
/* returns a cached pixmap, or a NULL pixmap if there's no match in the cache */
|
/* returns a cached pixmap, or a NULL pixmap if there's no match in the cache */
|
||||||
QPixmap find( const QUrl& url );
|
QPixmap find( const QUrl& url );
|
||||||
|
|
||||||
|
/* returns a cached pixmap, or a NULL pixmap if there's no match in the cache */
|
||||||
|
QPixmap findFromHost( const QString& host );
|
||||||
|
|
||||||
/* this will emit a signal when (if) the icon becomes ready */
|
/* this will emit a signal when (if) the icon becomes ready */
|
||||||
void add( const QUrl& url );
|
void add( const QUrl& url );
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue