Bug 811548 - Move PageThumbs.jsm from /browser to /toolkit
authorMatt Brubeck <mbrubeck@mozilla.com>
Sat, 16 Feb 2013 20:15:41 -0800
changeset 122160 89c0a82b70e76a91eb369ceccc009372bee15266
parent 122159 87478d6bb849ca2157b9942dd8d2a95595d3d62d
child 122161 0e3aca33a0391df2fc6354b6ced74817bb722a74
push id24320
push userryanvm@gmail.com
push dateSun, 17 Feb 2013 12:06:45 +0000
treeherdermozilla-central@5e137a87e84f [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
bugs811548
milestone21.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 811548 - Move PageThumbs.jsm from /browser to /toolkit
browser/base/content/browser.js
browser/base/content/newtab/newTab.js
browser/components/Makefile.in
browser/components/nsBrowserGlue.js
browser/components/tabview/tabview.js
browser/components/thumbnails/BrowserPageThumbs.manifest
browser/components/thumbnails/Makefile.in
browser/components/thumbnails/PageThumbs.jsm
browser/components/thumbnails/PageThumbsProtocol.js
browser/components/thumbnails/PageThumbsWorker.js
browser/components/thumbnails/test/Makefile.in
browser/components/thumbnails/test/background_red.html
browser/components/thumbnails/test/background_red_redirect.sjs
browser/components/thumbnails/test/browser_thumbnails_bug726727.js
browser/components/thumbnails/test/browser_thumbnails_capture.js
browser/components/thumbnails/test/browser_thumbnails_expiration.js
browser/components/thumbnails/test/browser_thumbnails_privacy.js
browser/components/thumbnails/test/browser_thumbnails_redirect.js
browser/components/thumbnails/test/browser_thumbnails_storage.js
browser/components/thumbnails/test/browser_thumbnails_storage_migrate3.js
browser/components/thumbnails/test/head.js
browser/components/thumbnails/test/privacy_cache_control.sjs
browser/installer/package-manifest.in
browser/makefiles.sh
browser/modules/NewTabUtils.jsm
toolkit/components/Makefile.in
toolkit/components/thumbnails/BrowserPageThumbs.manifest
toolkit/components/thumbnails/Makefile.in
toolkit/components/thumbnails/PageThumbs.jsm
toolkit/components/thumbnails/PageThumbsProtocol.js
toolkit/components/thumbnails/PageThumbsWorker.js
toolkit/components/thumbnails/test/Makefile.in
toolkit/components/thumbnails/test/background_red.html
toolkit/components/thumbnails/test/background_red_redirect.sjs
toolkit/components/thumbnails/test/browser_thumbnails_bug726727.js
toolkit/components/thumbnails/test/browser_thumbnails_capture.js
toolkit/components/thumbnails/test/browser_thumbnails_expiration.js
toolkit/components/thumbnails/test/browser_thumbnails_privacy.js
toolkit/components/thumbnails/test/browser_thumbnails_redirect.js
toolkit/components/thumbnails/test/browser_thumbnails_storage.js
toolkit/components/thumbnails/test/browser_thumbnails_storage_migrate3.js
toolkit/components/thumbnails/test/head.js
toolkit/components/thumbnails/test/privacy_cache_control.sjs
toolkit/toolkit-makefiles.sh
--- a/browser/base/content/browser.js
+++ b/browser/base/content/browser.js
@@ -118,17 +118,17 @@ XPCOMUtils.defineLazyGetter(this, "Debug
   Cu.import("resource:///modules/devtools/DebuggerUI.jsm", tmp);
   return new tmp.DebuggerUI(window);
 });
 
 XPCOMUtils.defineLazyModuleGetter(this, "Social",
   "resource:///modules/Social.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "PageThumbs",
-  "resource:///modules/PageThumbs.jsm");
+  "resource://gre/modules/PageThumbs.jsm");
 
 #ifdef MOZ_SAFE_BROWSING
 XPCOMUtils.defineLazyModuleGetter(this, "SafeBrowsing",
   "resource://gre/modules/SafeBrowsing.jsm");
 #endif
 
 XPCOMUtils.defineLazyModuleGetter(this, "gBrowserNewTabPreloader",
   "resource:///modules/BrowserNewTabPreloader.jsm", "BrowserNewTabPreloader");
--- a/browser/base/content/newtab/newTab.js
+++ b/browser/base/content/newtab/newTab.js
@@ -4,17 +4,17 @@
 
 "use strict";
 
 let Cu = Components.utils;
 let Ci = Components.interfaces;
 
 Cu.import("resource://gre/modules/XPCOMUtils.jsm");
 Cu.import("resource://gre/modules/Services.jsm");
-Cu.import("resource:///modules/PageThumbs.jsm");
+Cu.import("resource://gre/modules/PageThumbs.jsm");
 Cu.import("resource:///modules/NewTabUtils.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "Rect",
   "resource://gre/modules/Geometry.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "PrivateBrowsingUtils",
   "resource://gre/modules/PrivateBrowsingUtils.jsm");
 
 let {
--- a/browser/components/Makefile.in
+++ b/browser/components/Makefile.in
@@ -37,17 +37,16 @@ PARALLEL_DIRS = \
   places \
   preferences \
   privatebrowsing \
   search \
   sessionstore \
   shell \
   sidebar \
   tabview \
-  thumbnails \
   migration \
   $(NULL)
 
 ifdef MOZ_SAFE_BROWSING
 PARALLEL_DIRS += safebrowsing
 endif
 
 TEST_DIRS += test
--- a/browser/components/nsBrowserGlue.js
+++ b/browser/components/nsBrowserGlue.js
@@ -31,17 +31,17 @@ XPCOMUtils.defineLazyModuleGetter(this, 
 
 XPCOMUtils.defineLazyModuleGetter(this, "BookmarkHTMLUtils",
                                   "resource://gre/modules/BookmarkHTMLUtils.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "webappsUI",
                                   "resource:///modules/webappsUI.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "PageThumbs",
-                                  "resource:///modules/PageThumbs.jsm");
+                                  "resource://gre/modules/PageThumbs.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "NewTabUtils",
                                   "resource:///modules/NewTabUtils.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "BrowserNewTabPreloader",
                                   "resource:///modules/BrowserNewTabPreloader.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "PdfJs",
--- a/browser/components/tabview/tabview.js
+++ b/browser/components/tabview/tabview.js
@@ -25,17 +25,17 @@ XPCOMUtils.defineLazyGetter(this, "tabbr
 function tabviewString(name) tabviewBundle.GetStringFromName('tabview.' + name);
 function tabbrowserString(name) tabbrowserBundle.GetStringFromName(name);
 
 XPCOMUtils.defineLazyGetter(this, "gPrefBranch", function() {
   return Services.prefs.getBranch("browser.panorama.");
 });
 
 XPCOMUtils.defineLazyModuleGetter(this, "gPageThumbnails",
-  "resource:///modules/PageThumbs.jsm", "PageThumbs");
+  "resource://gre/modules/PageThumbs.jsm", "PageThumbs");
 
 var gWindow = window.parent;
 var gBrowser = gWindow.gBrowser;
 var gTabView = gWindow.TabView;
 var gTabViewDeck = gWindow.document.getElementById("tab-view-deck");
 var gBrowserPanel = gWindow.document.getElementById("browser-panel");
 var gTabViewFrame = gWindow.document.getElementById("tab-view");
 
--- a/browser/installer/package-manifest.in
+++ b/browser/installer/package-manifest.in
@@ -343,17 +343,17 @@
 @BINPATH@/browser/components/nsBrowserContentHandler.js
 @BINPATH@/browser/components/nsBrowserGlue.js
 @BINPATH@/browser/components/nsSetDefaultBrowser.manifest
 @BINPATH@/browser/components/nsSetDefaultBrowser.js
 @BINPATH@/browser/components/BrowserDownloads.manifest
 @BINPATH@/browser/components/DownloadsStartup.js
 @BINPATH@/browser/components/DownloadsUI.js
 @BINPATH@/browser/components/BrowserPlaces.manifest
-@BINPATH@/browser/components/BrowserPageThumbs.manifest
+@BINPATH@/components/BrowserPageThumbs.manifest
 @BINPATH@/browser/components/nsPrivateBrowsingServiceObsolete.manifest
 @BINPATH@/browser/components/nsPrivateBrowsingServiceObsolete.js
 @BINPATH@/components/SiteSpecificUserAgent.js
 @BINPATH@/components/SiteSpecificUserAgent.manifest
 @BINPATH@/components/toolkitsearch.manifest
 @BINPATH@/components/nsSearchService.js
 @BINPATH@/components/nsSearchSuggestions.js
 @BINPATH@/components/passwordmgr.manifest
@@ -408,17 +408,17 @@
 @BINPATH@/components/nsLivemarkService.js
 @BINPATH@/components/nsTaggingService.js
 @BINPATH@/components/nsPlacesAutoComplete.manifest
 @BINPATH@/components/nsPlacesAutoComplete.js
 @BINPATH@/components/nsPlacesExpiration.js
 @BINPATH@/browser/components/PlacesProtocolHandler.js
 @BINPATH@/components/PlacesCategoriesStarter.js
 @BINPATH@/components/ColorAnalyzer.js
-@BINPATH@/browser/components/PageThumbsProtocol.js
+@BINPATH@/components/PageThumbsProtocol.js
 @BINPATH@/components/nsDefaultCLH.manifest
 @BINPATH@/components/nsDefaultCLH.js
 @BINPATH@/components/nsContentPrefService.manifest
 @BINPATH@/components/nsContentPrefService.js
 @BINPATH@/components/nsContentDispatchChooser.manifest
 @BINPATH@/components/nsContentDispatchChooser.js
 @BINPATH@/components/nsHandlerService.manifest
 @BINPATH@/components/nsHandlerService.js
--- a/browser/makefiles.sh
+++ b/browser/makefiles.sh
@@ -31,17 +31,16 @@ browser/components/privatebrowsing/src/M
 browser/components/search/Makefile
 browser/components/sessionstore/Makefile
 browser/components/sessionstore/src/Makefile
 browser/components/sidebar/Makefile
 browser/components/shell/Makefile
 browser/components/shell/public/Makefile
 browser/components/shell/src/Makefile
 browser/components/tabview/Makefile
-browser/components/thumbnails/Makefile
 browser/devtools/Makefile
 browser/devtools/debugger/Makefile
 browser/devtools/inspector/Makefile
 browser/devtools/scratchpad/Makefile
 browser/devtools/shared/Makefile
 browser/devtools/sourceeditor/Makefile
 browser/devtools/styleeditor/Makefile
 browser/devtools/styleinspector/Makefile
@@ -113,17 +112,16 @@ if [ "$ENABLE_TESTS" ]; then
     browser/components/migration/tests/Makefile
     browser/components/places/tests/Makefile
     browser/components/places/tests/chrome/Makefile
     browser/components/places/tests/browser/Makefile
     browser/components/privatebrowsing/test/Makefile
     browser/components/privatebrowsing/test/browser/Makefile
     browser/components/tabview/test/Makefile
     browser/components/test/Makefile
-    browser/components/thumbnails/test/Makefile
     browser/devtools/debugger/test/Makefile
     browser/devtools/inspector/test/Makefile
     browser/devtools/scratchpad/test/Makefile
     browser/devtools/shared/test/Makefile
     browser/devtools/sourceeditor/test/Makefile
     browser/devtools/styleeditor/test/Makefile
     browser/devtools/styleinspector/test/Makefile
     browser/devtools/tilt/test/Makefile
--- a/browser/modules/NewTabUtils.jsm
+++ b/browser/modules/NewTabUtils.jsm
@@ -12,17 +12,17 @@ const Cu = Components.utils;
 
 Cu.import("resource://gre/modules/Services.jsm");
 Cu.import("resource://gre/modules/XPCOMUtils.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "PlacesUtils",
   "resource://gre/modules/PlacesUtils.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "PageThumbs",
-  "resource:///modules/PageThumbs.jsm");
+  "resource://gre/modules/PageThumbs.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "FileUtils",
   "resource://gre/modules/FileUtils.jsm");
 
 XPCOMUtils.defineLazyGetter(this, "gPrincipal", function () {
   let uri = Services.io.newURI("about:newtab", null, null);
   return Services.scriptSecurityManager.getNoAppCodebasePrincipal(uri);
 });
--- a/toolkit/components/Makefile.in
+++ b/toolkit/components/Makefile.in
@@ -37,16 +37,17 @@ PARALLEL_DIRS += \
   places \
   prompts \
   protobuf \
   reflect \
   social \
   startup \
   statusfilter \
   telemetry \
+  thumbnails \
   typeaheadfind \
   urlformatter \
   viewconfig \
   viewsource \
   $(NULL)
 
 ifdef BUILD_CTYPES
 PARALLEL_DIRS += \
rename from browser/components/thumbnails/BrowserPageThumbs.manifest
rename to toolkit/components/thumbnails/BrowserPageThumbs.manifest
rename from browser/components/thumbnails/Makefile.in
rename to toolkit/components/thumbnails/Makefile.in
--- a/browser/components/thumbnails/Makefile.in
+++ b/toolkit/components/thumbnails/Makefile.in
@@ -17,10 +17,8 @@ EXTRA_COMPONENTS = \
 EXTRA_JS_MODULES = \
 	PageThumbsWorker.js \
 	PageThumbs.jsm \
 	$(NULL)
 
 TEST_DIRS += test
 
 include $(topsrcdir)/config/rules.mk
-
-XPIDL_FLAGS += -I$(topsrcdir)/browser/components/
rename from browser/components/thumbnails/PageThumbs.jsm
rename to toolkit/components/thumbnails/PageThumbs.jsm
--- a/browser/components/thumbnails/PageThumbs.jsm
+++ b/toolkit/components/thumbnails/PageThumbs.jsm
@@ -200,20 +200,38 @@ this.PageThumbs = {
         if (aCallback)
           aCallback(aSuccessful);
       }
 
       PageThumbsStorage.write(url, aInputStream, finish);
     });
   },
 
