TwitterFoxにPreferenceを追加してポップアップ最大数をabout:configから変更できるようにしてみる
Firefox拡張機能で設定値を読み書きする (その2) - ess sup
を参考にやってみた。
TwitterFoxのPopup表示のmaxはソース内で"5"とハードコーディングされているので、これを about:config からいじれるようにしてみる。
まず、TwitterFoxがインストールされているフォルダを探し出し、以前のエントリにあるようにTwitterfox.jarを展開してソースをいじれる状態にしておく。
準備ができたら以下のように修正 ※以下TwitterFoxが格納されているフォルダを (TwitterFoxHome) と記載
(TwitterFoxHome)\defaults\preferences\twitternotifier.js
--- twitternotifier.js.orig Thu Jul 31 07:26:58 2008 +++ twitternotifier.js Sun Dec 14 15:15:50 2008 @@ -10,3 +10,4 @@ pref("extensions.twitternotifier.soundFile", ""); pref("extensions.twitternotifier.session", ""); pref("extensions.twitternotifier.debug", false); +pref("extensions.twitternotifier.popupMaxCount", 5);
ここではPreferenceのキーとしてextensions.twitternotifier.popupMaxCountを追加して、そのデフォルト値として 5 を設定している。
で、その設定を読み込むように修正する
(TwitterFoxHome)\chrome\content\twitternotifier.js
diff U3 twitternotifier.js.orig twitternotifier.js --- twitternotifier.js.orig Tue Sep 30 00:18:30 2008 +++ twitternotifier.js Sun Dec 14 15:09:06 2008 @@ -353,8 +353,13 @@ if (count == 0) { return; } + +// *** Hack by snaka *** + var pref = Components.classes['@mozilla.org/preferences-service;1'] + .getService(Components.interfaces.nsIPrefBranch); + var popupMaxCount = pref.getIntPref("extensions.twitternotifier.popupMaxCount"); - if (count > 5) { + if (count > popupMaxCount) { this._messageQueue = new Array(); this.showNotice(this._strings.getFormattedString("MoreThan5Tweets", [unread])); }
上記のように、もともと 5 とハードコーディングされていた箇所を perf.getIntPerf() で取得した値を使用するように変更している。
ここまで作業が完了したらFirefoxを再起動して about:config を確認してみる
すると、こんな感じでデフォルト設定が表示されていると思う。これを試しに10などの値に変更してみる。
そうすると、TwitterFoxが10件のメッセージまでPopupしてくれるようになるはず...
参考までー。