| OLD | NEW |
| 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 // Setting the src of an img to an empty string can crash the browser, so we | 5 // Setting the src of an img to an empty string can crash the browser, so we |
| 6 // use an empty 1x1 gif instead. | 6 // use an empty 1x1 gif instead. |
| 7 const EMPTY_IMAGE_URI = 'data:image/gif;base64,' | 7 const EMPTY_IMAGE_URI = 'data:image/gif;base64,' |
| 8 + 'R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw%3D%3D'; | 8 + 'R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw%3D%3D'; |
| 9 | 9 |
| 10 /** | 10 /** |
| (...skipping 539 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 550 this.summarizeSelection_(); | 550 this.summarizeSelection_(); |
| 551 | 551 |
| 552 var sortField = | 552 var sortField = |
| 553 window.localStorage['sort-field-' + this.dialogType_] || 'cachedMtime_'; | 553 window.localStorage['sort-field-' + this.dialogType_] || 'cachedMtime_'; |
| 554 var sortDirection = | 554 var sortDirection = |
| 555 window.localStorage['sort-direction-' + this.dialogType_] || 'desc'; | 555 window.localStorage['sort-direction-' + this.dialogType_] || 'desc'; |
| 556 this.directoryModel_.fileList.sort(sortField, sortDirection); | 556 this.directoryModel_.fileList.sort(sortField, sortDirection); |
| 557 | 557 |
| 558 this.refocus(); | 558 this.refocus(); |
| 559 | 559 |
| 560 this.localMetadataProvider_ = this.createLocalMetadataProvider_(); | 560 this.metadataProvider_ = |
| 561 this.gdataMetadataProvider_ = new GDataMetadataProvider(); | 561 new MetadataProvider(this.filesystem_.root.toURL()); |
| 562 |
| 563 // PyAuto tests monitor this state by polling this variable |
| 564 this.__defineGetter__('workerInitialized_', function() { |
| 565 return self.getMetadataProvider().isInitialized(); |
| 566 }); |
| 562 | 567 |
| 563 this.table_.list.endBatchUpdates(); | 568 this.table_.list.endBatchUpdates(); |
| 564 this.grid_.endBatchUpdates(); | 569 this.grid_.endBatchUpdates(); |
| 565 | 570 |
| 566 metrics.recordInterval('Load.DOM'); | 571 metrics.recordInterval('Load.DOM'); |
| 567 metrics.recordInterval('Load.Total'); | 572 metrics.recordInterval('Load.Total'); |
| 568 }; | 573 }; |
| 569 | 574 |
| 570 /** | 575 /** |
| 571 * One-time initialization of commands. | 576 * One-time initialization of commands. |
| (...skipping 1612 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2184 setVisibility('visible'); | 2189 setVisibility('visible'); |
| 2185 self.onResize_(); | 2190 self.onResize_(); |
| 2186 } | 2191 } |
| 2187 | 2192 |
| 2188 function setVisibility(visibility) { | 2193 function setVisibility(visibility) { |
| 2189 panel.setAttribute('visibility', visibility); | 2194 panel.setAttribute('visibility', visibility); |
| 2190 } | 2195 } |
| 2191 }; | 2196 }; |
| 2192 | 2197 |
| 2193 | 2198 |
| 2194 FileManager.prototype.createLocalMetadataProvider_ = function() { | |
| 2195 // Subclass MetadataProvider to notify tests when the initialization | |
| 2196 // is complete. | |
| 2197 | |
| 2198 var fileManager = this; | |
| 2199 | |
| 2200 function TestAwareMetadataProvider () { | |
| 2201 MetadataProvider.apply(this, arguments); | |
| 2202 } | |
| 2203 | |
| 2204 TestAwareMetadataProvider.prototype = { | |
| 2205 __proto__: MetadataProvider.prototype, | |
| 2206 | |
| 2207 onInitialized_: function() { | |
| 2208 MetadataProvider.prototype.onInitialized_.apply(this, arguments); | |
| 2209 | |
| 2210 // We're ready to run. Tests can monitor for this state with | |
| 2211 // ExtensionTestMessageListener listener("worker-initialized"); | |
| 2212 // ASSERT_TRUE(listener.WaitUntilSatisfied()); | |
| 2213 // Automated tests need to wait for this, otherwise we crash in | |
| 2214 // browser_test cleanup because the worker process still has | |
| 2215 // URL requests in-flight. | |
| 2216 chrome.test.sendMessage('worker-initialized'); | |
| 2217 // PyAuto tests monitor this state by polling this variable | |
| 2218 fileManager.workerInitialized_ = true; | |
| 2219 } | |
| 2220 }; | |
| 2221 | |
| 2222 return new TestAwareMetadataProvider(); | |
| 2223 }; | |
| 2224 | |
| 2225 FileManager.prototype.isOnGData = function() { | 2199 FileManager.prototype.isOnGData = function() { |
| 2226 return this.directoryModel_ && | 2200 return this.directoryModel_ && |
| 2227 this.directoryModel_.rootPath == '/' + DirectoryModel.GDATA_DIRECTORY; | 2201 this.directoryModel_.rootPath == '/' + DirectoryModel.GDATA_DIRECTORY; |
| 2228 }; | 2202 }; |
| 2229 | 2203 |
| 2230 FileManager.prototype.getMetadataProvider = function() { | 2204 FileManager.prototype.getMetadataProvider = function() { |
| 2231 if (this.isOnGData()) | 2205 return this.metadataProvider_; |
| 2232 return this.gdataMetadataProvider_; | |
| 2233 else | |
| 2234 return this.localMetadataProvider_; | |
| 2235 }; | 2206 }; |
| 2236 | 2207 |
| 2237 /** | 2208 /** |
| 2238 * Callback called when tasks for selected files are determined. | 2209 * Callback called when tasks for selected files are determined. |
| 2239 * @param {Object} selection Selection is passed here, since this.selection | 2210 * @param {Object} selection Selection is passed here, since this.selection |
| 2240 * can change before tasks were found, and we should be accurate. | 2211 * can change before tasks were found, and we should be accurate. |
| 2241 * @param {Array.<Task>} tasksList The tasks list. | 2212 * @param {Array.<Task>} tasksList The tasks list. |
| 2242 */ | 2213 */ |
| 2243 FileManager.prototype.onTasksFound_ = function(selection, tasksList) { | 2214 FileManager.prototype.onTasksFound_ = function(selection, tasksList) { |
| 2244 this.taskItems_.clear(); | 2215 this.taskItems_.clear(); |
| (...skipping 1917 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4162 }); | 4133 }); |
| 4163 }, onError); | 4134 }, onError); |
| 4164 | 4135 |
| 4165 function onError(err) { | 4136 function onError(err) { |
| 4166 console.log('Error while checking free space: ' + err); | 4137 console.log('Error while checking free space: ' + err); |
| 4167 setTimeout(doCheck, 1000 * 60); | 4138 setTimeout(doCheck, 1000 * 60); |
| 4168 } | 4139 } |
| 4169 } | 4140 } |
| 4170 } | 4141 } |
| 4171 })(); | 4142 })(); |
| OLD | NEW |