diff --git a/mozilla/extensions/irc/js/lib/utils.js b/mozilla/extensions/irc/js/lib/utils.js index 5990dc51d00..ef30db57ce0 100644 --- a/mozilla/extensions/irc/js/lib/utils.js +++ b/mozilla/extensions/irc/js/lib/utils.js @@ -899,3 +899,20 @@ function prompt(msg, initial, parent, title) return rv.value } + +function promptPassword(msg, initial, parent, title) +{ + var PROMPT_CTRID = "@mozilla.org/embedcomp/prompt-service;1"; + var nsIPromptService = Components.interfaces.nsIPromptService; + var ps = Components.classes[PROMPT_CTRID].createInstance(nsIPromptService); + if (!parent) + parent = window; + if (!title) + title = MSG_PROMPT; + rv = { value: initial }; + + if (!ps.promptPassword (parent, title, msg, rv, null, {value: null})) + return null; + + return rv.value +} diff --git a/mozilla/extensions/irc/xul/content/static.js b/mozilla/extensions/irc/xul/content/static.js index c712832c95e..b1258af0adc 100644 --- a/mozilla/extensions/irc/xul/content/static.js +++ b/mozilla/extensions/irc/xul/content/static.js @@ -1313,7 +1313,7 @@ function gotoIRCURL (url) if (url.pass) pass = url.pass; else - pass = window.prompt(getMsg(MSG_URL_PASSWORD, url.spec)); + pass = window.promptPassword(getMsg(MSG_URL_PASSWORD, url.spec)); } if (url.isserver) @@ -1395,7 +1395,7 @@ function gotoIRCURL (url) if (url.key) key = url.key; else - key = window.prompt(getMsg(MSG_URL_KEY, url.spec)); + key = window.promptPassword(getMsg(MSG_URL_KEY, url.spec)); } var charset;