Merge autoland to mozilla-central. a=merge

This commit is contained in:
Daniel Varga 2019-10-15 12:36:31 +03:00
Родитель 4c3c765916 b41b773370
Коммит 171109434c
36 изменённых файлов: 166 добавлений и 34 удалений

Просмотреть файл

@ -307,7 +307,27 @@ module.exports = {
"rules": {
"no-async-promise-executor": "off",
}
},{
}, {
"files": [
"browser/base/content/test/chrome/test_aboutCrashed.xhtml",
"browser/base/content/test/chrome/test_aboutRestartRequired.xhtml",
"browser/base/content/test/general/browser_tab_dragdrop2_frame1.xhtml",
"browser/components/places/tests/chrome/test_0_bug510634.xhtml",
"browser/components/places/tests/chrome/test_bug1163447_selectItems_through_shortcut.xhtml",
"browser/components/places/tests/chrome/test_0_bug510634.xhtml",
"browser/components/places/tests/chrome/test_bug1163447_selectItems_through_shortcut.xhtml",
"browser/components/places/tests/chrome/test_bug549192.xhtml",
"browser/components/places/tests/chrome/test_bug549491.xhtml",
"browser/components/places/tests/chrome/test_selectItems_on_nested_tree.xhtml",
"browser/components/places/tests/chrome/test_treeview_date.xhtml",
],
"rules": {
"mozilla/no-arbitrary-setTimeout": "off",
"object-shorthand": "off",
"no-undef": "off",
"no-unused-vars": "off",
}
}, {
"files": [
"toolkit/**",
"browser/**",

Просмотреть файл

@ -1,4 +1,4 @@
[DEFAULT]
[test_aboutCrashed.xul]
[test_aboutRestartRequired.xul]
[test_aboutCrashed.xhtml]
[test_aboutRestartRequired.xhtml]

Просмотреть файл

@ -6,7 +6,7 @@ support-files =
test_contextmenu_links.html
subtst_contextmenu.html
subtst_contextmenu_input.html
subtst_contextmenu_xul.xul
subtst_contextmenu_xul.xhtml
ctxmenu-image.png
../general/head.js
../general/video.ogg

Просмотреть файл

@ -56,7 +56,7 @@ add_task(async function init() {
// Below are test cases for XUL element
add_task(async function test_xul_text_link_label() {
let url = chrome_base + "subtst_contextmenu_xul.xul";
let url = chrome_base + "subtst_contextmenu_xul.xhtml";
await BrowserTestUtils.openNewForegroundTab({
gBrowser,

Просмотреть файл

@ -15,7 +15,7 @@ support-files =
audio.ogg
browser_bug479408_sample.html
browser_star_hsts.sjs
browser_tab_dragdrop2_frame1.xul
browser_tab_dragdrop2_frame1.xhtml
browser_tab_dragdrop_embed.html
browser_web_channel.html
browser_web_channel_iframe.html

Просмотреть файл

@ -1,7 +1,7 @@
"use strict";
const ROOT = getRootDirectory(gTestPath);
const URI = ROOT + "browser_tab_dragdrop2_frame1.xul";
const URI = ROOT + "browser_tab_dragdrop2_frame1.xhtml";
// Load the test page (which runs some child popup tests) in a new window.
// After the tests were run, tear off the tab into a new window and run popup

Просмотреть файл

@ -68,6 +68,7 @@ function popupShown(event)
if (waitSteps > 0 && navigator.platform.includes("Linux") &&
panel.screenY == 210) {
waitSteps--;
/* eslint-disable mozilla/no-arbitrary-setTimeout */
setTimeout(popupShown, 10, event);
return;
}

Просмотреть файл

@ -9,6 +9,13 @@
}
.fxaccounts-extra-text {
/* Only show at most 3 lines of text to limit the
text from overflowing the header. */
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 3;
overflow: hidden;
color: var(--in-content-deemphasized-text);
text-align: end;
}

Просмотреть файл

@ -1,10 +1,10 @@
[DEFAULT]
support-files = head.js
[test_0_bug510634.xul]
[test_bug1163447_selectItems_through_shortcut.xul]
[test_0_bug510634.xhtml]
[test_bug1163447_selectItems_through_shortcut.xhtml]
skip-if = (os == 'win' && processor == 'aarch64') # bug 1532775
[test_bug549192.xul]
[test_bug549491.xul]
[test_selectItems_on_nested_tree.xul]
[test_treeview_date.xul]
[test_bug549192.xhtml]
[test_bug549491.xhtml]
[test_selectItems_on_nested_tree.xhtml]
[test_treeview_date.xhtml]

Просмотреть файл

@ -35,7 +35,7 @@ skip-if = (os == 'win' && (processor == "x86_64" || processor == "aarch64")) # B
[browser_bug1020245_openPreferences_to_paneContent.js]
[browser_bug1184989_prevent_scrolling_when_preferences_flipped.js]
support-files =
browser_bug1184989_prevent_scrolling_when_preferences_flipped.xul
browser_bug1184989_prevent_scrolling_when_preferences_flipped.xhtml
[browser_bug1547020_lockedDownloadDir.js]
[browser_cookie_exceptions_addRemove.js]
[browser_cert_export.js]
@ -95,8 +95,8 @@ support-files =
[browser_permissions_dialog.js]
[browser_subdialogs.js]
support-files =
subdialog.xul
subdialog2.xul
subdialog.xhtml
subdialog2.xhtml
[browser_sync_disabled.js]
[browser_sync_pairing.js]
[browser_telemetry.js]

Просмотреть файл

@ -8,7 +8,7 @@ add_task(async function() {
const tabURL =
getRootDirectory(gTestPath) +
"browser_bug1184989_prevent_scrolling_when_preferences_flipped.xul";
"browser_bug1184989_prevent_scrolling_when_preferences_flipped.xhtml";
await BrowserTestUtils.withNewTab({ gBrowser, url: tabURL }, async function(
browser

Просмотреть файл

@ -7,8 +7,8 @@
* Tests for the sub-dialog infrastructure, not for actual sub-dialog functionality.
*/
const gDialogURL = getRootDirectory(gTestPath) + "subdialog.xul";
const gDialogURL2 = getRootDirectory(gTestPath) + "subdialog2.xul";
const gDialogURL = getRootDirectory(gTestPath) + "subdialog.xhtml";
const gDialogURL2 = getRootDirectory(gTestPath) + "subdialog2.xhtml";
function open_subdialog_and_test_generic_start_state(
browser,

Просмотреть файл

@ -1,6 +1,6 @@
[DEFAULT]
support-files =
doc_iframe_typecontent_input_focus.xul
doc_iframe_typecontent_input_focus.xhtml
doc_iframe_typecontent_input_focus_frame.html
../head.js

Просмотреть файл

@ -6,7 +6,7 @@
const URL_ROOT =
"chrome://mochitests/content/browser/browser/extensions/formautofill/test/browser/focus-leak/";
const XUL_FRAME_URI = URL_ROOT + "doc_iframe_typecontent_input_focus.xul";
const XUL_FRAME_URI = URL_ROOT + "doc_iframe_typecontent_input_focus.xhtml";
const INNER_HTML_FRAME_URI =
URL_ROOT + "doc_iframe_typecontent_input_focus_frame.html";

Просмотреть файл

@ -698,7 +698,8 @@
opacity: 0.5;
}
.webreplay-player #overlay .tick:hover ~ .tick {
.webreplay-player #overlay .tick:hover ~ .tick,
.webreplay-player #overlay .tick.highlight ~ .tick:not(.highlight) {
opacity: 0.5;
}

Просмотреть файл

@ -134,6 +134,7 @@ class WebReplayPlayer extends Component {
paused: false,
messages: [],
highlightedMessage: null,
hoveredMessageOffset: null,
unscannedRegions: [],
cachedPoints: [],
start: 0,
@ -375,11 +376,16 @@ class WebReplayPlayer extends Component {
this.paint(message.executionPoint);
}
onMessageMouseEnter(message) {
onMessageMouseEnter(message, offset) {
this.setState({ hoveredMessageOffset: offset });
this.previewLocation(message);
this.showMessage(message);
}
onMessageMouseLeave() {
this.setState({ hoveredMessageOffset: null });
}
async previewLocation(closestMessage) {
const dbg = await this.toolbox.loadTool("jsdebugger");
dbg.previewPausedLocation(getMessageLocation(closestMessage));
@ -628,7 +634,8 @@ class WebReplayPlayer extends Component {
e.stopPropagation();
this.seek(message.executionPoint);
},
onMouseEnter: () => this.onMessageMouseEnter(message),
onMouseEnter: () => this.onMessageMouseEnter(message, offset),
onMouseLeave: () => this.onMessageMouseLeave(),
});
}
@ -644,15 +651,17 @@ class WebReplayPlayer extends Component {
}
renderTick(index) {
const { executionPoint } = this.state;
const { executionPoint, hoveredMessageOffset } = this.state;
const tickSize = this.getTickSize();
const offset = Math.round(this.getOffset(executionPoint));
const position = index * tickSize;
const isFuture = position > offset;
const shouldHighlight = hoveredMessageOffset > position;
return dom.span({
className: classname("tick", {
future: isFuture,
highlight: shouldHighlight,
}),
style: {
left: `${position}px`,

Просмотреть файл

@ -1056,6 +1056,67 @@ void CompositorOGL::CreateFBOWithTexture(const gfx::IntRect& aRect,
mGLContext->fGenFramebuffers(1, aFBO);
}
// Should be called after calls to fReadPixels or fCopyTexImage2D, and other
// GL read calls.
static void WorkAroundAppleIntelHD3000GraphicsGLDriverBug(GLContext* aGL) {
#ifdef XP_MACOSX
if (aGL->WorkAroundDriverBugs() &&
aGL->Renderer() == GLRenderer::IntelHD3000) {
// Work around a bug in the Apple Intel HD Graphics 3000 driver (bug
// 1586627, filed with Apple as FB7379358). This bug has been found present
// on 10.9.3 and on 10.13.6, so it likely affects all shipped versions of
// this driver. (macOS 10.14 does not support this GPU.)
// The bug manifests as follows: Reading from a framebuffer puts that
// framebuffer into a state such that deleting that framebuffer can break
// other framebuffers in certain cases. More specifically, if you have two
// framebuffers A and B, the following sequence of events breaks subsequent
// drawing to B:
// 1. A becomes "most recently read-from framebuffer".
// 2. B is drawn to.
// 3. A is deleted, and other GL state (such as GL_SCISSOR enabled state)
// is touched.
// 4. B is drawn to again.
// Now all draws to framebuffer B, including the draw from step 4, will
// render at the wrong position and upside down.
//
// When AfterGLReadCall() is called, the currently bound framebuffer is the
// framebuffer that has been read from most recently. So in the presence of
// this bug, deleting this framebuffer has now become dangerous. We work
// around the bug by creating a new short-lived framebuffer, making that new
// framebuffer the most recently read-from framebuffer (using
// glCopyTexImage2D), and then deleting it under controlled circumstances.
// This deletion is not affected by the bug because our deletion call is not
// interleaved with draw calls to another framebuffer and a touching of the
// GL scissor enabled state.
ScopedTexture texForReading(aGL);
{
// Initialize a 1x1 texture.
ScopedBindTexture autoBindTexForReading(aGL, texForReading);
aGL->fTexImage2D(LOCAL_GL_TEXTURE_2D, 0, LOCAL_GL_RGBA, 1, 1, 0,
LOCAL_GL_RGBA, LOCAL_GL_UNSIGNED_BYTE, nullptr);
aGL->fTexParameteri(LOCAL_GL_TEXTURE_2D, LOCAL_GL_TEXTURE_MIN_FILTER,
LOCAL_GL_LINEAR);
aGL->fTexParameteri(LOCAL_GL_TEXTURE_2D, LOCAL_GL_TEXTURE_MAG_FILTER,
LOCAL_GL_LINEAR);
}
// Make a framebuffer around the texture.
ScopedFramebufferForTexture autoFBForReading(aGL, texForReading);
if (autoFBForReading.IsComplete()) {
// "Read" from the framebuffer, by initializing a new texture using
// glCopyTexImage2D. This flips the bad bit on autoFBForReading.FB().
ScopedBindFramebuffer autoFB(aGL, autoFBForReading.FB());
ScopedTexture texReadingDest(aGL);
ScopedBindTexture autoBindTexReadingDest(aGL, texReadingDest);
aGL->fCopyTexImage2D(LOCAL_GL_TEXTURE_2D, 0, LOCAL_GL_RGBA, 0, 0, 1, 1,
0);
}
// When autoFBForReading goes out of scope, the "poisoned" framebuffer is
// deleted, and the bad state seems to go away along with it.
}
#endif
}
GLuint CompositorOGL::CreateTexture(const IntRect& aRect, bool aCopyFromSource,
GLuint aSourceFrameBuffer,
IntSize* aAllocSize) {
@ -1100,6 +1161,7 @@ GLuint CompositorOGL::CreateTexture(const IntRect& aRect, bool aCopyFromSource,
mGLContext->fCopyTexImage2D(mFBOTextureTarget, 0, LOCAL_GL_RGBA,
clampedRect.X(), FlipY(clampedRect.YMost()),
clampedRectWidth, clampedRectHeight, 0);
WorkAroundAppleIntelHD3000GraphicsGLDriverBug(mGLContext);
} else {
// Curses, incompatible formats. Take a slow path.
@ -1110,6 +1172,7 @@ GLuint CompositorOGL::CreateTexture(const IntRect& aRect, bool aCopyFromSource,
mGLContext->fReadPixels(clampedRect.X(), clampedRect.Y(),
clampedRectWidth, clampedRectHeight,
LOCAL_GL_RGBA, LOCAL_GL_UNSIGNED_BYTE, buf.get());
WorkAroundAppleIntelHD3000GraphicsGLDriverBug(mGLContext);
mGLContext->fTexImage2D(mFBOTextureTarget, 0, LOCAL_GL_RGBA,
clampedRectWidth, clampedRectHeight, 0,
LOCAL_GL_RGBA, LOCAL_GL_UNSIGNED_BYTE, buf.get());

Просмотреть файл

@ -0,0 +1,22 @@
<style>
.x {
font-family: serif;
max-width: 0vmin;
top: 1vh
}
* {
border-right: blue 1px solid;
column-count: 9;
}
#a {
column-span: all;
}
#b {
position: relative;
</style>
<h6 id="a">C</h6>
<l>q
p f
<pre id="b" wrap>
<dialog style="word-break:break-all" open class="x">Cp</pre>
<q>6/N_s/"eve"

Просмотреть файл

@ -755,4 +755,5 @@ pref(layout.css.column-span.enabled,true) load 1572901.html
pref(layout.css.column-span.enabled,true) load 1573216.html
load 1574552.html
pref(layout.css.column-span.enabled,true) load 1574993.html
pref(layout.css.column-span.enabled,true) load 1582019.html
load 1586470.html

Просмотреть файл

@ -727,16 +727,23 @@ void nsAbsoluteContainingBlock::ReflowAbsoluteFrame(
bool constrainBSize =
(aReflowInput.AvailableBSize() != NS_UNCONSTRAINEDSIZE) &&
(aFlags & AbsPosReflowFlags::ConstrainHeight) &&
// Don't split if told not to (e.g. for fixed frames)
!aDelegatingFrame->IsInlineFrame() &&
(aFlags & AbsPosReflowFlags::ConstrainHeight) &&
// XXX we don't handle splitting frames for inline absolute containing
// blocks yet
!aDelegatingFrame->IsInlineFrame() &&
// Bug 1588623: Support splitting absolute positioned multicol containers.
!aKidFrame->IsColumnSetWrapperFrame() &&
// Don't split things below the fold. (Ideally we shouldn't *have*
// anything totally below the fold, but we can't position frames
// across next-in-flow breaks yet.
(aKidFrame->GetLogicalRect(aContainingBlock.Size()).BStart(wm) <=
aReflowInput.AvailableBSize());
// Don't split things below the fold. (Ideally we shouldn't *have*
// anything totally below the fold, but we can't position frames
// across next-in-flow breaks yet.
if (constrainBSize) {
kidReflowInput.AvailableBSize() =
aReflowInput.AvailableBSize() -

Просмотреть файл

@ -22,8 +22,8 @@ job-defaults:
tier: 2
worker-type:
by-release-level:
production: scriptworker-prov-v1/pushsnap-v1
staging: scriptworker-prov-v1/dep-pushsnap
production: scriptworker-k8s/gecko-3-pushsnap
staging: scriptworker-k8s/gecko-1-pushsnap
worker:
implementation: push-snap
channel:

Просмотреть файл

@ -22,8 +22,8 @@ job-defaults:
tier: 2
worker-type:
by-release-level:
production: scriptworker-prov-v1/pushsnap-v1
staging: scriptworker-prov-v1/dep-pushsnap
production: scriptworker-k8s/gecko-3-pushsnap
staging: scriptworker-k8s/gecko-1-pushsnap
worker:
implementation: push-snap
channel:

Просмотреть файл

@ -35,6 +35,7 @@
</template>
<template id="info-item-template">
<link rel="stylesheet" href="chrome://global/skin/in-content/common.css">
<link rel="stylesheet" href="chrome://global/content/certviewer/components/info-item.css">
<label></label>
<span class="info"></span>