2013-01-01から1年間の記事一覧

Blink: Shadow DOMのLayoutTestを実行する

はじめに BlinkでShadow DOMのLayoutTestを実行する手順のメモです。 仕様 今回は以下の仕様のLayoutTestをピンポイントで実行します。 http://www.w3.org/TR/shadow-dom/ Invoking the cloneNode() method on a ShadowRoot instance must always throw a DA…

Chromium Code Reading: Experimentalな機能の実装(WebPのAcceptヘッダ送出)

はじめに Google+を見ていたら、面白そうなポストがありました。 https://plus.google.com/100132233764003563318/posts/KRU6nxp7LXGCanaryビルドに新しいExperimentalな機能が追加されました。簡単に言うと、画像のリクエスト時にHTTPリクエストのAcceptヘ…

Chromeにはじめて取り込まれたパッチ

記念すべき第1号です。 https://chromium.googlesource.com/chromium/src/+/15fc083b4a23e23417a6bf71f38e2f7966908590単なるtypoの修正ですが、LGTM(Looks Good To Me)をもらった時は嬉しかったです。Botがビルドとテストを走らせる様子も体験してみると楽…

Visual StudioでChromeの動作を見る: Blinkの初期化処理やイベントリスナーのバックトレース取得

はじめに Visual Studio 2010 ExpressでChromeがビルドできるようになったので、次はデバッグを試してみました。今回は、こちらのドキュメントを参考にしました。 http://www.chromium.org/developers/how-tos/debugging 手順 1. chrome/chrome.slnを開きま…

chromeにパッチを投げてレビューを受けるまでのワークフロー

はじめに chromeのWebSocketのコードを読んでいたら、コメントにtypoを発見しました。 せっかくなので、パッチを作成してレビューを受けられる状態までもっていきました。一連のワークフローは手順の通りでできました。 http://www.chromium.org/developers/…

Visual Studio 2010 ExpressとninjaでChromiumをビルドする

はじめに Windows 7環境が汚れてきたので、Windows 7の再インストールのついでにChromiumをビルドできるようにしました。 環境 以下の環境でChromiumをビルドできるようにします。 Windows 7 Visual Studio 2010 Express Edition cygwin git ninja (ビルドシ…

WebKit: QtWebKitのビルドとはじめてのWebKit Hack

はじめに 今回は、Google ChromeやiPhoneのMobile Safariなどで採用されているレンダリングエンジンWebKitをより身近な存在に感じられるようにします。スタンダードなパソコンとLinuxやC/C++の知識が多少あれば、WebKitのHackの入り口まで一気に到達できます…

WebKit: fontショートハンドプロパティのパース

今回はショートハンドプロパティであるfontプロパティのパースについて見ていきます。 ここだけ読んでも、CSS2.1の仕様とWebKitの実装の対応関係がとれているのがなんとなく見えてきます。 15.8 Shorthand font property: the 'font' property'font' Value: …

WebKit: CSSプロパティと値の組(宣言)のパース

今回はCSSのプロパティと値の組(宣言)についてWebKitの実装を読んでみる。つまり、CSSの以下の仕様。 4.1.8 Declarations and propertiesA declaration is either empty or consists of a property name, followed by a colon (:), followed by a property v…

WebKit: コード探索

はじめに 久しぶりにブログを書いてみたくなりました。WebKitに興味が少し出てきているので、学んだことなどをメモとして書いていこうと思います。 コンパイル時assert コンパイル時assertの面白い例。コメントで型のサイズを肥大化させないこと、と書くより…