mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 923218: Don't show the default favicon until a failure to load a favicon has happened. r=rnewman
This commit is contained in:
parent
2306b5ed20
commit
c2eb9a9ffa
@ -1333,13 +1333,12 @@ abstract public class BrowserApp extends GeckoApp
|
||||
int flags = LoadFaviconTask.FLAG_SCALE | ( (tab.isPrivate() || tab.getErrorType() != Tab.ErrorType.NONE) ? 0 : LoadFaviconTask.FLAG_PERSIST);
|
||||
int id = Favicons.loadFavicon(tab.getURL(), tab.getFaviconURL(), flags,
|
||||
new OnFaviconLoadedListener() {
|
||||
|
||||
@Override
|
||||
public void onFaviconLoaded(String pageUrl, Bitmap favicon) {
|
||||
// Leave favicon UI untouched if we failed to load the image
|
||||
// for some reason.
|
||||
if (favicon == null)
|
||||
return;
|
||||
// If we failed to load a favicon, we use the default favicon instead.
|
||||
if (favicon == null) {
|
||||
favicon = Favicons.sDefaultFavicon;
|
||||
}
|
||||
|
||||
// The tab might be pointing to another URL by the time the
|
||||
// favicon is finally loaded, in which case we simply ignore it.
|
||||
|
@ -1121,7 +1121,7 @@ public class BrowserToolbar extends GeckoRelativeLayout
|
||||
image = Bitmap.createScaledBitmap(image, mFaviconSize, mFaviconSize, false);
|
||||
mFavicon.setImageBitmap(image);
|
||||
} else {
|
||||
mFavicon.setImageResource(R.drawable.favicon);
|
||||
mFavicon.setImageBitmap(null);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -42,6 +42,8 @@ public class Favicons {
|
||||
}
|
||||
};
|
||||
|
||||
public static Bitmap sDefaultFavicon;
|
||||
|
||||
// A cache of the Favicon which have recently failed to download - prevents us from repeatedly
|
||||
// trying to download a Favicon when doing so is currently impossible.
|
||||
private static final LruCache<String, Long> sFailedCache = new LruCache<String, Long>(64);
|
||||
@ -200,6 +202,9 @@ public class Favicons {
|
||||
if (sFaviconLargeSize < 0) {
|
||||
sFaviconLargeSize = Math.round(sContext.getResources().getDimension(R.dimen.favicon_size_large));
|
||||
}
|
||||
|
||||
// Load the default favicon.
|
||||
sDefaultFavicon = BitmapUtils.decodeResource(sContext, R.drawable.favicon);
|
||||
}
|
||||
public static void removeLoadTask(long taskId) {
|
||||
sLoadTasks.remove(taskId);
|
||||
|
@ -141,8 +141,7 @@
|
||||
android:layout_marginLeft="8dip"
|
||||
android:paddingLeft="4dip"
|
||||
android:paddingRight="4dip"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:src="@drawable/favicon"/>
|
||||
android:layout_gravity="center_vertical"/>
|
||||
|
||||
<ImageButton android:id="@+id/site_security"
|
||||
style="@style/UrlBar.ImageButton"
|
||||
|
Loading…
Reference in New Issue
Block a user