他のブラウザエンジンがそれをサポートすることを気にしないので、Firefoxにはしばらくの間、ポリフィルのregisterMenuCommand部分が依存するコンテキストメニュー修正機能を削除するための未解決のバグがありました。
現在、「修正」(つまり、サポートの削除)に関心を持っている人がいるようです。そのため、GM4が独自のサポートを提供していないことを再検討することをお勧めします。
構成UIの起動などに十分に活用しているため、適切な代替が提供されない場合は、GreaseMonkeyのサポートを終了し、技術的な理由から、ViolentMoneyとTamperMonkeyしかサポートできないことをユーザーに指示する必要があります。このような「一度設定すればほとんど変更しない」構成UIボタンでサイトを乱雑にすることは、UXとして受け入れられるとは思いません。
+1
私はHTML5コンテキストメニューが大好きですが、それらが消えた場合は、GM.registerMenuCommandを元に戻したいと思っています。 マルチサイトのユーザースクリプト用に別の自家製ソリューションを維持しているとは思えません。
まだ存在しているUI / APIについて、使用したい提案はありますか?
猿のメニューに登録せざるを得ないと思いますか?
これがTamperMonkeyとViolentMonkeyのやり方です。
他のオプションは、 browser.menus.create
を使用してポリフィルが行うことを概算して、ユーザースクリプトに登録されたすべてのメニュー項目をコンテキストメニューのサブメニューに押し込むことの実現可能性を調査することだと思います...人々は一般的にコンテキストメニューがコンテキストであると期待しているため、コンテキストにスコープを設定する方法がなくても最適です。
(そして、理想的には、Firefoxのアドオンマネージャーの動作と同様に、コンテキストメニューではなくモンキーメニューに「このユーザースクリプトを構成する」エントリを配置する方法があるとよいでしょう。)
後者は実際には「実現可能性を探る」ことです。 WebExtensions APIを突っ込んでからかなり長いので、その点での制限を思い出せません。 (私はユーザースクリプトを書いています。なぜなら、それらはより移植性が高く、必須の拡張機能署名に抗議しているからです。)
@arantius
猿のメニューに登録せざるを得ないと思いますか?
コンテキストメニューが仕様から廃止されていなくても、GM_registerMenuCommandの代わりに使用すると、次の欠点があります。
Firefoxトランクは、Firefox 85のターゲットリリースマイルストーンで<menuitem>
へのアクセスを無効にするパッチをリリースしました。
https://bugzilla.mozilla.org/show_bug.cgi?id=1680596#c11
(具体的には、デフォルトでfalseに設定されているdom.menuitem.enabled
設定の背後に配置されます。)
@arantius GM.registerMenuCommand()の実装が緊急の問題になりました。
このAPIは、ViolemntmonkeyとTampermonkeyの両方、およびGreasemonkey3.xに実装されています。 上記のように、他の方法で交換することはできず、互換性にとって重要です。
https://github.com/greasemonkey/greasemonkey/pull/2770アップデートで、実装に関するこれまでのすべての懸念に対処しました。 なぜそれをマージできないのですか?