2008年04月28日

使わないコンテキストメニューを非表示

Stylish を使ってコンテキストメニューを一旦全て非表示にし、その上で実際使う必要が生じたメニューのみ表示するようにしていけば使わないメニューが表示されるロスを防げますし、メニューを辿ってカーソルを移動する手間も省けます。
userChrome.css でも出来ますが再起動が必要ですので、Stylish でやることをお奨めします。完全に私用仕様が固まったら userChrome.css に移すのはありかもしれません。

以下デフォルトのコンテキストメニュー全消し用。必要なモノはコメントアウトするか、行自体削除すればOKです。本来なら id だけで用は足りるのですが、label があった方がメンテナンス性が上がりますので今回は付けておきます。

拡張機能によって追加で表示されるメニューは適宜 DOM Inspector で調べて消して下さい。
/* Stylish用 */
@namespace url(http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul);

menuitem[id="spell-no-suggestions"][label="(修正候補がありません)"],
menuitem[id="spell-add-to-dictionary"][label="辞書に追加"],
menuseparator[id="spell-suggestions-separator"],
menuitem[id="context-openlinkintab"][label="リンクを新しいタブで開く"],
menuitem[id="context-openlink"][label="リンクを新しいウィンドウで開く"],
menuseparator[id="context-sep-open"],
menuitem[id="context-bookmarklink"][label="このリンクをブックマーク"],
menuitem[id="context-savelink"][label="名前を付けてリンク先を保存..."],
menuitem[id="context-sendlink"][label="リンクの URL をメールで送信..."],
menuitem[id="context-copyemail"][label="メールアドレスをコピー"],
menuitem[id="context-copylink"][label="リンクの URL をコピー"],
menuseparator[id="context-sep-copylink"],
menuitem[id="context-showimage"][label="画像を読み込む"],
menuitem[id="context-viewimage"][label="画像だけを表示"],
menuitem[id="context-copyimage-contents"][label="画像をコピー"],
menuitem[id="context-copyimage"][label="画像の URL をコピー"],
menuseparator[id="context-sep-copyimage"],
menuitem[id="context-saveimage"][label="名前を付けて画像を保存..."],
menuitem[id="context-sendimage"][label="画像をメールで送信..."],
menuitem[id="context-setDesktopBackground"][label="デスクトップの背景に設定..."],
menuitem[id="context-blockimage"],
menuitem[id="context-back"][label="戻る"],
menuitem[id="context-forward"][label="進む"],
menuitem[id="context-reload"][label="更新"],
menuitem[id="context-stop"][label="中止"],
menuseparator[id="context-sep-stop"],
menuitem[id="context-bookmarkpage"][label="このページをブックマーク"],
menuitem[id="context-savepage"][label="名前を付けてページを保存..."],
menuitem[id="context-sendpage"][label="ページの URL をメールで送信..."],
menuseparator[id="context-sep-viewbgimage"],
menuitem[id="context-viewbgimage"][label="背景画像だけを表示"],
menuitem[id="context-undo"][label="元に戻す"],
menuseparator[id="context-sep-undo"],
menuitem[id="context-cut"][label="切り取り"],
menuitem[id="context-copy"][label="コピー"],
menuitem[id="context-paste"][label="貼り付け"],
menuitem[id="context-delete"][label="削除"],
menuseparator[id="context-sep-paste"],
menuitem[id="context-selectall"][label="すべて選択"],
menuseparator[id="context-sep-selectall"],
menuitem[id="context-keywordfield"][label="この検索にキーワードを設定..."],
menuitem[id="context-searchselect"],
menuseparator[id="frame-sep"],
menu[id="frame"][label="このフレーム"],
/*
menu[id="frame"][label="このフレーム"] menupopup menuitem[id="context-showonlythisframe"][label="このフレームだけを表示"],
menu[id="frame"][label="このフレーム"] menupopup menuitem[id="context-openframe"][label="フレームを新しいウィンドウで開く"],
menu[id="frame"][label="このフレーム"] menupopup menuitem[id="context-openframeintab"][label="フレームを新しいタブで開く"],
menu[id="frame"][label="このフレーム"] menupopup menuitem[id="context-openframeintab"][label="フレームを新しいタブで開く"]+menuseparator,
menu[id="frame"][label="このフレーム"] menupopup menuitem[id="context-reloadframe"][label="フレームの再読み込み"],
menu[id="frame"][label="このフレーム"] menupopup menuitem[id="context-reloadframe"][label="フレームの再読み込み"]+menuseparator,
menu[id="frame"][label="このフレーム"] menupopup menuitem[id="context-bookmarkframe"][label="このフレームをブックマーク"],
menu[id="frame"][label="このフレーム"] menupopup menuitem[id="context-saveframe"][label="名前を付けてフレームを保存..."],
menu[id="frame"][label="このフレーム"] menupopup menuitem[id="context-saveframe"][label="名前を付けてフレームを保存..."]+menuseparator,
menu[id="frame"][label="このフレーム"] menupopup menuitem[id="context-printframe"][label="フレームを印刷..."],
menu[id="frame"][label="このフレーム"] menupopup menuitem[id="context-printframe"][label="フレームを印刷..."]+menuseparator,
menu[id="frame"][label="このフレーム"] menupopup menuitem[id="context-viewframesource"][label="フレームのソースを表示"],
menu[id="frame"][label="このフレーム"] menupopup menuitem[id="context-viewframeinfo"][label="フレームの情報を表示"],
*/
menuseparator[id="context-sep-properties"],
menuitem[id="context-viewpartialsource-selection"][label="選択した部分のソースを表示"],
menuitem[id="context-viewpartialsource-mathml"][label="MathML のソースを表示"],
menuitem[id="context-viewsource"][label="ページのソースを表示"],
menuitem[id="context-viewinfo"][label="ページの情報を表示"],
menuitem[id="context-metadata"][label="プロパティ"],
menuseparator[id="spell-separator"],
menuitem[id="spell-check-enabled"][label="スペルチェックを行う"],
menuitem[id="spell-add-dictionaries-main"][label="辞書を追加..."],
menu[id="spell-dictionaries"][label="言語"],
/*
menu[id="spell-dictionaries"][label="言語"] menupopup[id="spell-dictionaries-menu"],
menu[id="spell-dictionaries"][label="言語"] menuseparator[id="spell-language-separator"],
menu[id="spell-dictionaries"][label="言語"] menuitem[id="spell-add-dictionaries"][label="辞書を追加..."],
menu[id="spell-dictionaries"][label="言語"] menuseparator[id="context-sep-bidi"],
*/
menuitem[id="context-bidi-text-direction-toggle"][label="テキストの方向を切り替える"],
menuitem[id="context-bidi-page-direction-toggle"][label="ページの方向を切り替える"]
{display:none !important;}

posted by 電網探題 at 19:30 | トラックバック(0) | 電網探題 | 編集

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。