| 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 'use strict'; | 5 'use strict'; |
| 6 | 6 |
| 7 /** | 7 /** |
| 8 * @param {HTMLElement} container Container element. | 8 * @param {HTMLElement} container Container element. |
| 9 * @constructor | 9 * @constructor |
| 10 */ | 10 */ |
| (...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 180 if (this.player_) | 180 if (this.player_) |
| 181 this.player_.onPageUnload(); | 181 this.player_.onPageUnload(); |
| 182 | 182 |
| 183 if (this.volumeManager_) | 183 if (this.volumeManager_) |
| 184 this.volumeManager_.dispose(); | 184 this.volumeManager_.dispose(); |
| 185 }; | 185 }; |
| 186 | 186 |
| 187 /** | 187 /** |
| 188 * Selects a new track to play. | 188 * Selects a new track to play. |
| 189 * @param {number} newTrack New track number. | 189 * @param {number} newTrack New track number. |
| 190 * @param {boolean=} opt_restoreState True if restoring the play state from URL. | |
| 191 * @private | 190 * @private |
| 192 */ | 191 */ |
| 193 AudioPlayer.prototype.select_ = function(newTrack, opt_restoreState) { | 192 AudioPlayer.prototype.select_ = function(newTrack) { |
| 194 if (this.currentTrackIndex_ == newTrack) return; | 193 if (this.currentTrackIndex_ == newTrack) return; |
| 195 | 194 |
| 196 this.currentTrackIndex_ = newTrack; | 195 this.currentTrackIndex_ = newTrack; |
| 197 this.player_.currentTrackIndex = this.currentTrackIndex_; | 196 this.player_.currentTrackIndex = this.currentTrackIndex_; |
| 197 Platform.performMicrotaskCheckpoint(); |
| 198 |
| 199 if (!window.appReopen) |
| 200 this.player_.audioElement.play(); |
| 198 | 201 |
| 199 window.appState.position = this.currentTrackIndex_; | 202 window.appState.position = this.currentTrackIndex_; |
| 200 window.appState.time = 0; | 203 window.appState.time = 0; |
| 201 util.saveAppState(); | 204 util.saveAppState(); |
| 202 | 205 |
| 203 var entry = this.entries_[this.currentTrackIndex_]; | 206 var entry = this.entries_[this.currentTrackIndex_]; |
| 204 | 207 |
| 205 this.fetchMetadata_(entry, function(metadata) { | 208 this.fetchMetadata_(entry, function(metadata) { |
| 206 if (this.currentTrackIndex_ != newTrack) | 209 if (this.currentTrackIndex_ != newTrack) |
| 207 return; | 210 return; |
| (...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 405 this.title = (metadata.media && metadata.media.title) || | 408 this.title = (metadata.media && metadata.media.title) || |
| 406 this.getDefaultTitle(); | 409 this.getDefaultTitle(); |
| 407 this.artist = error || | 410 this.artist = error || |
| 408 (metadata.media && metadata.media.artist) || this.getDefaultArtist(); | 411 (metadata.media && metadata.media.artist) || this.getDefaultArtist(); |
| 409 }; | 412 }; |
| 410 | 413 |
| 411 // Starts loading the audio player. | 414 // Starts loading the audio player. |
| 412 window.addEventListener('WebComponentsReady', function(e) { | 415 window.addEventListener('WebComponentsReady', function(e) { |
| 413 AudioPlayer.load(); | 416 AudioPlayer.load(); |
| 414 }); | 417 }); |
| OLD | NEW |