Closed Bug 429440 Opened 16 years ago Closed 16 years ago

Preview pane must be visible for tabs to render.

Categories

(Thunderbird :: Mail Window Front End, defect, P4)

defect

Tracking

(Not tracked)

RESOLVED FIXED
Thunderbird 3.0b2

People

(Reporter: JoeS1, Assigned: beckley)

References

Details

Attachments

(1 file, 2 obsolete files)

STR:
  Select wide view in layout option
  Drag the preview pane down (out of viewport)
  Open a message in a tab

Result: Tab does not render

Use case: For graphics newsgroups, it is desirable to view as large a messagepane as you can get (Fullscreen would be better) Many folks disable the preview pane due to paranoia about Javascript, not so in my use.
 
For those that do use JS in news, having the preview pane visible executes JS and instantiates plugins at the time of the preview. This interferes with proper viewing of the complete post.

This problem seems to be there in both Myk's implementation bug 297379 as well as David's bug 218999
Flags: wanted-thunderbird3.0a1?
lower order bugs like bug 429440 typically block the meta bug
Blocks: tabsmeta
No longer depends on: tabsmeta
OS: Windows XP → All
Hardware: PC → All
Moving from wanted‑thunderbird3.0a1? flag to wanted‑thunderbird3.0a2? flag since code for Thunderbird 3 Alpha 1 has been frozen.
Flags: wanted-thunderbird3.0a1? → wanted-thunderbird3.0a2?
Flags: wanted-thunderbird3.0a2? → wanted-thunderbird3?
Certainly wanted3.
Flags: wanted-thunderbird3? → wanted-thunderbird3+
Priority: -- → P3
Target Milestone: --- → Thunderbird 3.0b2
This BUG is so important to me that i seriously think about an alterative programm instead of TB. Altought i'm a really big Mozilla fan -.-
I hate this Message Panel and want WINDOWS in TABS (like Firefox)
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1b2pre) Gecko/20081010 Shredder/3.0b1pre ID:20081010031350

Despite the title of this bug, I find that the issue applies to any layout view (Classic, Wide or Vertical) where the Message Pane is not active, or in Vertical view whether or not the Message Pane is active/inactive.
Preview pane requirement extends to all layouts. Changed summary accordingly.
Summary: Wide view tabs require visible preview pane → Preview pane must be visible for tabs to render.
Please fix this MAJOR Bug (imho).
It's not glorius for Mozilla if they release a Thunderbird 3 beta 1 Version without fixing this !!
Don't underestimate this BUG !!!
Flags: blocking-thunderbird3?
Yep, this needs fixing.
Flags: blocking-thunderbird3? → blocking-thunderbird3+
Priority: P3 → P4
Target Milestone: Thunderbird 3.0b1 → Thunderbird 3.0b2
since this is a different project from penelope, yet Bug 418522 has made it into this projects bug list, anyoine that voted on the bug over in the penelope project, will need to come over here to vote on this one.
Blocks: 418522
Attached patch Patch with fix (obsolete) — Splinter Review
Here's a fix to the bug.  The hiding/showing of the various panes had to be done before the new tab gets opened.  Also, the collapsed/hidden state of the preview pane needed to be saved so that when you go back and forth between message and mailbox tabs the preview pane can get the correct state.
Assignee: nobody → beckley
Status: NEW → ASSIGNED
Attachment #351335 - Flags: superreview?
Attachment #351335 - Flags: review?(bugzilla)
Attachment #351335 - Flags: superreview? → superreview?(dmose)
Comment on attachment 351335 [details] [diff] [review]
Patch with fix

No need for sr for this patch (its in mail/).

Although this fixes the bug, I don't like the global variable. I think DisplayFolderAndThreadPane should be moved inside the mailTabType object and hence it can become a member variable.

+  if (!show)
+  {
+    gLastMessagePaneCollapsed = messagePane.collapsed;
+    messagePane.collapsed = false;
+  }

nit: brackets style should be:

if ( ) {
}

There is another problem that you may want to look at as well (If you don't, that is fine, I'll move it out to another bug):

- Have the default tab open on a folder; open a message tab and a folder tab.
- On the second folder tab, hide the preview pane.
- On the first folder tab, unhide the preview pane - note that messages can be displayed normally.
- Go back to the second folder tab; the preview pane is not hidden and messages can't be displayed either (you have to hide and unhide the preview pane again).
Attachment #351335 - Flags: superreview?(dmose)
Attachment #351335 - Flags: review?(bugzilla)
Attachment #351335 - Flags: review-
Here's the changes for moving the function and variable inside the mailTabType object.

> There is another problem that you may want to look at as well (If you don't,
> that is fine, I'll move it out to another bug):

Yes, could you do that?  Thanks.
Attachment #351335 - Attachment is obsolete: true
Attachment #353466 - Flags: review?(bugzilla)
(In reply to comment #15)
> > There is another problem that you may want to look at as well (If you don't,
> > that is fine, I'll move it out to another bug):
> 
> Yes, could you do that?  Thanks.

For the record, filed bug 470755.
Comment on attachment 353466 [details] [diff] [review]
Changes addressing Standard8's comments

>@@ -1390,21 +1362,61 @@ let mailTabType = {
>     {
>       aTab.selectedMsgId = null;
>       aTab.msgSelectedFolder = gDBView.msgFolder;
>     }
>     if (aTab.msgSelectedFolder)
>       aTab.mailView = GetMailViewForFolder(aTab.msgSelectedFolder);
>   },
> 
>+  _lastMessagePaneCollapsed: false,
>+  _displayFolderAndThreadPane: function(show) {

nit: insert a blank line between these please.

r=me
Attachment #353466 - Flags: review?(bugzilla) → review+
Attached patch Final patchSplinter Review
Added extra blank line.

Continuing r=Standard8
Attachment #353466 - Attachment is obsolete: true
Attachment #354194 - Flags: review+
Keywords: checkin-needed
Checked in: http://hg.mozilla.org/comm-central/rev/a75b66a8b2a4
Status: ASSIGNED → RESOLVED
Closed: 16 years ago
Keywords: checkin-needed
Resolution: --- → FIXED
Blocks: smtabmail
Comment on attachment 354194 [details] [diff] [review]
Final patch

>+    // Remember the state of the message pane before going to a message-only
>+    // view so that we can restore that state when going back to a normal
>+    // 3-pane view.
>+    let messagePane = document.getElementById("messagepanebox");
>+    if (!show) {
>+      this._lastMessagePaneCollapsed = messagePane.collapsed;
>+      messagePane.collapsed = false;
>+    }
>+    else if (this._lastMessagePaneCollapsed)
>+      messagePane.collapsed = true;

This is just wrong. 
What you are basically doing is "hitting F8", so you should follow the course of action set by MsgToggleMessagePane and especially ChangeMessagePaneVisibility...
(In reply to comment #20)
> What you are basically doing is "hitting F8", so you should follow the course
> of action set by MsgToggleMessagePane and especially
> ChangeMessagePaneVisibility...

I've done that in bug 476343.
You need to log in before you can comment on or make changes to this bug.