--- a/browser/base/content/test/urlbar/browser_page_action_menu.js
+++ b/browser/base/content/test/urlbar/browser_page_action_menu.js
@@ -9,17 +9,17 @@ const mockRemoteClients = [
add_task(async function bookmark() {
// Open a unique page.
let url = "http://example.com/browser_page_action_menu";
await BrowserTestUtils.withNewTab(url, async () => {
// Open the panel.
await promisePageActionPanelOpen();
// The bookmark button should read "Bookmark This Page" and not be starred.
- let bookmarkButton = document.getElementById("page-action-bookmark-button");
+ let bookmarkButton = document.getElementById("pageAction-panel-bookmark");
Assert.equal(bookmarkButton.label, "Bookmark This Page");
Assert.ok(!bookmarkButton.hasAttribute("starred"));
// Click the button.
let hiddenPromise = promisePageActionPanelHidden();
EventUtils.synthesizeMouseAtCenter(bookmarkButton, {});
await hiddenPromise;
@@ -87,31 +87,31 @@ add_task(async function emailLink() {
};
registerCleanupFunction(() => {
MailIntegration.sendLinkForBrowser = originalFn;
});
// Open the panel and click Email Link.
await promisePageActionPanelOpen();
let emailLinkButton =
- document.getElementById("page-action-email-link-button");
+ document.getElementById("pageAction-panel-emailLink");
let hiddenPromise = promisePageActionPanelHidden();
EventUtils.synthesizeMouseAtCenter(emailLinkButton, {});
await hiddenPromise;
Assert.ok(fnCalled);
});
add_task(async function sendToDevice_nonSendable() {
// Open a tab that's not sendable.
await BrowserTestUtils.withNewTab("about:blank", async () => {
// Open the panel. Send to Device should be disabled.
await promisePageActionPanelOpen();
let sendToDeviceButton =
- document.getElementById("page-action-send-to-device-button");
+ document.getElementById("pageAction-panel-sendToDevice");
Assert.ok(sendToDeviceButton.disabled);
let hiddenPromise = promisePageActionPanelHidden();
gPageActionPanel.hidePopup();
await hiddenPromise;
});
});
add_task(async function sendToDevice_syncNotReady() {
@@ -122,76 +122,76 @@ add_task(async function sendToDevice_syn
let remoteClientsMock;
let origSync = Weave.Service.sync;
Weave.Service.sync = () => {
mockReturn(gSync, "syncReady", true);
remoteClientsMock = mockReturn(gSync, "remoteClients", mockRemoteClients);
};
- let origSetupSendToDeviceView = gPageActionButton.setupSendToDeviceView;
- gPageActionButton.setupSendToDeviceView = () => {
+ let origOnShowingSubview = BrowserPageActions.sendToDevice.onShowingSubview;
+ BrowserPageActions.sendToDevice.onShowingSubview = (...args) => {
this.numCall++ || (this.numCall = 1);
- origSetupSendToDeviceView.call(gPageActionButton);
+ origOnShowingSubview.call(BrowserPageActions.sendToDevice, ...args);
testSendTabToDeviceMenu(this.numCall);
}
let cleanUp = () => {
Weave.Service.sync = origSync;
- gPageActionButton.setupSendToDeviceView = origSetupSendToDeviceView;
+ BrowserPageActions.sendToDevice.onShowingSubview = origOnShowingSubview;
signedInMock.restore();
syncReadyMock.restore();
remoteClientsMock.restore();
};
registerCleanupFunction(cleanUp);
// Open the panel.
await promisePageActionPanelOpen();
let sendToDeviceButton =
- document.getElementById("page-action-send-to-device-button");
+ document.getElementById("pageAction-panel-sendToDevice");
Assert.ok(!sendToDeviceButton.disabled);
// Click Send to Device.
let viewPromise = promisePageActionViewShown();
EventUtils.synthesizeMouseAtCenter(sendToDeviceButton, {});
let view = await viewPromise;
- Assert.equal(view.id, "page-action-sendToDeviceView");
+ Assert.equal(view.id, "pageAction-panel-sendToDevice-subview");
function testSendTabToDeviceMenu(numCall) {
if (numCall == 1) {
// The Fxa button should be shown.
checkSendToDeviceItems([
{
- id: "page-action-sendToDevice-fxa-button",
+ id: "pageAction-panel-sendToDevice-fxa",
display: "none",
},
{
- id: "page-action-no-devices-button",
+ id: "pageAction-panel-sendToDevice-noDevices",
display: "none",
disabled: true,
},
{
- id: "page-action-sync-not-ready-button",
+ id: "pageAction-panel-sendToDevice-notReady",
disabled: true,
},
]);
} else if (numCall == 2) {
// The devices should be shown in the subview.
let expectedItems = [
{
- id: "page-action-sendToDevice-fxa-button",
+ id: "pageAction-panel-sendToDevice-fxa",
display: "none",
},
{
- id: "page-action-no-devices-button",
+ id: "pageAction-panel-sendToDevice-noDevices",
display: "none",
disabled: true,
},
{
- id: "page-action-sync-not-ready-button",
+ id: "pageAction-panel-sendToDevice-notReady",
display: "none",
disabled: true,
},
];
for (let client of mockRemoteClients) {
expectedItems.push({
attrs: {
clientId: client.id,
@@ -223,46 +223,46 @@ add_task(async function sendToDevice_syn
add_task(async function sendToDevice_notSignedIn() {
// Open a tab that's sendable.
await BrowserTestUtils.withNewTab("http://example.com/", async () => {
await promiseSyncReady();
// Open the panel.
await promisePageActionPanelOpen();
let sendToDeviceButton =
- document.getElementById("page-action-send-to-device-button");
+ document.getElementById("pageAction-panel-sendToDevice");
Assert.ok(!sendToDeviceButton.disabled);
// Click Send to Device.
let viewPromise = promisePageActionViewShown();
EventUtils.synthesizeMouseAtCenter(sendToDeviceButton, {});
let view = await viewPromise;
- Assert.equal(view.id, "page-action-sendToDeviceView");
+ Assert.equal(view.id, "pageAction-panel-sendToDevice-subview");
// The Fxa button should be shown.
checkSendToDeviceItems([
{
- id: "page-action-sendToDevice-fxa-button",
+ id: "pageAction-panel-sendToDevice-fxa",
},
{
- id: "page-action-no-devices-button",
+ id: "pageAction-panel-sendToDevice-noDevices",
display: "none",
disabled: true,
},
{
- id: "page-action-sync-not-ready-button",
+ id: "pageAction-panel-sendToDevice-notReady",
display: "none",
disabled: true,
},
]);
// Click the Fxa button.
let body = view.firstChild;
let fxaButton = body.childNodes[0];
- Assert.equal(fxaButton.id, "page-action-sendToDevice-fxa-button");
+ Assert.equal(fxaButton.id, "pageAction-panel-sendToDevice-fxa");
let prefsTabPromise = BrowserTestUtils.waitForNewTab(gBrowser);
let hiddenPromise = promisePageActionPanelHidden();
EventUtils.synthesizeMouseAtCenter(fxaButton, {});
let values = await Promise.all([prefsTabPromise, hiddenPromise]);
let tab = values[0];
// The Fxa prefs pane should open. The full URL is something like:
// about:preferences?entrypoint=syncbutton#sync
@@ -279,37 +279,37 @@ add_task(async function sendToDevice_noD
// Open a tab that's sendable.
await BrowserTestUtils.withNewTab("http://example.com/", async () => {
await promiseSyncReady();
UIState._internal._state = { status: UIState.STATUS_SIGNED_IN };
// Open the panel.
await promisePageActionPanelOpen();
let sendToDeviceButton =
- document.getElementById("page-action-send-to-device-button");
+ document.getElementById("pageAction-panel-sendToDevice");
Assert.ok(!sendToDeviceButton.disabled);
// Click Send to Device.
let viewPromise = promisePageActionViewShown();
EventUtils.synthesizeMouseAtCenter(sendToDeviceButton, {});
let view = await viewPromise;
- Assert.equal(view.id, "page-action-sendToDeviceView");
+ Assert.equal(view.id, "pageAction-panel-sendToDevice-subview");
// The no-devices item should be shown.
checkSendToDeviceItems([
{
- id: "page-action-sendToDevice-fxa-button",
+ id: "pageAction-panel-sendToDevice-fxa",
display: "none",
},
{
- id: "page-action-no-devices-button",
+ id: "pageAction-panel-sendToDevice-noDevices",
disabled: true,
},
{
- id: "page-action-sync-not-ready-button",
+ id: "pageAction-panel-sendToDevice-notReady",
display: "none",
disabled: true,
},
]);
// Done, hide the panel.
let hiddenPromise = promisePageActionPanelHidden();
gPageActionPanel.hidePopup();
@@ -330,38 +330,38 @@ add_task(async function sendToDevice_dev
let cleanUp = () => {
remoteClientsMock.restore();
};
registerCleanupFunction(cleanUp);
// Open the panel.
await promisePageActionPanelOpen();
let sendToDeviceButton =
- document.getElementById("page-action-send-to-device-button");
+ document.getElementById("pageAction-panel-sendToDevice");
Assert.ok(!sendToDeviceButton.disabled);
// Click Send to Device.
let viewPromise = promisePageActionViewShown();
EventUtils.synthesizeMouseAtCenter(sendToDeviceButton, {});
let view = await viewPromise;
- Assert.equal(view.id, "page-action-sendToDeviceView");
+ Assert.equal(view.id, "pageAction-panel-sendToDevice-subview");
// The devices should be shown in the subview.
let expectedItems = [
{
- id: "page-action-sendToDevice-fxa-button",
+ id: "pageAction-panel-sendToDevice-fxa",
display: "none",
},
{
- id: "page-action-no-devices-button",
+ id: "pageAction-panel-sendToDevice-noDevices",
display: "none",
disabled: true,
},
{
- id: "page-action-sync-not-ready-button",
+ id: "pageAction-panel-sendToDevice-notReady",
display: "none",
disabled: true,
},
];
for (let client of mockRemoteClients) {
expectedItems.push({
attrs: {
clientId: client.id,
@@ -394,17 +394,18 @@ function promiseSyncReady() {
.wrappedJSObject;
return service.whenLoaded().then(() => {
UIState.isReady();
return UIState.refresh();
});
}
function checkSendToDeviceItems(expectedItems) {
- let body = document.getElementById("page-action-sendToDeviceView-body");
+ let body =
+ document.getElementById("pageAction-panel-sendToDevice-subview-body");
Assert.equal(body.childNodes.length, expectedItems.length);
for (let i = 0; i < expectedItems.length; i++) {
let expected = expectedItems[i];
let actual = body.childNodes[i];
if (!expected) {
Assert.equal(actual.localName, "toolbarseparator");
continue;
}