diff --git a/bigbluebutton-client/.actionScriptProperties b/bigbluebutton-client/.actionScriptProperties index 6eb98fd82aa93371bc995095c5a74cfe4736e867..7b32595eccac789a0f12706be9fc54fcc60ecb40 100644 --- a/bigbluebutton-client/.actionScriptProperties +++ b/bigbluebutton-client/.actionScriptProperties @@ -19,6 +19,7 @@ </excludedEntries> </libraryPathEntry> <libraryPathEntry kind="1" linkType="1" path="libs"/> +<libraryPathEntry kind="3" linkType="1" path="/flexlib/bin/flexlib.swc" useDefaultLinkType="false"/> </libraryPath> <sourceAttachmentPath> <sourceAttachmentPathEntry kind="3" linkType="1" path="${PROJECT_FRAMEWORKS}/libs/datavisualization.swc" sourcepath="${PROJECT_FRAMEWORKS}/source" useDefaultLinkType="false"/> diff --git a/bigbluebutton-client/libs/flexlib.swc b/bigbluebutton-client/libs/flexlib.swc index 597c87b142af05de4e2919da0fdcf25b03e2f51f..7f8258dfc80a58abff4d42e26f1e94c9e90ec3bb 100644 Binary files a/bigbluebutton-client/libs/flexlib.swc and b/bigbluebutton-client/libs/flexlib.swc differ diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/components/ChatView.mxml b/bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/components/ChatView.mxml index eb7a6f265951ce7d74362e685543d9a5bae24b32..39c72f1fe02b4b9b8bb27384a52cd0d7342a6c5a 100644 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/components/ChatView.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/components/ChatView.mxml @@ -3,7 +3,7 @@ xmlns:mate="http://mate.asfusion.com/" creationComplete="onCreationComplete()" xmlns:flexlib="http://code.google.com/p/flexlib/" - width="100%" height="100%"> + width="100%" height="100%" xmlns:containers="flexlib.containers.*"> <mate:Listener type="{PrivateChatMessageEvent.PRIVATE_CHAT_MESSAGE_EVENT}" method="handlePrivateChatMessageEvent"/> <mate:Listener type="{PublicChatMessageEvent.PUBLIC_CHAT_MESSAGE_EVENT}" method="handlePublicChatMessageEvent"/> @@ -340,7 +340,7 @@ ]]> </mx:Script> - <flexlib:SuperTabNavigator id="chatTabs" width="100%" height="100%" change="onTabNavChange()" tabClose="onTabClose(event)"/> + <containers:SuperTabNavigator id="chatTabs" width="100%" height="100%" change="onTabNavChange()" tabClose="onTabClose(event)"/> <mx:ApplicationControlBar id="chatCtrlBar" width="100%" height="10%"> <mx:TextInput id="txtMsg" width="100%" enter="sendMessages()"/> diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/components/ChatWindow.mxml b/bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/components/ChatWindow.mxml index 905d84fd1a2998e9a7a882079a1f4b9bdf646954..42f82e8f8c93aa341a254f52578f0c83640547a8 100644 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/components/ChatWindow.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/components/ChatWindow.mxml @@ -38,30 +38,6 @@ private var _yPosition:int; private var localDispatcher:IEventDispatcher; - //The following code block is to deal with a bug in FLexLib with MDI windows not responding well to being maximized - private var savedWindowWidth:Number; - private var savedWindowHeight:Number; - private var savedX:Number; - private var savedY:Number; - private var isMaximized:Boolean = false; - override public function maximize():void{ - if (!isMaximized){ - savedWindowHeight = this.height; - savedWindowWidth = this.width; - savedX = this.x; - savedY = this.y; - dispatchEvent(new MDIWindowEvent(MDIWindowEvent.MAXIMIZE, this)); - isMaximized = true; - } else{ - this.width = savedWindowWidth; - this.height = savedWindowHeight; - this.x = savedX; - this.y = savedY; - isMaximized = false; - //dispatchEvent(new MDIWindowEvent(MDIWindowEvent.RESTORE, this)); - } - } - private var dispState:String; [Bindable] private var _defaultWidth:int = 490; diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/deskShare/view/components/DesktopViewWindow.mxml b/bigbluebutton-client/src/org/bigbluebutton/modules/deskShare/view/components/DesktopViewWindow.mxml index b55257a84f63b341b522b5109249efa1cbb08515..e97b66ab4ec3190feef06076167ac9213c430f5c 100644 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/deskShare/view/components/DesktopViewWindow.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/deskShare/view/components/DesktopViewWindow.mxml @@ -30,7 +30,8 @@ implements="org.bigbluebutton.common.IBbbModuleWindow" xmlns:mate="http://mate.asfusion.com/" title="Desktop Sharing" - showCloseButton="false"> + showCloseButton="false" + resize="fitToWindow()"> <mate:Listener type="{ViewStreamEvent.STOP}" method="onStopViewStreamEvent" /> @@ -56,43 +57,9 @@ private var _xPosition:int = 675; private var _yPosition:int = 310; - // The following code block is to deal with a bug in FLexLib - // with MDI windows not responding well to being maximized - private var savedWindowWidth:Number; - private var savedWindowHeight:Number; - private var savedX:Number; - private var savedY:Number; - private var isMaximized:Boolean = false; - private static const VIDEO_WIDTH_PADDING:int = 7; private static const VIDEO_HEIGHT_PADDING:int = 65; - // Timer to make sure the video fits to window whenever the window is resized. - private var fitToWindowTimer:Timer; - - override public function maximize():void{ - if (!isMaximized){ - savedWindowHeight = this.height; - savedWindowWidth = this.width; - savedX = this.x; - savedY = this.y; - dispatchEvent(new MDIWindowEvent(MDIWindowEvent.MAXIMIZE, this)); - isMaximized = true; - windowControls.maximizeRestoreBtn.toolTip = "Restore to previous size"; - } else{ - this.width = savedWindowWidth; - this.height = savedWindowHeight; - this.x = savedX; - this.y = savedY; - isMaximized = false; - windowControls.maximizeRestoreBtn.toolTip = "Maximize this window"; - } - } - - private function timerHandler(event:TimerEvent):void { - fitToWindow(); - } - private function onCreationComplete():void{ windowControls.maximizeRestoreBtn.toolTip = "Maximize this window"; windowControls.minimizeBtn.toolTip = "Minimize this window"; @@ -105,16 +72,6 @@ this.width = 600; addEventListener(MDIWindowEvent.RESIZE_END, onResizeEndEvent); fitToWindow(); - - /* - * Need to have a timer to trigger resizing video to window after the - * window has been maximized/restored. The MAXIMIZE/RESTORE events are - * generated when the button is clicked so the width and height are not - * the ones we want. - */ - fitToWindowTimer = new Timer(100); - fitToWindowTimer.addEventListener(TimerEvent.TIMER, timerHandler); - fitToWindowTimer.start(); } private function onResizeEndEvent(event:MDIWindowEvent):void { diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/join/views/JoinWindow.mxml b/bigbluebutton-client/src/org/bigbluebutton/modules/join/views/JoinWindow.mxml index fea364f5aa83346435ae7309110779f0d96c5fbc..28ac2b62efb9a7ff9a478f611246b7fad691fe2a 100644 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/join/views/JoinWindow.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/join/views/JoinWindow.mxml @@ -6,31 +6,7 @@ <mx:Script> <![CDATA[ - - //The following code block is to deal with a bug in FLexLib with MDI windows not responding well to being maximized - private var savedWindowWidth:Number; - private var savedWindowHeight:Number; - private var savedX:Number; - private var savedY:Number; - private var isMaximized:Boolean = false; - override public function maximize():void{ - if (!isMaximized){ - savedWindowHeight = this.height; - savedWindowWidth = this.width; - savedX = this.x; - savedY = this.y; - dispatchEvent(new MDIWindowEvent(MDIWindowEvent.MAXIMIZE, this)); - isMaximized = true; - } else{ - this.width = savedWindowWidth; - this.height = savedWindowHeight; - this.x = savedX; - this.y = savedY; - isMaximized = false; - //dispatchEvent(new MDIWindowEvent(MDIWindowEvent.RESTORE, this)); - } - } - + private var _xPosition:int; private var _yPosition:int; diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/notes/views/Notes.mxml b/bigbluebutton-client/src/org/bigbluebutton/modules/notes/views/Notes.mxml index 947a1fd09a49bfc24a38963e1e77727edcb713f9..ed1960efd7494b560ba90b0a30c5a4aeec2a6d56 100644 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/notes/views/Notes.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/notes/views/Notes.mxml @@ -21,30 +21,6 @@ Notes.mxml is the main view of the SharedNotes application private var timer:Timer; private var dirty:Boolean = true; - //The following code block is to deal with a bug in FLexLib with MDI windows not responding well to being maximized - private var savedWindowWidth:Number; - private var savedWindowHeight:Number; - private var savedX:Number; - private var savedY:Number; - private var isMaximized:Boolean = false; - override public function maximize():void{ - if (!isMaximized){ - savedWindowHeight = this.height; - savedWindowWidth = this.width; - savedX = this.x; - savedY = this.y; - dispatchEvent(new MDIWindowEvent(MDIWindowEvent.MAXIMIZE, this)); - isMaximized = true; - } else{ - this.width = savedWindowWidth; - this.height = savedWindowHeight; - this.x = savedX; - this.y = savedY; - isMaximized = false; - //dispatchEvent(new MDIWindowEvent(MDIWindowEvent.RESTORE, this)); - } - } - private function startTimer():void{ timer = new Timer(1000); timer.addEventListener(TimerEvent.TIMER, timerHandler); diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/present/views/PresentationWindow.mxml b/bigbluebutton-client/src/org/bigbluebutton/modules/present/views/PresentationWindow.mxml index bf4c5732882860fac7e4e61c2b619313514cfe56..4ea401b7501fcadc17b9eee421cd3d1d50adffc0 100644 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/present/views/PresentationWindow.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/present/views/PresentationWindow.mxml @@ -31,10 +31,11 @@ implements="org.bigbluebutton.common.IBbbModuleWindow" mouseMove="hideThumbnails()" creationComplete="onCreationComplete()" + resize="maximizeHandler()" rollOut="hideThumbs()" xmlns:mate="http://mate.asfusion.com/" width="{DEFAULT_WINDOW_WIDTH}" height="{DEFAULT_WINDOW_HEIGHT}" x="{DEFAULT_X_POSITION}" y="{DEFAULT_Y_POSITION}" - title="{currentPresentation}" keyUp="onKeyUp(event)" xmlns:code="http://code.google.com/p/flexlib/"> + title="{currentPresentation}" keyUp="onKeyUp(event)" xmlns:code="http://code.google.com/p/flexlib/" xmlns:containers="flexlib.containers.*"> <mate:Dispatcher id="globalDispatcher" /> <mate:Listener type="{MadePresenterEvent.SWITCH_TO_PRESENTER_MODE}" method="becomePresenter" /> @@ -49,6 +50,7 @@ <mx:Script> <![CDATA[ + import mx.events.ResizeEvent; import flexlib.containers.DockableToolBar; import org.bigbluebutton.modules.present.events.AddPresentationToolbarEvent; import mx.controls.Alert; @@ -116,48 +118,9 @@ [Bindable] private var currentPresentation:String = ResourceUtil.getInstance().getString('bbb.presentation.title'); private var presenterName:String = ""; + - // The following code block is to deal with a bug in FLexLib - // with MDI windows not responding well to being maximized - private var savedWindowWidth:Number; - private var savedWindowHeight:Number; - private var savedX:Number; - private var savedY:Number; - private var isMaximized:Boolean = false; - - private var fitToWindowTimer:Timer; - - override public function maximize():void{ - if (!isMaximized){ - savedWindowHeight = this.height; - savedWindowWidth = this.width; - savedX = this.x; - savedY = this.y; - dispatchEvent(new MDIWindowEvent(MDIWindowEvent.MAXIMIZE, this)); - isMaximized = true; - windowControls.maximizeRestoreBtn.toolTip = ResourceUtil.getInstance().getString('bbb.presentation.maximizeRestoreBtn.toolTip2'); - - } else{ - this.width = savedWindowWidth; - this.height = savedWindowHeight; - this.x = savedX; - this.y = savedY; - isMaximized = false; - windowControls.maximizeRestoreBtn.toolTip = ResourceUtil.getInstance().getString('bbb.presentation.maximizeRestoreBtn.toolTip'); - } - - /* - * Need to have a timer to trigger resizing slide to window after the - * window has been maximized/restored. The MAXIMIZE/RESTORE events are - * generated when the button is clicked so the width and height are not - * the ones we want. - */ - fitToWindowTimer = new Timer(1000); - fitToWindowTimer.addEventListener(TimerEvent.TIMER, maximizeTimerHandler); - fitToWindowTimer.start(); - } - - private function maximizeTimerHandler(event:TimerEvent):void { + private function maximizeHandler():void { // When the window is maximized, we want to resize the slide maintaining the aspect ratio. fitSlideToWindowMaintainingAspectRatio(); @@ -170,8 +133,6 @@ } this.y = 0; - - fitToWindowTimer.stop(); } private function onCreationComplete():void{ @@ -555,7 +516,7 @@ useHandCursor="true" snapInterval="5" allowTrackClick="true" liveDragging="true" dataTipFormatFunction="removeDecimalFromDataTip" change="onSliderZoom()" width="100"/> <mx:Spacer width="50%" id="spacer3"/> - <code:Docker id="toolbarDocker" height="100%" width="250" /> + <containers:Docker id="toolbarDocker" height="100%" width="250" /> <mx:Button id="btnResetZoom" icon="{magnifierIcon}" visible="false" width="20" height="20" toolTip="Reset Zoom" click="onResetZoom()"/> <mx:Spacer width="5" id="spacer4"/> diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/PublishWindow.mxml b/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/PublishWindow.mxml index 8fe49cc013cc1dc0b088de4a2d69da2cc146038f..b0f283ed8fc2ae99b5343f8adf75f6207635b540 100644 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/PublishWindow.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/PublishWindow.mxml @@ -44,30 +44,6 @@ private var _xPosition:int = 200; private var _yPosition:int = 200; - //The following code block is to deal with a bug in FLexLib with MDI windows not responding well to being maximized - private var savedWindowWidth:Number; - private var savedWindowHeight:Number; - private var savedX:Number; - private var savedY:Number; - private var isMaximized:Boolean = false; - override public function maximize():void{ - if (!isMaximized){ - savedWindowHeight = this.height; - savedWindowWidth = this.width; - savedX = this.x; - savedY = this.y; - dispatchEvent(new MDIWindowEvent(MDIWindowEvent.MAXIMIZE, this)); - isMaximized = true; - } else{ - this.width = savedWindowWidth; - this.height = savedWindowHeight; - this.x = savedX; - this.y = savedY; - isMaximized = false; - //dispatchEvent(new MDIWindowEvent(MDIWindowEvent.RESTORE, this)); - } - } - private var images:Images = new Images(); [Bindable] public var camIcon:Class = images.control_play; [Bindable] public var bbbLogo:Class = images.bbb_logo; diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/TiledVideoWindow.mxml b/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/TiledVideoWindow.mxml index e0d2326349ad1ab9cf77b820387065c76523c58e..b0e141f9c184a9747115fa2713b71295dfc672ae 100644 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/TiledVideoWindow.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/TiledVideoWindow.mxml @@ -43,30 +43,6 @@ private var numStreamsPlaying:Number = 0; //private var ns:NetStream; - //The following code block is to deal with a bug in FLexLib with MDI windows not responding well to being maximized - private var savedWindowWidth:Number; - private var savedWindowHeight:Number; - private var savedX:Number; - private var savedY:Number; - private var isMaximized:Boolean = false; - override public function maximize():void{ - if (!isMaximized){ - savedWindowHeight = this.height; - savedWindowWidth = this.width; - savedX = this.x; - savedY = this.y; - dispatchEvent(new MDIWindowEvent(MDIWindowEvent.MAXIMIZE, this)); - isMaximized = true; - } else{ - this.width = savedWindowWidth; - this.height = savedWindowHeight; - this.x = savedX; - this.y = savedY; - isMaximized = false; - //dispatchEvent(new MDIWindowEvent(MDIWindowEvent.RESTORE, this)); - } - } - private function onCreationComplete():void{ setupTiles(); } diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/VideoWindow.mxml b/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/VideoWindow.mxml index 4a3fcc87594a5237e2e45141937914b2ec9d992f..4185958217030d1297531e8334532d51917b0f8e 100644 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/VideoWindow.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/VideoWindow.mxml @@ -42,30 +42,6 @@ private var _xPosition:int; private var _yPosition:int; - //The following code block is to deal with a bug in FLexLib with MDI windows not responding well to being maximized - private var savedWindowWidth:Number; - private var savedWindowHeight:Number; - private var savedX:Number; - private var savedY:Number; - private var isMaximized:Boolean = false; - override public function maximize():void{ - if (!isMaximized){ - savedWindowHeight = this.height; - savedWindowWidth = this.width; - savedX = this.x; - savedY = this.y; - dispatchEvent(new MDIWindowEvent(MDIWindowEvent.MAXIMIZE, this)); - isMaximized = true; - } else{ - this.width = savedWindowWidth; - this.height = savedWindowHeight; - this.x = savedX; - this.y = savedY; - isMaximized = false; - //dispatchEvent(new MDIWindowEvent(MDIWindowEvent.RESTORE, this)); - } - } - private function init():void{ _xPosition = 250; _yPosition = 250; diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/viewers/view/components/ViewersWindow.mxml b/bigbluebutton-client/src/org/bigbluebutton/modules/viewers/view/components/ViewersWindow.mxml index e03bcd05673f27b0037794a053e49fbf5c42ba09..a095003b1d6d02676bbf0af46f6312514462a1d9 100644 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/viewers/view/components/ViewersWindow.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/viewers/view/components/ViewersWindow.mxml @@ -65,30 +65,6 @@ private var _xPosition:int; private var _yPosition:int; - //The following code block is to deal with a bug in FLexLib with MDI windows not responding well to being maximized - private var savedWindowWidth:Number; - private var savedWindowHeight:Number; - private var savedX:Number; - private var savedY:Number; - private var isMaximized:Boolean = false; - override public function maximize():void{ - if (!isMaximized){ - savedWindowHeight = this.height; - savedWindowWidth = this.width; - savedX = this.x; - savedY = this.y; - dispatchEvent(new MDIWindowEvent(MDIWindowEvent.MAXIMIZE, this)); - isMaximized = true; - } else{ - this.width = savedWindowWidth; - this.height = savedWindowHeight; - this.x = savedX; - this.y = savedY; - isMaximized = false; - //dispatchEvent(new MDIWindowEvent(MDIWindowEvent.RESTORE, this)); - } - } - private function onCreationComplete():void { BindingUtils.bindSetter(updateNumberOfListeners, participants, "length"); }