Closed Bug 381186 Opened 14 years ago Closed 14 years ago

Edit Form Info doesn't work in suiterunner builds

Categories

(SeaMonkey :: General, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: standard8, Assigned: neil)

References

Details

Attachments

(1 file, 1 obsolete file)

Edit form info isn't working, and we'd like to keep this working even if we only use wallet for nightly builds (i.e. its dropped by the time we do a release). Opening the edit form info page gives:

Error: uncaught exception: Permission denied to get property ChromeWindow.initPanel

Neil has a patch for this...
Attached patch Proposed patch (obsolete) — Splinter Review
The basic issue is that the individual pages are loaded from chrome://wallet/locale/ so localizers can change the available fields.
However these pages no longer have full chrome privileges. Therefore I
* Moved the load handler from each separate page to a central load handler
* Passed a parameter to the load handler so that Urlspecific can access it
* Also fixed a cross-document element creation bug
(you can only append nodes to the document you use to create them).
Attachment #265289 - Flags: review?(bugzilla)
Comment on attachment 265289 [details] [diff] [review]
Proposed patch

I don't think this patch is working right.

With the patch I get to view the data that was set up previously (via migration), and I can change fields that have values already set.

If I try and set values in blank fields, when I click OK, nothing happens and the following error is shown on the console:

JavaScript error: chrome://communicator-region/locale/wallet/WalletName.xul, line 1: Append is not defined
************************************************************
* Call to xpconnect wrapped JSObject produced this error:  *
[Exception... "Node cannot be used in a document other than the one in which it was created"  code: "4" nsresult: "0x80530004 (NS_ERROR_DOM_WRONG_DOCUMENT_ERR)"  location: "chrome://communicator/content/wallet/WalletViewer.js Line: 358"]
************************************************************

Also when I go onto some panes, like the "Primary Contact Information"-> "Address", and drop down the arrow at the end I get the following errors:

JavaScript error: chrome://communicator-region/locale/wallet/WalletAddress.xul, line 1: Append is not defined
JavaScript error: , line 0: uncaught exception: [Exception... "Security error"  code: "1000" nsresult: "0x805303e8 (NS_ERROR_DOM_SECURITY_ERR)"  location: "chrome://global/content/bindings/menulist.xml Line: 533"]
Attachment #265289 - Flags: review?(bugzilla) → review-
Attached patch Fixed patchSplinter Review
* Additionally fixes the additional misuse of docment.createElementNS
Attachment #265289 - Attachment is obsolete: true
Attachment #265379 - Flags: review?(bugzilla)
Comment on attachment 265379 [details] [diff] [review]
Fixed patch

This seems to work ok now. I still get the:

JavaScript error: , line 0: uncaught exception: [Exception... "Security error" 
code: "1000" nsresult: "0x805303e8 (NS_ERROR_DOM_SECURITY_ERR)"  location:
"chrome://global/content/bindings/menulist.xml Line: 533"]

errors, but if your happy that's not a problem (or exists in branch), I'm willing to go with it on the basis that we hope to dump wallet soon anyway.
Attachment #265379 - Flags: review?(bugzilla) → review+
That's actually a variant of bug 329394, so it's a separate bug.
Fix checked in.
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.