+  /**
+   * Register an expiration filter.
+   *
+   * When thumbnails are going to expire, each registered filter is asked for a
+   * list of thumbnails to keep.
+   *
+   * The filter (if it is a callable) or its filterForThumbnailExpiration method
+   * (if the filter is an object) is called with a single argument.  The
+   * argument is a callback function.  The filter must call the callback
+   * function and pass it an array of zero or more URLs.  (It may do so
+   * asynchronously.)  Thumbnails for those URLs will be except from expiration.
+   *
+   * @param aFilter callable, or object with filterForThumbnailExpiration method
+   */
   addExpirationFilter: function PageThumbs_addExpirationFilter(aFilter) {
     PageThumbsExpiration.addFilter(aFilter);
   },
 
+  /**
+   * Unregister an expiration filter.
+   * @param aFilter A filter that was previously passed to addExpirationFilter.
+   */
   removeExpirationFilter: function PageThumbs_removeExpirationFilter(aFilter) {
     PageThumbsExpiration.removeFilter(aFilter);
   },
 
   /**
    * Determines the crop size for a given content window.
    * @param aWindow The content window.
    * @param aCanvas The target canvas.
@@ -470,17 +488,17 @@ let PageThumbsWorker = {
   _callbacks: [],
 
   /**
    * Get the worker, spawning it if necessary.
    * Code of the worker is in companion file PageThumbsWorker.js
    */
   get _worker() {
     delete this._worker;
-    this._worker = new ChromeWorker("resource:///modules/PageThumbsWorker.js");
+    this._worker = new ChromeWorker("resource://gre/modules/PageThumbsWorker.js");
     this._worker.addEventListener("message", this);
     return this._worker;
   },
 
   /**
    * Post a message to the dedicated thread, registering a callback
    * to be executed once the reply has been received.
    *
rename from browser/components/thumbnails/PageThumbsProtocol.js
rename to toolkit/components/thumbnails/PageThumbsProtocol.js
--- a/browser/components/thumbnails/PageThumbsProtocol.js
+++ b/toolkit/components/thumbnails/PageThumbsProtocol.js
@@ -17,17 +17,17 @@
 
 "use strict";
 
 const Cu = Components.utils;
 const Cc = Components.classes;
 const Cr = Components.results;
 const Ci = Components.interfaces;
 
-Cu.import("resource:///modules/PageThumbs.jsm");
+Cu.import("resource://gre/modules/PageThumbs.jsm");
 Cu.import("resource://gre/modules/XPCOMUtils.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "Services",
   "resource://gre/modules/Services.jsm");
 
 /**
  * Implements the thumbnail protocol handler responsible for moz-page-thumb: URIs.
  */
