Developpez.com

Télécharger gratuitement le magazine des développeurs, le bimestriel des développeurs avec une sélection des meilleurs tutoriels

Qt WebEngine, le nouveau moteur Web de Qt
Aperçu technique du port de Chromium pour Qt

Le , par arnolddumas, Rédacteur/Modérateur
L'équipe derrière Qt WebEngine est fière de vous présenter une préversion technologique. En septembre 2013 avait été annoncé Qt WebEngine, un nouveau moteur web se basant sur Chromium afin de remplacer Qt WebKit, dans le but de rendre disponibles les meilleures technologies web avec Qt.

Dans cette première préversion, l'équipe de R&D s'est concentrée sur l'intégration avec Qt ainsi qu'avec Qt Quick. Cela prépare le terrain pour des performances optimales ainsi qu'une expérience de navigation riche.

Voyez dans la vidéo qui suit comme Qt WebEngine s'intègre facilement dans Qt Quick :



Pour le moment, le support de Linux et de OS X est assuré et les équipes travaillent aux ports sur d'autres plates-formes telles que Windows. Il existe une API préliminaire pour Qt Quick ainsi que pour Qt Widgets. L'implémentation pour Qt Quick s'intègre directement avec le graphe de scène et permet donc de très bonnes performances quant au contenu web accéléré. L'API Widgets est conçue pour faciliter la transition depuis QtWebKit. Gardez bien en tête que ni la version Qt Quick ni l'API Widgets ne peut être considérée comme stable. À ce stade, la compatibilité source et binaire n'est pas garantie.

Comment se procurer le code

Une archive peut être téléchargée depuis le site du projet Qt.

Si vous choisissez de cloner le dépôt Qt WebEngine, faites attention de bien choisir la branche v0.1.0-tp1 puis suivez les instructions présentes sur la page Gitorious : https://qt.gitorious.org/qt-labs/qtwebengine

Comment compiler


Qt WebEngine nécessite Qt 5.2 ou supérieur. Tout ce que vous avez besoin de faire est d'exécuter qmake puis make install dans le dossier des sources. En interne, le processus de compilation utilise gyp ainsi que ninja, mais ne vous inquiétez pas, tout cela est caché.

qmake && make install

Notez que l'étape make install est nécessaire afin de mettre toutes les ressources nécessaires à Chromium au bon endroit. Dans le cas contraires, les ressources i10n et Inspector ne seront pas trouvées.

Exemples inclus


Le dépôt Qt WebEngine inclus des exemples à la fois pour Qt Quick et pour Widgets dans le sous dossier examples/.

  • QuickNanoBrowser est un exemple de navigateur multi-onglets utilisant Qt Quick. Il peut être vu comme une vitrine technologique quant aux performances de rendu de contenu WebGL.
    Afin de partager efficacement les textures avec le graphe de scène, des contextes partagés ont été utilisés. Pour plus de détails sur cela, jetez un œil au fichier quicknanobrowser/main.cpp.
    Dans le cas où vous auriez plusieurs cartes graphiques installées sur votre système, vous pourriez avoir besoin de passer l'argument –supports-dual-gpus lors du lancement ;
  • Browser est le navigateur d'exemple de Qt basé sur QtWebKitWidgets et porté sur Qt WebEngine. Plusieurs fonctionnalités manquent toujours à l'appel mais ce programme constitue un excellent exemple de portage d'une application de QtWebKit vers Qt WebEngine.
  • FancyBrowser est un autre exemple porté depuis Qt WebKit Widgets. Il montre l'interaction avec du contenu web utilisant jQuery ainsi que la méthode asynchrone runJavaScript.

Limitations

Qt WebEngine utilise actuellement la couche réseau de Chromium. De ce fait, il n'existe pas encore d'intégration avec QNetworkAccessManager. Aussi, le plug-in Flash d'Adobe n'est pas encore supporté.

Alors que le rendu du contenu web est déjà d'un très bon niveau, les API ne sont pas totalement complètes. Ainsi, il manque à l'API Widgets différentes fonctionnalités, les équipes travaillent néanmoins à résoudre ces problèmes.

La suite


Une alpha ainsi qu'une beta de Qt WebEngine sont prévues avant la mi-2014. La version alpha devrait apporter le support de Windows. En plus de cela, les efforts de développement seront maintenus sur Qt Quick ainsi que sur l'API Widgets API afin de supporter toujours plus de cas d'utilisation.

Comment remonter ses retours


Si vous découvrez des bogues ou si vous avez des demandes de fonctionnalités spécifiques, merci de compléter un rapport de bogue sur l'application de suivi des bogues, pour le projet Qt et le composant WebEngine.

Plus d'informations


Un wiki, encore minimal, est disponible.

Si vous prévoyez de contribuer au développement, merci de vous inscrire à la mailing list ou rejoignez le canal freenode #qtwebengine.

Source : « Qt WebEngine Technology Preview Available »


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de LittleWhite LittleWhite - Responsable 2D/3D/Jeux https://www.developpez.com
le 28/08/2014 à 14:04
Des nouvelles sur le moteur web de Qt
Ajout du support du WebRTC et des machines embarquées

Cela faisait assez longtemps que nous n'avions pas eu des nouvelles sur le moteur web de Qt. Toutefois, celui-ci progresse. Les développeurs ont notamment travaillé sur le support de WebRTC, du presse-papiers système et ont ajoutés les info-bulles et les boîtes de recherche de la bibliothèques de widgets. De plus, ils ont aussi passé du temps sur une amélioration de leur bibliothèque et ont validé son fonctionnement en portant les applications d'exemples de Qt WebKit.

Vous pouvez voir ces progrès dans la vidéo suivante :

Dernièrement, l'équipe s'est concentrée sur le support des plateformes embarquées. Ainsi, Qt WebEngine fonctionne sur Linux et Mac OS X, mais devrait aussi arriver sur Android et les Linux embarqués. Windows n'est bien entendu pas oublié et sera pleinement supporté.

Actuellement, Qt WebEngine est disponible et supporté dans la version Enterprise de Qt 5.3 pour plusieurs plateformes embarquées :
  • Raspberry Pi modèle B (Broadcom BCM2835) ;
  • SABRE Lite (Freescale i.MX 6) ;
  • BeagleBone Black (Texas Instruments AM335x), tant sous Linux qu'Android ;
  • Google Nexus 7 (NVIDIA Tegra 3).


Grâce à cette première publication, l'équipe espère avoir de nombreux retours permettant d'améliorer la version pour les PC en vu d'une publication avec Qt 5.4.

Malgré l'obsolescence de Qt WebKit, celui-ci restera présent dans Qt 5.3 et Qt 5.4.

Votre opinion

Utilisiez-vous Qt WebKit ? Avez-vous remarqué des lacunes ? Lesquelles ?
Pensez-vous migrer sur Qt WebEngine, prochainement ?

Source

Blog de Digia
Offres d'emploi IT
Ingénieur intégration, validation, qualification du système de drone H/F
Safran - Ile de France - Éragny (95610)
Ingénieur conception en électronique de puissance H/F
Safran - Ile de France - Moissy-Cramayel (77550)
Architecte technique des systèmes d'information H/F
Safran - Ile de France - Évry (91090)

Voir plus d'offres Voir la carte des offres IT
Responsable bénévole de la rubrique Qt : Thibaut Cuvelier -