Modified: 
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/screensharing/screenSharingDialog.lzx
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/screensharing/screenSharingDialog.lzx?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/screensharing/screenSharingDialog.lzx
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/screensharing/screenSharingDialog.lzx
 Wed Sep 14 05:24:18 2016
@@ -116,25 +116,25 @@
        
        <method name="doMinimize">
                <![CDATA[
-                  
-                  this.isStarted = false;
-                  
-                  this._subcontent._content._video._videostream.stop();
-                  
-                  
this._showScreenSharing._y.setAttribute("to",((parent.subviews.length-1)*100)+40);
-                  this._showScreenSharing._x.setAttribute("to",canvas.width - 
270 - 20);
-                  this._showScreenSharing._height.setAttribute("to",100);
-                  this._showScreenSharing._width.setAttribute("to",270);
-                  
-                  this._showScreenSharing.setAttribute('started', true);
-                  
-                  this._infoBox.setAttribute("visibility","hidden");
-                  this._zoombar.setAttribute("visibility","hidden");
-                  this._pause.setAttribute("visibility","hidden");
-                  this._close.setAttribute("visibility","hidden");
-                  
-                  this._subcontent.setAttribute("visibility","hidden");
-                  
+                       
+                       this.isStarted = false;
+                       
+                       this._subcontent._content._video._videostream.stop();
+                       
+                       
this._showScreenSharing._y.setAttribute("to",((parent.subviews.length-1)*100)+40);
+                       
this._showScreenSharing._x.setAttribute("to",canvas.width - 270 - 20);
+                       this._showScreenSharing._height.setAttribute("to",100);
+                       this._showScreenSharing._width.setAttribute("to",270);
+                       
+                       this._showScreenSharing.setAttribute('started', true);
+                       
+                       this._infoBox.setAttribute("visibility","hidden");
+                       this._zoombar.setAttribute("visibility","hidden");
+                       this._pause.setAttribute("visibility","hidden");
+                       this._close.setAttribute("visibility","hidden");
+                       
+                       this._subcontent.setAttribute("visibility","hidden");
+                       
                ]]>
        </method>
        
@@ -157,13 +157,13 @@
        
        <view name="_initText">
                <labelText name="_infoText" labelid="724" width="230" x="10" 
y="26" multiline="true" />
-       
+
                <simpleLabelButton name="_startButton" labelid="848" x="10" 
width="124" y="78">
                        <handler name="onclick">
                                parent.parent.startViewerSession();
                        </handler>
                </simpleLabelButton>
-                 
+
                <simpleLabelButton name="_closeButton" labelid="851" x="138" 
width="124" y="78">
                        <handler name="onclick">
                                parent.parent.close();
@@ -174,6 +174,13 @@
        <view name="_subcontent" width="${ parent.width }" visibility="hidden" 
y="20" height="${ parent.height - 48 }" clip="true">
                <view name="_content">
                        <videoObjectPlayScreenShare name="_video">
+                               <switch>
+                                       <when property="$as3">
+                                               <passthrough>
+                                                       import flash.events.*;
+                                               </passthrough>
+                                       </when>
+                               </switch>
                                <contextmenu>
                                        <contextmenuitem caption="$once{ 
canvas.getLabelName(1087) }" onselect="parent.parent.parent.pasteContent()" />
                                </contextmenu>
@@ -189,541 +196,35 @@
                                <attribute name="isLinux" value="false" 
type="boolean"/>
                                
                                <handler name="oninit">
