WebKit | |
---|---|
Entwickler: | Apple, Trolltech, Nokia, Adobe, Google, andere. |
Betriebssystem: | Plattformunabhängig |
Kategorie: | Engine-Bibliothek |
Lizenz: | teils unter LGPL teils unter BSD-Lizenz |
www.webkit.org |
WebKit ist eine quelloffene HTML-Render-Bibliothek, auf deren Grundlage ein Webbrowser gebaut werden kann. WebKit ist ein Fork der HTML-Engine KHTML durch die Firma Apple, um sie als Grundlage für den Mac-OS-X-Webbrowser Safari einzusetzen, und wird mittlerweile von Apple, Nokia, Google und anderen weiter entwickelt. WebKit dient als Grundlage für Omniweb, Shiira, iCab, Adobe AIR, Google Chrome, mobile phones (auch vom iPhone), Nokias S60 und Googles Android (Plattform). Obwohl WebKit in Trolltechs Qt 4.4 enthalten ist, stammt die Grundlage von KDE.
Die Bibliothek besteht aus den Komponenten WebCore (der für die HTML-Darstellung zuständigen Bibliothek) und dem JavaScript-Parser JavaScriptCore. Der komplette Quelltext ist OpenSource und steht teils unter LGPL, teils unter BSD-Lizenz.
Inhaltsverzeichnis |
WebKit entstand aus der HTML-Engine KHTML und der JavaScript-Engine KJS des KDE-Projekts: Apple hatte eine Abspaltung der Engines erstellt und diese weiter entwickelt. Apple benötigte damals eine eigene HTML- und JavaScript-Engine für seine Softwareprodukte und entschied sich für KHTML, da der Code als übersichtlicher und strukturierter galt als der des damaligen Mozilla-Projektes. Apple portierte die Quellen des KDE-Projekts auf Mac OS X und benannte diese in WebCore und JavaScriptCore um.
2003 folgte die offizielle Bekanntmachung des Projekts und die Freigabe der Quellen gemäß der Lizenzen der KHTML- und KJS-Projekte. Kurze Zeit darauf aber wurde die Weitergabe und Veröffentlichung des veränderten Codes durch Apple deutlich kritisiert. Die KDE-Entwickler warfen Apple vor, Änderungen nur in großen, schwer zu überblickenden Paketen bereitzustellen. Dies machte eine Übernahme von Code schwierig, wodurch sich die Projekte mehr und mehr voneinander entfernten.
Im Juni 2005 kündigte Dave Hyatt an, den Entwicklungsprozess zu öffnen und die gesamten Quellen von WebKit in einem CVS-Baum bereitzustellen. Kurze Zeit nach dieser Ankündigung gab Nokia bekannt, dass sie einen Browser auf der Basis von WebKit entwickelten.
Später gab Adobe bekannt, dass deren Adobe Integrated Runtime ebenfalls WebKit integriere.
Im KDE-Projekt gibt es Überlegungen, in KDE 4 ebenfalls WebKit statt KHTML/KJS zu verwenden. Eine Integration von QtWebKit in KDE wird momentan entwickelt[1], die voreingestellte Engine wird jedoch vorerst KHTML bleiben.
WebKit ist seit Version 10.3 Teil des Betriebssystems Mac OS X. Die wichtigste Verwendung findet sich im Browser Safari. Darüber hinaus wird die Bibliothek beispielsweise auch von Apples Hilfe-Funktion und für die HTML-Darstellung in TextEdit und Mail benutzt. Drittanbieter verwenden WebKit als Basis für die Browser Google Chrome[2], OmniWeb, iCab und Shiira.
Auch der in den mobilen Apple-Geräten iPhone und iPod Touch verwendete Safari-Browser enthält eine vollwertige WebKit Engine.
Mit Swift, Google Chrome sowie Safari 3 gibt es inzwischen auch Benutzer von WebKit auf Windows.
Seit Juli 2007 verwendet ABrowse für das Betriebssystem Syllable WebKit, anstelle des zuvor verwendeten KHTML, als Basis.
Nokia verwendete eine Abspaltung von WebKit in verschiedenen Mobiltelefonen (S60) als Webbrowser.
Die französische Firma Pleyo bietet mit ihrem Origyn Web Browser (OWB) einen auf WebKit basierenden Browser unter BSD- oder LGPL-Lizenz für Unterhaltungselektronik (zum Beispiel Mobilgeräte, Set-Top-Boxen) wie das Nokia N800 oder AmigaOS an.
Epiphany, der Standard-Browser der freien Desktop-Umgebung GNOME, bietet seit der Version 2.19.6 optionale Unterstützung für WebKit. Im April 2008 entschieden die Entwickler von Epiphany, gänzlich auf WebKit zu setzen und begründen diesen Schritt mit der klarer strukturierten sowie konstanteren API und kürzeren Release-Zyklen von WebKit (gegenüber Mozillas XULRunner/Gecko).[3]
Ebenso benutzt das freie Smartphone-Betriebssystem Openmoko WebKit.
Android, Googles Softwareprojekt für mobile Systeme, nutzt Webkit.[4]
WebKit ist in die Klassenbibliothek Qt ab Version 4.4 integriert.[5]