Index: chrome/browser/resources/chromeos/wallpaper_manager/js/wallpaper_manager.js |
diff --git a/chrome/browser/resources/chromeos/wallpaper_manager/js/wallpaper_manager.js b/chrome/browser/resources/chromeos/wallpaper_manager/js/wallpaper_manager.js |
index 8344d436ecf95a5cc3bbbce337d1bfbafc3d5b89..412b12f3c7cbb0e56eaa4be9e58092135111bdc1 100644 |
--- a/chrome/browser/resources/chromeos/wallpaper_manager/js/wallpaper_manager.js |
+++ b/chrome/browser/resources/chromeos/wallpaper_manager/js/wallpaper_manager.js |
@@ -521,10 +521,17 @@ function WallpaperManager(dialogDom) { |
self.onWallpaperChanged_.bind(self, |
selectedItem, selectedItem.baseURL), |
errorHandler); |
+ WallpaperUtil.enabledExperimentalFeatureCallback(function() { |
+ WallpaperUtil.storePictureToSyncFileSystem( |
+ selectedItem.baseURL, |
+ e.target.result, |
+ function() {} |
+ ); |
+ }); |
}); |
}, errorHandler); |
}, errorHandler); |
- } |
+ }; |
this.wallpaperDirs_.getDirectory(WallpaperDirNameEnum.ORIGINAL, |
success, errorHandler); |
break; |
@@ -833,7 +840,13 @@ function WallpaperManager(dialogDom) { |
self.wallpaperDirs_.getDirectory(WallpaperDirNameEnum.THUMBNAIL, |
success, errorHandler); |
}; |
- |
+ var onCustomWallpaperSuccess = function(thumbnailData, wallpaperData) { |
+ WallpaperUtil.enabledExperimentalFeatureCallback(function() { |
+ WallpaperUtil.storePictureToSyncFileSystem(fileName, wallpaperData, |
+ function() {}); |
+ }); |
+ saveThumbnail(thumbnailData); |
+ }; |
var success = function(dirEntry) { |
dirEntry.getFile(fileName, {create: true}, function(fileEntry) { |
fileEntry.createWriter(function(fileWriter) { |
@@ -843,13 +856,15 @@ function WallpaperManager(dialogDom) { |
reader.addEventListener('error', errorHandler); |
reader.addEventListener('load', function(e) { |
self.setCustomWallpaper(e.target.result, layout, true, fileName, |
- saveThumbnail, function() { |
+ function(thumbnail) { |
+ onCustomWallpaperSuccess(thumbnail, e.target.result); |
+ }, |
+ function() { |
self.removeCustomWallpaper(fileName); |
errorHandler(); |
}); |
}); |
}); |
- |
fileWriter.addEventListener('error', errorHandler); |
fileWriter.write(file); |
}, errorHandler); |
@@ -875,7 +890,7 @@ function WallpaperManager(dialogDom) { |
fileEntry.remove(function() { |
}, errorHandler); |
}, errorHandler); |
- } |
+ }; |
// Removes copy of original. |
self.wallpaperDirs_.getDirectory(WallpaperDirNameEnum.ORIGINAL, success, |
@@ -967,7 +982,7 @@ function WallpaperManager(dialogDom) { |
var errorHandler = this.onFileSystemError_.bind(this); |
var toArray = function(list) { |
return Array.prototype.slice.call(list || [], 0); |
- } |
+ }; |
var self = this; |
var processResults = function(entries) { |
@@ -1009,7 +1024,7 @@ function WallpaperManager(dialogDom) { |
self.wallpaperGrid_.dataModel = wallpapersDataModel; |
self.wallpaperGrid_.selectedItem = selectedItem; |
self.wallpaperGrid_.activeItem = selectedItem; |
- } |
+ }; |
var success = function(dirEntry) { |
var dirReader = dirEntry.createReader(); |
@@ -1027,7 +1042,7 @@ function WallpaperManager(dialogDom) { |
}, errorHandler); |
}; |
readEntries(); // Start reading dirs. |
- } |
+ }; |
this.wallpaperDirs_.getDirectory(WallpaperDirNameEnum.ORIGINAL, |
success, errorHandler); |
} else { |