Index: chrome/browser/resources/chromeos/wallpaper_manager/js/wallpaper_images_grid.js |
diff --git a/chrome/browser/resources/chromeos/wallpaper_manager/js/wallpaper_images_grid.js b/chrome/browser/resources/chromeos/wallpaper_manager/js/wallpaper_images_grid.js |
index cb42b166e915e4dfae5bc026cf1277da84f886e9..0561b8992600743a5290200bf7ef6f6dd3fdfbdb 100644 |
--- a/chrome/browser/resources/chromeos/wallpaper_manager/js/wallpaper_images_grid.js |
+++ b/chrome/browser/resources/chromeos/wallpaper_manager/js/wallpaper_images_grid.js |
@@ -32,11 +32,22 @@ cr.define('wallpapers', function() { |
decorate: function() { |
GridItem.prototype.decorate.call(this); |
var imageEl = cr.doc.createElement('img'); |
- // Thumbnail |
- imageEl.src = this.dataItem.baseURL + ThumbnailSuffix; |
- // Remove any garbage added by GridItem and ListItem decorators. |
- this.textContent = ''; |
- this.appendChild(imageEl); |
+ var xhr = new XMLHttpRequest(); |
+ xhr.open('GET', this.dataItem.baseURL + ThumbnailSuffix, true); |
+ xhr.responseType = 'blob'; |
+ xhr.send(null); |
+ var self = this; |
+ xhr.addEventListener('load', function(e) { |
+ if (xhr.status === 200) { |
+ self.textContent = ''; |
+ imageEl.src = window.URL.createObjectURL(xhr.response); |
+ imageEl.addEventListener('load', function(e) { |
+ window.URL.revokeObjectURL(this.src); |
+ }); |
+ self.appendChild(imageEl); |
+ } |
+ //TODO(bshe): Add error handleing. |
miket_OOO
2012/11/12 21:39:46
Nit: "handling"
Do you really think this TODO wil
bshe
2012/11/12 22:24:28
I guess I am not sure how should we proceed when t
|
+ }); |
}, |
}; |