?? mailwindow.js
字號(hào):
throw Components.results.NS_NOINTERFACE; }, // nsIMsgStatusFeedback implementation. showStatusString : function(statusText) { this.ensureStatusFields(); if ( !statusText.length ) statusText = this.myDefaultStatus; else this.myDefaultStatus = ""; this.statusTextFld.label = statusText; }, _startMeteors : function() { this.ensureStatusFields(); this.meteorsSpinning = true; this.startTimeoutID = null; if (!this.progressMeterVisible) { this.progressMeterContainer.removeAttribute('collapsed'); this.progressMeterVisible = true; } // Turn progress meter on. this.statusBar.setAttribute("mode","undetermined"); // start the throbber if (this.throbber) this.throbber.setAttribute("busy", true); //turn on stop button and menu if (this.stopCmd) this.stopCmd.removeAttribute("disabled"); }, startMeteors : function() { this.pendingStartRequests++; // if we don't already have a start meteor timeout pending // and the meteors aren't spinning, then kick off a start if (!this.startTimeoutID && !this.meteorsSpinning && window.MsgStatusFeedback) this.startTimeoutID = setTimeout('window.MsgStatusFeedback._startMeteors();', 500); // since we are going to start up the throbber no sense in processing // a stop timeout... if (this.stopTimeoutID) { clearTimeout(this.stopTimeoutID); this.stopTimeoutID = null; } }, _stopMeteors : function() { if(gTimelineEnabled){ gTimelineService.stopTimer("FolderLoading"); gTimelineService.markTimer("FolderLoading"); gTimelineService.resetTimer("FolderLoading"); } this.ensureStatusFields(); this.showStatusString(defaultStatus); // stop the throbber if (this.throbber) this.throbber.setAttribute("busy", false); // Turn progress meter off. this.statusBar.setAttribute("mode","normal"); this.statusBar.value = 0; // be sure to clear the progress bar this.statusBar.label = ""; if (this.progressMeterVisible) { this.progressMeterContainer.collapsed = true; this.progressMeterVisible = false; } if (this.stopCmd) this.stopCmd.setAttribute("disabled", "true"); this.meteorsSpinning = false; this.stopTimeoutID = null; }, stopMeteors : function() { if (this.pendingStartRequests > 0) this.pendingStartRequests--; // if we are going to be starting the meteors, cancel the start if (this.pendingStartRequests == 0 && this.startTimeoutID) { clearTimeout(this.startTimeoutID); this.startTimeoutID = null; } // if we have no more pending starts and we don't have a stop timeout already in progress // AND the meteors are currently running then fire a stop timeout to shut them down. if (this.pendingStartRequests == 0 && !this.stopTimeoutID) { if (this.meteorsSpinning && window.MsgStatusFeedback) this.stopTimeoutID = setTimeout('window.MsgStatusFeedback._stopMeteors();', 500); } }, showProgress : function(percentage) { this.ensureStatusFields(); if (percentage >= 0) { this.statusBar.setAttribute("mode", "normal"); this.statusBar.value = percentage; this.statusBar.label = Math.round(percentage) + "%"; } }, closeWindow : function(percent) { }}function nsMsgWindowCommands(){}nsMsgWindowCommands.prototype ={ QueryInterface : function(iid) { if (iid.equals(Components.interfaces.nsIMsgWindowCommands) || iid.equals(Components.interfaces.nsISupports)) return this; throw Components.results.NS_NOINTERFACE; }, SelectFolder: function(folderUri) { SelectFolder(folderUri); }, SelectMessage: function(messageUri) { SelectMessage(messageUri); }}function nsMessagePaneController(){}nsMessagePaneController.prototype ={ QueryInterface : function(iid) { if (iid.equals(Components.interfaces.nsIMsgMessagePaneController) || iid.equals(Components.interfaces.nsISupports)) return this; throw Components.results.NS_NOINTERFACE; }, clearMsgPane: function() { if (gDBView) setTitleFromFolder(gDBView.msgFolder,null); else setTitleFromFolder(null,null); ClearMessagePane(); }}function StopUrls(){ msgWindow.StopUrls();}function loadStartPage() { try { gMessageNotificationBar.clearMsgNotifications(); var startpageenabled = pref.getBoolPref("mailnews.start_page.enabled"); if (startpageenabled) { var startpage = pref.getComplexValue("mailnews.start_page.url", Components.interfaces.nsIPrefLocalizedString).data; // Some users have our old default start page // showing up as a user pref instead of a default pref. If this is the case, clear the user pref by hand // and re-read it again so we get the correct default start page. if (startpage == "chrome://messenger/locale/start.html") { pref.clearUserPref("mailnews.start_page.url"); startpage = pref.getComplexValue("mailnews.start_page.url", Components.interfaces.nsIPrefLocalizedString).data; } if (startpage != "") { GetMessagePaneFrame().location.href = startpage; //dump("start message pane with: " + startpage + "\n"); ClearMessageSelection(); } } } catch (ex) { dump("Error loading start page.\n"); return; }}// When the ThreadPane is hidden via the displayDeck, we should collapse the// elements that are only meaningful to the thread pane. When AccountCentral is// shown via the displayDeck, we need to switch the displayDeck to show the// accountCentralBox, and load the iframe in the AccountCentral box with// corresponding page.function ShowAccountCentral(){ try { document.getElementById("displayDeck").selectedPanel = accountCentralBox; var acctCentralPage = pref.getComplexValue("mailnews.account_central_page.url", Components.interfaces.nsIPrefLocalizedString).data; window.frames["accountCentralPane"].location.href = acctCentralPage; } catch (ex) { dump("Error loading AccountCentral page -> " + ex + "\n"); }}function ShowingAccountCentral(){ if (!IsFolderPaneCollapsed()) GetFolderTree().focus(); gAccountCentralLoaded = true;}function HidingAccountCentral(){ gAccountCentralLoaded = false;}function ShowThreadPane(){ document.getElementById("displayDeck").selectedPanel = document.getElementById("threadPaneBox");}function ShowingThreadPane(){ var threadPaneSplitter = document.getElementById("threadpane-splitter"); threadPaneSplitter.collapsed = false; GetMessagePane().collapsed = (threadPaneSplitter.getAttribute("state") == "collapsed"); document.getElementById("key_toggleMessagePane").removeAttribute("disabled");}function HidingThreadPane(){ ClearThreadPane(); GetUnreadCountElement().hidden = true; GetTotalCountElement().hidden = true; GetMessagePane().collapsed = true; document.getElementById("threadpane-splitter").collapsed = true; document.getElementById("key_toggleMessagePane").setAttribute("disabled", "true");}// the find toolbar needs a method called getBrowserfunction getBrowser() { return document.getElementById("messagepane");}function ObserveDisplayDeckChange(event){ var selectedPanel = document.getElementById("displayDeck").selectedPanel; var nowSelected = selectedPanel ? selectedPanel.id : ""; if (nowSelected == "threadPaneBox") ShowingThreadPane(); else HidingThreadPane(); if (nowSelected == "accountCentralBox") ShowingAccountCentral(); else HidingAccountCentral();}// Given the server, open the twisty and the set the selection// on inbox of that server. // prompt if offline.function OpenInboxForServer(server){ try { ShowThreadPane(); var inboxFolder = GetInboxFolder(server); SelectFolder(inboxFolder.URI); if (MailOfflineMgr.isOnline() || MailOfflineMgr.getNewMail()) { if (server.type != "imap") GetMessagesForInboxOnServer(server); } } catch (ex) { dump("Error opening inbox for server -> " + ex + "\n"); return; }}function GetSearchSession(){ if (("gSearchSession" in top) && gSearchSession) return gSearchSession; else return null;}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -