| Index: ui/file_manager/file_manager/foreground/js/list_thumbnail_loader.js
|
| diff --git a/ui/file_manager/file_manager/foreground/js/list_thumbnail_loader.js b/ui/file_manager/file_manager/foreground/js/list_thumbnail_loader.js
|
| index 1bf53237200b9edeb71056efef4e49d187624bd3..731f5ec7da263c6a3c1da6517208763ecec84f54 100644
|
| --- a/ui/file_manager/file_manager/foreground/js/list_thumbnail_loader.js
|
| +++ b/ui/file_manager/file_manager/foreground/js/list_thumbnail_loader.js
|
| @@ -76,6 +76,7 @@ function ListThumbnailLoader(
|
| // change, and change this class to handle it.
|
| this.dataModel_.addEventListener('splice', this.onSplice_.bind(this));
|
| this.dataModel_.addEventListener('sorted', this.onSorted_.bind(this));
|
| + this.dataModel_.addEventListener('change', this.onChange_.bind(this));
|
| }
|
|
|
| ListThumbnailLoader.prototype.__proto__ = cr.EventTarget.prototype;
|
| @@ -122,6 +123,21 @@ ListThumbnailLoader.prototype.onSorted_ = function(event) {
|
| }
|
|
|
| /**
|
| + * An event handler for change event of data model.
|
| + *
|
| + * @param {!Event} event Event
|
| + */
|
| +ListThumbnailLoader.prototype.onChange_ = function(event) {
|
| + // Revoke cache of updated file.
|
| + var item = this.dataModel_.item(event.index);
|
| + if (item)
|
| + this.cache_.remove(item.toURL());
|
| +
|
| + this.cursor_ = this.beginIndex_;
|
| + this.continue_();
|
| +}
|
| +
|
| +/**
|
| * Sets high priority range in the list.
|
| *
|
| * @param {number} beginIndex Begin index of the range, inclusive.
|
| @@ -318,11 +334,11 @@ ListThumbnailLoader.Task = function(
|
| */
|
| ListThumbnailLoader.Task.prototype.fetch = function() {
|
| return new Promise(function(resolve, reject) {
|
| - this.metadataCache_.getOne(
|
| - this.entry_, 'thumbnail|filesystem|external|media', resolve);
|
| - }.bind(this)).then(function(metadata) {
|
| + this.metadataCache_.getLatest(
|
| + [this.entry_], 'thumbnail|filesystem|external|media', resolve);
|
| + }.bind(this)).then(function(metadatas) {
|
| return new this.thumbnailLoaderConstructor_(
|
| - this.entry_, ThumbnailLoader.LoaderType.IMAGE, metadata)
|
| + this.entry_, ThumbnailLoader.LoaderType.IMAGE, metadatas[0])
|
| .loadAsDataUrl();
|
| }.bind(this)).then(function(result) {
|
| return new ListThumbnailLoader.ThumbnailData(
|
|
|