Bug 1410763 - Backout bug 1390055;r=fischer draft
authorFred Lin <gasolin@gmail.com>
Thu, 26 Oct 2017 17:27:31 +0800
changeset 686811 117f9dc528c47775a6cc7bcb268534171ee9a889
parent 686540 64bab5cbb9b63808d04babfbcfba3175fd99f69d
child 737477 f164388d13923cadcacc6f1d4368a7043dac4eb6
push id86298
push userbmo:gasolin@mozilla.com
push dateThu, 26 Oct 2017 12:53:55 +0000
reviewersfischer
bugs1410763, 1390055
milestone58.0a1
Bug 1410763 - Backout bug 1390055;r=fischer MozReview-Commit-ID: 56hnjzgri0x
browser/components/uitour/UITour.jsm
browser/components/uitour/test/browser_UITour5.js
browser/extensions/onboarding/test/browser/browser_onboarding_uitour.js
--- a/browser/components/uitour/UITour.jsm
+++ b/browser/components/uitour/UITour.jsm
@@ -110,23 +110,17 @@ this.UITour = {
         return aDocument.getAnonymousElementByAttribute(statusButton,
                                                         "class",
                                                         "toolbarbutton-icon");
       },
       // This is a fake widgetName starting with the "appMenu-" prefix so we know
       // to automatically open the appMenu when annotating this target.
       widgetName: "appMenu-fxa-label",
     }],
