single.php

Chrome 拡張機能のuserSettingChangedイベントを試してみた

Google Chromeの拡張機能の[国際化]機能を利用して利用する文章や項目の英語と日本語を切り替えて表示する手順について備忘録的に投稿しておきます。

アクションに関連するユーザー指定の設定変更

Chrome 130から実装されている userSettingChanged イベントがあります。

リファレンスの日本語訳には、こんな記載があります。

拡張機能のアクションに関連するユーザー指定の設定が変更されたときに呼び出されます。

[アクションに関連するユーザー指定の設定]が何なのか、分かり辛い説明ですが機能拡張の設定を変更した際に発火するイベントのようです。

先回、作成したアイコンにバッジを追加する拡張機能を修整して、[userSettingChanged ]イベントが発生した際にアイコンにバッジが追加されます。

'use strict';
{
  chrome.action.onUserSettingsChanged.addListener((tab) => {
    chrome.action.setBadgeTextColor({ color: '#FFF' });
    chrome.action.setBadgeBackgroundColor({ color: '#F00' });
    chrome.action.setBadgeText({ text: '*' });
  });
}

元にしたアイコンにバッジを追加する機能については別記事をご覧ください。

ツールバーに固定する

実際に、拡張機能の設定を変更して userSettingChanged イベントの動作を確認していきます。

[拡張機能]画面で、修整したコードを含むフォルダーをドラッグしてインストール。

[機能拡張|詳細]画面で[ツールバーに固定する]設定を変更してみました。

アイコンにバッジが追加されたのでイベントが動作しているようです。

色々試してみましたが、[userSettingChanged]イベントは、Chromeブラウザーの[設定]画面の変更ではなく、機能拡張の[設定]変更を受け取る仕組みでした。

しかし[ファイルの URL へのアクセスを許可する]や[エラーを収集する]など他に設定項目では[userSettingChanged]イベントは発生しませんでした。

今回の試作では[ツールバーに固定する]設定のみで動作確認ができました。

まとめ

今回は、Google Chromeの拡張機能に最近追加された[userSettingChanged]イベントについて調べてみました。

[機能拡張|詳細]画面で[ツールバーに固定する]設定を変更した場合にイベントが動作しました。

また、同じ画面に並んでいる[ファイルの URL へのアクセスを許可する]や[エラーを収集する]設定を変更してもイベントは発生しませんでした。

まだ、新しく実装されたイベントなので詳細な情報が不足していますが、[ツールバーに固定する]設定では正しく動作をするのが確認できました。

Google Chromeの拡張機能の[ツールバーに固定する]設定などの変更が検出したい人の参考になれば幸いです。

スポンサーリンク

最後までご覧いただきありがとうございます。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です