-                                       var osInfo = lz.Browser.getOS();
-                                       
-                                       if ($debug) Debug.write("osInfo :: 
",osInfo);
-                                       
-                                       if (osInfo.indexOf("Mac") >= 0) {
-                                               this.isMac = true;
-                                       } else if (osInfo.indexOf("Win") >= 0) {
-                                               this.isWindows = true;
-                                       } else if (osInfo.indexOf("Linux") >= 
0) {
-                                               this.isLinux = true;
-                                       }
-                                       
-                                       if ($debug) Debug.write("this.isMac :: 
",this.isMac);
-                                       if ($debug) Debug.write("this.isWindows 
:: ",this.isWindows);
-                                       
+                                       
canvas.sprite.stage.addEventListener(KeyboardEvent.KEY_DOWN, keyhandler);
                                        this.idleDelegate = new LzDelegate( 
this, "sendMousePosition" );
                                </handler>
                                
+                               <handler name="ondestroy">
+                                       
canvas.sprite.stage.removeEventListener(KeyboardEvent.KEY_DOWN, keyhandler);
+                               </handler>
+                               
                                <method name="pasteContent">
                                        if ($debug) Debug.write("pasteContent 
:: ");
                                </method>
                                
-                               <handler name="onkeydown" reference="lz.Keys" 
args="k">
-                               <![CDATA[
-                                       if (this.isMouseOverActive) {
-                                               if ($debug) 
Debug.write("onkeydown ",k);
-                                               
-                                               var tObject = new Object();
-                                               tObject["action"] = "onkeydown";
-                                               tObject["k"] = k;
-                                               
-                                               var downkeys = 
lz.Keys.downKeysArray;
-                                               
-                                               if ($debug) 
Debug.write("downkeys ",downkeys,downkeys.length);
-                                               if (this.isWindows) {
-                                                       if (downkeys.length==2 
&& downkeys[0]==16) {
-                                                               if (k == 187) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "*";
-                                                               } else if (k == 
191) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "'";
-                                                               } else if (k == 
189) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "_";
-                                                               } else if (k == 
221) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "`";
-                                                               } else if (k == 
219) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "?";
-                                                               } else if (k == 
226) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = ">";
-                                                               } else if (k == 
220) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "°";
-                                                               } else if (k == 
186) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "Ü";
-                                                               } else if (k == 
222) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "Ä";
-                                                               } else if (k == 
192) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "Ö";
-                                                               }
-                                                       } else if 
(downkeys.length==2 && downkeys[0]==18) {
-                                                               if (k == 81) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "@";
-                                                               } else if (k == 
226) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "|";
-                                                               }
-                                                       } else {
-                                                               if (k == 187) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "+";
-                                                               } else if (k == 
191) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "#";
-                                                               } else if (k == 
189) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "-";
-                                                               } else if (k == 
221) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "`";
-                                                               } else if (k == 
219) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ß";
-                                                               } else if (k == 
226) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "<";
-                                                               } else if (k == 
220) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "^";
-                                                               } else if (k == 
186) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ü";
-                                                               } else if (k == 
222) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ä";
-                                                               } else if (k == 
192) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ö";
-                                                               }
-                                                       }
-                                               } else if (this.isMac) {
-                                                       if (downkeys.length==2 
&& downkeys[0]==16) {
-                                                               if (k == 221) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "*";
-                                                               } else if (k == 
220) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "'";
-                                                               } else if (k == 
191) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "_";
-                                                               } else if (k == 
225) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "`";
-                                                               } else if (k == 
189) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "?";
-                                                               } else if (k == 
192) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = ">";
-                                                               } else if (k == 
176) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "°";
-                                                               } else if (k == 
219) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "Ü";
-                                                               } else if (k == 
222) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "Ä";
-                                                               } else if (k == 
186) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "Ö";
-                                                               }
-                                                       } else if 
(downkeys.length==2 && downkeys[0]==18) {
-                                                               if (k == 50) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "@";
-                                                               } else if (k == 
55) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "|";
-                                                               }
-                                                       } else {
-                                                               if (k == 221) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "+";
-                                                               } else if (k == 
220) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "#";
-                                                               } else if (k == 
191) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "-";
-                                                               } else if (k == 
225) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "`";
-                                                               } else if (k == 
189) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ß";
-                                                               } else if (k == 
192) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "<";
-                                                               } else if (k == 
176) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "^";
-                                                               } else if (k == 
219) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ü";
-                                                               } else if (k == 
222) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ä";
-                                                               } else if (k == 
186) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ö";
-                                                               }
-                                                       }
-                                               } else if (this.isLinux) {
-                                                       if (downkeys.length==2 
&& downkeys[0]==16) {
-                                                               if (k == 187) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "*";
-                                                               } else if (k == 
51) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "'";
-                                                               } else if (k == 
189) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "_";
-                                                               } else if (k == 
222) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "`";
-                                                               } else if (k == 
223) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "?";
-                                                               } else if (k == 
188) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = ">";
-                                                               } else if (k == 
176) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "°";
-                                                               } else if (k == 
252) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "Ü";
-                                                               } else if (k == 
228) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "Ä";
-                                                               } else if (k == 
246) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "Ö";
-                                                               }
-                                                       } else if 
(downkeys.length==2 && downkeys[0]==18) {
-                                                               if (k == 50) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "@";
-                                                               } else if (k == 
55) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "|";
-                                                               }
-                                                       } else {
-                                                               if (k == 187) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "+";
-                                                               } else if (k == 
51) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "#";
-                                                               } else if (k == 
189) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "-";
-                                                               } else if (k == 
222) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "`";
-                                                               } else if (k == 
223) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ß";
-                                                               } else if (k == 
188) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "<";
-                                                               } else if (k == 
176) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "^";
-                                                               } else if (k == 
246) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ü";
-                                                               } else if (k == 
228) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ä";
-                                                               } else if (k == 
246) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ö";
-                                                               }
-                                                       }
-                                               }
-                                               if 
(lz.Keys.downKeysArray.length > 1) {
-                                                       for (var 
i=0;i<lz.Keys.downKeysArray.length;i++) {
-                                                               if 
(lz.Keys.downKeysArray[i] == 17 || lz.Keys.downKeysArray[i] == '17') {
-                                                                       
lz.Keys.downKeysArray = new Array();
-                                                                       break;
-                                                               }
-                                                       }
-                                               }
-                                               
-                                               if (k == 18 || k == 17) {
-                                                       return;
-                                               }
-                                               
-                                               if ($debug) 
Debug.write("tObject :: ",tObject,this.isWindows,this.isMac);
-                                               
this.sendRemoteCursorEvent.tObject = tObject;
-                                               if 
(canvas.isAllowedToRemoteControl || canvas.ismoderator) {
-                                                       
this.sendRemoteCursorEvent.doCall();
-                                               }
-                                       }
-                               ]]>
-                               </handler>
-                               
-                               <handler name="onkeyup" reference="lz.Keys" 
args="k">
+                               <method name="keyhandler" args="evt">
                                <![CDATA[
-                                       if (this.isMouseOverActive) {
-                                               if ($debug) 
Debug.write("onkeyup ",k);
-                                               
-                                               var tObject = new Object();
-                                               tObject["action"] = "onkeyup";
-                                               tObject["k"] = k;
-                                               
-                                               var downkeys = 
lz.Keys.downKeysArray;
-                                               if (this.isWindows) {
-                                                       if (downkeys.length==2 
&& downkeys[0]==16) {
-                                                               if (k == 187) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "*";
-                                                               } else if (k == 
191) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "'";
-                                                               } else if (k == 
189) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "_";
-                                                               } else if (k == 
221) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "`";
-                                                               } else if (k == 
219) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "?";
-                                                               } else if (k == 
226) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = ">";
-                                                               } else if (k == 
220) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "°";
-                                                               } else if (k == 
186) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ü";
-                                                               } else if (k == 
222) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ä";
-                                                               } else if (k == 
192) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ö";
-                                                               }
-                                                       } else if 
(downkeys.length==2 && downkeys[0]==18) {
-                                                               if (k == 81) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "@";
-                                                               } else if (k == 
226) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "|";
-                                                               }
-                                                       } else {
-                                                               if (k == 187) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "+";
-                                                               } else if (k == 
191) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "#";
-                                                               } else if (k == 
189) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "-";
-                                                               } else if (k == 
221) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "`";
-                                                               } else if (k == 
219) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ß";
-                                                               } else if (k == 
226) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "<";
-                                                               } else if (k == 
220) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "^";
-                                                               } else if (k == 
186) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "Ü";
-                                                               } else if (k == 
222) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "Ä";
-                                                               } else if (k == 
192) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "Ö";
-                                                               }
-                                                       }
-                                               } else if (this.isMac) {
-                                                       if (downkeys.length==2 
&& downkeys[0]==16) {
-                                                               if (k == 221) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "*";
-                                                               } else if (k == 
220) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "'";
-                                                               } else if (k == 
191) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "_";
-                                                               } else if (k == 
225) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "`";
-                                                               } else if (k == 
189) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "?";
-                                                               } else if (k == 
192) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = ">";
-                                                               } else if (k == 
176) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "°";
-                                                               } else if (k == 
219) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "Ü";
-                                                               } else if (k == 
222) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "Ä";
-                                                               } else if (k == 
186) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "Ö";
-                                                               }
-                                                       } else if 
(downkeys.length==2 && downkeys[0]==18) {
-                                                               if (k == 50) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "@";
-                                                               } else if (k == 
55) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "|";
-                                                               }
-                                                       } else {
-                                                               if (k == 221) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "+";
-                                                               } else if (k == 
220) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "#";
-                                                               } else if (k == 
191) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "-";
-                                                               } else if (k == 
225) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "`";
-                                                               } else if (k == 
189) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ß";
-                                                               } else if (k == 
192) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "<";
-                                                               } else if (k == 
176) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "^";
-                                                               } else if (k == 
219) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ü";
-                                                               } else if (k == 
222) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ä";
-                                                               } else if (k == 
186) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ö";
-                                                               }
-                                                       }
-                                               } else if (this.isLinux) {
-                                                       if (downkeys.length==2 
&& downkeys[0]==16) {
-                                                               if (k == 187) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "*";
-                                                               } else if (k == 
51) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "'";
-                                                               } else if (k == 
189) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "_";
-                                                               } else if (k == 
222) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "`";
-                                                               } else if (k == 
223) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "?";
-                                                               } else if (k == 
188) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = ">";
-                                                               } else if (k == 
176) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "°";
-                                                               } else if (k == 
252) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "Ü";
-                                                               } else if (k == 
228) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "Ä";
-                                                               } else if (k == 
246) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "Ö";
-                                                               }
-                                                       } else if 
(downkeys.length==2 && downkeys[0]==18) {
-                                                               if (k == 50) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "@";
-                                                               } else if (k == 
55) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "|";
-                                                               }
-                                                       } else {
-                                                               if (k == 187) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "+";
-                                                               } else if (k == 
51) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "#";
-                                                               } else if (k == 
189) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "-";
-                                                               } else if (k == 
222) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "`";
-                                                               } else if (k == 
223) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ß";
-                                                               } else if (k == 
188) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "<";
-                                                               } else if (k == 
176) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "^";
-                                                               } else if (k == 
246) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ü";
-                                                               } else if (k == 
228) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ä";
-                                                               } else if (k == 
246) {
-                                                                       
tObject["k"] = -1;
-                                                                       
tObject["c"] = "ö";
-                                                               }
-                                                       }
-                                               }
-                                                       
-                                               if (k == 18 || k == 17) {
-                                                       return;
-                                               }
-                                               
-                                               if 
(lz.Keys.downKeysArray.length > 1) {
-                                                       for (var 
i=0;i<lz.Keys.downKeysArray.length;i++) {
-                                                               if 
(lz.Keys.downKeysArray[i] == 17 || lz.Keys.downKeysArray[i] == '17') {
-                                                                       
lz.Keys.downKeysArray = new Array();
-                                                                       break;
-                                                               }
-                                                       }
-                                               }
-                                       
-                                               if ($debug) 
Debug.write("tObject :: ",tObject,this.isWindows,this.isMac);
-                                               
-                                               
this.sendRemoteCursorEvent.tObject = tObject;
-                                               if 
(canvas.isAllowedToRemoteControl || canvas.ismoderator) {
-                                                       
this.sendRemoteCursorEvent.doCall();
-                                               }
+                                       if (this.isMouseOverActive && 
(canvas.isAllowedToRemoteControl || canvas.ismoderator)) {
+                                               var obj = {
+                                                       action: evt.type
+                                                       , ctrl: evt.ctrlKey
+                                                       , shift: evt.shiftKey
+                                                       , alt: evt.altKey
+                                                       , char: evt.charCode
+                                                       , key: evt.keyCode
+                                               };
+                                               if ($debug) 
Debug.write("keyhandler ", obj);
+                                               
this.sendRemoteCursorEvent.tObject = obj;
+                                               
this.sendRemoteCursorEvent.doCall();
                                        }
                                ]]>
-                               </handler>
+                               </method>
                                
                                <handler name="onmouseover">
                                        //if ($debug) Debug.write("onmouseout 
");
@@ -922,13 +423,13 @@
                                </labelCheckbox>        
                                
                                <simpleLabelButton labelid="642" width="100" 
x="$once{ parent.width-105 }" 
-                                          y="$once{ parent.height-24 }" 
onclick="this.parent.close();" />
-                                          
-                       </labelExplorerBox>  
+                                               y="$once{ parent.height-24 }" 
onclick="this.parent.close();" />
+                                               
+                       </labelExplorerBox>
                        
                </view>
                
-       </view>  
+       </view>
 
        <view name="_zoombar" x="20" visibility="hidden" y="${ parent.height-26 
}">
                
@@ -977,7 +478,7 @@
                        </handler>
                </changeWidthSlider>
                
-               <labelText x="64" y="4" labelid="253" />   
+               <labelText x="64" y="4" labelid="253" />
                
                <labelText x="84" y="4" labelid="1096" />  
                
@@ -1029,7 +530,7 @@
                y="${ parent.height-22 }" onclick="this.parent.doClose();" />
                
        <animatorgroup name="_showScreenSharing" started="false" 
