Software::Entwicklung
QtWebKit wird für Qt-Entwickler reanimiert
Die Klasse QtWebKit, die in der Qt-Bibliothek eigentlich ein Auslaufmodell war und durch QtWebEngine ersetzt werden sollte, wird von einer Gruppe von Entwicklern wieder gepflegt. Eine Vorschauversion steht jetzt zur Verfügung.
Mirko Lindner
Die Klassenbibliothek Qt enthält eine Klasse QtWebKit, die eine Kapselung der Browser-Engine Webkit darstellt. Vor fast drei Jahren wurde
die neue Klasse QtWebEngine geschaffen, die stattdessen die Blink-Engine verwendet, die Google
aus Webkit entwickelt hatte. QtWebKit wurde zu einer veralteten Klasse erklärt und sollte nicht mehr verwendet werden. Doch Software, die QtWebKit verwendet, schreibt sich nicht von selbst um. So musste auch der Code von QtWebKit erhalten bleiben, da zahlreiche Programme, unter anderem von KDE, ihn weiter nutzten. Das Problem war, dass
Sicherheitslücken in dem veralteten Code fast komplett ignoriert wurden. Seit einiger Zeit bessert sich der Zustand jedoch. Auf Github wurde ein Projekt gegründet, das die
Arbeiten an der Aktualisierung von QtWebKit aufgenommen hat.
Das Projekt hat nun eine zweite Vorschau seiner Arbeit vorgestellt, die gegenüber der ersten Vorschau einige Korrekturen und Erweiterungen enthält. Mit den neuen oder, wie das Team angibt, wieder hergestellten Web-APIs erreicht QtWebKit wieder nahezu den vollen Funktionsumfang des originalen QtWebKit aus Qt 5.7. So wurde eine neue Index-Datenbank hinzugefügt, die nicht auf LevelDB beruht, sondern eine Neuentwicklung ist, die besser zum W3C-Standard konform sein soll. Neu sind auch die Medien-Erweiterungen, die GStreamer voraussetzen und noch experimentell sind. Weitere neue Programmierschnittstellen sind die Gerätebewegung und Geräteorientierung und Gamepad. Außerdem wird das HTML-Konstrukt <link rel="prefetch">
wieder unterstützt, die Unterstützung für Mac OS X aktualisiert, Integrationen für qmake, cmake und pkg-config installiert, Unterstützung für das Drucken eingebaut und Dokumentation generiert.
Die Vorschau kann als Quellcode von Github heruntergeladen werden. Wann dieser Code ins offizielle Qt übernommen wird, ist noch nicht bekannt.