<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"><html><head><meta name="qrichtext" content="1" /><style type="text/css">p, li { white-space: pre-wrap; }</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;">Dnia Sunday 15 March 2009, Michael Howell napisał:<br>
> On Saturday 14 March 2009 16:21:33 Jakub Stachowski wrote:<br>
> > Dnia Saturday 14 March 2009, Michael Howell napisał:<br>
> > > On Saturday 14 March 2009 14:10:31 Jakub Stachowski wrote:<br>
> > > > Dnia Saturday 14 March 2009, Michael Howell napisał:<br>
> > > > > On Saturday 14 March 2009 11:34:08 Jakub Stachowski wrote:<br>
> > > > > > Hello,<br>
> > > > > ><br>
> > > > > > Currently plugin factory contains workaround for flash (returning<br>
> > > > > > QWebView instead of 0). What bug does it exactly works around?<br>
> > > > > > If it is video player embedded from youtube showing just controls<br>
> > > > > > but no video (testcase:<br>
> > > > > > http://www.webscription.net/s-108-david-weber.aspx ) then<br>
> > > > > > attached patch contains alternative solution.<br>
> > > > > > The problem is that QNetworkManager (and maybe flash plugin)<br>
> > > > > > expects to handle redirects itself, but KIO internally fetches<br>
> > > > > > destination URL instead. The patch makes KNetworkReply emit<br>
> > > > > > finish() and kill the KIO job upon redirect.<br>
> > > > ><br>
> > > > > QtWebKit tries to use KWebPluginFactory for _all_ plug-in requests,<br>
> > > > > even if the actual plug-in was not advertised by KWebPluginFactory,<br>
> > > > > but is supposed to be used internally by QtWebKit's built-in Flash<br>
> > > > > support.<br>
> > > > ><br>
> > > > > I wish I knew how to pass the options to the new QWebView, which<br>
> > > > > would fix YouTube.<br>
> > > ><br>
> > > > OK, but why not simply return 0? In this case QtWebKit tries built-in<br>
> > > > support for netscape plugins. It makes webkitkde more crashy, but<br>
> > > > then again even with QWebView workaround it crashes whenever it<br>
> > > > likes. I know that QWebView is workaround but what is actual bug<br>
> > > > being worked around? Crashing? Not showing movie on youtube?<br>
> > > > Something else?<br>
> > > ><br>
> > > > Even nspluginviewer crashes with webkitkde :-(<br>
> > ><br>
> > > QtWebKit tries to use KWebPluginFactory for all plug-ins, even if it's<br>
> > > actually the built-in Flash support that provides the plug-in.<br>
> ><br>
> > I'm missing something here. If you remove nspluginviewer from list of<br>
> > embeddable components for application/x-shockwave-flash then<br>
> > createPartInstanceFromQuery will return 0. At this point<br>
> > KWebPluginFactory::create could just return 0 and QtWebKit try its<br>
> > embedded support (see FrameLoaderClientQt::createPlugin - first it tries<br>
> > plugin factory and if it returns 0 then it tries built-in support), but<br>
> > instead it does hack with QWebView. I still don't understand, what it is<br>
> > supposed to work around.<br>
> ><br>
> > About my 'nspluginviewer' comment: Maksim managed to fix that 'white<br>
> > rectangle' bug so I decided to go with it instead of QtWebKit built-in<br>
> > support. Unfortunately nspluginviewer crashes too - somewhere deep in gtk<br>
> > or glib.<br>
><br>
> No. If you return 0 QtWebKit won't try it's built-in support. It'll simply<br>
> fail. I've tried.<br>
><br>
> If this has changed recently, then it can be removed.<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>I'm using 4.5.0 release from OpenSuse package and yes, returning 0 makes QtWebKit load flash using internal support.<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>Unfortunately it crashes later when leaving the page (flash calling XtRemoreTimeout, which is at least weird in gtk2-based plugin).<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>So we have 3 options (QWebView workaround, returning 0 and nspluginviewer) and none of them fully works :-(<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>On the other hand I think KNetworkReply fix for redirects is useful anyway.<br>
Should I commit it (without removing QWebView hack) ?<br>
<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p></body></html>