Bug 1318491 - Disable new tab longpress containers menu for private browsing mode draft
authorJonathan Kingston <jkt@mozilla.com>
Thu, 24 Nov 2016 13:45:06 +0000
changeset 443452 8c3e35a8b2d2cbe89775c4dc3551751965492d65
parent 443220 34fce7c12173bdd6dda54c2ebf6d344252f1ac48
child 538058 8680192dd4aae7176b8254de03eddbec0486eb26
push id37000
push userjkingston@mozilla.com
push dateThu, 24 Nov 2016 14:16:48 +0000
bugs1318491
milestone53.0a1
Bug 1318491 - Disable new tab longpress containers menu for private browsing mode MozReview-Commit-ID: Ldmya1q7eO9
browser/base/content/tabbrowser.xml
browser/components/contextualidentity/test/browser/browser_newtabButton.js
--- a/browser/base/content/tabbrowser.xml
+++ b/browser/base/content/tabbrowser.xml
@@ -5370,17 +5370,18 @@
       <method name="observe">
         <parameter name="aSubject"/>
         <parameter name="aTopic"/>
         <parameter name="aData"/>
         <body><![CDATA[
           switch (aTopic) {
             case "nsPref:changed":
               // This is the only pref observed.
-              let containersEnabled = Services.prefs.getBoolPref("privacy.userContext.enabled");
+              let containersEnabled = Services.prefs.getBoolPref("privacy.userContext.enabled")
+                                        && !PrivateBrowsingUtils.isWindowPrivate(window);
 
               const newTab = document.getElementById("new-tab-button");
               const newTab2 = document.getAnonymousElementByAttribute(this, "anonid", "tabs-newtab-button")
 
               if (containersEnabled) {
                 for (let parent of [newTab, newTab2]) {
                   if (!parent)
                     continue;
--- a/browser/components/contextualidentity/test/browser/browser_newtabButton.js
+++ b/browser/components/contextualidentity/test/browser/browser_newtabButton.js
@@ -28,8 +28,19 @@ add_task(function* test() {
     EventUtils.synthesizeMouseAtCenter(contextIdItem, {});
 
     let tab = yield waitForTabPromise;
 
     is(tab.getAttribute('usercontextid'), i, `New tab has UCI equal ${i}`);
     yield BrowserTestUtils.removeTab(tab);
   }
 });
+
+
+add_task(function* test_private_mode() {
+  let privateWindow = yield BrowserTestUtils.openNewBrowserWindow({private: true});
+  let privateDocument = privateWindow.document;
+  let newTab = privateDocument.getElementById('tabbrowser-tabs');
+  ok(!newTab.hidden, "new tabs should not be hidden");
+  let popup = privateDocument.getAnonymousElementByAttribute(newTab, "anonid", "newtab-popup");
+  ok(!popup, "new tab should not have a popup");
+  yield BrowserTestUtils.closeWindow(privateWindow);
+});