diff --git a/mozilla/xpfe/components/bookmarks/resources/bm-panel.js b/mozilla/xpfe/components/bookmarks/resources/bm-panel.js index d09f20dcdec..b8516a8ebcb 100644 --- a/mozilla/xpfe/components/bookmarks/resources/bm-panel.js +++ b/mozilla/xpfe/components/bookmarks/resources/bm-panel.js @@ -84,18 +84,26 @@ function OpenBookmarkURL(event, node, datasources) return(false); } - // If we don't have a browser window or metaKey is down, - // then open a new browser window - if (!window._content || event.metaKey) + if (!window._content) { - const WM_PROGID = "component://netscape/rdf/datasource?name=window-mediator"; - var wm = nsJSComponentManager.getService(WM_PROGID, "nsIWindowMediator"); - if (wm) { - navWindow = wm.getMostRecentWindow("navigator:browser"); - if (navWindow) - navWindow.appCore.loadUrl(url); // it pains me to type this. - } - else + const WM_PROGID = "component://netscape/rdf/datasource?name=window-mediator"; + var wm = nsJSComponentManager.getService(WM_PROGID, "nsIWindowMediator"); + if (wm) + { + navWindow = wm.getMostRecentWindow("navigator:browser"); + if (navWindow) + { + navWindow.appCore.loadUrl(url); + } + } + else + { + window.openDialog( getBrowserURL(), "_blank", "chrome,all,dialog=no", url ); + } + } + else if (event.metaKey) + { + // if metaKey is down, open in a new browser window window.openDialog( getBrowserURL(), "_blank", "chrome,all,dialog=no", url ); } else