fix bug: pause music will reset process bar and lyrics
This commit is contained in:
parent
41fa2c8ccc
commit
eee110bca5
29
js/app.js
29
js/app.js
@ -31,6 +31,16 @@
|
||||
});
|
||||
});
|
||||
|
||||
app.run(['angularPlayer', 'Notification', 'loWeb', function(angularPlayer, Notification, loWeb) {
|
||||
angularPlayer.setBootstrapTrack(
|
||||
loWeb.bootstrapTrack(
|
||||
function(){},
|
||||
function(){
|
||||
Notification.info('版权原因无法播放,请搜索其他平台');
|
||||
})
|
||||
);
|
||||
}]);
|
||||
|
||||
app.filter('playmode_title', function() {
|
||||
return function(input) {
|
||||
return input ? '随机' : '顺序';
|
||||
@ -443,6 +453,7 @@
|
||||
$scope.settings = {"playmode": 0, "nowplaying_track_id": -1};
|
||||
$scope.lyricArray = [];
|
||||
$scope.lyricLineNumber = -1;
|
||||
$scope.lastTrackId = null;
|
||||
|
||||
$scope.loadLocalSettings = function() {
|
||||
var defaultSettings = {"playmode": 0, "nowplaying_track_id": -1, "volume": 90};
|
||||
@ -513,17 +524,6 @@
|
||||
if (angularPlayer.getRepeatStatus() == false) {
|
||||
angularPlayer.repeatToggle();
|
||||
}
|
||||
$timeout(
|
||||
function(){
|
||||
angularPlayer.setBootstrapTrack(
|
||||
loWeb.bootstrapTrack(
|
||||
function(){},
|
||||
function(){
|
||||
Notification.info('版权原因无法播放,请搜索其他平台');
|
||||
})
|
||||
);
|
||||
}, 0
|
||||
);
|
||||
|
||||
if (track_id == -1) {
|
||||
return;
|
||||
@ -542,8 +542,7 @@
|
||||
}
|
||||
var track_id = localPlayerSettings.nowplaying_track_id;
|
||||
|
||||
angularPlayer.playTrack(track_id);
|
||||
angularPlayer.pause();
|
||||
angularPlayer.loadTrack(track_id);
|
||||
|
||||
});
|
||||
|
||||
@ -665,6 +664,9 @@
|
||||
|
||||
|
||||
$scope.$on('track:id', function(event, data) {
|
||||
if ($scope.lastTrackId == data) {
|
||||
return;
|
||||
}
|
||||
var current = localStorage.getObject('player-settings');
|
||||
current.nowplaying_track_id = data;
|
||||
localStorage.setObject('player-settings', current);
|
||||
@ -684,6 +686,7 @@
|
||||
}
|
||||
$scope.lyricArray = parseLyric(lyric);
|
||||
});
|
||||
$scope.lastTrackId = data;
|
||||
});
|
||||
|
||||
$scope.$on('currentTrack:position', function(event, data) {
|
||||
|
12
js/vendor/angular-soundmanager2.js
vendored
12
js/vendor/angular-soundmanager2.js
vendored
@ -4676,14 +4676,15 @@ ngSoundManager.factory('angularPlayer', ['$rootScope', '$log',
|
||||
//once all done then broadcast
|
||||
$rootScope.$broadcast('player:playlist', playlist);
|
||||
},
|
||||
initPlayTrack: function(trackId, isResume) {
|
||||
initPlayTrack: function(trackId, isResume, isloadOnly) {
|
||||
if(isResume !== true) {
|
||||
//stop and unload currently playing track
|
||||
this.stop();
|
||||
//set new track as current track
|
||||
this.setCurrentTrack(trackId);
|
||||
}
|
||||
if (bootstrapTrack != null) {
|
||||
if ((bootstrapTrack != null) && (isResume !== true)) {
|
||||
var angularPlayerObj = this;
|
||||
var sound = soundManager.getSoundById(trackId);
|
||||
bootstrapTrack(sound, this.currentTrackData(), function(){
|
||||
soundManager.play(trackId);
|
||||
@ -4691,6 +4692,9 @@ ngSoundManager.factory('angularPlayer', ['$rootScope', '$log',
|
||||
//set as playing
|
||||
isPlaying = true;
|
||||
$rootScope.$broadcast('music:isPlaying', isPlaying);
|
||||
if (isloadOnly == true) {
|
||||
angularPlayerObj.pause();
|
||||
}
|
||||
});
|
||||
}
|
||||
else {
|
||||
@ -4732,6 +4736,10 @@ ngSoundManager.factory('angularPlayer', ['$rootScope', '$log',
|
||||
soundManager.stopAll();
|
||||
soundManager.unload(this.getCurrentTrack());
|
||||
},
|
||||
loadTrack: function(trackId) {
|
||||
// play track and pause at beginning
|
||||
this.initPlayTrack(trackId, false, true);
|
||||
},
|
||||
playTrack: function(trackId) {
|
||||
this.initPlayTrack(trackId);
|
||||
},
|
||||
|
Loading…
x
Reference in New Issue
Block a user