人気ブログランキング | 話題のタグを見る

BrowserAction の挙動   

複数の WebExtensions ベースのアドオンをインストールしている場合、どらかひとつのアドオンの BrowserAction が発火すると、インストールされているすべてのアドオンの BrowserAction が発火してしまう。これ恐らくアドオン毎に分離する Chrome と、コンテンツと UI を分けるのみに留める e10s のプロセス分離に対するスタンスの違いなんだろうけど、互換性の観点からするとこれどうするんだろ?

あと WebExtensions が NoScript と衝突するらしいので、NoScript 切った方が良いです。

# by norah_models | 2015-09-02 01:32

WebExtensions のファースト・インプレッション   

WebExtensions のファースト・インプレッション。以前作った Chrome 用のアドオンを WebExtensions に移植してみたのでその感想。

Q. Chrome の拡張機能をそのまま使えるのか?
A. API レベルでは互換性があるが(ここについては後述)パッケージングを作り直した方が今の所は確実。内部レベル的には高い互換性をもっているので、そのまま持って行っても使えるが、拡張子の変更と manifest に Mozilla 独自の宣言を加える必要がある。逆に言えばその変更を加えるだけで良いとも言えるが、どうも Firefox 側で認識できない宣言があるようで、それを見つけるとエラーを吐くことから当面は manifest を新規で作ってパッケージングしなおすほうが良い。AMO にホスティングする際に、自動的に manifest をコンバートしてくれる事を期待。

Q. API の互換性は高いのか?
A. 答えは Yes だが、No でもある。現時点では Chrome 側が用意している API セットを、Firefox 側で使用できるわけではない。ただ使用できる範囲に関して言えばほぼ不満なく使える。ただしタブの複数選択など Firefox 側では、そもそもサポートしていない機能があるので、今後気になるところ。
ちなみに公式サンプル https://github.com/mdn/webextensions-examples は、Chrome が最初に出したサンプルと同じものです。

結論としては、ほぼ書き直す必要なく移植することは可能だが CSS などが Webkit 前提で作られているのでPrefix だらけで、そこを修正する必要があったり、Chrome でしか動かない機能をどうするのかと言った事を考える必要はある。あと今となっては決してモダンな枠組みではないので Firefox やブラウザ市場にポジティブな影響を与えるものではないのが残念な所。言うなれば喫茶店で熱くも冷たくない水を出された感じやね。

# by norah_models | 2015-08-24 23:45

Chromeのプロフィールパネルを非表示にする方法   

Chromeのプロフィールパネルを非表示にする方法。

Chrome で chrome://flags/#enable-new-avatar-menu を開いて "新しいアバター メニューを有効にする" を無効化する。ただこれを無効化するとゲスト ブラウジング機能を使えなくなる(UI 上開始できない)。まあぼっちには関係ない機能ですね(´;ω;`)ブワッ

# by norah_models | 2015-01-14 12:42

Sony Reader PRS-Tx   

Sony Reader の PRS-T のアップデートが行われて、ついに太文字に対応したと思ったら、どうも footnote なんかで使われるアンカーの処理がおかしい事に気付いた。今までなら href=#footnote1 で飛べていたのが xxxx.html#footnote1 じゃないと飛べなくなってしまっている。

この手のコンテンツ配信サービスは各社囲い込みが激しいせいで顕在化してこないだけで EPUB の表示品質の互換性はブラウザ以上に闇が深そうでふるえますね。

ついでに Sony Reader 繋がりで、Sony Reader Store が iOS 対応のニュースの影に隠れてひっそりと PC に対応した。これは HTML5 で構築された EPUB リーダーといえば聞こえが良いのだけど、Reidum のような書籍の管理機能などは持っておらず純粋なビューアーな為に PC で購入書籍を読むには常時オンライン環境が必要になる。(何故かアプリケーションキャッシュを使っている)

またビューアーとしての品質にも問題がある。全体的に情報不足で、例えばこのビューアーはページの先読みをするのだけどユーザーの読む速度が先読みに追いついた場合に、ローディング中と言った情報を提供しない。そのためにフリーズしたかのように感じてしまう。これはメニュー周りにも言えることで、反応が決して速くないので、処理待ちなのか、本当にフリーズしてしまっているのかが分からなく不親切。

技術的な部分に目を向けると HTML5 ベースのビューアーの定番的なアプローチと言える Canvas に描画して画像をコピペを出来なくするというものだが、その場合だと開発ツールとかでモニタリングすれば画像を抜き取れる。そこで画像をタイル状に分割して配信してビューアー上で復元している。ただし漫画なんかの場合は高解像度の画像をクライアントに送れば良いのだけど、小説なんかの文字ベースのコンテンツも Canvas 描画で、サーバー側で一度画像化されたデータを漫画同様のプロテクトをかけて送られてくるという仕様。つまり画面の拡大縮小を行うと文字が潰れてしまう。

いちおうこれブックリスタのサーバーで動いているので、そのうちブックパス辺りにも来るかもしれないけど、正直簡易ビューアーの域からは出てないのと、なんか各ページの余白に管理番号らしきものが振られていて邪魔。

# by norah_models | 2014-06-29 22:40

Android Development tools 23   

Google I/O で発表された L と Wear の SDK を入れようと思い、ADT23 に更新したら Eclipse が更新できないとダダをこねるので、クリーンインストールがてらに Google が配布している新しい Eclipse+ADT23 のパッケージをダウンロードするも今度は大量のエラーが発生するので何事かと思ったら、どうも配信版の ADT23 には足りないファイルがあるらしく、それが原因で上手く起動しないらしい。

解決策としては古いバージョンの ADT を入手して以下のファイル

tools/hprof-conv(.exe)
tools/support/annotations.jar
tools/proguard

をコピーすれば一応使えるようになる。この一応というのは、それでもたまにエラーが起きたり、Eclipse のスプライトが ADT のカスタマイされたものではなくて、通常の Eclipse のものになったり、ツールバーの表示が微妙におかしかったりと変な所がある。もしかして zipalign と sqlite3 も無くなってないか?あと lint も壊れているような;

Android Studio っていつまで Beta なんですかね? ART と一緒に正式版になると思っていたのだけど。

# by norah_models | 2014-06-28 02:06