rename from browser/components/thumbnails/PageThumbsWorker.js
rename to toolkit/components/thumbnails/PageThumbsWorker.js
rename from browser/components/thumbnails/test/Makefile.in
rename to toolkit/components/thumbnails/test/Makefile.in
rename from browser/components/thumbnails/test/background_red.html
rename to toolkit/components/thumbnails/test/background_red.html
rename from browser/components/thumbnails/test/background_red_redirect.sjs
rename to toolkit/components/thumbnails/test/background_red_redirect.sjs
--- a/browser/components/thumbnails/test/background_red_redirect.sjs
+++ b/toolkit/components/thumbnails/test/background_red_redirect.sjs
@@ -1,10 +1,10 @@
 /* Any copyright is dedicated to the Public Domain.
    http://creativecommons.org/publicdomain/zero/1.0/ */
 
 function handleRequest(aRequest, aResponse) {
  // Set HTTP Status.
  aResponse.setStatusLine(aRequest.httpVersion, 301, "Moved Permanently");
 
  // Set redirect URI.
- aResponse.setHeader("Location", "http://mochi.test:8888/browser/browser/components/thumbnails/test/background_red.html");
+ aResponse.setHeader("Location", "http://mochi.test:8888/browser/toolkit/components/thumbnails/test/background_red.html");
 }
