[bt-devel] Problem with Mag window not working is fixed.

Jaak Ristioja jaak at ristioja.ee
Mon Nov 14 02:00:23 MST 2011


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi!

Yes, we should release at least one other 2.8.#. I'm not sure whether
changing the requirement from Qt 4.5 to 4.6 would be a good idea for
2.9.# right now. For later versions, it is no problem. What version of
Qt does Ubuntu 10.04 (LTS) have?

Blessings,
Jaak

On 14.11.2011 09:40, Martin Gruner wrote:
> Hi Gary,
> 
> very cool!
> AFAIR, we currently require Qt 4.5, where such a "proxy" class is needed
> to create a bridge between C++ and JS. With Qt 4.6, this is not required
> any more. So if we decide to up the version, the code could be changed
> and simplified.
> 
> Regards, mg
> 
> Am 14.11.11 06:17, schrieb Gary Holmlund:
>>
>> I fixed the problem with the Mag window not working with newer
>> versions of Qt (Qt 4.7.4 + QtWebKit 2.2 or later). The current version
>> shipping with Ubuntu 11.10 and Fedora 16 is broken because of this
>> issue. I know that we will soon release 2.9,  but Ubuntu has been
>> reluctant to upgrade to feature releases. I am wondering if we should
>> create a 2.8.3 for this fix.
>>
>>
>> Bug details
>>
>> Each BibleTime window uses Qt WebKit classes to display the page. We
>> use javascript on the page to associate the mouse coordinates with DOM
>> elements and display the corresponding entry in the Mag window. The
>> javascript also handles drag/drop and a few other things.
>>
>> There is a c++ class (BtHtmlJsObject) that is associated with the
>> javascript on a page in BibleTime. This class allows c++ to call
>> javascript and javascript to call c++. With the latest versions of Qt
>> both the class instance and the javascript have a "security origin".
>> The first time the class instance is associated with the javascript
>> everything is ok. But when the next page with javascript is loaded
>> into the window and associated with the same class instance, they have
>> different security origins. WebKit is checking this and throwing an
>> cross site scripting error. The javascript does not run correctly.
>>
>> It took a lot of debugging down into Qt to figure this out. Once I
>> knew the issue I suspected I could fix it by associating a new class
>> instance with the javascript each time the page is reloaded. This
>> fixed the problem.
>>
>> Gary
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.17 (GNU/Linux)

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
FnKcLqLGxehh124M8cIE
=oQnt
-----END PGP SIGNATURE-----



More information about the bt-devel mailing list