Fixes for FF: failing avatar tests and problem when last participant leaves the owner video does not switch to local video.

This commit is contained in:
damencho 2015-09-23 13:50:28 -05:00
parent 13d6245684
commit fd954580b7
1 changed files with 14 additions and 0 deletions

View File

@ -4,6 +4,7 @@ var SmallVideo = require("./SmallVideo");
var AudioLevels = require("../audio_levels/AudioLevels"); var AudioLevels = require("../audio_levels/AudioLevels");
var RTCBrowserType = require("../../RTC/RTCBrowserType"); var RTCBrowserType = require("../../RTC/RTCBrowserType");
var UIUtils = require("../util/UIUtil"); var UIUtils = require("../util/UIUtil");
var XMPPEvents = require("../../../service/xmpp/XMPPEvents");
function RemoteVideo(peerJid, VideoLayout) { function RemoteVideo(peerJid, VideoLayout) {
this.peerJid = peerJid; this.peerJid = peerJid;
@ -232,6 +233,19 @@ RemoteVideo.prototype.addRemoteStreamElement = function (sid, stream, thessrc) {
}; };
/**
* FF is missing onended event for remote streams. The problem we are fixing
* here is when the last participant leaves the room the video element is
* not updated. So the avatar or last video frame will stay, the fix updates
* the video elem and switches to local video the same as behavior in other
* browsers.
*/
if (RTCBrowserType.isFirefox()) {
APP.xmpp.addListener(XMPPEvents.MUC_MEMBER_LEFT, function (jid) {
self.removeRemoteStreamElement(stream, isVideo, newElementId);
});
}
// Add click handler. // Add click handler.
var onClickHandler = function (event) { var onClickHandler = function (event) {