summaryrefslogtreecommitdiffstats
path: root/application/palemoon/components/newtab/newTab.js
diff options
context:
space:
mode:
authorMatt A. Tobin <email@mattatobin.com>2018-11-30 11:15:06 -0500
committerMatt A. Tobin <email@mattatobin.com>2018-11-30 11:16:26 -0500
commit6acc5f9128db1c2c0d0c468f6123d0dccf153156 (patch)
treeaaa082a4963662df17f6654dd1c12d9d25004877 /application/palemoon/components/newtab/newTab.js
parent71737d61f75651efc5b9eaf5313a11dc3469bb1d (diff)
downloadUXP-6acc5f9128db1c2c0d0c468f6123d0dccf153156.tar
UXP-6acc5f9128db1c2c0d0c468f6123d0dccf153156.tar.gz
UXP-6acc5f9128db1c2c0d0c468f6123d0dccf153156.tar.lz
UXP-6acc5f9128db1c2c0d0c468f6123d0dccf153156.tar.xz
UXP-6acc5f9128db1c2c0d0c468f6123d0dccf153156.zip
Issue #889 - Clean up the Pale Moon tree - Part 1b: Move newtab to components
Diffstat (limited to 'application/palemoon/components/newtab/newTab.js')
-rw-r--r--application/palemoon/components/newtab/newTab.js69
1 files changed, 69 insertions, 0 deletions
diff --git a/application/palemoon/components/newtab/newTab.js b/application/palemoon/components/newtab/newTab.js
new file mode 100644
index 000000000..0022f21bb
--- /dev/null
+++ b/application/palemoon/components/newtab/newTab.js
@@ -0,0 +1,69 @@
+/* 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";
+
+var Cu = Components.utils;
+var Ci = Components.interfaces;
+
+Cu.import("resource://gre/modules/XPCOMUtils.jsm");
+Cu.import("resource://gre/modules/Services.jsm");
+Cu.import("resource://gre/modules/PageThumbs.jsm");
+Cu.import("resource://gre/modules/BackgroundPageThumbs.jsm");
+Cu.import("resource://gre/modules/NewTabUtils.jsm");
+
+XPCOMUtils.defineLazyModuleGetter(this, "Rect",
+ "resource://gre/modules/Geometry.jsm");
+XPCOMUtils.defineLazyModuleGetter(this, "PrivateBrowsingUtils",
+ "resource://gre/modules/PrivateBrowsingUtils.jsm");
+
+var {
+ links: gLinks,
+ allPages: gAllPages,
+ linkChecker: gLinkChecker,
+ pinnedLinks: gPinnedLinks,
+ blockedLinks: gBlockedLinks,
+ gridPrefs: gGridPrefs
+} = NewTabUtils;
+
+XPCOMUtils.defineLazyGetter(this, "gStringBundle", function() {
+ return Services.strings.
+ createBundle("chrome://browser/locale/newTab.properties");
+});
+
+function newTabString(name, args) {
+ let stringName = "newtab." + name;
+ if (!args) {
+ return gStringBundle.GetStringFromName(stringName);
+ }
+ return gStringBundle.formatStringFromName(stringName, args, args.length);
+}
+
+function inPrivateBrowsingMode() {
+ return PrivateBrowsingUtils.isContentWindowPrivate(window);
+}
+
+const HTML_NAMESPACE = "http://www.w3.org/1999/xhtml";
+const XUL_NAMESPACE = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul";
+
+const TILES_EXPLAIN_LINK = "https://support.mozilla.org/kb/how-do-tiles-work-firefox";
+const TILES_INTRO_LINK = "https://www.mozilla.org/firefox/tiles/";
+const TILES_PRIVACY_LINK = "https://www.mozilla.org/privacy/";
+
+#include transformations.js
+#include page.js
+#include grid.js
+#include cells.js
+#include sites.js
+#include drag.js
+#include dragDataHelper.js
+#include drop.js
+#include dropTargetShim.js
+#include dropPreview.js
+#include updater.js
+#include undo.js
+#include search.js
+
+// Everything is loaded. Initialize the New Tab Page.
+gPage.init();