Firefox: Узнать внутренний уникальный ID расширения

У расширения для Firefox есть его идентификатор: Extension ID — это имя, которое ему присвоил его разработчик. Иногда оно совпадает с адресом электронной почты, например для LastPass оно такое: support@lastpass.com, или для FoxyProxy: foxyproxy@eric.h.jung, а иногда это просто уникальный идентификатор, например такой: {ecdeca5f-93eb-4757-8cad-9c4ab7568649}.

В Firefox я настраивал внешний вид браузера через userChrome.css, отталкиваясь от того, что основная тема моего Firefox светлого цвета. Но расширение Offline QR Code Generator автоматически выбирает цвет значка, исходя из акцента текущей темы — если она тёмная, то значок будет белого цвета, если же она светлая, то он будет черного цвета (это просто файл в формате .SVG). Поскольку я использую основную тему СВЕТЛУЮ, то мне подсовывается значок чёрного цвета, но мне это не нужно.
Firefox: Узнать внутренний уникальный ID расширения
Чтобы мне достать нужный значок и поменять его, пришлось открывать панель разработчика, искать нужную кнопку и установленный для неё значок, копировать путь и т.д. Сразу скажу, что я не нашёл для данного случая лёгкого решения. Хотя получилось немного упростить задачу…
Код для файла userChrome.css был такой:

#offline-qr-code_rugk_github_io-browser-action[class^="toolbarbutton-1"] {
  --webextension-toolbar-image-2x: url("moz-extension://2009086f-9486-4e20-8c9e-69568c71c033/icons/icon-small-light.svg") !important;
}

Но после создания нового профиля ID был сгенерирован новый, узнать его можно было как и раньше, через «Инструменты разработчика», либо на странице отладки:

about:debugging#/runtime/this-firefox

Firefox: Узнать внутренний уникальный ID расширения

В итоге окончательный код будет таким:


/* Set Offline QR-code generator icon to white for LIGHT (default) theme */
/* Extension folder name (Internal UUID) is GENERATED!
   Check for the Internal UUID:
   about:debugging#/runtime/this-firefox
*/
#offline-qr-code_rugk_github_io-browser-action[class^="toolbarbutton-1"] {
  --webextension-toolbar-image-2x: url("moz-extension://d90841a4-7a8d-4f84-a019-da6b109f4f4c/icons/icon-small-light.svg") !important;
}

Теперь значок «Offline QR-code generator» белого цвета:
Firefox: Узнать внутренний уникальный ID расширения

Позже я всё же использовал более простой способ сменить цвет значка с чёрного на белый — с помощью фильтра:

.toolbarbutton-icon[label="Offline QR code"]
{
  filter: invert(100);
}

В данном случае нам не требуется узнавать полный путь до значка (иконки)!



Подписаться
Уведомление о
guest
0 Комментарий
Inline Feedbacks
View all comments