Skin fixes, Unite, and then some てなわけで,10.50 pre-alpha のスナップショットが来たのでサックリとインストール.

例によって,邦訳はスキンもUniteも直した,それに…… に.

タイトルでも言われてるように,スキンの改修が進んで Unite も 10.10 同等にまで戻りつつあるらしい.

例えば,閉じたタブを再度開き直す時のアイコンが「ゴミ箱」っぽくなって,マウスオーバー時にアイコンが変化すると言った細かいギミックも追加されてる.

新しいごみ箱アイコン

Unite は一応動くところまでは戻っているものの,MIME の処理の問題で新しくインストールすることが出来ないので実質的には後退と言わざるを得ない状態.

今回はスキンや Unite よりむしろ,and then some の部分 Geolocation API への対応のほうが重要.

Geolocation API はほぼ1年前の Find me! Geolocation-enabled Opera build - Opera Lab にて対応が予定されてた機能.

簡単に言うと,IP アドレスや Wifi (aka 無線 LAN) のアクセスポイントの情報を元に,ユーザの緯度経度を扱うためのプロトコルとAPI群を定めておいて,ユーザの現在地と連携したサービスを展開しやすくしましょうよというお話.

IP アドレスや Wifi アクセスポイントと緯度経度との変換 DB が必要になるので,今回 Opera としては, Google Location Service を採用.

ウェブサイトが位置情報を要求してきたら,接続してるユーザのアクセスポイントの情報を Google に送って緯度経度を得て,それをウェブサイト側に渡すという形で実装している.

当然,プライバシーの問題が出てくるので,送信確認のための UI や,そもそも Google に送るかどうかを問う UI などいくつか追加がされている.

まず,一番最初に位置情報を要求するサイトに出会うと,Geolocation を要求してることの通知が現れる.

GeolocationAPI と Google Location Service への同意通知

クリックすると,Google Location Service (以下 GLS)の利用条件が表示されて,同意を求めてくる. この時点で,同意しないを選ぶと Google にも要求してきたサイトにも位置情報は送信されないし,以後 opera:config#Geolocation|Enablegeolocation を有効にするまで一切位置情報の送信に煩わされなくなる.また,一旦同意しても opera:config から無効にすることも出来る.

Google Location Service の利用条件の確認ダイアログ

一度 GLS に同意してから,位置情報を要求するサイトに出会うと,送信の可否を問う通知が表示される.ただ,既知の問題として今回のスナップショットだと GLS の同意のダイアログから戻っても,ページをリロードしないとこの画面にならない. ここで,「Share My Location」を押すとGLSで緯度経度を得て,ウェブサイトに渡される.「Deny」 を選べば,GLS にも送信されない.

Geolocation requested notification

位置情報を要求してくるサイトは,アドレスバーにピンのアイコンが表示されて,区別できる用になっていて,このピンをクリックすると

アドレスバーのピンアイコン

サイト別設定のネットワークのタブに出来た,Geolocation の設定がいじれる.

サイト別設定に新設されたGeolocationAPIの設定

それから,既知の問題としてopera:config などに CSS が適用されない問題があってちょっと辛い,

opera-1050-3222-internal-pages-no-style.png