diff --git a/mailnews/base/resources/content/MANIFEST b/mailnews/base/resources/content/MANIFEST
index 89f62938b3a..4a01d934f89 100644
--- a/mailnews/base/resources/content/MANIFEST
+++ b/mailnews/base/resources/content/MANIFEST
@@ -39,3 +39,4 @@ msgMail3PaneWindow.js
msgFolderPickerOverlay.xul
msgFolderPickerOverlay.js
messengerdnd.js
+mailContextMenus.js
diff --git a/mailnews/base/resources/content/Makefile.in b/mailnews/base/resources/content/Makefile.in
index 19870a4f315..ea3a5ed06f7 100644
--- a/mailnews/base/resources/content/Makefile.in
+++ b/mailnews/base/resources/content/Makefile.in
@@ -48,6 +48,7 @@ EXPORT_RESOURCE_SAMPLES = \
msgFolderPickerOverlay.xul \
renameFolderNameDialog.xul \
messengerdnd.js \
+ mailContextMenus.js \
$(NULL)
include $(topsrcdir)/config/rules.mk
diff --git a/mailnews/base/resources/content/commandglue.js b/mailnews/base/resources/content/commandglue.js
index d5af999ec63..2d76fb7dcc0 100644
--- a/mailnews/base/resources/content/commandglue.js
+++ b/mailnews/base/resources/content/commandglue.js
@@ -693,3 +693,5 @@ function GetSelectTrashUri(folder)
}
return null;
}
+
+
diff --git a/mailnews/base/resources/content/mailContextMenus.js b/mailnews/base/resources/content/mailContextMenus.js
new file mode 100644
index 00000000000..87cb50cc83a
--- /dev/null
+++ b/mailnews/base/resources/content/mailContextMenus.js
@@ -0,0 +1,91 @@
+/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
+/*
+ * The contents of this file are subject to the Netscape Public
+ * License Version 1.1 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.mozilla.org/NPL/
+ *
+ * Software distributed under the License is distributed on an "AS
+ * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
+ * implied. See the License for the specific language governing
+ * rights and limitations under the License.
+ *
+ * The Original Code is Mozilla Communicator client code,
+ * released March 31, 1998.
+ *
+ * The Initial Developer of the Original Code is Netscape Communications
+ * Corporation. Portions created by Netscape are
+ * Copyright (C) 2000 Netscape Communications Corporation. All
+ * Rights Reserved.
+ *
+ */
+
+ function fillThreadPaneContextMenu()
+{
+ var tree = GetThreadTree();
+ var selectedItems = tree.selectedItems;
+ var numSelected = selectedItems.length;
+
+ ShowMenuItem("threadPaneContext-openNewWindow", (numSelected <= 1));
+ EnableMenuItem("threadPaneContext-openNewWindow", false);
+
+ ShowMenuItem("threadPaneContext-editAsNew", (numSelected <= 1));
+ EnableMenuItem("threadPaneContext-editAsNew", false);
+
+ ShowMenuItem("threadPaneContext-sep-open", (numSelected <= 1));
+
+ ShowMenuItem("threadPaneContext-replySender", (numSelected <= 1));
+ EnableMenuItem("threadPaneContext-replySender", (numSelected == 1));
+
+ ShowMenuItem("threadPaneContext-replyAll", (numSelected <= 1));
+ EnableMenuItem("threadPaneContext-replyAll", (numSelected == 1));
+
+ ShowMenuItem("threadPaneContext-forward", true);
+ EnableMenuItem("threadPaneContext-forward", (numSelected > 0));
+
+ ShowMenuItem("threadPaneContext-sep-reply", true);
+
+ ShowMenuItem("threadPaneContext-moveMenu", true);
+ EnableMenuItem("threadPaneContext-moveMenu", (numSelected > 0));
+
+ ShowMenuItem("threadPaneContext-copyMenu", true);
+ EnableMenuItem("threadPaneContext-copyMenu", (numSelected > 0));
+
+ ShowMenuItem("threadPaneContext-saveAs", (numSelected <= 1));
+ EnableMenuItem("threadPaneContext-saveAs", (numSelected == 1));
+
+ ShowMenuItem("threadPaneContext-print", true);
+ EnableMenuItem("threadPaneContext-print", (numSelected > 0));
+
+ ShowMenuItem("threadPaneContext-delete", true);
+ EnableMenuItem("threadPaneContext-delete", (numSelected > 0));
+
+ ShowMenuItem("threadPaneContext-sep-edit", (numSelected <= 1));
+
+ ShowMenuItem("threadPaneContext-addSenderToAddressBook", (numSelected <= 1));
+ EnableMenuItem("threadPaneContext-addSenderToAddressBook", false);
+
+ ShowMenuItem("threadPaneContext-addAllToAddressBook", (numSelected <= 1));
+ EnableMenuItem("threadPaneContext-addAllToAddressBook", false);
+
+ return(true);
+}
+
+function ShowMenuItem(id, showItem)
+{
+ var item = document.getElementById(id);
+ var showing = (item.getAttribute('hidden') !='true');
+ if(item && (showItem != showing))
+ item.setAttribute('hidden', showItem ? '' : 'true');
+}
+
+function EnableMenuItem(id, enableItem)
+{
+ var item = document.getElementById(id);
+ var enabled = (item.getAttribute('disabled') !='true');
+ if(item && (enableItem != enabled))
+ {
+ item.setAttribute('disabled', enableItem ? '' : 'true');
+ }
+}
+
diff --git a/mailnews/base/resources/content/makefile.win b/mailnews/base/resources/content/makefile.win
index acf714b9ab4..2fd5ca564fa 100644
--- a/mailnews/base/resources/content/makefile.win
+++ b/mailnews/base/resources/content/makefile.win
@@ -43,6 +43,7 @@ install::
$(MAKE_INSTALL) msgFolderPickerOverlay.xul $(DIST)\bin\chrome\messenger\content\default
$(MAKE_INSTALL) renameFolderNameDialog.xul $(DIST)\bin\chrome\messenger\content\default
$(MAKE_INSTALL) messengerdnd.js $(DIST)\bin\chrome\messenger\content\default
+ $(MAKE_INSTALL) mailContextMenus.js $(DIST)\bin\chrome\messenger\content\default
clobber::
rm -f $(DIST)\chrome\messenger\content\default\messenger.xul
@@ -64,4 +65,6 @@ clobber::
rm -f $(DIST)\chrome\messenger\content\default\msgFolderPickerOverlay.xul
rm -f $(DIST)\chrome\messenger\content\default\renameFolderNameDialog.xul
rm -f $(DIST)\chrome\messenger\content\default\messengerdnd.js
+ rm -f $(DIST)\chrome\messenger\content\default\mailContextMenus.js
+
diff --git a/mailnews/base/resources/content/messenger.xul b/mailnews/base/resources/content/messenger.xul
index 55f8c0c3448..799910092a0 100644
--- a/mailnews/base/resources/content/messenger.xul
+++ b/mailnews/base/resources/content/messenger.xul
@@ -51,6 +51,7 @@ Rights Reserved.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+