Closed
Bug 288366
Opened 19 years ago
Closed 19 years ago
Port Thunderbird's View Layout to MailNews
Categories
(SeaMonkey :: MailNews: Message Display, defect)
SeaMonkey
MailNews: Message Display
Tracking
(Not tracked)
VERIFIED
FIXED
People
(Reporter: iannbugzilla, Assigned: iannbugzilla)
Details
Attachments
(1 file, 4 obsolete files)
62.40 KB,
patch
|
iannbugzilla
:
review+
Bienvenu
:
superreview+
|
Details | Diff | Splinter Review |
Back on 2003-08-11 20:12 Thunderbird got a Layout switcher under its View menu, it would be nice to port that.
This patch does the equivalent of the one that was checked in for TB in 2003.
Attachment #179114 -
Flags: review?(neil.parkwaycc.co.uk)
Attachment #179114 -
Flags: review?(neil.parkwaycc.co.uk)
Changes from v0.1 * Only adds strings to messages.dtd leaves unimplemented/obsolete strings alone
Attachment #179114 -
Attachment is obsolete: true
Attachment #179121 -
Flags: review?(neil.parkwaycc.co.uk)
Comment 3•19 years ago
|
||
Comment on attachment 179121 [details] [diff] [review] Tweaked Patch v0.1a >+function InitViewLayoutStyleMenu() >+{ >+ var paneConfig = pref.getIntPref("mail.pane_config.dynamic"); Old profiles don't have this preference. Use GetMailPaneConfig() instead. >+ switch (paneConfig) >+ { >+ case kClassicMailLayout: >+ id ="messagePaneClassic"; >+ break; >+ case kWideMailLayout: >+ id = "messagePaneWide"; >+ break; >+ case kVerticalMailLayout: >+ id = "messagePaneVertical"; >+ break; >+ } >+ >+ var layoutStyleMenuitem = document.getElementById(id); Well this is a bit of an ugly way of doing this. One alternative would be to put the ids in an array i.e. ["messagePaneClassic", "messagePaneWide", "messagePaneVertical"] or another alternative would be to note that the menuitems are the first three items in the popup so that event.target.childNodes[paneConfig] would work (assuming you passed in the event). >+function ChangeMailLayout(newLayout) >+{ >+ gPrefBranch.setIntPref("mail.pane_config.dynamic", newLayout); >+ return true; >+} You don't actually need to return true here. >- <menuseparator id="menu_showSearch_showMessage_Separator"/> You didn't remove the code in HideMenus that refers to this. >- <menuitem id="menu_showMessagePane" >- type="checkbox" >- label="&showMessagePaneCmd.label;" >- accesskey="&showMessagePaneCmd.accesskey;" >- key="key_toggleMessagePane" >- oncommand="MsgToggleMessagePane();"/> >- <menuitem id="menu_showFolderPane" >- type="checkbox" >- label="&showFolderPaneCmd.label;" >- accesskey="&showFolderPaneCmd.accesskey;" >- key="key_toggleFolderPane" >- oncommand="MsgToggleSplitter('gray_vertical_splitter');"/> Now you're moving these to a menu that you're already hiding you can remove the code in HideMenus that hides them. >+ var viewLayoutMenu = document.getElementById("menu_MessagePaneLayout"); >+ if (viewLayoutMenu) >+ viewLayoutMenu.setAttribute("hidden", "true"); [Aside: if all these menuitems observed a broadcaster we could set them all to hidden in XUL instead] > <!-- Go Menu --> >- :-P
Attachment #179121 -
Flags: review?(neil.parkwaycc.co.uk) → review-
Changes since v0.1a * Made use of GetMailPaneConfig() and event.target.childNodes[paneConfig] for layout switching plus other tidy-ups as suggested by Neil * Used a broadcaster to hide menus as suggested by Neil * Removes unused function UpdateMailPaneConfigMenu from msgMail3PaneWindow.js as suggested by Neil on IRC There is possible scope for using another broadcaster for disabled menus when account manager is open - see view_init function in mailWindowOverlay.js - but that is probably for another bug
Attachment #179121 -
Attachment is obsolete: true
Attachment #179339 -
Flags: review?(neil.parkwaycc.co.uk)
Comment 5•19 years ago
|
||
Comment on attachment 179339 [details] [diff] [review] Revised Patch v0.1c >+function ChangeMailLayout(newLayout) >+{ >+ gPrefBranch.setIntPref("mail.pane_config.dynamic", newLayout); >+ return; >+} What I meant was that the return statement was unnecessary... >+<broadcasterset id="mailBroadcasters"> >+ <broadcaster id="mailHideMenus" hidden="false"/> >+</broadcasterset> You shouldn't need to specify hidden here as it gets copied to all the menuitems which you don't need for the 3 pane views. It might even be neater to specify the broadcaster with hidden="true" in messageWindow.xul and without hidden in the two 3 pane files. >+ observes="cmd_renameFolder"> >+ <observes element="mailHideMenus" attribute="hidden"/> In theory we should be able to switch these menuitems to command= which is cheaper for menuitems and keys, and also allows you to use the observes attribute.
Attachment #179339 -
Flags: review?(neil.parkwaycc.co.uk)
Changes since v0.1c * Removed return statement from ChangeMailLayout function * Moved broadcaster out of mailWindowOverlay.xul and into the 3 views * Added a new broadcaster to disable F8/F9 keys in messageWindow.xul - gets rid of MsgToggleMessagePane and MsgToggleSplitter errors in JS console * Change all observes="cmd..." to command="cmd..." * Change all <observes element="mail..." into simple observes="mail..."
Attachment #179339 -
Attachment is obsolete: true
Attachment #179636 -
Flags: review?(neil.parkwaycc.co.uk)
Comment 7•19 years ago
|
||
Comment on attachment 179636 [details] [diff] [review] Extended Patch v0.1e >+ <broadcaster id="mailHideKeys"/> Disable :-P
Attachment #179636 -
Flags: review?(neil.parkwaycc.co.uk) → review+
Changes since v0.1e * Changed broadcaster name from mailHideKeys to mailDisableKeys as suggested by Neil (I think) Carrying forward r=
Attachment #179636 -
Attachment is obsolete: true
Attachment #179717 -
Flags: superreview?(bienvenu)
Attachment #179717 -
Flags: review+
Updated•19 years ago
|
Attachment #179717 -
Flags: superreview?(bienvenu) → superreview+
Comment on attachment 179717 [details] [diff] [review] Tweaked extended patch v0.1f (Checked in) Checking in content/mail3PaneWindowVertLayout.xul; /cvsroot/mozilla/mailnews/base/resources/content/mail3PaneWindowVertLayout.xul, v <-- mail3PaneWindowVertLayout.xul new revision: 1.104; previous revision: 1.103 done Checking in content/mailWindowOverlay.js; /cvsroot/mozilla/mailnews/base/resources/content/mailWindowOverlay.js,v <-- mailWindowOverlay.js new revision: 1.217; previous revision: 1.216 done Checking in content/mailWindowOverlay.xul; /cvsroot/mozilla/mailnews/base/resources/content/mailWindowOverlay.xul,v <-- mailWindowOverlay.xul new revision: 1.290; previous revision: 1.289 done Checking in content/messageWindow.js; /cvsroot/mozilla/mailnews/base/resources/content/messageWindow.js,v <-- messageWindow.js new revision: 1.103; previous revision: 1.102 done Checking in content/messageWindow.xul; /cvsroot/mozilla/mailnews/base/resources/content/messageWindow.xul,v <-- messageWindow.xul new revision: 1.79; previous revision: 1.78 done Checking in content/messenger.xul; /cvsroot/mozilla/mailnews/base/resources/content/messenger.xul,v <-- messenger.xul new revision: 1.256; previous revision: 1.255 done Checking in content/msgMail3PaneWindow.js; /cvsroot/mozilla/mailnews/base/resources/content/msgMail3PaneWindow.js,v <-- msgMail3PaneWindow.js new revision: 1.277; previous revision: 1.276 done Checking in locale/en-US/messenger.dtd; /cvsroot/mozilla/mailnews/base/resources/locale/en-US/messenger.dtd,v <-- messenger.dtd new revision: 1.197; previous revision: 1.196 done
Attachment #179717 -
Attachment description: Tweaked extended patch v0.1f → Tweaked extended patch v0.1f (Checked in)
Status: ASSIGNED → RESOLVED
Closed: 19 years ago
Resolution: --- → FIXED
Verified FIXED using trunk build 2006-01-4-09 under Windows XP. I checked; all 3 layouts (Classic, Wide, Vertical) are present and work correctly, as do the Message Pane and Folder Pane toggle options.
Status: RESOLVED → VERIFIED
You need to log in
before you can comment on or make changes to this bug.
Description
•