2013-10-30 16 views
6

私は、WebKit、WebKitGTK、GTKが異なるバージョンであることを理解するのが難しいです。ここに私がこれまで持っているものがあります:WebKitGTK +、GTK2、GTK3

  • WebKitは、WebKit1とWebKit2の両方を含むライブラリです。これには#include <webkit/webkit.h>が含まれていますか?

  • WebKitGTK 1.10.2は、GTK2に依存する最後のバージョンです。それはまだ維持/開発されていますか?

  • GTK、Qtなどのツールキットで常にサポートする必要がありますか?あるいはそれを単独で使うことは可能でしょうか?

答えて

1

WebKitGTKは、「ポート」で、はい、あなたは事実上、基本的には巨大な仕事であるあなた自身のポートを書くことだけではWebKitのを使用して、複数のポートのいずれかを選択する必要があります。 Linuxでは、WebKitGTKまたはQtWebKitを使うことをお勧めします。

WebKitとWebKit2は、同じソースツリー(全体としてWebKitとも呼ばれる)に存在し、同じコアコンポーネントを使用する2つの全く異なるWebエンジンAPIです。大きな違いは、WebKit2がWebコンテンツの処理を別のプロセスに分割することです。深刻な開発を進める唯一のものだと私は信じています。ポートが通常選択したように、これらの2つの間で選択する必要はありません。ポートが提供するAPIを使用するだけです。 GTK +ポートはWebkit上で使用されていましたが、今はWebKit2を使用する必要があります(ただし、Webkit APIは今のところまだそこにあるかもしれません)。

1.10.2が本当にGTK2をサポートする最後のバージョンだった場合(これが本当かどうかわかりませんが)、私はそれがさらに発展していないと確信しています。

EDIT:Debianではライブラリのオプションは次のとおりです。

  • libwebkitgtk-1.0 2.2.0:Webkit1、GTK + 2
  • libwebkitgtk-3.0 2.2.0:Webkit1、GTK + 3
  • libwebkit2gtk-3.0 2.2.0:GTK + 2は、あなたが唯一のオプションは、最も将来のあるべきGTK + 3とWebKit2のAPIを取得する(少なくとも、Debianの上で)まだ、少なくとも何らかの形でサポートされていますが、同じようWebkit2、GTK + 3

だからそれが見えます-証​​明。

6

バージョン番号とAPIレベルを区別する必要があります。

  • バージョン番号は1.10.2または2.2.1のようなものである - そしてそれはそれだ、ちょうどバージョン番号 - それはGTKのバージョンやAPIレベルとは何の関係もありません。
  • webkit(webkit/webkit.h)とwebkit2(webkit2/webkit2.h)の2つの異なるapisがあります。主な違いは、webkit2は、Webkitの単一のプロセスアーキテクチャではなく、レンダリング、javascript、およびプラグインにマルチプロセスアーキテクチャを使用していることです。

WebKitGTK +は、GTK + 2またはGTK + 3のいずれかに対してコンパイルできます。これにより、ライブラリファイル名はlibwebkitgtk-1.0.soまたはlibwebkitgtk-3.0.soになります。 (これはWebKit自体のバージョンとは関係ありません) しかし、webkit2 apiはGTK + 3に依存し、ライブラリファイル名はlibwebkit2gtk-3.0.soのようなものです。

WebKitGTK +および他のポートのようなものを実装しています

UI要素(チェックボックス、選択ボックス、...)
  • ダイアログ(ファイルを選択し、ダウンロードし、HTTP認証)
  • ネットワーク通信を(描画
    • DNSおよびHTTP)
    • を...扱う

    あなたが避けたい場合は、すべて自分でこれを実装する必要があります利用可能なWebkitポート。

    PS:WebKitGTK + 2.x.xはまだGTK + 2をサポートしています

  • 関連する問題