+ Répondre à la discussion Actualité déjà publiée
  1. #1
    Responsable Qt


    Avatar de dourouc05
    Homme Profil pro
    Doctorant
    Inscrit en
    août 2008
    Messages
    21 768
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Doctorant
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 21 768
    Points : 112 146
    Points
    112 146

    Par défaut Le retour de Qt WebKit ?

    Pour sa version 5.6, Qt officialisait l’abandon du module Qt WebKit, qui intégrait un moteur de rendu Web dans des interfaces Qt : WebKit, le moteur de Safari et dont dérive celui de Chrome (Blink). Ce module a été remplacé par Qt WebEngine, qui se base sur un moteur bien plus complet : Chromium, intégrant à la fois une pile réseau et multimédia. Qt WebEngine est bien plus lourd et monolithique que son prédécesseur, ce qui n’est pas sans poser quelques problèmes de distribution.

    De plus, le passage de Qt WebKit à Qt WebEngine ne se fait pas sans douleur, puisque les interfaces sont assez différentes et que Qt WebEngine ne fournit pas le même degré d’intégration à Qt. Aussi, Qt WebEngine n’est pas exploitable à un niveau assez bas, pour travailler directement dans le DOM ou effectuer un rendu hors écran, ce qui est très utile pour toutes les applications devant traiter des pages Web.

    C’est pourquoi certains développeurs se sont lancés dans un projet de réhabilitation de Qt WebKit, en mettant à jour la version utilisée du moteur tout en gardant la même API et ABI. Bien que ce projet soit encore à l’état embryonnaire, cette mise à jour apporte bon nombre d’avantages par rapport aux dernières versions officielles du module, notamment au niveau des fonctionnalités disponibles en JavaScript (une bonne partie d’ES2015) et des API HTML5 (WebAudio, images adaptées à la résolution). Le développement est loin d’être terminé : l’API widgets est relativement prête, mais pas du tout côté QML. Des API HTML5 comme IndexedDB et WebGL ne sont pas disponibles, ni les extensions (tant côté Qt que NPAPI).



    Cependant, au niveau des plateformes compatibles, la liste s’amenuise par rapport à l’itération précédente de Qt WebKit : pas d’Android, de QNX ou de WinCE. L’un des freins au module existant était la nouvelle API de WebKit, mais les développeurs de ce nouveau projet ne sont pas sûrs de travailler sur une compatibilité avec Windows pour cette API WebKit 2. De plus, les développeurs de WebKit ont une politique nettement plus agressive au niveau des normes C++ utilisables dans leur code : ils sont passés depuis longtemps à C++11 (alors que Qt s’apprête seulement à franchir ce pas avec Qt 5.7) et C++14 dans les versions de développement actuelles. En d’autres termes, le choix de compilateurs se restreint.

    Pour toutes ces raisons, il apparaît de manière relativement claire que ces efforts ne pourront pas se faire sous le nom de Qt WebKit, pour éviter la confusion avec le module précédent : ces efforts pourraient se nommer WebKitQt (comme les autres ports de WebKit) ou Qt WebKit NG (le nom de code interne actuel). En plus d’autres considérations pratiques, comme un alignement sur WebKitGTK, le planning des versions ne sera que rarement aligné sur celui de Qt. Par conséquent, WebKit ne fera probablement jamais son retour parmi les modules distribués d’office avec Qt, mais plutôt comme extension, téléchargeable à la carte… ce qui n’empêchera pas le développement sous l’ombrelle du Qt Project.

    Sources : [Development] QtWebKit is coming back, [webkit-qt] [Announcement] QtWebKit Technology Preview 1.
    Voir aussi : le site de Qt WebKit Reloaded.
    Ce contenu a été publié dans Qt par dourouc05.
    Vous souhaitez participer aux rubriques Qt ou PyQt (tutoriels, FAQ, traductions) ? Contactez-moi par MP.

    Nouveau ! Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    juin 2006
    Messages
    1 245
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : juin 2006
    Messages : 1 245
    Points : 1 084
    Points
    1 084

    Par défaut

    Je pense que webkit1 est necessaire pour les applis hybrides, pas besoin d'isolation des processes, il faut pouvoir controler les flux, avoir une api pour chercher les elements cotes c++ car c'est tres penible de le faire en javascript. Qt s'est un moment trop concentré sur webkit2 qui ne touchait presque personne et ils avaient deprecié tout ce qui etait utile pour les applis hybrides. D'ailleurs, la preuve est que cocoa (macos) ne propose que webkit1 a embarquer dans les applis.

    De plus je n'ai pas compris ce choix d'aller avec blink. On sait tous que google n'est pas un bon choix, l'experience avec V8 aurait quand meme pu leur mettre la puce a l'oreille.

    Alors merci aux personnes qui reprennent webkit, je pense que ca va avoir un grand succes.

  3. #3
    Membre du Club Avatar de maitredede
    Homme Profil pro
    Pisseur de code
    Inscrit en
    mai 2006
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Pisseur de code

    Informations forums :
    Inscription : mai 2006
    Messages : 54
    Points : 68
    Points
    68

    Par défaut

    L'effort est grandement appréciable.

    J'espère juste que QtWebEngine ou QtWebkit arriveront un jour à avoir un tuto complet et/ou puissent compiler sur Raspberry Pi. Avec la version 5.6, je ne suis pas encore arrivé à utiliser un seul module pour afficher du HTML...

  4. #4
    Responsable Qt


    Avatar de dourouc05
    Homme Profil pro
    Doctorant
    Inscrit en
    août 2008
    Messages
    21 768
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Doctorant
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 21 768
    Points : 112 146
    Points
    112 146

    Par défaut Qt WebKit NG TP 2

    Peu après les premières annonces officielles, une nouvelle préversion technologique du nouveau Qt WebKit fait son apparition. Dans les nouveautés, on peut compter une implémentation de l’API HTML5 IndexedDB complètement refaite : elle ne dépend plus de LevelDB, un moteur de base de données de Google, tout en apportant un meilleur niveau de compatibilité avec la norme.

    Pour les vidéos, l’API Media Source Extensions est activée quand GStreamer est disponible. Cette implémentation est encore expérimentale et, notamment, toutes les vidéos YouTube ne fonctionnent pas (lorsqu’une publicité est affichée au début). Il faut encore l’activer manuellement, mais elle devrait l’être automatiquement dans une prochaine version.

    D’autres API sont maintenant disponibles : la détection de l’orientation et des mouvements, principalement pour les applications mobiles ; les manettes de jeu, uniquement pour Linux. Aussi, il devient possible d’imprimer. Le projet est maintenant compatible avec OS X 10.10.

    Au niveau de l’infrastructure, le projet s’intègre mieux avec qmake et CMake, ce qui facilite son utilisation dans vos projets. La documentation est maintenant générée aux formats HTML et QCH, ce qui permet notamment son utilisation depuis Qt Creator ou Qt Assistant.

    Maintenant, des binaires précompilés sont disponibles : pour Windows 32 et 64 bits (compilation avec Visual C++ 2015) ainsi que pour OS X.


    Source : [Development] [Announcement] QtWebKit Technology Preview 2.
    Ce contenu a été publié dans Qt par dourouc05.
    Vous souhaitez participer aux rubriques Qt ou PyQt (tutoriels, FAQ, traductions) ? Contactez-moi par MP.

    Nouveau ! Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  5. #5
    Responsable Qt


    Avatar de dourouc05
    Homme Profil pro
    Doctorant
    Inscrit en
    août 2008
    Messages
    21 768
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Doctorant
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 21 768
    Points : 112 146
    Points
    112 146

    Par défaut Qt WebKit NG TP 3

    Le projet continue à revivre, entièrement dans la communauté (sans soutien de la part des développeurs principaux de Qt) : Qt WebKit nouvelle génération voit une troisième préversion technique (TP3) arriver. L’une des grandes nouveautés de cette version est la compatibilité avec les extensions NPAPI et Qt (uniquement pour Windows et X11, pas de macOS pour le moment).

    Une partie du travail a consisté à s’approcher du niveau de fonctionnalité de Qt WebKit : les balises <object> et <embed> peuvent gérer du contenu avec des images, l’élément <progress> fonctionne comme attendu, les liens <a> peuvent utiliser l’attribut download. L’API Web SQL Database était malencontreusement désactivé, ce qui est corrigé.

    Aussi, les développeurs ont ajouté d’autres fonctionnalités par rapport au module Qt WebKit précédent : les événements DOM de niveau 4, la propriété CSS -webkit-initial-letter (qui nécessite Qt 5.8, les raccourcis pour les polices système.

    De manière plus générale, la plupart des modifications proposées sur Gerrit depuis Qt 5.2 ont été intégrées : bon nombre de défauts avaient été corrigés par la communauté, sans être intégrés dans le code de Qt WebKit. Il devient aussi possible de compiler Qt WebKit NG sous forme statique, avec les bibliothèques statiques de Qt.

    Télécharger Qt WebKit NG TP 3.
    Ce contenu a été publié dans Qt par dourouc05.
    Vous souhaitez participer aux rubriques Qt ou PyQt (tutoriels, FAQ, traductions) ? Contactez-moi par MP.

    Nouveau ! Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  6. #6
    Responsable Qt


    Avatar de dourouc05
    Homme Profil pro
    Doctorant
    Inscrit en
    août 2008
    Messages
    21 768
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Doctorant
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 21 768
    Points : 112 146
    Points
    112 146

    Par défaut Qt WebKit NG TP 5

    Le projet de renouveau du module Qt WebKit en est à sa cinquième préversion. Celle-ci continue à remettre le module Qt WebKit au goût du jour, apportant les dernières fonctionnalités de WebKit à Qt 5. En effet, depuis l’introduction de Qt WebEngine, qui utilise Chromium comme moteur Web, Qt WebKit n’a plus été mis à jour — alors qu’il répond à un certain besoin, au vu de son intégration de grande qualité avec Qt et de ses prérequis très légers (juste un compilateur C++11).

    L’API plein écran de HTML5 est maintenant implémentée. Du côté de l’API C++, QWebPage dispose maintenant du signal focusedElementChanged. Sous Windows, les contenus vidéo peuvent être joués par Media Foundation (l’API système) au lieu de Qt Multimedia ; d’ailleurs, il est désormais possible de compiler Qt WebKit avec MinGW. WebGL et le dessin accéléré par GPU pour la balise canvas sont de retour dans Qt WebKit (ces fonctionnalités étaient présentes du temps de Qt 4/5.4, mais étaient perdues lors de la réécriture du module).

    Des binaires sont disponibles pour Qt 5.8. Le seul gros point restant à travailler pour atteindre les objectifs des développeurs est une API QML pour WebKit2 (le travail d’implémentation a déjà démarré). Avant une réintégration au sein du projet Qt ? Les doutes sont permis, cette nouvelle préversion étant prévue pour s’intégrer aux scripts d’intégration continue de Qt.

    Source : QtWebKit Technology Preview 5, la liste de diffusion de Qt.
    Vous souhaitez participer aux rubriques Qt ou PyQt (tutoriels, FAQ, traductions) ? Contactez-moi par MP.

    Nouveau ! Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

Discussions similaires

  1. Réponses: 8
    Dernier message: 12/02/2013, 01h08
  2. Retour au mode texte par défaut
    Par coca dans le forum x86 16-bits
    Réponses: 6
    Dernier message: 12/12/2002, 17h22
  3. [XP] Retour d'experience
    Par virgile04 dans le forum Méthodes Agiles
    Réponses: 10
    Dernier message: 22/10/2002, 08h25
  4. Retour chariot dans un TMemo ?
    Par Vincent PETIT dans le forum C++Builder
    Réponses: 7
    Dernier message: 27/08/2002, 18h55
  5. URGENT: retour de string
    Par Pinggui dans le forum CORBA
    Réponses: 4
    Dernier message: 15/07/2002, 09h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo