Opened 12 years ago
Closed 7 years ago
#11531 closed defect (patchwelcome)
Silverlight renderer boken on FF >= 3.6.4
Reported by: | johnfreeman | Owned by: | Eugene Lazutkin |
---|---|---|---|
Priority: | high | Milestone: | 1.13 |
Component: | DojoX GFX | Version: | 1.7.0b1 |
Keywords: | Cc: | ||
Blocked By: | Blocking: |
Description
Since Firefox changed their plugin architecture in version 3.6.4 the onload event is getting fired too early for Silverlight. DojoX GFX is trying to use dojo.byId(pluginName).content before it is available and this generates an exception. Introducing a short wait loop that checks whether dojo.byId(pluginName).content is available fixes the problem.
I know this is really a problem Firefox / Silverlight should sort out themselves. But we can't dictate what version of a particular browser / plugin our users have installed. Adding the workaround to DojoX GFX would be quite simple and unlikely to cause any problems.
FYI: I'm running Firefox 3.6.8 Silverlight 4.0.50524.0 Windows XP SP3
Change History (6)
comment:1 Changed 12 years ago by
Milestone: | tbd → future |
---|---|
Status: | new → assigned |
comment:2 Changed 11 years ago by
Resolution: | → worksforme |
---|---|
Status: | assigned → closed |
comment:3 Changed 11 years ago by
Milestone: | future → 1.6 |
---|
comment:4 Changed 11 years ago by
Milestone: | 1.6 → 1.8 |
---|---|
Resolution: | worksforme |
Status: | closed → reopened |
Version: | 1.5 → 1.7.0b1 |
I can confirm this.
An alternative fix seems to be to use the EMBED node instead of an OBJECT node and then set rawNode to 'sender' instead of dojo.byId(pluginName).content.root;
That is not thoroughly tested though. I found that a timeout works as the OP suggests. silverlight.js line 565:
setTimeout(function(){ if(!s.rawNode){ s.rawNode = dojo.byId(pluginName).content.root; // register the plugin with its parent node surfaces[s._nodeName] = parentNode; s.onLoad(s); } }, 1);
I can submit the fix if you'd like, but I won't need it in 1.7, it can wait until 1.8.
comment:5 Changed 10 years ago by
Milestone: | 1.8 → 2.0 |
---|
1.8 has been tagged; moving all outstanding tickets to next major release milestone.
comment:6 Changed 7 years ago by
Milestone: | 2.0 → 1.12 |
---|---|
Resolution: | → patchwelcome |
Status: | reopened → closed |
Silverlight is mostly abandoned as a tech, so closing as patchwelcome. If someone wants to create a robust pull request, I'll review and land it.
Works for me with the current trunk. Please retest.