Ok do we need to support old webkit and new webkit at the same time or wth
openlp 2.6 we will be in a qwebengine world.
Thinks about backward OS's like Mac!

On 19 February 2016 at 18:37, Jonathan Springer <[email protected]>
wrote:

> The main issue we have is that several of our methods depend on the
> javascript call being synchronous which is no longer the case as QWebEngine
> is entirely asynchronous and requires a call back to return information.
> Thus the need to make our functions/API asynchronous.
>
> On Fri, Feb 19, 2016 at 1:33 PM Tim and Alison Bentley <
> [email protected]> wrote:
>
>> this article makes it look much simplar or have it missed somthing.
>>
>> https://wiki.qt.io/Porting_from_QtWebKit_to_QtWebEngine
>>
>> On 19 February 2016 at 18:27, Jonathan Springer <[email protected]>
>> wrote:
>>
>>> Here are my thoughts and findings so far regarding the migration to
>>> QWebEngine. There is a card on our Trello board that is tracking the
>>> progress of this migration and will be updated as work progresses.
>>>
>>> The following steps are what I think should be done and the order they
>>> should be done in.
>>>
>>>    1. Move all functions that need access to DOM into javascript
>>>    2. Make all calls to renderer asynchronous
>>>    3. Make minimum Qt version Qt 5.4 (QWebChannel dependency)
>>>    4. Use QWebChannel to access javascript functions and receive
>>>    callbacks
>>>    5. Create backend class to handle switching between available
>>>    backends
>>>    6. Create QWebEngine backend
>>>    7. Move existing QWebKit implementation into a backend
>>>
>>> Moving DOM access into javascript shouldn't be to hard.
>>>
>>> Making all calls to the render asynchronous is a bit harder and is
>>> making my brain hurt trying to figure out how to do it since our current
>>> API is synchronous.
>>> *Note:* We cannot just use a while block since that blocks the UI
>>> thread which also blocks Qt's event system preventing QWebKit/QWebEngine
>>> from doing anything. We can use a processEvents() call in the while loop
>>> but that is frowned upon.
>>>
>>> Once we make all calls asynchronous the remaining items should be pretty
>>> easy to do.
>>>
>>> I would recommend getting the first four items (DOM access into
>>> javascript, asynchronous calls, minimum version, and QWebChannel) working
>>> with QWebKit first then move on to the rest.
>>>
>>> _______________________________________________
>>> openlp-dev mailing list
>>> [email protected]
>>> https://lists.openlp.io/mailman/listinfo/openlp-dev
>>>
>>>
>>
>>
>> --
>> Tim and Alison Bentley
>> [email protected]
>> _______________________________________________
>> openlp-dev mailing list
>> [email protected]
>> https://lists.openlp.io/mailman/listinfo/openlp-dev
>>
>
> _______________________________________________
> openlp-dev mailing list
> [email protected]
> https://lists.openlp.io/mailman/listinfo/openlp-dev
>
>


-- 
Tim and Alison Bentley
[email protected]
_______________________________________________
openlp-dev mailing list
[email protected]
https://lists.openlp.io/mailman/listinfo/openlp-dev

Reply via email to