Commit 3c888442 authored by Carsten Schoenert's avatar Carsten Schoenert
Browse files

New upstream version 91.2.0

parent 73e3b75d
......@@ -70,7 +70,7 @@ rev = "746743227485a83123784df0c53227ab466612ed"
[source."https://github.com/hsivonen/packed_simd"]
git = "https://github.com/hsivonen/packed_simd"
replace-with = "vendored-sources"
rev = "6a16f954950401b92b4e220fbf2dfaf6f00e1fb2"
rev = "8b4bd7d8229660a749dbe419a57ea01df9de5453"
[source."https://github.com/hsivonen/chardetng_c"]
git = "https://github.com/hsivonen/chardetng_c"
......
......@@ -842,16 +842,6 @@ dependencies = [
"cfg-if 1.0.0",
]
[[package]]
name = "crossbeam-channel"
version = "0.4.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b153fe7cbef478c567df0f972e02e6d736db11affe43dfc9c56a9374d1adfb87"
dependencies = [
"crossbeam-utils 0.7.2",
"maybe-uninit",
]
[[package]]
name = "crossbeam-channel"
version = "0.5.1"
......@@ -868,11 +858,22 @@ version = "0.7.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c20ff29ded3204c5106278a81a38f4b482636ed4fa1e6cfbeef193291beb29ed"
dependencies = [
"crossbeam-epoch",
"crossbeam-epoch 0.8.2",
"crossbeam-utils 0.7.2",
"maybe-uninit",
]
[[package]]
name = "crossbeam-deque"
version = "0.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6455c0ca19f0d2fbf751b908d5c55c1f5cbc65e03c4225427254b46890bdde1e"
dependencies = [
"cfg-if 1.0.0",
"crossbeam-epoch 0.9.5",
"crossbeam-utils 0.8.5",
]
[[package]]
name = "crossbeam-epoch"
version = "0.8.2"
......@@ -884,7 +885,20 @@ dependencies = [
"crossbeam-utils 0.7.2",
"lazy_static",
"maybe-uninit",
"memoffset",
"memoffset 0.5.6",
"scopeguard",
]
[[package]]
name = "crossbeam-epoch"
version = "0.9.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4ec02e091aa634e2c3ada4a392989e7c3116673ef0ac5b72232439094d73b7fd"
dependencies = [
"cfg-if 1.0.0",
"crossbeam-utils 0.8.5",
"lazy_static",
"memoffset 0.6.4",
"scopeguard",
]
......@@ -2005,7 +2019,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c8e24825d3123194a212e3daf8ddac150713cec4f1e126dc3c12ba207f0b5d77"
dependencies = [
"chrono",
"crossbeam-channel 0.5.1",
"crossbeam-channel",
"glean-core",
"inherent",
"log",
......@@ -2915,6 +2929,15 @@ dependencies = [
"autocfg",
]
[[package]]
name = "memoffset"
version = "0.6.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "59accc507f1338036a0477ef61afdae33cde60840f4dfe481319ce3ad116ddf9"
dependencies = [
"autocfg",
]
[[package]]
name = "metal"
version = "0.22.0"
......@@ -2954,7 +2977,7 @@ dependencies = [
"goblin",
"libc",
"memmap2",
"memoffset",
"memoffset 0.5.6",
"nix",
"tempfile",
"thiserror",
......@@ -3521,9 +3544,10 @@ dependencies = [
[[package]]
name = "packed_simd"
version = "0.3.4"
source = "git+https://github.com/hsivonen/packed_simd?rev=6a16f954950401b92b4e220fbf2dfaf6f00e1fb2#6a16f954950401b92b4e220fbf2dfaf6f00e1fb2"
source = "git+https://github.com/hsivonen/packed_simd?rev=8b4bd7d8229660a749dbe419a57ea01df9de5453#8b4bd7d8229660a749dbe419a57ea01df9de5453"
dependencies = [
"cfg-if 0.1.10",
"rustc_version",
]
[[package]]
......@@ -3835,8 +3859,6 @@ dependencies = [
[[package]]
name = "prost-derive"
version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "537aa19b95acde10a12fec4301466386f757403de4cd4e5b4fa78fb5ecb18f72"
dependencies = [
"anyhow",
"itertools 0.8.2",
......@@ -3974,25 +3996,25 @@ dependencies = [
[[package]]
name = "rayon"
version = "1.4.1"
version = "1.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dcf6960dc9a5b4ee8d3e4c5787b4a112a8818e0290a42ff664ad60692fdf2032"
checksum = "c06aca804d41dbc8ba42dfd964f0d01334eceb64314b9ecf7c5fad5188a06d90"
dependencies = [
"autocfg",
"crossbeam-deque",
"crossbeam-deque 0.8.1",
"either",
"rayon-core",
]
[[package]]
name = "rayon-core"
version = "1.8.1"
version = "1.9.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e8c4fec834fb6e6d2dd5eece3c7b432a52f0ba887cf40e595190c4107edc08bf"
checksum = "d78120e2c850279833f1dd3582f730c4ab53ed95aeaaaa862a2a5c71b1656d8e"
dependencies = [
"crossbeam-channel 0.4.4",
"crossbeam-deque",
"crossbeam-utils 0.7.2",
"crossbeam-channel",
"crossbeam-deque 0.8.1",
"crossbeam-utils 0.8.5",
"lazy_static",
"num_cpus",
]
......@@ -5069,7 +5091,7 @@ version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f0c32ffea4827978e9aa392d2f743d973c1dfa3730a2ed3f22ce1e6984da848c"
dependencies = [
"crossbeam-deque",
"crossbeam-deque 0.7.4",
"crossbeam-queue",
"crossbeam-utils 0.6.6",
"futures 0.1.31",
......@@ -5517,7 +5539,7 @@ dependencies = [
"byteorder",
"core-foundation",
"core-graphics",
"crossbeam-channel 0.5.1",
"crossbeam-channel",
"derive_more",
"euclid",
"malloc_size_of_derive",
......
......@@ -78,7 +78,7 @@ opt-level = 2
chardetng = { git = "https://github.com/hsivonen/chardetng", rev="302c995f91f44cf26e77dc4758ad56c3ff0153ad" }
chardetng_c = { git = "https://github.com/hsivonen/chardetng_c", rev="ed8a4c6f900a90d4dbc1d64b856e61490a1c3570" }
libudev-sys = { path = "dom/webauthn/libudev-sys" }
packed_simd = { git = "https://github.com/hsivonen/packed_simd", rev="6a16f954950401b92b4e220fbf2dfaf6f00e1fb2" }
packed_simd = { git = "https://github.com/hsivonen/packed_simd", rev="8b4bd7d8229660a749dbe419a57ea01df9de5453" }
rlbox_lucet_sandbox = { git = "https://github.com/PLSysSec/rlbox_lucet_sandbox/", rev="5c8e79048d3ff6f434109e19d4aee4ff8624d3d7" }
nix = { git = "https://github.com/shravanrn/nix/", rev="4af6c367603869a30fddb5ffb0aba2b9477ba92e" }
spirv_cross = { git = "https://github.com/kvark/spirv_cross", branch = "wgpu5" }
......@@ -105,4 +105,7 @@ path = "third_party/rust/mio"
# Patch failure 0.1.8 to disable the backtrace feature by default. See bug 1608157.
[patch.crates-io.failure]
path = "third_party/rust/failure"
\ No newline at end of file
path = "third_party/rust/failure"
[patch.crates-io.prost-derive]
path = "third_party/rust/prost-derive"
......@@ -160,7 +160,8 @@ class AboutPrivateBrowsingParent extends JSWindowActorParent {
const currentRegion = Region.current || "";
return (
homeRegion.toLowerCase() !== "cn" &&
currentRegion.toLowerCase() !== "cn"
currentRegion.toLowerCase() !== "cn" &&
Services.policies.status !== Services.policies.ACTIVE
);
}
}
......
......@@ -15,7 +15,6 @@ class FormValidationParent extends JSWindowActorParent {
super();
this._panel = null;
this._anchor = null;
}
/*
......@@ -24,7 +23,6 @@ class FormValidationParent extends JSWindowActorParent {
uninit() {
this._panel = null;
this._anchor = null;
}
hidePopup() {
......@@ -86,8 +84,6 @@ class FormValidationParent extends JSWindowActorParent {
tabBrowser.selectedBrowser.removeEventListener("TextZoomChange", this);
this._panel = null;
this._anchor.hidden = true;
this._anchor = null;
}
/*
......@@ -109,8 +105,6 @@ class FormValidationParent extends JSWindowActorParent {
let window = browser.ownerGlobal;
let tabBrowser = window.gBrowser;
this._anchor = tabBrowser.selectedBrowser.popupAnchor;
this._anchor.hidden = false;
// Display the panel if it isn't already visible.
if (!previouslyShown) {
......@@ -141,9 +135,7 @@ class FormValidationParent extends JSWindowActorParent {
* above if visible.
*/
_hidePopup() {
if (this._panel) {
this._panel.hidePopup();
}
this._panel?.hidePopup();
}
_getAndMaybeCreatePanel() {
......
......@@ -2025,16 +2025,6 @@ var gBrowserInit = {
PanicButtonNotifier.init();
});
gBrowser.tabContainer.addEventListener("TabSelect", function() {
for (let panel of document.querySelectorAll(
"panel[tabspecific='true']"
)) {
if (panel.state == "open") {
panel.hidePopup();
}
}
});
if (BrowserHandler.kiosk) {
// We don't modify popup windows for kiosk mode
if (!gURLBar.readOnly) {
......@@ -5196,6 +5186,25 @@ var XULBrowserWindow = {
);
}
let closeOpenPanels = selector => {
for (let panel of document.querySelectorAll(selector)) {
if (panel.state != "closed") {
panel.hidePopup();
}
}
};
// If the location is changed due to switching tabs,
// ensure we close any open tabspecific panels.
if (aIsSimulated) {
closeOpenPanels("panel[tabspecific='true']");
}
// Ensure we close any remaining open locationspecific panels
if (!isSameDocument) {
closeOpenPanels("panel[locationspecific='true']");
}
// About pages other than about:reader are not currently supported by
// screenshots (see Bug 1620992).
Services.obs.notifyObservers(
......
......@@ -159,7 +159,7 @@
<html:template id="invalidFormTemplate">
<!-- for invalid form error message -->
<panel id="invalid-form-popup" type="arrow" orient="vertical" noautofocus="true" level="parent">
<panel id="invalid-form-popup" type="arrow" orient="vertical" noautofocus="true" level="parent" locationspecific="true">
<description/>
</panel>
</html:template>
......
......@@ -10,6 +10,7 @@ skip-if = debug && os == 'mac' # Bug 1568570
support-files = fullscreen.html fullscreen_frame.html
[browser_bug1620341.js]
support-files = fullscreen.html fullscreen_frame.html
skip-if = win10_2004 # Bug 1727168 and Bug 1723574
[browser_fullscreen_enterInUrlbar.js]
skip-if = (os == 'mac') || (os == 'linux') #Bug 1648649
[browser_fullscreen_window_open.js]
......
......@@ -20,7 +20,8 @@ prefs =
support-files =
head.js
[browser_appmenu.js]
skip-if = asan || debug || (os == 'win' && bits == 32) || (os == 'win' && processor == 'aarch64') # Bug 1382809, bug 1369959, Win32 because of intermittent OOM failures, bug 1533141 for aarch64
skip-if =
asan || debug || (os == 'win' && bits == 32) || (os == 'win' && processor == 'aarch64') # Bug 1382809, bug 1369959, Win32 because of intermittent OOM failures, bug 1533141 for aarch64
[browser_preferences_usage.js]
skip-if =
!debug
......
......@@ -12,7 +12,9 @@ add_task(async function() {
let tab2 = BrowserTestUtils.addTab(gBrowser, "http://mochi.test:8888/#1");
let specificPanel = document.createXULElement("panel");
specificPanel.setAttribute("tabspecific", "true");
specificPanel.setAttribute("noautohide", "true");
let generalPanel = document.createXULElement("panel");
generalPanel.setAttribute("noautohide", "true");
let anchor = document.getElementById(CustomizableUI.AREA_NAVBAR);
anchor.appendChild(specificPanel);
......
......@@ -16,6 +16,7 @@ skip-if =
[browser_breachAlertShowingForAddedLogin.js]
[browser_confirmDeleteDialog.js]
[browser_contextmenuFillLogins.js]
skip-if = win10_2004 && debug # Bug 1723573
[browser_copyToClipboardButton.js]
[browser_createLogin.js]
[browser_deleteLogin.js]
......@@ -36,6 +37,8 @@ skip-if = (os != "win" && os != "mac") # import is only available on Windows and
[browser_openPreferences.js]
[browser_openPreferencesExternal.js]
[browser_openSite.js]
skip-if =
os == "linux" && bits == 64 # Bug 1581889
[browser_osAuthDialog.js]
skip-if = (os == 'linux') # bug 1527745
[browser_removeAllDialog.js]
......
......@@ -257,6 +257,12 @@ class CsvImportHelper {
const random = Math.round(Math.random() * 100000001);
add_task(async function setup() {
registerCleanupFunction(() => {
Services.logins.removeAllUserFacingLogins();
});
});
add_task(async function test_open_import_one_item_from_csv() {
await BrowserTestUtils.withNewTab(
{ gBrowser, url: "about:logins" },
......
......@@ -36,7 +36,8 @@ tags = openwindow
[browser_broadcastchannel.js]
[browser_blobUrl.js]
[browser_middleClick.js]
skip-if = (verify && debug && (os == 'linux'))
skip-if =
(verify && debug && (os == 'linux'))
[browser_imageCache.js]
skip-if = (verify && debug && (os == 'win'))
[browser_count_and_remove.js]
......
......@@ -1843,6 +1843,9 @@ var CustomizableUIInternal = {
if (aWidget.tabSpecific) {
node.setAttribute("tabspecific", aWidget.tabSpecific);
}
if (aWidget.locationSpecific) {
node.setAttribute("locationspecific", aWidget.locationSpecific);
}
let shortcut;
if (aWidget.shortcutId) {
......@@ -2894,6 +2897,7 @@ var CustomizableUIInternal = {
defaultArea: null,
shortcutId: null,
tabSpecific: false,
locationSpecific: false,
tooltiptext: null,
l10nId: null,
showInPrivateBrowsing: true,
......@@ -2937,6 +2941,7 @@ var CustomizableUIInternal = {
"showInPrivateBrowsing",
"overflows",
"tabSpecific",
"locationSpecific",
"localized",
];
for (let prop of kOptBoolProps) {
......@@ -4008,6 +4013,10 @@ var CustomizableUI = {
* as the "$shortcut" variable to the fluent message.
* - showInPrivateBrowsing: whether to show the widget in private browsing
* mode (optional, default: true)
* - tabSpecific: If true, closes the panel if the tab changes.
* - locationSpecific: If true, closes the panel if the location changes.
* This is similar to tabSpecific, but also if the location
* changes in the same tab, we may want to close the panel.
*
* @param aProperties the specifications for the widget.
* @return a wrapper around the created widget (see getWidget)
......
......@@ -468,6 +468,9 @@ const PanelUI = {
if (aAnchor.getAttribute("tabspecific")) {
tempPanel.setAttribute("tabspecific", true);
}
if (aAnchor.getAttribute("locationspecific")) {
tempPanel.setAttribute("locationspecific", true);
}
if (this._disableAnimations) {
tempPanel.setAttribute("animate", "false");
}
......
......@@ -159,6 +159,7 @@ skip-if = os == "mac" # no toggle-able menubar on macOS.
skip-if = verify
[browser_palette_labels.js]
[browser_panel_keyboard_navigation.js]
[browser_panel_locationSpecific.js]
[browser_panel_toggle.js]
[browser_panelUINotifications.js]
[browser_panelUINotifications_fullscreen.js]
......
/* Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/ */
"use strict";
/*
* This test creates multiple panels, one that has been tagged as location specific
* and one that isn't. When the location changes, the specific panel should close.
* The non-specific panel should remain open.
*
*/
add_task(async function() {
let specificPanel = document.createXULElement("panel");
specificPanel.setAttribute("locationspecific", "true");
specificPanel.setAttribute("noautohide", "true");
specificPanel.height = "100px";
specificPanel.width = "100px";
let generalPanel = document.createXULElement("panel");
generalPanel.setAttribute("noautohide", "true");
generalPanel.height = "100px";
generalPanel.width = "100px";
let anchor = document.getElementById(CustomizableUI.AREA_NAVBAR);
anchor.appendChild(specificPanel);
anchor.appendChild(generalPanel);
is(specificPanel.state, "closed", "specificPanel starts as closed");
is(generalPanel.state, "closed", "generalPanel starts as closed");
let specificPanelPromise = BrowserTestUtils.waitForEvent(
specificPanel,
"popupshown"
);
specificPanel.openPopupAtScreen(0, 0);
await specificPanelPromise;
is(specificPanel.state, "open", "specificPanel has been opened");
let generalPanelPromise = BrowserTestUtils.waitForEvent(
generalPanel,
"popupshown"
);
generalPanel.openPopupAtScreen(100, 0);
await generalPanelPromise;
is(generalPanel.state, "open", "generalPanel has been opened");
let specificPanelHiddenPromise = BrowserTestUtils.waitForEvent(
specificPanel,
"popuphidden"
);
// Simulate a location change, and check which panel closes.
let browser = gBrowser.selectedBrowser;
let loaded = BrowserTestUtils.browserLoaded(browser);
BrowserTestUtils.loadURI(browser, "http://mochi.test:8888/#0");
await loaded;
await specificPanelHiddenPromise;
is(
specificPanel.state,
"closed",
"specificPanel panel is closed after location change"
);
is(
generalPanel.state,
"open",
"generalPanel is still open after location change"
);
specificPanel.remove();
generalPanel.remove();
});
......@@ -9,7 +9,8 @@ support-files =
foo.txt^headers^
!/toolkit/content/tests/browser/common/mockTransfer.js
[browser_first_download_panel.js]
skip-if = os == "linux" # Bug 949434
skip-if =
os == "linux" # Bug 949434
[browser_image_mimetype_issues.js]
support-files =
not-really-a-jpeg.jpeg
......@@ -28,6 +29,8 @@ skip-if = (os == 'win' && os_version == '10.0' && ccov) # Bug 1306510
[browser_downloads_panel_block.js]
skip-if = true # Bug 1352792
[browser_downloads_panel_context_menu.js]
skip-if =
win10_2004 && bits == 32 && debug # Bug 1727925
[browser_downloads_panel_ctrl_click.js]
[browser_downloads_panel_height.js]
[browser_downloads_panel_opens.js]
......
......@@ -1564,6 +1564,7 @@ var Policies = {
"security.mixed_content.block_active_content",
"security.osclientcerts.autoload",
"security.ssl.errorReporting.enabled",
"security.tls.enable_0rtt_data",
"security.tls.hello_downgrade_check",
"security.tls.version.enable-deprecated",
"security.warn_submit_secure_to_insecure",
......@@ -1707,16 +1708,14 @@ var Policies = {
onBeforeUIStartup(manager, param) {
if (typeof param === "boolean") {
setAndLockPref("privacy.sanitize.sanitizeOnShutdown", param);
if (param) {
setAndLockPref("privacy.clearOnShutdown.cache", true);
setAndLockPref("privacy.clearOnShutdown.cookies", true);
setAndLockPref("privacy.clearOnShutdown.downloads", true);
setAndLockPref("privacy.clearOnShutdown.formdata", true);
setAndLockPref("privacy.clearOnShutdown.history", true);
setAndLockPref("privacy.clearOnShutdown.sessions", true);
setAndLockPref("privacy.clearOnShutdown.siteSettings", true);
setAndLockPref("privacy.clearOnShutdown.offlineApps", true);
}
setAndLockPref("privacy.clearOnShutdown.cache", param);
setAndLockPref("privacy.clearOnShutdown.cookies", param);
setAndLockPref("privacy.clearOnShutdown.downloads", param);
setAndLockPref("privacy.clearOnShutdown.formdata", param);
setAndLockPref("privacy.clearOnShutdown.history", param);
setAndLockPref("privacy.clearOnShutdown.sessions", param);
setAndLockPref("privacy.clearOnShutdown.siteSettings", param);
setAndLockPref("privacy.clearOnShutdown.offlineApps", param);
} else {
let locked = true;
// Needed to preserve original behavior in perpetuity.
......
......@@ -227,6 +227,23 @@ const POLICIES_TESTS = [
},
},
{
policies: {
SanitizeOnShutdown: false,
},
lockedPrefs: {
"privacy.sanitize.sanitizeOnShutdown": false,
"privacy.clearOnShutdown.cache": false,
"privacy.clearOnShutdown.cookies": false,
"privacy.clearOnShutdown.downloads": false,
"privacy.clearOnShutdown.formdata": false,
"privacy.clearOnShutdown.history": false,
"privacy.clearOnShutdown.sessions": false,
"privacy.clearOnShutdown.siteSettings": false,
"privacy.clearOnShutdown.offlineApps": false,
},
},
{
policies: {
SanitizeOnShutdown: {
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment