Bug 1350646: Part 20 - Remove remaining SDK content modules. r=Mossop
authorKris Maglione <maglione.k@gmail.com>
Sat, 05 Aug 2017 22:50:30 -0700
changeset 373719 b0592041a69e22e41fa7b770b375a5b37ccbc24e
parent 373718 d5030e86a3ff1b46639b74d9f6c7bac5895ce23e
child 373720 938235be307c07c84080e36bbfcd8148e417d778
push id93584
push usermaglione.k@gmail.com
push dateThu, 10 Aug 2017 03:41:19 +0000
treeherdermozilla-inbound@24d5dbf3a9dc [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersMossop
bugs1350646
milestone57.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1350646: Part 20 - Remove remaining SDK content modules. r=Mossop MozReview-Commit-ID: EJXQo7yj2NJ
addon-sdk/moz.build
addon-sdk/source/lib/sdk/content/loader.js
addon-sdk/source/lib/sdk/content/thumbnail.js
--- a/addon-sdk/moz.build
+++ b/addon-sdk/moz.build
@@ -28,18 +28,16 @@ modules = [
     'mozilla-toolkit-versioning/lib/utils.js',
     'node/os.js',
     'sdk/addon/installer.js',
     'sdk/addon/window.js',
     'sdk/base64.js',
     'sdk/clipboard.js',
     'sdk/console/plain-text.js',
     'sdk/console/traceback.js',
-    'sdk/content/loader.js',
-    'sdk/content/thumbnail.js',
     'sdk/core/disposable.js',
     'sdk/core/heritage.js',
     'sdk/core/namespace.js',
     'sdk/core/observer.js',
     'sdk/core/promise.js',
     'sdk/core/reference.js',
     'sdk/deprecated/api-utils.js',
     'sdk/deprecated/unit-test-finder.js',
deleted file mode 100644
--- a/addon-sdk/source/lib/sdk/content/loader.js
+++ /dev/null
@@ -1,74 +0,0 @@
-/* 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/. */
-"use strict";
-
-module.metadata = {
-  "stability": "unstable"
-};
-
-const { isValidURI, isLocalURL, URL } = require('../url');
-const { contract } = require('../util/contract');
-const { isString, isNil, instanceOf, isJSONable } = require('../lang/type');
-const { validateOptions,
-  string, array, object, either, required } = require('../deprecated/api-utils');
-
-const isValidScriptFile = (value) =>
-  (isString(value) || instanceOf(value, URL)) && isLocalURL(value);
-
-// map of property validations
-const valid = {
-  contentURL: {
-    is: either(string, object),
-    ok: url => isNil(url) || isLocalURL(url) || isValidURI(url),
-    msg: 'The `contentURL` option must be a valid URL.'
-  },
-  contentScriptFile: {
-    is: either(string, object, array),
-    ok: value => isNil(value) || [].concat(value).every(isValidScriptFile),
-    msg: 'The `contentScriptFile` option must be a local URL or an array of URLs.'
-  },
-  contentScript: {
-    is: either(string, array),
-    ok: value => isNil(value) || [].concat(value).every(isString),
-    msg: 'The `contentScript` option must be a string or an array of strings.'
-  },
-  contentScriptWhen: {
-    is: required(string),
-    map: value => value || 'end',
-    ok: value => ~['start', 'ready', 'end'].indexOf(value),
-    msg: 'The `contentScriptWhen` option must be either "start", "ready" or "end".'
-  },
-  contentScriptOptions: {
-    ok: value => isNil(value) || isJSONable(value),
-    msg: 'The contentScriptOptions should be a jsonable value.'
-  }
-};
-exports.validationAttributes = valid;
-
-/**
- * Shortcut function to validate property with validation.
- * @param {Object|Number|String} suspect
- *    value to validate
- * @param {Object} validation
- *    validation rule passed to `api-utils`
- */
-function validate(suspect, validation) {
-  return validateOptions(
-    { $: suspect },
-    { $: validation }
-  ).$;
-}
-
-function Allow(script) {
-  return {
-    get script() {
-      return script;
-    },
-    set script(value) {
-      script = !!value;
-    }
-  };
-}
-
-exports.contract = contract(valid);
deleted file mode 100644
--- a/addon-sdk/source/lib/sdk/content/thumbnail.js
+++ /dev/null
@@ -1,51 +0,0 @@
-/* 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/. */
-'use strict';
-
-module.metadata = {
-  'stability': 'unstable'
-};
-
-const { Cc, Ci, Cu } = require('chrome');
-const AppShellService = Cc['@mozilla.org/appshell/appShellService;1'].
-                        getService(Ci.nsIAppShellService);
-
-const NS = 'http://www.w3.org/1999/xhtml';
-const COLOR = 'rgb(255,255,255)';
-
-/**
- * Creates canvas element with a thumbnail of the passed window.
- * @param {Window} window
- * @returns {Element}
- */
-function getThumbnailCanvasForWindow(window) {
-  let aspectRatio = 0.5625; // 16:9
-  let thumbnail = AppShellService.hiddenDOMWindow.document
-                    .createElementNS(NS, 'canvas');
-  thumbnail.mozOpaque = true;
-  thumbnail.width = Math.ceil(window.screen.availWidth / 5.75);
-  thumbnail.height = Math.round(thumbnail.width * aspectRatio);
-  let ctx = thumbnail.getContext('2d');
-  let snippetWidth = window.innerWidth * .6;
-  let scale = thumbnail.width / snippetWidth;
-  ctx.scale(scale, scale);
-  ctx.drawWindow(window, window.scrollX, window.scrollY, snippetWidth,
-                snippetWidth * aspectRatio, COLOR);
-  return thumbnail;
-}
-exports.getThumbnailCanvasForWindow = getThumbnailCanvasForWindow;
-
-/**
- * Creates Base64 encoded data URI of the thumbnail for the passed window.
- * @param {Window} window
- * @returns {String}
- */
-exports.getThumbnailURIForWindow = function getThumbnailURIForWindow(window) {
-  return getThumbnailCanvasForWindow(window).toDataURL()
-};
-
-// default 80x45 blank when not available
-exports.BLANK = 'data:image/png;base64,' +
-  'iVBORw0KGgoAAAANSUhEUgAAAFAAAAAtCAYAAAA5reyyAAAAJElEQVRoge3BAQ'+
-  'EAAACCIP+vbkhAAQAAAAAAAAAAAAAAAADXBjhtAAGQ0AF/AAAAAElFTkSuQmCC';