voqabuhe
У меня на 48.0a1 (2016-03-27) переключаются. А вообще все? Из управления дополнениями можно переключить? А то ведь нынче устаревшие и заблокированные может не дать включить вообще.
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Infocatcher
Через управление дополнений включается и выключается. А через кнопку как оказалось только выключается.
Добавлено 31-03-2016 01:25:29
У меня на 48.0a1 (2016-03-27) переключаются
У меня 48.0a1 (2016-03-30)
Отредактировано voqabuhe (31-03-2016 01:25:29)
Отсутствует
Хм, наверное, дело в этом исправлении, которое пока попало только в разрабатываемую версию.
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Там заголовок старый, это видно по логам.
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
voqabuhe
Нужна именно разрабатываемая версия: Custom_Buttons/raw/master/Toggle_Restartless_Add-ons/toggleRestartlessAddons.js
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Блин, не показывает устаревшие расширения(
Эмм, показывает:
Вероятно, речь о расширениях, требующих перезапуска, но их не должно показывать в соответствии с названием кнопки.
Если все же хочется, то надо подправить:
function getRestartlessAddons(addonTypes, callback, context) { … AddonManager.getAddonsByTypes(addonTypes, function(addons) { var restartless = addons.filter(function(addon) { var ops = addon.operationsRequiringRestart; return !addon.appDisabled // закомментировать проверку && !(ops & AddonManager.OP_NEEDS_RESTART_ENABLE || ops & AddonManager.OP_NEEDS_RESTART_DISABLE) …
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Infocatcher
точно, у меня устаревшие как раз все с перезагрузкой, поэтому и не понял разницу
Дык надо пункт перезагрузки в конец вставить и тогда будет практически полный аналог Extension Options Menu, его даже с AMO удалили, видать как супер пупер устаревшее)
http://forums.mozillazine.org/viewtopic … &t=2141579
Отредактировано momo2000 (19-02-2018 08:31:45)
Отсутствует
Infocatcher или другой мастер
Если не трудно, подскажите куда добавить и сам код с кнопокй перезапуска браузера в самый конец.
Services.startup.quit(Services.startup.eAttemptQuit | Services.startup.eRestart);
иконка
data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAQAQAAAAAAAAAAAAAAAAAAAAAAAD///8A/Pz8A/v7+gX7+/oF+fn4B////wB7d3JQDgYA8A4GAPB7d3JQ////APv7+gX8/PsD//7/AP///wD///8A////AP///wD///8A/v7+Af///wDx8fAFIRoU2BEJAP8RCQD/IRoU2PLx8AX///8A/Pz8Af7+/gL///8A////AP///wCalpFfgHx1jYiEfoCUkYt26unnDh4YFdgLAwD/DAQA/xoUEN38/PwAfXl0Wnp2cF////8A/v7+A////wD///8Aw8G9LwwJBuoAAAD/Ew8P7/f4+AeIhIBHHBUK4hsUCOKOi4dH1NTSCQUBAOkAAAD/iYV/U////wD8/PwD////AMrKxxUaEwfhDwcA/yMcFOvy8fAQ////APDv7gjw7+4H////APf39wBlYFx/CQIA/w0FAOjBv70Z////AP///wBbV1V/AAAA/zIsI8E6NTC+5+foGf///wD+/v4C////Afz8/AP///8B8fHxADYxKq0AAAD/aGRidv///wD19fUANC0lxAAAAP+ppqJE5eTjD+3t7A////8A/v7+Af7+/gH///8A+/v6BP///wCjoZxGAgAA/ykkHMDv7+8A7u3uDSghGOcFAAD8wsG+Hv///wD8/PwB////AP///wD///8A////APz8/AH///8Aw8G+GwQAAPwqIhji7+7uCu7t7gwoIRjlBQAA+sPBvhn///8A/Pz8Av///wD///8A////AP///wD8/PwB////AMPBvhkFAAD6JyAY5u7t7gz19fUANC0lxAAAAP+koZxF////APr6+gT///8A////AP///wD///8A+vr6BP///wCkoZxFAAAA/zMtJcP19fUA////AF1YVn0AAAD/NjEprfHx8QD///8E+vr6BPz8/AH8/PwB+vr6BP///wTx8fEANjEprQAAAP9dWFZ8////AP///wDBv70bCwQA6wkBAP9lYFx69vb1AP///wH+/v4A/v7+AP///wH29vUAZWBcegkBAP8LBADrwb+9Gv///wD8/PwD////AHl1cFgAAAD/CQIA/zUuJq6ppqE/x8XCF8fFwheppqE/NS4mrgkCAP8AAAD/eHVwV////wD8/PwD////AP7+/gP///8Ae3dwVgoDAO8BAAD/AgAA/wQAAPoEAAD6AgAA/wEAAP8KAwDvendwVv///wD+/v4D////AP///wD///8A/fz8A////wDDwL8aYFpTfjQtIsYoIRbmKCEW5jQtIsZgWlN+w8C/Gv///wD9/PwD////AP///wD///8A////AP7+/wD8/PwD////Af///wDz8vIB7u3sC+7t7Avz8vIB////AP///wH8/PwD/v7/AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
И можно ли у плагинов сделать режим "Всегда включать" и "Никогда не включать", а не "Всегда включать" и "Включать по запросу"?
Отсутствует
Infocatcher
Переключение скрытых аддонов опять сломали.
Вот, так, вроде, работает
if(addon.hidden) { _log("Let's try set addon.userDisabled using raw hack"); let g = Components.utils.import("resource://gre/modules/addons/XPIProvider.jsm", {}); if("XPIDatabase" in g && "updateAddonDisabledState" in g.XPIDatabase) { // Firefox 61+ let rawAddon = g.XPIDatabase.syncGetAddon(function(rawAddon) { return rawAddon.id == addon.id }); g.XPIDatabase.updateAddonDisabledState(rawAddon, newDis); } else { // See "set userDisabled(val)" if("eval" in g) {
Отсутствует
Переключение скрытых аддонов опять сломали.
Вот, так, вроде, работает
Совсем заработался, сообщение видел, даже запомнил, что было второе исправление... вспомнил только когда попытался применить кнопку.
Спасибо!
https://github.com/Infocatcher/Custom_B … 2a1031b9f8
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Infocatcher
Опять сломали. Может так
function setNewDisabled(addon) { var newDis = getNewDisabled(addon); var oldDis = addon.userDisabled; try { if(addon.hidden && !addon.__lookupSetter__("userDisabled")) // Firefox 62+ throw 0; addon.userDisabled = newDis; } catch(e) { // Error: Cannot disable hidden add-on firefox@getpocket.com
Отсутствует
Опять сломали. Может так
О! А я уже успел вот так поразвлекаться:
https://github.com/Infocatcher/Custom_B … 3a2653135b
https://github.com/Infocatcher/Custom_B … 38f88466fa
Проверка на addon.type, наверное, лишняя, но пока, вроде, работает, а дальше, глядишь, еще чего поломают.
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
А вот и источник проблемы:
https://bugzilla.mozilla.org/show_bug.cgi?id=1461146
Make enable/disable/uninstall operations on AddonWrappers asynchronous
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Infocatcher
Спасибо, забрал.
Надо будет в addons4.js в CustombuttonsButton.prototype
добавить методы enable и disable.
Надеюсь просто пустых функций (без возвращения promise)
будет достаточно.
Наблюдение: если кнопка расположена на панели вкладок,
то, svg'шки в меню не слишком хорошо видны.
Win7, Nightly, чистый профиль, дефолтная тема, скриншот.
Отсутствует
Наблюдение: если кнопка расположена на панели вкладок,
то, svg'шки в меню не слишком хорошо видны.
Win7, Nightly, чистый профиль, дефолтная тема, скриншот.
Не придумалось, как сбросить цвет... перекрасил:
https://github.com/Infocatcher/Custom_B … 5ab04fdd31
+ https://github.com/Infocatcher/Custom_B … 5c85a25c2f
Отредактировано Infocatcher (31-05-2018 20:56:58)
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Infocatcher
И снова! Может так
//let rawAddon = g.XPIDatabase.syncGetAddon(function(rawAddon) { let rawAddon = Array.from(g.XPIDatabase.addonDB.values()).find(function(rawAddon) {
Отсутствует
Dumby
Спасибо!
Покопался... нашел, что сами они применяют вот такое:
resource://gre/modules/addons/XPIProvider.jsm
getDependentAddons(aAddon) { return Array.from(XPIDatabase.getAddons()) .filter(addon => addon.dependencies.includes(aAddon.id)); },
resource://gre/modules/addons/XPIDatabase.jsm
/** * Synchronously gets all add-ons in the database. * This is only called from the preference observer for the default * compatibility version preference, so we can return an empty list if * we haven't loaded the database yet. * * @returns {Array<AddonInternal>} */ getAddons() { if (!this.addonDB) { return []; } return _filterDB(this.addonDB, aAddon => true); },
var g = Components.utils.import("resource://gre/modules/addons/XPIProvider.jsm", {}); Array.isArray(g.XPIDatabase.getAddons()); // true
И к чему тогда Array.from()? о_О Шаловливые клоуны… ©
Подправил: https://github.com/Infocatcher/Custom_B … 8533bb0ebd
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Всё работает, но с 68 показывает ещё и поисковые плагины, даже при addonTypes: ["extension"]
Это к разработчикам Firefox, к сожалению: у встроенных поисковых плагинов теперь type = "extension":
https://bugzilla.mozilla.org/show_bug.cgi?id=1486820 [meta] Convert builtin opensearch files to webextensions
Можно спрятать вместе со всеми расширениями-невидимками:
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Распорка для скрытия поисковых плагинов: https://github.com/Infocatcher/Custom_B … 941d074ed6
Но не уверен, начиная с какой версии заработает.
Отредактировано Infocatcher (17-09-2019 21:28:05)
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует