Skip to content
This repository has been archived by the owner on Nov 3, 2021. It is now read-only.

Commit

Permalink
Merge pull request #24115 from ddrmanxbxfr/bug_1062807
Browse files Browse the repository at this point in the history
Bug 1062807 - Use the new shared helper for loading JSON files in the wallpaper app r=@yurenju
  • Loading branch information
yurenju committed Sep 22, 2014
2 parents 576ab24 + 0ee9449 commit a884412
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 22 deletions.
42 changes: 20 additions & 22 deletions apps/wallpaper/js/pick.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,33 +23,31 @@ var Wallpaper = {
},

generateWallpaperList: function wallpaper_generateWallpaperList(cb) {
var xhr = new XMLHttpRequest();
xhr.open('GET', this.wallpapersUrl, true);
xhr.responseType = 'json';
xhr.send(null);

var self = this;
// Get #-moz-samplesize media fragment to downsample while decoding
// so that we can display smaller images without using lot of memory
// See Bug 1011460
var sampleSize = Downsample.sizeNoMoreThan(this.thumbnailScale);
xhr.onload = function successGenerateWallpaperList() {
self.wallpapers.innerHTML = '';
xhr.response.forEach(function(wallpaper) {
var fileName = 'resources/' + wallpaper;
// Use image tag instead of backgroundImage because gecko handles
// memory for off-screen images better
var imgNode = document.createElement('img');
imgNode.alt = '';
imgNode.classList.add('wallpaper');
imgNode.dataset.filename = fileName;
imgNode.src = fileName + sampleSize;
self.wallpapers.appendChild(imgNode);
});
if (cb) {
cb();
}
};

LazyLoader.getJSON(this.wallpapersUrl)
.then(function(json) {
self.wallpapers.innerHTML = '';
json.forEach(function(wallpaper) {
var fileName = 'resources/' + wallpaper;
// Use image tag instead of backgroundImage
// because gecko handles
// memory for off-screen images better
var imgNode = document.createElement('img');
imgNode.alt = '';
imgNode.classList.add('wallpaper');
imgNode.dataset.filename = fileName;
imgNode.src = fileName + sampleSize;
self.wallpapers.appendChild(imgNode);
});
if (cb) {
cb();
}
});
},

startPick: function wallpaper_startPick(request) {
Expand Down
1 change: 1 addition & 0 deletions apps/wallpaper/pick.html
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
<!-- Shared code -->
<script type="text/javascript" src="shared/js/l10n.js"></script>
<script type="text/javascript" defer src="shared/js/media/downsample.js"></script>
<script type="text/javascript" src="/shared/js/lazy_loader.js"></script>
<!-- Web Components -->
<script defer src="shared/elements/config.js"></script>
<script defer src="shared/elements/gaia-header/dist/script.js"></script>
Expand Down
1 change: 1 addition & 0 deletions apps/wallpaper/test/unit/pick_test.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
require('/shared/js/lazy_loader.js');
require('/shared/js/media/downsample.js');
requireApp('wallpaper/js/pick.js');

Expand Down

0 comments on commit a884412

Please sign in to comment.