Chromium et Qt rassemblés dans Qt WebEngine

Un certain temps après le port de Firefox sur Qt en lieu et place de GTK+, c’est au tour de Chromium, la version open source du navigateur Web de Google, d’être le sujet d’expérimentations. Ce projet ne se compose pas que d’un moteur de rendu, il s’agit d’une implémentation complète d’une plateforme Web, de la pile de protocoles réseau au framework multimédia, le tout disponible sur un grand nombre de plateformes (tout comme Qt). L’objectif récemment poursuivi par des employés de Digia était de laisser des développeurs Qt utiliser des briques de l’environnement Chromium, au sein même de Qt Quick 2 et des widgets.

Il s’agit juste à présent d’un prototype, pour lequel la portabilité n’a pas été la première des priorités (il ne supporet actuellement que X11 sous Linux), plutôt de minimiser les modifications dans le code de Chromium. Ainsi, la série de classes QNetworkAccessManager n’est pas intégrée, le système de compilation utilise gyp et ninjas par derrière qmake. L’API n’est actuellement pas stable et le code pourrait ne jamais être supporté officiellement.

QtWebEngine se base sur Qt 5.1. Pour le compiler, il faut installer les dépendances :
sudo apt-get build-dep chromium-browser
Ensuite, télécharger les sources de Chromium :
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
export PATH=$PWD/depot_tools:$PATH
fetch chromium --nosvn=True
export CHROMIUM_SRC_DIR=$PWD/src

De là, télécharger QtWebEngine et appliquer les modifications à Chromium :
git clone git://gitorious.org/qt-labs/qtwebengine.git
./qtwebengine/patches/patch-chromium.sh

Finalement, compiler QtWebEngine :
cd qtwebengine && qmake && make

Le projet vient actuellement avec deux démos, l’une utilise Qt Quick 2 et l’autre les widgets, implémentant des navigateurs Web simplistes basés sur Chromium.

Source : Experimenting with Chromium™ and Qt.
Sources de QtWebEngine.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s