| Index: chrome/browser/resources/chromeos/wallpaper_manager/js/util.js
|
| diff --git a/chrome/browser/resources/chromeos/wallpaper_manager/js/util.js b/chrome/browser/resources/chromeos/wallpaper_manager/js/util.js
|
| index cb37cd0c857110256ba8d3c10f09bbd43d462102..bd63042c0d691dd03192d53d6998ba785264b643 100644
|
| --- a/chrome/browser/resources/chromeos/wallpaper_manager/js/util.js
|
| +++ b/chrome/browser/resources/chromeos/wallpaper_manager/js/util.js
|
| @@ -8,12 +8,37 @@ var WallpaperUtil = {};
|
| * Saves value to local storage that associates with key.
|
| * @param {string} key The key that associates with value.
|
| * @param {string} value The value to save to local storage.
|
| + * @param {boolen} sync True if the value is saved to sync storage.
|
| * @param {function=} opt_callback The callback on success, or on failure.
|
| */
|
| -WallpaperUtil.saveToLocalStorage = function(key, value, opt_callback) {
|
| +WallpaperUtil.saveToStorage = function(key, value, sync, opt_callback) {
|
| var items = {};
|
| items[key] = value;
|
| - Constants.WallpaperLocalStorage.set(items, opt_callback);
|
| + if (sync)
|
| + Constants.WallpaperSyncStorage.set(items, opt_callback);
|
| + else
|
| + Constants.WallpaperLocalStorage.set(items, opt_callback);
|
| +};
|
| +
|
| +/**
|
| + * Saves user's wallpaper infomation to local and sync storage. Note that local
|
| + * value should be saved first.
|
| + * @param {string} url The url address of wallpaper. For custom wallpaper, it is
|
| + * the file name.
|
| + * @param {string} layout The wallpaper layout.
|
| + * @param {string} source The wallpaper source.
|
| + */
|
| +WallpaperUtil.saveWallpaperInfo = function(url, layout, source) {
|
| + var wallpaperInfo = {
|
| + url: url,
|
| + layout: layout,
|
| + source: source
|
| + };
|
| + WallpaperUtil.saveToStorage(Constants.AccessLocalWallpaperInfoKey,
|
| + wallpaperInfo, false, function() {
|
| + WallpaperUtil.saveToStorage(Constants.AccessSyncWallpaperInfoKey,
|
| + wallpaperInfo, true);
|
| + });
|
| };
|
|
|
| /**
|
| @@ -68,6 +93,8 @@ WallpaperUtil.setOnlineWallpaper = function(url, layout, onSuccess, onFailure) {
|
| if (xhr.response != null) {
|
| chrome.wallpaperPrivate.setWallpaper(xhr.response, layout, url,
|
| onSuccess);
|
| + self.saveWallpaperInfo(url, layout,
|
| + Constants.WallpaperSourceEnum.Online);
|
| } else {
|
| onFailure();
|
| }
|
|
|