setTimeout() stops working if modal dialog is opened after reloading page

NEW
Unassigned

Status

()

Core
DOM
P5
normal
10 years ago
24 days ago

People

(Reporter: Wladimir Palant, Unassigned)

Tracking

Trunk
x86
Windows XP
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

1.88 KB, application/vnd.mozilla.xul+xml
Details
(Reporter)

Description

10 years ago
Created attachment 358175 [details]
Testcase

The scenario is relatively complicated, apparently nested frames are required to reproduce the issue. If the inner nested frame decides to load a different document into its parent frame and then open a modal chrome dialog this runs succeeds - but afterward setTimeout() is no longer working in this window. <progressmeter mode="undetermined"> widget is also broken.

Testcase attached. To run it, place it so that it can be accessed via a chrome:// URL, then open Error Console and run this command:

  openDialog("chrome://.../setTimeout_failure.xul", "_blank", "width=500,height=500")

URL to be adjusted depending on location of the testcase. When it opens you will see the inner nested frame (other documents don't take up any space) with a progressmeter (should be rotating) and two buttons. First button tests setTimeout - on click it should display "OK". The other button will reload the parent frame and open a modal dialog.

Clicking the second button will open a modal dialog correctly (can be closed). However, the reloaded frame isn't fully functional any more - progressmeter isn't rotating, clicking "Try setTimeout()" has no result. setTimeout() never fires for that window.

The obvious workaround is using top.openDialog() instead of window.openDialog(). Ideally, both should work however.

Reproduced in Firefox 3.0.5 and Minefield 20090121 build on Windows XP.
Dupe-of or related-to bug 501501?
https://bugzilla.mozilla.org/show_bug.cgi?id=1472046

Move all DOM bugs that haven’t been updated in more than 3 years and has no one currently assigned to P5.

If you have questions, please contact :mdaly.
Priority: -- → P5
You need to log in before you can comment on or make changes to this bug.