-    ["addons",      {
-      query: (aDocument) => {
-        // select toolbar icon if exist, fallback to appMenu item
-        let node = aDocument.getElementById("add-ons-button");
-        return node ? node : aDocument.getElementById("appMenu-addons-button");
-      },
-    }],
+    ["addons",      {query: "#appMenu-addons-button"}],
     ["appMenu",     {
       addTargetListener: (aDocument, aCallback) => {
         let panelPopup = aDocument.defaultView.PanelUI.panel;
         panelPopup.addEventListener("popupshown", aCallback);
       },
       query: "#PanelUI-button",
       removeTargetListener: (aDocument, aCallback) => {
         let panelPopup = aDocument.defaultView.PanelUI.panel;
@@ -147,23 +141,17 @@ this.UITour = {
     }],
     ["forget", {
       allowAdd: true,
       query: "#panic-button",
       widgetName: "panic-button",
     }],
     ["help",        {query: "#appMenu-help-button"}],
     ["home",        {query: "#home-button"}],
-    ["library",     {
-      query: (aDocument) => {
-        // select toolbar icon if exist, fallback to appMenu item
-        let node = aDocument.getElementById("library-button");
-        return node ? node : aDocument.getElementById("appMenu-library-button");
-      },
-    }],
+    ["library",     {query: "#appMenu-library-button"}],
     ["pocket", {
       allowAdd: true,
       query: (aDocument) => {
         // The pocket's urlbar page action button is pre-defined in the DOM.
         // It would be hidden if toggled off from the urlbar.
         let node = aDocument.getElementById("pocket-button-box");
         if (node && node.hidden == false) {
           return node;
--- a/browser/components/uitour/test/browser_UITour5.js
+++ b/browser/components/uitour/test/browser_UITour5.js
@@ -1,51 +1,17 @@
 "use strict";
 
 var gTestTab;
 var gContentAPI;
 var gContentWindow;
 
 add_task(setup_UITourTest);
 
-add_UITour_task(async function test_highlight_library_icon_in_toolbar() {
-  let highlight = document.getElementById("UITourHighlight");
-  is_element_hidden(highlight, "Highlight should initially be hidden");
-
-  // Test highlighting the library button
-  let highlightVisiblePromise = elementVisiblePromise(highlight, "Should show highlight");
-  gContentAPI.showHighlight("library");
-  await highlightVisiblePromise;
-  UITour.getTarget(window, "library").then((target) => {
-    is("library-button", target.node.id, "Should highlight the right target");
-  });
-});
-
-add_UITour_task(async function test_highlight_addons_icon_in_toolbar() {
-  CustomizableUI.addWidgetToArea("add-ons-button", CustomizableUI.AREA_NAVBAR, 0);
-  ok(!UITour.availableTargetsCache.has(window),
-     "Targets should be evicted from cache after widget change");
-  let highlight = document.getElementById("UITourHighlight");
-  is_element_hidden(highlight, "Highlight should initially be hidden");
-
-  // Test highlighting the addons button on toolbar
-  let highlightVisiblePromise = elementVisiblePromise(highlight, "Should show highlight");
-  gContentAPI.showHighlight("addons");
-  await highlightVisiblePromise;
-  UITour.getTarget(window, "addons").then((target) => {
-    is("add-ons-button", target.node.id, "Should highlight the right target");
-    CustomizableUI.removeWidgetFromArea("add-ons-button");
-  });
-});
-
 add_UITour_task(async function test_highlight_library_and_show_library_subview() {
-  CustomizableUI.removeWidgetFromArea("library-button");
-
-  ok(!UITour.availableTargetsCache.has(window),
-     "Targets should be evicted from cache after widget change");
   let highlight = document.getElementById("UITourHighlight");
   is_element_hidden(highlight, "Highlight should initially be hidden");
 
   // Test highlighting the library button
   let appMenu = PanelUI.panel;
   let appMenuShownPromise = promisePanelElementShown(window, appMenu);
   let highlightVisiblePromise = elementVisiblePromise(highlight, "Should show highlight");
   gContentAPI.showHighlight("library");
@@ -66,11 +32,9 @@ add_UITour_task(async function test_high
   is(PanelUI.multiView.current.id, "appMenu-libraryView", "Should show the library subview");
   is(appMenu.state, "open", "Should still open the app menu for the library subview");
 
   // Clean up
   let appMenuHiddenPromise = promisePanelElementHidden(window, appMenu);
   gContentAPI.hideMenu("appMenu");
   await appMenuHiddenPromise;
   is(appMenu.state, "closed", "Should close the app menu");
-  CustomizableUI.addWidgetToArea("library", CustomizableUI.AREA_NAVBAR, 0);
 });
-
--- a/browser/extensions/onboarding/test/browser/browser_onboarding_uitour.js
+++ b/browser/extensions/onboarding/test/browser/browser_onboarding_uitour.js
@@ -48,22 +48,23 @@ add_task(async function test_clean_up_ui
 
   // Trigger UITour showHighlight
   highlightOpenPromise = promisePopupChange(highlight, "open");
   await triggerUITourHighlight("library", tab);
   await highlightOpenPromise;
   is(highlight.state, "open", "Should show UITour highlight");
   is(highlight.getAttribute("targetName"), "library", "UITour should highlight library");
 
-  // Close the overlay by clicking the overlay close button
+  // Close the overlay by clicking the overlay
+  // Should not click the close button here since the close button is hovered by appmenu and can't be clicked on win7
   highlightClosePromise = promisePopupChange(highlight, "closed");
-  BrowserTestUtils.synthesizeMouseAtCenter("#onboarding-overlay-close-btn", {}, tab.linkedBrowser);
+  BrowserTestUtils.synthesizeMouseAtPoint(2, 2, {}, tab.linkedBrowser);
   await promiseOnboardingOverlayClosed(tab.linkedBrowser);
   await highlightClosePromise;
-  is(highlight.state, "closed", "Should close UITour highlight after closing the overlay by clicking the overlay close button");
+  is(highlight.state, "closed", "Should close UITour highlight after closing the overlay by clicking the overlay");
 
   // Trigger UITour showHighlight again
   highlightOpenPromise = promisePopupChange(highlight, "open");
   await triggerUITourHighlight("library", tab);
   await highlightOpenPromise;
   is(highlight.state, "open", "Should show UITour highlight");
   is(highlight.getAttribute("targetName"), "library", "UITour should highlight library");