ChromeExtensionの作り方第6回はomniboxを使いましょう。
ふだん検索したりアドレスバーになっているフォームです。
omniboxの使用は、manifest.jsonにpermissionを追加するのではなく、omniboxというセクションが増えます。
keywordというパラメータに起動キーワードを入れます。
[javascript]
{
"manifest_version": 2,
"name": "test",
"description": "OmniBox",
"version": "1.0",
"browser_action": {
"default_icon": "icon.png"
},
"background" : {
"scripts" : ["background.js"]
},
"omnibox" : {
"keyword" : "test"
}
}
[/javascript]
background.jsにはこんな感じでリスナーを登録させましょう。
dispositionにはタブの情報が入ります。
おそらくcurrentTabという文字列が固定になるかな。
[javascript]
chrome.omnibox.onInputEntered.addListener(function (text, disposition) {
alert(text.length);
}
[/javascript]
さて使い方ですが、検索ボックスにkeywordで設定した文字をうち、tabを押します。
この場合検索ボックスにtestと入れてtabを押すと、omniboxのモードが切り替わります。
後はそこに入れた文章がeventPage内のスクリプトに渡される、という仕組みです。