Closed
Bug 708260
Opened 13 years ago
Closed 13 years ago
Make the spell checking UI not hold on to a document in memory when spelling suggestion is invoked through the context menu.
Categories
(SeaMonkey :: General, defect)
SeaMonkey
General
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: philip.chee, Assigned: philip.chee)
References
Details
Attachments
(1 file, 3 obsolete files)
(deleted),
patch
|
philip.chee
:
review+
mnyromyr
:
superreview+
|
Details | Diff | Splinter Review |
See Firefox Bug 708071 (Spelling suggestions creates a zombie compartment):
Steps to reproduce:
1. In a text area, type a misspelled word.
2. Right-click on the misspelled word so that spelling suggestions appear in the context menu.
3. Close the tab. Open about:memory?verbose and minimize memory usage a dozen times.
A zombie compartment is created and it stays until I repeat it in another text area from another domain. But then the new compartment becomes a zombie. It is created whether I select a suggestion or not.
If I do not right-click on a misspelled word, or if I right-click on a correct word, no zombie compartment is created.
Updated•13 years ago
|
Blocks: ZombieCompartments
Whiteboard: [MemShrink]
Comment 1•13 years ago
|
||
Comment 0 is a copy of bug 708071 comment 0, which makes this bug really confusing.
jst said his understanding was that bug 708071 had fixed the zombie compartment, but there was a C++ leak remaining in the spell checker.
Philip, can you clarify what's going on? Thanks.
Assignee | ||
Comment 2•13 years ago
|
||
> Comment 0 is a copy of bug 708071 comment 0, which makes this bug really confusing.
Sorry. This is a port bug to make sure we don't diverge too much from Firefox and Thunderbird.
Some of the changes in bug 708071 are not in shared code (/browser/) so needs to be ported to SeaMonkey. I have no idea how dependent the front end code is on changes to /toolkit/content/InlineSpellChecker.jsm but in the past whenever a firefox bug changes something in the back end as well as the front we usually need to change our browser code to match as well.
Severity: normal → minor
Comment 3•13 years ago
|
||
Oh, I missed that the product is SeaMonkey. I'll remove the MemShrink tag. Thanks.
Whiteboard: [MemShrink]
Assignee | ||
Comment 4•13 years ago
|
||
STR from Bug 708071 Comment 0:
> 1. In a text area, type a misspelled word.
> 2. Right-click on the misspelled word so that spelling suggestions appear in
> the context menu.
> 3. Close the tab. Open about:memory?verbose and minimize memory usage a dozen
> times.
>
> A zombie compartment is created and it stays until I repeat it in another
> text area from another domain. But then the new compartment becomes a zombie.
> It is created whether I select a suggestion or not.
> If I do not right-click on a misspelled word, or if I right-click on a
> correct word, no zombie compartment is created.
Assignee: nobody → philip.chee
Status: NEW → ASSIGNED
Attachment #612236 -
Flags: review?(iann_bugzilla)
Comment on attachment 612236 [details] [diff] [review]
Patch v1.0 Kill Zombie.
r- for the moment as mailnews will need fixing too.
http://mxr.mozilla.org/comm-central/source/suite/mailnews/mailContextMenus.js#97 is one of the locations I think.
As far as I can tell Composer doesn't need fixing.
Attachment #612236 -
Flags: review?(iann_bugzilla) → review-
Assignee | ||
Comment 6•13 years ago
|
||
> r- for the moment as mailnews will need fixing too.
> http://mxr.mozilla.org/comm-central/source/suite/mailnews/mailContextMenus.js#97
> is one of the locations I think.
What exactly needs fixing here? I'm not following you? I don't think there are is any spell check code here is there?
(In reply to Philip Chee from comment #6)
> > r- for the moment as mailnews will need fixing too.
> > http://mxr.mozilla.org/comm-central/source/suite/mailnews/mailContextMenus.js#97
> > is one of the locations I think.
> What exactly needs fixing here? I'm not following you? I don't think there
> are is any spell check code here is there?
http://mxr.mozilla.org/comm-central/source/suite/mailnews/mailWindowOverlay.xul overrides the onpopupshowing/onpopuphiding code from nsContextMenu but still calls gContextMenu.initItems so the onpopuphiding code will still need to call your new hiding code.
Assignee | ||
Comment 8•13 years ago
|
||
> r- for the moment as mailnews will need fixing too.
> http://mxr.mozilla.org/comm-central/source/suite/mailnews/mailContextMenus.js#97
> is one of the locations I think.
Changes since the last patch:
* Fix mailContextMenus.js => MailContextOnPopupHiding()
* Replace document.popupNode with <menupopup>.triggerNode in related code.
* Copy/Sync related comments from Thunderbird (comment only change).
Attachment #612236 -
Attachment is obsolete: true
Attachment #613688 -
Flags: review?(iann_bugzilla)
Comment on attachment 613688 [details] [diff] [review]
Patch v1.1 Kill More Zombies
>+/**
>+ * Function to clear out the global nsContextMenu, and in the case when we
>+ * are a threadpane context menu, restore the selection so that a right-click
>+ * on a non-selected row doesn't move the selection.
>+ * @param event the onpopuphiding event
This part of the comment is not correct for SM.
>+ */
>+function MailContextOnPopupHiding(aTarget)
>+/**
>+ * Determines whether the context menu was triggered by a node that's a child
>+ * of the threadpane by looking for an ancestor node with id="threadTree".
>+ * @return true if the popupNode is a child of the threadpane, otherwise false
You could add what @param is in this case too.
>+ */
>+function InThreadPane(aTarget)
Worth a comment here too whilst we're at it?
> function FillMailContextMenu(aTarget)
r=me with those answered/addressed
Attachment #613688 -
Flags: review?(iann_bugzilla) → review+
Assignee | ||
Comment 10•13 years ago
|
||
> This part of the comment is not correct for SM.
So what would be correct?
> Worth a comment here too whilst we're at it?
>> function FillMailContextMenu(aTarget)
So what should I write?
Assignee | ||
Comment 11•13 years ago
|
||
>>+ * @param event the onpopuphiding event
> This part of the comment is not correct for SM.
>>+ */
>>+function MailContextOnPopupHiding(aTarget)
Fixed.
>>+ * @return true if the popupNode is a child of the threadpane, otherwise false
> You could add what @param is in this case too.
>>+ */
>>+function InThreadPane(aTarget)
Fixed.
> Worth a comment here too whilst we're at it?
>> function FillMailContextMenu(aTarget)
> * Function to set up the global nsContextMenu, and the mailnews overlay.
> * @param aTarget the target of the popup event
Fixed.
> r=me with those answered/addressed
Requesting moa from Mnyromyr for the mailnews changes.
Attachment #613688 -
Attachment is obsolete: true
Attachment #613946 -
Flags: superreview?(mnyromyr)
Attachment #613946 -
Flags: review+
Assignee | ||
Comment 12•13 years ago
|
||
>>+ * @param event the onpopuphiding event
> This part of the comment is not correct for SM.
>>+ */
>>+function MailContextOnPopupHiding(aTarget)
Fixed.
>>+ * @return true if the popupNode is a child of the threadpane, otherwise false
> You could add what @param is in this case too.
>>+ */
>>+function InThreadPane(aTarget)
Fixed.
> Worth a comment here too whilst we're at it?
>> function FillMailContextMenu(aTarget)
> * Function to set up the global nsContextMenu, and the mailnews overlay.
> * @param aTarget the target of the popup event
Fixed.
> r=me with those answered/addressed
Requesting moa from Mnyromyr for the mailnews changes.
Attachment #613946 -
Attachment is obsolete: true
Attachment #613946 -
Flags: superreview?(mnyromyr)
Attachment #613947 -
Flags: superreview?(mnyromyr)
Attachment #613947 -
Flags: review+
Updated•13 years ago
|
Attachment #613947 -
Flags: superreview?(mnyromyr) → superreview+
Assignee | ||
Comment 13•13 years ago
|
||
Pushed to comm-central
http://hg.mozilla.org/comm-central/rev/8efa0fc77320
Status: ASSIGNED → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•