[webkit-qt] progressive rendering in a QML browser
Olivier Tilloy
olivier at tilloy.net
Mon Mar 25 06:58:26 PDT 2013
On 2013-03-25, Andras Becsi <abecsi at webkit.org> wrote:
> On 25 March 2013 11:28, Olivier Tilloy <olivier at tilloy.net
> <mailto:olivier at tilloy.net>> wrote:
>
> Hi all,
>
> I have been observing that the rendering of web pages in a QML
> browser seems to happen in one go at the very end of the loading
> process, as opposed to other webkit browsers (such as chromium).
>
> In my tests, I deleted the cache and I intentionally slowed down the
> network interface to better observe when rendering starts to happen.
> I’ve mostly experimented with http://nytimes.com, which is a rather
> heavy page. I’m running those tests on an x86 desktop machine, but
> the same results are observed on mobile hardware (armhf).
>
> With the QML MiniBrowser compiled from webkit trunk against QtWebKit
> 5.0, nothing is rendered until the page is fully loaded (i.e. the
> webview remains completely blank until the progress bar reaches
> completion).
>
> Just quickly ran a test with MiniBrowser on my desktop and for me with a
> clean cache even heavy pages like nytimes.com <http://nytimes.com> start
> to render when the progress bar is at about 50% completion. Although
> this probably varies depending on network and HW speed.
>
> This is comparably similar behaviour as you would experience with Safari
> on Mac.
Thanks for the heads-up! So this means my build of QtWebKit somehow is
to blame.
I’m using libqt5webkit5-qmlwebkitplugin
5.0.0-0ubuntu1~quantal1~test5~withdebug~gstabs~patches (from
https://launchpad.net/~canonical-qt5-edgers/+archive/qt5-proper) in
Ubuntu 12.10, which according to the source package is based off trunk
subversion revision 136242.
I’ll test a full build from trunk to see if that makes any difference.
> With chromium (25.0.1364.160-0ubuntu0.12.10.__1), rendering is
> clearly progressive, with elements of the page being displayed
> before loading is complete (and of course, some re-layout happening).
>
>
> With Chromium the perceived page load / rendering speed is much faster
> because the browser uses a variety of speculative optimization
> techniques to speed up page loading. Among others these are resource
> pre-fetching and page pre-rendering, which are implemented in the
> browser [1] and depend on mouse-hover and usage heuristics.
Good to know. I was comparing to chromium because that’s what I had at
hand, but I’d be happy even without speculative optimization techniques,
if I can get pages to start rendering at ~ 50% loading completion, as
you’re observing.
> Is this a known issue/feature? Are there some build options that I
> can experiment with to tweak this?
>
> As far as I know we have only access to DNS-prefetching with WebKit2
> QtWebKit, which is enabled by default.
Thanks for the info!
Olivier
More information about the webkit-qt
mailing list