Index: chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappDataStorage.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappDataStorage.java b/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappDataStorage.java |
index 2540b8d95acab7e81d64cbd9ee4219b2384f8ea2..cec10d4086f970465b7aab6023134ce576d1acfd 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappDataStorage.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappDataStorage.java |
@@ -10,6 +10,7 @@ import android.graphics.Bitmap; |
import android.os.AsyncTask; |
import org.chromium.base.ThreadUtils; |
+import org.chromium.base.VisibleForTesting; |
import org.chromium.chrome.browser.ShortcutHelper; |
/** |
@@ -38,6 +39,8 @@ public class WebappDataStorage { |
static final String KEY_SPLASH_ICON = "splash_icon"; |
static final String KEY_LAST_USED = "last_used"; |
+ private static Observer sObserver = null; |
+ |
private final SharedPreferences mPreferences; |
/** |
@@ -84,6 +87,14 @@ public class WebappDataStorage { |
}.execute(); |
} |
+ /** |
+ * Sets the observer to use. |
+ */ |
+ @VisibleForTesting |
+ public static void setObserverForTests(Observer observer) { |
+ sObserver = observer; |
+ } |
+ |
/* Package private for use by WebappRegistry */ |
WebappDataStorage(Context context, String webappId) { |
mPreferences = context.getSharedPreferences( |
@@ -105,6 +116,7 @@ public class WebappDataStorage { |
* @param splashScreenImage The image which should be shown on the splash screen of the webapp. |
*/ |
public void updateSplashScreenImage(Bitmap splashScreenImage) { |
+ if (sObserver != null) sObserver.onUpdateSplashScreenImage(splashScreenImage); |
new UpdateTask(splashScreenImage).execute(); |
} |
@@ -126,6 +138,17 @@ public class WebappDataStorage { |
public void onDataRetrieved(T readObject); |
} |
+ /** |
+ * Observer used to monitor splash screen downloads. |
+ */ |
+ public static interface Observer { |
mlamouri (slow - plz ping)
2015/09/02 16:56:57
You are adding this observer interface just for te
Lalit Maganti
2015/09/02 17:15:42
It was on Dan's suggestion. The other way I can th
|
+ |
+ /** |
+ * Called when a splash screen update is queued. |
+ */ |
+ public void onUpdateSplashScreenImage(Bitmap image); |
+ } |
+ |
private final class BitmapFetchTask extends AsyncTask<Void, Void, Bitmap> { |
private final String mKey; |