| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 'use strict'; | 5 'use strict'; |
| 6 | 6 |
| 7 /** | 7 /** |
| 8 * Scrollable thumbnail ribbon at the bottom of the Gallery in the Slide mode. | 8 * Scrollable thumbnail ribbon at the bottom of the Gallery in the Slide mode. |
| 9 * | 9 * |
| 10 * @param {Document} document Document. | 10 * @param {Document} document Document. |
| (...skipping 326 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 337 }; | 337 }; |
| 338 | 338 |
| 339 /** | 339 /** |
| 340 * Content change handler. | 340 * Content change handler. |
| 341 * | 341 * |
| 342 * @param {Event} event Event. | 342 * @param {Event} event Event. |
| 343 * @private | 343 * @private |
| 344 */ | 344 */ |
| 345 Ribbon.prototype.onContentChange_ = function(event) { | 345 Ribbon.prototype.onContentChange_ = function(event) { |
| 346 var url = event.item.getEntry().toURL(); | 346 var url = event.item.getEntry().toURL(); |
| 347 this.remapCache_(event.oldEntry.toURL(), url); | 347 if (event.oldEntry.toURL() !== url) { |
| 348 this.remapCache_(event.oldEntry.toURL(), url); |
| 349 } else { |
| 350 delete this.renderCache_[url]; |
| 351 var index = this.dataModel_.indexOf(event.item); |
| 352 this.renderThumbnail_(index); |
| 353 } |
| 348 | 354 |
| 349 var thumbnail = this.renderCache_[url]; | 355 var thumbnail = this.renderCache_[url]; |
| 350 if (thumbnail && event.metadata) | 356 if (thumbnail && event.metadata) |
| 351 this.setThumbnailImage_(thumbnail, event.item.getEntry(), event.metadata); | 357 this.setThumbnailImage_(thumbnail, event.item.getEntry(), event.metadata); |
| 352 }; | 358 }; |
| 353 | 359 |
| 354 /** | 360 /** |
| 355 * Update the thumbnail element cache. | 361 * Update the thumbnail element cache. |
| 356 * | 362 * |
| 357 * @param {string} oldUrl Old url. | 363 * @param {string} oldUrl Old url. |
| 358 * @param {string} newUrl New url. | 364 * @param {string} newUrl New url. |
| 359 * @private | 365 * @private |
| 360 */ | 366 */ |
| 361 Ribbon.prototype.remapCache_ = function(oldUrl, newUrl) { | 367 Ribbon.prototype.remapCache_ = function(oldUrl, newUrl) { |
| 362 if (oldUrl != newUrl && (oldUrl in this.renderCache_)) { | 368 if (oldUrl != newUrl && (oldUrl in this.renderCache_)) { |
| 363 this.renderCache_[newUrl] = this.renderCache_[oldUrl]; | 369 this.renderCache_[newUrl] = this.renderCache_[oldUrl]; |
| 364 delete this.renderCache_[oldUrl]; | 370 delete this.renderCache_[oldUrl]; |
| 365 } | 371 } |
| 366 }; | 372 }; |
| OLD | NEW |