Bug 1252666 - Part 1: Mark Push* exposed in Fennec Nightly. r?ehsan,kitcambridge
MozReview-Commit-ID: GM2YxeAZuVJ
--- a/dom/tests/mochitest/general/test_interfaces.html
+++ b/dom/tests/mochitest/general/test_interfaces.html
@@ -963,19 +963,19 @@ var interfaceNamesInGlobalScope =
"ProcessingInstruction",
// IMPORTANT: Do not change this list without review from a DOM peer!
"ProgressEvent",
// IMPORTANT: Do not change this list without review from a DOM peer!
"Promise",
// IMPORTANT: Do not change this list without review from a DOM peer!
"PropertyNodeList",
// IMPORTANT: Do not change this list without review from a DOM peer!
- {name: "PushManager", b2g: false, android: false},
-// IMPORTANT: Do not change this list without review from a DOM peer!
- {name: "PushSubscription", b2g: false, android: false},
+ {name: "PushManager", b2g: false, nightlyAndroid: true, android: false},
+// IMPORTANT: Do not change this list without review from a DOM peer!
+ {name: "PushSubscription", b2g: false, nightlyAndroid: true, android: false},
// IMPORTANT: Do not change this list without review from a DOM peer!
"RadioNodeList",
// IMPORTANT: Do not change this list without review from a DOM peer!
"Range",
// IMPORTANT: Do not change this list without review from a DOM peer!
"RecordErrorEvent",
// IMPORTANT: Do not change this list without review from a DOM peer!
"Rect",
@@ -1528,23 +1528,24 @@ function createInterfaceMap(isXBLScope)
function addInterfaces(interfaces)
{
for (var entry of interfaces) {
if (typeof(entry) === "string") {
interfaceMap[entry] = true;
} else {
ok(!("pref" in entry), "Bogus pref annotation for " + entry.name);
if ((entry.nightly === !isNightly) ||
+ (entry.nightlyAndroid === !(isAndroid && isNightly) && isAndroid) ||
(entry.xbl === !isXBLScope) ||
(entry.desktop === !isDesktop) ||
(entry.b2g === !isB2G) ||
(entry.windows === !isWindows) ||
(entry.mac === !isMac) ||
(entry.linux === !isLinux) ||
- (entry.android === !isAndroid) ||
+ (entry.android === !isAndroid && !entry.nightlyAndroid) ||
(entry.release === !isRelease) ||
(entry.permission && !hasPermission(entry.permission)) ||
entry.disabled) {
interfaceMap[entry.name] = false;
} else {
interfaceMap[entry.name] = true;
}
}
--- a/dom/workers/test/serviceworkers/test_serviceworker_interfaces.js
+++ b/dom/workers/test/serviceworkers/test_serviceworker_interfaces.js
@@ -168,23 +168,23 @@ var interfaceNamesInGlobalScope =
"PerformanceEntry",
// IMPORTANT: Do not change this list without review from a DOM peer!
"PerformanceMark",
// IMPORTANT: Do not change this list without review from a DOM peer!
"PerformanceMeasure",
// IMPORTANT: Do not change this list without review from a DOM peer!
"Promise",
// IMPORTANT: Do not change this list without review from a DOM peer!
- { name: "PushEvent", b2g: false, android: false },
+ { name: "PushEvent", b2g: false, android: false, nightlyAndroid: true },
// IMPORTANT: Do not change this list without review from a DOM peer!
- { name: "PushManager", b2g: false, android: false },
+ { name: "PushManager", b2g: false, android: false, nightlyAndroid: true },
// IMPORTANT: Do not change this list without review from a DOM peer!
- { name: "PushMessageData", b2g: false, android: false },
+ { name: "PushMessageData", b2g: false, android: false, nightlyAndroid: true },
// IMPORTANT: Do not change this list without review from a DOM peer!
- { name: "PushSubscription", b2g: false, android: false },
+ { name: "PushSubscription", b2g: false, android: false, nightlyAndroid: true },
// IMPORTANT: Do not change this list without review from a DOM peer!
"Request",
// IMPORTANT: Do not change this list without review from a DOM peer!
"Response",
// IMPORTANT: Do not change this list without review from a DOM peer!
"ServiceWorker",
// IMPORTANT: Do not change this list without review from a DOM peer!
"ServiceWorkerGlobalScope",
@@ -223,16 +223,17 @@ function createInterfaceMap(permissionMa
function addInterfaces(interfaces)
{
for (var entry of interfaces) {
if (typeof(entry) === "string") {
interfaceMap[entry] = true;
} else {
ok(!("pref" in entry), "Bogus pref annotation for " + entry.name);
if ((entry.nightly === !isNightly) ||
+ (entry.nightlyAndroid === !(isAndroid && isNightly) && isAndroid) ||
(entry.nonReleaseB2G === !(isB2G && !isRelease) && isB2G) ||
(entry.nonReleaseAndroid === !(isAndroid && !isRelease) && isAndroid) ||
(entry.desktop === !isDesktop) ||
(entry.android === !isAndroid && !entry.nonReleaseAndroid) ||
(entry.b2g === !isB2G && !entry.nonReleaseB2G) ||
(entry.release === !isRelease) ||
(entry.permission && !permissionMap[entry.permission])) {
interfaceMap[entry.name] = false;
--- a/dom/workers/test/test_worker_interfaces.js
+++ b/dom/workers/test/test_worker_interfaces.js
@@ -158,19 +158,19 @@ var interfaceNamesInGlobalScope =
"PerformanceEntry",
// IMPORTANT: Do not change this list without review from a DOM peer!
"PerformanceMark",
// IMPORTANT: Do not change this list without review from a DOM peer!
"PerformanceMeasure",
// IMPORTANT: Do not change this list without review from a DOM peer!
"Promise",
// IMPORTANT: Do not change this list without review from a DOM peer!
- { name: "PushManager", b2g: false, android: false },
+ { name: "PushManager", b2g: false, nightlyAndroid: true, android: false },
// IMPORTANT: Do not change this list without review from a DOM peer!
- { name: "PushSubscription", b2g: false, android: false },
+ { name: "PushSubscription", b2g: false, nightlyAndroid: true, android: false },
// IMPORTANT: Do not change this list without review from a DOM peer!
"Request",
// IMPORTANT: Do not change this list without review from a DOM peer!
"Response",
// IMPORTANT: Do not change this list without review from a DOM peer!
{ name: "ServiceWorkerRegistration", b2g: false },
// IMPORTANT: Do not change this list without review from a DOM peer!
"TextDecoder",
@@ -231,18 +231,19 @@ function createInterfaceMap(permissionMa
function addInterfaces(interfaces)
{
for (var entry of interfaces) {
if (typeof(entry) === "string") {
interfaceMap[entry] = true;
} else {
ok(!("pref" in entry), "Bogus pref annotation for " + entry.name);
if ((entry.nightly === !isNightly) ||
+ (entry.nightlyAndroid === !(isAndroid && isNightly) && isAndroid) ||
(entry.desktop === !isDesktop) ||
- (entry.android === !isAndroid) ||
+ (entry.android === !isAndroid && !entry.nightlyAndroid) ||
(entry.b2g === !isB2G) ||
(entry.release === !isRelease) ||
(entry.permission && !permissionMap[entry.permission]) ||
entry.disabled) {
interfaceMap[entry.name] = false;
} else {
interfaceMap[entry.name] = true;
}
--- a/mobile/android/installer/package-manifest.in
+++ b/mobile/android/installer/package-manifest.in
@@ -124,16 +124,19 @@
@BINPATH@/components/dom_media.xpt
@BINPATH@/components/dom_messages.xpt
@BINPATH@/components/dom_network.xpt
@BINPATH@/components/dom_notification.xpt
@BINPATH@/components/dom_html.xpt
@BINPATH@/components/dom_offline.xpt
@BINPATH@/components/dom_json.xpt
@BINPATH@/components/dom_power.xpt
+#ifdef MOZ_ANDROID_GCM
+@BINPATH@/components/dom_push.xpt
+#endif
@BINPATH@/components/dom_quota.xpt
@BINPATH@/components/dom_range.xpt
@BINPATH@/components/dom_security.xpt
@BINPATH@/components/dom_settings.xpt
@BINPATH@/components/dom_permissionsettings.xpt
@BINPATH@/components/dom_sidebar.xpt
@BINPATH@/components/dom_mobilemessage.xpt
@BINPATH@/components/dom_storage.xpt
@@ -269,16 +272,21 @@
@BINPATH@/components/ConsoleAPI.manifest
@BINPATH@/components/ConsoleAPIStorage.js
@BINPATH@/components/ContactManager.js
@BINPATH@/components/ContactManager.manifest
@BINPATH@/components/PhoneNumberService.js
@BINPATH@/components/PhoneNumberService.manifest
@BINPATH@/components/NotificationStorage.js
@BINPATH@/components/NotificationStorage.manifest
+#ifdef MOZ_ANDROID_GCM
+@BINPATH@/components/Push.js
+@BINPATH@/components/Push.manifest
+@BINPATH@/components/PushComponents.js
+#endif
@BINPATH@/components/SettingsManager.js
@BINPATH@/components/SettingsManager.manifest
@BINPATH@/components/BrowserElementParent.manifest
@BINPATH@/components/BrowserElementParent.js
@BINPATH@/components/BrowserElementProxy.manifest
@BINPATH@/components/BrowserElementProxy.js
@BINPATH@/components/FeedProcessor.manifest
@BINPATH@/components/FeedProcessor.js