Closed
Bug 396983
Opened 17 years ago
Closed 17 years ago
nsXULPopupManager::ShowPopup (or callers) should flush frames
Categories
(Core :: XUL, defect)
Core
XUL
Tracking
()
RESOLVED
FIXED
People
(Reporter: Gavin, Assigned: enndeakin)
References
Details
(Keywords: regression)
Attachments
(1 file, 1 obsolete file)
6.07 KB,
patch
|
bzbarsky
:
review+
bzbarsky
:
superreview+
dbaron
:
approval1.9+
|
Details | Diff | Splinter Review |
See bug 395314: trying to unhide and then open a popup doesn't currently work without forcing frame construction or using a setTimeout hack. nsXULPopupManager::ShowPopup should probably FlushPendingNotifications().
Reporter | ||
Updated•17 years ago
|
Summary: nsXULPopupManager::ShowPopup callers should flush frames → nsXULPopupManager::ShowPopup (or callers) should flush frames
Comment 1•17 years ago
|
||
Or nsPopuBoxObject::ShowPopup should if the other caller of nsXULPopupManager::ShowPopup can't deal.
Assignee | ||
Comment 2•17 years ago
|
||
Sounds like nsXULPopupManager::GetFrameOfTypeForContent could just take a shouldFlush argument which flushes before retrieving the frame.
Assignee | ||
Comment 3•17 years ago
|
||
Assignee: nobody → enndeakin
Status: NEW → ASSIGNED
Attachment #283469 -
Flags: superreview?(bzbarsky)
Attachment #283469 -
Flags: review?(bzbarsky)
Flags: blocking1.9? → blocking1.9-
Whiteboard: [wanted-1.9]
Comment 4•17 years ago
|
||
Comment on attachment 283469 [details] [diff] [review]
flush the frames before showing a popup
A flush can run arbitrary script. In particular, the presshell can be dead here after the flush...
I assume all consumers are OK with random script running here, right?
Attachment #283469 -
Flags: superreview?(bzbarsky)
Attachment #283469 -
Flags: superreview-
Attachment #283469 -
Flags: review?(bzbarsky)
Attachment #283469 -
Flags: review-
Assignee | ||
Comment 5•17 years ago
|
||
(In reply to comment #4)
> (From update of attachment 283469 [details] [diff] [review])
> A flush can run arbitrary script. In particular, the presshell can be dead
> here after the flush...
Ah, yes. So it should be ok to keep a strong reference to the presshell right?
> I assume all consumers are OK with random script running here, right?
Yes, the callers are expecting synchronous event handling so scripts will already be exected to run.
Comment 6•17 years ago
|
||
> Ah, yes. So it should be ok to keep a strong reference to the presshell right?
Yeah, I think that should be enough.
Assignee | ||
Comment 7•17 years ago
|
||
Attachment #283469 -
Attachment is obsolete: true
Attachment #283761 -
Flags: superreview?(bzbarsky)
Attachment #283761 -
Flags: review?(bzbarsky)
Comment 8•17 years ago
|
||
Comment on attachment 283761 [details] [diff] [review]
keep a strong reference to the presshell
r+sr=bzbarsky
Attachment #283761 -
Flags: superreview?(bzbarsky)
Attachment #283761 -
Flags: superreview+
Attachment #283761 -
Flags: review?(bzbarsky)
Attachment #283761 -
Flags: review+
Assignee | ||
Updated•17 years ago
|
Attachment #283761 -
Flags: approval1.9?
Comment on attachment 283761 [details] [diff] [review]
keep a strong reference to the presshell
a1.9=dbaron
Attachment #283761 -
Flags: approval1.9? → approval1.9+
Assignee | ||
Updated•17 years ago
|
Status: ASSIGNED → RESOLVED
Closed: 17 years ago
Flags: in-testsuite+
Resolution: --- → FIXED
Updated•17 years ago
|
Flags: wanted1.9+
Whiteboard: [wanted-1.9]
Component: XP Toolkit/Widgets: XUL → XUL
QA Contact: xptoolkit.xul → xptoolkit.widgets
You need to log in
before you can comment on or make changes to this bug.
Description
•