Closed Bug 382642 Opened 17 years ago Closed 16 years ago

Unable to collapse mail header pane, or expand To/Cc lines: no twisty

Categories

(SeaMonkey :: MailNews: Message Display, defect)

x86
Windows XP
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: base12, Unassigned)

References

Details

(Keywords: classic, regression, Whiteboard: H'n'C)

Attachments

(1 file)

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a5pre) Gecko/20070531 SeaMonkey/2.0a1pre
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a5pre) Gecko/20070531 SeaMonkey/2.0a1pre

There's no twisty to collapse the mail header.

Reproducible: Always

Steps to Reproduce:
1.Open an e-mail.
2.
3.
Actual Results:  
The mail header displays its full form, as configured by View | Headers.

Expected Results:  
There should be a twisty so that you can collapse the header to a single line, as there is in SM 1.1.x or 1.5a.
I can confirm this issue and change to "new", tried with 2007053022 Trunk Build. 

This Bug exists in former Suiterunner-Builds from tpol too, but I have missed it, because I have installed Mnenhy immediatly in Suiterunner. :( Too bad. 
Status: UNCONFIRMED → NEW
Ever confirmed: true
Status: NEW → RESOLVED
Closed: 17 years ago
Resolution: --- → DUPLICATE
According to bug 383870 comment #5, this bug should be reopened since it was not fixed by the fix for bug 382591 . The twisty is absent in the default theme, but appears in the Modern theme.
Status: RESOLVED → REOPENED
Resolution: DUPLICATE → ---
This bug and bug 383870 are both open and are duplicates, describing the 
same exact bug.  I don't care which is marked a dup of the other, but only
one should be open.
Flags: blocking-seamonkey2.0a1?
Version: unspecified → Trunk
(In reply to comment #6)
> *** Bug 383870 has been marked as a duplicate of this bug. ***

Please make this bug blocking bug 382795 as bug 383870 did. 

Blocks: 382795
Status: REOPENED → ASSIGNED
I found out what causes this.

I'll show a patch soon.
Assignee: mail → jiha.bugzilla
Status: ASSIGNED → NEW
Status: NEW → ASSIGNED
Attachment #278133 - Flags: superreview?(neil)
Attachment #278133 - Flags: review?(neil)
Comment on attachment 278133 [details] [diff] [review]
Fixes messageHeader.css

This won't work on the Mac, because that has no twisty images at all.
Attachment #278133 - Flags: superreview?(neil)
Attachment #278133 - Flags: superreview-
Attachment #278133 - Flags: review?(neil)
Summary: Unable to collapse mail header, no twisty → Unable to collapse mail header pane, no twisty
Comment on attachment 278133 [details] [diff] [review]
Fixes messageHeader.css

This patch changed all the twisty file names from .gif to .png
e.g.
>-  list-style-image: url("chrome://global/skin/tree/twisty-open.gif");
>+  list-style-image: url("chrome://global/skin/tree/twisty-open.png");
>-  list-style-image: url("chrome://global/skin/tree/twisty-clsd.gif");
>+  list-style-image: url("chrome://global/skin/tree/twisty-clsd.png");

But in the classic.jar file distributed with nightly trunk SM builds
just a week ago, there were no twisty .png files, only twisty .gif 
files, so the proposed change fixes nothing in them.  In those builds, 
the cause of the problem is not file name extensions, apparently.
(In reply to comment #11)

[Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.9a9pre) Gecko/2007102103 SeaMonkey/2.0a1pre] (nightly) (W2Ksp4)

<classic.jar> does include <twisty-clsd.png> and <twisty-open.png>.
<modern.jar> includes <twisty-clsd.gif> and <twisty-open.gif>.
Keywords: classic
(In reply to comment #10)
> (From update of attachment 278133 [details] [diff] [review])
> This won't work on the Mac, because that has no twisty images at all.

What about <http://mxr.mozilla.org/seamonkey/find?string=%2Ftwisty-&tree=seamonkey> ?

The only png files are
{{
/toolkit/themes/winstripe/global/tree/twisty-clsd.png
/toolkit/themes/winstripe/global/tree/twisty-open.png
}}
Are they the correct files to use in "Classic" ?

Are
{{
/themes/classic/global/win/tree/twisty-clsd.gif
/themes/classic/global/win/tree/twisty-open.gif
/themes/classic/global/mac/tree/twisty-clsd.gif
/themes/classic/global/mac/tree/twisty-open.gif
}}
obsolete ? (and should be removed ?)
Keywords: helpwanted
(In reply to comment #13)
>/toolkit/themes/winstripe/global/tree/twisty-clsd.png
>/toolkit/themes/winstripe/global/tree/twisty-open.png
>Are they the correct files to use in "Classic" ?
No, because they're only available in winstripe.

>Are
>/themes/classic/global/win/tree/twisty-clsd.gif
>/themes/classic/global/win/tree/twisty-open.gif
>/themes/classic/global/mac/tree/twisty-clsd.gif
>/themes/classic/global/mac/tree/twisty-open.gif
>obsolete ? (and should be removed ?)
Yes, but I'm not removing any old classic until all the regressions are fixed.
(In reply to comment #14)
> >Are they the correct files to use in "Classic" ?
> No, because they're only available in winstripe.

Then, the wrong files are being packaged...
I had a look at <http://mxr.mozilla.org/seamonkey/search?string=twisty-clsd.png&tree=seamonkey>,
but I'm not sure how these 2 files get included.
Which(/How) files should be used instead ?

> >obsolete ? (and should be removed ?)
> Yes, but I'm not removing any old classic until all the regressions are fixed.

(I concur.)
Has the change from .gif to .png happened in the last 14 days?
I'm running a 14-day old trunk SeaMonkey nightly build from the ftp site.
Both jars contain only the .gif.

Now, it may be that in versions of the jar that have only .png files 
and not .gif files, that the above patch would help.  But that would 
imply that the original problem has been fixed elsewhere, since the 
original problem was NOT due to png vs gif files.  
(In reply to comment #16)
> I'm running a 14-day old trunk SeaMonkey nightly build from the ftp site.
> Both jars contain only the .gif.

Could you be more precise on which file/build you are using ?

I checked <seamonkey\chrome\classic.jar, \skin\classic\global\tree\>
in <seamonkey-2.0a1pre.en-US.win32.zip> of the following nightlies:
2007-08-27-02-trunk
2007-10-01-02-trunk
2007-10-08-03-trunk
2007-10-14-03-trunk
and they all have only the 2 .png files.
Serge, thanks for pressing me on this.
My comment 11 and comment 16 are mistaken.  I apologize for my mistake.
Somehow, I had been looking in, and patching, OLD copies of the JAR files.

The copies in the real 2007-10-07-03 build, which I am using, do indeed 
have the png files, and the patch above does fix the missing twisties, 
when applied to the copy of messageHeader.css in the right JAR file. 

On the basis of that finding, I must ask, in reply to Neil's comment 10, 
why isn't this patch appropriate for use on Windows and all platforms on
which the twisty file is indeed in use?
(In reply to comment #18)
>On the basis of that finding, I must ask, in reply to Neil's comment 10, 
>why isn't this patch appropriate for use on Windows and all platforms on
>which the twisty file is indeed in use?
I don't follow you. The patch will never work on the Mac, so I can't accept it.
Neil. what's the issue for the Mac?
- doesn't support PNG files?
- doesn't want twisties?
- wants only animated gifs for twisties? 
- something else?  
(In reply to comment #20)
>Neil. what's the issue for the Mac?
nsNativeThemeMac.cpp draws tree twisties, so there aren't any twisty images.
(Unfortunately those .cpp twisties aren't suitable here.)
Neil, 
I gather that the unpatched version of the code now in messageHeader.css is 
also equally objectionable, since it also refers to a twisty image file.

Forgive this terribly noob-ish question: Can you suggest an example of how
to do this in a way that would be satisfactory, being common to Mac and 
other platforms, with an mxr URL, perhaps?
(In reply to comment #22)
>Forgive this terribly noob-ish question: Can you suggest an example of how
>to do this in a way that would be satisfactory, being common to Mac and 
>other platforms, with an mxr URL, perhaps?
The best idea I have is to do what Thunderbird did, which was to create two new platform-independent icons, although this is of course harder than it looks. Note that I personally dislike Thunderbird's icons, which are here:
http://mxr.mozilla.org/seamonkey/source/mail/themes/pinstripe/mail/icons/twisty-closed.gif
http://mxr.mozilla.org/seamonkey/source/mail/themes/pinstripe/mail/icons/twisty-open.gif
[Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.9a9pre) Gecko/2007102402 SeaMonkey/2.0a1pre] (nightly) (W2Ksp4)

Could this bug explain the absence of twisty in newer builds on To/CC lines too, as in bug 366825 ? (which would then depend on the current bug ?)
(In reply to comment #24)
> Could this bug explain the absence of twisty in newer builds on To/CC lines
> too, as in bug 366825 ? (which would then depend on the current bug ?)

The answer is yes:
renaming the two .png files to .gif in classic.jar works around both issues.
Summary: Unable to collapse mail header pane, no twisty → Unable to collapse mail header pane, or expand To/Cc lines: no twisty
So, I'm no UI or UI-code expert (obviously) but I think it is fair to ask if
we really want to be in a state where there exists no cross-platform solution
for twisties.  I don't know what makes nsNativeThemeMac.cpp's twisties so 
special on Mac (I'm not a Mac user), but could it be done with an animated gif?  
Toolkit only cares about twisties in trees. The Mac theme developers chose to implement their twisties via code in nsNativeThemeCocoa.mm (my fault, I mentioned the previous incarnation of that file). Their logical size is something like three times the size of the images used on Windows but the tree code doesn't mind because it automatically crops and centres them anyway.
This situation seems patently absurd to me.  
Twisties have been broken for months now, on all platforms but Mac.
The Mac folks wanted to use some cool new Mac-specific twisty feature,
and all the other platforms now pay a price of no working twisties.

One would think that Mozilla software development standards would require
that one platform not make a change that breaks all the others.  

There is a small patch that fixes this for all platform but Mac.
That patch is being denied, on the basis that it breaks Mac.
I guess Mac is the one true important platform, and the others can just 
suffer.
(In reply to comment #23)
> The best idea I have is to do what Thunderbird did, which was to create two new
> platform-independent icons, although this is of course harder than it looks.

(In reply to comment #27)
> Toolkit only cares about twisties in trees. The Mac theme developers chose to
> implement their twisties via code in nsNativeThemeCocoa.mm

Scott/TB or Josh/Mac, could you help here ?
For 4 months now, every time I download and install a new nightly build,
before I run it, I run a script that does these steps:
- unzips classic.jar
- applies the above patch to skin/classic/messenger/messageHeader.css
- zips up classic.jar again

Then twisties work in the nightly build on Windows.  

Is there any platform on which the files named twisty-clsd.gif and 
twisty-open.gif are actually distributed?  

If not, then what is the justification for insisting that messageHeader.css
must continue to cite those .gif files and not the .png equivalents which 
ARE distributed?

If, as comment 21 says, the MAC draws its own twisties and does not rely on
image files, then how does it hurt the MAC for Windows to use the files 
that it has?
(In reply to comment #30)
> - unzips classic.jar
> - applies the above patch to skin/classic/messenger/messageHeader.css
> - zips up classic.jar again

Rather than applying the patch each time to the nightlies, you can override those entries using the userChrome.css file as a workaround on Windows.

See http://forums.mozillazine.org/viewtopic.php?t=621125#3226478 for the code.

Nevertheless, this should be fixed in classic.jar at some point.
(In reply to comment #30)
>the .png equivalents [which] ARE distributed?
Except they aren't always distributed.

>If, as comment 21 says, the MAC draws its own twisties and does not rely on
>image files, then how does it hurt the MAC for Windows to use the files 
>that it has?
It hurts in that were we to take the non-Mac fix, we would almost certainly have to undo it again in order to take an XP fix.
Neil:
The .png files are distributed on XP.  
On what non-MAC platforms are they not shipped?

Undo it to take an XP fix?  Was that a typo?  It *IS* an XP fix.  
XP = cross platform, as in XPIDL etc.
(In reply to comment #10)
> (From update of attachment 278133 [details] [diff] [review])
> This won't work on the Mac, because that has no twisty images at all.
> 

Ongoing work on Mac-Proto-Theme (for FF§) in Bug 427935 has implemented new Twisties for Pinstripe in the CVS:
http://mxr.mozilla.org/seamonkey/source/browser/themes/pinstripe/browser/hud-style-twisties.png

I hope, that it is possible to use the new Pinstripe Twisty-Icons also in the MailNews Headerpane. 

Another note: Bug 383532 seems to cover a part of this Bug too, but also another Issue with missing Twisties in MailNews Headerpane at Boxes with more than one Line as far as I understand right. So probably some Parts from Karstens Patch there might be helpful for creating a new patch here. 
(In reply to comment #35)
>http://mxr.mozilla.org/seamonkey/source/browser/themes/pinstripe/browser/hud-style-twisties.png
Sadly we can't use these files directly, as they're in browser, not toolkit.
Yapp, but wasn't it possible to copy this file to:

http://mxr.mozilla.org/seamonkey/source/toolkit/themes/pinstripe/global/tree/

I hope, that this should be the right directory. At weekend H'n'C Karsten has explained something about the Directories used (and shared) in MailNews (TB), but I am not sure to understand everything. 
Depends on: 383532
I reject the notion that it's OK for mailnews to be broken on all platforms 
except Mac, so that Mac can use a special implementation.  Perhaps if Mac was
SO important that its importance is greater than the importance of all other platforms combined, I would accept that, but that is surely not the case.  

Rather than continuing with the status quo, wherein it's broken on all 
platforms except Mac, while searching for a solution for all other platforms, 
I think it is more proper for it to be working all all platforms except one.  

Oh, and who is the right assignee for this bug?  
(In reply to comment #38)

> Rather than continuing with the status quo, wherein it's broken on all 
> platforms except Mac, while searching for a solution for all other platforms, 
> I think it is more proper for it to be working all all platforms except one.  

No, this is not an option! We want it working on *all* platforms. I understand what you mean. But it does not count which platform is used by any majority.

We are still in a pre-alpha state and we need a sustainable solution.

> Oh, and who is the right assignee for this bug?  

This is still me. And I'm discussing with many people around how to push this forward. Unfortunately all this became more complicated than many of us thought. But actually our H'n'C really helped a lot. 
Whiteboard: H'n'C
Let me state this another way:  keeping the mailnews client broken for all 
platforms other than Mac for MONTHS and MONTHS is no longer an option.
This bug is almost a year old.  We cannot recommend that any Windows or Linux
user try it in this state.  Shipping TB alpha with the pane broken on all 
those platforms is NOT acceptable.
Sorry, I meant the SM alpha, not the TB alpha, although the same principle 
applies to either one.
Assignee: jiha.bugzilla → mail
Status: ASSIGNED → NEW
Fixed by patch on bug 383532
Status: NEW → RESOLVED
Closed: 17 years ago16 years ago
Resolution: --- → FIXED
Keywords: helpwanted
Flags: blocking-seamonkey2.0a1?
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: