зеркало из https://github.com/mozilla/gecko-dev.git
clean up - get rid of FindMessenger() & SetWindow() calls; fixed Move/CopyMesseages not working for POP3 mail folders; implemented Close() & OnUnload() method
This commit is contained in:
Родитель
723d21af2c
Коммит
149d5de6f8
|
@ -1,8 +1,6 @@
|
||||||
var messenger = Components.classes['component://netscape/messenger'].createInstance();
|
var messenger = Components.classes['component://netscape/messenger'].createInstance();
|
||||||
messenger = messenger.QueryInterface(Components.interfaces.nsIMessenger);
|
messenger = messenger.QueryInterface(Components.interfaces.nsIMessenger);
|
||||||
|
|
||||||
var composeAppCore;
|
|
||||||
|
|
||||||
var RDF = Components.classes['component://netscape/rdf/rdf-service'].getService();
|
var RDF = Components.classes['component://netscape/rdf/rdf-service'].getService();
|
||||||
RDF = RDF.QueryInterface(Components.interfaces.nsIRDFService);
|
RDF = RDF.QueryInterface(Components.interfaces.nsIRDFService);
|
||||||
|
|
||||||
|
@ -21,11 +19,7 @@ function FindMessenger()
|
||||||
function OpenURL(url)
|
function OpenURL(url)
|
||||||
{
|
{
|
||||||
dump("\n\nOpenURL from XUL\n\n\n");
|
dump("\n\nOpenURL from XUL\n\n\n");
|
||||||
var appCore = FindMessenger();
|
messenger.OpenURL(url);
|
||||||
if (appCore != null) {
|
|
||||||
appCore.SetWindow(window);
|
|
||||||
appCore.OpenURL(url);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function ComposeMessage(tree, nodeList, messenger, type)
|
function ComposeMessage(tree, nodeList, messenger, type)
|
||||||
|
@ -68,12 +62,7 @@ function GetNewMessages()
|
||||||
if(selectedFolderList.length > 0)
|
if(selectedFolderList.length > 0)
|
||||||
{
|
{
|
||||||
var selectedFolder = selectedFolderList[0];
|
var selectedFolder = selectedFolderList[0];
|
||||||
|
messenger.GetNewMessages(folderTree.database, selectedFolder);
|
||||||
var appCore = FindMessenger();
|
|
||||||
if (appCore != null) {
|
|
||||||
appCore.SetWindow(window);
|
|
||||||
appCore.GetNewMessages(folderTree.database, selectedFolder);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
dump("Nothing was selected\n");
|
dump("Nothing was selected\n");
|
||||||
|
@ -82,11 +71,8 @@ function GetNewMessages()
|
||||||
|
|
||||||
function MsgAccountManager()
|
function MsgAccountManager()
|
||||||
{
|
{
|
||||||
var appCore = FindMessenger();
|
|
||||||
if (appCore != null) {
|
|
||||||
dump('Opening account manager..\n');
|
dump('Opening account manager..\n');
|
||||||
appCore.AccountManager(window);
|
messenger.AccountManager(window);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function MsgSubscribe()
|
function MsgSubscribe()
|
||||||
|
@ -121,13 +107,10 @@ function ComposeMessageWithType(type)
|
||||||
if(tree) {
|
if(tree) {
|
||||||
dump("tree is valid\n");
|
dump("tree is valid\n");
|
||||||
var nodeList = tree.getElementsByAttribute("selected", "true");
|
var nodeList = tree.getElementsByAttribute("selected", "true");
|
||||||
var appCore = FindMessenger();
|
|
||||||
dump("message type ");
|
dump("message type ");
|
||||||
dump(type);
|
dump(type);
|
||||||
dump("\n");
|
dump("\n");
|
||||||
if (appCore && nodeList)
|
ComposeMessage(tree, nodeList, messenger, type);
|
||||||
appCore.SetWindow(window);
|
|
||||||
ComposeMessage(tree, nodeList, appCore, type);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -38,7 +38,7 @@
|
||||||
<!ENTITY pageSetupCmd.label ".Page Setup...">
|
<!ENTITY pageSetupCmd.label ".Page Setup...">
|
||||||
<!ENTITY printPreviewCmd.label ".Print Preview">
|
<!ENTITY printPreviewCmd.label ".Print Preview">
|
||||||
<!ENTITY printCmd.label ".Print">
|
<!ENTITY printCmd.label ".Print">
|
||||||
<!ENTITY closeCmd.label ".Close">
|
<!ENTITY closeCmd.label "Close">
|
||||||
<!ENTITY exitCmd.label "Exit">
|
<!ENTITY exitCmd.label "Exit">
|
||||||
<!ENTITY editMenu.label "Edit">
|
<!ENTITY editMenu.label "Edit">
|
||||||
<!ENTITY undoCmd.label ".Undo">
|
<!ENTITY undoCmd.label ".Undo">
|
||||||
|
@ -236,7 +236,9 @@
|
||||||
<window xmlns:html="http://www.w3.org/TR/REC-html40"
|
<window xmlns:html="http://www.w3.org/TR/REC-html40"
|
||||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
||||||
title="&messengerWindow.title;"
|
title="&messengerWindow.title;"
|
||||||
style="width:100%;height:100%">
|
onload="OnLoad()"
|
||||||
|
onunload="OnUnload()"
|
||||||
|
style="width:100%;height:100%">
|
||||||
|
|
||||||
<html:script src="chrome://messenger/content/widgetglue.js"/>
|
<html:script src="chrome://messenger/content/widgetglue.js"/>
|
||||||
<html:script src="chrome://messenger/content/commandglue.js"/>
|
<html:script src="chrome://messenger/content/commandglue.js"/>
|
||||||
|
|
|
@ -5,31 +5,39 @@ function WizardPage() {}
|
||||||
function PageSetup() {}
|
function PageSetup() {}
|
||||||
function PrintPreview() {}
|
function PrintPreview() {}
|
||||||
function Print() {}
|
function Print() {}
|
||||||
function Close() {}
|
|
||||||
|
function OnLoad()
|
||||||
|
{
|
||||||
|
messenger.SetWindow(window);
|
||||||
|
}
|
||||||
|
|
||||||
|
function OnUnload()
|
||||||
|
{
|
||||||
|
dump("\nOnUnload from XUL\nClean up ...\n");
|
||||||
|
messenger.OnUnload();
|
||||||
|
}
|
||||||
|
|
||||||
|
function Close()
|
||||||
|
{
|
||||||
|
dump("\nClose from XUL\nDo something...\n");
|
||||||
|
messenger.Close();
|
||||||
|
}
|
||||||
|
|
||||||
function Exit()
|
function Exit()
|
||||||
{
|
{
|
||||||
dump("\nExit from XUL\n");
|
dump("\nExit from XUL\n");
|
||||||
var appCore = FindMessenger();
|
messenger.Exit();
|
||||||
if (appCore != null) {
|
|
||||||
dump("\nAppcore isn't null in Exit\n");
|
|
||||||
appCore.SetWindow(window);
|
|
||||||
appCore.exit();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function CharacterSet(){}
|
function CharacterSet(){}
|
||||||
|
|
||||||
function MessengerSetDefaultCharacterSet(aCharset)
|
function MessengerSetDefaultCharacterSet(aCharset)
|
||||||
{
|
{
|
||||||
var appCore = FindMessenger();
|
|
||||||
if (appCore != null) {
|
|
||||||
dump(aCharset);dump("\n");
|
dump(aCharset);dump("\n");
|
||||||
appCore.SetDocumentCharset(aCharset);
|
messenger.SetDocumentCharset(aCharset);
|
||||||
var folderResource = GetSelectedFolderResource();
|
var folderResource = GetSelectedFolderResource();
|
||||||
SetFolderCharset(folderResource, aCharset);
|
SetFolderCharset(folderResource, aCharset);
|
||||||
MsgReload();
|
MsgReload();
|
||||||
} else {
|
|
||||||
dump("Messenger has not been created!\n");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function NavigatorWindow()
|
function NavigatorWindow()
|
||||||
|
|
|
@ -1,19 +1,3 @@
|
||||||
|
|
||||||
function MsgStartUp()
|
|
||||||
{
|
|
||||||
dump("StartUp: Messenger\n");
|
|
||||||
var appCore = FindMessenger();
|
|
||||||
if (appCore != null) {
|
|
||||||
dump("In MsgStartUp()");
|
|
||||||
dump("Initializing AppCore and setting Window\n");
|
|
||||||
appCore.SetWindow(window);
|
|
||||||
ChangeFolderByURI("mailbox://Inbox");
|
|
||||||
//In the future we'll want to read this in from a preference.
|
|
||||||
MsgViewAllMsgs();
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function MsgLoadNewsMessage(url)
|
function MsgLoadNewsMessage(url)
|
||||||
{
|
{
|
||||||
dump("\n\nMsgLoadNewsMessage from XUL\n");
|
dump("\n\nMsgLoadNewsMessage from XUL\n");
|
||||||
|
@ -49,47 +33,37 @@ function MsgDeleteMessage()
|
||||||
{
|
{
|
||||||
dump("\nMsgDeleteMessage from XUL\n");
|
dump("\nMsgDeleteMessage from XUL\n");
|
||||||
var tree = frames[0].frames[1].document.getElementById('threadTree');
|
var tree = frames[0].frames[1].document.getElementById('threadTree');
|
||||||
if(tree)
|
if(tree) {
|
||||||
dump("tree is valid\n");
|
dump("tree is valid\n");
|
||||||
var appCore = FindMessenger();
|
|
||||||
if (appCore != null) {
|
|
||||||
dump("\nAppcore isn't null in MsgDeleteMessage\n");
|
|
||||||
appCore.SetWindow(window);
|
|
||||||
//get the selected elements
|
//get the selected elements
|
||||||
var messageList = tree.getElementsByAttribute("selected", "true");
|
var messageList = tree.getElementsByAttribute("selected", "true");
|
||||||
//get the current folder
|
//get the current folder
|
||||||
var srcFolder = tree.childNodes[5];
|
var srcFolder = tree.childNodes[5];
|
||||||
appCore.DeleteMessages(tree, srcFolder, messageList);
|
messenger.DeleteMessages(tree, srcFolder, messageList);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function MsgDeleteFolder()
|
function MsgDeleteFolder()
|
||||||
{
|
{
|
||||||
var appCore = FindMessenger();
|
//get the selected elements
|
||||||
if (appCore != null) {
|
var tree = frames[0].frames[0].document.getElementById('folderTree');
|
||||||
appCore.SetWindow(window);
|
var folderList = tree.getElementsByAttribute("selected", "true");
|
||||||
//get the selected elements
|
var i;
|
||||||
var tree = frames[0].frames[0].document.getElementById('folderTree');
|
var folder, parent;
|
||||||
var folderList = tree.getElementsByAttribute("selected", "true");
|
for(i = 0; i < folderList.length; i++)
|
||||||
var i;
|
{
|
||||||
var folder, parent;
|
folder = folderList[i];
|
||||||
for(i = 0; i < folderList.length; i++)
|
folderuri = folder.getAttribute('id');
|
||||||
{
|
dump(folderuri);
|
||||||
folder = folderList[i];
|
parent = folder.parentNode.parentNode;
|
||||||
folderuri = folder.getAttribute('id');
|
var parenturi = parent.getAttribute('id');
|
||||||
dump(folderuri);
|
if(parenturi)
|
||||||
|
dump(parenturi);
|
||||||
parent = folder.parentNode.parentNode;
|
else
|
||||||
var parenturi = parent.getAttribute('id');
|
dump("No parenturi");
|
||||||
if(parenturi)
|
dump("folder = " + folder.nodeName + "\n");
|
||||||
dump(parenturi);
|
dump("parent = " + parent.nodeName + "\n");
|
||||||
else
|
messenger.DeleteFolders(tree.database, parent, folder);
|
||||||
dump("No parenturi");
|
|
||||||
dump("folder = " + folder.nodeName + "\n");
|
|
||||||
dump("parent = " + parent.nodeName + "\n");
|
|
||||||
|
|
||||||
appCore.DeleteFolders(tree.database, parent, folder);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -136,13 +110,9 @@ function MsgCopyMessage(destFolder)
|
||||||
{
|
{
|
||||||
//Get the selected messages to copy
|
//Get the selected messages to copy
|
||||||
var messageList = tree.getElementsByAttribute("selected", "true");
|
var messageList = tree.getElementsByAttribute("selected", "true");
|
||||||
var appCore = FindMessenger();
|
//get the current folder
|
||||||
if (appCore != null) {
|
var srcFolder = tree.childNodes[5];
|
||||||
appCore.SetWindow(window);
|
messenger.CopyMessages(srcFolder, destFolder, messageList, false);
|
||||||
//get the current folder
|
|
||||||
var srcFolder = tree.childNodes[5];
|
|
||||||
appCore.CopyMessages(srcFolder, destFolder, messageList);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -157,13 +127,9 @@ function MsgMoveMessage(destFolder)
|
||||||
{
|
{
|
||||||
//Get the selected messages to copy
|
//Get the selected messages to copy
|
||||||
var messageList = tree.getElementsByAttribute("selected", "true");
|
var messageList = tree.getElementsByAttribute("selected", "true");
|
||||||
var appCore = FindMessenger();
|
//get the current folder
|
||||||
if (appCore != null) {
|
var srcFolder = tree.childNodes[5];
|
||||||
appCore.SetWindow(window);
|
messenger.CopyMessages(srcFolder, destFolder, messageList, true);
|
||||||
//get the current folder
|
|
||||||
var srcFolder = tree.childNodes[5];
|
|
||||||
appCore.MoveMessages(srcFolder, destFolder, messageList);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -173,11 +139,7 @@ function MsgViewAllMsgs()
|
||||||
|
|
||||||
var tree = frames[0].frames[1].document.getElementById('threadTree');
|
var tree = frames[0].frames[1].document.getElementById('threadTree');
|
||||||
|
|
||||||
var appCore = FindMessenger();
|
messenger.ViewAllMessages(tree.database);
|
||||||
if (appCore != null) {
|
|
||||||
appCore.SetWindow(window);
|
|
||||||
appCore.ViewAllMessages(tree.database);
|
|
||||||
}
|
|
||||||
|
|
||||||
//hack to make it get new view.
|
//hack to make it get new view.
|
||||||
var currentFolder = tree.childNodes[5].getAttribute('id');
|
var currentFolder = tree.childNodes[5].getAttribute('id');
|
||||||
|
@ -191,11 +153,7 @@ function MsgViewUnreadMsg()
|
||||||
|
|
||||||
var tree = frames[0].frames[1].document.getElementById('threadTree');
|
var tree = frames[0].frames[1].document.getElementById('threadTree');
|
||||||
|
|
||||||
var appCore = FindMessenger();
|
messenger.ViewUnreadMessages(tree.database);
|
||||||
if (appCore != null) {
|
|
||||||
appCore.SetWindow(window);
|
|
||||||
appCore.ViewUnreadMessages(tree.database);
|
|
||||||
}
|
|
||||||
|
|
||||||
//hack to make it get new view.
|
//hack to make it get new view.
|
||||||
var currentFolder = tree.childNodes[5].getAttribute('id');
|
var currentFolder = tree.childNodes[5].getAttribute('id');
|
||||||
|
@ -210,11 +168,7 @@ function MsgViewAllThreadMsgs()
|
||||||
|
|
||||||
var tree = frames[0].frames[1].document.getElementById('threadTree');
|
var tree = frames[0].frames[1].document.getElementById('threadTree');
|
||||||
|
|
||||||
var appCore = FindMessenger();
|
messenger.ViewAllThreadMessages(tree.database);
|
||||||
if (appCore != null) {
|
|
||||||
appCore.SetWindow(window);
|
|
||||||
appCore.ViewAllThreadMessages(tree.database);
|
|
||||||
}
|
|
||||||
|
|
||||||
//hack to make it get new view.
|
//hack to make it get new view.
|
||||||
var currentFolder = tree.childNodes[5].getAttribute('id');
|
var currentFolder = tree.childNodes[5].getAttribute('id');
|
||||||
|
@ -247,13 +201,8 @@ function MsgNewFolder()
|
||||||
var selectedFolderList = folderTree.getElementsByAttribute("selected", "true");
|
var selectedFolderList = folderTree.getElementsByAttribute("selected", "true");
|
||||||
var selectedFolder = selectedFolderList[0];
|
var selectedFolder = selectedFolderList[0];
|
||||||
|
|
||||||
var appCore = FindMessenger();
|
//Note this is temporary hardcoding until I can get this from a dialog
|
||||||
if (appCore != null) {
|
messenger.NewFolder(folderTree.database, selectedFolder, "New Folder");
|
||||||
appCore.SetWindow(window);
|
|
||||||
//Note this is temporary hardcoding until I can get this from a dialog
|
|
||||||
appCore.NewFolder(folderTree.database, selectedFolder, "New Folder");
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -343,14 +292,9 @@ function MsgMarkMsgAsRead(markRead)
|
||||||
{
|
{
|
||||||
dump("\MsgMarkMsgAsRead from XUL\n");
|
dump("\MsgMarkMsgAsRead from XUL\n");
|
||||||
var tree = frames[0].frames[1].document.getElementById('threadTree');
|
var tree = frames[0].frames[1].document.getElementById('threadTree');
|
||||||
var appCore = FindMessenger();
|
//get the selected elements
|
||||||
if (appCore != null) {
|
var messageList = tree.getElementsByAttribute("selected", "true");
|
||||||
appCore.SetWindow(window);
|
messenger.MarkMessagesRead(tree.database, messageList, markRead);
|
||||||
//get the selected elements
|
|
||||||
var messageList = tree.getElementsByAttribute("selected", "true");
|
|
||||||
appCore.MarkMessagesRead(tree.database, messageList, markRead);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function MsgMarkThreadAsRead() {}
|
function MsgMarkThreadAsRead() {}
|
||||||
|
|
Загрузка…
Ссылка в новой задаче