CR feedback

This commit is contained in:
David Kelly 2016-12-22 18:09:19 -08:00
parent 2e897e0cc9
commit 9eed430f49
2 changed files with 18 additions and 11 deletions

View file

@ -346,15 +346,18 @@ Item {
}
break;
case 'updateAudioLevel':
var userId = message.params[0];
var audioLevel = message.params[1];
if (!userId) {
myData.audioLevel = audioLevel;
myCard.audioLevel = audioLevel;
} else {
var userIndex = findSessionIndex(userId);
userModel.get(userIndex).audioLevel = audioLevel;
userData[userIndex].audioLevel = audioLevel;
for (var userId in message.params) {
var audioLevel = message.params[userId];
// If the userId is 0, we're updating "myData".
if (userId == 0) {
myData.audioLevel = audioLevel;
myCard.audioLevel = audioLevel; // Defensive programming
} else {
console.log("userid:" + userId);
var userIndex = findSessionIndex(userId);
userModel.get(userIndex).audioLevel = audioLevel;
userData[userIndex].audioLevel = audioLevel; // Defensive programming
}
}
break;
default:

View file

@ -120,7 +120,7 @@ function populateUserList() {
displayName: avatar.sessionDisplayName,
userName: '',
sessionId: id || '',
audioLevel: getAudioLevel(id)
audioLevel: 0.0
};
// If the current user is an admin OR
// they're requesting their own username ("id" is blank)...
@ -300,10 +300,14 @@ function getAudioLevel(id) {
// TODO: tune for efficiency - expecially with large numbers of avatars
Script.setInterval(function () {
if (pal.visible) {
var param = {};
AvatarList.getAvatarIdentifiers().sort().forEach(function (id) {
var level = getAudioLevel(id);
pal.sendToQml({method: 'updateAudioLevel', params: [id, level]});
// qml didn't like an object with null/empty string for a key, so...
var userId = id || 0;
param[userId]= level;
});
pal.sendToQml({method: 'updateAudioLevel', params: param});
}
}, AUDIO_LEVEL_UPDATE_INTERVAL_MS);
//