Focus preferences window if already showing

Previously, if the prefwindow was behind another window, nothing would
happen when opening the preferences.
This commit is contained in:
Dan Stillman 2013-02-19 16:27:16 -05:00
parent 6e9167aef1
commit d4771c5f0d

View file

@ -2596,6 +2596,23 @@ var ZoteroPane = new function()
pane: paneID,
action: action
};
var win = null;
// If window is already open, just focus it
if (!action) {
var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"]
.getService(Components.interfaces.nsIWindowMediator);
var enumerator = wm.getEnumerator("zotero:pref");
if (enumerator.hasMoreElements()) {
var win = enumerator.getNext();
win.focus();
if (paneID) {
var pane = win.document.getElementsByAttribute('id', paneID)[0];
pane.parentElement.showPane(pane);
}
}
}
if (!win) {
window.openDialog('chrome://zotero/content/preferences/preferences.xul',
'zotero-prefs',
'chrome,titlebar,toolbar,centerscreen,'
@ -2603,6 +2620,7 @@ var ZoteroPane = new function()
io
);
}
}
/*