-                                  process="simultaneous" duration="1000" >
+                                       process="simultaneous" duration="1000" >
                <handler name="onstop">
                        if ($debug) Debug.write("onstop this._y.to 
",this._y.to);
                        if (!parent.isStarted) {

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/screensharing/videoObjectPlayScreenShare.lzx
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/screensharing/videoObjectPlayScreenShare.lzx?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/screensharing/videoObjectPlayScreenShare.lzx
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-flash/src/main/swf/screensharing/videoObjectPlayScreenShare.lzx
 Wed Sep 14 05:24:18 2016
@@ -9,7 +9,7 @@
   with the License.  You may obtain a copy of the License at
   
       http://www.apache.org/licenses/LICENSE-2.0
-         
+  
   Unless required by applicable law or agreed to in writing,
   software distributed under the License is distributed on an
   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -33,27 +33,27 @@
        
        <handler name="oninit">
                parent.sendCursorVisible(false);
-        lz.Timer.addTimer( new LzDelegate( this, "removeThis" ), 3000 );
-    </handler>
-    
-    <method name="removeThis" args="refObj">
-        this._out.setAttribute('started', true);
-    </method>
-    
-    <animator name="_out" attribute="opacity" to="0" 
-                 duration="750" started="false">
-       <handler name="onstop">
-               if (parent.isStopped) {
-                       return;
-               }
-               parent.isStopped = true;
-               parent._bg._in.stop();
-               parent._bg._out.stop();
-               parent.destroy();
-               parent.parent.sendCursorVisible(true);
-       </handler>
-    </animator>
-    
+               lz.Timer.addTimer( new LzDelegate( this, "removeThis" ), 3000 );
+       </handler>
+       
+       <method name="removeThis" args="refObj">
+               this._out.setAttribute('started', true);
+       </method>
+       
+       <animator name="_out" attribute="opacity" to="0" 
+                         duration="750" started="false">
+               <handler name="onstop">
+                       if (parent.isStopped) {
+                               return;
+                       }
+                       parent.isStopped = true;
+                       parent._bg._in.stop();
+                       parent._bg._out.stop();
+                       parent.destroy();
+                       parent.parent.sendCursorVisible(true);
+               </handler>
+       </animator>
+       
        <view name="_bg" bgcolor="0x7fff00" width="$once{ parent.width }"
                  height="$once{ parent.height }">
                <handler name="oninit">
@@ -61,24 +61,24 @@
                </handler>
                
                <animator name="_out" attribute="opacity" to="0.3" 
-              duration="250" started="false">
-            <handler name="onstop">
-               if (parent.parent.isStopped) {
-                    return;
-                }
-                parent._in.setAttribute('started', true);
-            </handler>
-        </animator>
-        
-        <animator name="_in" attribute="opacity" to="1" 
-              duration="250" started="false">
-            <handler name="onstop">
-               if (parent.parent.isStopped) {
-                       return;
-               }
-                parent._out.setAttribute('started', true);
-            </handler>
-        </animator>
+                         duration="250" started="false">
+                       <handler name="onstop">
+                               if (parent.parent.isStopped) {
+                                       return;
+                               }
+                               parent._in.setAttribute('started', true);
+                       </handler>
+               </animator>
+               
+               <animator name="_in" attribute="opacity" to="1" 
+                         duration="250" started="false">
+                       <handler name="onstop">
+                               if (parent.parent.isStopped) {
+                                       return;
+                               }
+                               parent._out.setAttribute('started', true);
+                       </handler>
+               </animator>
                
        </view>
        
@@ -98,19 +98,19 @@
 </class>       
 
 <class name="copiedTextPopup" extends="labelExplorerBox" labelid="1121"
-    docking="true" resizeable="true" closable="true" y="100"
-    x="$once{ parent.width/2 - this.width/2 }" height="160" width="324">
+       docking="true" resizeable="true" closable="true" y="100"
+       x="$once{ parent.width/2 - this.width/2 }" height="160" width="324">
 
-    <attribute name="error" value="" type="string" />
-    
-    <view name="_box" y="24" width="${ parent.width - 20 }" 
-         height="${ parent.height - 50 }" x="10" clip="true">
-        <text fontsize="10" fontstyle="bold" text="${ parent.parent.error }"
-            multiline="true" width="${ parent.width - 16 }" selectable="true" 
/>
-    </view>
-    
-    <simpleLabelButton labelid="642" width="100" x="${ parent.width-105 }" 
-           y="${ parent.height-24 }" onclick="this.parent.close();" />
+       <attribute name="error" value="" type="string" />
+       
+       <view name="_box" y="24" width="${ parent.width - 20 }" 
+                 height="${ parent.height - 50 }" x="10" clip="true">
+               <text fontsize="10" fontstyle="bold" text="${ 
parent.parent.error }"
+                       multiline="true" width="${ parent.width - 16 }" 
selectable="true" />
+       </view>
+       
+       <simpleLabelButton labelid="642" width="100" x="${ parent.width-105 }" 
+                  y="${ parent.height-24 }" onclick="this.parent.close();" />
 
 </class>
                        
@@ -118,121 +118,121 @@
        
        <attribute name="refObj" value="null" />
        
-    <contextmenu>
-            
-        <handler name="onmenuopen">
-            parent.refObj.currentX = parent.refObj.getMouse("x");
-            parent.refObj.currentY = parent.refObj.getMouse("y");
-            if ($debug) Debug.write("onmenuopen x,y 
",parent.currentX,parent.currentY);
-        </handler>
-        
-        <contextmenuitem caption="$once{ canvas.getLabelName(1119) }" 
-                         onselect="parent.parent.refObj.insertText()" />
-        
-        <contextmenuitem caption="$once{ canvas.getLabelName(1120) }" 
-                         onselect="parent.parent.refObj.copyFromRemote()" />
-                         
-        <contextmenuitem caption="$once{ canvas.getLabelName(1122) }" 
-                         onselect="parent.parent.refObj.showFromRemote()" />
-                         
-    </contextmenu>
+       <contextmenu>
+                       
+               <handler name="onmenuopen">
+                       parent.refObj.currentX = parent.refObj.getMouse("x");
+                       parent.refObj.currentY = parent.refObj.getMouse("y");
+                       if ($debug) Debug.write("onmenuopen x,y 
",parent.currentX,parent.currentY);
+               </handler>
+               
+               <contextmenuitem caption="$once{ canvas.getLabelName(1119) }" 
+                                                
onselect="parent.parent.refObj.insertText()" />
+               
+               <contextmenuitem caption="$once{ canvas.getLabelName(1120) }" 
+                                                
onselect="parent.parent.refObj.copyFromRemote()" />
+                                                
+               <contextmenuitem caption="$once{ canvas.getLabelName(1122) }" 
+                                                
onselect="parent.parent.refObj.showFromRemote()" />
+                                                
+       </contextmenu>
 </class>                       
                                           
 <class name="videoObjectPlayScreenShare" extends="view">
        
-    <baseVideoStream name="_videostream" bgcolor="black" 
-          width="${parent.width}" height="${parent.height}" >
-       
-       <attribute name="currentX" value="0" type="number" />
-       <attribute name="currentY" value="0" type="number" />
-       
-       <method name="insertText">
-               if (canvas.isAllowedToRemoteControl || canvas.ismoderator) {
-                       new lz.tempTextBox(this,{
-                                  x:this.currentX,
-                                  y:this.currentY
-                               });
-               } else {
-                       new lz.labelerrorPopup(canvas,{
-                               errorlabelid:1125
-                            });
-               }
-       </method>
-       
-       <method name="sendCursorVisible" args="bool">
-               if (bool) {
-                       
parent.parent.parent.parent.currentCursorObject.setAttribute("visibility","visible");
-               } else {
-                       
parent.parent.parent.parent.currentCursorObject.setAttribute("visibility","hidden");
-               }
-       </method>
-       
-       <method name="doBroadcastText" args="txt">
-               if (canvas.isAllowedToRemoteControl || canvas.ismoderator) {
-                       var tObject = new Object();
-                tObject["action"] = "paste";
-                
-                tObject["paste"] = txt;
-                
-                parent.sendRemoteCursorEvent.tObject = tObject;
-                
-                if ($debug) Debug.warn("doBroadcastText :: ",txt);
-                
-                parent.sendRemoteCursorEvent.doCall();
-               } else {
-                       new lz.labelerrorPopup(canvas,{
-                               errorlabelid:1125
-                            });
-               }
-       </method>
-       
-       <method name="copyFromRemote">
-               if (canvas.isAllowedToRemoteControl || canvas.ismoderator) {
-                       var tObject = new Object();
-                tObject["action"] = "copy";
-                
-                tObject["clientId"] = canvas.streamid;
-                
-                       parent.sendRemoteCursorEvent.tObject = tObject;
-                parent.sendRemoteCursorEvent.doCall();
-               } else {
-                       new lz.labelerrorPopup(canvas,{
-                                          errorlabelid:1125
-                                       });
-               }
-       </method>
-       
-       <method name="showFromRemote">
-            var tObject = new Object();
-            tObject["action"] = "show";
-            
-            tObject["clientId"] = canvas.streamid;
-            
-            parent.sendRemoteCursorEvent.tObject = tObject;
-            parent.sendRemoteCursorEvent.doCall();
-        </method>
-       
-       <contextmenu>
-               
-               <handler name="onmenuopen">
-                       parent.currentX = parent.getMouse("x");
-                       parent.currentY = parent.getMouse("y");
-                       if ($debug) Debug.write("onmenuopen x,y 
",parent.currentX,parent.currentY);
-               </handler>
-            
-            <contextmenuitem caption="$once{ canvas.getLabelName(1119) }" 
-                             onselect="parent.parent.insertText()" />
-            
-            <contextmenuitem caption="$once{ canvas.getLabelName(1120) }" 
-                             onselect="parent.parent.copyFromRemote()" />
-                             
-            <contextmenuitem caption="$once{ canvas.getLabelName(1122) }" 
-                             onselect="parent.parent.showFromRemote()" />
-                             
-        </contextmenu>
-        
-    </baseVideoStream>
-        
+       <baseVideoStream name="_videostream" bgcolor="black" 
+                 width="${parent.width}" height="${parent.height}" >
+               
+               <attribute name="currentX" value="0" type="number" />
+               <attribute name="currentY" value="0" type="number" />
+               
+               <method name="insertText">
+                       if (canvas.isAllowedToRemoteControl || 
canvas.ismoderator) {
+                               new lz.tempTextBox(this,{
+                                                  x:this.currentX,
+                                                  y:this.currentY
+                                               });
+                       } else {
+                               new lz.labelerrorPopup(canvas,{
+                                                          errorlabelid:1125
+                                                       });
+                       }
+               </method>
+               
+               <method name="sendCursorVisible" args="bool">
+                       if (bool) {
+                               
parent.parent.parent.parent.currentCursorObject.setAttribute("visibility","visible");
+                       } else {
+                               
parent.parent.parent.parent.currentCursorObject.setAttribute("visibility","hidden");
+                       }
+               </method>
+               
+               <method name="doBroadcastText" args="txt">
+                       if (canvas.isAllowedToRemoteControl || 
canvas.ismoderator) {
+                               var tObject = new Object();
+                               tObject["action"] = "paste";
+                               
+                               tObject["paste"] = txt;
+                               
+                               parent.sendRemoteCursorEvent.tObject = tObject;
+                               
+                               if ($debug) Debug.warn("doBroadcastText :: 
",txt);
+                               
+                               parent.sendRemoteCursorEvent.doCall();
+                       } else {
+                               new lz.labelerrorPopup(canvas,{
+                                                          errorlabelid:1125
+                                                       });
+                       }
+               </method>
+               
+               <method name="copyFromRemote">
+                       if (canvas.isAllowedToRemoteControl || 
canvas.ismoderator) {
+                               var tObject = new Object();
+                               tObject["action"] = "copy";
+                               
+                               tObject["clientId"] = canvas.streamid;
+                               
+                               parent.sendRemoteCursorEvent.tObject = tObject;
+                               parent.sendRemoteCursorEvent.doCall();
+                       } else {
+                               new lz.labelerrorPopup(canvas,{
+                                                          errorlabelid:1125
+                                                       });
+                       }
+               </method>
+               
+               <method name="showFromRemote">
+                       var tObject = new Object();
+                       tObject["action"] = "show";
+                       
+                       tObject["clientId"] = canvas.streamid;
+                       
+                       parent.sendRemoteCursorEvent.tObject = tObject;
+                       parent.sendRemoteCursorEvent.doCall();
+               </method>
+               
+               <contextmenu>
+                       
+                       <handler name="onmenuopen">
+                               parent.currentX = parent.getMouse("x");
+                               parent.currentY = parent.getMouse("y");
+                               if ($debug) Debug.write("onmenuopen x,y 
",parent.currentX,parent.currentY);
+                       </handler>
+                       
+                       <contextmenuitem caption="$once{ 
canvas.getLabelName(1119) }" 
+                                                        
onselect="parent.parent.insertText()" />
+                       
+                       <contextmenuitem caption="$once{ 
canvas.getLabelName(1120) }" 
+                                                        
onselect="parent.parent.copyFromRemote()" />
+                                                        
+                       <contextmenuitem caption="$once{ 
canvas.getLabelName(1122) }" 
+                                                        
onselect="parent.parent.showFromRemote()" />
+                                                        
+               </contextmenu>
+               
+       </baseVideoStream>
+               
 </class>
 
 </library>

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/AudioTone.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/AudioTone.java?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/AudioTone.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/AudioTone.java
 Wed Sep 14 05:24:18 2016
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.openmeetings.screen.webstart;
+package org.apache.openmeetings.screenshare;
 
 import javax.sound.sampled.AudioFormat;
 import javax.sound.sampled.AudioSystem;

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/BaseScreenEncoder.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/BaseScreenEncoder.java?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/BaseScreenEncoder.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/BaseScreenEncoder.java
 Wed Sep 14 05:24:18 2016
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.openmeetings.screen.webstart;
+package org.apache.openmeetings.screenshare;
 
 import java.awt.Graphics2D;
 import java.awt.Rectangle;

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/CaptureScreen.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/CaptureScreen.java?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/CaptureScreen.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/CaptureScreen.java
 Wed Sep 14 05:24:18 2016
@@ -16,33 +16,24 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.openmeetings.screen.webstart;
+package org.apache.openmeetings.screenshare;
 
-import static org.apache.openmeetings.screen.webstart.gui.ScreenDimensions.FPS;
-import static 
org.apache.openmeetings.screen.webstart.gui.ScreenDimensions.spinnerHeight;
-import static 
org.apache.openmeetings.screen.webstart.gui.ScreenDimensions.spinnerWidth;
-import static 
org.apache.openmeetings.screen.webstart.gui.ScreenDimensions.spinnerX;
-import static 
org.apache.openmeetings.screen.webstart.gui.ScreenDimensions.spinnerY;
+import static org.apache.openmeetings.screenshare.Core.QUARTZ_GROUP_NAME;
+import static org.apache.openmeetings.screenshare.gui.ScreenDimensions.FPS;
+import static org.apache.openmeetings.screenshare.util.Util.getQurtzProps;
 import static org.quartz.SimpleScheduleBuilder.simpleSchedule;
-import static org.quartz.impl.StdSchedulerFactory.PROP_SCHED_SKIP_UPDATE_CHECK;
 import static org.slf4j.LoggerFactory.getLogger;
 
-import java.awt.AWTException;
-import java.awt.Rectangle;
-import java.awt.Robot;
 import java.io.IOException;
-import java.util.Properties;
 import java.util.concurrent.ArrayBlockingQueue;
 import java.util.concurrent.atomic.AtomicBoolean;
 import java.util.concurrent.atomic.AtomicInteger;
 
-import org.quartz.DisallowConcurrentExecution;
-import org.quartz.Job;
+import org.apache.openmeetings.screenshare.job.CursorJob;
+import org.apache.openmeetings.screenshare.job.EncodeJob;
+import org.apache.openmeetings.screenshare.job.SendJob;
 import org.quartz.JobBuilder;
-import org.quartz.JobDataMap;
 import org.quartz.JobDetail;
-import org.quartz.JobExecutionContext;
-import org.quartz.JobExecutionException;
 import org.quartz.JobKey;
 import org.quartz.Scheduler;
 import org.quartz.SchedulerException;
@@ -55,16 +46,15 @@ import org.red5.server.net.rtmp.event.Vi
 import org.red5.server.stream.message.RTMPMessage;
 import org.slf4j.Logger;
 
-class CaptureScreen extends Thread {
+public class CaptureScreen extends Thread {
        private static final Logger log = getLogger(CaptureScreen.class);
-       private final static String QUARTZ_GROUP_NAME = "ScreenShare";
        private final static String QUARTZ_CURSOR_TRIGGER_NAME = 
"CursorTrigger";
        private final static String QUARTZ_CURSOR_JOB_NAME = "CursorJob";
-       private CoreScreenShare core;
-       private int timeBetweenFrames;
+       private Core core;
+       private int timestampDelta;
        private volatile AtomicInteger timestamp = new AtomicInteger(0);
        private volatile AtomicBoolean sendFrameGuard = new 
AtomicBoolean(false);
-       private long timeCaptureStarted = 0;
+       private long startTime = 0;
        private volatile boolean active = true;
        private IScreenEncoder se;
        private IScreenShare client;
@@ -76,7 +66,7 @@ class CaptureScreen extends Thread {
        private boolean startPublish = false;
        private Scheduler _scheduler;
 
-       public CaptureScreen(CoreScreenShare coreScreenShare, IScreenShare 
client, String host, String app, int port) {
+       public CaptureScreen(Core coreScreenShare, IScreenShare client, String 
host, String app, int port) {
                core = coreScreenShare;
                this.client = client;
                this.host = host;
@@ -86,12 +76,9 @@ class CaptureScreen extends Thread {
 
        private Scheduler getScheduler() {
                if (_scheduler == null) {
-                       final Properties p = new Properties();
-                       p.put(PROP_SCHED_SKIP_UPDATE_CHECK, "true");
-                       p.put("org.quartz.threadPool.threadCount", "10");
                        try {
-                               SchedulerFactory sf = new 
StdSchedulerFactory(p);
-                               _scheduler = sf.getScheduler();
+                               SchedulerFactory schdlrFactory = new 
StdSchedulerFactory(getQurtzProps("CaptureScreen"));
+                               _scheduler = schdlrFactory.getScheduler();
                        } catch (SchedulerException e) {
                                log.error("Unexpected error while creating 
scheduler", e);
                        }
@@ -110,7 +97,7 @@ class CaptureScreen extends Thread {
                }
                active = false;
                timestamp = new AtomicInteger(0);
-               timeCaptureStarted = 0;
+               startTime = 0;
        }
 
        @Override
@@ -120,20 +107,20 @@ class CaptureScreen extends Thread {
                                Thread.sleep(60);
                        }
 
-                       timeBetweenFrames = 1000 / FPS;
+                       timestampDelta = 1000 / FPS;
                        se = new ScreenV1Encoder(3 * FPS); //send keyframe 
every 3 seconds
-                       timeCaptureStarted = System.currentTimeMillis();
+                       startTime = System.currentTimeMillis();
 
                        JobDetail encodeJob = 
JobBuilder.newJob(EncodeJob.class).withIdentity("EncodeJob", 
QUARTZ_GROUP_NAME).build();
                        encodeJob.getJobDataMap().put(EncodeJob.CAPTURE_KEY, 
this);
                        Trigger encodeTrigger = TriggerBuilder.newTrigger()
                                        .withIdentity("EncodeTrigger", 
QUARTZ_GROUP_NAME)
-                                       
.withSchedule(simpleSchedule().withIntervalInMilliseconds(timeBetweenFrames).repeatForever())
+                                       
.withSchedule(simpleSchedule().withIntervalInMilliseconds(timestampDelta).repeatForever())
                                        .build();
                        JobDetail sendJob = 
JobBuilder.newJob(SendJob.class).withIdentity("SendJob", 
QUARTZ_GROUP_NAME).build();
                        Trigger sendTrigger = TriggerBuilder.newTrigger()
                                        .withIdentity("SendTrigger", 
QUARTZ_GROUP_NAME)
-                                       
.withSchedule(simpleSchedule().withIntervalInMilliseconds(timeBetweenFrames).repeatForever())
+                                       
.withSchedule(simpleSchedule().withIntervalInMilliseconds(timestampDelta).repeatForever())
                                        .build();
                        sendJob.getJobDataMap().put(SendJob.CAPTURE_KEY, this);
 
@@ -163,105 +150,7 @@ class CaptureScreen extends Thread {
        }
        */
        
-       @DisallowConcurrentExecution
-       public static class EncodeJob implements Job {
-               private static final String CAPTURE_KEY = "capture";
-               Robot robot;
-               Rectangle screen = new Rectangle(spinnerX, spinnerY, 
spinnerWidth, spinnerHeight);
-               int[][] image = null;
-               
-               public EncodeJob() {
-                       try {
-                               robot = new Robot();
-                       } catch (AWTException e) {
-                               log.error("encode: Unexpected Error while 
creating robot", e);
-                       }
-               }
-               
-               @Override
-               public void execute(JobExecutionContext context) throws 
JobExecutionException {
-                       JobDataMap data = 
context.getJobDetail().getJobDataMap();
-                       CaptureScreen capture = 
(CaptureScreen)data.get(CAPTURE_KEY);
-                       
-                       long start = 0;
-                       if (log.isTraceEnabled()) {
-                               start = System.currentTimeMillis();
-                       }
-                       image = ScreenV1Encoder.getImage(screen, robot);
-                       if (log.isTraceEnabled()) {
-                               log.trace(String.format("encode: Image was 
captured in %s ms, size %sk", System.currentTimeMillis() - start, 4 * 
image.length * image[0].length / 1024));
-                               start = System.currentTimeMillis();
-                       }
-                       try {
-                               VideoData vData = capture.se.encode(image);
-                               if (log.isTraceEnabled()) {
-                                       long now = System.currentTimeMillis();
-                                       log.trace(String.format("encode: Image 
was encoded in %s ms, timestamp is %s", now - start, now - 
capture.timeCaptureStarted));
-                               }
-                               capture.frames.offer(vData);
-                               capture.se.createUnalteredFrame();
-                       } catch (Exception e) {
-                               log.error("Error while encoding: ", e);
-                       }
-               }
-       }
-       
-       public static class SendJob implements Job {
-               private static final String CAPTURE_KEY = "capture";
-               public SendJob() {}
-               
-               @Override
-               public void execute(JobExecutionContext context) throws 
JobExecutionException {
-                       JobDataMap data = 
context.getJobDetail().getJobDataMap();
-                       CaptureScreen capture = 
(CaptureScreen)data.get(CAPTURE_KEY);
-                       capture.sendFrameGuard.set(true);
-                       if (log.isTraceEnabled()) {
-                               long real = System.currentTimeMillis() - 
capture.timeCaptureStarted;
-                               log.trace(String.format("send: Enter method, 
timestamp: %s, real: %s, diff: %s", capture.timestamp, real, real - 
capture.timestamp.get()));
-                       }
-                       VideoData f = capture.frames.poll();
-                       if (log.isTraceEnabled()) {
-                               log.trace(String.format("send: Getting %s 
image", f == null ? "DUMMY" : "CAPTURED"));
-                       }
-                       f = f == null ? capture.se.getUnalteredFrame() : f;
-                       if (f != null) {
-                               try {
-                                       capture.pushVideo(f, 
capture.timestamp.get());
-                                       if (log.isTraceEnabled()) {
-                                               long real = 
System.currentTimeMillis() - capture.timeCaptureStarted;
-                                               log.trace(String.format("send: 
Sending video %sk, timestamp: %s, real: %s, diff: %s", f.getData().capacity() / 
1024, capture.timestamp, real, real - capture.timestamp.get()));
-                                       }
-                                       
capture.timestamp.addAndGet(capture.timeBetweenFrames);
-                                       if (log.isTraceEnabled()) {
-                                               log.trace(String.format("send: 
new timestamp: %s", capture.timestamp));
-                                       }
-                               } catch (IOException e) {
-                                       log.error("Error while sending: ", e);
-                               }
-                       } else if (log.isTraceEnabled()) {
-                               log.trace(String.format("send: nothing to 
send"));
-                       }
-                       capture.sendFrameGuard.set(false);
-               }
-       }
-       
-       @DisallowConcurrentExecution
-       public static class CursorJob implements Job {
-               private static final String CAPTURE_KEY = "capture";
-               
-               public CursorJob() {}
-               
-               @Override
-               public void execute(JobExecutionContext context) throws 
JobExecutionException {
-                       JobDataMap data = 
context.getJobDetail().getJobDataMap();
-                       CaptureScreen capture = 
(CaptureScreen)data.get(CAPTURE_KEY);
-                       if (!capture.sendFrameGuard.get()) {
-                               capture.core.sendCursorStatus();
-                       }
-               }
-       }
-       
-       private void pushVideo(VideoData data, int ts) throws IOException {
+       public void pushVideo(VideoData data, int ts) throws IOException {
                if (startPublish) {
                        if (Red5.getConnectionLocal() == null) {
                                Red5.setConnectionLocal(client.getConnection());
@@ -295,6 +184,38 @@ class CaptureScreen extends Thread {
                this.startPublish = startPublish;
        }
 
+       public IScreenEncoder getEncoder() {
+               return se;
+       }
+
+       public ArrayBlockingQueue<VideoData> getFrames() {
+               return frames;
+       }
+
+       public void setSendFrameGuard(boolean b) {
+               sendFrameGuard.set(b);
+       }
+
+       public boolean getSendFrameGuard() {
+               return sendFrameGuard.get();
+       }
+
+       public AtomicInteger getTimestamp() {
+               return timestamp;
+       }
+
+       public long getStartTime() {
+               return startTime;
+       }
+
+       public int getTimestampDelta() {
+               return timestampDelta;
+       }
+
+       public void sendCursorStatus() {
+               core.sendCursorStatus();
+       }
+
        public void setSendCursor(boolean sendCursor) {
                try {
                        Scheduler s = getScheduler();

Copied: 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/Core.java
 (from r1760627, 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/CoreScreenShare.java)
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/Core.java?p2=openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/Core.java&p1=openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/CoreScreenShare.java&r1=1760627&r2=1760631&rev=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/CoreScreenShare.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/Core.java
 Wed Sep 14 05:24:18 2016
@@ -16,32 +16,36 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.openmeetings.screen.webstart;
+package org.apache.openmeetings.screenshare;
 
-import static java.awt.Toolkit.getDefaultToolkit;
-import static java.awt.datatransfer.DataFlavor.stringFlavor;
 import static java.lang.Boolean.TRUE;
-import static 
org.apache.openmeetings.screen.webstart.gui.ScreenDimensions.resizeX;
-import static 
org.apache.openmeetings.screen.webstart.gui.ScreenDimensions.resizeY;
-import static 
org.apache.openmeetings.screen.webstart.gui.ScreenDimensions.spinnerHeight;
-import static 
org.apache.openmeetings.screen.webstart.gui.ScreenDimensions.spinnerWidth;
-import static 
org.apache.openmeetings.screen.webstart.gui.ScreenDimensions.spinnerX;
-import static 
org.apache.openmeetings.screen.webstart.gui.ScreenDimensions.spinnerY;
+import static org.apache.openmeetings.screenshare.gui.ScreenDimensions.resizeX;
+import static org.apache.openmeetings.screenshare.gui.ScreenDimensions.resizeY;
+import static 
org.apache.openmeetings.screenshare.gui.ScreenDimensions.spinnerHeight;
+import static 
org.apache.openmeetings.screenshare.gui.ScreenDimensions.spinnerWidth;
+import static 
org.apache.openmeetings.screenshare.gui.ScreenDimensions.spinnerX;
+import static 
org.apache.openmeetings.screenshare.gui.ScreenDimensions.spinnerY;
+import static org.apache.openmeetings.screenshare.util.Util.getQurtzProps;
+import static org.quartz.SimpleScheduleBuilder.simpleSchedule;
 import static org.slf4j.LoggerFactory.getLogger;
 
 import java.awt.MouseInfo;
 import java.awt.Point;
-import java.awt.Robot;
-import java.awt.datatransfer.Clipboard;
-import java.awt.datatransfer.StringSelection;
-import java.awt.datatransfer.Transferable;
-import java.awt.event.InputEvent;
-import java.awt.event.KeyEvent;
 import java.net.URI;
 import java.util.HashMap;
 import java.util.Map;
+import java.util.concurrent.LinkedBlockingQueue;
 
-import org.apache.openmeetings.screen.webstart.gui.ScreenSharerFrame;
+import org.apache.openmeetings.screenshare.gui.ScreenSharerFrame;
+import org.apache.openmeetings.screenshare.job.RemoteJob;
+import org.quartz.JobBuilder;
+import org.quartz.JobDetail;
+import org.quartz.Scheduler;
+import org.quartz.SchedulerException;
+import org.quartz.SchedulerFactory;
+import org.quartz.Trigger;
+import org.quartz.TriggerBuilder;
+import org.quartz.impl.StdSchedulerFactory;
 import org.red5.client.net.rtmp.INetStreamEventHandler;
 import org.red5.io.utils.ObjectMap;
 import org.red5.server.api.Red5;
@@ -57,8 +61,12 @@ import org.red5.server.net.rtmp.status.S
 import org.slf4j.Logger;
 import org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler;
 
-public class CoreScreenShare implements IPendingServiceCallback, 
INetStreamEventHandler {
-       private static final Logger log = getLogger(CoreScreenShare.class);
+public class Core implements IPendingServiceCallback, INetStreamEventHandler {
+       private static final Logger log = getLogger(Core.class);
+       public static float Ampl_factor = 1f;
+       final static String QUARTZ_GROUP_NAME = "ScreenShare";
+       final static String QUARTZ_REMOTE_JOB_NAME = "RemoteJob";
+       final static String QUARTZ_REMOTE_TRIGGER_NAME = "RemoteTrigger";
 
        enum Protocol {
                rtmp, rtmpt, rtmpe, rtmps
@@ -82,16 +90,16 @@ public class CoreScreenShare implements
        private boolean allowRecording = true;
        private boolean allowPublishing = true;
 
-       private boolean startStreaming = false;
+       private boolean startSharing = false;
        private boolean startRecording = false;
        private boolean startPublishing = false;
-       public float Ampl_factor = 1f;
        public boolean isConnected = false;
        private boolean readyToRecord = false;
        private boolean audioNotify = false;
        private boolean remoteEnabled = true;
-
-       public Map<Integer, Boolean> currentPressedKeys = new HashMap<Integer, 
Boolean>();
+       private SchedulerFactory schdlrFactory;
+       private Scheduler schdlr;
+       private LinkedBlockingQueue<Map<String, Object>> remoteEvents = new 
LinkedBlockingQueue<>();
 
        private CaptureScreen getCapture() {
                if (_capture == null) {
@@ -105,7 +113,7 @@ public class CoreScreenShare implements
        //
        // 
------------------------------------------------------------------------
 
-       public CoreScreenShare(String[] args) {
+       public Core(String[] args) {
                try {
                        
System.setProperty("org.terracotta.quartz.skipUpdateCheck", "true");
                        for (String arg : args) {
@@ -132,9 +140,7 @@ public class CoreScreenShare implements
                                        textArray = labelTexts.split(";");
 
                                        log.debug("labelTexts :: " + 
labelTexts);
-
                                        log.debug("textArray Length " + 
textArray.length);
-
                                        for (int i = 0; i < textArray.length; 
i++) {
                                                log.debug(i + " :: " + 
textArray[i]);
                                        }
@@ -166,6 +172,15 @@ public class CoreScreenShare implements
                        } else {
                                System.exit(0);
                        }
+                       schdlrFactory = new 
StdSchedulerFactory(getQurtzProps("CoreScreenShare"));
+                       schdlr = schdlrFactory.getScheduler();
+                       JobDetail remoteJob = 
JobBuilder.newJob(RemoteJob.class).withIdentity(QUARTZ_REMOTE_JOB_NAME, 
QUARTZ_GROUP_NAME).build();
+                       Trigger cursorTrigger = TriggerBuilder.newTrigger()
+                                       
.withIdentity(QUARTZ_REMOTE_TRIGGER_NAME, QUARTZ_GROUP_NAME)
+                                       
.withSchedule(simpleSchedule().withIntervalInMilliseconds(50).repeatForever())
+                                       .build();
+                       remoteJob.getJobDataMap().put(RemoteJob.CORE_KEY, this);
+                       schdlr.scheduleJob(remoteJob, cursorTrigger);
 
                        createWindow(textArray);
                } catch (Exception err) {
@@ -174,7 +189,7 @@ public class CoreScreenShare implements
        }
 
        public static void main(String[] args) {
-               new CoreScreenShare(args);
+               new Core(args);
        }
 
        // 
------------------------------------------------------------------------
@@ -243,7 +258,7 @@ public class CoreScreenShare implements
                        map.put("screenHeight", scaledHeight);
                        map.put("publishName", publishName);
                        map.put("startRecording", startRecording);
-                       map.put("startStreaming", startStreaming);
+                       map.put("startStreaming", startSharing);
                        map.put("startPublishing", startPublishing);
                        map.put("publishingHost", frame.getPublishHost());
                        map.put("publishingApp", frame.getPublishApp());
@@ -258,8 +273,13 @@ public class CoreScreenShare implements
                }
        }
 
-       public void streamingStart() {
-               startStreaming = true;
+       public void sharingStart() {
+               try {
+                       schdlr.start();
+               } catch (SchedulerException e) {
+                       log.error("[schdlr.start]", e);
+               }
+               startSharing = true;
                captureScreenStart();
        }
        
@@ -295,8 +315,13 @@ public class CoreScreenShare implements
                }
        }
 
-       public void streamingStop() {
-               startStreaming = false;
+       public void sharingStop() {
+               try {
+                       schdlr.standby();
+               } catch (SchedulerException e) {
+                       log.error("[schdlr.standby]", e);
+               }
+               startSharing = false;
                captureScreenStop("stopStreaming");
        }
        
@@ -327,18 +352,23 @@ public class CoreScreenShare implements
                }
        }
 
-       public void stopStreaming() {
-               frame.setSharingStatus(false, !startPublishing && 
!startRecording && !startStreaming);
-               startStreaming = false;
+       public void stopSharing() {
+               try {
+                       schdlr.standby();
+               } catch (SchedulerException e) {
+                       log.error("[schdlr.standby]", e);
+               }
+               frame.setSharingStatus(false, !startPublishing && 
!startRecording && !startSharing);
+               startSharing = false;
        }
        
        public void stopRecording() {
-               frame.setRecordingStatus(false, !startPublishing && 
!startRecording && !startStreaming);
+               frame.setRecordingStatus(false, !startPublishing && 
!startRecording && !startSharing);
                startRecording = false;
        }
        
        public void stopPublishing() {
-               frame.setPublishingStatus(false, !startPublishing && 
!startRecording && !startStreaming);
+               frame.setPublishingStatus(false, !startPublishing && 
!startRecording && !startSharing);
                startPublishing = false;
                if (publishClient != null) {
                        publishClient.disconnect();
@@ -383,7 +413,7 @@ public class CoreScreenShare implements
                try {
                        log.debug("ScreenShare stopStream");
 
-                       stopStreaming();
+                       stopSharing();
                        stopRecording();
                        stopPublishing();
                        isConnected = false;
@@ -417,239 +447,16 @@ public class CoreScreenShare implements
                return TRUE.equals(Boolean.valueOf("" + b));
        }
        
-       private static String getString(Map<String, Object> map, String key) {
-               return String.valueOf(map.get(key));
-       }
-
-       private static Double getDouble(Map<String, Object> map, String key) {
-               return Double.valueOf(getString(map, key));
-       }
-       
-       private static int getInt(Map<String, Object> map, String key) {
-               return getDouble(map, key).intValue();
-       }
-       
-       private static float getFloat(Map<String, Object> map, String key) {
-               return getDouble(map, key).floatValue();
-       }
-       
-       private Point getCoordinates(Map<String, Object> returnMap) {
-               float scaleFactorX = spinnerWidth / (Ampl_factor * resizeX);
-               float scaleFactorY = spinnerHeight / (Ampl_factor * resizeY);
-
-               int x = Math.round(scaleFactorX * getFloat(returnMap, "x") + 
spinnerX);
-               int y = Math.round(scaleFactorY * getFloat(returnMap, "y") + 
spinnerY);
-               return new Point(x, y);
-       }
-       
-       public void sendRemoteCursorEvent(Object obj) {
-               try {
-                       if (!remoteEnabled) {
-                               return;
-                       }
-                       log.trace("#### sendRemoteCursorEvent ");
-                       log.trace("Result Map Type "+obj.getClass().getName());
-
-                       @SuppressWarnings("unchecked")
-                       Map<String, Object> returnMap = (Map<String, 
Object>)obj;
-
-                       String action = "" + returnMap.get("action");
-
-                       if (action.equals("onmouseup")) {
-                               Robot robot = new Robot();
-                               
-                               Point p = getCoordinates(returnMap);
-                               robot.mouseMove(p.x, p.y);
-                               robot.mouseRelease(InputEvent.BUTTON1_MASK);
-                       } else if (action.equals("onmousedown")) {
-                               Robot robot = new Robot();
-
-                               Point p = getCoordinates(returnMap);
-                               robot.mouseMove(p.x, p.y);
-                               robot.mousePress(InputEvent.BUTTON1_MASK);
-                       } else if (action.equals("mousePos")) {
-                               Robot robot = new Robot();
-
-                               Point p = getCoordinates(returnMap);
-                               robot.mouseMove(p.x, p.y);
-                       } else if (action.equals("onkeydown")) {
-                               Robot robot = new Robot();
-
-                               int key = getInt(returnMap, "k");
-
-                               log.trace("KEY EVENT!!!!!  key onkeydown -1 " + 
key);
-                               boolean doAction = true;
-
-                               if (key == 221) {
-                                       key = 61;
-                               } else if (key == -1) {
-                                       String charValue = 
returnMap.get("c").toString();
-
-                                       // key = KeyEvent.VK_ADD;
-                                       doAction = false;
-
-                                       for (Integer storedKey : 
currentPressedKeys.keySet()) {
-                                               robot.keyRelease(storedKey);
-                                       }
-
-                                       currentPressedKeys.clear();
-
-                                       pressSpecialSign(charValue, robot);
-                               } else if (key == 188) {
-                                       key = 44;
-                               } else if (key == 189) {
-                                       key = 109;
-                               } else if (key == 190) {
-                                       key = 46;
-                               } else if (key == 191) {
-                                       key = 47;
-                               } else if (key == 13) {
-                                       key = KeyEvent.VK_ENTER;
-                               }
-
-                               if (doAction) {
-                                       currentPressedKeys.put(key, true);
-
-                                       robot.keyPress(key);
-                               }
-                       } else if (action.equals("onkeyup")) {
-                               Robot robot = new Robot();
-
-                               int key = getInt(returnMap, "k");
-
-                               boolean doAction = true;
-
-                               if (key == 221) {
-                                       key = 61;
-                               } else if (key == -1) {
-                                       doAction = false;
-                               } else if (key == 188) {
-                                       key = 44;
-                               } else if (key == 189) {
-                                       key = 109;
-                               } else if (key == 190) {
-                                       key = 46;
-                               } else if (key == 191) {
-                                       key = 47;
-                               } else if (key == 13) {
-                                       key = KeyEvent.VK_ENTER;
-                               }
-
-                               log.trace("KEY EVENT!!!!!  key onkeyup 2- " + 
key);
-
-                               if (doAction) {
-                                       if 
(currentPressedKeys.containsKey(key)) {
-                                               currentPressedKeys.remove(key);
-
-                                               robot.keyRelease(key);
-                                       }
-                               }
-                       } else if (action.equals("paste")) {
-                               Robot robot = new Robot();
-
-                               String paste = 
returnMap.get("paste").toString();
-
-                               pressSpecialSign(paste, robot);
-                       } else if (action.equals("copy")) {
-                               Robot robot = new Robot();
-
-                               String paste = this.getHighlightedText(robot);
-
-                               Map<Integer, String> map = new HashMap<Integer, 
String>();
-                               map.put(0, "copiedText");
-                               map.put(1, paste);
-
-                               String clientId = 
returnMap.get("clientId").toString();
-
-                               instance.invoke("sendMessageWithClientById", 
new Object[]{map, clientId}, this);
-                       } else if (action.equals("show")) {
-                               String paste = getClipboardText();
-
-                               Map<Integer, String> map = new HashMap<Integer, 
String>();
-                               map.put(0, "copiedText");
-                               map.put(1, paste);
-
-                               String clientId = 
returnMap.get("clientId").toString();
-
-                               instance.invoke("sendMessageWithClientById", 
new Object[]{map, clientId}, this);
-                       }
-               } catch (Exception err) {
-                       log.error("[sendRemoteCursorEvent]", err);
-               }
-       }
-
-       public String getClipboardText() {
-               try {
-                       // get the system clipboard
-                       Clipboard systemClipboard = 
getDefaultToolkit().getSystemClipboard();
-
-                       // get the contents on the clipboard in a
-                       // transferable object
-                       Transferable clipboardContents = 
systemClipboard.getContents(null);
-
-                       // check if clipboard is empty
-                       if (clipboardContents == null) {
-                               // Clipboard is empty!!!
-                               return ("");
-
-                               // see if DataFlavor of
-                               // DataFlavor.stringFlavor is supported
-                       } else if 
(clipboardContents.isDataFlavorSupported(stringFlavor)) {
-                               // return text content
-                               String returnText = (String) 
clipboardContents.getTransferData(stringFlavor);
-
-                               return returnText;
-                       }
-
-                       return "";
-               } catch (Exception e) {
-                       log.error("Unexpected exception while getting clipboard 
text", e);
-               }
-               return "";
-       }
-
-       private static void pressSequence(Robot robot, long delay, int... 
codes) throws InterruptedException {
-               for (int i = 0; i < codes.length; ++i) {
-                       robot.keyPress(codes[i]);
-                       Thread.sleep(delay);
-               }
-               for (int i = codes.length - 1; i >= 0; --i) {
-                       robot.keyRelease(codes[i]);
-                       Thread.sleep(delay);
-               }
-       }
-       
-       private String getHighlightedText(Robot robot) {
-               try {
-                       if 
(System.getProperty("os.name").toUpperCase().indexOf("WINDOWS") >= 0) {
-                               // pressing STRG+C == copy
-                               pressSequence(robot, 200, KeyEvent.VK_CONTROL, 
KeyEvent.VK_C);
-                       } else {
-                               // Macintosh simulate Copy
-                               pressSequence(robot, 200, 157, 67);
-                       }
-                       return getClipboardText();
-               } catch (Exception e) {
-                       log.error("Unexpected exception while getting 
highlighted text", e);
+       public void sendRemoteCursorEvent(Map<String, Object> obj) {
+               if (!remoteEnabled) {
+                       return;
                }
-               return "";
-       }
-
-       private static void pressSpecialSign(String charValue, Robot robot) {
-               Clipboard clippy = getDefaultToolkit().getSystemClipboard();
-               try {
-                       Transferable transferableText = new 
StringSelection(charValue);
-                       clippy.setContents(transferableText, null);
+               log.trace("#### sendRemoteCursorEvent ");
+               log.trace("Result Map Type "+ obj);
 
-                       if 
(System.getProperty("os.name").toUpperCase().indexOf("WINDOWS") > -1) {
-                               // pressing STRG+V == insert-mode
-                               pressSequence(robot, 100, KeyEvent.VK_CONTROL, 
KeyEvent.VK_V);
-                       } else {
-                               // Macintosh simulate Insert
-                               pressSequence(robot, 100, 157, 86);
-                       }
-               } catch (Exception e) {
-                       log.error("Unexpected exception while 
pressSpecialSign", e);
+               if (obj != null) {
+                       remoteEvents.offer(obj);
+                       log.trace("Action offered:: {}, count: {}", obj, 
remoteEvents.size());
                }
        }
 
@@ -707,7 +514,7 @@ public class CoreScreenShare implements
                                        return;
                                }
                        } else if ("createStream".equals(method)) {
-                               if (startRecording || startStreaming) {
+                               if (startRecording || startSharing) {
                                        if (o != null && o instanceof Number) {
                                                
getCapture().setStreamId((Number)o);
                                        }
@@ -717,7 +524,7 @@ public class CoreScreenShare implements
                                        log.debug("setup capture thread 
spinnerWidth = {}; spinnerHeight = {};", spinnerWidth, spinnerHeight);
        
                                        if (!getCapture().isAlive()) {
-                                               
getCapture().setSendCursor(startStreaming);
+                                               
getCapture().setSendCursor(startSharing);
                                                getCapture().start();
                                        }
                                }
@@ -727,7 +534,7 @@ public class CoreScreenShare implements
                                        log.trace("Stopping to stream, there is 
neither a Desktop Sharing nor Recording anymore");
                                        stopStream();
                                } else if ("stopSharingOnly".equals(result)) {
-                                       stopStreaming();
+                                       stopSharing();
                                } else if ("stopRecordingOnly".equals(result)) {
                                        stopRecording();
                                } else if ("stopPublishingOnly".equals(result)) 
{
@@ -769,4 +576,12 @@ public class CoreScreenShare implements
                deadlockGuard.afterPropertiesSet();
                conn.setDeadlockGuardScheduler(deadlockGuard);
        }
+
+       public IScreenShare getInstance() {
+               return instance;
+       }
+
+       public LinkedBlockingQueue<Map<String, Object>> getRemoteEvents() {
+               return remoteEvents;
+       }
 }

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/IScreenEncoder.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/IScreenEncoder.java?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/IScreenEncoder.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/IScreenEncoder.java
 Wed Sep 14 05:24:18 2016
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.openmeetings.screen.webstart;
+package org.apache.openmeetings.screenshare;
 
 import java.io.IOException;
 

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/IScreenShare.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/IScreenShare.java?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/IScreenShare.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/IScreenShare.java
 Wed Sep 14 05:24:18 2016
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.openmeetings.screen.webstart;
+package org.apache.openmeetings.screenshare;
 
 import java.util.Map;
 

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/RTMPClientPublish.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/RTMPClientPublish.java?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/RTMPClientPublish.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/RTMPClientPublish.java
 Wed Sep 14 05:24:18 2016
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.openmeetings.screen.webstart;
+package org.apache.openmeetings.screenshare;
 
 import org.red5.client.net.rtmp.INetStreamEventHandler;
 import org.red5.client.net.rtmp.RTMPClient;
@@ -34,13 +34,13 @@ class RTMPClientPublish extends RTMPClie
        private static final Logger logger = 
LoggerFactory.getLogger(RTMPClientPublish.class);
        private final CaptureScreen publishScreen;
        private String id;
-       private CoreScreenShare core;
+       private Core core;
        
-       public void setCore(CoreScreenShare core) {
+       public void setCore(Core core) {
                this.core = core;
        }
        
-       RTMPClientPublish(CoreScreenShare core, String host, String app, String 
id) {
+       RTMPClientPublish(Core core, String host, String app, String id) {
                this.id = id;
                this.core = core;
                publishScreen = new CaptureScreen(core, this, host, app, 1935);

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/RTMPSScreenShare.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/RTMPSScreenShare.java?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/RTMPSScreenShare.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/RTMPSScreenShare.java
 Wed Sep 14 05:24:18 2016
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.openmeetings.screen.webstart;
+package org.apache.openmeetings.screenshare;
 
 import org.red5.client.net.rtmps.RTMPSClient;
 import org.red5.server.net.ICommand;
@@ -29,9 +29,9 @@ import org.slf4j.LoggerFactory;
 public class RTMPSScreenShare extends RTMPSClient implements IScreenShare {
        private static final Logger log = 
LoggerFactory.getLogger(RTMPSScreenShare.class);
 
-       private final CoreScreenShare core;
+       private final Core core;
 
-       public RTMPSScreenShare(CoreScreenShare core) {
+       public RTMPSScreenShare(Core core) {
                this.core = core;
        };
 

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/RTMPScreenShare.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/RTMPScreenShare.java?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/RTMPScreenShare.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/RTMPScreenShare.java
 Wed Sep 14 05:24:18 2016
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.openmeetings.screen.webstart;
+package org.apache.openmeetings.screenshare;
 
 import org.red5.client.net.rtmp.RTMPClient;
 import org.red5.server.net.ICommand;
@@ -29,9 +29,9 @@ import org.slf4j.LoggerFactory;
 public class RTMPScreenShare extends RTMPClient implements IScreenShare {
        private static final Logger log = 
LoggerFactory.getLogger(RTMPScreenShare.class);
 
-       private final CoreScreenShare core;
+       private final Core core;
 
-       public RTMPScreenShare(CoreScreenShare core) {
+       public RTMPScreenShare(Core core) {
                this.core = core;
        }
 

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/RTMPTSScreenShare.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/RTMPTSScreenShare.java?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/RTMPTSScreenShare.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/RTMPTSScreenShare.java
 Wed Sep 14 05:24:18 2016
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.openmeetings.screen.webstart;
+package org.apache.openmeetings.screenshare;
 
 import org.red5.client.net.rtmps.RTMPTSClient;
 import org.red5.server.net.ICommand;
@@ -29,9 +29,9 @@ import org.slf4j.LoggerFactory;
 public class RTMPTSScreenShare extends RTMPTSClient implements IScreenShare {
        private static final Logger log = 
LoggerFactory.getLogger(RTMPTSScreenShare.class);
 
-       private final CoreScreenShare core;
+       private final Core core;
 
-       public RTMPTSScreenShare(CoreScreenShare core, boolean secure) {
+       public RTMPTSScreenShare(Core core, boolean secure) {
                this.core = core;
        };
 

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/RTMPTScreenShare.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/RTMPTScreenShare.java?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/RTMPTScreenShare.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/RTMPTScreenShare.java
 Wed Sep 14 05:24:18 2016
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.openmeetings.screen.webstart;
+package org.apache.openmeetings.screenshare;
 
 import org.red5.client.net.rtmpt.RTMPTClient;
 import org.red5.server.net.ICommand;
@@ -29,9 +29,9 @@ import org.slf4j.LoggerFactory;
 public class RTMPTScreenShare extends RTMPTClient implements IScreenShare {
        private static final Logger log = 
LoggerFactory.getLogger(RTMPTScreenShare.class);
 
-       private final CoreScreenShare core;
+       private final Core core;
 
-       public RTMPTScreenShare(CoreScreenShare core) {
+       public RTMPTScreenShare(Core core) {
                this.core = core;
        };
 

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/ScreenV1Encoder.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/ScreenV1Encoder.java?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/ScreenV1Encoder.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/ScreenV1Encoder.java
 Wed Sep 14 05:24:18 2016
@@ -16,10 +16,10 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.openmeetings.screen.webstart;
+package org.apache.openmeetings.screenshare;
 
-import static 
org.apache.openmeetings.screen.webstart.gui.ScreenDimensions.resizeX;
-import static 
org.apache.openmeetings.screen.webstart.gui.ScreenDimensions.resizeY;
+import static org.apache.openmeetings.screenshare.gui.ScreenDimensions.resizeX;
+import static org.apache.openmeetings.screenshare.gui.ScreenDimensions.resizeY;
 import static org.red5.io.IoConstants.FLAG_CODEC_SCREEN;
 import static org.red5.io.IoConstants.FLAG_FRAMETYPE_INTERFRAME;
 import static org.red5.io.IoConstants.FLAG_FRAMETYPE_KEYFRAME;

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/BlankArea.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/BlankArea.java?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/BlankArea.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/BlankArea.java
 Wed Sep 14 05:24:18 2016
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.openmeetings.screen.webstart.gui;
+package org.apache.openmeetings.screenshare.gui;
 
 import javax.swing.*;
 import java.awt.Dimension;

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/MouseListenerable.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/MouseListenerable.java?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/MouseListenerable.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/MouseListenerable.java
 Wed Sep 14 05:24:18 2016
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.openmeetings.screen.webstart.gui;
+package org.apache.openmeetings.screenshare.gui;
 
 import java.awt.event.MouseAdapter;
 

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/NumberSpinner.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/NumberSpinner.java?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/NumberSpinner.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/NumberSpinner.java
 Wed Sep 14 05:24:18 2016
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.openmeetings.screen.webstart.gui;
+package org.apache.openmeetings.screenshare.gui;
 
 import javax.swing.JSpinner;
 import javax.swing.SpinnerNumberModel;

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenDimensions.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenDimensions.java?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenDimensions.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenDimensions.java
 Wed Sep 14 05:24:18 2016
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.openmeetings.screen.webstart.gui;
+package org.apache.openmeetings.screenshare.gui;
 
 import java.awt.Dimension;
 import java.awt.Toolkit;

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenHeightMouseListener.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenHeightMouseListener.java?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenHeightMouseListener.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenHeightMouseListener.java
 Wed Sep 14 05:24:18 2016
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.openmeetings.screen.webstart.gui;
+package org.apache.openmeetings.screenshare.gui;
 
 import java.awt.Component;
 import java.awt.Cursor;

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenKeyListener.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenKeyListener.java?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenKeyListener.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenKeyListener.java
 Wed Sep 14 05:24:18 2016
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.openmeetings.screen.webstart.gui;
+package org.apache.openmeetings.screenshare.gui;
 
 import java.awt.event.KeyEvent;
 import java.awt.event.KeyListener;

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenMouseListener.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenMouseListener.java?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenMouseListener.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenMouseListener.java
 Wed Sep 14 05:24:18 2016
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.openmeetings.screen.webstart.gui;
+package org.apache.openmeetings.screenshare.gui;
 
 import java.awt.Component;
 import java.awt.Cursor;

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenSharerFrame.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenSharerFrame.java?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenSharerFrame.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenSharerFrame.java
 Wed Sep 14 05:24:18 2016
@@ -16,11 +16,11 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.openmeetings.screen.webstart.gui;
+package org.apache.openmeetings.screenshare.gui;
 
-import static 
org.apache.openmeetings.screen.webstart.gui.ScreenDimensions.ROUND_VALUE;
-import static 
org.apache.openmeetings.screen.webstart.gui.ScreenDimensions.resizeX;
-import static 
org.apache.openmeetings.screen.webstart.gui.ScreenDimensions.resizeY;
+import static 
org.apache.openmeetings.screenshare.gui.ScreenDimensions.ROUND_VALUE;
+import static org.apache.openmeetings.screenshare.gui.ScreenDimensions.resizeX;
+import static org.apache.openmeetings.screenshare.gui.ScreenDimensions.resizeY;
 import static org.slf4j.LoggerFactory.getLogger;
 
 import java.awt.AWTException;
@@ -56,8 +56,8 @@ import javax.swing.event.ChangeListener;
 import javax.swing.event.DocumentEvent;
 import javax.swing.event.DocumentListener;
 
-import org.apache.openmeetings.screen.webstart.CoreScreenShare;
-import 
org.apache.openmeetings.screen.webstart.gui.ScreenDimensions.ScreenQuality;
+import org.apache.openmeetings.screenshare.Core;
+import org.apache.openmeetings.screenshare.gui.ScreenDimensions.ScreenQuality;
 import org.slf4j.Logger;
 
 public class ScreenSharerFrame extends JFrame {
@@ -191,8 +191,8 @@ public class ScreenSharerFrame extends J
                private static final long serialVersionUID = 1L;
 
                public VerticalSlider() {
-                       ImageIcon iUp = new 
ImageIcon(ScreenSharerFrame.class.getResource("/org/apache/openmeetings/screen/up.png"));
-                       ImageIcon iDown = new 
ImageIcon(ScreenSharerFrame.class.getResource("/org/apache/openmeetings/screen/down.png"));
+                       ImageIcon iUp = new 
ImageIcon(ScreenSharerFrame.class.getResource("up.png"));
+                       ImageIcon iDown = new 
ImageIcon(ScreenSharerFrame.class.getResource("down.png"));
                        setSize(16, 32);
                        JLabel jUp = new JLabel(iUp);
                        jUp.setBounds(0, 0, 16, 16);
@@ -207,8 +207,8 @@ public class ScreenSharerFrame extends J
                private static final long serialVersionUID = 1L;
 
                public HorizontalSlider() {
-                       ImageIcon iLeft = new 
ImageIcon(ScreenSharerFrame.class.getResource("/org/apache/openmeetings/screen/previous.png"));
-                       ImageIcon iRight = new 
ImageIcon(ScreenSharerFrame.class.getResource("/org/apache/openmeetings/screen/next.png"));
+                       ImageIcon iLeft = new 
ImageIcon(ScreenSharerFrame.class.getResource("previous.png"));
+                       ImageIcon iRight = new 
ImageIcon(ScreenSharerFrame.class.getResource("next.png"));
                        setSize(32, 16);
                        JLabel jLeft = new JLabel(iLeft);
                        jLeft.setBounds(0, 0, 16, 16);
@@ -228,7 +228,7 @@ public class ScreenSharerFrame extends J
         * @throws AWTException 
         * @throws IOException 
         */
-       public ScreenSharerFrame(final CoreScreenShare core, String[] 
textLabels) throws AWTException {
+       public ScreenSharerFrame(final Core core, String[] textLabels) throws 
AWTException {
                setTitle(getTextLabel(textLabels, 0)); //#id 730
                setBackground(Color.WHITE);
                setResizable(false);
@@ -261,8 +261,8 @@ public class ScreenSharerFrame extends J
                reduceYLabel = getTextLabel(textLabels, 32); //#id 1474
                recordingTipLabel = getTextLabel(textLabels, 35); //#id 1477
                publishingTipLabel = getTextLabel(textLabels, 34); //#id 1476
-               startIcon = new 
ImageIcon(ScreenSharerFrame.class.getResource("/org/apache/openmeetings/screen/play.png"));
-               stopIcon = new 
ImageIcon(ScreenSharerFrame.class.getResource("/org/apache/openmeetings/screen/stop.png"));
+               startIcon = new ImageIcon(getClass().getResource("play.png"));
+               stopIcon = new ImageIcon(getClass().getResource("stop.png"));
                btnStartStopSharing = new JButton(startSharingLabel);
                btnStartStopSharing.setToolTipText(startSharingLabel);
                btnStartStopSharing.setIcon(startIcon);
@@ -273,14 +273,14 @@ public class ScreenSharerFrame extends J
                                if (sharingStarted) {
                                        if (!sharingActionRequested) {
                                                sharingActionRequested = true;
-                                               core.streamingStop();
+                                               core.sharingStop();
                                        } else {
                                                logger.warn("Sharing action is 
already requested");
                                        }
                                } else {
                                        if (!sharingActionRequested) {
                                                sharingActionRequested = true;
-                                               core.streamingStart();
+                                               core.sharingStart();
                                        } else {
                                                logger.warn("Sharing action is 
already requested");
                                        }

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenWidthMouseListener.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenWidthMouseListener.java?rev=1760631&r1=1760630&r2=1760631&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenWidthMouseListener.java
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/ScreenWidthMouseListener.java
 Wed Sep 14 05:24:18 2016
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.openmeetings.screen.webstart.gui;
+package org.apache.openmeetings.screenshare.gui;
 
 import java.awt.Component;
 import java.awt.Cursor;



Reply via email to