Summary: | Embedded Flash on one certain website does not show up (Flash works elsewhere) | ||
---|---|---|---|
Product: | [Applications] konqueror | Reporter: | Paul Hoepfner-Homme <ahd9ryi02> |
Component: | khtml renderer | Assignee: | Konqueror Developers <konq-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | larkang |
Priority: | NOR | ||
Version: | 4.0 | ||
Target Milestone: | --- | ||
Platform: | Gentoo Packages | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: |
Description
Paul Hoepfner-Homme
2003-10-25 20:07:05 UTC
did you try changing the browser ID for that page? Yes, just tried that. I loaded the page with an ID of Internet Explorer 6.0 for XP, and it didn't make a difference. I don't see why it would anyway, because when I go "View Document Source" the page contains the following: <embed src="movie2.swf" width=550 height=400 loop=false play=true quality=high> Hold on... I just noticed it's between <object> tags. Okay, I edited the page and removed the <object> tags, and now the Flash appears. So it looks like Konqueror is incorrectly hiding embedded content because it's between <object> tags. Other browsers like Mozilla and IE don't do this. It's there, it's just the wrong size. *** This bug has been marked as a duplicate of 66555 *** Still a problem, but not nsplugin related as kswfdec does the same thing. Can't be an NSPlugin bug if it happens to non-nsplugins too. Same problem here on other pages. The flash is between object tags, it works on firefox, but not in konqueror. The flash does not show, but when I right click on it, I get the Flash context menu with "About flash 7", etc... This is still not fixed in KDE 3.3.2 FIXED HERE : The object tags had nothing to do with the problem. I was able to fix the problem by removing 1 parameter between the object tags: <param name="Play" value="-1"> If I remove this, the flash plays fine. This should be fixed as with IE and mozill/firefox it plays fine with this parameter. The bug here is very clearly a KHTML problem. width=550 and height=400 are attributes of the embed, not the object. KHTML is ignoring them because of this. Put them on the object and it works properly. CVS commit by staikos: support: <object><embed width= height=></object> properly (width and height were not passed up and across) BUG: 66591 M +6 -0 ChangeLog 1.401 M +8 -0 rendering/render_frames.cpp 1.196 --- kdelibs/khtml/ChangeLog #1.400:1.401 @@ -1,2 +1,8 @@ +2005-03-16 George Staikos <staikos@kde.org> + + * rendering/render_frames.cpp: some sites put width and height on <embed> + inside <object> instead of on <object>, so push that attribute up to + <object> and report it to the plugin + 2005-03-14 Germain Garand <germain@ebooksfrance.org> --- kdelibs/khtml/rendering/render_frames.cpp #1.195:1.196 @@ -663,6 +663,14 @@ void RenderPartObject::updateWidget() if (!objbase->getAttribute(ATTR_WIDTH).isEmpty()) params.append( QString::fromLatin1("WIDTH=\"%1\"").arg( objbase->getAttribute(ATTR_WIDTH).string() ) ); + else if (!embed->getAttribute(ATTR_WIDTH).isEmpty()) { + params.append( QString::fromLatin1("WIDTH=\"%1\"").arg( embed->getAttribute(ATTR_WIDTH).string() ) ); + objbase->setAttribute(ATTR_WIDTH, embed->getAttribute(ATTR_WIDTH)); + } if (!objbase->getAttribute(ATTR_HEIGHT).isEmpty()) params.append( QString::fromLatin1("HEIGHT=\"%1\"").arg( objbase->getAttribute(ATTR_HEIGHT).string() ) ); + else if (!embed->getAttribute(ATTR_HEIGHT).isEmpty()) { + params.append( QString::fromLatin1("HEIGHT=\"%1\"").arg( embed->getAttribute(ATTR_HEIGHT).string() ) ); + objbase->setAttribute(ATTR_HEIGHT, embed->getAttribute(ATTR_HEIGHT)); + } if ( embed ) { |