diff --git a/mozilla/xpfe/components/jar.mn b/mozilla/xpfe/components/jar.mn
index 8c8d3f499fa..ccff04445ea 100644
--- a/mozilla/xpfe/components/jar.mn
+++ b/mozilla/xpfe/components/jar.mn
@@ -22,6 +22,7 @@ comm.jar:
content/communicator/pref/pref-cache.xul (prefwindow/resources/content/pref-cache.xul)
content/communicator/pref/pref-colors.js (prefwindow/resources/content/pref-colors.js)
content/communicator/pref/pref-colors.xul (prefwindow/resources/content/pref-colors.xul)
+ content/communicator/pref/pref-help.js (prefwindow/resources/content/pref-help.js)
content/communicator/pref/pref-themes.xul (prefwindow/resources/content/pref-themes.xul)
content/communicator/pref/pref-themes.js (prefwindow/resources/content/pref-themes.js)
content/communicator/pref/pref-charset.js (prefwindow/resources/content/pref-charset.js)
diff --git a/mozilla/xpfe/components/prefwindow/resources/content/MANIFEST b/mozilla/xpfe/components/prefwindow/resources/content/MANIFEST
index ebdc407d123..b898eaad081 100644
--- a/mozilla/xpfe/components/prefwindow/resources/content/MANIFEST
+++ b/mozilla/xpfe/components/prefwindow/resources/content/MANIFEST
@@ -21,6 +21,7 @@ pref-debug2.xul
pref-download.xul
pref-fonts.xul
pref-fonts.js
+pref-help.js
pref-history.xul
pref-languages.xul
pref-languages-add.xul
diff --git a/mozilla/xpfe/components/prefwindow/resources/content/makefile.win b/mozilla/xpfe/components/prefwindow/resources/content/makefile.win
index 791b39d059c..79123831a57 100644
--- a/mozilla/xpfe/components/prefwindow/resources/content/makefile.win
+++ b/mozilla/xpfe/components/prefwindow/resources/content/makefile.win
@@ -51,6 +51,7 @@ CHROME_CONTENT = \
.\pref-calibrate-screen.xul \
.\pref-fonts.js \
.\pref-history.xul \
+ .\pref-help.js \
.\pref-languages.xul \
.\pref-languages-add.xul \
.\pref-languages.js \
diff --git a/mozilla/xpfe/components/prefwindow/resources/content/pref-help.js b/mozilla/xpfe/components/prefwindow/resources/content/pref-help.js
new file mode 100644
index 00000000000..f6740b2d74e
--- /dev/null
+++ b/mozilla/xpfe/components/prefwindow/resources/content/pref-help.js
@@ -0,0 +1,55 @@
+var gHelpURL = 'chrome://help/content/help.xul';
+
+// these are keys for resolving the preferences dialog subframe
+// in terms of the context-sensitive help that should be loaded
+// from the help button. The "?mail_prefs_display" things given
+// here represent (for the help window itself) the help content.
+var fm = {
+ "chrome://communicator/content/pref/pref-appearance.xul": "?appearance_pref_appearance",
+ "chrome://communicator/content/pref/pref-fonts.xul": "?appearance_pref_fonts",
+ "chrome://communicator/content/pref/pref-colors.xul": "?appearance_pref_colors",
+ "chrome://communicator/content/pref/pref-themes.xul": "?appearance_pref_themes",
+ "chrome://communicator/content/pref/pref-navigator.xul": "?navigator_pref_navigator",
+ "chrome://communicator/content/pref/pref-history.xul": "?navigator_pref_history",
+ "chrome://communicator/content/pref/pref-languages.xul": "?navigator_pref_languages",
+ "chrome://communicator/content/pref/pref-applications.xul": "?navigator_pref_helper_applications",
+ "chrome://communicator/content/pref/pref-search.xul": "?navigator_pref_internet_searching",
+ "chrome://messenger/content/pref-mailnews.xul": "?mail_prefs_general",
+ "chrome://messenger/content/pref-viewing_messages.xul": "?mail_prefs_display",
+ "chrome://messenger/content/messengercompose/pref-composing_messages.xul": "?mail_prefs_messages",
+ "chrome://messenger/content/messengercompose/pref-formatting.xul": "?mail_prefs_formatting",
+ "chrome://messenger/content/addressbook/pref-addressing.xul": "?nav_view",
+ "chrome://editor/content/pref-composer.xul": "?composer_prefs_general",
+ "chrome://editor/content/pref-editing.xul": "?composer_prefs_newpage",
+ "chrome://messenger/content/pref-mailnews.xul": "?mail_prefs_general",
+ "chrome://messenger/content/pref-viewing_messages.xul": "?mail_prefs_display",
+ "chrome://messenger/content/messengercompose/pref-composing_messages.xul": "?mail_prefs_messages",
+ "chrome://messenger/content/messengercompose/pref-formatting.xul": "?mail_prefs_formatting",
+ "chrome://messenger/content/addressbook/pref-addressing.xul": "?mail_prefs_addressing",
+ "chrome://aim/content/pref-IM_instantmessage.xul": "?im_prefs_general",
+ "chrome://aim/content/pref-IM_privacy.xul": "?im_prefs_privacy",
+ "chrome://aim/content/pref-IM_notification.xul": "?im_prefs_notification",
+ "chrome://aim/content/pref-IM_away.xul": "?im_prefs_away",
+ "chrome://aim/content/pref-IM_connection.xul": "?im_prefs_connection",
+ "chrome://communicator/content/pref/pref-security.xul": "?sec_gen",
+ "chrome://cookie/content/pref-cookies.xul": "?cookies_prefs",
+ "chrome://cookie/content/pref-images.xul": "?images_prefs",
+ "chrome://wallet/content/pref-wallet.xul": "?forms_prefs",
+ "chrome://wallet/content/pref-passwords.xul": "?passwords_prefs",
+ "chrome://communicator/content/pref/pref-advanced.xul": "?advanced_property_editor",
+ "chrome://communicator/content/pref/pref-cache.xul": "?advanced_property_editor",
+ "chrome://communicator/content/pref/pref-proxies.xul": "?advanced_property_editor",
+ "chrome://communicator/content/pref/pref-smartupdate.xul": "?advanced_property_editor",
+ "chrome://communicator/content/pref/pref-mousewheel.xul": "?advanced_property_editor",
+ "chrome://communicator/content/pref/pref-winhooks.xul": "?advanced_property_editor"
+}
+
+function doHelpButton() {
+ subsrc = document.getElementById("panelFrame").getAttribute("src");
+ if ( fm[subsrc] ) {
+ openHelp(gHelpURL + fm[subsrc]);
+ } else {
+ openHelp(gHelpURL + '?prefs');
+ }
+}
+
diff --git a/mozilla/xpfe/components/prefwindow/resources/content/pref.xul b/mozilla/xpfe/components/prefwindow/resources/content/pref.xul
index 1ceca04da91..afda4f1f068 100644
--- a/mozilla/xpfe/components/prefwindow/resources/content/pref.xul
+++ b/mozilla/xpfe/components/prefwindow/resources/content/pref.xul
@@ -48,6 +48,8 @@
+
+
@@ -75,6 +77,6 @@
-
+
diff --git a/mozilla/xpfe/global/resources/content/mac/platformDialogOverlay.xul b/mozilla/xpfe/global/resources/content/mac/platformDialogOverlay.xul
index 839b0c4f203..1f2a91c3910 100644
--- a/mozilla/xpfe/global/resources/content/mac/platformDialogOverlay.xul
+++ b/mozilla/xpfe/global/resources/content/mac/platformDialogOverlay.xul
@@ -35,6 +35,16 @@
+
+
+
+
+
+
+
+
+
+
@@ -43,6 +53,15 @@
+
+
+
+
+
+
+
+
+
diff --git a/mozilla/xpfe/global/resources/content/unix/platformDialogOverlay.xul b/mozilla/xpfe/global/resources/content/unix/platformDialogOverlay.xul
index 5a91d7425dc..9e9c5a1a598 100644
--- a/mozilla/xpfe/global/resources/content/unix/platformDialogOverlay.xul
+++ b/mozilla/xpfe/global/resources/content/unix/platformDialogOverlay.xul
@@ -36,6 +36,16 @@
+
+
+
+
+
+
+
+
+
+
@@ -45,6 +55,15 @@
+
+
+
+
+
+
+
+
+
diff --git a/mozilla/xpfe/global/resources/content/win/platformDialogOverlay.xul b/mozilla/xpfe/global/resources/content/win/platformDialogOverlay.xul
index 52ff36c0029..55bb99e4866 100644
--- a/mozilla/xpfe/global/resources/content/win/platformDialogOverlay.xul
+++ b/mozilla/xpfe/global/resources/content/win/platformDialogOverlay.xul
@@ -37,6 +37,17 @@
+
+
+
+
+
+
+
+
+
+
+
@@ -45,6 +56,15 @@
+
+
+
+
+
+
+
+
+
diff --git a/mozilla/xpfe/global/resources/locale/en-US/mac/platformDialogOverlay.dtd b/mozilla/xpfe/global/resources/locale/en-US/mac/platformDialogOverlay.dtd
index dd6c94ebc4d..c32250680c1 100644
--- a/mozilla/xpfe/global/resources/locale/en-US/mac/platformDialogOverlay.dtd
+++ b/mozilla/xpfe/global/resources/locale/en-US/mac/platformDialogOverlay.dtd
@@ -3,6 +3,8 @@
+
+
diff --git a/mozilla/xpfe/global/resources/locale/en-US/unix/platformDialogOverlay.dtd b/mozilla/xpfe/global/resources/locale/en-US/unix/platformDialogOverlay.dtd
index d62799ca312..b984fcfcaf6 100644
--- a/mozilla/xpfe/global/resources/locale/en-US/unix/platformDialogOverlay.dtd
+++ b/mozilla/xpfe/global/resources/locale/en-US/unix/platformDialogOverlay.dtd
@@ -3,6 +3,7 @@
+
diff --git a/mozilla/xpfe/global/resources/locale/en-US/win/platformDialogOverlay.dtd b/mozilla/xpfe/global/resources/locale/en-US/win/platformDialogOverlay.dtd
index 026983a50a7..ddaf31a5300 100644
--- a/mozilla/xpfe/global/resources/locale/en-US/win/platformDialogOverlay.dtd
+++ b/mozilla/xpfe/global/resources/locale/en-US/win/platformDialogOverlay.dtd
@@ -1,8 +1,9 @@
-
+
+