Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(277)

Side by Side Diff: chrome/browser/resources/options2/chromeos/change_picture_options.js

Issue 10850036: [cros] Add attribution (author & website) strings to stock user images. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Compile fix Created 8 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 cr.define('options', function() { 5 cr.define('options', function() {
6 6
7 var OptionsPage = options.OptionsPage; 7 var OptionsPage = options.OptionsPage;
8 var UserImagesGrid = options.UserImagesGrid; 8 var UserImagesGrid = options.UserImagesGrid;
9 var ButtonImages = UserImagesGrid.ButtonImages; 9 var ButtonImages = UserImagesGrid.ButtonImages;
10 10
(...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after
233 * Selects user image with the given URL. 233 * Selects user image with the given URL.
234 * @param {string} url URL of the image to select. 234 * @param {string} url URL of the image to select.
235 * @private 235 * @private
236 */ 236 */
237 setSelectedImage_: function(url) { 237 setSelectedImage_: function(url) {
238 $('user-image-grid').selectedItemUrl = url; 238 $('user-image-grid').selectedItemUrl = url;
239 }, 239 },
240 240
241 /** 241 /**
242 * Appends default images to the image grid. Should only be called once. 242 * Appends default images to the image grid. Should only be called once.
243 * @param {Array.<string>} images An array of URLs to default images. 243 * @param {Array.<{url: string, author: string, website: string}>} images
244 * An array of default images data, including URL, author and website.
244 * @private 245 * @private
245 */ 246 */
246 setDefaultImages_: function(images) { 247 setDefaultImages_: function(images) {
247 var imageGrid = $('user-image-grid'); 248 var imageGrid = $('user-image-grid');
248 for (var i = 0, url; url = images[i]; i++) { 249 for (var i = 0, data; data = imagesData[i]; i++) {
249 imageGrid.addItem(url); 250 imageGrid.addItem(data.url);
250 } 251 }
251 }, 252 },
252 }; 253 };
253 254
254 var ChangePictureOptionsWebRTCProto = { 255 var ChangePictureOptionsWebRTCProto = {
255 // Inherit ChangePictureOptions from OptionsPage. 256 // Inherit ChangePictureOptions from OptionsPage.
256 __proto__: options.OptionsPage.prototype, 257 __proto__: options.OptionsPage.prototype,
257 258
258 /** 259 /**
259 * Initializes ChangePictureOptions page. 260 * Initializes ChangePictureOptions page.
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after
382 */ 383 */
383 handleImageSelected_: function() { 384 handleImageSelected_: function() {
384 var imageGrid = $('user-image-grid'); 385 var imageGrid = $('user-image-grid');
385 var url = imageGrid.selectedItemUrl; 386 var url = imageGrid.selectedItemUrl;
386 // Ignore selection change caused by program itself and selection of one 387 // Ignore selection change caused by program itself and selection of one
387 // of the action buttons. 388 // of the action buttons.
388 if (!imageGrid.inProgramSelection && 389 if (!imageGrid.inProgramSelection &&
389 url != ButtonImages.TAKE_PHOTO && url != ButtonImages.CHOOSE_FILE) { 390 url != ButtonImages.TAKE_PHOTO && url != ButtonImages.CHOOSE_FILE) {
390 chrome.send('selectImage', [url]); 391 chrome.send('selectImage', [url]);
391 } 392 }
393 // Update image attribution text.
394 var image = imageGrid.selectedItem;
395 $('user-image-author-name').textContent = image.author;
396 $('user-image-author-website').textContent = image.website;
397 $('user-image-author-website').href = image.website;
398 $('user-image-attribution').style.visibility =
399 (image.author || image.website) ? 'visible' : 'hidden';
392 }, 400 },
393 401
394 /** 402 /**
395 * Handles image activation (by pressing Enter). 403 * Handles image activation (by pressing Enter).
396 * @private 404 * @private
397 */ 405 */
398 handleImageActivated_: function() { 406 handleImageActivated_: function() {
399 switch ($('user-image-grid').selectedItemUrl) { 407 switch ($('user-image-grid').selectedItemUrl) {
400 case ButtonImages.TAKE_PHOTO: 408 case ButtonImages.TAKE_PHOTO:
401 this.handleTakePhoto_(); 409 this.handleTakePhoto_();
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
454 * Selects user image with the given URL. 462 * Selects user image with the given URL.
455 * @param {string} url URL of the image to select. 463 * @param {string} url URL of the image to select.
456 * @private 464 * @private
457 */ 465 */
458 setSelectedImage_: function(url) { 466 setSelectedImage_: function(url) {
459 $('user-image-grid').selectedItemUrl = url; 467 $('user-image-grid').selectedItemUrl = url;
460 }, 468 },
461 469
462 /** 470 /**
463 * Appends default images to the image grid. Should only be called once. 471 * Appends default images to the image grid. Should only be called once.
464 * @param {Array.<string>} images An array of URLs to default images. 472 * @param {Array.<{url: string, author: string, website: string}>} images
473 * An array of default images data, including URL, author and website.
465 * @private 474 * @private
466 */ 475 */
467 setDefaultImages_: function(images) { 476 setDefaultImages_: function(imagesData) {
468 var imageGrid = $('user-image-grid'); 477 var imageGrid = $('user-image-grid');
469 for (var i = 0, url; url = images[i]; i++) { 478 for (var i = 0, data; data = imagesData[i]; i++) {
470 imageGrid.addItem(url).type = 'default'; 479 var item = imageGrid.addItem(data.url);
480 item.type = 'default';
481 item.author = data.author;
482 item.website = data.website;
471 } 483 }
472 }, 484 },
473 }; 485 };
474 486
475 // Forward public APIs to private implementations. 487 // Forward public APIs to private implementations.
476 [ 488 [
477 'setCameraPresent', 489 'setCameraPresent',
478 'setDefaultImages', 490 'setDefaultImages',
479 'setOldImage', 491 'setOldImage',
480 'setProfileImage', 492 'setProfileImage',
481 'setSelectedImage', 493 'setSelectedImage',
482 ].forEach(function(name) { 494 ].forEach(function(name) {
483 ChangePictureOptions[name] = function() { 495 ChangePictureOptions[name] = function() {
484 var instance = ChangePictureOptions.getInstance(); 496 var instance = ChangePictureOptions.getInstance();
485 return instance[name + '_'].apply(instance, arguments); 497 return instance[name + '_'].apply(instance, arguments);
486 }; 498 };
487 }); 499 });
488 500
489 // Export 501 // Export
490 return { 502 return {
491 ChangePictureOptions: ChangePictureOptions 503 ChangePictureOptions: ChangePictureOptions
492 }; 504 };
493 505
494 }); 506 });
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698