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

Martin Gruner mg.pub at gmx.net
Mon Nov 14 02:29:27 MST 2011


Hi Jaak,

10.04 has got Qt 4.6.2.
12.04 will supersede it soon and be supported for a longer time.

Regards, mg

Am 14.11.11 10:00, schrieb Jaak Ristioja:
> 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
>
> _______________________________________________
> bt-devel mailing list
> bt-devel at crosswire.org
> http://www.crosswire.org/mailman/listinfo/bt-devel
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.crosswire.org/pipermail/bt-devel/attachments/20111114/eb0c5690/attachment.html>


More information about the bt-devel mailing list