|
@@ -258,20 +258,12 @@ JitsiConference.prototype.addTrack = function (track) {
|
258
|
258
|
if (track.startMuted) {
|
259
|
259
|
track.mute();
|
260
|
260
|
}
|
261
|
|
- var muteHandler = this._fireMuteChangeEvent.bind(this, track);
|
262
|
|
- var stopHandler = this.removeTrack.bind(this, track);
|
263
|
|
- var audioLevelHandler = this._fireAudioLevelChangeEvent.bind(this);
|
264
|
|
- track.addEventListener(JitsiTrackEvents.TRACK_MUTE_CHANGED, muteHandler);
|
265
|
|
- track.addEventListener(JitsiTrackEvents.TRACK_STOPPED, stopHandler);
|
266
|
|
- track.addEventListener(JitsiTrackEvents.TRACK_AUDIO_LEVEL_CHANGED, audioLevelHandler);
|
267
|
|
- this.addEventListener(JitsiConferenceEvents.TRACK_REMOVED, function (someTrack) {
|
268
|
|
- if (someTrack !== track) {
|
269
|
|
- return;
|
270
|
|
- }
|
271
|
|
- track.removeEventListener(JitsiTrackEvents.TRACK_MUTE_CHANGED, muteHandler);
|
272
|
|
- track.removeEventListener(JitsiTrackEvents.TRACK_STOPPED, stopHandler);
|
273
|
|
- track.removeEventListener(JitsiTrackEvents.TRACK_AUDIO_LEVEL_CHANGED, audioLevelHandler);
|
274
|
|
- });
|
|
261
|
+ track.muteHandler = this._fireMuteChangeEvent.bind(this, track);
|
|
262
|
+ track.stopHandler = this.removeTrack.bind(this, track);
|
|
263
|
+ track.audioLevelHandler = this._fireAudioLevelChangeEvent.bind(this);
|
|
264
|
+ track.addEventListener(JitsiTrackEvents.TRACK_MUTE_CHANGED, track.muteHandler);
|
|
265
|
+ track.addEventListener(JitsiTrackEvents.TRACK_STOPPED, track.stopHandler);
|
|
266
|
+ track.addEventListener(JitsiTrackEvents.TRACK_AUDIO_LEVEL_CHANGED, track.audioLevelHandler);
|
275
|
267
|
this.eventEmitter.emit(JitsiConferenceEvents.TRACK_ADDED, track);
|
276
|
268
|
}.bind(this));
|
277
|
269
|
};
|
|
@@ -306,6 +298,9 @@ JitsiConference.prototype.removeTrack = function (track) {
|
306
|
298
|
}
|
307
|
299
|
this.room.removeStream(track.getOriginalStream(), function(){
|
308
|
300
|
this.rtc.removeLocalStream(track);
|
|
301
|
+ track.removeEventListener(JitsiTrackEvents.TRACK_MUTE_CHANGED, track.muteHandler);
|
|
302
|
+ track.removeEventListener(JitsiTrackEvents.TRACK_STOPPED, track.stopHandler);
|
|
303
|
+ track.removeEventListener(JitsiTrackEvents.TRACK_AUDIO_LEVEL_CHANGED, track.audioLevelHandler);
|
309
|
304
|
this.eventEmitter.emit(JitsiConferenceEvents.TRACK_REMOVED, track);
|
310
|
305
|
}.bind(this));
|
311
|
306
|
};
|
|
@@ -1303,7 +1298,6 @@ var LibJitsiMeet = {
|
1303
|
1298
|
}
|
1304
|
1299
|
};
|
1305
|
1300
|
|
1306
|
|
-require("es6-promise").polyfill()
|
1307
|
1301
|
//Setups the promise object.
|
1308
|
1302
|
window.Promise = window.Promise || require("es6-promise").Promise;
|
1309
|
1303
|
|
|
@@ -1959,6 +1953,10 @@ JitsiRemoteTrack.prototype.constructor = JitsiRemoteTrack;
|
1959
|
1953
|
* @param value the muted status.
|
1960
|
1954
|
*/
|
1961
|
1955
|
JitsiRemoteTrack.prototype.setMute = function (value) {
|
|
1956
|
+
|
|
1957
|
+ if(this.muted == value)
|
|
1958
|
+ return;
|
|
1959
|
+
|
1962
|
1960
|
this.stream.muted = value;
|
1963
|
1961
|
this.muted = value;
|
1964
|
1962
|
this.eventEmitter.emit(JitsiTrackEvents.TRACK_MUTE_CHANGED);
|
|
@@ -6904,6 +6902,7 @@ ChatRoom.prototype.sendAudioInfoPresence = function(mute, callback) {
|
6904
|
6902
|
}
|
6905
|
6903
|
if(callback)
|
6906
|
6904
|
callback();
|
|
6905
|
+ this.removeFromPresence("audiomuted");
|
6907
|
6906
|
};
|
6908
|
6907
|
|
6909
|
6908
|
ChatRoom.prototype.addVideoInfoToPresence = function (mute) {
|
|
@@ -6920,6 +6919,7 @@ ChatRoom.prototype.sendVideoInfoPresence = function (mute) {
|
6920
|
6919
|
if(!this.connection)
|
6921
|
6920
|
return;
|
6922
|
6921
|
this.sendPresence();
|
|
6922
|
+ this.removeFromPresence("videomuted");
|
6923
|
6923
|
};
|
6924
|
6924
|
|
6925
|
6925
|
ChatRoom.prototype.addListener = function(type, listener) {
|