diff --git a/mozilla/modules/oji/public/nsIJVMManager.idl b/mozilla/modules/oji/public/nsIJVMManager.idl index e09c211a3ee..86f79263335 100644 --- a/mozilla/modules/oji/public/nsIJVMManager.idl +++ b/mozilla/modules/oji/public/nsIJVMManager.idl @@ -84,6 +84,11 @@ interface nsIJVMManager : nsISupports { */ void IsJavaEnabled(out boolean outEnabled); + /** + * Returns whether or not Java is enabled. + */ + boolean JavaEnabled(); + /** * Called from Java Console menu item. */ diff --git a/mozilla/modules/oji/src/nsJVMManager.cpp b/mozilla/modules/oji/src/nsJVMManager.cpp index b121e149d0d..38dd6a9c2fc 100644 --- a/mozilla/modules/oji/src/nsJVMManager.cpp +++ b/mozilla/modules/oji/src/nsJVMManager.cpp @@ -151,6 +151,14 @@ nsJVMManager::IsJavaEnabled(PRBool* outEnabled) return NS_OK; } +NS_METHOD +nsJVMManager::JavaEnabled(PRBool* outEnabled) +{ + nsJVMStatus status = GetJVMStatus(); + *outEnabled = (status == nsJVMStatus_Enabled || status == nsJVMStatus_Running); + return NS_OK; +} + NS_METHOD nsJVMManager::ShowJavaConsole(void) { diff --git a/mozilla/xpfe/communicator/resources/content/tasksOverlay.js b/mozilla/xpfe/communicator/resources/content/tasksOverlay.js index cb6e56312d2..0f4a077449d 100644 --- a/mozilla/xpfe/communicator/resources/content/tasksOverlay.js +++ b/mozilla/xpfe/communicator/resources/content/tasksOverlay.js @@ -21,9 +21,12 @@ * Peter Annema */ +var gJVMMgr = Components.classes['@mozilla.org/oji/jvm-mgr;1'] + .getService(Components.interfaces.nsIJVMManager) + function toNavigator() { - CycleWindow('navigator:browser', getBrowserURL()); + CycleWindow('navigator:browser', getBrowserURL()); } // Set up a lame hack to avoid opening two bookmarks. @@ -63,20 +66,22 @@ function toHistory() function toJavaScriptConsole() { - toOpenWindowByType("global:console", "chrome://global/content/console.xul"); + toOpenWindowByType("global:console", "chrome://global/content/console.xul"); } +function javaItemEnabling() +{ + var enabled = gJVMMgr.JavaEnabled(); + var element = document.getElementById("java"); + if (enabled) + element.removeAttribute("disabled"); + else + element.setAttribute("disabled", "true"); +} + function toJavaConsole() { - try{ - var cid = - Components.classes['@mozilla.org/oji/jvm-mgr;1']; - var iid = Components.interfaces.nsIJVMManager; - var jvmMgr = cid.getService(iid); - jvmMgr.ShowJavaConsole(); - } catch(e) { - - } + gJVMMgr.ShowJavaConsole(); } function toOpenWindowByType( inType, uri ) diff --git a/mozilla/xpfe/communicator/resources/content/tasksOverlay.xul b/mozilla/xpfe/communicator/resources/content/tasksOverlay.xul index 0df7a1d4857..1d7fc3882ed 100644 --- a/mozilla/xpfe/communicator/resources/content/tasksOverlay.xul +++ b/mozilla/xpfe/communicator/resources/content/tasksOverlay.xul @@ -133,10 +133,10 @@ - + - +