Closed Bug 358339 Opened 18 years ago Closed 18 years ago

[trunk] Mail and / or news message header display is broken, too small.

Categories

(Thunderbird :: Mail Window Front End, defect)

x86
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED
Thunderbird2.0

People

(Reporter: fredbezies, Assigned: mscott)

References

Details

(Keywords: fixed1.8.1.1)

Attachments

(2 files, 2 obsolete files)

User-Agent:       Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9a1) Gecko/20061026 Firefox/3.0a1
Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9a1) Gecko/20061026 Firefox/3.0a1

I'm facing this bug with homemade builds, under Ubuntu Edgy Eft, using gcc version 4.1.2 20060928 (prerelease) (Ubuntu 4.1.1-13ubuntu5), and patch for bug 353150.

It is very simple to describe : header space is very small. And to get headers display, I have to go view / headers / normal menu option.

I don't know if it is related, but I have this error in JS Console :

Error: uncaught exception: [Exception... "ServiceManager::GetService returned failure code:"  nsresult: "0x80570016 (NS_ERROR_XPC_GS_RETURNED_FAILURE)"  location: "JS frame :: chrome://messenger/content/msgMail3PaneWindow.js :: delayedOnLoadMessenger :: line 828"  data: no]

I will attach a screenshot as soon as possible.


Reproducible: Always

Steps to Reproduce:
1.See details


Actual Results:  
Header display space is too small :(

Expected Results:  
Headers displayed.

Here is the .mozconfig I am using :

#
# See http://www.mozilla.org/build/ for build instructions.
#

. $topsrcdir/mail/config/mozconfig

# Options for 'configure' (same as command-line options).
ac_add_options --enable-default-toolkit=cairo-gtk2
ac_add_options --disable-freetype2
ac_add_options --disable-debug
ac_add_options --disable-tests
ac_add_options --enable-optimize="-O2 -pipe"
ac_add_options --enable-strip
ac_add_options --disable-pedantic
ac_add_options --enable-static
ac_add_options --disable-shared
Here is what I see... Not really useful :(
Note. I tested again, and bug only appears when header display is set to normal.
Hmmm, my debug build from this morning is working ok. I didn't do a clobber build though.

Are you running extensions?
No extension at all. And all my builds are made from freshly unpacked and updated sources.

I think this is a clobber build ?!
I wonder if this is Linux only. jst sees this as well on his linux build, but my windows build is ok. 
So it seems to be a linux only bug.

With Ubuntu Edgy Eft, I have Gnome 2.16.1, GTK 2.10.something, and gcc 4.1.2 (pre-release).

Maybe it is related to Gnome 2.16.1 or GTK 2.10 ? Just guessing of course.
And it does not break seamonkey mailnews display. Very weird :(
WFM on Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9a1) Gecko/20061103 Thunderbird/3.0a1 ID:2006110304 (ubuntu, still breezy badger though)
I'm getting lots of errors on the JS console (trunk Linux debug) right after launch:

Error: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIIOService2.manageOfflineStatus]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: file:///mnt/media/mozilla/thunderbird/trunk/opt/dist/bin/components/offlineStartup.js :: anonymous :: line 88"  data: no]
Source File: file:///mnt/media/mozilla/thunderbird/trunk/opt/dist/bin/components/offlineStartup.js
Line: 88

11 times this one:

Error: uncaught exception: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIBoxObject.getProperty]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: chrome://global/content/bindings/textbox.xml ::  :: line 102"  data: no]

then:

Error: uncaught exception: [Exception... "ServiceManager::GetService returned failure code:"  nsresult: "0x80570016 (NS_ERROR_XPC_GS_RETURNED_FAILURE)"  location: "JS frame :: chrome://messenger/content/msgMail3PaneWindow.js :: delayedOnLoadMessenger :: line 829"  data: no]

then again once the textbox.xml one.

During usage (loading msgs etc.) I get more of the textbox.xml errors. I also once the following:

Error: uncaught exception: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIBoxObject.getProperty]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: chrome://global/content/bindings/textbox.xml ::  :: line 102"  data: no]
Source File: chrome://global/content/findBar.js
Line: 112
*** Bug 360157 has been marked as a duplicate of this bug. ***
Standalone msg window is OK, only 3pane affected.
If you go to View|Header|All and back to Normal, it works.

