Closed Bug 16303 Opened 25 years ago Closed 25 years ago

[DOGFOOD] [BLOCKER] Regression: Account manager panes not changing

Categories

(SeaMonkey :: MailNews: Account Configuration, defect, P1)

defect

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: fenella, Assigned: alecf)

Details

(Whiteboard: [PDT+] Fix in hand; waiting on code review.)

Linux (1999-10-13-08 m11) Commercial
Win32 (1999-10-13-09 m11)Commercial
Mac (1999-10-13-08 m11)Commercial
Steps:
1. Launch Messenger
2. Select Edit|Account Setting to open Account Settings window
3. Click on an account, it displays the Sever and Copies and Folders items.

Actual Result: Single click or double click on Server, the open twisty is
displayed, but the Server Setting page is NOT displayed on the right side of the
screen.
Single click or double click on the Copies and Folders item, the open twisty is
displayed, but the Copy and Folder settings page is NOT displayed on the right
side of the screen.

Expected result: When I click on Server, I expect the Server Setting information
and item lists to be displayed in the right frame of the screen.

And when I click on the Copies and Folders, I expect the Copy and Folder Setting
item lists and combo boxes to be displayed on the right side.

This problem occurs on Linux and Mac only.
It does not happen on win_nt.
Status: NEW → ASSIGNED
Priority: P3 → P1
Summary: Regression: Server,Copies and Folders are not enabled. → Regression: Account manager panes not changing
Target Milestone: M11
could be a bug with the tabpanel.
Turns out this is some kind of wierd DOM security violation.
However, I don't believe I'm doing anything out of the ordinary. This is the
message I get on the console:
JavaScript Error: access disallowed from scripts at
file:////home1/alecf/seamonkey/mozilla/dist/bin/chrome/messenger/content/default/am-server.xul
to documents at another domain
URL:
file:////home1/alecf/seamonkey/mozilla/dist/bin/chrome/messenger/content/default/am-server.js
LineNo: 27

JavaScript Error: uncaught exception: [Exception... "Security error"  code:
"1000" nsresult: "0x805303e8 (NS_ERROR_DOM_SECURITY_ERR)"  location:
"file:////home1/alecf/seamonkey/mozilla/dist/bin/chrome/messenger/content/default/am-server.js
Line: 27"]

However, all the XUL and JS is all from the same original URL
(chrome://messenger/content/)

have a look at
mozilla/mailnews/base/prefs/resources/content/AccountManager.js and
mozilla/mailnews/base/prefs/resources/content/am-copies.js

meanwhile, I'll write a little description of how this dialog works so you
understand what's going on.
Assignee: alecf → norris
Status: ASSIGNED → NEW
Summary: Regression: Account manager panes not changing → [BLOCKER] Regression: Account manager panes not changing
oops, forgot to assign this to norris

Norris, please read my previous explanation of the problem I'm seeing... this
problem started happening when you turned on DOM security.

Here is a comment that I'm about to add to AccountManager.js:
/*
 * here's how this dialog works:
 * The main dialog contains a tree on the left (accounttree) and a
 * deck on the right. Each card in the deck on the right contains an
 * IFRAME which loads a particular preference document (such as am-main.xul)
 *
 * when the user clicks on items in the tree on the right, two things have
 * to be determined before the UI can be updated:
 * - the relevant account
 * - the relevant page
 *
 * when both of these are known, this is what happens:
 * - every form element of the previous page is saved in the account value
 *   hashtable for the previous account
 * - the card containing the relevant page is brought to the front
 * - each form element in the page is filled in with an appropriate value
 *   from the current account's hashtable
 * - in the IFRAME inside the page, if there is an onInit() method,
 *   it is called. The onInit method can further update this page based
 *   on values set in the previous step.
 */

The problem is actually occuring in the last step (the onInit() method for the
particular page) the first time that I call document.getElementById()
Severity: normal → blocker
Summary: [BLOCKER] Regression: Account manager panes not changing → [DOGFOOD] [BLOCKER] Regression: Account manager panes not changing
(Recommend Dogfood bug for PDT team to review.)
QA Contact: lchiang → nbaca
Whiteboard: [PDT+]
Putting on [PDT+] radar.
Status: NEW → ASSIGNED
Whiteboard: [PDT+] → [PDT+] Fix in hand; waiting on code review.
Win32 (1999-10-13-13 m11) Commercial
This problem now occurs in the win32 afternoon build.
Assignee: norris → alecf
Status: ASSIGNED → NEW
Status: NEW → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
I wanted this fixed by tomorrow so people could actually use the mail client, so
I checked in the fix myself.
I checked in the rest of the changes just now.
Status: RESOLVED → VERIFIED
Linux (1999-10-15-08 M11)
Win_nt (1999-10-15-12 M11)
Mac (1999-10-15-11 M11)
I checked all three platforms, the problem has been fixed.
Product: Browser → Seamonkey
You need to log in before you can comment on or make changes to this bug.