Summary: | konqueror can't display google video | ||
---|---|---|---|
Product: | [Applications] konqueror | Reporter: | Giovanni Venturi <giovanni> |
Component: | nsplugins | Assignee: | George Staikos <staikos> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | amantia |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | unspecified | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Giovanni Venturi
2006-04-06 22:52:19 UTC
How are we supposed to find out why the closed-source Flash plugin is failing to do what it's supposed to do? Well you are right. A closed application cannot be debugged, but with KDE 3.5.1 it worked. Same problem with KDE 3.5.1-2.3 Red Hat. The same Flash plugin works fine with Firefox. You can compare how firefox manages this and it might help FYI if you resize the konqueror window then the video starts playing but not all is displayed. Maximise does not help so one must drag the window border larger to show more of the video. It is very hard to get the playback controls to show up. It looks (pure hand-waving and speculation) like the plugin isn't being told its viewport size correctly. Bug confirmed here on KDE 3.5.4, compiled from sources. To give more details about the symptoms: an empty grey area is displayed in lieu of the plug-in, but the sound plays correctly. The grey area reacts to right-click by displaying the Flash plug-in menu. Resizing the window does indeed make the picture appear. Apparently, what the site does is, it inserts the <embed> tag dynamically with a Javascript function called as an onload event. It seems that Konqueror doesn't properly tell the Flash plug-in about its geometry in this case. Interestingly, the same thing happens when you load a Flash file directly into Konqueror. Messing about with this, using Epiptany, it loses the flash toolbar. Resizing Epipthany though restores the flash 'window' correctly and all works as should. Resizing Konq does make the video appear, but to me it is then only a part of it - usually the top and bottom/sides are cut off. So, looking around a bit: http://bugs.kde.org/show_bug.cgi?id=117603 Was this patch applied? Also what I don't understand why it did work in 3.5.1, and now doesn't and nobody seems to know (or care) why? Nick Well, here's a thing. I can play google videos on 3.5.4!!! with a bit of messing First, I use Konq with no menu bar, and limited toolbars at full screen all the time... So, visit the link (I picked a nice one :-) ) and then hit F9 to get history bar... then hit F9 to toggle history off, and google video is working fine with toolbar and all. http://video.google.co.uk/videoplay?docid=8271874173492401222 Nick Error: http://video.google.co.uk/jslib/misc.vbs?v=851738: SyntaxError: Parse error at line 2 Error: http://video.google.co.uk/jslib/misc.vbs?v=851738: SyntaxError: Parse error at line 2 that is what konqueror says about it SVN commit 589919 by orlovich: - Make sure we always size the plugin: - Fixes google videos showing up. - Fixes acroread in background tab. - Make sure to notify the plugin directly of size changes: - Fixes resizing of google videos - Makes sizing of acroread more reliable BUG:117603 BUG:125076 BUG:118038 ... And potentially a couple others, will double-check. M +5 -0 nspluginloader.cpp M +1 -0 nspluginloader.h M +1 -5 viewer/nsplugin.cpp M +0 -1 viewer/nsplugin.h --- branches/KDE/3.5/kdebase/nsplugins/nspluginloader.cpp #589918:589919 @@ -120,6 +120,11 @@ kdDebug() << "NSPluginInstance(client)::resizeEvent" << endl; } +void NSPluginInstance::showEvent(QShowEvent *event) +{ + EMBEDCLASS::showEvent(event); + resizePlugin(width(), height()); +} /*******************************************************************************/ --- branches/KDE/3.5/kdebase/nsplugins/nspluginloader.h #589918:589919 @@ -56,6 +56,7 @@ protected: void resizeEvent(QResizeEvent *event); + void showEvent (QShowEvent *); void windowChanged(WId w); class NSPluginLoader *_loader; bool shown; --- branches/KDE/3.5/kdebase/nsplugins/viewer/nsplugin.cpp #589918:589919 @@ -588,7 +588,6 @@ : DCOPObject(), QObject( parent, name ) { Q_UNUSED(embed); - _firstResize = true; _visible = false; _npp = privateData; _npp->ndata = this; @@ -988,10 +987,7 @@ resizeWidgets(XtWindow(_form), _width, _height); - if (_firstResize) { - _firstResize = false; - setWindow(); - } + setWindow(); kdDebug(1431) << "<- NSPluginInstance::resizePlugin" << endl; } --- branches/KDE/3.5/kdebase/nsplugins/viewer/nsplugin.h #589918:589919 @@ -220,7 +220,6 @@ bool _destroyed; bool _visible; - bool _firstResize; void addTempFile(KTempFile *tmpFile); QPtrList<KTempFile> _tempFiles; NSPluginCallbackIface_stub *_callback; Thanks Maksim, works perfectly :-) Nick *** Bug 135447 has been marked as a duplicate of this bug. *** konq 3.5.5 from Debian sid. Google video is not displayed. Other flash (like tauceramic.com) displayed correctly. Double presssing F9 does not help :( konq 3.5.5 from Debian sid is not a KDE original code. Ask Debian how many patches added... On Konqueror 3.5.5 compiled from original source code works perfectly. works ok with 3.5.5 shipped with OpenSuse repos |