ZeroWatchグリースモンキー(市場パネルを引っ込める)

追記:GitHubに公開 https://gist.github.com/2710988

ほぼ悪評しか聞こえてこない次期ニコ動動画プレイヤーZeroWatchですが、とりあえず最低限なんとか使えるぐらいに修正が入りました。

ZeroWatch修正、設定の追加やチューニングなど - ニコニコ動画 開発者ブログ(新着情報) ZeroWatch修正、設定の追加やチューニングなど - ニコニコ動画 開発者ブログ(新着情報)

個人的にはこういうアプリケーションの根幹に関わる動作の変更を、これまでの動作の修正ではなく「設定項目」の切り替えとして追加してしまうというのは設計的に大変良くないとは思いますが、中の人には中の人なりの事情があるのでしょう(念の為、企業向けの業務パッケージアプリケーションとかだと、各企業向けにカスタマイズする必要が出てくるので基本的な動作についても「設定項目」としてしまうのはアリだと思いますが)。

残った不満点

修正が入ったとはいえ、個人的にはUIデザインとして下記の点がまだ不満です。

1. 画面左のニコニコ市場が発する存在感が邪魔(動画サイズは中画面)
f:id:ka-ka_xyz:20120505212904p:image


2. コメントパネルをフォーカスした場合に、動画を覆い隠す動作が邪魔(動画サイズは中画面)
f:id:ka-ka_xyz:20120505212905p:image

なんというかこー。恐らくワイド画面を前提としたデザインだと思いますが、解像度1280 x 1024のPCから見るとうっとおしいことこの上ありません(それにしても、市場パネルやコメントパネルが動画を覆い隠すというデザインは動画サイトとしてちょっとどうかと・・・画面全体を右シフト/左シフトさせればいいのに)。

とりあえず、自作のグリモンで気になる部分をざっくり修正してみました。
f:id:ka-ka_xyz:20120505212906p:image
市場パネルを目立たなくして動画プレイヤーを左寄せし、コメントパネルが動画プレイヤーの上に覆いかぶさらないように修正。Chromeでは動画サイズを「中画面」、Firefoxでは「大画面」に設定すると良い感じで表示されるはずです。

グリモン本体

単にニコニコ市場パネルのサイズを縮めて、動画プレイヤーを左寄せしているだけです。
5/5時点でのZeroWatchプレイヤーで動作確認。使用ブラウザはChrome18.0.1025.168 mおよびFirefox12.0。
改変再配布自由。

※ 5/6 1:09更新。
※ 5/13 いつの間にか市場パネルが完全に隠れてしまうようになっていたので、左寄せになるよう再度修正。また、やや軽くなったはずですがページロード時に市場パネルが右寄せ状態となります。マウスオーバーすることで左寄せ状態に戻ります。
※ 5/16 たぶんこれで完成。上記問題は全て解決。

インストール方法

Google ChromeとMozila Firefoxで動作を確認。IE?無理。

Google Chrome

ichibahider.user.jsをブラウザ画面上にドラッグアンドドロップします。下の方にダイアログが表示されるので適当に「保存」ボタン⇒「継続」ボタンをクリックすればインストール完了。

Mozila Firefox

1. グリースモンキーアドオンをインストール

2. ichibahider.user.jsをブラウザ画面上にドラッグアンドドロップし、表示されるダイアログの「インストール」ボタンをクリックすればインストール完了。

制約事項

今後の保守をする予定は今のところなし。
Chrome使用時、プレイヤーのサイズを中画面から大画面へ変更すると、スクリプトによる変更がリセットされます。これは、WebKit系ブラウザが"DOMAttrModified"イベントをサポートしていないためです。今のところ修正アイデアが思い浮かびません。
とりあえずplayerPanel要素全体に対する"DOMSubtreeModified"イベントを使用するように修正。ただし環境によっては重くなる可能性あり。

その他

もっと全般的に手を入れたい方は、元ニコ動開発者の方が開発された下記のグリモンを入れてみるといいかもです。

【ZeroWatchを】 ZeroFix 【を見やすくしてみた】 ‐ ニコニコ動画(原宿)
ZeroFix is ZeroWatch of niconico fixer. ZeroWatchが改良するまでの暫定的なユーザースクリプトです。 タイトルの縮小、タグの複数段表示、市場エリアを投稿者情報に、コメント入力エリアを下に、フェードを無効化などの機能があります。 — Gist


ただ、今はまだ「ダメなところを運営・開発者へ認識させ、改善させる」フェーズです。グリモン入れるのは、プレミアユーザーとして開発側へ遠慮無くモノ申す権利を行使した上で、それでもやはり改善されずにZeroWatchが強制導入されたときでいいと思います。

追記:じゃあ何故こんな記事を書いたかというと、「そこにDOMが有るから」というのが半分。現行のZeroWatchの動作と、自分なりに求めている動作との最低限の妥協点を形として示したかった・・・というのが残り半分ぐらい。