« Amazon Web Service と PHP で JSONP | メイン | LDRの棒人間に怒られないようにするGreaemonkeyスクリプト(Windows限定) »

LDR、IMEをオフにするGreasemonkeyスクリプト(Windows限定)

| | コメント(0) | トラックバック(0) |

表題のとおりのスクリプトです。
元ネタはこちら。

Collection & Copy - LDR、IMEをオフにするGreasemonkeyスクリプト(Flash8限定)
http://d.hatena.ne.jp/brazil/20060904/1157342173

そもそも、よく棒人間にIME切ってくれって怒られて困ってる人少ないんだろうな。
いや、けっこう怒られて困ってます(^^;
不便に感じてる人はそれなりにいるんじゃないでしょうか。


Flash8限定はなかなか厳しいので、Windows限定ですが、別のアプローチでIMEをOFFにするスクリプトを書いてみました。

2006/09/06 追記:
より改良したものに差し替えました。
LDRの棒人間に怒られないようにするGreaemonkeyスクリプト(Windows限定)



インストール、IMEをONにしてLDRへ。

livedoorlivedoor Reader - RSSリーダー

これで棒人間に怒られる事もなくなりますね。


注意
バックグラウンドのタブで開いたりした場合は、効果がありません。


解説
原理は実はよくわかってなかったり(^^;
以下のような経過でできました。

FirefoxのパスワードフィールドにフォーカスするとIMEがOFFになる機能を使おう。
ショートカットキーが使えないと話にならないので調査。
LDR の event.js のなかに
HotKey.prototype.ignore = /input|textarea/i;
HotKey.prototype.allow = /element_id/;

<略>

if(!this.allow.test(id) && this.ignore.test(tag)) return;

とあるので、id を element_id にしたパスワードフィールドを作って試行錯誤。
<略>
うまくいくようになったが、ページのどこかをクリックすればIMEがONになってしまう。

ところがフォーカスしてOFFになった状態で再読み込みしてみるとIMEが完全にOFFに。>なぜ?

無限リロードにならないように、Firefoxがlocation.searchに値を入れると再読み込みする習性を利用。

(゚Д゚)ウマー

たぶん、FirefoxはパスワードフィールドでIMEをOFFにする機能を実行したあと、フォーカスが外れればIMEをONにするトリガーかけていて、再読み込むすることでそのトリガーがリセットされてIMEがOFFのままになるんじゃないかと。

この機能は今のところWindows版のみなので、このスクリプトもWindows版Firefoxのみで有効です。
将来的には、他のプラットフォームでもサポートされるかもしれませんね。


余談
dataスキームで読み込んだFlashが動作しない件は、けっこう困りますね。
ちょっと試行錯誤したけど、成果なしorz

これができてしまうとFlashのセキュリティを回避することになるし、根本的に違うアプローチが必要なのかもしれないと思えてきたり。
何かよい方法はないもんでしょうか?

トラックバック(0)

このブログ記事を参照しているブログ一覧: LDR、IMEをオフにするGreasemonkeyスクリプト(Windows限定)

このブログ記事に対するトラックバックURL: http://a-h.parfe.jp/mt4/cgi-bin/mt-tb.cgi/172

コメントする

ソフトウェア

アーカイブ

book
amazie movie for Amazon associate


amzlsh amazon search with Flash

BlogPeople

このページをBlogPeopleに登録

RSS feed meter for http://a-h.parfe.jp/einfach/

Bloglinesに登録