Fix not found onMetaData method in UserVideo, and view webcam wehn promoting to moderator if webcamsOnlyForModerator is on.

This commit is contained in:
Ghazi Triki 2018-04-26 19:50:18 +01:00
parent 9c82f1486b
commit f6bb4d6471
3 changed files with 10 additions and 6 deletions

View File

@ -99,7 +99,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
<EventHandlers type="{UserStatusChangedEvent.USER_STATUS_CHANGED}">
<ObjectBuilder generator="{VideoEventMapDelegate}" cache="global" constructorArguments="{scope.dispatcher}"/>
<MethodInvoker generator="{VideoEventMapDelegate}" method="webcamsOnlyForModeratorChanged"/>
<MethodInvoker generator="{VideoEventMapDelegate}" method="userRoleChanged"/>
</EventHandlers>
<EventHandlers type="{StreamStoppedEvent.STREAM_STOPPED}">

View File

@ -114,14 +114,18 @@ package org.bigbluebutton.modules.videoconf.maps
_graphics.addStaticComponent(component);
}
public function webcamsOnlyForModeratorChanged():void {
if (!UsersUtil.amIModerator()) {
public function userRoleChanged():void {
webcamsOnlyForModeratorChanged(UsersUtil.amIModerator())
}
public function webcamsOnlyForModeratorChanged(promotedToModerator : Boolean = false):void {
if (!UsersUtil.amIModerator() || promotedToModerator) {
var webcamsOnlyForModerator:Boolean = LiveMeeting.inst().meeting.webcamsOnlyForModerator;
for (var i:int = 0; i < UsersUtil.getUsers().length; i++) {
var user : User2x = User2x(UsersUtil.getUsers()[i]);
if (user.role != Role.MODERATOR) {
var streamNames:Array = LiveMeeting.inst().webcams.getStreamIdsForUser(user.intId);
if (webcamsOnlyForModerator && !UsersUtil.isMe(user.intId)) {
if (webcamsOnlyForModerator && !UsersUtil.isMe(user.intId) && !promotedToModerator) {
for (var j:int = 0; j < streamNames.length; j++) {
_dispatcher.dispatchEvent(new StreamStoppedEvent(user.intId, streamNames[j]));
}

View File

@ -231,8 +231,8 @@ package org.bigbluebutton.modules.videoconf.views
LOGGER.debug(e.text);
}
private function onMetaData(info:Object):void {
LOGGER.debug("width={0} height={1}", [info.width, info.height]);
public function onMetaData(info:Object):void {
LOGGER.debug("onMetaData :: " + JSON.stringify(info));
}
override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void {