Closed
Bug 44173
Opened 25 years ago
Closed 25 years ago
improperly parented modal dialog in install manager
Categories
(Core Graveyard :: Installer: XPInstall Engine, defect, P3)
Core Graveyard
Installer: XPInstall Engine
Tracking
(Not tracked)
VERIFIED
FIXED
People
(Reporter: danm.moz, Assigned: dbragg)
References
Details
nsNetSupportDialog should only be used as a backup plan if no other nsIPrompt
interface is available. It has been used in dozens of places because of its
seductive convenience. But it's flawed, creating modal windows that don't behave
correctly; the cause of various blanket bugs like 25684 and 39439 (both currently
considered nsbeta2+).
This problem can only be fixed by trying much harder to find a proper window to
be the modal dialog's parent. nsNetSupportDialog should be relegated to providing
backup when herculean efforts to locate the actual parent window fail for some
reason.
As an example, the cookie service has been taught to use a proper parent window
for its dialog by laboriously storing a reference to that window's nsIPrompt in
nsHTTPChannel, from which it can be extracted and passed around while processing
notification events, punting to nsNetSupportDialog only when no other choice is
available. That same sort of thing needs to be done in many more places.
One such place is in nsXPInstallManager::ConfirmChromeInstall.
Happy recipients of this bug would spread the happiness most widely if they
would start using a good nsIPrompt window. The "modal windows don't behave
nicely" bugs are being made dependent on this bug and its siblings, and will
eventually be closed as "as fixed as they're going to get" once these have all
been considered.
*** Bug 46798 has been marked as a duplicate of this bug. ***
Another place is in the same file, ::ConfirmInstall() -- slightly different in
that case, the hidden window is explicitly used as the parent instead of implied
by the null passed to ConfirmCheck() in the ::ConfirmChromeInstall() place.
Comment 3•25 years ago
|
||
Reassigning to Don because he's done the fix already
Assignee: dveditz → dbragg
Yep. It was fixed when I fixed 50942. Checked in with that fix on 9-14-2000.
Status: NEW → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
Build: 2000-09-19-09-M18(WIN)
Looks fine on Win95.
David: If you check Mac, Linux, and WinNT, then go ahead and mark this one
Verified otherwise I'll check it when I get in tomorrow. To verify, from
Netscape 6 open http://jimbob/jars/a_skin_classic2.html, click Install button
and make sure that the dialog window that comes up is modal. Thanks.
Build: 2000-09-20-09-M18(WIN), 2000-09-20-08-M18(MAC), 2000-09-20-08-M18(LINUX)
Good on all platforms. Marking Verified.
Status: RESOLVED → VERIFIED
Updated•10 years ago
|
Product: Core → Core Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•