WebKit

QtWebKit における合成のアクセラレーションに関するレポート

Published Friday November 18th, 2011 | Leave a comment
Posted in リサーチプロジェクト | Tags:

この記事は Qt Blog の “QtWebKit Accelerated Compositing Report” を翻訳したものです。 執筆: No’am Rosenthal, 2011年11月10日 昨年の私のブログ記事以降も、QtWebKit の合成のアクセラレーションに関する様々な対応をしてきました。その件に関する問い合わせがいくつかあったため、この記事を書くことにしました。興味を持ってくれる人がいることを祈っています 🙂 今回の記事は若干内容が高度なため、合成のアクセラレーションについての基礎知識がない方は、Ariya のブログ記事 (もしくは こちら、これも Ariya によるものです)を先に読むことをお勧めします。QtWebKit 内部のグラフィックスアクセラレーションに興味がある方は先に進んでください。 まずはじめに、TextureMapper が最近の trunk ではデフォルトで有効になっています。これは QtWebKit が CSS のアニメーションと変形のみに最適化された、独自の小さなシーングラフを持っていることを意味します。TextureMapper はパブリックな API を持っていないため、CSS シェーダーのプロポーザル や preserves-3d のような特別な 3D 変形のための CSS などの対応が必要になった場合でも、簡単に変更や最適化を進めることができるようになっています。 次に、標準のウェブコンテンツにタイル式のバッキングストアを用いるために多くの時間を割きました。マルチプロセスモデルの WebKit2 では CPU による描画はバックグラウンドのプロセスで行われ、その結果は共有メモリを通して UI プロセスに渡されテクスチャにアップロードされます。このため、この作業は以前にも増して重要になります。ウェブプロセスが文字やパスの描画やその他の時間のかかる作業をしている間でも UI プロセスは固まらなくなります。クロスプロセスのタイル式のバッキングストアの改善により、ユーザーのスクロールの軌跡を解析して、次にスクリーンに表示されるエリアのタイルを描画してしまうようなユーザーエクスペリエンスの最適化を行うことができました。

Read More

QtWebKit 2.2.0 リリース

Published Monday October 3rd, 2011 | Leave a comment
Posted in ニュース | Tags: ,

この記事は Qt Blog の “QtWebKit 2.2.0 is released!” を翻訳したものです。 執筆: Benedikte Holm, 2011年9月29日 QtWebKit 2.2.0 をリリースしました。このリリースはモバイルとデスクトップの双方をサポートします。 このリリースは2011年5月4日の trunk をベースにしたもので、音声や動画のサポートや新しい標準機能のサポート、様々なバグフィックスが含まれています。新機能の概要はこのリリースに関する Wiki ページ http://trac.webkit.org/wiki/QtWebKitFeatures22 を参照してください。 QtWebKit のソースコードは gitorious リポジトリにつけられたタグ qtwebkit-2.2.0 もしくは tar.gz 形式 で入手可能です。Qt 4.8 RC 版にも含まれるでしょう。 フィードバックは メーリングリスト や IRC の場合は freenode 上の #qtwebkit チャンネルにてお願いします。みなさんの声をお聞かせください! このリリースは QtWebKit 単体のため、使用するには自分でビルドする必要があります。その際は こちらのビルド手順 を参考にしてください。また、リリースノートは http://trac.webkit.org/wiki/QtWebKitRelease22 で見ることができます。 ビルドを試すのはちょっと…という方は Qt 4.8 RC […]

Read More

QtWebKit 2.2 RC リリース

Published Thursday September 15th, 2011 | Leave a comment
Posted in ニュース | Tags: , ,

この記事は Qt Blog の “QtWebKit 2.2 RC released” を翻訳したものです。 執筆: Benedikte Holm, 2011年9月14日 QtWebKit の開発をフォローしているみなさんへのお知らせです。QtWebKit プロジェクトは新たなリリース候補版を公開しました。これには http://gitorious.org/+qtwebkit-developers/webkit/qtwebkit で qtwebkit-2.2.0-rc1 というタグがつけられています。 テストをするためには Qt 4.8 でビルドする必要があります。詳細は http://trac.webkit.org/wiki/QtWebKitRelease22 をご覧ください。 リポジトリをクローンし、みなさんの環境でテストを実行し、なにか問題があった場合には メーリングリスト や IRC、bugzilla で報告していただければ幸いです。   QtWebKit の開発をフォローしていないみなさんも、後日公開予定の Qt 4.8 RC にこのバージョンが含まれる予定ですので、是非お試しください。 QtWebKit 2.2 には一般的なバグフィックスに加え、HTML(5) や CSS(3)、JavaScript の新機能が含まれます。

