Opened 12 years ago
Closed 12 years ago
#8838 closed defect (fixed)
[regression] IE6: test_Dialog.html hangs
Reported by: | Douglas Hays | Owned by: | bill |
---|---|---|---|
Priority: | high | Milestone: | 1.3 |
Component: | Dijit | Version: | 1.3.0b2 |
Keywords: | Cc: | ||
Blocked By: | Blocking: |
Description
[16540] caused a regresson with popups and IE6.
Run test_Dialog.html using IE6 and shrink the window size horizontally until the right edge of the browser is near the end of the button "Programmatic Dialog (3 second delay)".
Click "Show Dialog". The browser locks up.
Attachments (1)
Change History (3)
comment:1 Changed 12 years ago by
Status: | new → assigned |
---|
comment:2 Changed 12 years ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
(In [16979]) Ignore spurious resize events on IE, for performance but more importantly to prevent a browser hang.
Showing the dialog with a small viewport width makes _position() run, which strangely triggers a window.onresize event, which again was making _position() run, ad infinitum.
Fixes #8838 !strict.
Changed 12 years ago by
Attachment: | noExpressions.diff added |
---|
Patch to stop using CSS expressions for BackgroundIFrame; this wasn't needed to fix this problem but might be needed eventually. Apply against popup.js [16608].
Looks like [16540] causing the regression is inadvertent; it's just a timing issue.
It happens when the viewport's width is less than the width of the dialog. (Note that in the above description it means that you need to shrink the window until the first and second button are on separate rows.)
In this case, showing the dialog makes the dialog positioning code (_position()) run, which strangely triggers a window.onresize event, which again makes _position() run, ad infinitum.