I'm looking at it in the DOMInspector, and there's something broken with the <deck id="msgHeaderViewDeck"> (which switches between Normal and the one-line "collapsed" version of headers using the twisty) and collapsed attribute of its direct children and the grandgrandchildren way down. In the broken state, none of the 2 children have the collapsed=true, but that's not the only problem, because that would mean we see both, but we see none, so the enabling doesn't work properly either. So, I think it's the setting of the initial state of the twisty that's broken.
Forgot to say, when I "pick" the grey bar using DOMI, I get the <vbox id="expandedHeaders">. Yet, when I give its "uncle" :) id=collpasedHeaderView the collapsed=true, the grey bar disappears completely.
It might look weird, but this bug is gone - as far as I see since 2 days or so.

It could be related to a lot of dependencies I had to add in order to get beryl code (http://www.beryl-project.org/) buildable.

Leaving bug open for now, I will wait for a little week and tell you if for me the bug is long dead ;)
Attached patch Catch that exception (obsolete) — Splinter Review
I'm still experiencing this with trunk builds from cvs. Aside from this particular issue, my message list and message panes are both blank when I start TB. The separator between them isn't even drawn. The message list pane isn't drawn until I select a mailbox, and the message pane is left blank until I select a message.

The attached patch fixes all of these problems for me. The uncaught exception from comment 0 appears to be referring to the |var shellService = ...| line. I'm not submitting this as a fix, just an illustration of where the problem lies.
I'd like to understand how SHELL_SERVICE is getting defined, but the actual implementation isn't getting registered with the component manager on linux trunk. Note the shell service code itself has landed on the branch and trunk. 

The gnome shell service gets built for gtk2:

ifeq ($(MOZ_WIDGET_TOOLKIT), gtk2)
CPPSRCS = nsMailGNOMEIntegration.cpp
endif

the class gets registered:

#ifdef MOZ_WIDGET_GTK2
  { "Mail GNOME Integration",
    NS_MAILGNOMEINTEGRATION_CID,
    "@mozilla.org/mail/shell-service;1",
    nsMailGNOMEIntegrationConstructor },
#endif

and HAVE_SHELL_SERVICE gets defined for the XUL pre-processor when we process msgMail3PaneWindow.js for gtk2 builds:

ifneq (,$(filter windows gtk2 mac cocoa, $(MOZ_WIDGET_TOOLKIT)))
DEFINES += -DHAVE_SHELL_SERVICE=1
endif

there must be an inconsistency somewhere in those three spots. And that inconsistency doesn't appear to be on the patch on the branch.






the try/catch around getting the shell service suggested in this patch is consistent with how Firefox does it. For Firefox, in browser.js we have both the ifdef HAVE_SHELL_SERVICE and a try / catch around actually trying to instantiate the shell service. 
(In reply to comment #16)
> And that inconsistency doesn't appear to be on the patch on the branch.

It is for me: my Linux branch and trunk builds both fail, for both the offline service and the default client service.
I did some more checking. In my builds shell-service is registered, but |nsMailGNOMEIntegration::Init()| is failing when it tries to access "@mozilla.org/gnome-gconf-service;1" which isn't registered on my system. I'm apparently missing some GNOME headers and the gnome-gconf-service component isn't being built.
Attached patch a fix (obsolete) — Splinter Review
Similar to Kenneth's patch, this also makes us consistent with Firefox which also wraps attempts to get the shell service in a try/catch.
Attachment #245706 - Attachment is obsolete: true
Attached patch better fixSplinter Review
I forgot to include my changes to the prefs dialog.
Attachment #246252 - Attachment is obsolete: true
Attachment #246253 - Flags: superreview?(bienvenu)
Attachment #246253 - Flags: superreview?(bienvenu) → superreview+
I've checked this into the branch and the trunk. Please let me know if you still have problems after tomorrow's builds come out. And thank you Kenneth for the analysis.
Status: NEW → RESOLVED
Closed: 18 years ago
Keywords: fixed1.8.1.1
Resolution: --- → FIXED
Target Milestone: --- → Thunderbird2.0
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: