Add-ons Manager - Scriptish Screenshot

[Scriptish only] Show screenshot on Scriptish user script page in Add-ons Manager.

От 10.03.2014. Виж последната версия.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey, Greasemonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Userscripts.

За да инсталирате скрипта, трябва да инсталирате разширение като Tampermonkey.

За да инсталирате този скрипт, трябва да имате инсталиран скриптов мениджър.

(Вече имам скриптов мениджър, искам да го инсталирам!)

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

(Вече имам инсталиран мениджър на стиловете, искам да го инсталирам!)

// ==UserScript==
// @id              addons-manager-scriptish-screenshot@loucypher
// @name            Add-ons Manager - Scriptish Screenshot
// @namespace       https://github.com/LouCypher/userscripts
// @description     [Scriptish only] Show screenshot on Scriptish user script page in Add-ons Manager.
// @version         1.0
// @author          LouCypher
// @license         MPL 2.0
// @icon            https://addons.cdn.mozilla.net/media/img/addon-icons/default-32.png
// @icon64URL       https://addons.cdn.mozilla.net/media/img/addon-icons/default-64.png
// @contributionURL http://loucypher.github.io/userscripts/donate.html?Add-ons+Manager+-+Scriptish+Screenshot
// @homepageURL     https://greasyfork.org/scripts/183
// @supportURL      https://greasyfork.org/scripts/183/feedback
// @screenshot      https://raw.github.com/LouCypher/userscripts/master/scriptish/addons-manager-scriptish-screenshot/screenshot.png
// @resource        CHANGELOG https://raw.github.com/LouCypher/userscripts/master/scriptish/addons-manager-scriptish-screenshot/CHANGELOG.txt
// @resource        LICENSE https://raw.github.com/LouCypher/userscripts/master/licenses/MPL/LICENSE.txt
// @run-at          document-start
// @include         about:addons
// @include         chrome://mozapps/content/extensions/extensions.xul
// ==/UserScript==
/*  This Source Code Form is subject to the terms of the Mozilla Public
 *  License, v. 2.0. If a copy of the MPL was not distributed with this
 *  file, You can obtain one at http://mozilla.org/MPL/2.0/. */



function getXPCOMInterface(aClass, aInterface) {
  return Components.classes["@mozilla.org/" + aClass].
         getService(Components.interfaces[aInterface]);
}

const iOService = getXPCOMInterface("network/io-service;1", "nsIIOService");
const styleSheetService= getXPCOMInterface("content/style-sheet-service;1",
                                           "nsIStyleSheetService");

let css = "/* Add-ons Manager Scriptish Screenshot\n\
   by LouCypher */\n\n\
@namespace url(http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul);\
\n@-moz-document url(about:addons),\
\n               url(chrome://mozapps/content/extensions/extensions.xul){\
\n  #detail-view[type=userscript] #detail-screenshot[width=null][height=null]{\
\n    min-width: 200px;\n    min-height: 150px;\n  }\n}\n";

let uri = iOService.newURI("data:text/css," + encodeURIComponent(css), null, null);
styleSheetService.loadAndRegisterSheet(uri, styleSheetService.AGENT_SHEET);

window.addEventListener("unload", function() {
  styleSheetService.unregisterSheet(uri, styleSheetService.AGENT_SHEET);
});