Opened 13 years ago
Closed 12 years ago
#5553 closed defect (wontfix)
Plugins don't work inside layout widgets that hide panes via style.display=none (FF)
Reported by: | guest | Owned by: | |
---|---|---|---|
Priority: | high | Milestone: | 1.4 |
Component: | Dijit | Version: | 1.0 |
Keywords: | TabContainer Firefox CSS style.display | Cc: | |
Blocked By: | Blocking: |
Description (last modified by )
Firefox bug # 90268 has been around since July 10, 2001 (https://bugzilla.mozilla.org/show_bug.cgi?id=90268).
Firefox will unload plug-ins if the container's style.display is toggled to 'none'. As a result, this occurs with the Dojo TabContainer? / ContentPane? in Firefox, causing loss of state (and possibly input) if a user is switching between tabs of an application, and a ContentPane? associated with a tab uses a plug-in (such as Flash Player with a Flex component). I believe that the other dijit Containers may exhibit the same problem (such as the AccordionContainer?).
If there is a way to prevent the use of the style.display property it has so far eluded me, an application of this sort would be forced to IE or the use of the TabContainer? events to manipulate <DIVS> outside of the tab container (using visibility / zIndex without the display attribute).
Change History (5)
comment:1 Changed 13 years ago by
Milestone: | → 2.0 |
---|---|
Priority: | high → normal |
Summary: | Dojo must provide ability to workaround Firefox CSS style.display bug - plug-ins/containers → Plugins don't work inside layout widgets that hide panes via style.display=none (FF) |
comment:4 Changed 12 years ago by
Milestone: | 1.3 → 1.4 |
---|
bumping 1.4 tickets to 1.5, and most 1.3 tickets to 1.4
comment:5 Changed 12 years ago by
Resolution: | → wontfix |
---|---|
Status: | new → closed |
There was a big refactor of all this code recently. We tried using visibility:hidden rather than display:none but it caused too many problems on IE.
I suppose you could modify the definitions of dijitHidden and dijitVisible to use display:none on IE but visibility:hidden on firefox. I think that will get you what you want.
You could also use a ContentPane with an href and refreshOnShow set to true.
Anyway, I think you can get this working with one of those workarounds. I don't want to make firefox use visibility:hidden by default because it's slower performance. So I'm going to mark this as "won't fix" and hopefully you can do the workaround as suggested above.
Hmm, I suppose that using visibility:hidden with position:absolute is possible although that's a big change and could cause other side effects.