Revert "Revert "Added Java check to the configuration notifications""
This reverts commit 82545a03f3
.
This commit is contained in:
parent
87151b5513
commit
815be28d0b
@ -451,17 +451,26 @@ DataGrid {
|
||||
|
||||
}
|
||||
|
||||
.presentationUploadFileFormatHintBoxStyle, .desktopShareUsingChromeOnMacHintBoxStyle {
|
||||
.presentationUploadFileFormatHintBoxStyle {
|
||||
backgroundColor: #D4D4D4;
|
||||
dropShadowEnabled: false;
|
||||
paddingLeft: 10;
|
||||
paddingRight: 10
|
||||
}
|
||||
|
||||
.presentationUploadFileFormatHintTextStyle, .desktopShareUsingChromeOnMacHintTextStyle {
|
||||
.presentationUploadFileFormatHintTextStyle {
|
||||
fontWeight: bold;
|
||||
}
|
||||
|
||||
.desktopShareTextStyle {
|
||||
fontSize: 11;
|
||||
fontWeight: bold;
|
||||
}
|
||||
|
||||
.chromeJavaHelpImage {
|
||||
imageSource: Embed(source='assets/images/chromePluginBlocked.png');
|
||||
}
|
||||
|
||||
.cameraDisplaySettingsWindowStyle {
|
||||
borderColor: #b9babc;
|
||||
borderAlpha: 1;
|
||||
|
Binary file not shown.
After Width: | Height: | Size: 7.2 KiB |
@ -105,6 +105,10 @@ bbb.clientstatus.flash.title = Flash Player
|
||||
bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version.
|
||||
bbb.clientstatus.webrtc.title = Audio
|
||||
bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio.
|
||||
bbb.clientstatus.java.title = Java
|
||||
bbb.clientstatus.java.notdetected = Java version not detected.
|
||||
bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature.
|
||||
bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature.
|
||||
bbb.window.minimizeBtn.toolTip = Minimize
|
||||
bbb.window.maximizeRestoreBtn.toolTip = Maximize
|
||||
bbb.window.closeBtn.toolTip = Close
|
||||
@ -265,10 +269,9 @@ bbb.desktopPublish.chromeOnMacUnsupportedHint = Desktop sharing is not currently
|
||||
bbb.desktopPublish.minimizeBtn.toolTip = Minimize
|
||||
bbb.desktopPublish.minimizeBtn.accessibilityName = Minimize the Desktop Sharing Publish Window
|
||||
bbb.desktopPublish.maximizeRestoreBtn.accessibilityName = Maximize the Desktop Sharing Publish Window
|
||||
bbb.desktopPublish.javaRequiredLabel = Requires Java 7u51 (or later) to run.
|
||||
bbb.desktopPublish.javaTestLinkLabel = Test Java
|
||||
bbb.desktopPublish.javaTestLinkLabel.tooltip = Test Your Java Version
|
||||
bbb.desktopPublish.javaTestLinkLabel.tooltip.accessibility = Test Your Java Version
|
||||
bbb.desktopPublish.chromeHint.title = Chrome may need your permission.
|
||||
bbb.desktopPublish.chromeHint.message = Select the plug-in icon (upper right-hand corner of Chrome), un-block plug-ins, and then select 'Retry'.
|
||||
bbb.desktopPublish.chromeHint.button = Retry
|
||||
bbb.desktopView.title = Desktop Sharing
|
||||
bbb.desktopView.fitToWindow = Fit to Window
|
||||
bbb.desktopView.actualSize = Display actual size
|
||||
|
@ -10,7 +10,7 @@
|
||||
<language userSelectionEnabled="true" />
|
||||
<skinning enabled="true" url="http://HOST/client/branding/css/BBBDefault.css.swf" />
|
||||
<shortcutKeys showButton="true" />
|
||||
<browserVersions chrome="CHROME_VERSION" firefox="FIREFOX_VERSION" flash="FLASH_VERSION" />
|
||||
<browserVersions chrome="CHROME_VERSION" firefox="FIREFOX_VERSION" flash="FLASH_VERSION" java="1.7.0_51" />
|
||||
<layout showLogButton="false" showVideoLayout="false" showResetLayout="true" defaultLayout="bbb.layout.name.defaultlayout"
|
||||
showToolbar="true" showFooter="true" showMeetingName="true" showHelpButton="true"
|
||||
showLogoutWindow="true" showLayoutTools="true" showNetworkMonitor="false" confirmLogout="true"
|
||||
@ -40,7 +40,7 @@
|
||||
|
||||
|
||||
<module name="DeskShareModule"
|
||||
url="http://HOST/client/DeskShareModule.swf?v=4105"
|
||||
url="http://HOST/client/DeskShareModule.swf?v=VERSION"
|
||||
uri="rtmp://HOST/deskShare"
|
||||
showButton="true"
|
||||
autoStart="false"
|
||||
|
@ -17,9 +17,14 @@
|
||||
width: 1px !important;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
#deployJavaPlugin {
|
||||
display : none;
|
||||
}
|
||||
</style>
|
||||
|
||||
<script type="text/javascript" src="swfobject/swfobject.js"></script>
|
||||
<script src="lib/deployJava.js?v=VERSION" language="javascript"></script>
|
||||
<script type="text/javascript">
|
||||
//swfobject.registerObject("BigBlueButton", "11", "expressInstall.swf");
|
||||
var flashvars = {};
|
||||
|
BIN
bigbluebutton-client/resources/prod/bbb-deskshare-applet-0.9.0.jar
Normal file → Executable file
BIN
bigbluebutton-client/resources/prod/bbb-deskshare-applet-0.9.0.jar
Normal file → Executable file
Binary file not shown.
BIN
bigbluebutton-client/resources/prod/bbb-deskshare-applet-unsigned-0.9.0.jar
Normal file → Executable file
BIN
bigbluebutton-client/resources/prod/bbb-deskshare-applet-unsigned-0.9.0.jar
Normal file → Executable file
Binary file not shown.
@ -560,6 +560,13 @@
|
||||
}
|
||||
}
|
||||
|
||||
BBB.javaAppletLaunched = function() {
|
||||
var swfObj = getSwfObj();
|
||||
if (swfObj) {
|
||||
swfObj.javaAppletLaunched();
|
||||
}
|
||||
}
|
||||
|
||||
// Third-party JS apps should use this to query if the BBB SWF file is ready to handle calls.
|
||||
BBB.isSwfClientReady = function() {
|
||||
return swfReady;
|
||||
|
@ -41,7 +41,6 @@ function stopApplet(){
|
||||
removeFrame();
|
||||
}
|
||||
|
||||
function checkForJava(){
|
||||
// if (navigator.javaEnabled() || window.navigator.javaEnabled())
|
||||
return 1;
|
||||
function appletStartupCallback() {
|
||||
BBB.javaAppletLaunched();
|
||||
}
|
||||
|
2
bigbluebutton-client/resources/prod/lib/deployJava.js
Executable file
2
bigbluebutton-client/resources/prod/lib/deployJava.js
Executable file
File diff suppressed because one or more lines are too long
@ -37,6 +37,8 @@ package org.bigbluebutton.main.api
|
||||
import org.bigbluebutton.main.model.users.events.KickUserEvent;
|
||||
import org.bigbluebutton.main.model.users.events.RaiseHandEvent;
|
||||
import org.bigbluebutton.main.model.users.events.RoleChangeEvent;
|
||||
import org.bigbluebutton.modules.deskshare.events.DeskshareAppletLaunchedEvent;
|
||||
import org.bigbluebutton.modules.deskshare.utils.JavaCheck;
|
||||
import org.bigbluebutton.modules.phone.events.AudioSelectionWindowEvent;
|
||||
import org.bigbluebutton.modules.phone.events.FlashCallConnectedEvent;
|
||||
import org.bigbluebutton.modules.phone.events.FlashCallDisconnectedEvent;
|
||||
@ -111,6 +113,7 @@ package org.bigbluebutton.main.api
|
||||
ExternalInterface.addCallback("webRTCWebcamRequest", handleWebRTCWebcamRequest);
|
||||
ExternalInterface.addCallback("webRTCWebcamRequestSuccess", handleWebRTCWebcamRequestSuccess);
|
||||
ExternalInterface.addCallback("webRTCWebcamRequestFail", handleWebRTCWebcamRequestFail);
|
||||
ExternalInterface.addCallback("javaAppletLaunched", handleJavaAppletLaunched);
|
||||
}
|
||||
|
||||
// Tell out JS counterpart that we are ready.
|
||||
@ -483,5 +486,11 @@ package org.bigbluebutton.main.api
|
||||
trace(LOG + "handleWebRTCWebcamRequest: received");
|
||||
_dispatcher.dispatchEvent(new WebRTCWebcamRequestEvent(WebRTCWebcamRequestEvent.WEBRTC_WEBCAM_REQUEST));
|
||||
}
|
||||
|
||||
private function handleJavaAppletLaunched():void
|
||||
{
|
||||
trace(LOG + "handleJavaAppletLaunched: received");
|
||||
_dispatcher.dispatchEvent(new DeskshareAppletLaunchedEvent(DeskshareAppletLaunchedEvent.APPLET_LAUNCHED));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -20,7 +20,7 @@
|
||||
break
|
||||
}
|
||||
titleLbl.text = value.title;
|
||||
messageTxt.text = value.message;
|
||||
messageTxt.htmlText = value.message;
|
||||
|
||||
validateNow();
|
||||
}
|
||||
|
@ -178,6 +178,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
if (!showFooterOpt) {
|
||||
footerHeight = 0;
|
||||
controlBar.visible = false;
|
||||
}
|
||||
}
|
||||
|
||||
@ -637,8 +638,6 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
||||
ls.x = point1.x - (ls.width/2);
|
||||
ls.y = point1.y - (ls.height/2);
|
||||
}
|
||||
|
||||
|
||||
]]>
|
||||
</mx:Script>
|
||||
|
||||
|
@ -26,7 +26,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
||||
click="handleButtonClick();"
|
||||
move="handleMove();"
|
||||
creationComplete="onCreationComplete();"
|
||||
visible="false">
|
||||
visible="false" includeInLayout="false">
|
||||
<mate:Listener type="{ClientStatusEvent.SUCCESS_MESSAGE_EVENT}" method="handleSuccessMessageEvent" />
|
||||
<mate:Listener type="{ClientStatusEvent.WARNING_MESSAGE_EVENT}" method="handleWarningMessageEvent" />
|
||||
<mate:Listener type="{ClientStatusEvent.FAIL_MESSAGE_EVENT}" method="handleFailMessageEvent" />
|
||||
@ -78,7 +78,8 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
||||
}
|
||||
|
||||
private function showNotification():void {
|
||||
visible = true;
|
||||
if (parent.visible) {
|
||||
visible = includeInLayout = true;
|
||||
|
||||
if (hideTimer.running) hideTimer.reset();
|
||||
hideTimer.start()
|
||||
@ -88,6 +89,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
||||
handleMove();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private function isUniqueMessage(type:String, title:String, message:String):Boolean {
|
||||
for (var i:Number=0; i<messages.length; i++) {
|
||||
|
@ -0,0 +1,14 @@
|
||||
package org.bigbluebutton.modules.deskshare.events
|
||||
{
|
||||
import flash.events.Event;
|
||||
|
||||
public class DeskshareAppletLaunchedEvent extends Event
|
||||
{
|
||||
public static const APPLET_LAUNCHED:String = "DESKSHARE_APPLET_LAUNCHED_EVENT";
|
||||
|
||||
public function DeskshareAppletLaunchedEvent(type:String, bubbles:Boolean=false, cancelable:Boolean=false)
|
||||
{
|
||||
super(type, bubbles, cancelable);
|
||||
}
|
||||
}
|
||||
}
|
104
bigbluebutton-client/src/org/bigbluebutton/modules/deskshare/utils/JavaCheck.as
Executable file
104
bigbluebutton-client/src/org/bigbluebutton/modules/deskshare/utils/JavaCheck.as
Executable file
@ -0,0 +1,104 @@
|
||||
/**
|
||||
* WebMeeting open source conferencing system - http://www.speakserve.org/
|
||||
*
|
||||
* Copyright (c) 2013 SpeakServe Ltd. and by respective authors (see below).
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify it under the
|
||||
* terms of the GNU Lesser General Public License as published by the Free Software
|
||||
* Foundation; either version 3.0 of the License, or (at your option) any later
|
||||
* version.
|
||||
*
|
||||
* WebMeeting is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
* PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License along
|
||||
* with WebMeeting; if not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
package org.bigbluebutton.modules.deskshare.utils
|
||||
{
|
||||
import com.asfusion.mate.events.Dispatcher;
|
||||
|
||||
import flash.external.ExternalInterface;
|
||||
import flash.utils.setTimeout;
|
||||
|
||||
import org.bigbluebutton.core.BBB;
|
||||
import org.bigbluebutton.main.events.ClientStatusEvent;
|
||||
import org.bigbluebutton.util.i18n.ResourceUtil;
|
||||
|
||||
public class JavaCheck {
|
||||
public static function checkJava():String {
|
||||
var dispatcher : Dispatcher = new Dispatcher();
|
||||
var java_version:String = "1.7.0_51";
|
||||
|
||||
var xml:XML = BBB.initConfigManager().config.browserVersions;
|
||||
if (xml.@java != undefined) {
|
||||
java_version = xml.@java.toString();
|
||||
}
|
||||
|
||||
try {
|
||||
var javas : Array = JavaCheck.getJREs();
|
||||
} catch ( e : Error ) {
|
||||
dispatcher.dispatchEvent(new ClientStatusEvent(ClientStatusEvent.FAIL_MESSAGE_EVENT, ResourceUtil.getInstance().getString("bbb.clientstatus.java.title"), ResourceUtil.getInstance().getString("bbb.clientstatus.java.notdetected")));
|
||||
return ResourceUtil.getInstance().getString("bbb.clientstatus.java.notdetected");
|
||||
}
|
||||
|
||||
if (javas.length == 0) {
|
||||
dispatcher.dispatchEvent(new ClientStatusEvent(ClientStatusEvent.FAIL_MESSAGE_EVENT, ResourceUtil.getInstance().getString("bbb.clientstatus.java.title"), ResourceUtil.getInstance().getString("bbb.clientstatus.java.notinstalled")));
|
||||
return ResourceUtil.getInstance().getString("bbb.clientstatus.java.notinstalled");
|
||||
}
|
||||
|
||||
var highestJava : String = javas[0];
|
||||
for each (var java : String in javas) {
|
||||
var highest : Array = highestJava.split(".");
|
||||
var iter : Array = java.split(".");
|
||||
|
||||
if (Number(iter[0]) > Number(highest[0])) {
|
||||
highestJava = java;
|
||||
} else if (Number(iter[0]) == Number(highest[0]) && Number(iter[1]) > Number(highest[1])) {
|
||||
highestJava = java;
|
||||
} else if (Number(iter[0]) == Number(highest[0]) && Number(iter[1]) == Number(highest[1])) {
|
||||
var iterMinor : Number = Number((iter[2] as String).split("_")[1]);
|
||||
var highestMinor : Number = Number((highest[2] as String).split("_")[1]);
|
||||
if (iterMinor > highestMinor)
|
||||
{
|
||||
highestJava = java;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var passedJava : Boolean = true;
|
||||
var required : Array = java_version.split(".");
|
||||
highest = highestJava.split(".");
|
||||
if (Number(required[0]) > Number(highest[0])) {
|
||||
passedJava = false;
|
||||
} else if (Number(required[0]) == Number(highest[0]) && Number(required[1]) > Number(highest[1])) {
|
||||
passedJava = false;
|
||||
} else if (Number(required[0]) == Number(highest[0]) && Number(required[1]) == Number(highest[1])) {
|
||||
var requiredMinor : Number = Number((required[2] as String).split("_")[1]);
|
||||
var highestJavaMinor : Number = Number((highest[2] as String).split("_")[1]);
|
||||
if (requiredMinor > highestJavaMinor)
|
||||
{
|
||||
passedJava = false;
|
||||
}
|
||||
}
|
||||
|
||||
if (!passedJava) {
|
||||
dispatcher.dispatchEvent(new ClientStatusEvent(ClientStatusEvent.FAIL_MESSAGE_EVENT, ResourceUtil.getInstance().getString("bbb.clientstatus.java.title"), ResourceUtil.getInstance().getString("bbb.clientstatus.java.oldversion")));
|
||||
return ResourceUtil.getInstance().getString("bbb.clientstatus.java.oldversion");
|
||||
} else {
|
||||
// Java success
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
private static function getJREs():Array{
|
||||
var installedJREs:Array = ExternalInterface.call("deployJava.getJREs");
|
||||
|
||||
if (installedJREs == null) throw new Error("Javascript files not found.");
|
||||
|
||||
return installedJREs;
|
||||
}
|
||||
}
|
||||
}
|
@ -29,7 +29,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
||||
initialize="init()"
|
||||
creationComplete="onCreationComplete()"
|
||||
verticalScrollPolicy="off" horizontalScrollPolicy="off"
|
||||
width="365" height="320"
|
||||
width="365" height="350"
|
||||
title="{ResourceUtil.getInstance().getString('bbb.desktopPublish.title')}"
|
||||
resizable="false">
|
||||
|
||||
@ -40,7 +40,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
||||
<mate:Listener type="{ViewStreamEvent.STOP}" method="closePublishWindow" />
|
||||
<mate:Listener type="{LocaleChangeEvent.LOCALE_CHANGED}" method="localeChanged" />
|
||||
<mate:Listener type="{StopSharingButtonEvent.STOP_SHARING}" method="stopSharingEvent" />
|
||||
|
||||
<mate:Listener type="{DeskshareAppletLaunchedEvent.APPLET_LAUNCHED}" method="handleDeskshareAppletLaunchedEvent" />
|
||||
<mate:Listener type="{ShortcutEvent.REMOTE_FOCUS_DESKTOP}" method="remoteFocus" />
|
||||
|
||||
|
||||
@ -50,7 +50,9 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import flexlib.mdi.events.MDIWindowEvent;
|
||||
import flexlib.scheduling.scheduleClasses.BackgroundItem;
|
||||
|
||||
import mx.core.UIComponent;
|
||||
|
||||
import org.bigbluebutton.common.Images;
|
||||
import org.bigbluebutton.common.LogUtil;
|
||||
import org.bigbluebutton.common.events.LocaleChangeEvent;
|
||||
@ -61,11 +63,13 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
||||
import org.bigbluebutton.main.views.MainCanvas;
|
||||
import org.bigbluebutton.modules.deskshare.events.AppletStartedEvent;
|
||||
import org.bigbluebutton.modules.deskshare.events.CursorEvent;
|
||||
import org.bigbluebutton.modules.deskshare.events.DeskshareAppletLaunchedEvent;
|
||||
import org.bigbluebutton.modules.deskshare.events.ShareWindowEvent;
|
||||
import org.bigbluebutton.modules.deskshare.events.StopSharingButtonEvent;
|
||||
import org.bigbluebutton.modules.deskshare.events.StreamEvent;
|
||||
import org.bigbluebutton.modules.deskshare.events.ViewStreamEvent;
|
||||
import org.bigbluebutton.modules.deskshare.model.DeskshareOptions;
|
||||
import org.bigbluebutton.modules.deskshare.utils.JavaCheck;
|
||||
import org.bigbluebutton.util.i18n.ResourceUtil;
|
||||
|
||||
public static const SCALE:Number = 5;
|
||||
@ -92,6 +96,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
||||
private var captureWidth:Number = Capabilities.screenResolutionX;
|
||||
private var autoStart:Boolean = false;
|
||||
private var globalDispatcher:Dispatcher = new Dispatcher();
|
||||
private var javaTimer:Timer;
|
||||
|
||||
[Bindable] private var cursor:Sprite;
|
||||
[Bindable] private var baseIndex:int;
|
||||
@ -109,9 +114,15 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
||||
cursor.graphics.lineStyle(6, 0xFF0000, 0.6);
|
||||
cursor.graphics.drawCircle(0,0,3);
|
||||
|
||||
var javaIssue:String = JavaCheck.checkJava();
|
||||
|
||||
if (isUsingLessThanChrome38OnMac()) {
|
||||
setCurrentState("chromeOnMacWarningState");
|
||||
}
|
||||
else if (javaIssue != null) {
|
||||
setCurrentState("javaIssueWarningState");
|
||||
javaIssueWarningStateLbl.htmlText = javaIssue;
|
||||
}
|
||||
else {
|
||||
setCurrentState("dispFullRegionControlBar");
|
||||
}
|
||||
@ -168,6 +179,9 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
||||
btnFSPublish.enabled = false;
|
||||
btnRegionPublish.enabled = false;
|
||||
// useSVC2Check.enabled = false;
|
||||
javaTimer = new Timer(3000, 1);
|
||||
javaTimer.addEventListener(TimerEvent.TIMER, onJavaTimer);
|
||||
javaTimer.start();
|
||||
startSharing(connection, uri, room, fullScreen);
|
||||
}
|
||||
|
||||
@ -203,6 +217,12 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
||||
closeWindow();
|
||||
}
|
||||
|
||||
private function onJavaTimer(e:TimerEvent):void {
|
||||
var browser:Array = ExternalInterface.call("determineBrowser");
|
||||
if (browser[0] == "Chrome")
|
||||
javaHelpArea.visible = javaHelpArea.includeInLayout = true;
|
||||
}
|
||||
|
||||
private function onUpdateCursorEvent(event:CursorEvent):void {
|
||||
// DO NOT compute the x and y coordinate and assign directly to the cursorImg
|
||||
// as it results in a flickering and jerky mouse pointer (ralam jun 10, 2010).
|
||||
@ -322,6 +342,18 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
||||
dispatchEvent(new ShareWindowEvent(ShareWindowEvent.CLOSE));
|
||||
}
|
||||
|
||||
private function restartJava():void {
|
||||
ExternalInterface.call("stopApplet");
|
||||
shareScreen(sharingFullScreen);
|
||||
}
|
||||
|
||||
private function handleDeskshareAppletLaunchedEvent(e:DeskshareAppletLaunchedEvent):void {
|
||||
if (javaTimer && javaTimer.running) {
|
||||
javaTimer.stop();
|
||||
}
|
||||
javaHelpArea.visible = javaHelpArea.includeInLayout = false;
|
||||
}
|
||||
|
||||
/*
|
||||
* Override the close handler. We want the Event Map to send a message to
|
||||
* the MDIManager to close this window;
|
||||
@ -360,25 +392,23 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
||||
closeWindow();
|
||||
}
|
||||
|
||||
private function onCheckYourJavaClicked():void {
|
||||
var CHECK_JAVA_URL:String = BBB.initConfigManager().config.javaTest.url;
|
||||
navigateToURL(new URLRequest(CHECK_JAVA_URL));
|
||||
}
|
||||
private function isUsingLessThanChrome38OnMac():Boolean {
|
||||
var browser:Array = ExternalInterface.call("determineBrowser");
|
||||
|
||||
return ((browser[0] == "Chrome")
|
||||
&& (parseInt(browser[1]) <= 38)
|
||||
&& (Capabilities.os.indexOf("Mac") >= 0));
|
||||
return ((browser[0] == "Chrome") && (parseInt(browser[1]) <= 38) && (Capabilities.os.indexOf("Mac") >= 0));
|
||||
}
|
||||
]]>
|
||||
</mx:Script>
|
||||
|
||||
<!--http://stackoverflow.com/questions/369120/why-does-mxstates-have-trouble-being-resolved-to-a-component-implementation-->
|
||||
<mx:VBox id="javaHelpArea" includeInLayout="false" visible="false" height="100%" width="100%" verticalAlign="middle" horizontalAlign="center">
|
||||
<mx:Text width="80%" textAlign="center" styleName="desktopShareTextStyle" text="{ResourceUtil.getInstance().getString('bbb.desktopPublish.chromeHint.title')}" />
|
||||
<mx:Image id="javaHelpImg" styleName="chromeJavaHelpImage" source="{javaHelpImg.getStyle('imageSource')}" />
|
||||
<mx:Text width="80%" textAlign="center" styleName="desktopShareTextStyle" text="{ResourceUtil.getInstance().getString('bbb.desktopPublish.chromeHint.message')}" />
|
||||
<mx:Button label="{ResourceUtil.getInstance().getString('bbb.desktopPublish.chromeHint.button')}" click="restartJava()"/>
|
||||
</mx:VBox>
|
||||
<dspub:states>
|
||||
<mx:State name="dispFullRegionControlBar">
|
||||
<mx:AddChild>
|
||||
|
||||
<mx:ControlBar id="fullRegionBottomBar">
|
||||
<mx:VBox width="100%" height="100%" horizontalAlign="center">
|
||||
<mx:HBox horizontalAlign="center">
|
||||
@ -407,34 +437,22 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
|
||||
tabEnabled="false"/>
|
||||
<mx:Spacer width="100%"/>
|
||||
</mx:HBox>
|
||||
|
||||
|
||||
<mx:Label id="javaVersionLabel" styleName="javaVersionRequiredLabelStyle" text="{ResourceUtil.getInstance().getString('bbb.desktopPublish.javaRequiredLabel')}"/>
|
||||
<mx:LinkButton id="checkJavaBtn" label="{ResourceUtil.getInstance().getString('bbb.desktopPublish.javaTestLinkLabel')}" click="onCheckYourJavaClicked()" height="22"
|
||||
styleName="testJavaLinkButtonStyle" textDecoration="underline"
|
||||
toolTip="{ResourceUtil.getInstance().getString('bbb.desktopPublish.javaTestLinkLabel.tooltip')}"
|
||||
accessibilityDescription="{ResourceUtil.getInstance().getString('bbb.desktopPublish.javaTestLinkLabel.tooltip.accessibility')}"/>
|
||||
</mx:VBox>
|
||||
</mx:ControlBar>
|
||||
</mx:AddChild>
|
||||
</mx:State>
|
||||
<mx:State name="chromeOnMacWarningState">
|
||||
<mx:AddChild>
|
||||
<mx:VBox id="chromeOnMacWarningBottomBar" horizontalAlign="center" width="100%" height="100%" verticalAlign="bottom">
|
||||
<mx:HBox>
|
||||
<mx:Button id="chromeOnMacWarningCloseButton"
|
||||
toolTip="{ResourceUtil.getInstance().getString('bbb.desktopPublish.stop.tooltip')}"
|
||||
label="{ResourceUtil.getInstance().getString('bbb.desktopPublish.stop.label')}"
|
||||
visible="true"
|
||||
enabled="true"
|
||||
click="stopSharing()"
|
||||
/>
|
||||
<mx:Spacer width="100%"/>
|
||||
</mx:HBox>
|
||||
<mx:HBox horizontalAlign="center" width="300" styleName="desktopShareUsingChromeOnMacHintBoxStyle">
|
||||
<mx:Text id="chromeOnMacWarningLbl" width="100%" textAlign="center" text="{ResourceUtil.getInstance().getString('bbb.desktopPublish.chromeOnMacUnsupportedHint')}"
|
||||
styleName="desktopShareUsingChromeOnMacHintTextStyle" toolTip="{ResourceUtil.getInstance().getString('bbb.desktopPublish.chromeOnMacUnsupportedHint')}" />
|
||||
</mx:HBox>
|
||||
<mx:VBox height="100%" width="100%" verticalAlign="middle" horizontalAlign="center">
|
||||
<mx:Text id="chromeOnMacWarningLbl" width="80%" textAlign="center" styleName="desktopShareTextStyle"
|
||||
text="{ResourceUtil.getInstance().getString('bbb.desktopPublish.chromeOnMacUnsupportedHint')}" />
|
||||
</mx:VBox>
|
||||
</mx:AddChild>
|
||||
</mx:State>
|
||||
<mx:State name="javaIssueWarningState">
|
||||
<mx:AddChild>
|
||||
<mx:VBox height="100%" width="100%" verticalAlign="middle" horizontalAlign="center">
|
||||
<mx:Text id="javaIssueWarningStateLbl" width="80%" textAlign="center" styleName="desktopShareTextStyle" />
|
||||
</mx:VBox>
|
||||
</mx:AddChild>
|
||||
</mx:State>
|
||||
|
9
deskshare/applet/src/main/java/org/bigbluebutton/deskshare/client/DeskShareApplet.java
Normal file → Executable file
9
deskshare/applet/src/main/java/org/bigbluebutton/deskshare/client/DeskShareApplet.java
Normal file → Executable file
@ -26,6 +26,7 @@ import java.io.IOException;
|
||||
import java.net.URL;
|
||||
import java.security.*;
|
||||
import java.awt.Image;
|
||||
import netscape.javascript.*;
|
||||
|
||||
public class DeskShareApplet extends JApplet implements ClientListener {
|
||||
public static final String NAME = "DESKSHAREAPPLET: ";
|
||||
@ -94,6 +95,14 @@ public class DeskShareApplet extends JApplet implements ClientListener {
|
||||
icon = ImageIO.read(url);
|
||||
} catch (IOException e) {
|
||||
}
|
||||
|
||||
// Callback to JavaScript
|
||||
try {
|
||||
JSObject window = JSObject.getWindow(this);
|
||||
window.call("appletStartupCallback", new Object[]{});
|
||||
} catch (JSException jse) {
|
||||
jse.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
private String getJavaVersionRuntime() {
|
||||
|
Loading…
Reference in New Issue
Block a user