探検


Google Chrome 拡張機能 29 ※どんぐり有

2024/08/23(金) 07:42:10.60ID:tA37fIux0
!extend:checked:vvvvv:1000:512:donguri=8/1
!extend:checked:vvvvv:1000:512:donguri=8/1
⚠このスレに書き込むにはどんぐりレベル8以上が必要です

Google Chrome及びChromium系ブラウザの拡張機能について語るスレです

■ Chrome ウェブストア - 拡張機能
https://chromewebstore.google.com/

Google Chrome 拡張機能 28
https://egg.5ch.net/test/read.cgi/software/1710371640/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:donguri=8/1: EXT was configured
652名無しさん@お腹いっぱい。 警備員[Lv.0][新芽] (ワッチョイ 216c-cOba)
垢版 |
2026/06/13(土) 01:11:11.00ID:eluLN1IS0
クロームからスレ立てようとすると

このスレにはもう書けませんと出て立てれないんだけどなぜ?
2026/06/13(土) 01:13:39.85ID:eluLN1IS0
>>651
それは自己解決しました
2026/06/13(土) 07:19:13.26ID:HaKNgm140
>>648
まだ開発途上のブラウザだからなのかダメでした
655567 警備員[Lv.0][新芽] (ワッチョイ 0917-McgR)
垢版 |
2026/06/13(土) 22:07:02.94ID:SuPtkHQk0
>>654
残念です…(´・ω・`)
たぶん新規タブ乗っ取るタイプなら行けるんでしょうけど、
そうすると良し悪しあるんで…
2026/06/16(火) 22:59:55.31ID:KQBXu3s80
>>652
専ブラ使えば?w 5chはおじ🤓しかいないらしいけどなw
2026/06/17(水) 11:44:59.16ID:9MTGkDyr0
ダークモードとライトモードで拡張機能のアイコンを切り替えようと思ってAIに相談したら、色々頑張って試してみてくれたけど結局無理みたいだった
まあ理由もわからなくはないけど公式のアイコンではやってるのがずるく感じる
2026/06/17(水) 11:55:53.68ID:LFGLLykG0
>>657
prefers-color-schemeみてchrome.browserAction.setIconで指定するだけだぞ
2026/06/17(水) 13:43:53.05ID:9MTGkDyr0
OS自体のライトモードとダークモードの切り替えならそのノリで対応できると思う
Chromeのテーマの切り替えだとループ回して何秒に一回監視とかいうアホなことやらないと追従しない
もちろんツールバー背景だけカスタムで暗い色とかだと全く無理
結局、どっちでも見えるアイコン用意しろ、になっちゃう
Firefoxだとmanifestに書いてるだけで切り替え出来るらしいけどね
2026/06/17(水) 13:46:42.40ID:9MTGkDyr0
断定口調で書いたけど素人なので、突破できる方法もあるかも
2026/06/17(水) 18:16:59.99ID:RgtXFnJA0
>>660
「あまり強い言葉を使うなよ」ですな~w
断定よりかもしれない構文を使おうw
2026/06/17(水) 23:27:32.94ID:WYTo9SUW0
頭が悪いのかもしれない
663567 警備員[Lv.0][新芽] (ワッチョイ 3d96-d+y+)
垢版 |
2026/06/20(土) 14:04:19.78ID:PAJWywKD0
>>657
これ ??

できるけどChromeがmanifestだけで自動的にライト/ダーク用アイコンを
切り替えてくれる仕組みは弱い/基本ない、と見た方がいい。
実装としては、JSでテーマを判定して chrome.action.setIcon() でツールバーアイコンを差し替える 形になる。

Chrome公式では、拡張機能のツールバーアイコンは action.default_icon で指定でき、
さらに chrome.action.setIcon() でプログラムから変更できると説明されている。
また、prefers-color-scheme はユーザーがライト/ダーク配色を要求しているかを検出するための仕組みで、
OS設定やユーザーエージェント設定を反映する。
664567 警備員[Lv.0][新芽] (ワッチョイ 3d96-d+y+)
垢版 |
2026/06/20(土) 14:05:07.89ID:PAJWywKD0
その2

例えばこういう感じ。
-----------------------
// popup.js や options.js など、window がある拡張ページ側で動かす
const mq = window.matchMedia("(prefers-color-scheme: dark)");

function applyIcon() {
const dark = mq.matches;

chrome.action.setIcon({
path: {
"16": dark ? "icons/icon-dark-16.png" : "icons/icon-light-16.png",
"32": dark ? "icons/icon-dark-32.png" : "icons/icon-light-32.png",
"48": dark ? "icons/icon-dark-48.png" : "icons/icon-light-48.png",
"128": dark ? "icons/icon-dark-128.png" : "icons/icon-light-128.png"
}
});
}

applyIcon();
mq.addEventListener("change", applyIcon);
-----------------------
665567 警備員[Lv.0][新芽] (ワッチョイ 3d96-d+y+)
垢版 |
2026/06/20(土) 14:05:47.47ID:PAJWywKD0
その3

manifest.json 側は、初期アイコンを普通に置いておく。
-----------------------
{
"manifest_version": 3,
"name": "Example",
"version": "1.0.0",
"action": {
"default_icon": {
"16": "icons/icon-light-16.png",
"32": "icons/icon-light-32.png",
"48": "icons/icon-light-48.png",
"128": "icons/icon-light-128.png"
}
}
}
-----------------------
666567 警備員[Lv.0][新芽] (ワッチョイ 3d96-d+y+)
垢版 |
2026/06/20(土) 14:06:48.11ID:PAJWywKD0
その4

注意点は、MV3のbackground service workerでは window.matchMedia() が使えないこと。
matchMedia() はWindowのAPIなので、popup/options/通常の拡張ページなど
windowがある場所で判定するのが素直。

なので結論としては、
可能。ただし「manifestで完全自動」ではなく、prefers-color-scheme を見てchrome.action.setIcon()で差し替える。
なお、これはOS/Chromeのライト・ダーク設定に寄せる方法で、ユーザーが独自のChromeテーマを入れて
ツールバー背景色だけ変えている場合まで完全には判定できない。
Chrome自体はライト/ダーク/デバイス設定に追従する表示モードを持っている。
2026/06/22(月) 04:52:58.26ID:6lsjxqFNH
AIに聞いたのかな?
この中にもだめな理由がちらっと書かれてるけど、実際にやってみたら何がだめなのかわかるよ

拡張機能を起動させるためのボタンのアイコンだから、拡張機能を起動させてない状態でスクリプトが働かないといけないんだよね
668567 警備員[Lv.0][新芽] (ワッチョイ 5fa7-e/Io)
垢版 |
2026/06/23(火) 02:29:37.29ID:D0aLv24K0
>>667
>>拡張機能を起動させてない状態
あーー
>>manifestだけで
の部分ですか、なるほど…失礼しました。
レスを投稿する


ニューススポーツなんでも実況