You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by se...@apache.org on 2013/03/16 22:48:51 UTC

svn commit: r1457320 - /openmeetings/trunk/singlewebapp/WebContent/swf10/video/editRecordStreamSWF10.lzx

Author: sebawagner
Date: Sat Mar 16 21:48:50 2013
New Revision: 1457320

URL: http://svn.apache.org/r1457320
Log:
OPENMEETINGS-568 attachCamera is only executed if the device settings really open up and not auto-close directly

Modified:
    openmeetings/trunk/singlewebapp/WebContent/swf10/video/editRecordStreamSWF10.lzx

Modified: openmeetings/trunk/singlewebapp/WebContent/swf10/video/editRecordStreamSWF10.lzx
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/WebContent/swf10/video/editRecordStreamSWF10.lzx?rev=1457320&r1=1457319&r2=1457320&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/WebContent/swf10/video/editRecordStreamSWF10.lzx (original)
+++ openmeetings/trunk/singlewebapp/WebContent/swf10/video/editRecordStreamSWF10.lzx Sat Mar 16 21:48:50 2013
@@ -119,34 +119,22 @@
 
 			canvas.videoComp_lc.client = {clb_getBroadCastId: this.clb_getBroadCastId, clb_setUserAVSettings: this.clb_setUserAVSettings};
 
-	        var t:SharedObject = SharedObject.getLocal('userdata');
-	        var g = t.data;
-	        var save = g["savecamdata"];
-	        if ($debug) Debug.write("save: ",save,g["cam"],g["mic"],this.isSyncUpdate);
-	        //In case its an Audio-Only Room this box should not close automatically
-            if ($debug) Debug.write("canvas.currentRoomObject: ", canvas.currentRoomObject);
-
-	        if (false) { // canvas.currentRoomObject.isAudioOnly
-	        	this._chooseDeviceAnimation.setAttribute('started', true);
-	        } else {
-	        	//In case the user presses the Sync Button this box should
-                //not close automatically and do the user-prefered values
-                if(save && !this.isSyncUpdate && this.checkLocalDataComplete()) {
-                    this.chosenCam = g["cam"];
-                    this.chosenMic = g["mic"];
-                    this.cam_default_width = g["width"];
-                    this.cam_default_height = g["height"];
-                    this.chosenSetting = g["avstored"];
-                    this.remoteMessage = new Array();
-                    this.remoteMessage[0] = 'avsettings';
-                    this.remoteMessage[2] = this.chosenSetting; 
-                    this.getBroadCastId.doCall();
-                } else {
-                    if (this.doDefaultAnimation && !canvas.isInterview) {
-                        this._chooseDeviceAnimation.setAttribute('started', true);
-                    }
+	        var sharedData = this.checkDeviceSettingsRememberStatus();
+            if(sharedData != null) {
+                this.chosenCam = sharedData["cam"];
+                this.chosenMic = sharedData["mic"];
+                this.cam_default_width = sharedData["width"];
+                this.cam_default_height = sharedData["height"];
+                this.chosenSetting = sharedData["avstored"];
+                this.remoteMessage = new Array();
+                this.remoteMessage[0] = 'avsettings';
+                this.remoteMessage[2] = this.chosenSetting; 
+                this.getBroadCastId.doCall();
+            } else {
+                if (this.doDefaultAnimation && !canvas.isInterview) {
+                    this._chooseDeviceAnimation.setAttribute('started', true);
                 }
-	        }
+            }
 	        
 	        if (canvas.isInterview) {
 	        	if ($debug) Debug.write("Is interview ",interviewPodId);
@@ -156,6 +144,31 @@
         ]]>
 	</handler>
 	
+	<!-- 
+	   If the remember check-box was true, this flag in the Flash Cookie (aka SharedObject)
+	   is true and the box will close without asking for device settings.
+	 -->
+	<method name="checkDeviceSettingsRememberStatus">
+	    <![CDATA[
+		var t:SharedObject = SharedObject.getLocal('userdata');
+		var g = t.data;
+		var save = g["savecamdata"];
+		if ($debug) Debug.write("save: ",save,g["cam"],g["mic"],this.isSyncUpdate);
+		//In case its an Audio-Only Room this box should not close automatically
+		if ($debug) Debug.write("canvas.currentRoomObject: ", canvas.currentRoomObject);
+		
+		//In case the user presses the Sync Button this box should
+        //not close automatically and do the user-prefered values
+		if(save && !this.isSyncUpdate && this.checkLocalDataComplete()) {
+		    return g;
+		}
+		return null;
+		]]>
+	</method>
+	
+	<!-- 
+	   Checks if all needed data in the shared object is available
+	 -->
 	<method name="checkLocalDataComplete">
         <![CDATA[
         	var t:SharedObject = SharedObject.getLocal('userdata');
@@ -512,22 +525,31 @@
 
 	<attribute name="cameraUnmuted" type="boolean" value="false"/>
 	<method name="attachCamera">
-		if (_video == undefined) return;
-		_video.content._publisher.setAttribute("visibility", "hidden");
-		_video.content._viewer.setAttribute("visibility", "visible");
-		var videoview = _video.content._viewer._chatvideoinner._videostream;
-		var _camera = getCam(availibleCams.getValue(), videoview);
-		if (_camera != null) {
-			videoview._stop();
-			videoview.attachCamera(_camera);
-			if (_camera.muted) {
-				if (cameraUnmuted) {
-					_camera.removeEventListener(StatusEvent.STATUS, cameraStatusHandler);
-				} else {
-					_camera.addEventListener(StatusEvent.STATUS, cameraStatusHandler);
+	    <![CDATA[
+		    //if the user has configured this box to auto-close, do not try to
+		    //attach the cam to the preview (black) box
+		    var sharedData = this.checkDeviceSettingsRememberStatus();
+	        if(sharedData != null) {
+	            return;
+	        }
+		
+			if (_video == undefined) return;
+			_video.content._publisher.setAttribute("visibility", "hidden");
+			_video.content._viewer.setAttribute("visibility", "visible");
+			var videoview = _video.content._viewer._chatvideoinner._videostream;
+			var _camera = getCam(availibleCams.getValue(), videoview);
+			if (_camera != null) {
+				videoview._stop();
+				videoview.attachCamera(_camera);
+				if (_camera.muted) {
+					if (cameraUnmuted) {
+						_camera.removeEventListener(StatusEvent.STATUS, cameraStatusHandler);
+					} else {
+						_camera.addEventListener(StatusEvent.STATUS, cameraStatusHandler);
+					}
 				}
 			}
-		}
+		]]>
 	</method>
 	
 	<method name="cameraStatusHandler" args="stats">