Merge pull request #658 from ritzalam/fix-issue-1953
- fix https://code.google.com/p/bigbluebutton/issues/detail?id=1953
This commit is contained in:
commit
9fba1a2120
Binary file not shown.
Binary file not shown.
@ -3,6 +3,9 @@ if (!window.console.log) window.console.log = function () { };
|
||||
|
||||
function startApplet(IP, roomNumber, fullScreen, useSVC2)
|
||||
{
|
||||
var deskshareElement = document.getElementById("deskshare");
|
||||
if (deskshareElement == null) {
|
||||
|
||||
console.log("Starting deskshare applet.");
|
||||
var div = document.createElement("div");
|
||||
div.id = "deskshare";
|
||||
@ -20,15 +23,40 @@ function startApplet(IP, roomNumber, fullScreen, useSVC2)
|
||||
"<param name=\"permissions\" value=\"all-permissions\"/>" +
|
||||
"</applet>";
|
||||
document.body.appendChild(div);
|
||||
} else {
|
||||
console.log("Deskshare applet element already exists.");
|
||||
var div = document.getElementById("deskshare");
|
||||
if (div.parentNode) {
|
||||
// Just rewrite the applet tag to kick off the applet. We don't remove the applet tag
|
||||
// when desktop sharing is stopped to prevent Firefox (38.0.5) from asking for user permissions
|
||||
// again resulting in the page reloading. (ralam june 17, 2015)
|
||||
// https://code.google.com/p/bigbluebutton/issues/detail?id=1953
|
||||
div.innerHTML =
|
||||
"<applet code=\"org.bigbluebutton.deskshare.client.DeskShareApplet.class\"" +
|
||||
"id=\"DeskShareApplet\" width=\"100\" height=\"10\" archive=\"bbb-deskshare-applet-0.9.0.jar\">" +
|
||||
"<param name=\"ROOM\" value=\"" + roomNumber + "\"/>" +
|
||||
"<param name=\"IP\" value=\"" + IP + "\"/>" +
|
||||
"<param name=\"PORT\" value=\"9123\"/>" +
|
||||
"<param name=\"SCALE\" value=\"0.8\"/>" +
|
||||
"<param name=\"FULL_SCREEN\" value=\"" + fullScreen + "\"/>" +
|
||||
"<param name=\"SVC2\" value=\"" + useSVC2 + "\"/>" +
|
||||
"<param name=\"JavaVersion\" value=\"1.7.0_51\"/>" +
|
||||
"<param name=\"permissions\" value=\"all-permissions\"/>" +
|
||||
"</applet>";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function removeFrame () {
|
||||
var div = document.getElementById("deskshare");
|
||||
if (div.parentNode) {
|
||||
// Need to set the innerHTML otherwise the applet will restart in IE.
|
||||
// see https://code.google.com/p/bigbluebutton/issues/detail?id=1776
|
||||
div.innerHTML = "";
|
||||
div.parentNode.removeChild(div);
|
||||
// Do NOT remove the applet tag as it makes Firefox (38.0.5) prompt for
|
||||
// permissions again resulting in the page reloading. (ralam june 17, 2015)
|
||||
// div.innerHTML = "";
|
||||
// div.parentNode.removeChild(div);
|
||||
}
|
||||
}
|
||||
|
||||
@ -142,4 +170,4 @@ function checkJavaVersion(minJavaVersion) {
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -101,6 +101,8 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
||||
[Bindable] private var baseIndex:int;
|
||||
[Bindable] private var dsOptions:DeskshareOptions;
|
||||
|
||||
private var calledStopApplet:Boolean = false;
|
||||
|
||||
private function init():void {
|
||||
dsOptions = new DeskshareOptions();
|
||||
baseIndex = dsOptions.baseTabIndex;
|
||||
@ -340,15 +342,24 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
||||
closeWindow();
|
||||
}
|
||||
|
||||
private function closeWindow():void {
|
||||
ExternalInterface.call("stopApplet");
|
||||
dispatchEvent(new ShareWindowEvent(ShareWindowEvent.CLOSE));
|
||||
}
|
||||
|
||||
private function restartJava():void {
|
||||
ExternalInterface.call("stopApplet");
|
||||
shareScreen(sharingFullScreen);
|
||||
}
|
||||
private function callStopApplet():void {
|
||||
if (!calledStopApplet) {
|
||||
calledStopApplet = true;
|
||||
trace("Calling stopApplet in callStopApplet()");
|
||||
ExternalInterface.call("stopApplet");
|
||||
}
|
||||
}
|
||||
private function closeWindow():void {
|
||||
trace("Calling stopApplet in closeWindow()");
|
||||
callStopApplet();
|
||||
dispatchEvent(new ShareWindowEvent(ShareWindowEvent.CLOSE));
|
||||
}
|
||||
|
||||
private function restartJava():void {
|
||||
trace("Calling stopApplet in restartJava()");
|
||||
callStopApplet();
|
||||
shareScreen(sharingFullScreen);
|
||||
}
|
||||
|
||||
private function handleDeskshareAppletLaunchedEvent(e:DeskshareAppletLaunchedEvent):void {
|
||||
if (javaTimer && javaTimer.running) {
|
||||
|
@ -192,7 +192,9 @@ public class DeskShareApplet extends JApplet implements ClientListener {
|
||||
}
|
||||
|
||||
public void onClientStop(ExitCode reason) {
|
||||
// determine if client is disconnected _PTS_272_
|
||||
client.stop();
|
||||
|
||||
/*
|
||||
if ( ExitCode.CONNECTION_TO_DESKSHARE_SERVER_DROPPED == reason ){
|
||||
JFrame pframe = new JFrame("Desktop Sharing Disconneted");
|
||||
if ( null != pframe ){
|
||||
@ -206,6 +208,7 @@ public class DeskShareApplet extends JApplet implements ClientListener {
|
||||
}else{
|
||||
client.stop();
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user