rename from browser/components/thumbnails/test/browser_thumbnails_bug726727.js
rename to toolkit/components/thumbnails/test/browser_thumbnails_bug726727.js
rename from browser/components/thumbnails/test/browser_thumbnails_capture.js
rename to toolkit/components/thumbnails/test/browser_thumbnails_capture.js
rename from browser/components/thumbnails/test/browser_thumbnails_expiration.js
rename to toolkit/components/thumbnails/test/browser_thumbnails_expiration.js
--- a/browser/components/thumbnails/test/browser_thumbnails_expiration.js
+++ b/toolkit/components/thumbnails/test/browser_thumbnails_expiration.js
@@ -7,17 +7,17 @@ const URL2 = URL + "#2";
 const URL3 = URL + "#3";
 
 XPCOMUtils.defineLazyModuleGetter(this, "FileUtils",
   "resource://gre/modules/FileUtils.jsm");
 
 let tmp = {};
 Cc["@mozilla.org/moz/jssubscript-loader;1"]
   .getService(Ci.mozIJSSubScriptLoader)
-  .loadSubScript("resource:///modules/PageThumbs.jsm", tmp);
+  .loadSubScript("resource://gre/modules/PageThumbs.jsm", tmp);
 
 const {EXPIRATION_MIN_CHUNK_SIZE, PageThumbsExpiration} = tmp;
 
 function runTests() {
   // Create three thumbnails.
   createDummyThumbnail(URL1);
   ok(thumbnailExists(URL1), "first thumbnail created");
 
rename from browser/components/thumbnails/test/browser_thumbnails_privacy.js
rename to toolkit/components/thumbnails/test/browser_thumbnails_privacy.js
--- a/browser/components/thumbnails/test/browser_thumbnails_privacy.js
+++ b/toolkit/components/thumbnails/test/browser_thumbnails_privacy.js
@@ -1,13 +1,13 @@
 /* Any copyright is dedicated to the Public Domain.
    http://creativecommons.org/publicdomain/zero/1.0/ */
 
 const PREF_DISK_CACHE_SSL = "browser.cache.disk_cache_ssl";
-const URL = "://example.com/browser/browser/components/thumbnails/" +
+const URL = "://example.com/browser/toolkit/components/thumbnails/" +
             "test/privacy_cache_control.sjs";
 
 function runTests() {
   registerCleanupFunction(function () {
     Services.prefs.clearUserPref(PREF_DISK_CACHE_SSL);
   });
 
   let positive = [
rename from browser/components/thumbnails/test/browser_thumbnails_redirect.js
rename to toolkit/components/thumbnails/test/browser_thumbnails_redirect.js
--- a/browser/components/thumbnails/test/browser_thumbnails_redirect.js
+++ b/toolkit/components/thumbnails/test/browser_thumbnails_redirect.js
@@ -1,12 +1,12 @@
 /* Any copyright is dedicated to the Public Domain.
    http://creativecommons.org/publicdomain/zero/1.0/ */
 
-const URL = "http://mochi.test:8888/browser/browser/components/thumbnails/" +
+const URL = "http://mochi.test:8888/browser/toolkit/components/thumbnails/" +
             "test/background_red_redirect.sjs";
 
 /**
  * These tests ensure that we save and provide thumbnails for redirecting sites.
  */
 function runTests() {
   // Kick off history by loading a tab first or the test fails in single mode.
   yield addTab(URL);
rename from browser/components/thumbnails/test/browser_thumbnails_storage.js
rename to toolkit/components/thumbnails/test/browser_thumbnails_storage.js
rename from browser/components/thumbnails/test/browser_thumbnails_storage_migrate3.js
rename to toolkit/components/thumbnails/test/browser_thumbnails_storage_migrate3.js
--- a/browser/components/thumbnails/test/browser_thumbnails_storage_migrate3.js
+++ b/toolkit/components/thumbnails/test/browser_thumbnails_storage_migrate3.js
@@ -5,17 +5,17 @@ const URL = "http://mochi.test:8888/migr
 const URL2 = URL + "#2";
 const URL3 = URL + "#3";
 const THUMBNAIL_DIRECTORY = "thumbnails";
 const PREF_STORAGE_VERSION = "browser.pagethumbnails.storage_version";
 
 let tmp = {};
 Cc["@mozilla.org/moz/jssubscript-loader;1"]
   .getService(Ci.mozIJSSubScriptLoader)
-  .loadSubScript("resource:///modules/PageThumbs.jsm", tmp);
+  .loadSubScript("resource://gre/modules/PageThumbs.jsm", tmp);
 let {PageThumbsStorageMigrator} = tmp;
 
 XPCOMUtils.defineLazyModuleGetter(this, "FileUtils",
   "resource://gre/modules/FileUtils.jsm");
 
 XPCOMUtils.defineLazyServiceGetter(this, "gDirSvc",
   "@mozilla.org/file/directory_service;1", "nsIProperties");
 
rename from browser/components/thumbnails/test/head.js
rename to toolkit/components/thumbnails/test/head.js
--- a/browser/components/thumbnails/test/head.js
+++ b/toolkit/components/thumbnails/test/head.js
@@ -1,13 +1,13 @@
 /* Any copyright is dedicated to the Public Domain.
    http://creativecommons.org/publicdomain/zero/1.0/ */
 
 let tmp = {};
-Cu.import("resource:///modules/PageThumbs.jsm", tmp);
+Cu.import("resource://gre/modules/PageThumbs.jsm", tmp);
 let PageThumbs = tmp.PageThumbs;
 let PageThumbsStorage = tmp.PageThumbsStorage;
 
 Cu.import("resource://gre/modules/PlacesUtils.jsm");
 
 registerCleanupFunction(function () {
   while (gBrowser.tabs.length > 1)
     gBrowser.removeTab(gBrowser.tabs[1]);
rename from browser/components/thumbnails/test/privacy_cache_control.sjs
rename to toolkit/components/thumbnails/test/privacy_cache_control.sjs
--- a/toolkit/toolkit-makefiles.sh
+++ b/toolkit/toolkit-makefiles.sh
@@ -477,16 +477,17 @@ MAKEFILES_xulapp="
   toolkit/components/places/Makefile
   toolkit/components/prompts/Makefile
   toolkit/components/prompts/src/Makefile
   toolkit/components/social/Makefile
   toolkit/components/startup/Makefile
   toolkit/components/startup/public/Makefile
   toolkit/components/statusfilter/Makefile
   toolkit/components/telemetry/Makefile
+  toolkit/components/thumbnails/Makefile
   toolkit/components/typeaheadfind/Makefile
   toolkit/components/urlformatter/Makefile
   toolkit/components/viewconfig/Makefile
   toolkit/components/viewsource/Makefile
   toolkit/devtools/Makefile
   toolkit/devtools/sourcemap/Makefile
   toolkit/forgetaboutsite/Makefile
   toolkit/forgetaboutsite/test/Makefile
@@ -552,16 +553,17 @@ MAKEFILES_psm_public="
 MAKEFILES_profiler="
   tools/profiler/Makefile
 "
 
 MAKEFILES_snappy="
   other-licenses/snappy/Makefile
 "
 
+
 add_makefiles "
   $MAKEFILES_dom
   $MAKEFILES_editor
   $MAKEFILES_parser
   $MAKEFILES_gfx
   $MAKEFILES_intl
   $MAKEFILES_xpconnect
   $MAKEFILES_jsipc
@@ -939,16 +941,17 @@ if [ "$ENABLE_TESTS" ]; then
     toolkit/components/places/tests/cpp/Makefile
     toolkit/components/places/tests/mochitest/bug_411966/Makefile
     toolkit/components/places/tests/mochitest/bug_461710/Makefile
     toolkit/components/prompts/test/Makefile
     toolkit/components/satchel/test/Makefile
     toolkit/components/social/test/Makefile
     toolkit/components/social/test/browser/Makefile
     toolkit/components/telemetry/tests/Makefile
+    toolkit/components/thumbnails/test/Makefile
     toolkit/components/urlformatter/tests/Makefile
     toolkit/components/viewsource/test/Makefile
     toolkit/components/viewsource/test/browser/Makefile
     toolkit/content/tests/Makefile
     toolkit/content/tests/chrome/Makefile
     toolkit/content/tests/chrome/rtlchrome/Makefile
     toolkit/content/tests/chrome/rtltest/Makefile
     toolkit/content/tests/widgets/Makefile