Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/bandwagon/content/ui/dialog.js
diff options
context:
space:
mode:
authordave@33eels.com <dave@33eels.com@4eb1ac78-321c-0410-a911-ec516a8615a5>2008-09-25 11:10:13 (GMT)
committer dave@33eels.com <dave@33eels.com@4eb1ac78-321c-0410-a911-ec516a8615a5>2008-09-25 11:10:13 (GMT)
commit3427618ac8fd87fe1e82fb482210789d93c52196 (patch)
treec6ea0b8a5cb7abe504be6ffbfe469ba21721f72b /bandwagon/content/ui/dialog.js
parentbd19c7fc93848de37234498d5d81d4eddb8e5661 (diff)
Fix for bug 776 ("Mac OS: Strange behaviour when Extension Manager is opened from the hidden window.")
git-svn-id: http://svn.mozilla.org/addons/trunk@18586 4eb1ac78-321c-0410-a911-ec516a8615a5
Diffstat (limited to 'bandwagon/content/ui/dialog.js')
-rw-r--r--bandwagon/content/ui/dialog.js18
1 files changed, 16 insertions, 2 deletions
diff --git a/bandwagon/content/ui/dialog.js b/bandwagon/content/ui/dialog.js
index 80e405c..33e635c 100644
--- a/bandwagon/content/ui/dialog.js
+++ b/bandwagon/content/ui/dialog.js
@@ -39,13 +39,27 @@ var bandwagonService;
try
{
- // fix the reference to the global bandwagon singletons
+ // try and re-use the Bandwagon singletons from a recent browser window
var bw = Components.classes["@mozilla.org/appshell/window-mediator;1"]
.getService(Components.interfaces.nsIWindowMediator)
.getMostRecentWindow("navigator:browser");
- Bandwagon = bw.Bandwagon;
+ if (bw)
+ {
+ Bandwagon = bw.Bandwagon;
+ }
+ else
+ {
+ // no recent browser window - load required scripts dynamically
+ var scriptLoader = Components.classes["@mozilla.org/moz/jssubscript-loader;1"]
+ .getService(Components.interfaces.mozIJSSubScriptLoader);
+
+ scriptLoader.loadSubScript("chrome://bandwagon/content/scripts/bandwagon.js");
+ scriptLoader.loadSubScript("chrome://bandwagon/content/scripts/logger.js");
+ scriptLoader.loadSubScript("chrome://bandwagon/content/scripts/util.js");
+ scriptLoader.loadSubScript("chrome://bandwagon/content/scripts/prefs.js");
+ }
// get the service