Read More

QWebView 関連クラスのメンテナ募集

Published Saturday July 16th, 2011 | Leave a comment
Posted in Qt | Tags: ,

この記事は Qt Blog の “QWebView and friends are looking for a new maintainer” を翻訳したものです。 執筆: Andreas Kling, 2011年7月7日 ついに Nokia N9 が正式にアナウンスされました。おそらく多くの方が N9 が WebKit2 ベースのブラウザを組み込んで出荷されることをご存じでしょう。それに伴って、Qt5 の WebKit がどこへ向かうのかという議論を開始しました。それはとても明らかで、将来の QtWebKit には WebKit2 を用います。 Nokia としては WebKit1 ベースの API([qt QWebView], [qt QGraphicsWebView] および関連クラス)の作業の停止を予定しています。この API を利用している人々がたくさんいらっしゃるのは知っています。そこで、どなたかがその開発を引き継ぐことを考えているか知りたいと思います。 このタスクには build.webkit.org 用の Buildbot インスタンスのホスティングと、ユニットテスト(Qt/WebKit1 API のテスト)とレイアウトテストをパスさせ続ける責任が含まれています。 大まかな計画では Qt 5.0 に含まれるものが我々の手がける最後の […]

Read More

QtWebKit 2.1.1 リリース

Published Thursday June 2nd, 2011 | Leave a comment
Posted in ニュース | Tags: ,

この記事は Qt Blog の “QtWebKit 2.1.1 released” を翻訳したものです。 執筆: Benedikte Holm 2011年5月30日 以下の記事はゲストブロガー、Nokia Institute of Technology のリリースマネージャー Ademar de Souza Reis Jr によって書かれました QtWebKit の 2.1 シリーズの最初のアップデートであるバージョン 2.1.1 が先週リリースされました(タグは 5月24日につけられました)。gitorious から ソースがダウンロード できます。また、これはいくつかの Nokia 端末で数ヶ月後に利用可能になるでしょう。 QtWebKit 2.1.1 の主な変更点は、モバイルプラットフォームで HTML5 の video/audio の基本部分がサポートされたことと、いくつものバグフィックスです。変更の詳細な一覧は QtWebKit-2.1.1 リリースノート をご覧ください。プロジェクトの wiki にはビルドの手順や他の情報が書かれています。 Linux は QtWebKit の開発の中心で検証すべきプラットフォームの1つですが、QtWebKit 2.1.1 のリリースは Nokia のモバイルプラットフォームのみを公式にサポートします。デスクトップのユーザーは、Qt […]

Read More

QtWebKit 2.2 テクニカルプレビュー(TP)

Published Tuesday May 17th, 2011 | Leave a comment
Posted in ニュース | Tags: , ,

