<!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 Saturday 14 March 2009, Michael Howell napisał:<br>
&gt; On Saturday 14 March 2009 14:10:31 Jakub Stachowski wrote:<br>
&gt; &gt; Dnia Saturday 14 March 2009, Michael Howell napisał:<br>
&gt; &gt; &gt; On Saturday 14 March 2009 11:34:08 Jakub Stachowski wrote:<br>
&gt; &gt; &gt; &gt; Hello,<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; Currently plugin factory contains workaround for flash (returning<br>
&gt; &gt; &gt; &gt; QWebView instead of 0). What bug does it exactly works around?<br>
&gt; &gt; &gt; &gt; If it is video player embedded from youtube showing just controls but<br>
&gt; &gt; &gt; &gt; no video (testcase:<br>
&gt; &gt; &gt; &gt; http://www.webscription.net/s-108-david-weber.aspx ) then attached<br>
&gt; &gt; &gt; &gt; patch contains alternative solution.<br>
&gt; &gt; &gt; &gt; The problem is that QNetworkManager (and maybe flash plugin) expects<br>
&gt; &gt; &gt; &gt; to handle redirects itself, but KIO internally fetches destination<br>
&gt; &gt; &gt; &gt; URL instead. The patch makes KNetworkReply emit finish()  and kill<br>
&gt; &gt; &gt; &gt; the KIO job upon redirect.<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; QtWebKit tries to use KWebPluginFactory for _all_ plug-in requests,<br>
&gt; &gt; &gt; even if the actual plug-in was not advertised by KWebPluginFactory, but<br>
&gt; &gt; &gt; is supposed to be used internally by QtWebKit's built-in Flash support.<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; I wish I knew how to pass the options to the new QWebView, which would<br>
&gt; &gt; &gt; fix YouTube.<br>
&gt; &gt;<br>
&gt; &gt; OK, but why not simply return 0? In this case QtWebKit tries built-in<br>
&gt; &gt; support for netscape plugins. It makes webkitkde more crashy, but then<br>
&gt; &gt; again even with QWebView workaround it crashes whenever it likes.<br>
&gt; &gt; I know that QWebView is workaround but what is actual bug being worked<br>
&gt; &gt; around? Crashing? Not showing movie on youtube? Something else?<br>
&gt; &gt;<br>
&gt; &gt; Even nspluginviewer crashes with webkitkde :-(<br>
&gt;<br>
&gt; QtWebKit tries to use KWebPluginFactory for all plug-ins, even if it's<br>
&gt; actually the built-in Flash support that provides the plug-in.<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 missing something here. If you remove nspluginviewer from list of embeddable components for application/x-shockwave-flash  then createPartInstanceFromQuery will return 0. At this point KWebPluginFactory::create could just return 0 and QtWebKit try its embedded support (see FrameLoaderClientQt::createPlugin - first it tries plugin factory and if it returns 0 then it tries built-in support), but instead it does hack with QWebView. I still don't understand, what it is supposed to work around.<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>About my 'nspluginviewer' comment: Maksim managed to fix that 'white rectangle' bug so I decided to go with it instead of QtWebKit built-in support. Unfortunately nspluginviewer crashes too - somewhere deep in gtk or glib.</p></body></html>