diff --git a/b2g/app/b2g.js b/b2g/app/b2g.js
index a18e52f46da..dfd10c8048e 100644
--- a/b2g/app/b2g.js
+++ b/b2g/app/b2g.js
@@ -352,10 +352,10 @@ pref("dom.w3c_touch_events.safetyY", 120); // escape borders in units of 1/240"
#ifdef MOZ_SAFE_BROWSING
// Safe browsing does nothing unless this pref is set
-pref("browser.safebrowsing.enabled", false);
+pref("browser.safebrowsing.enabled", true);
// Prevent loading of pages identified as malware
-pref("browser.safebrowsing.malware.enabled", false);
+pref("browser.safebrowsing.malware.enabled", true);
pref("browser.safebrowsing.debug", false);
pref("browser.safebrowsing.updateURL", "https://safebrowsing.google.com/safebrowsing/downloads?client=SAFEBROWSING_ID&appver=%VERSION%&pver=2.2&key=%GOOGLE_API_KEY%");
@@ -405,6 +405,11 @@ pref("urlclassifier.max-complete-age", 2700);
// URL for checking the reason for a malware warning.
pref("browser.safebrowsing.malware.reportURL", "https://safebrowsing.google.com/safebrowsing/diagnostic?client=%NAME%&hl=%LOCALE%&site=");
+
+// Tracking protection
+pref("privacy.trackingprotection.enabled", true);
+pref("privacy.trackingprotection.pbmode.enabled", false);
+
#endif
// True if this is the first time we are showing about:firstrun
diff --git a/b2g/config/aries/sources.xml b/b2g/config/aries/sources.xml
index 14022cb7c58..4a5bbc916e6 100644
--- a/b2g/config/aries/sources.xml
+++ b/b2g/config/aries/sources.xml
@@ -15,7 +15,7 @@
-
+
diff --git a/b2g/config/dolphin/sources.xml b/b2g/config/dolphin/sources.xml
index 71d8f9cade7..fdc54c6019f 100644
--- a/b2g/config/dolphin/sources.xml
+++ b/b2g/config/dolphin/sources.xml
@@ -15,7 +15,7 @@
-
+
diff --git a/b2g/config/emulator-ics/sources.xml b/b2g/config/emulator-ics/sources.xml
index e68644fb08d..f433b0e1e54 100644
--- a/b2g/config/emulator-ics/sources.xml
+++ b/b2g/config/emulator-ics/sources.xml
@@ -19,10 +19,10 @@
-
+
-
+
diff --git a/b2g/config/emulator-jb/sources.xml b/b2g/config/emulator-jb/sources.xml
index 891e05a9f64..2ff06853dd8 100644
--- a/b2g/config/emulator-jb/sources.xml
+++ b/b2g/config/emulator-jb/sources.xml
@@ -17,7 +17,7 @@
-
+
diff --git a/b2g/config/emulator-kk/sources.xml b/b2g/config/emulator-kk/sources.xml
index c033d6eee04..32c8e6fdb91 100644
--- a/b2g/config/emulator-kk/sources.xml
+++ b/b2g/config/emulator-kk/sources.xml
@@ -15,7 +15,7 @@
-
+
@@ -132,7 +132,7 @@
-
+
diff --git a/b2g/config/emulator-l/sources.xml b/b2g/config/emulator-l/sources.xml
index dcd6eac4ba5..d73b4363aa1 100644
--- a/b2g/config/emulator-l/sources.xml
+++ b/b2g/config/emulator-l/sources.xml
@@ -15,7 +15,7 @@
-
+
diff --git a/b2g/config/emulator/sources.xml b/b2g/config/emulator/sources.xml
index e68644fb08d..f433b0e1e54 100644
--- a/b2g/config/emulator/sources.xml
+++ b/b2g/config/emulator/sources.xml
@@ -19,10 +19,10 @@
-
+
-
+
diff --git a/b2g/config/flame-kk/sources.xml b/b2g/config/flame-kk/sources.xml
index 048fea5a339..a9754cbdaf6 100644
--- a/b2g/config/flame-kk/sources.xml
+++ b/b2g/config/flame-kk/sources.xml
@@ -15,7 +15,7 @@
-
+
diff --git a/b2g/config/gaia.json b/b2g/config/gaia.json
index 35a087e2a54..138c175e123 100644
--- a/b2g/config/gaia.json
+++ b/b2g/config/gaia.json
@@ -1,9 +1,9 @@
{
"git": {
- "git_revision": "e3eaf72ccd1bfe6d60d37efde6d3b92c1dbc5ff9",
+ "git_revision": "d2f31eb85837aae6eca04d022d1f5b2023bc778c",
"remote": "https://git.mozilla.org/releases/gaia.git",
"branch": ""
},
- "revision": "c33bf7766d1b19c407c3bbab943403ddee172915",
+ "revision": "2e9a1e5808b983fe4aa50a169b0e36fb3f0b43a3",
"repo_path": "integration/gaia-central"
}
diff --git a/b2g/config/nexus-4/sources.xml b/b2g/config/nexus-4/sources.xml
index 958964afe71..1276861b8e5 100644
--- a/b2g/config/nexus-4/sources.xml
+++ b/b2g/config/nexus-4/sources.xml
@@ -17,7 +17,7 @@
-
+
diff --git a/b2g/config/nexus-5-l/sources.xml b/b2g/config/nexus-5-l/sources.xml
index 17a1e16d38c..d3bf9251227 100644
--- a/b2g/config/nexus-5-l/sources.xml
+++ b/b2g/config/nexus-5-l/sources.xml
@@ -15,7 +15,7 @@
-
+
diff --git a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js
index 5f957ff66bd..1d81509b584 100644
--- a/browser/app/profile/firefox.js
+++ b/browser/app/profile/firefox.js
@@ -270,7 +270,7 @@ pref("general.autoScroll", true);
// At startup, check if we're the default browser and prompt user if not.
pref("browser.shell.checkDefaultBrowser", true);
pref("browser.shell.shortcutFavicons",true);
-pref("browser.shell.isSetAsDefaultBrowser", false);
+pref("browser.shell.mostRecentDateSetAsDefault", "");
// 0 = blank, 1 = home (browser.startup.homepage), 2 = last visited page, 3 = resume previous browser session
// The behavior of option 3 is detailed at: http://wiki.mozilla.org/Session_Restore
@@ -1462,6 +1462,7 @@ pref("devtools.performance.ui.flatten-tree-recursion", true);
pref("devtools.performance.ui.show-platform-data", false);
pref("devtools.performance.ui.show-idle-blocks", true);
pref("devtools.performance.ui.enable-memory", false);
+pref("devtools.performance.ui.enable-allocations", false);
pref("devtools.performance.ui.enable-framerate", true);
pref("devtools.performance.ui.show-jit-optimizations", false);
@@ -1487,6 +1488,15 @@ pref("devtools.netmonitor.panes-network-details-height", 450);
pref("devtools.netmonitor.statistics", true);
pref("devtools.netmonitor.filters", "[\"all\"]");
+// The default Network monitor HAR export setting
+pref("devtools.netmonitor.har.defaultLogDir", "");
+pref("devtools.netmonitor.har.defaultFileName", "archive");
+pref("devtools.netmonitor.har.jsonp", false);
+pref("devtools.netmonitor.har.jsonpCallback", "");
+pref("devtools.netmonitor.har.includeResponseBodies", true);
+pref("devtools.netmonitor.har.compress", false);
+pref("devtools.netmonitor.har.forceExport", false);
+
// Enable the Tilt inspector
pref("devtools.tilt.enabled", true);
pref("devtools.tilt.intro_transition", true);
diff --git a/browser/base/content/browser-doctype.inc b/browser/base/content/browser-doctype.inc
index cc1fb950f45..ad08f4b0346 100644
--- a/browser/base/content/browser-doctype.inc
+++ b/browser/base/content/browser-doctype.inc
@@ -3,8 +3,6 @@
%brandDTD;
%browserDTD;
-
-%browserPocketDTD;
%baseMenuDTD;
diff --git a/browser/base/content/browser-menubar.inc b/browser/base/content/browser-menubar.inc
index 883761c5c3c..0dccfb835d8 100644
--- a/browser/base/content/browser-menubar.inc
+++ b/browser/base/content/browser-menubar.inc
@@ -543,7 +543,8 @@
observes="devtoolsMenuBroadcaster_BrowserToolbox"
accesskey="&browserToolboxMenu.accesskey;"/>
+ observes="devtoolsMenuBroadcaster_BrowserContentToolbox"
+ accesskey="&browserContentToolboxMenu.accesskey;" />
diff --git a/browser/base/content/browser-places.js b/browser/base/content/browser-places.js
index a8ae76c91a4..d219f9a81fc 100644
--- a/browser/base/content/browser-places.js
+++ b/browser/base/content/browser-places.js
@@ -1563,25 +1563,6 @@ let BookmarkingUI = {
updatePocketItemVisibility: function BUI_updatePocketItemVisibility(prefix) {
let hidden = !CustomizableUI.getPlacementOfWidget("pocket-button");
- if (!hidden) {
- let locale = Cc["@mozilla.org/chrome/chrome-registry;1"].
- getService(Ci.nsIXULChromeRegistry).
- getSelectedLocale("browser");
- if (locale != "en-US") {
- if (locale == "ja-JP-mac")
- locale = "ja";
- let url = "chrome://browser/content/browser-pocket-" + locale + ".properties";
- let bundle = Services.strings.createBundle(url);
- let item = document.getElementById(prefix + "pocket");
- try {
- item.setAttribute("label", bundle.GetStringFromName("pocketMenuitem.label"));
- } catch (err) {
- // GetStringFromName throws when the bundle doesn't exist. In that
- // case, the item will retain the browser-pocket.dtd en-US string that
- // it has in the markup.
- }
- }
- }
document.getElementById(prefix + "pocket").hidden = hidden;
document.getElementById(prefix + "pocketSeparator").hidden = hidden;
},
diff --git a/browser/base/content/browser-pocket-de.properties b/browser/base/content/browser-pocket-de.properties
deleted file mode 100644
index 77f3917b757..00000000000
--- a/browser/base/content/browser-pocket-de.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-# 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/.
-
-# This is a temporary file, later versions of Firefox will use
-# browser.properties in the usual L10N location.
-
-pocket-button.label = Pocket
-pocket-button.tooltiptext = Bei Pocket speichern
-
-# From browser-pocket.dtd
-saveToPocketCmd.label = Seite bei Pocket speichern
-saveToPocketCmd.accesskey = k
-saveLinkToPocketCmd.label = Link bei Pocket speichern
-saveLinkToPocketCmd.accesskey = o
-pocketMenuitem.label = Pocket-Liste anzeigen
diff --git a/browser/base/content/browser-pocket-es-ES.properties b/browser/base/content/browser-pocket-es-ES.properties
deleted file mode 100644
index 419e1cbbfed..00000000000
--- a/browser/base/content/browser-pocket-es-ES.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-# 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/.
-
-# This is a temporary file, later versions of Firefox will use
-# browser.properties in the usual L10N location.
-
-pocket-button.label = Pocket
-pocket-button.tooltiptext = Guardar en Pocket
-
-# From browser-pocket.dtd
-saveToPocketCmd.label = Guardar página en Pocket
-saveToPocketCmd.accesskey = k
-saveLinkToPocketCmd.label = Guardar enlace en Pocket
-saveLinkToPocketCmd.accesskey = k
-pocketMenuitem.label = Ver lista de Pocket
diff --git a/browser/base/content/browser-pocket-ja.properties b/browser/base/content/browser-pocket-ja.properties
deleted file mode 100644
index 94c85ee6114..00000000000
--- a/browser/base/content/browser-pocket-ja.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-# 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/.
-
-# This is a temporary file, later versions of Firefox will use
-# browser.properties in the usual L10N location.
-
-pocket-button.label = Pocket
-pocket-button.tooltiptext = Pocket に保存
-
-# From browser-pocket.dtd
-saveToPocketCmd.label = Pocket にページを保存
-saveToPocketCmd.accesskey = k
-saveLinkToPocketCmd.label = Pocket にリンクを保存
-saveLinkToPocketCmd.accesskey = o
-pocketMenuitem.label = Pocket のマイリストを表示
diff --git a/browser/base/content/browser-pocket-ru.properties b/browser/base/content/browser-pocket-ru.properties
deleted file mode 100644
index 840e6de8c6f..00000000000
--- a/browser/base/content/browser-pocket-ru.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-# 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/.
-
-# This is a temporary file, later versions of Firefox will use
-# browser.properties in the usual L10N location.
-
-pocket-button.label = Pocket
-pocket-button.tooltiptext = Сохранить в Pocket
-
-# From browser-pocket.dtd
-saveToPocketCmd.label = Сохранить страницу в Pocket
-saveToPocketCmd.accesskey = х
-saveLinkToPocketCmd.label = Сохранить ссылку в Pocket
-saveLinkToPocketCmd.accesskey = а
-pocketMenuitem.label = Показать список Pocket
diff --git a/browser/base/content/browser-pocket.dtd b/browser/base/content/browser-pocket.dtd
deleted file mode 100644
index 460866f777b..00000000000
--- a/browser/base/content/browser-pocket.dtd
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
-
-
diff --git a/browser/base/content/browser.css b/browser/base/content/browser.css
index 079f1bf5617..7e9bd61cb86 100644
--- a/browser/base/content/browser.css
+++ b/browser/base/content/browser.css
@@ -1291,3 +1291,7 @@ toolbarpaletteitem[place="palette"][hidden] {
.popup-notification-footer[popupid="bad-content"][trackingblockdisabled] {
display: block;
}
+
+#login-fill-doorhanger:not([inDetailView]) > #login-fill-clickcapturer {
+ pointer-events: none;
+}
diff --git a/browser/base/content/browser.js b/browser/base/content/browser.js
index 4c5f0e4d4a1..e920328c2c2 100644
--- a/browser/base/content/browser.js
+++ b/browser/base/content/browser.js
@@ -220,9 +220,6 @@ XPCOMUtils.defineLazyModuleGetter(this, "SitePermissions",
XPCOMUtils.defineLazyModuleGetter(this, "SessionStore",
"resource:///modules/sessionstore/SessionStore.jsm");
-XPCOMUtils.defineLazyModuleGetter(this, "TabState",
- "resource:///modules/sessionstore/TabState.jsm");
-
XPCOMUtils.defineLazyModuleGetter(this, "fxAccounts",
"resource://gre/modules/FxAccounts.jsm");
@@ -921,22 +918,7 @@ function _loadURIWithFlags(browser, uri, params) {
// process
function LoadInOtherProcess(browser, loadOptions, historyIndex = -1) {
let tab = gBrowser.getTabForBrowser(browser);
- // Flush the tab state before getting it
- TabState.flush(browser);
- let tabState = JSON.parse(SessionStore.getTabState(tab));
-
- if (historyIndex < 0) {
- tabState.userTypedValue = null;
- // Tell session history the new page to load
- SessionStore._restoreTabAndLoad(tab, JSON.stringify(tabState), loadOptions);
- }
- else {
- // Update the history state to point to the requested index
- tabState.index = historyIndex + 1;
- // SessionStore takes care of setting the browser remoteness before restoring
- // history into it.
- SessionStore.setTabState(tab, JSON.stringify(tabState));
- }
+ SessionStore.navigateAndRestore(tab, loadOptions, historyIndex);
}
// Called when a docshell has attempted to load a page in an incorrect process.
@@ -6603,23 +6585,6 @@ var gIdentityHandler = {
_mode : "unknownIdentity",
// smart getters
- get _encryptionLabel () {
- delete this._encryptionLabel;
- this._encryptionLabel = {};
- this._encryptionLabel[this.IDENTITY_MODE_DOMAIN_VERIFIED] =
- gNavigatorBundle.getString("identity.encrypted2");
- this._encryptionLabel[this.IDENTITY_MODE_IDENTIFIED] =
- gNavigatorBundle.getString("identity.encrypted2");
- this._encryptionLabel[this.IDENTITY_MODE_UNKNOWN] =
- gNavigatorBundle.getString("identity.unencrypted");
- this._encryptionLabel[this.IDENTITY_MODE_MIXED_DISPLAY_LOADED] =
- gNavigatorBundle.getString("identity.broken_loaded");
- this._encryptionLabel[this.IDENTITY_MODE_MIXED_ACTIVE_LOADED] =
- gNavigatorBundle.getString("identity.mixed_active_loaded2");
- this._encryptionLabel[this.IDENTITY_MODE_MIXED_DISPLAY_LOADED_ACTIVE_BLOCKED] =
- gNavigatorBundle.getString("identity.broken_loaded");
- return this._encryptionLabel;
- },
get _identityPopup () {
delete this._identityPopup;
return this._identityPopup = document.getElementById("identity-popup");
@@ -6633,11 +6598,6 @@ var gIdentityHandler = {
return this._identityPopupContentBox =
document.getElementById("identity-popup-content-box");
},
- get _identityPopupChromeLabel () {
- delete this._identityPopupChromeLabel;
- return this._identityPopupChromeLabel =
- document.getElementById("identity-popup-chromeLabel");
- },
get _identityPopupContentHost () {
delete this._identityPopupContentHost;
return this._identityPopupContentHost =
@@ -6658,11 +6618,6 @@ var gIdentityHandler = {
return this._identityPopupContentVerif =
document.getElementById("identity-popup-content-verifier");
},
- get _identityPopupEncLabel () {
- delete this._identityPopupEncLabel;
- return this._identityPopupEncLabel =
- document.getElementById("identity-popup-encryption-label");
- },
get _identityIconLabel () {
delete this._identityIconLabel;
return this._identityIconLabel = document.getElementById("identity-icon-label");
@@ -6980,25 +6935,32 @@ var gIdentityHandler = {
this._identityPopup.className = newMode;
this._identityPopupContentBox.className = newMode;
- // Set the static strings up front
- this._identityPopupEncLabel.textContent = this._encryptionLabel[newMode];
-
// Initialize the optional strings to empty values
let supplemental = "";
let verifier = "";
let host = "";
let owner = "";
+ if (newMode == this.IDENTITY_MODE_CHROMEUI) {
+ let brandBundle = document.getElementById("bundle_brand");
+ host = brandBundle.getString("brandFullName");
+ } else {
+ try {
+ host = this.getEffectiveHost();
+ } catch (e) {
+ // Some URIs might have no hosts.
+ host = this._lastUri.specIgnoringRef;
+ }
+ }
+
switch (newMode) {
case this.IDENTITY_MODE_DOMAIN_VERIFIED:
- host = this.getEffectiveHost();
verifier = this._identityBox.tooltipText;
break;
case this.IDENTITY_MODE_IDENTIFIED: {
// If it's identified, then we can populate the dialog with credentials
let iData = this.getIdentityData();
- host = this.getEffectiveHost();
- owner = iData.subjectOrg;
+ host = owner = iData.subjectOrg;
verifier = this._identityBox.tooltipText;
// Build an appropriate supplemental block out of whatever location data we have
@@ -7011,17 +6973,21 @@ var gIdentityHandler = {
supplemental += iData.state;
else if (iData.country) // Country only
supplemental += iData.country;
- break; }
- case this.IDENTITY_MODE_CHROMEUI: {
- let brandBundle = document.getElementById("bundle_brand");
- let brandShortName = brandBundle.getString("brandShortName");
- this._identityPopupChromeLabel.textContent = gNavigatorBundle.getFormattedString("identity.chrome",
- [brandShortName]);
- break; }
+ break;
+ }
+ case this.IDENTITY_MODE_MIXED_DISPLAY_LOADED:
+ case this.IDENTITY_MODE_MIXED_DISPLAY_LOADED_ACTIVE_BLOCKED:
+ supplemental = gNavigatorBundle.getString("identity.broken_loaded");
+ break;
+ case this.IDENTITY_MODE_MIXED_ACTIVE_LOADED:
+ supplemental = gNavigatorBundle.getString("identity.mixed_active_loaded2");
+ break;
}
- // Push the appropriate strings out to the UI
- this._identityPopupContentHost.textContent = host;
+ // Push the appropriate strings out to the UI. Need to use |value| for the
+ // host as it's a