この記事は Qt Blog の ”QtWebKit 2.2 technical preview available!” を翻訳したものです。 執筆: Andreas Kling 2011年5月11日 QtWebKit が好きな方もそうでない方もこんにちは! ついにやりました。QtWebKit-2.2 に TP-1 のタグがつけられました(qtwebkit-2.2-tp1 @ http://gitorious.org/+qtwebkit-developers/webkit/qtwebkit)。 これは初の QtWebKit-2.2 の公式の TP になります。これは新しい、フレッシュな WebKit trunk から派生したブランチで、QtWebKit-2.0(Qt-4.7)や QtWebKit-2.1.x と比べると、数多くの新機能、機能強化、バグフィックスが含まれます。QtWebKit-2.2 は全ての主要なデスクトップとモバイルプラットフォームでサポートされ、次の Qt のオフィシャルリリースと Qt SDK に含まれるでしょう。 このタグでは、デスクトップ Linux、組み込み Linux, Windows XP(32)、Windows 7(32)、OSX 10.6(Snow Leopard) にて基本テスト(ビルド+いくつかのウェブサイトでのナビゲーション)をパスしています。QtWebKit に興味のある方全員にお願いですが、このリポジトリのクローンを作成し、テストをそれぞれの環境で走らせて、全ての問題をメーリングリストや IRC、bugzilla へ報告していただければと思っています。 QtWebKit-2.2 のロードマップや利用手順などのリリースに関する情報は、リリース Wiki http://trac.webkit.org/wiki/QtWebKitRelease22 にまとめられています。これらの編集も歓迎します。 現時点ではビルド済みのバイナリは提供していません。パッケージャーの方で、お好きな […]

Read More

QNetworkAccessManager での HTTP のスレッド化

Published Monday May 2nd, 2011 | Leave a comment
Posted in リサーチプロジェクト | Tags: , ,

この記事は Qt Blog の “Threaded HTTP inside QNetworkAccessManager” を翻訳したものです。 執筆: Markus Goetz 2011年4月29日 みなさん、こんにちは。Markus です。これは Labs での私の初めての記事になります 🙂 少し前に QNetworkAccessManager が HTTP リクエストを別スレッドで動かすための変更を加えました。これについての詳細を求める声があったため、この記事を書きました 🙂 この背景には(WebKit1 をベースにした) QtWebKit の動作が関係します。ウェブブラウザは基本的にとても多くの処理を行います。HTML や CSS の解釈、JPEG や PNG の画像データの表示可能な形式へのデコード、ページのレイアウト、ユーザーからの入力への反応、素晴らしい Web 2.0(もう 3.0?)の世界の Javascript の実行などが必要です。 ネットワークの処理がブラウザ内で同じスレッドで動作している場合、上記の処理の実行中にはネットワークの処理は先に進みません。ネットワークをトレースしたところ、”synchronization points” と呼ばれる現象が起こっていました。これは QtWebKit がメインスレッドでビジー状態にありイベントループをブロックしているため、ネットワークのリクエストが送られないという現象です。最悪なケースでは HTTP サーバーが データの送信を停止します。特に、通常のデスクトップ PC よりも処理能力が低くネットワークのレイテンシが高い場合にこの傾向は強くなります(モバイル端末の世界へようこそ!)。 これに対する解決策はいくつかあります。 QtWebKit を別スレッドに移し、ネットワークをユーザースレッドに残す QNetworkAccessManager 全体を別スレッドに移す QNetworkAccessManager […]

Read More

QtWebKit-2.1.0 リリース

Published Wednesday April 20th, 2011 | Leave a comment
Posted in Qt, ニュース | Tags: ,

この記事は Qt Blog の ”QtWebKit-2.1.0 has been released!” を翻訳したものです。 執筆: Andreas Kling 2011年4月18日 長いテスト期間を終え、QtWebKit のバージョン 2.1.0 がリリースされました。下記の複数の方法で入手できます: gitorious のソースコード ソースアーカイブ まもなくリリースする Qt SDK (1.1) Nokia の携帯電話に 数週間か数ヶ月後にリリースされる予定のアップデート QtWebKit-2.1 は WebKit の2010年6月時点の trunk を元に、QtWebKit-2.0 に対して HTML5, CSS そして JavaScript への(通常のバグフィックス以外にも)改良を行ったものになります。詳細な変更履歴は QtWebKit-2.1 のリリースノート を確認してください。プロジェクトの wiki にビルド方法やその他の情報を記載してあります。 QtWebKit-2.1 シリーズ は「内部向け」として扱われており、正式にはデスクトッププラットフォームをサポートしないことに注意してください。開発やテストでは、特に Linux において比較的安定して動作していますが……。デスクトップユーザーの皆さんは、この半期(2011年上半期)の終わりにリリースを予定している QtWebKit-2.2 まで待たれるのがいいかもしれません。2.2 では Qt がサポートする全てのプラットフォームを正式にサポートする予定です。 QtWebKit […]

Read More

今後の QtWebKit のリリースについて

Published Thursday March 10th, 2011 | Leave a comment
Posted in Qt | Tags:

この記事は Qt Blog の “Briefly about upcoming QtWebKit releases” を翻訳したものです。 執筆: Andreas Kling 2011年3月3日 現在、 QtWebKit チームでは来るべき二つのリリースに向けて開発を進めています。 QtWebKit 2.1 は Nokia のプラットフォーム(MeeGo と Symbian)向けのリリースです。Qt 4.7 上で動作し、バグフィックスや HTML5 のメディアエレメントサポートの改良などを含む新機能が含まれます。 QtWebKit 2.2 は全てのプラットフォーム向けのリリースです。WebKit trunk の(まだ取得していませんが)新たなスナップショットベースで、Qt 4.8 に同梱してリリースします。ただし、Qt 4.7 で動かす事も出来ます。 この準備のため、WebKit trunk からは Qt 4.6 のサポートを削除する予定です。もしこのサポートが必要ならば、すぐにご連絡ください。

Read More

Qt をはじめよう! 第6回: 簡単なブラウザを作ってみよう!

Published Tuesday April 13th, 2010 | Leave a comment
Posted in Qt をはじめよう! | Tags: ,

前回の Hello World に引き続き、Qt Creator を使用して、URL の入力/表示欄と WebKit を用いたページの表示部をもつ簡単なブラウザを作成してみましょう。 今回は Mac OS X の Qt Creator を使用して作業をしますが、Windows や Linux でも基本的に同様です。

Read More
Get started today with Qt Download now