Constellation/taberareloo — pull request #119 by syoichi (2012-07-23 10:31:32+00:00)
Title: update Extension Messaging API and 2 Option's CSS minor bugfix

Chrome 20でsendRequestとonRequest(`extension.sendRequest`、`tabs.sendRequest`、`extension.onRequest`)が非推奨になった([参考](http://code.google.com/chrome/extensions/whats_new.html#20))ので、	新しいsendMessageとonMessage([`extension.sendMessage`](http://code.google.com/chrome/extensions/extension.html#method-sendMessage)、[`tabs.sendMessage`](http://code.google.com/chrome/extensions/tabs.html#method-sendMessage)、[`extension.onMessage`](http://code.google.com/chrome/extensions/extension.html#event-onMessage))に置き換え、またOptionのCSSに関して2つの微修正を加えました。

`extension.onMessage`は、sendMessageのコールバック関数(responseCallback)を呼び出す事ができるsendResponseが非同期的に呼び出される時、`extension.onMessage.addListener`のコールバック関数内で`true`を返す必要があります。

>This function becomes invalid when the event listener returns, unless you return true from the event listener to indicate you wish to send a response asynchronously (this will keep the message channel open to the other end until sendResponse is called).
>(snip)
>Return true from the event listener if you wish to call sendResponse after the event listener returns.

[chrome.extension - Google Chrome Extensions - Google Code](http://code.google.com/chrome/extensions/extension.html#event-onMessage)

また、`extension.onMessage.addListener`のコールバック関数に設定される引数がドキュメントではonRequestから変わっているのですが、これはドキュメントが間違っているようです。trunkのドキュメントは既に修正されています。
* [Issue 136857 - chromium - [ext] Documention for onMessage() is incorrect - An open-source browser project to help move the web forward. - Google Project Hosting](http://code.google.com/p/chromium/issues/detail?id=136857)
* [chrome.extension - Google Chrome Extensions - Google Code](http://code.google.com/chrome/extensions/trunk/extension.html#event-onMessage)

`extension.sendMessage`も一部文面が変更されています。
* [Issue 136654 - chromium - [ext] Documention for sendMessage() is incorrect - An open-source browser project to help move the web forward. - Google Project Hosting](http://code.google.com/p/chromium/issues/detail?id=136654)
* [chrome.extension - Google Chrome Extensions - Google Code](http://code.google.com/chrome/extensions/trunk/extension.html#method-sendMessage)

なお、Chrome 19にはsendMessageとonMessageは存在しないようなのでManifestの`minimum_chrome_version`を`20.0`に変更しました。

OptionのCSSに関する修正は以下の通りです。

1. タイプミスの修正により、本来適用されるはずだったCSSが適用されるようになります。

2. 「ポスト関連」における「クイックポストで使うタグの取得元」で、サービスの選択が右側のスペースをクリックする事でも行えてしまうので、誤った選択を防止する為、ラジオボタンかサービス名をクリックしないと選択できないようにしました。

不具合及びこの変更の動作は、Windows 7 Home Premium SP1 64bit上のChrome 20.0.1132.57、拡張のバージョンは2.0.66( 068f6fbb8a2e25c7429c645cd5fd49c7a7e2c7c2 までの変更を含む)という環境で確認しています。