Skip to content

Commit

Permalink
Merge autoland to mozilla-central. a=merge
Browse files Browse the repository at this point in the history
  • Loading branch information
dgluca committed Jul 13, 2021
2 parents d1e1f21 + 35f02d8 commit 42ae3be
Show file tree
Hide file tree
Showing 452 changed files with 6,026 additions and 3,616 deletions.
7 changes: 7 additions & 0 deletions .cron.yml
Expand Up @@ -121,6 +121,7 @@ jobs:
- mozilla-beta
- mozilla-release
- mozilla-esr78
- mozilla-esr91
when:
by-project:
# We want to run at both of the times the nightly runs.
Expand All @@ -140,6 +141,7 @@ jobs:
mozilla-beta: [{hour: 10, minute: 0}]
mozilla-release: [{hour: 10, minute: 0}]
mozilla-esr78: [{hour: 10, minute: 0}]
mozilla-esr91: [{hour: 10, minute: 0}]

- name: coverity-tree-analysis
job:
Expand Down Expand Up @@ -208,6 +210,7 @@ jobs:
- mozilla-beta
- mozilla-release
- mozilla-esr78
- mozilla-esr91
when:
by-project:
# No default branch
Expand All @@ -223,6 +226,9 @@ jobs:
mozilla-esr78:
- {hour: 7, minute: 0}
- {hour: 19, minute: 0}
mozilla-esr91:
- {hour: 7, minute: 0}
- {hour: 19, minute: 0}

- name: periodic-update
job:
Expand All @@ -234,6 +240,7 @@ jobs:
- mozilla-beta
- mozilla-release
- mozilla-esr78
- mozilla-esr91
when:
- {weekday: 'Monday', hour: 8, minute: 0}
- {weekday: 'Thursday', hour: 8, minute: 0}
Expand Down
1 change: 1 addition & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions accessible/xpcom/xpcAccessibleMacInterface.mm
Expand Up @@ -16,6 +16,7 @@
#include "mozilla/dom/ToJSValue.h"
#include "mozilla/Services.h"
#include "nsString.h"
#include "js/PropertyAndElement.h" // JS_Enumerate, JS_GetElement, JS_GetProperty, JS_GetPropertyById, JS_HasOwnProperty, JS_SetUCProperty

#import "mozAccessible.h"

Expand Down
2 changes: 1 addition & 1 deletion browser/base/content/browser-pageActions.js
Expand Up @@ -533,7 +533,7 @@ var BrowserPageActions = {

_makeUrlbarButtonNode(action) {
let buttonNode = document.createXULElement("hbox");
buttonNode.classList.add("urlbar-icon-wrapper", "urlbar-page-action");
buttonNode.classList.add("urlbar-page-action");
if (action.extensionID) {
buttonNode.classList.add("urlbar-addon-page-action");
}
Expand Down
7 changes: 3 additions & 4 deletions browser/base/content/browser.css
Expand Up @@ -1057,12 +1057,11 @@ toolbarpaletteitem[place="palette"] > #downloads-button[indicator] > .toolbarbut
display: none;
}

/* Give this menupopup an arrow panel styling */
#BMB_bookmarksPopup {
/* Give these menupopups an arrow panel styling */
#BMB_bookmarksPopup,
#PlacesToolbar menupopup {
background: transparent;
border: none;
/* The popup inherits -moz-image-region from the button, must reset it */
-moz-image-region: auto;
}

#BMB_bookmarksPopup,
Expand Down
8 changes: 4 additions & 4 deletions browser/base/content/navigator-toolbox.inc.xhtml
Expand Up @@ -336,7 +336,7 @@
</hbox>
<hbox id="cfr-button"
role="presentation"
class="urlbar-page-action urlbar-icon-wrapper">
class="urlbar-page-action">
<image class="urlbar-icon"/>
</hbox>
</hbox>
Expand All @@ -345,7 +345,7 @@
<image id="userContext-indicator"/>
</hbox>
<hbox id="reader-mode-button"
class="urlbar-page-action urlbar-icon-wrapper"
class="urlbar-page-action"
role="button"
hidden="true"
tooltip="dynamic-shortcut-tooltip"
Expand All @@ -358,7 +358,7 @@
tooltip="dynamic-shortcut-tooltip"
hidden="true"/>
<hbox id="pageActionButton"
class="urlbar-page-action urlbar-icon-wrapper"
class="urlbar-page-action"
role="button"
data-l10n-id="urlbar-page-action-button"
onmousedown="BrowserPageActions.mainButtonClicked(event);"
Expand All @@ -368,7 +368,7 @@
<hbox id="star-button-box"
hidden="true"
role="button"
class="urlbar-page-action urlbar-icon-wrapper"
class="urlbar-page-action"
onclick="BrowserPageActions.doCommandForAction(PageActions.actionForID('bookmark'), event, this);">
<image id="star-button"
class="urlbar-icon"/>
Expand Down
Expand Up @@ -3,6 +3,11 @@

"use strict";

