[Development] Assistant WebKit/WebEngine support
Bastiaan Veelo
Bastiaan at Veelo.net
Thu Jun 27 13:14:56 CEST 2019
A very good post, thank you Jarek.
Ideally, Qt would have a dedicated HTML renderer that works on all
platforms, without unnecessary overhead and security issues. Possibly as
a new widget (QHtmlBrowser) to keep QTextBrowser strictly rich text,
possibly removing features from QTextBrowser to make it truly minimal.
The Qt Company, inventors of QML, should be in a good position to
accomplish such a stand alone HTML browser.
However, it seems that most web browsers that implemented their own
browser tech have ditched those in favour of a third party framework
(see Opera, Edge, e.g.) -- how much of the reason for that is due to
rendering or networking I don't know. Either way, accomplishing decent
standard compliance will require a major investment. A business decision
should be made whether that investment isn't better spent on teaming up
with a third party to make its framework modular, so that it is capable
of working optimally for offline content. If that is implemented well,
this could potentially mean that on the platforms that use this
framework for their native browser, QHtmlBrowser could simply forward to
the system shared library for HTML rendering (without networking).
Gecko, WebKit and Chromium seem to be the major browser back ends. Which
of those is best to team up with? Both WebKit and Chromium are derived
from KHTML, so maybe KHTML is a good starting point due to its relation
with Qt. Or, if WebKit and Chromium aren't easily modularised, maybe
that is because of how KHTML is put together, and a fresh look at Gecko
is beneficial?
I agree with Jarek that Qt should plan long term and implement the best
solution, not the easiest or quickest. It has been bad for four years
already, a year or two more is not a big deal. People that require
Assistant with full HTML/CSS capability can get that easily today[1],
and can wait.
Bastiaan.
[1] https://github.com/veelo/qttools
More information about the Development
mailing list