async function pause() {
/* eslint-disable mozilla/no-arbitrary-setTimeout */
return new Promise(resolve => setTimeout(resolve, 500));
}

// This test tends to trigger a race in the fullscreen time telemetry,
// where the fullscreen enter and fullscreen exit events (which use the
// same histogram ID) overlap. That causes TelemetryStopwatch to log an
Expand All @@ -18,6 +23,8 @@ async function testWindowFocus(isPopup, iframeID) {

info("Calling window.open()");
let openedWindow = await jsWindowOpen(tab.linkedBrowser, isPopup, iframeID);
info("Letting OOP focus to stabilize");
await pause(); // Bug 1719659 for proper fix
info("re-focusing main window");
await waitForFocus(tab.linkedBrowser);

Expand All @@ -43,6 +50,8 @@ async function testWindowElementFocus(isPopup) {

info("Calling window.open()");
let openedWindow = await jsWindowOpen(tab.linkedBrowser, isPopup);
info("Letting OOP focus to stabilize");
await pause(); // Bug 1719659 for proper fix
info("re-focusing main window");
await waitForFocus(tab.linkedBrowser);

Expand Down
1 change: 1 addition & 0 deletions browser/base/content/test/general/browser.ini
Expand Up @@ -299,6 +299,7 @@ skip-if = verify
[browser_tab_detach_restore.js]
# DO NOT ADD MORE TESTS HERE. USE A TOPICAL DIRECTORY INSTEAD.
[browser_tab_drag_drop_perwindow.js]
skip-if = os == "win" && os_version == "6.1" && webrender && bits == 32 # bug 1717587
# DO NOT ADD MORE TESTS HERE. USE A TOPICAL DIRECTORY INSTEAD.
[browser_tab_dragdrop.js]
skip-if = true # Bug 1312436, Bug 1388973
Expand Down
Expand Up @@ -486,8 +486,8 @@ const startupPhases = {
ignoreIfUnused: true,
stat: 4,
fsync: 3,
read: 40,
write: 156,
read: 44,
write: 164,
},
{
// bug 1391590
Expand All @@ -503,7 +503,7 @@ const startupPhases = {
fsync: 2,
read: 4,
stat: 3,
write: 1313,
write: 1317,
},
{
// bug 1391590
Expand Down
20 changes: 12 additions & 8 deletions browser/components/extensions/parent/ext-browser.js
Expand Up @@ -938,16 +938,20 @@ class Tab extends TabBase {
: tabData.lastAccessed,
};

let entries = tabData.state ? tabData.state.entries : tabData.entries;
let lastTabIndex = tabData.state ? tabData.state.index : tabData.index;
// We need to take lastTabIndex - 1 because the index in the tab data is
// 1-based rather than 0-based.
let entry = entries[lastTabIndex - 1];

// tabData is a representation of a tab, as stored in the session data,
// and given that is not a real nativeTab, we only need to check if the extension
// has the "tabs" permission (because tabData represents a closed tab, and so we
// already know that it can't be the activeTab).
if (extension.hasPermission("tabs")) {
let entries = tabData.state ? tabData.state.entries : tabData.entries;
let lastTabIndex = tabData.state ? tabData.state.index : tabData.index;
// We need to take lastTabIndex - 1 because the index in the tab data is
// 1-based rather than 0-based.
let entry = entries[lastTabIndex - 1];
// has the "tabs" or host permission (because tabData represents a closed tab,
// and so we already know that it can't be the activeTab).
if (
extension.hasPermission("tabs") ||
extension.allowedOrigins.matches(entry.url)
) {
result.url = entry.url;
result.title = entry.title;
if (tabData.image) {
Expand Down
Expand Up @@ -137,7 +137,7 @@ add_task(async function test_sessions_get_recently_closed_tabs() {

await extension.unload();

// Test without tabs permission.
// Test without tabs and host permissions.
extension = ExtensionTestUtils.loadExtension({
manifest: {
permissions: ["sessions"],
Expand All @@ -162,4 +162,44 @@ add_task(async function test_sessions_get_recently_closed_tabs() {
}

await extension.unload();

// Test with host permission.
win = await BrowserTestUtils.openNewBrowserWindow();
tabBrowser = win.gBrowser.selectedBrowser;
BrowserTestUtils.loadURI(tabBrowser, "http://example.com/testpage");
await BrowserTestUtils.browserLoaded(
tabBrowser,
false,
"http://example.com/testpage"
);
tab = win.gBrowser.getTabForBrowser(tabBrowser);
try {
await BrowserTestUtils.waitForCondition(
() => {
return gBrowser.getIcon(tab) != null;
},
"wait for favicon load to finish",
100,
5
);
} catch (e) {
// This page doesn't have any favicon link, just continue.
}
expectedTab = expectedTabInfo(tab, win);
await BrowserTestUtils.closeWindow(win);

extension = ExtensionTestUtils.loadExtension({
manifest: {
permissions: ["sessions", "http://example.com/*"],
},
background,
});
await extension.startup();

extension.sendMessage("check-sessions");
recentlyClosed = await extension.awaitMessage("recentlyClosed");
tabInfo = recentlyClosed[0].window.tabs[0];
checkTabInfo(expectedTab, tabInfo);

await extension.unload();
});
Expand Up @@ -14,10 +14,8 @@ scheme = https
fail-if = xorigin
[test_reduce_time_precision.html]
[test_hide_gamepad_info.html]
skip-if =
fission && xorigin # Bug 1716401 - New fission platform triage
support-files = test_hide_gamepad_info_iframe.html
scheme = https
support-files = test_hide_gamepad_info_iframe.html
[test_keyboard_event.html]
[test_pointer_event.html]
support-files =
Expand Down
Expand Up @@ -15,6 +15,7 @@
// This test loads in an iframe, to ensure that the navigator instance is
// loaded with the correct value of the preference.
var iframe = document.createElement("iframe");
iframe.allow = "gamepad";
iframe.src = "test_hide_gamepad_info_iframe.html";
document.body.appendChild(iframe);
});
Expand Down
Expand Up @@ -62,9 +62,6 @@
}

async function confirmClear(selector) {
await SpecialPowers.pushPrefEnv({
set: [["dom.input_events.beforeinput.enabled", true]],
});
info("Await for clearing input");
let promise = new Promise(resolve => {
let beforeInputFired = false;
Expand Down
Expand Up @@ -134,10 +134,6 @@ async function triggerAutofillAndCheckProfile(profile) {
const adaptedProfile = _getAdaptedProfile(profile);
const promises = [];

await SpecialPowers.pushPrefEnv({
set: [["dom.input_events.beforeinput.enabled", true]],
});

for (const [fieldName, value] of Object.entries(adaptedProfile)) {
info(`triggerAutofillAndCheckProfile: ${fieldName}`);
const element = document.getElementById(fieldName);
Expand Down
Expand Up @@ -169,8 +169,7 @@
add_task(async function setup() {
// This test relies on being able to fill a Canadian address which isn't possible
// without `supportedCountries` allowing Canada
await SpecialPowers.pushPrefEnv({"set": [["extensions.formautofill.supportedCountries", "US,CA"],
["dom.input_events.beforeinput.enabled", true]]});
await SpecialPowers.pushPrefEnv({"set": [["extensions.formautofill.supportedCountries", "US,CA"]]});

await setupAddressStorage();
});
Expand Down
2 changes: 1 addition & 1 deletion browser/extensions/webcompat/manifest.json
Expand Up @@ -2,7 +2,7 @@
"manifest_version": 2,
"name": "Web Compatibility Interventions",
"description": "Urgent post-release fixes for web compatibility.",
"version": "24.1.0",
"version": "24.2.0",

"applications": {
"gecko": {
Expand Down
Expand Up @@ -140,7 +140,7 @@ if (window[window.GoogleAnalyticsObject || "ga"]?.loaded === undefined) {

Object.assign(ga, {
create: (a, b, c, d) => ga("create", a, b, c, d),
getAll: () => trackers.values(),
getAll: () => Array.from(trackers.values()),
getByName: name => trackers.get(name),
loaded: true,
remove: t => ga("remove", t),
Expand Down
17 changes: 17 additions & 0 deletions browser/themes/linux/customizableui/panelUI.css
Expand Up @@ -20,13 +20,30 @@
}
} /** END Proton **/

#PlacesToolbar menupopup,
#BMB_bookmarksPopup menupopup {
appearance: none;
background-color: transparent;
}

#BMB_bookmarksPopup menupopup {
--panel-background: var(--arrowpanel-background);
--panel-color: var(--arrowpanel-color);
--panel-border-color: var(--arrowpanel-border-color);
margin-top: -9px; /* The top component of --panel-subview-body-padding and the 1px border */
}

#PlacesToolbar menupopup {
color: var(--arrowpanel-color);
padding: 5px 4px 4px;
margin-top: -4px;
}

#PlacesToolbar menupopup[placespopup=true]::part(content) {
box-shadow: 0 0 4px hsla(0, 0%, 0%, 0.2);
background: var(--arrowpanel-background);
border: 1px solid var(--arrowpanel-border-color);
margin-top: -1px
}

menuitem.subviewbutton {
Expand Down
13 changes: 13 additions & 0 deletions browser/themes/osx/browser.css
Expand Up @@ -147,6 +147,19 @@
list-style-image: url("chrome://browser/skin/places/bookmarksToolbar.svg");
}

#PlacesToolbar menupopup[placespopup=true]::part(content) {
border: 1px solid var(--arrowpanel-border-color) !important;
}

#PlacesToolbar menupopup > menu .menu-iconic-icon,
#PlacesToolbar menupopup > menuitem .menu-iconic-icon {
margin-inline-end: 0;
}

#PlacesToolbar menu menupopup {
margin-top: -8px;
}

%include ../shared/toolbarbuttons.inc.css
%include ../shared/toolbarbutton-icons.inc.css
%include ../shared/menupanel.inc.css
Expand Down

0 comments on commit 42ae3be

Please sign in to comment.