Граф коммитов

20373 Коммитов

Автор SHA1 Сообщение Дата
Gerald Squelart 2f31b3fef4 Bug 1474771 - Propagate NS_FRAME_IS_DIRTY to descendants when marking as dirty rather than during reflow. r=dholbert
This simplifies dealing with frames that are pushed/pulled between
continuations during reflow, allows us to avoid the complexity of the
fix to 1459937, and hopefully fixes some of the regressions from bug
1308876.

This disables the changes from bug 1459937 by commenting out a single
line in ReparentFrameInternal in nsBlockFrame.cpp, but all the added
code will be removed in the following patch.

Co-authored-by: Gerald Squelart <gsquelart@mozilla.com>
Co-authored-by: L. David Baron <dbaron@dbaron.org>

Depends on D36423

Differential Revision: https://phabricator.services.mozilla.com/D36424

--HG--
extra : moz-landing-system : lando
2019-07-01 21:56:43 +00:00
Mirko Brodesser 63b4627d28 Bug 1562876: rename `Selection::AddRange` to `Selection::AddRangeAndSelectFramesAndNotifyListeners`. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D36602
2019-07-03 13:26:13 +02:00
Makoto Kato 8b306f551d Bug 1556103 - Part 1. Add long press action when setting focus. r=masayuki
Actually, long tap can set focus.  But since it uses `nsIFocusManager::FLAG_BYMOUSE` flag, we cannot recognize whether setting focus is by long tap or not.

So I would like to add new flag `FLAG_BYLONGPRESS` and `CAUSE_LONGPRESS` that are by long tap.

Differential Revision: https://phabricator.services.mozilla.com/D35991

--HG--
extra : moz-landing-system : lando
2019-06-28 00:39:45 +00:00
Kris Maglione b459f53a11 Bug 1561061: Move SpecialPowers pref env code to parent and make sane-ish. r=aswan
Differential Revision: https://phabricator.services.mozilla.com/D35706

--HG--
extra : rebase_source : ec33af8c17048c3828d4ca4643e2e17bd2a854c0
extra : source : c2d0956f41d82e76c682f829807e818863cd802a
2019-06-24 13:47:53 -07:00
Kris Maglione f180f12646 Bug 1560400: Part 1 - Support remote frames in Window indexed getters. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D35471

--HG--
extra : rebase_source : b326799f8ced75068f7e7fec6edbd39455cdb9b1
extra : source : 84633034590f2d1a4c336f9653e6c542f3a09039
2019-06-20 13:52:55 -07:00
Sean Feng 7b15bc44ad Bug 1560328 - Add a crashtest for Bug 1560328 r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D36621

--HG--
extra : moz-landing-system : lando
2019-07-02 18:37:45 +00:00
Cameron McCormack 336cad5a55 Bug 1553705 - Make GenerateStateKey() infallible. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D32258

--HG--
extra : moz-landing-system : lando
2019-07-01 07:20:04 +00:00
Csoregi Natalia 29f8e6aebd Merge inbound to mozilla-central. a=merge 2019-06-29 12:59:53 +03:00
Kagami Sascha Rosylight 29904ec6bf Bug 1454622: Remove DOMQuad bounds attribute r=bzbarsky
The bounds attribute has been deprecated and shown zero use, and thus this change removes it.

Differential Revision: https://phabricator.services.mozilla.com/D36005

--HG--
extra : moz-landing-system : lando
2019-06-29 02:27:47 +00:00
Narcis Beleuzu cc10ed7ce5 Backed out 2 changesets (bug 1553705) for causing Bug1562142 . CLOSED TREE
Backed out changeset fbb26a04ec1f (bug 1553705)
Backed out changeset dd6e7c0970d5 (bug 1553705)
2019-06-29 02:39:01 +03:00
Botond Ballo 666b9a0760 Bug 1561726 - Add an nsIContent overload of nsLayoutUtils::FindScrollableFrameFor. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D34256

--HG--
extra : moz-landing-system : lando
2019-06-28 20:22:37 +00:00
Cosmin Sabou 798a05e2dc Merge mozilla-central to mozilla-inbound. 2019-06-28 19:16:36 +03:00
Emilio Cobos Álvarez b1ca51fe1e Bug 1561738 - Remove nsStyleCoord. r=boris
And move the useful bits of it somewhere else (ServoStyleConstInlines.h for the
inline function definitions, and nsFrame.cpp for the static assertions).

Differential Revision: https://phabricator.services.mozilla.com/D36120
2019-06-28 12:44:44 +02:00
Cosmin Sabou 2fa2a56685 Backed out 3 changesets (bug 1561738) for causing build bustages on nsGridContainerFrame.cpp CLOSED TREE
Backed out changeset 98f100abc2ba (bug 1561738)
Backed out changeset 9ed20d0fb9ba (bug 1561738)
Backed out changeset 483b1e134ace (bug 1561738)
2019-06-28 13:27:09 +03:00
Emilio Cobos Álvarez e023916761 Bug 1561738 - Remove nsStyleCoord. r=boris
And move the useful bits of it somewhere else (ServoStyleConstInlines.h for the
inline function definitions, and nsFrame.cpp for the static assertions).

Differential Revision: https://phabricator.services.mozilla.com/D36120

--HG--
extra : moz-landing-system : lando
2019-06-28 09:46:26 +00:00
Masayuki Nakano da61ea3112 Bug 1444847 - part 3: Create `RangeUtils` to place public static methods of `nsRange` r=smaug
Some `nsRange` static methods are useful in `StaticRange` and some of them
are used in a lot of places but not related to `nsRange` directly.  This
patch moves them into new static method only class, `mozilla::RangeUtils`.

Differential Revision: https://phabricator.services.mozilla.com/D35142

--HG--
extra : moz-landing-system : lando
2019-06-28 07:48:07 +00:00
Masayuki Nakano 2a450c5196 Bug 1444847 - part 2: Sort out basic API of `nsRange` for consistency with coming `StaticRange` r=smaug
For avoiding confusion between API of `nsRange` and `StaticRange`, I'd like to
rename `nsRange::CreateRange()` to `nsRange::Create()` because
`StaticRange::CreateStaticRange()` is too long name and
`StaticRange::CreateRange()` sounds odd.  This patch renames it and changes
related methods to template methods to avoid runtime cost of temporary
`RawRangeBoundary` instance creation.

Differential Revision: https://phabricator.services.mozilla.com/D35141

--HG--
extra : moz-landing-system : lando
2019-06-28 07:47:29 +00:00
Brendan Dahl 62645647cf Bug 1558980 - Convert all XUL mochitest plain tests to chrome. r=mossop
Two benefits:

1) Align test setup with shipping Firefox - We don't allow content
privilege XUL in shipping versions of Firefox, so having the tests be
chrome would be more realistic to our use case.

2) Support the XUL to XHTML migration. These files will soon become XHTML
files, but will still need to load XUL elements, so they'll need to be
marked as chrome privileged to continue working.

Differential Revision: https://phabricator.services.mozilla.com/D35870

--HG--
rename : dom/xul/test/test_bug486990.xul => dom/xul/test/test_bug486990.xhtml
rename : layout/base/tests/file_bug465448.html => layout/base/tests/chrome/file_bug465448.html
rename : layout/base/tests/test_bug465448.xul => layout/base/tests/chrome/test_bug465448.xul
extra : moz-landing-system : lando
2019-06-26 18:00:53 +00:00
Coroiu Cristina 057f20d982 Merge mozilla-central to autoland a=merge on a CLOSED TREE 2019-06-27 12:42:29 +03:00
Coroiu Cristina f91bd38732 Merge inbound to mozilla-central a=merge 2019-06-27 12:36:00 +03:00
Coroiu Cristina aa2d0d75c6 Merge autoland to mozilla-central a=merge 2019-06-27 12:33:50 +03:00
Mihai Alexandru Michis b485399185 Backed out 4 changesets (bug 1554571) for causing failures in minimal-xul.css
Backed out changeset 1cc4e6374b8a (bug 1554571)
Backed out changeset 30728685499e (bug 1554571)
Backed out changeset c14e9c381345 (bug 1554571)
Backed out changeset a2143551d7bc (bug 1554571)

--HG--
extra : rebase_source : 4b4442d96eb40e57b0a9834b4048b11f9be1a964
2019-06-27 07:09:55 +03:00
Csoregi Natalia 5663c7541b Backed out 4 changesets (bug 1488953) for causing Bug 1559690. a=backout
Backed out changeset 6b9cfebe8076 (bug 1488953)
Backed out changeset 6759badeec0e (bug 1488953)
Backed out changeset 5555e12078d3 (bug 1488953)
Backed out changeset 2a638724408b (bug 1488953)
2019-06-27 01:03:50 +03:00
Nicholas Nethercote ca8e78069d Bug 1561491 - Make gfx.* static prefs follow the naming convention. r=KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D35975

--HG--
extra : rebase_source : 9090ac828f1da9582510975047d5ad59a228dda5
2019-06-26 10:38:09 +10:00
Nicholas Nethercote 84b32d3654 Bug 1561491 - Make browser.* and dom.vr.* static prefs follow the naming convention. r=KrisWright
The patch also removes the dom.vr.oculus.quit.timeout pref, because it's
unused.

Differential Revision: https://phabricator.services.mozilla.com/D35973

--HG--
extra : rebase_source : bd16ed5ff0b7c2b4f8e653e9835610b25b14a39f
2019-06-25 16:32:29 +10:00
Mihai Alexandru Michis c4808ba596 Backed out changeset 7a0ba8a3de05 (bug 1558980) for mochitest-chrome failures. CLOSED TREE
--HG--
rename : layout/base/tests/chrome/test_bug465448.xul => layout/base/tests/test_bug465448.xul
2019-06-27 05:48:11 +03:00
Cameron McCormack 8538a62557 Bug 1554571 - Part 3: Cache computed styles of scrollbar part anonymous content. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D33123

--HG--
extra : moz-landing-system : lando
2019-06-27 00:25:03 +00:00
Cameron McCormack 60ac348ac5 Bug 1554571 - Part 1: Remove unused argument from Servo_ResolveStyle. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D33121

--HG--
extra : moz-landing-system : lando
2019-06-27 00:24:54 +00:00
Brendan Dahl c7f754871d Bug 1558980 - Convert all XUL mochitest plain tests to chrome. r=mossop
Two benefits:

1) Align test setup with shipping Firefox - We don't allow content
privilege XUL in shipping versions of Firefox, so having the tests be
chrome would be more realistic to our use case.

2) Support the XUL to XHTML migration. These files will soon become XHTML
files, but will still need to load XUL elements, so they'll need to be
marked as chrome privileged to continue working.

Differential Revision: https://phabricator.services.mozilla.com/D34782

--HG--
rename : layout/base/tests/test_bug465448.xul => layout/base/tests/chrome/test_bug465448.xul
extra : moz-landing-system : lando
2019-06-20 21:29:50 +00:00
Cameron McCormack 98706be760 Bug 1553705 - Make GenerateStateKey() infallible. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D32258

--HG--
extra : moz-landing-system : lando
2019-06-26 21:44:03 +00:00
Hiroyuki Ikezoe b14c7c928c Bug 1560237 - Don't propagate scroll-behavior from <body>. r=botond
From the CSSOM View spec[1];

 The scroll-behavior property of the HTML body element is not propagated to
 the viewport.

The reason why this change fixes the test case in this commit is that we don't
have two different scrollable frames for <html> and <body> respectively if we
don't propagate scroll-behavior property from <body> to <html> so that we can
properly find the `flow root` of sticky position elements.

In other words, in the case where both of <html> and <body> have properties
that are propagated from <body> but they are different we have two scrollable
frames as a candidate of the 'flow root' for the sticky position element in
the test case, one is the scrollable frame for <html> and the other is the
scrollable frame for <body>.  That means that
nsLayoutUtils::GetNearestScrollableFrame doesn't return what we want in some
places, for example we have a pretty similar issue in case of
overscroll-behavior which is bug 1561107.

Note that the test position-sticky-root-scroller-with-scroll-behavior.html is
almost copy-and-pasted from
/css/css-position/position-sticky-root-scroller.html [2] in wpt, the reason why
we put the test in /css/cssom-view is that there is a handy function to wait
for async scroll completion.

[1] https://drafts.csswg.org/cssom-view/#propdef-scroll-behavior
[2] https://searchfox.org/mozilla-central/rev/928742d3ea30e0eb4a8622d260041564d81a8468/testing/web-platform/tests/css/css-position/position-sticky-root-scroller.html

Differential Revision: https://phabricator.services.mozilla.com/D35739

--HG--
extra : moz-landing-system : lando
2019-06-26 20:57:05 +00:00
Hiroyuki Ikezoe 0670fe9a3f Bug 1560237 - Introduce nsIScrollableFrame::IsSmoothScroll. r=botond
This is pretty much the same as ScrollStyles::IsSmoothScroll right now,
but in the next commit, we will no longer propagate scroll-behavior on <body> to
the root element so that nsIScrollableFrame::IsSmoothScroll will be changed
to reflect it.

Differential Revision: https://phabricator.services.mozilla.com/D35737

--HG--
extra : moz-landing-system : lando
2019-06-26 20:59:01 +00:00
Nicholas Nethercote 9f0b35cc2a Bug 1560837 - Make APZ static prefs follow the naming convention. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D35633

--HG--
extra : rebase_source : e71193756486b148d479e90b324f73dc35756429
2019-06-24 13:57:06 +10:00
Cameron McCormack 9bbe5b00a3 Bug 1554571 - Part 3: Cache computed styles of scrollbar part anonymous content. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D33123

--HG--
extra : moz-landing-system : lando
2019-06-27 07:22:22 +00:00
Cameron McCormack 5bf528676e Bug 1554571 - Part 1: Remove unused argument from Servo_ResolveStyle. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D33121

--HG--
extra : moz-landing-system : lando
2019-06-27 07:22:13 +00:00
Ryan Hunt 6b6abd3a36 Bug 1554861 - Disable clipping and scaling for top-level remote browsers to resolve regressions. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D35702

--HG--
extra : moz-landing-system : lando
2019-06-25 03:16:31 +00:00
Kartikaya Gupta 8d9580b949 Bug 1560587 - Remove incorrect event redirection. r=tnikkel
In this codepath, the parent process may be sending an event to a particular
content process. The last-saved mouse target might be stale, and using that
to redirect the event can result in the event getting sent to the wront content
process. Deleting this erroneous change restores correct behaviour.

Differential Revision: https://phabricator.services.mozilla.com/D35697

--HG--
extra : moz-landing-system : lando
2019-06-24 20:10:40 +00:00
Sean Feng 99863c0a1c Bug 1560328 - Fix a bug where mDocument could be null to cause crashes r=smaug,emilio
Differential Revision: https://phabricator.services.mozilla.com/D35567

--HG--
extra : moz-landing-system : lando
2019-06-24 15:05:36 +00:00
Emilio Cobos Álvarez e17f48773e Bug 1559627 - More reliably detect position changes during reframe. r=rhunt
Differential Revision: https://phabricator.services.mozilla.com/D35157

--HG--
extra : moz-landing-system : lando
2019-06-24 15:44:21 +00:00
Ryan Hunt 116f9c9f98 Bug 1559518 - Use LayoutDevicePixel for BrowserChild visible rect and composition size. r=kats
App units of a remote browser element in the parent process are
different from app units inside the remote content in the child
process. We should apply the appropriate conversions by exposing
the relevant data as LayoutDevicePixel.

Differential Revision: https://phabricator.services.mozilla.com/D35334

--HG--
extra : moz-landing-system : lando
2019-06-19 18:20:52 +00:00
Ting-Yu Lin 4547c3eb7d Bug 1523595 Part 2 - Add missing NS_FRAME_HAS_MULTI_COLUMN_ANCESTOR for nested ColumnSetWrapper. r=dbaron
Bug 1507244 changes how NS_FRAME_HAS_MULTI_COLUMN_ANCESTOR is propagated
to the child, but I forget to add the bit for nested ColumnSetWrapper.

Currently, no other code depends on this bit being set on nested
ColumnSetWrapper, but Part 3 will. Without this patch,
testing/web-platform/tests/css/css-multicol/multicol-nested-margin-002.xht
will fail with Part 3.

Differential Revision: https://phabricator.services.mozilla.com/D31675

--HG--
extra : moz-landing-system : lando
2019-06-19 17:05:18 +00:00
Ting-Yu Lin 73b1eb5bc6 Bug 1550869 - Stop undraggable images from being selected by a single-clicking. r=emilio
This is a rework for the issue in bug 1516963.

The condition `aFrame->IsFrameOfType(nsIFrame::eReplaced)` was added to
avoid breaking
editor/libeditor/tests/test_abs_positioner_positioning_elements.html
because it contains blockified (position:absolute) images in
contenteditable, and we don't want these images to use frame edge. But
for non-editable undraggable images, which have display:inline, we want
them to use frame edge to avoid being selected by a single-clicking.
Note that non-editable draggable images use a different code patch to
handle their operations.

I think it easier to understand by checking the frame types directly. As
for images, we want non-editable images to use frame edge, but not those
editable ones because editor has its own logic to handle all the
dragging operations, etc. Using frame edge for editable images makes
them undraggable, and fails
test_abs_positioner_positioning_elements.html.

Add more tests for empty inline-grid, inline-flex, inline-table, video,
to ensure the behavior is not changed. We don't want them to be selected
by a single-clicking, either.

Note I only test video's selection is collapsed when single-clicking
because I failed to turn off picture-in-picture on <video> in
test_reftests_with_caret.html.

Differential Revision: https://phabricator.services.mozilla.com/D34909

--HG--
extra : moz-landing-system : lando
2019-06-18 05:30:35 +00:00
Logan Smyth a1de03c27b Bug 1529345 - Part 2: Add Gecko infrastructure for receiving notifications about debugger-related events. r=jimb,smaug
Differential Revision: https://phabricator.services.mozilla.com/D30565

--HG--
extra : moz-landing-system : lando
2019-06-17 04:36:29 +00:00
Nicholas Nethercote 28ae1cbb46 Bug 1561825 - Make sundry static prefs follow the naming convention. r=KrisWright
That includes changing privacy.resistFingerprinting to a non-VarCache pref,
because it doesn't need to be a VarCache.

Differential Revision: https://phabricator.services.mozilla.com/D36162

--HG--
extra : rebase_source : 6d742e6ff2a4b786cb21f6e8874d1fd4bbde1857
2019-06-27 17:38:17 +10:00
Nicholas Nethercote 59dde0c47e Bug 1561825 - Make layout.* static prefs follow the naming convention. r=KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D36160

--HG--
extra : rebase_source : 25ec3d8bd549a9229ec8789f2ca604c27082f228
2019-06-27 16:28:25 +10:00
Nicholas Nethercote 4008f58653 Bug 1561825 - Make layers.* static prefs follow the naming convention. r=KrisWright
The patch also removes the layers.mlgpu.enable-container-resizing pref, because
it's dead.

Differential Revision: https://phabricator.services.mozilla.com/D36159

--HG--
extra : rebase_source : e215d584aed18f865d2e8d00a78e76e9b0323e6e
2019-06-27 14:48:58 +10:00
Bas Schouten 88c1c3d944 Bug 1553254 - Part 2: Add some first performance probes to our codebase for some basic, easy to measure things. r=brennie
Differential Revision: https://phabricator.services.mozilla.com/D32877

--HG--
extra : rebase_source : b2d474400a2b09eeb5194845c1c4cd717de00513
2019-05-28 20:58:06 +02:00
Oana Pop Rus b93335c27f Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-06-13 13:04:19 +03:00
Oana Pop Rus 1133b6716d Merge inbound to mozilla-central. a=merge 2019-06-13 12:55:51 +03:00
Ting-Yu Lin dbbf8bb804 Bug 1524411 - Null-check kid in nsLayoutUtils::GetFirstLinePosition(). r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D34247

--HG--
extra : moz-landing-system : lando
2019-06-13 04:20:55 +00:00
Emilio Cobos Álvarez 4e5f983137 Bug 1488953 - Use a script runner for scrollport events. r=mats
This is consistent with the scroll area events too, and allows us to
remove the WillPaintObserver stuff.

Differential Revision: https://phabricator.services.mozilla.com/D5271

--HG--
extra : moz-landing-system : lando
2019-06-13 02:30:25 +00:00
Peter Van der Beken 8b00dd9ff2 Bug 1490044 - Move all prefs used in WebIDL to StaticPrefs. r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D33507

--HG--
extra : moz-landing-system : lando
2019-06-13 09:00:59 +00:00
Jean-Yves Avenard b0082c7c5b Bug 1558770 - Remove non-functional test. r=kats
The test is supposed to test that changing the preference layers.acceleration.disabled doesn't cause a crash, but this pref is only read on startup well before the test has a chance to run and switch the pref.

It's not doing anything.

Differential Revision: https://phabricator.services.mozilla.com/D34781

--HG--
extra : moz-landing-system : lando
2019-06-13 00:35:30 +00:00
Ryan Hunt d7b4b6a1a4 Bug 1558482 - Restrict the composition size to the visibleRect for OOP-iframes. r=kats
Even if we don't have a root displayport, the composition size is still used for
displayport margins calculations. For extremely tall iframes, this will create
a displayport that is way to big. We should instead report a composition size that
is equivalent to the visible rect for OOP-iframes.

Differential Revision: https://phabricator.services.mozilla.com/D34528

--HG--
extra : rebase_source : 1f43cb16a0841eb3cd892401c83a46d56276cf2e
2019-06-11 07:57:52 -05:00
Ryan Hunt d4e1195aed Bug 1558482 - Apply visibleRect and scaling when painting. r=mattwoodrow
visibleRect should affect both WR/layers, and scaling will only affect
layers.

Differential Revision: https://phabricator.services.mozilla.com/D34525

--HG--
extra : rebase_source : 49273db3e10088c9493f693d5f8b58864dcb01aa
2019-06-11 07:52:12 -05:00
Ting-Yu Lin 0702152462 Bug 1549867 - Add a crashtest. r=jfkthame
This test no longer crashes after fixing bug 1524431.

Differential Revision: https://phabricator.services.mozilla.com/D34221

--HG--
extra : moz-landing-system : lando
2019-06-11 16:23:29 +00:00
Dorel Luca fe1531cfc1 Merge mozilla-inbound to mozilla-central. a=merge 2019-06-12 15:05:58 +03:00
Emilio Cobos Álvarez a45852130e Bug 1558352 - Ensure canvas anonymous content is always created before constructing the document element frame's children. r=TYLin
Right now that doesn't happen, so you can run into problems like the one
described in bug 1492582 comment 30 for popups.

This is a bit annoying, but it's more consistent with how regular anonymous
content works already:

  https://searchfox.org/mozilla-central/rev/0da35261b6789eec65476dbdd4913df6e235af6d/layout/base/nsCSSFrameConstructor.cpp#9644

It's still not 100% consistent, since the root element's frame would still end
up first in the frame tree, but I think that's both less important and harder to
change. I've left a comment to that effect in the code.

Differential Revision: https://phabricator.services.mozilla.com/D34434

--HG--
extra : moz-landing-system : lando
2019-06-12 10:09:28 +00:00
Sean Feng 36865676e1 Bug 1512388 - Add loading cross domain iframes in background r=smaug
This patch adds the ability to load cross domain iframes in the
background to make the top level documents finish earlier.

This is an experiment feature that we'll keep it disabled by default.

Differential Revision: https://phabricator.services.mozilla.com/D24938

--HG--
extra : moz-landing-system : lando
2019-06-11 20:43:40 +00:00
Emilio Cobos Álvarez a0516ce321 Bug 1505489 - Invalidate the style of the element when the part attribute changes. r=heycam
I think that, given ::part() right now (without forwarding) cannot affect
descendants (and eager pseudo-elements are handled as part of the normal element
restyling process), it is not worth the effort to add more complex invalidation.

But we can always re-evaluate.

Depends on D32642

Differential Revision: https://phabricator.services.mozilla.com/D32643

--HG--
extra : moz-landing-system : lando
2019-06-11 17:42:00 +00:00
Ting-Yu Lin 307ef73912 Bug 1524431 Part 2 - Check IsBidiSplittable() before processing the ancestor frames. r=jfkthame
The idea is to check IsBidiSplittable() in more places to prevent fixed
continuations created by column-span from becoming fluid ones.

Differential Revision: https://phabricator.services.mozilla.com/D34093

--HG--
extra : moz-landing-system : lando
2019-06-11 19:27:57 +00:00
Ting-Yu Lin 6904399bd9 Bug 1524431 Part 1 - Revert Bug 1520722 Part 2. r=jfkthame
This reverts the modification to nsBidiPresUtils.cpp in Bug 1520722 Part
2, but keeps the test added. Next part will fix the problem in a proper
way.

Differential Revision: https://phabricator.services.mozilla.com/D34092

--HG--
extra : moz-landing-system : lando
2019-06-11 16:21:57 +00:00
Boris Zbarsky d5a8a4a595 Bug 1557793 part 3. Change the signatures of various nsContentUtils localization methods to play nicer with the new stringbundle API. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D34201

--HG--
extra : moz-landing-system : lando
2019-06-08 21:26:12 +00:00
Olli Pettay 963b9d833d Bug 1556769, ensure UnsuppressAndInvalidate is called even if paint suppression isn't used, r=emilio
UnsuppressAndInvalidate updates focus state among others, so it needs to be called even if paint suppression itself
isn't used. An example of a such case is when PresShell is created after Document's readyState is already Document::READYSTATE_COMPLETE.

Differential Revision: https://phabricator.services.mozilla.com/D34426

--HG--
extra : moz-landing-system : lando
2019-06-11 11:03:38 +00:00
Jonathan Watt d46e1691fe Bug 1558349. Stop calling SetIsPrintPreview in nsDocumentViewer::PrepareToStartLoad. r=bobowen
This code predates our use of a static clone to print.  Nowadays we never
navigate in the (dedicated) print preview tab.

Differential Revision: https://phabricator.services.mozilla.com/D34433

--HG--
extra : rebase_source : f4b8c03e0dde5b96e2e848892623e6f88a365095
2019-06-04 22:53:09 +01:00
Botond Ballo c210aca308 Bug 1558276 - Make layers.dump and layers.dump-host-layers synonyms. r=kats
Now they both work in opt builds, and they both work with advanced layers.

For consistency, layers.dump-client-layers is also modified to work in
opt builds.

Differential Revision: https://phabricator.services.mozilla.com/D34413

--HG--
extra : moz-landing-system : lando
2019-06-10 20:34:34 +00:00
Jonathan Watt 9ff8f044a3 Bug 1558071. Rename nsIWebBrowserPrint.printPreviewNavigate to printPreviewScrollToPage. r=bobowen
Differential Revision: https://phabricator.services.mozilla.com/D34297

--HG--
extra : rebase_source : 58343bee2ce7e2761fcc93b8e842051a14cf3684
extra : amend_source : ff72ab52d1274f0bcfad59f30c43364af05a0310
2019-06-03 12:48:21 +01:00
Jonathan Watt 02015da744 Bug 1558072. Inline the nsDocumentViewer::ReturnToGalleyPresentation code to its single caller. r=bobowen
Differential Revision: https://phabricator.services.mozilla.com/D34296

--HG--
extra : rebase_source : 51d3d47d6c2e24ae49247cc8496afa5924ab9eda
extra : amend_source : 6cdc328683a450001ca50f783c803d865483e219
2019-06-03 10:10:42 +01:00
Emilio Cobos Álvarez 95bca607dd Bug 1487216 - Measure memory usage of RDL. r=mattwoodrow,miko
For now I added everything to the same bucket, but I wrote this so it should be
easy to add more buckets as needed (either to mArenaSizes, or more specific ones
like the style system has). But this is probably enough for now.

Differential Revision: https://phabricator.services.mozilla.com/D34126

--HG--
extra : moz-landing-system : lando
2019-06-09 22:58:24 +00:00
Brindusan Cristian e97b017e63 Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-06-10 00:47:15 +03:00
Matt Woodrow ff1b844924 Bug 1554832 - Only force a default background color for the cross-process root content document. r=rhunt
Depends on D34099

Differential Revision: https://phabricator.services.mozilla.com/D34100

--HG--
extra : moz-landing-system : lando
2019-06-07 15:24:59 +00:00
Matt Woodrow 93d89e035e Bug 1554832 - Check only for in process content documents in AssumeAllFramesVisible. r=tnikkel
Depends on D34098

Differential Revision: https://phabricator.services.mozilla.com/D34099

--HG--
extra : moz-landing-system : lando
2019-06-07 06:59:02 +00:00
Matt Woodrow bf2de70741 Bug 1554832 - Add versions of nsPresContext::IsRootContentDocument to specify whether you want to consider OOP parent documents. r=rhunt
Differential Revision: https://phabricator.services.mozilla.com/D34098

--HG--
extra : moz-landing-system : lando
2019-06-07 15:24:47 +00:00
Jonathan Kew a2f7229746 Bug 1553874 - Add crashtest. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D34246

--HG--
extra : moz-landing-system : lando
2019-06-08 18:42:30 +00:00
Boris Zbarsky 4fcc4016bd Bug 1557905. Stop using [array] in nsIFontEnumerator. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D34265

--HG--
extra : moz-landing-system : lando
2019-06-08 08:50:47 +00:00
Jonathan Watt 88526e9eac Bug 1557878. Replace nsIWebBrowserPrint::enumerateDocumentNames with a getter for the top document's name. r=bobowen
Differential Revision: https://phabricator.services.mozilla.com/D34260

--HG--
extra : rebase_source : cbac94e78d57371ec1f4bdfcd1739367fb79f864
2019-05-30 11:43:16 +01:00
Jonathan Watt 09d6c311f9 Bug 1557681. Rename nsPrintJob::Cancelled() to Cancel(). r=bobowen
"Cancelled" sounds like it's a query and should return a bool.  In fact this
method sets state in response to a nsIWebBrowserPrint.cancel() being called.

Differential Revision: https://phabricator.services.mozilla.com/D34137

--HG--
extra : rebase_source : 97797d906b84ed18a258881a31722179d50943f7
extra : amend_source : c0e1b61f13b2a8ccaec7cc995841948deabbe041
2019-05-29 07:14:46 +01:00
Bob Owen 049e2169cc Bug 1464032 Part 5: Make sure the DrawTarget can create a similar DrawTarget when falling back to empty surface. r=mstange
Otherwise, we crash in the content process when we try to record this.
2018-12-02 14:14:19 +00:00
Miko Mynttinen 9bf262cb7f Bug 1490404 - Part 3: Move debug logging out from nsLayoutUtils::PaintFrame() r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D33681

--HG--
extra : moz-landing-system : lando
2019-06-06 17:54:16 +00:00
Miko Mynttinen 6c57050ada Bug 1490404 - Part 2: Add retained display list statistics r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D33680

--HG--
extra : moz-landing-system : lando
2019-06-06 17:54:14 +00:00
Miko Mynttinen fbfcf25cc9 Bug 1490404 - Part 1: Be more consistent with display list and display list builder pointers and references r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D33679

--HG--
extra : moz-landing-system : lando
2019-06-06 17:54:13 +00:00
shindli 3caa33a7ea Merge inbound to mozilla-central. a=merge 2019-06-06 12:57:52 +03:00
Masayuki Nakano a8f6531a1b Bug 1555645 - Make PresShell::EventHandler::MaybeFlushThrottledStyles() stop handling it when the PresShell does not have root PreShell nor Document r=smaug
The crash reports just tell us that the crash occur due to referring around
address 0 in `PresShell::EventHandler::MaybeFlushThrottledStyles()`.
Therefore, I'm not sure which is the actual reason of the crashes though,
this patch makes it null-check root `PresShell` and its `Document` before
accessing the latter.

Differential Revision: https://phabricator.services.mozilla.com/D33735

--HG--
extra : moz-landing-system : lando
2019-06-05 09:28:53 +00:00
Ting-Yu Lin ed3d08542c Bug 1549267 Part 2 - Improve comments in LayoutConstants.h. r=mats
Differential Revision: https://phabricator.services.mozilla.com/D31697

--HG--
extra : moz-landing-system : lando
2019-06-06 00:04:19 +00:00
Ting-Yu Lin 3a4933eb98 Bug 1549267 Part 1 - Remove NS_INTRINSICSIZE and NS_AUTOHEIGHT. r=mats
This patch is generated by the following steps.

1) Manually delete NS_INTRINSICSIZE and NS_AUTOHEIGHT in LayoutConstants.

2) Run the following script.
```
  #!/bin/bash
  function rename() {
      find .\
           -type f\
           ! -path "./obj*"\
           ! -path "./.git"\
           ! -path "./.hg"\
           \( -name "*.cpp" -or\
              -name "*.h" \)\
              -exec sed -i -e "s/$1/$2/g" "{}" \;
  }

  rename NS_INTRINSICSIZE NS_UNCONSTRAINEDSIZE
  rename NS_AUTOHEIGHT NS_UNCONSTRAINEDSIZE
```

3) ./mach clang-format

Differential Revision: https://phabricator.services.mozilla.com/D31696

--HG--
extra : moz-landing-system : lando
2019-06-04 23:41:20 +00:00
Jonathan Watt 5cd2b5b11e Bug 1557104. Merge nsIPageSequenceFrame and nsSimplePageSequenceFrame. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D33817

--HG--
rename : layout/generic/nsSimplePageSequenceFrame.cpp => layout/generic/nsPageSequenceFrame.cpp
rename : layout/generic/nsSimplePageSequenceFrame.h => layout/generic/nsPageSequenceFrame.h
extra : rebase_source : e75b043af4dbfe4c108f2bfc0e234fd20c5af315
2019-05-22 13:01:33 +01:00
Mihai Alexandru Michis c70fbfe90e Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2019-06-05 18:56:22 +03:00
Mihai Alexandru Michis d07d090c31 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2019-06-05 12:59:10 +03:00
Mihai Alexandru Michis 153172de0c Merge inbound to mozilla-central. a=merge 2019-06-05 12:51:25 +03:00
sotaro 3d0c73c202 Bug 1537586 - Address build failure with --disable-printing r=bobowen,froydnj
Make nsIWebBrowserPrint included unconditionally for addressing nsIDocShell.rs build failure.

Remove direct_call of PPrinting and PRemotePrintJob. Their ipdl are built unconditionally, but their derived classes are not built with --disable-printing.

Differential Revision: https://phabricator.services.mozilla.com/D33391

--HG--
extra : moz-landing-system : lando
2019-06-05 01:25:36 +00:00
Brian Grinstead af79f6a5c1 Bug 1556857 - Return true in AttributeChangeRequiresSubtreeRestyle whenever lwtheme attrs change in any chrome doc, not just those with XUL document elements r=emilio
In preparation for an <html> root node in browser.xhtml, we need to react to lwtheme changes correctly.

Differential Revision: https://phabricator.services.mozilla.com/D33693

--HG--
extra : source : afa5d3807c8b5810203718e158fa4b185e109f55
2019-06-04 20:43:51 +00:00
Daniel Varga 667d23bec1 Backed out changeset afa5d3807c8b (bug 1556857) for mochitest failure at builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/RefPtr.h:268. On a CLOSED TREE 2019-06-05 02:24:07 +03:00
Brian Grinstead 77639078e9 Bug 1556857 - Return true in AttributeChangeRequiresSubtreeRestyle whenever lwtheme attrs change in any chrome doc, not just those with XUL document elements r=emilio
In preparation for an <html> root node in browser.xhtml, we need to react to lwtheme changes correctly.

Differential Revision: https://phabricator.services.mozilla.com/D33693

--HG--
extra : moz-landing-system : lando
2019-06-04 20:43:51 +00:00
Neil Deakin 302fa305ad Bug 1519948, remove XUL box objects, r=bzbarsky
--HG--
extra : rebase_source : 4af617fecf06512aed5882831e64e38d4e7e5e94
2019-06-04 12:45:55 -04:00
Mihai Alexandru Michis 09cd19a7b2 Backed out 4 changesets (bug 1555511) for devtools failures at browser_viewport_resizing_minimum_scale.js CLOSED TREE
Backed out changeset 80b9b4eb8305 (bug 1555511)
Backed out changeset d9ce18a4d7cd (bug 1555511)
Backed out changeset 5e9e587d0622 (bug 1555511)
Backed out changeset 24e136f27469 (bug 1555511)
2019-06-04 12:43:01 +03:00
Andrea Marchesini f4c9f068fa Bug 1554847 - Improve cross-origin checks in canvas API - consider intermediate redirects, r=jya
Differential Revision: https://phabricator.services.mozilla.com/D32792

--HG--
extra : moz-landing-system : lando
2019-06-04 06:32:37 +00:00
Brad Werth e2cac68fa2 Bug 1555511 Part 2: Remove a float division in MVM::ScaleZoomWithDisplayWidth. r=botond
This is a drive-by fix to turn a division into a multiplication. It also
is more correct in that the existing code attempts a divide-by-zero if
aNewViewport.width is zero. The updated code will instead return a zoom
of zero in such a case.

Differential Revision: https://phabricator.services.mozilla.com/D32909

--HG--
extra : moz-landing-system : lando
2019-06-03 18:28:40 +00:00
Brad Werth 256c9b4b38 Bug 1555511 Part 1: Make MVM::UpdateResolution clamp viewport zoom for the new display size later in the calculation. r=botond
The existing math is attempting to adjust the display scale ratio to
prevent the new size from landing outside the min/max zoom bounds. This
introduces unwanted side effects that can be avoided by simply clamping
to min/max at the end. The remaining math correctly handles the case
where the zoom has ALREADY been clamped, which is the only important
case.

Differential Revision: https://phabricator.services.mozilla.com/D32908

--HG--
extra : moz-landing-system : lando
2019-06-03 18:28:34 +00:00
Coroiu Cristina 73edc6621b Backed out 4 changesets (bug 1554847) for wpt failures at /service-workers/service-worker/fetch-canvas-tainting-video-cache.https.html
Backed out changeset 17e36d139ac2 (bug 1554847)
Backed out changeset 101bd1c2d688 (bug 1554847)
Backed out changeset 3ff9a221f3e5 (bug 1554847)
Backed out changeset 946e4d9420dd (bug 1554847)
2019-06-04 03:24:42 +03:00
Andrea Marchesini 8df66534cf Bug 1554847 - Improve cross-origin checks in canvas API - consider intermediate redirects, r=jya
Differential Revision: https://phabricator.services.mozilla.com/D32792

--HG--
extra : moz-landing-system : lando
2019-06-03 09:54:43 +00:00
Gurzau Raul aea781583c Backed out 4 changesets (bug 1555511) for failing at browser_viewport_resizing_minimum_scale.js
Backed out changeset 6988b151bbe7 (bug 1555511)
Backed out changeset aa1c32a38785 (bug 1555511)
Backed out changeset 999f3af17edf (bug 1555511)
Backed out changeset 1069871269f7 (bug 1555511)
2019-06-03 03:25:58 +03:00
Andreea Pavel 1ba1047f8f Merge mozilla-inbound to mozilla-central. a=merge 2019-06-03 01:09:50 +03:00
Brad Werth 2c084a33fd Bug 1555511 Part 2: Remove a float division in MVM::ScaleZoomWithDisplayWidth. r=botond
This is a drive-by fix to turn a division into a multiplication. It also
is more correct in that the existing code attempts a divide-by-zero if
aNewViewport.width is zero. The updated code will instead return a zoom
of zero in such a case.

Differential Revision: https://phabricator.services.mozilla.com/D32909

--HG--
extra : moz-landing-system : lando
2019-05-31 22:10:59 +00:00
Brad Werth 8c5b5937fe Bug 1555511 Part 1: Make MVM::UpdateResolution clamp viewport zoom for the new display size later in the calculation. r=botond
The existing math is attempting to adjust the display scale ratio to
prevent the new size from landing outside the min/max zoom bounds. This
introduces unwanted side effects that can be avoided by simply clamping
to min/max at the end. The remaining math correctly handles the case
where the zoom has ALREADY been clamped, which is the only important
case.

Differential Revision: https://phabricator.services.mozilla.com/D32908

--HG--
extra : moz-landing-system : lando
2019-05-31 22:10:28 +00:00
Cameron McCormack faf479d778 Bug 1553731 - Part 1: Rename nsFrameIdList.h to FrameIdList.h. r=mats
Differential Revision: https://phabricator.services.mozilla.com/D32603

--HG--
rename : layout/generic/nsFrameIdList.h => layout/generic/FrameIdList.h
extra : moz-landing-system : lando
2019-06-01 08:03:32 +00:00
Cosmin Sabou b93ad0326f Backed out 3 changesets (bug 1553731) for build bustages on nsIFrame.h CLOSED TREE
Backed out changeset 90ed9808e1c0 (bug 1553731)
Backed out changeset b8669aa5a820 (bug 1553731)
Backed out changeset 0d0bf5d84a3c (bug 1553731)

--HG--
rename : layout/generic/FrameIdList.h => layout/generic/nsFrameIdList.h
2019-06-01 04:23:49 +03:00
Cameron McCormack c4adc9d346 Bug 1553731 - Part 1: Rename nsFrameIdList.h to FrameIdList.h. r=mats
Differential Revision: https://phabricator.services.mozilla.com/D32603

--HG--
rename : layout/generic/nsFrameIdList.h => layout/generic/FrameIdList.h
extra : moz-landing-system : lando
2019-06-01 01:04:44 +00:00
Cameron McCormack 112bcc43db Bug 1554461 - Use an array to store nsContinuationStates when the number of them is low. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D32617

--HG--
extra : moz-landing-system : lando
2019-05-31 11:42:42 +00:00
Emilio Cobos Álvarez 6917a38081 Bug 1555216 - Change the signature of BindToTree to be (BindContext&, nsINode& aParentNode). r=bzbarsky
BindContext was going to have way more information at first, but then I realized
that most of the things I wanted to know were basically a flag away using the
parent node.

Still I think it's worth it, now experimenting with BindToTree will only mean
adding a field to a struct that's included from a couple cpp files, instead of a
massive pain.

I also think this is clearer, and doing this highlights quite a few
inconsistencies in our code which I've left untouched, but commented with
FIXMEs.

Steps are:

$ for file in $(rg 'nsresult BindToTree\(' | cut -d : -f 1 | sort | uniq); do sed -i 's#nsresult BindToTree(Document\* aDocument, nsIContent\* aParent,#nsresult BindToTree(BindContext\&, nsINode\& aParent)#g' $file; done
$ for file in $(rg 'nsresult BindToTree\(' | cut -d : -f 1 | sort | uniq); do sed -i 's#                      nsIContent\* aBindingParent) override#override#g' $file; done
$ for file in $(rg '::BindToTree\(' | cut -d : -f 1 | sort | uniq); do sed -i 's#::BindToTree(Document\* aDocument, nsIContent\* aParent,#::BindToTree(BindContext\& aContext, nsINode\& aParent)#g' $file; done
$ for file in $(rg '::BindToTree\(' | cut -d : -f 1 | sort | uniq); do sed -i 's#nsIContent\* aBindingParent)##g' $file; done
$ for file in $(rg '::BindToTree\(' | cut -d : -f 1 | sort | uniq); do sed -i 's#::BindToTree(aDocument, aParent, aBindingParent)#::BindToTree(aContext, aParent)#g' $file; done
$ ./mach clang-format

Then manual fixups.

Depends on D32948

Differential Revision: https://phabricator.services.mozilla.com/D32949
2019-05-31 23:31:52 +02:00
Ehsan Akhgari a9e9f5ccdb Bug 1415270 - Part 1: Move nsHTMLDocument editing APIs to Document; r=farre,masayuki
Differential Revision: https://phabricator.services.mozilla.com/D32911

--HG--
extra : moz-landing-system : lando
2019-05-31 01:37:26 +00:00
Ryan Hunt e7da3a1bef Bug 1519546, part 7 - Gather EffectsInfo for remote browsers in a paint and apply them. r=mattwoodrow
WebRender support will be finished in the following commit.

Differential Revision: https://phabricator.services.mozilla.com/D32476

--HG--
extra : rebase_source : f40ab9946e946d137aa2522f9fce0aa268e22937
extra : intermediate-source : ea63d3d6b85fd3c4456275638e968e0eed045b37
extra : source : 79be6c27e0f9e262b75723c120786e2256ee4700
2019-05-24 09:28:23 -05:00
Jonathan Watt 39945059b3 Bug 1552785. Remove printing related isFramesetDocument and isFramesetFrameSelected code. r=bobowen
Differential Revision: https://phabricator.services.mozilla.com/D33696

--HG--
extra : rebase_source : 2e7f854a808059b4955ffaad425fe8b68263883e
2019-05-21 23:25:57 +01:00
Brad Werth 80409f33ea Bug 1555511 Part 2: Remove a float division in MVM::ScaleZoomWithDisplayWidth. r=botond
This is a drive-by fix to turn a division into a multiplication. It also
is more correct in that the existing code attempts a divide-by-zero if
aNewViewport.width is zero. The updated code will instead return a zoom
of zero in such a case.

Differential Revision: https://phabricator.services.mozilla.com/D32909

--HG--
extra : rebase_source : 83ab76092596d7feda11f66d83c022d3d1e4acd3
extra : source : 2a85e3af81bbe475217ecdf16ce7c5a1a7985a21
2019-06-04 22:25:06 +00:00
Brad Werth b376db90f4 Bug 1555511 Part 1: Make MVM::UpdateResolution clamp viewport zoom for the new display size later in the calculation. r=botond
The existing math is attempting to adjust the display scale ratio to
prevent the new size from landing outside the min/max zoom bounds. This
introduces unwanted side effects that can be avoided by simply clamping
to min/max at the end. The remaining math correctly handles the case
where the zoom has ALREADY been clamped, which is the only important
case.

Differential Revision: https://phabricator.services.mozilla.com/D32908

--HG--
extra : rebase_source : 3767a50a7d88ceced7b0b3d5979020296f91d7a2
extra : source : 262d2cad64079c343e35b757ac642b231d50e0df
2019-06-04 22:23:47 +00:00
Ting-Yu Lin 55c5622538 Bug 1555823 - Remove bug 1323652 annotations from crashtest.lists. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D33213

--HG--
extra : moz-landing-system : lando
2019-05-30 22:18:01 +00:00
Boris Zbarsky d2959ecb98 Bug 1553018 part 2. Make various gfx preferences bindings use in Pref annotations on interfaces follow the StaticPrefs naming convention for getters. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D32943

--HG--
extra : moz-landing-system : lando
2019-05-30 17:21:57 +00:00
Emilio Cobos Álvarez a384dedd93 Bug 1552708 - Use cbindgen for URIs. r=heycam
This doesn't clean up as much as a whole, but it's a step in the right
direction. In particular, it allows us to start using simple bindings for:

 * Filters
 * Shapes and images, almost. Need to:
   * Get rid of the complex -moz- gradient parsing (let
     layout.css.simple-moz-gradient.enabled get to release).
 * Counters, almost. Need to:
   * Share the Attr representation with Gecko, by not using Option<>.
     * Just another variant should be enough (ContentItem::{Attr,Prefixedattr},
       maybe).

Which in turn allows us to remove a whole lot of bindings in followups to this.

The setup changes a bit. This also removes the double pointer I complained about
while reviewing the shared UA sheet patches. The old setup is:

```
SpecifiedUrl
 * CssUrl
   * Arc<CssUrlData>
     * String
     * UrlExtraData
 * UrlValueSource
   * Arc<CssUrlData>
   * load id
   * resolved uri
   * CORS mode.
   * ...
```

The new one removes the double reference to the url data via URLValue, and looks
like:

```
SpecifiedUrl
 * CssUrl
   * Arc<CssUrlData>
     * String
     * UrlExtraData
     * CorsMode
     * LoadData
       * load id
       * resolved URI
```

The LoadData is the only mutable bit that C++ can change, and is not used from
Rust. Ideally, in the future, we could just use rust-url to resolve the URL
after parsing or something, and make it all immutable. Maybe.

I've verified that this approach still works with the UA sheet patches (via the
LoadDataSource::Lazy).

The reordering of mWillChange is to avoid nsStyleDisplay from going over the
size limit. We want to split it up anyway in bug 1552587, but mBinding gains a
tag member, which means that we were having a bit of extra padding.

One thing I want to explore is to see if we can abuse rustc's non-zero
optimizations to predict the layout from C++, but that's something to explore at
some other point in time and with a lot of care and help from Michael (who sits
next to me and works on rustc ;)).

Differential Revision: https://phabricator.services.mozilla.com/D31742
2019-05-29 21:22:04 +02:00
Mark Banner c270f7d551 Bug 1554224 - Enable some ESLint rules for more of layout/. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D32496

--HG--
extra : moz-landing-system : lando
2019-05-29 10:50:49 +00:00
Edgar Chen 33d303678c Bug 1543439 - Part 2: Move is-user-interaction checks out of PresShell::EventHandler::PrepareToDispatchEvent; r=masayuki
Differential Revision: https://phabricator.services.mozilla.com/D32019

--HG--
extra : moz-landing-system : lando
2019-05-27 10:14:06 +00:00
Edgar Chen 4b1ff2f791 Bug 1543439 - Part 1: Move special handling for MouseDown/Up event out of AutoHandlingUserInputStatePusher; r=masayuki
PresShell::EventHandler::HandleEventWithCurrentEventInfo is the only possible
place will do such handling; other places pass either a nullptr or a
non-MouseDown/Up event.

Differential Revision: https://phabricator.services.mozilla.com/D32431

--HG--
extra : moz-landing-system : lando
2019-05-29 07:48:16 +00:00
Botond Ballo 9ef9fc2fd8 Bug 1554794 - Add PresShell::UsesMobileViewportSizing() and use it in place of GetIsViewportOverridden() where appropriate. r=kats,hiro
With desktop zooming, we need to separate the concepts of "may have a distinct
visual viewport" from "has mobile viewport sizing logic applied to it".

This can be thought of as completing the disentanglement of zooming from meta
viewport support started in bug 1459260.

Differential Revision: https://phabricator.services.mozilla.com/D32770

--HG--
extra : moz-landing-system : lando
2019-05-28 13:31:59 +00:00
Brindusan Cristian 40a5b04ab5 Backed out 3 changesets (bug 1552708, bug 1552878) for build bustages and compiler issues. CLOSED TREE
Backed out changeset 9d4f178bfcbd (bug 1552878)
Backed out changeset 80db9f845237 (bug 1552708)
Backed out changeset 1bdbfbb5b342 (bug 1552708)
2019-05-27 17:00:03 +03:00
Emilio Cobos Álvarez f2190857bb Bug 1552708 - Use cbindgen for URIs. r=heycam
This doesn't clean up as much as a whole, but it's a step in the right
direction. In particular, it allows us to start using simple bindings for:

 * Filters
 * Shapes and images, almost. Need to:
   * Get rid of the complex -moz- gradient parsing (let
     layout.css.simple-moz-gradient.enabled get to release).
 * Counters, almost. Need to:
   * Share the Attr representation with Gecko, by not using Option<>.
     * Just another variant should be enough (ContentItem::{Attr,Prefixedattr},
       maybe).

Which in turn allows us to remove a whole lot of bindings in followups to this.

The setup changes a bit. This also removes the double pointer I complained about
while reviewing the shared UA sheet patches. The old setup is:

```
SpecifiedUrl
 * CssUrl
   * Arc<CssUrlData>
     * String
     * UrlExtraData
 * UrlValueSource
   * Arc<CssUrlData>
   * load id
   * resolved uri
   * CORS mode.
   * ...
```

The new one removes the double reference to the url data via URLValue, and looks
like:

```
SpecifiedUrl
 * CssUrl
   * Arc<CssUrlData>
     * String
     * UrlExtraData
     * CorsMode
     * LoadData
       * load id
       * resolved URI
```

The LoadData is the only mutable bit that C++ can change, and is not used from
Rust. Ideally, in the future, we could just use rust-url to resolve the URL
after parsing or something, and make it all immutable. Maybe.

I've verified that this approach still works with the UA sheet patches (via the
LoadDataSource::Lazy).

The reordering of mWillChange is to avoid nsStyleDisplay from going over the
size limit. We want to split it up anyway in bug 1552587, but mBinding gains a
tag member, which means that we were having a bit of extra padding.

One thing I want to explore is to see if we can abuse rustc's non-zero
optimizations to predict the layout from C++, but that's something to explore at
some other point in time and with a lot of care and help from Michael (who sits
next to me and works on rustc ;)).

Differential Revision: https://phabricator.services.mozilla.com/D31742

--HG--
extra : moz-landing-system : lando
2019-05-27 11:45:12 +00:00
Jean-Yves Avenard 022c57caf3 Bug 1550422 - P23. Remove now unused gfxPrefs. r=jrmuizel
And with some tidying some comments and removing stray #include "gfxPrefs.h"

Differential Revision: https://phabricator.services.mozilla.com/D31468

--HG--
extra : moz-landing-system : lando
2019-05-26 14:31:53 +00:00
Jean-Yves Avenard 23436e1811 Bug 1550422 - P15. Move Skip and Once gfxPrefs to StaticPrefs. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D31259

--HG--
extra : moz-landing-system : lando
2019-05-26 14:30:14 +00:00
Jean-Yves Avenard 04a34db033 Bug 1550422 - P12. Convert Live gfxPrefs into StaticPrefs. r=jrmuizel
gfxPrefs Live preferences are almost identical to StaticPrefs.

We leave aside for now those that set a custom change callback as this feature isn't yet supported in StaticPrefs.

Differential Revision: https://phabricator.services.mozilla.com/D31256

--HG--
extra : moz-landing-system : lando
2019-05-26 14:29:42 +00:00
Sylvestre Ledru d57d4905f1 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D30883

--HG--
extra : moz-landing-system : lando
2019-05-25 17:46:15 +00:00
Gurzau Raul 967bc2a754 Backed out 31 changesets (bug 1552643, bug 1550422) for xpcshell crash on a CLOSED TREE.
Backed out changeset e30c1aa75529 (bug 1552643)
Backed out changeset caadcd7e02d3 (bug 1552643)
Backed out changeset aa7086ab09be (bug 1552643)
Backed out changeset 0b4029671710 (bug 1550422)
Backed out changeset a16295296035 (bug 1550422)
Backed out changeset 3b70307c0db5 (bug 1550422)
Backed out changeset 69df7818d4a3 (bug 1550422)
Backed out changeset d98dfc565927 (bug 1550422)
Backed out changeset 6f0997976944 (bug 1550422)
Backed out changeset 0edd264464c2 (bug 1550422)
Backed out changeset 9ea6da7a74ec (bug 1550422)
Backed out changeset f855f9309c8b (bug 1550422)
Backed out changeset 1033546224a7 (bug 1550422)
Backed out changeset ade7384c6186 (bug 1550422)
Backed out changeset 75b04de7e99c (bug 1550422)
Backed out changeset 91c3acdb2454 (bug 1550422)
Backed out changeset 77d2f80257d1 (bug 1550422)
Backed out changeset e0cd10d35327 (bug 1550422)
Backed out changeset 097091082423 (bug 1550422)
Backed out changeset 2f328853c1ab (bug 1550422)
Backed out changeset f92f2cc29cb1 (bug 1550422)
Backed out changeset 6dc82f88333d (bug 1550422)
Backed out changeset c20f66494d69 (bug 1550422)
Backed out changeset 2ba22cddeb6f (bug 1550422)
Backed out changeset 3aa72f89e295 (bug 1550422)
Backed out changeset ab4c4e806977 (bug 1550422)
Backed out changeset 72e5de040dda (bug 1550422)
Backed out changeset 7d3c2d486706 (bug 1550422)
Backed out changeset 132e0b8d8468 (bug 1550422)
Backed out changeset 54c85ac75dd0 (bug 1550422)
Backed out changeset d7ba4a18dd54 (bug 1550422)
2019-05-25 09:07:49 +03:00
Jean-Yves Avenard 074aea57fe Bug 1550422 - P23. Remove now unused gfxPrefs. r=jrmuizel
And with some tidying some comments and removing stray #include "gfxPrefs.h"

Differential Revision: https://phabricator.services.mozilla.com/D31468

--HG--
extra : moz-landing-system : lando
2019-05-24 11:37:50 +00:00
Jean-Yves Avenard 8d5f292ab5 Bug 1550422 - P15. Move Skip and Once gfxPrefs to StaticPrefs. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D31259

--HG--
extra : moz-landing-system : lando
2019-05-24 11:32:54 +00:00
Jean-Yves Avenard af5790cf9b Bug 1550422 - P12. Convert Live gfxPrefs into StaticPrefs. r=jrmuizel
gfxPrefs Live preferences are almost identical to StaticPrefs.

We leave aside for now those that set a custom change callback as this feature isn't yet supported in StaticPrefs.

Differential Revision: https://phabricator.services.mozilla.com/D31256

--HG--
extra : moz-landing-system : lando
2019-05-25 00:03:32 +00:00
Brindusan Cristian fd5a4a259a Merge inbound to mozilla-central. a=merge 2019-05-25 00:49:05 +03:00
Edgar Chen 800499a9f9 Bug 1554122 - Rename nsAutoPopupStatePusher* to AutoPopupStatePusher; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D32457

--HG--
extra : moz-landing-system : lando
2019-05-24 12:42:29 +00:00
Mihai Alexandru Michis 35449f0689 Backed out changeset e52d041dc3de (bug 1553378) for causing build bustages in ContentEventHandler.cpp. CLOSED TREE
--HG--
extra : amend_source : 36025186ca5788f5889ff7d97252900eefab0a36
2019-05-24 14:32:27 +03:00
arthur.iakab af8e458c5f Backed out changeset a296439a25ff (bug 1519636) for frequent Windows cppunit failures CLOSED TREE 2019-05-24 14:26:01 +03:00
Cameron McCormack 5bed2b0138 Bug 1553378 - Devirtualize calls to GetText() / TextLength() when we know we have a Text node. r=smaug,jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D32100

--HG--
extra : moz-landing-system : lando
2019-05-24 08:10:55 +00:00
Sylvestre Ledru c82ea97226 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D30883

--HG--
extra : moz-landing-system : lando
2019-05-24 09:59:17 +00:00
Boris Chiou 3b51b642f3 Bug 1429301 - Implement offset-rotate. r=emilio
This includes style system and layout update. I add 3 extra reftests
because the original tests use ray() function as the offset-path, but we
don't support it. It'd be better to add tests using a different type of
offset-path.

The spec issue about the serialization:
https://github.com/w3c/fxtf-drafts/issues/340

Differential Revision: https://phabricator.services.mozilla.com/D32212

--HG--
extra : moz-landing-system : lando
2019-05-24 03:42:03 +00:00
Razvan Maries 234389cf17 Backed out changeset 82b18d61da00 (bug 1553378) for build bustages. CLOSED TREE 2019-05-24 06:50:14 +03:00
Cameron McCormack f5dd691a74 Bug 1553378 - Devirtualize calls to GetText() / TextLength() when we know we have a Text node. r=smaug,jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D32100

--HG--
extra : moz-landing-system : lando
2019-05-24 03:18:44 +00:00
Emilio Cobos Álvarez 980074a5b2 Bug 1544242 - Cleanup selector-matching for nested pseudo-elements, match ::slotted correctly when there's no selector before it, and add tests. r=heycam,mats
D29542 fixed the bogus checks that was making nested pseudo-elements match
author rules. This adds tests and ends up being just a cleanup, though as it
turns out we it also fixes an issue with ::slotted() matched from
Element.matches.

Differential Revision: https://phabricator.services.mozilla.com/D27529

--HG--
extra : moz-landing-system : lando
2019-05-24 01:09:15 +00:00
Daniel Varga af42676c4a Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2019-05-23 18:59:21 +03:00
Daniel Varga 4cbc287f63 Merge mozilla-inbound to mozilla-central. a=merge 2019-05-23 18:54:21 +03:00
Dorel Luca 262d881f83 Backed out 2 changesets (bug 1553772) for Geckoview failures in org.mozilla.geckoview.test.SelectionActionDelegateTest.collapseToStart[#designmode]
Backed out changeset 7286e18fbc17 (bug 1553772)
Backed out changeset 58d40da71355 (bug 1553772)
2019-05-23 18:30:54 +03:00
Emilio Cobos Álvarez c0ba509142 Bug 1553772 - Bug 1549812 - Try to assert a bit harder about stuff not flushing under our nose. r=TYLin,mats
I think these should hold, everything that runs under them should just schedule
other stuff to some later date:

 * Synth mouse events -> scheduled as refresh driver observers.
 * Scroll events -> Scheduled as well.
 * Caret state change events -> Also scheduled after last patch.
 * IME and accessibility stuff -> I don't think they can reenter layout.

We can always revert this if it causes troubles, plus it shouldn't crash on
release so should be fine.

Differential Revision: https://phabricator.services.mozilla.com/D31090

--HG--
extra : moz-landing-system : lando
2019-05-23 09:45:56 +00:00
Emilio Cobos Álvarez d9bcd0c1e9 Bug 1553772 - Bug 1549812 - Don't run arbitrary script from AccessibleCaretManager callbacks. r=TYLin
Instead, post the event for the next turn of the event loop.

In this case, what killed the frame is ActionBarHandler.jsm via
Selection.toString().

Depends on D31088

Differential Revision: https://phabricator.services.mozilla.com/D31089

--HG--
extra : moz-landing-system : lando
2019-05-23 09:45:47 +00:00
Gurzau Raul 74c555539e Backed out 28 changesets (bug 1550422) for marionette AssertionError and failing browser_policy_hardware_acceleration.js on a CLOSED TREE.
Backed out changeset 5dd10a365ba9 (bug 1550422)
Backed out changeset 529f5be01ab9 (bug 1550422)
Backed out changeset b6861d3badf8 (bug 1550422)
Backed out changeset 059cff1a3dde (bug 1550422)
Backed out changeset 6ada1116b241 (bug 1550422)
Backed out changeset ca67e8e45262 (bug 1550422)
Backed out changeset a1961a51ae44 (bug 1550422)
Backed out changeset 1c90b9cb3ad4 (bug 1550422)
Backed out changeset 285fa46e4f26 (bug 1550422)
Backed out changeset e2938a444234 (bug 1550422)
Backed out changeset 7a930fc51125 (bug 1550422)
Backed out changeset 898ed02804fe (bug 1550422)
Backed out changeset e1b7abc99ae9 (bug 1550422)
Backed out changeset f781d415cef6 (bug 1550422)
Backed out changeset 2fef10a7cce5 (bug 1550422)
Backed out changeset ea64b4d8d4ff (bug 1550422)
Backed out changeset 86a8ba1b755c (bug 1550422)
Backed out changeset 9c0c9e80f309 (bug 1550422)
Backed out changeset 10c153ddbaea (bug 1550422)
Backed out changeset 60fe635ec2c9 (bug 1550422)
Backed out changeset a38796266b28 (bug 1550422)
Backed out changeset 2db647dcdf1c (bug 1550422)
Backed out changeset 952ddac02972 (bug 1550422)
Backed out changeset ba46b53643ec (bug 1550422)
Backed out changeset ca47ef6c59f7 (bug 1550422)
Backed out changeset f45f471a1a40 (bug 1550422)
Backed out changeset 371b4da5b771 (bug 1550422)
Backed out changeset 02fc78890032 (bug 1550422)
2019-05-23 05:59:44 +03:00
Jean-Yves Avenard d59781ac33 Bug 1550422 - P23. Remove now unused gfxPrefs. r=jrmuizel
And with some tidying some comments and removing stray #include "gfxPrefs.h"

Differential Revision: https://phabricator.services.mozilla.com/D31468

--HG--
extra : moz-landing-system : lando
2019-05-22 12:46:30 +00:00
Jean-Yves Avenard 2412878bd9 Bug 1550422 - P15. Move Skip and Once gfxPrefs to StaticPrefs. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D31259

--HG--
extra : moz-landing-system : lando
2019-05-22 22:27:37 +00:00
Jean-Yves Avenard 2c0ce1b3ca Bug 1550422 - P12. Convert Live gfxPrefs into StaticPrefs. r=jrmuizel
gfxPrefs Live preferences are almost identical to StaticPrefs.

We leave aside for now those that set a custom change callback as this feature isn't yet supported in StaticPrefs.

Differential Revision: https://phabricator.services.mozilla.com/D31256

--HG--
extra : moz-landing-system : lando
2019-05-22 12:43:42 +00:00
Hiroyuki Ikezoe d3e6eadc70 Bug 1546219 - Rename mScrollSnapType{X,Y} to mScrollSnapStrictness{X,Y}. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D31746

--HG--
extra : moz-landing-system : lando
2019-05-22 17:43:34 +00:00
Emilio Cobos Álvarez 649de5977c Bug 1549812 - ScrollFrameRectIntoView should handle the frame going away. r=mats
ScrollToShowRect already considers that possibility, so not doing it on the
caller is a bug.

Ideally scroll observers shouldn't be able to run script, more to that in a
second.

Differential Revision: https://phabricator.services.mozilla.com/D31088

--HG--
extra : moz-landing-system : lando
2019-05-17 16:33:26 +00:00
Cameron McCormack e82b3826f9 Bug 1553378 - Devirtualize calls to GetText() / TextLength() when we know we have a Text node. r=smaug,jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D32100
2019-05-22 15:18:48 +10:00
Noemi Erli 98ff24cc58 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-05-22 06:45:38 +03:00
Emilio Cobos Álvarez ca59532ce8 Bug 1553227 - Remove old CSS scroll snap implementation. r=hiro
This will save us some time from figuring out what's the best thing to do in
bug 1552587, so that other patches I have in flight (mainly bug 1552708) can
land, since we cannot add a single byte to nsStyleDisplay right now otherwise.

The code removed here is well isolated and not that complicated, so it seems to
me that should be easy to bring back should we have an emergency (and I commit
to doing that while preserving the nsStyleDisplay size limit if we need to :)).

Differential Revision: https://phabricator.services.mozilla.com/D32026

--HG--
extra : moz-landing-system : lando
2019-05-21 22:51:54 +00:00
Emilio Cobos Álvarez 6759592377 Bug 1552719 - Make nsBulletFrame::Ordinal() O(1) again. r=mats
I did this instead of just (ab)using the fact that every list item has at least
one counter-increment node because:

 * I don't have the bullet frame around by the time we initially compute the
   counter increment, which means that I'd need to grow nsBlockFrame / add a
   frame property for the list item ordinal, which I think would be unfortunate.

 * It feels more consistent with the way regular CSS counters work and with the
   way we want ::marker to eventually work.

Differential Revision: https://phabricator.services.mozilla.com/D31990

--HG--
extra : moz-landing-system : lando
2019-05-21 17:30:42 +00:00
Emilio Cobos Álvarez 07adac9c29 Bug 1552719 - Make nsGenConList::NodeAfter handle correctly nested pseudo-elements. r=mats
When you have a ::after::marker, and you compare one against the other we ended
up with the wrong result because of the pseudotype stuff.

I think this is cleaner now that DoCompareTreePosition handles pseudos properly
(which is really the thing this was working around).

Differential Revision: https://phabricator.services.mozilla.com/D31989

--HG--
extra : moz-landing-system : lando
2019-05-21 17:29:26 +00:00
Emilio Cobos Álvarez f6e2bfc64b Bug 1552719 - Make nsLayoutUtils::DoCompareTreePosition handle pseudos more diligently. r=mats
I'm going to need it to fix the counters code in presence of nested
pseudo-elements.

Differential Revision: https://phabricator.services.mozilla.com/D31988

--HG--
extra : moz-landing-system : lando
2019-05-21 17:29:17 +00:00
Emilio Cobos Álvarez 2917763ba5 Bug 1552719 - Do some cleanup in the counter initializer code. r=mats
I thought I was going to need it but turns out I don't. Still this is worth it I
think.

Differential Revision: https://phabricator.services.mozilla.com/D31987

--HG--
extra : moz-landing-system : lando
2019-05-21 17:29:06 +00:00
Razvan Maries fa4ff6f653 Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2019-05-21 12:37:53 +03:00
Daniel Varga f7e7132f8f Merge mozilla-central to mozilla-inbound 2019-05-21 07:22:34 +03:00
Matt Woodrow 42c9b79f0b Bug 1544995 - Always update overflow areas up to the preserve-3d root. r=dbaron
We don't store post-transform overflow areas for frames within preserve-3d, but we do store pre-transform overflow areas.
Rather than just recomputing the changed overflow for the root, we should recompute overflows for all ancestors up to the 3d root.

Differential Revision: https://phabricator.services.mozilla.com/D31213

--HG--
extra : moz-landing-system : lando
2019-05-19 22:39:58 +00:00
Boris Chiou 1842658992 Bug 1429299 - Part 3: Layout update for offset-distance. r=birtles
Just need to take offset-distance into account to get the final matrix.

Differential Revision: https://phabricator.services.mozilla.com/D30583

--HG--
extra : moz-landing-system : lando
2019-05-20 23:42:54 +00:00
Boris Chiou 718aaf17f9 Bug 1429299 - Part 1: Unpack StyleMotion and use cbindgen for OffsetPath. r=emilio
Unpack StyleMotion and move its members into nsStyleDisplay, use
cbindgen to generate StyleOffsetPath.

Differential Revision: https://phabricator.services.mozilla.com/D31164

--HG--
extra : moz-landing-system : lando
2019-05-20 23:42:50 +00:00
Sean Feng 170e44e58f Bug 1534012 - Use a low priority ThrottledEventQueue for postMessages during page load r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D27386

--HG--
extra : moz-landing-system : lando
2019-05-16 19:35:30 +00:00
Brendan Dahl 543c10a1d2 Bug 1551320 - Replace all CreateElement calls in XUL documents with CreateXULElement. r=mossop
Differential Revision: https://phabricator.services.mozilla.com/D31295

--HG--
extra : moz-landing-system : lando
2019-05-20 16:50:28 +00:00
Jonathan Watt 21321fb45e Bug 1552880 p1. Pass a document to nsPrintJob::PrintPreview instead of a window. r=bobowen
This stops nsPrintJob::PrintPreview from duplicating work done in
nsDocumentViewer::PrintPreview.

Differential Revision: https://phabricator.services.mozilla.com/D31811

--HG--
extra : rebase_source : 062cbac323a2a1a0bcc85039b3671c650c408efa
extra : amend_source : 39d5b8c316f518aa72d560ae4eeec171561ab8fd
2019-05-09 10:40:12 +01:00
Brian Birtles 050372ea8e Bug 1253476 - Don't composite removed animations; r=boris
Differential Revision: https://phabricator.services.mozilla.com/D30324

--HG--
extra : moz-landing-system : lando
2019-05-20 05:55:52 +00:00
Brian Birtles 5b145a6de4 Bug 1253476 - Add remove events; r=boris,bzbarsky
This patch introduces the machinery for dispatching remove events but does not
actually cause removing to do anything to the output of the animation beyond
updating its replaceState member.

The expected behavior is defined in:

  https://drafts.csswg.org/web-animations-1/#removing-replaced-animations

And the corresponding IDL members are defined in:

  https://drafts.csswg.org/web-animations-1/#animation
  https://drafts.csswg.org/web-animations-1/#enumdef-animationreplacestate

Tests for these events are added in the next patch in this series.

Differential Revision: https://phabricator.services.mozilla.com/D30322

--HG--
extra : moz-landing-system : lando
2019-05-20 05:48:29 +00:00
Brian Birtles 25c05a66db Bug 1253476 - Run microtask checkpoint for updating timing after updating all timelines; r=hiro
According to the procedure to update animations and send events[1] the UA should
update all timelines first and _then_ run a microtask checkpoint.

As a result, when we run callbacks for the finished promise on an Animation they
should see the fully up-to-date state of all animations, regardless of which
timeline they are attached to.

However, that is currently not the case since we run a microtask checkpoint
after updating each individual timeline.

This difference will become more significant later in this patch series when we
introduce another step--removing replaced animations--that _also_ should happen
before we run the microtask checkpoint (so that the promise callbacks always see
a fully-up-to-date state).

This patch makes our handling a little more in line with the spec. It's not
quite the same because it's possible there may be other refresh driver observers
that trigger a microtask checkpoint in between ticking the different timelines
but that case is expected to be rare and fixing it would require maintaining
a separate queue for timeline observers that we run after all other observers--
so it is probably not necessary to fix that case at this stage.

The test added in this patch fails without the code changes in this patch.

[1] https://drafts.csswg.org/web-animations-1/#update-animations-and-send-events

Differential Revision: https://phabricator.services.mozilla.com/D30319

--HG--
extra : moz-landing-system : lando
2019-05-20 05:22:03 +00:00
Emilio Cobos Álvarez f4c39907e0 Bug 1552628 - Remove some more dead nsCSSValue code. r=xidorn
Most of it is not used at this point, this leaves the parts that are used by
MathML, which are minimal.

Differential Revision: https://phabricator.services.mozilla.com/D31706

--HG--
extra : moz-landing-system : lando
2019-05-19 00:47:18 +00:00
Miko Mynttinen 049dbbcc2c Bug 1529698 - Part 4: Add nsDisplayContainer r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D30840

--HG--
extra : moz-landing-system : lando
2019-05-18 20:11:42 +00:00
Jonathan Watt 369d066b0e Bug 1552478. Stop printpreview_bug396024_helper.xul creating a print preview viewer in a normal document window. r=bobowen
Differential Revision: https://phabricator.services.mozilla.com/D31613

--HG--
extra : rebase_source : 5c3d6ca99d38dd9e827c71cb18a8c0f31be883b5
2019-05-07 23:58:30 +01:00
Jonathan Watt f3060a6671 Bug 1552449. Make the nsIDocShell interface to print preview less susceptible to inadvertent misuse. r=bobowen
Differential Revision: https://phabricator.services.mozilla.com/D31598

--HG--
extra : rebase_source : 843908736fcaaab29bd16033d1c077850423521a
2019-05-07 14:12:44 +01:00
Timothy Nikkel d205113458 Bug 1552104. Need to clear display items when we remove a document from the view tree but it sticks around. r=mattwoodrow
This happens in one test on try server that has some iframes that navigate.

I audited everywhere else that we change the view tree, this seems like the only place it can happen.

Differential Revision: https://phabricator.services.mozilla.com/D31399

--HG--
extra : moz-landing-system : lando
2019-05-16 21:14:19 +00:00
Emilio Cobos Álvarez 0b89333979 Bug 1550554 - Use OwnedSlice for will-change. r=heycam
We could use ArcSlice if wanted I guess, your call. Though will change is not
supposed to be used very frequently.

Differential Revision: https://phabricator.services.mozilla.com/D30548

--HG--
extra : moz-landing-system : lando
2019-05-16 23:23:28 +00:00
Emilio Cobos Álvarez 987519e4da Bug 1550554 - Add bindings for box shadows, and remove nsCSSShadowArray and friends. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D30547

--HG--
extra : moz-landing-system : lando
2019-05-16 23:04:32 +00:00
Emilio Cobos Álvarez a4ef6a3540 Bug 1550554 - Use ArcSlice for quotes. r=heycam
This saves the intermediate allocation.

Differential Revision: https://phabricator.services.mozilla.com/D30546

--HG--
extra : moz-landing-system : lando
2019-05-16 23:04:31 +00:00
Csoregi Natalia 60874606d0 Merge mozilla-central to autoland. CLOSED TREE 2019-05-17 00:58:59 +03:00
Jonas Allmann 50275c5d2b Bug 1549326 - Remove simpletest.js from eval()-whitelist, r=ckerschb
Amend several test files for triggering eval() assertion through simpletest.js

Differential Revision: https://phabricator.services.mozilla.com/D30474

--HG--
extra : moz-landing-system : lando
2019-05-16 13:44:36 +00:00
Ciure Andrei 00a73f5055 Backed out 17 changesets (bug 1550554, bug 1549593, bug 1551991, bug 1529002) for failing multiple Android tests and Windows 2012 bustages CLOSED TREE
Backed out changeset 3bb3fafa62e2 (bug 1551991)
Backed out changeset e12a979de502 (bug 1551991)
Backed out changeset d81e4aa6bf0c (bug 1551991)
Backed out changeset c354e61f2a34 (bug 1551991)
Backed out changeset 37fd602bebc2 (bug 1551991)
Backed out changeset 6c1f00cc30ca (bug 1551991)
Backed out changeset 8a7a0329bdc3 (bug 1551991)
Backed out changeset 86159475ddd3 (bug 1551991)
Backed out changeset 35f91a9ea82a (bug 1529002)
Backed out changeset 6798155e71dc (bug 1529002)
Backed out changeset b90c2cf5b8c5 (bug 1550554)
Backed out changeset 882ab9868c95 (bug 1550554)
Backed out changeset b28a48e2ed21 (bug 1550554)
Backed out changeset 2c31fe18eefd (bug 1550554)
Backed out changeset 57f2362aa538 (bug 1550554)
Backed out changeset 45f171b26e95 (bug 1550554)
Backed out changeset 2e4b263c9410 (bug 1549593)
2019-05-16 13:17:10 +03:00
Ciure Andrei a57772d544 Backed out changeset e6913f1de086 (bug 1552104) for causing test_bug660404.html and test_bug590573.html to perma fail CLOSED TREE 2019-05-16 12:54:55 +03:00
Emilio Cobos Álvarez 6634361c43 Bug 1550554 - Use OwnedSlice for will-change. r=heycam
We could use ArcSlice if wanted I guess, your call. Though will change is not
supposed to be used very frequently.

Differential Revision: https://phabricator.services.mozilla.com/D30548
2019-05-16 16:24:31 +02:00
Emilio Cobos Álvarez 0fe081bb39 Bug 1550554 - Add bindings for box shadows, and remove nsCSSShadowArray and friends. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D30547
2019-05-16 16:24:28 +02:00
Emilio Cobos Álvarez 49f795fd83 Bug 1550554 - Use ArcSlice for quotes. r=heycam
This saves the intermediate allocation.

Differential Revision: https://phabricator.services.mozilla.com/D30546
2019-05-16 16:24:24 +02:00
Timothy Nikkel 0e07abb5d9 Bug 1552104. Need to clear display items when we remove a document from the view tree but it sticks around. r=mattwoodrow
This happens in one test on try server that has some iframes that navigate.

I audited everywhere else that we change the view tree, this seems like the only place it can happen.

Differential Revision: https://phabricator.services.mozilla.com/D31399

--HG--
extra : moz-landing-system : lando
2019-05-16 09:39:03 +00:00
Boris Zbarsky f62f4b6026 Bug 1551652. Stop using [array] in nsILayoutHistoryState. r=heycam
I read through
<https://searchfox.org/mozilla-central/search?q=%5B%5EA-Za-z_%5D%5BGg%5DetKeys%5B%5EA-Za-z_%5D&case=true&regexp=true&path=>
and as far as I can tell the only JS consumer is SessionHistory.jsm, which was
not passing the optional "count" arg already.  There are no C++ consumers.

Differential Revision: https://phabricator.services.mozilla.com/D31113

--HG--
extra : moz-landing-system : lando
2019-05-16 00:36:41 +00:00
Hiroyuki Ikezoe eb76263d34 Bug 1551241 - Add a check for the case where the embedder element is nullptr. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D30982

--HG--
extra : moz-landing-system : lando
2019-05-15 10:55:34 +00:00
Matt Woodrow 3e231add81 Bug 1549909 - Use display list building order for walking parents in AddFramesForContainingBlock. r=kamidphish
Differential Revision: https://phabricator.services.mozilla.com/D30453

--HG--
extra : moz-landing-system : lando
2019-05-15 03:33:26 +00:00
Botond Ballo 1e0a063846 Bug 1459260 - Create a MobileViewportManager whenever apz.allow_zooming is set. r=kats
However, we continue to only respect a <meta name="viewport"> tag if
dom.meta-viewport.enabled is set.

Differential Revision: https://phabricator.services.mozilla.com/D30988

--HG--
extra : moz-landing-system : lando
2019-05-14 02:16:21 +00:00
Andrew McCreight 2841945140 Bug 1550860 - Mark implicit builtinclass interfaces explicitly. r=nika
If an XPIDL interface has a method or attribute that is [notxpcom],
then it is implicitly treated as [builtinclass], even if it is not
marked as such. For clarity, this patch goes through and marks every
place that relies on this behavior (aside from some test code).

Differential Revision: https://phabricator.services.mozilla.com/D30714

--HG--
extra : moz-landing-system : lando
2019-05-13 19:51:49 +00:00
Brad Werth 0cadd363db Bug 1548896 Part 1: Prevent MobileViewportManager::GetCompositionSize from returning negative sizes. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D30736

--HG--
extra : moz-landing-system : lando
2019-05-13 17:26:34 +00:00
Hiroyuki Ikezoe 863f6d62eb Bug 1518919 - Propagate CSS visibility information to descendant documents via IPC call for fission. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D30460

--HG--
extra : moz-landing-system : lando
2019-05-13 01:49:07 +00:00
Nicolas Silva 92e099dc31 Bug 1536021 - Gecko side changes. r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D30618

--HG--
extra : source : d9c8971de6ad11a2f5c4331775c2d17c98a12b7e
extra : intermediate-source : b0fc3130f34b72fe01230ae0b231131111a9a9f1
2019-05-10 22:13:31 +02:00
Boris Zbarsky 928476d24c Bug 1550092 part 1. Stop using [array] in sendTouchEvent/sendTouchEventToWindow. r=farre
Differential Revision: https://phabricator.services.mozilla.com/D30441

--HG--
extra : moz-landing-system : lando
2019-05-10 09:03:39 +00:00
Hiroyuki Ikezoe ca71a531a1 Bug 1541253 - Test cases for CSS visibility propagation. r=tnikkel
There are three test cases;

 1) Two iframes are swapped
 2) Changing the visibility of the parent document doesn't clobber a child
    document's visibility in the case where the child document has been hidden
    by another element in the parent document
 3) an iframe is initially inside a visibility:hidden element in the parent
    document

Depends on D26253

Differential Revision: https://phabricator.services.mozilla.com/D27842

--HG--
extra : moz-landing-system : lando
2019-05-10 10:35:45 +00:00
Hiroyuki Ikezoe a7b7f105b5 Bug 1541253 - Propagate CSS visivibility information to descendant documents. r=tnikkel
Depends on D26251

Differential Revision: https://phabricator.services.mozilla.com/D26252

--HG--
extra : moz-landing-system : lando
2019-05-10 11:15:43 +00:00
Hiroyuki Ikezoe 88e1c00d24 Bug 1541253 - Make PresShell::IsVisible const. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D26251

--HG--
extra : moz-landing-system : lando
2019-05-10 11:15:30 +00:00
Csoregi Natalia 6b3623045e Backed out changeset 7c1fce459b7a (bug 1549909) for crashtest failures on 1458028.html. CLOSED TREE 2019-05-10 14:21:07 +03:00
Matt Woodrow 6f7852c76c Bug 1549909 - Use display list building order for walking parents in AddFramesForContainingBlock. r=kamidphish
Differential Revision: https://phabricator.services.mozilla.com/D30453

--HG--
extra : moz-landing-system : lando
2019-05-10 04:58:39 +00:00
Masayuki Nakano 1fb845d129 Bug 1543315 - part 17: Mark PresShell::HandleDOMEventWithTarget() as MOZ_CAN_RUN_SCRIPT r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D30494

--HG--
extra : moz-landing-system : lando
2019-05-09 20:21:28 +00:00
Brindusan Cristian ba4f64421f Backed out changeset 7fa8e33635fc (bug 1534012) for wpt failures at promise-rejection-events.html. CLOSED TREE 2019-05-10 01:10:40 +03:00
Sean Feng 87884c39a6 Bug 1534012 - Use a low priority ThrottledEventQueue for postMessages during page load r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D27386

--HG--
extra : moz-landing-system : lando
2019-05-09 14:43:40 +00:00
Brindusan Cristian 7f7d7f6a70 Backed out changeset e925cef1cadf (bug 1549326) for mochitest assertion failures at nsContentSecurityManager.cpp:205. CLOSED TREE 2019-05-09 21:05:40 +03:00
Jonas Allmann 4b72fd9bba Bug 1549326 - Remove simpletest.js from eval()-whitelist, r=ckerschb
Amend several test files for triggering eval() assertion through simpletest.js

Differential Revision: https://phabricator.services.mozilla.com/D30474

--HG--
extra : moz-landing-system : lando
2019-05-09 16:02:49 +00:00
Emilio Cobos Álvarez 38065025d9 Bug 1548691 - Use the owned slice type for basic shape polygon coordinates. r=TYLin,heycam
This enables destructors for tagged unions in cbindgen, implemented in:

 * https://github.com/eqrion/cbindgen/pull/333

Which allow us to properly generate a destructor for the cbindgen-generated
StyleBasicShape (which now contains an OwnedSlice).

For now, we still use the glue code to go from Box<BasicShape> to
UniquePtr<BasicShape>. But that will change in the future when we generate even
more stuff and remove all the glue.

I could add support for copy-constructor generation to cbindgen for tagged
enums, but I'm not sure if it'll end up being needed, and copy-constructing
unions in C++ is always very tricky.

Differential Revision: https://phabricator.services.mozilla.com/D29769

--HG--
extra : moz-landing-system : lando
2019-05-09 11:24:57 +00:00
Jonathan Watt d9d54a06b9 Bug 1549844. DeCOMtaminate some nsPrintJob methods. r=bobowen
Differential Revision: https://phabricator.services.mozilla.com/D30269

--HG--
extra : rebase_source : 4529c476a5f7acdd4c959417c6e6221e6c84f153
extra : amend_source : f589deac70ae533c2f4e7830c057f0f2c65b963e
2019-04-12 14:53:26 +01:00
Ryan Hunt cadf33a327 Bug 1525720, part 2 - Move UITabResolutionChanged method to nsIRemoteTab interface from BrowserParent. r=smaug
This reduces the amount of code that assumes that BrowserParent implements nsIRemoteTab.

Differential Revision: https://phabricator.services.mozilla.com/D31430

--HG--
extra : source : 5f1c1b609ec1ecc28734e1b6daeeb3f6854ded38
2019-04-24 23:05:40 -05:00
Gurzau Raul 57f573a6ff Backed out 18 changesets (bug 1525720) for mass failures on Windows platform e.g ProcessPriorityManager.cpp on a CLOSED TREE.
Backed out changeset 1f2e86c2d691 (bug 1525720)
Backed out changeset 9b79caa460a0 (bug 1525720)
Backed out changeset e65cb2d4c5a5 (bug 1525720)
Backed out changeset 99f971a02d87 (bug 1525720)
Backed out changeset d25963c72ff7 (bug 1525720)
Backed out changeset 810b73719871 (bug 1525720)
Backed out changeset ee10a8254481 (bug 1525720)
Backed out changeset 1bcf9f586c55 (bug 1525720)
Backed out changeset d3b2ac8d5ca4 (bug 1525720)
Backed out changeset 697774dd8984 (bug 1525720)
Backed out changeset eadeacbe4483 (bug 1525720)
Backed out changeset 32eeee79d628 (bug 1525720)
Backed out changeset 07678a2fa9e7 (bug 1525720)
Backed out changeset 757b4f595cc4 (bug 1525720)
Backed out changeset b255e0a84e12 (bug 1525720)
Backed out changeset 9a255864f75d (bug 1525720)
Backed out changeset 5f1c1b609ec1 (bug 1525720)
Backed out changeset 00d83f1d02e0 (bug 1525720)
2019-05-23 01:57:16 +03:00
Ryan Hunt e084a16216 Bug 1525720, part 2 - Move UITabResolutionChanged method to nsIRemoteTab interface from BrowserParent. r=smaug
This reduces the amount of code that assumes that BrowserParent implements nsIRemoteTab.

Differential Revision: https://phabricator.services.mozilla.com/D31430

--HG--
extra : rebase_source : d639864ba86001cf90a8b3d42b6eda97a7f829ac
extra : histedit_source : 6f6f1e0b6d3561e478391ce9e72a8a2dbc280983
2019-04-24 23:05:40 -05:00
Emilio Cobos Álvarez 98b4f62a61 Bug 1549691 - nsLayoutUtils::GetRealPrimaryFrameFor makes no sense. r=jwatt
The primary frame is always the out of flow frame.

Differential Revision: https://phabricator.services.mozilla.com/D30182

--HG--
extra : moz-landing-system : lando
2019-05-07 17:04:36 +00:00
Botond Ballo 65317978a2 Bug 1516722 - Update usage notes for nsIPresShell::ScrollToVisual(). r=kats
Differential Revision: https://phabricator.services.mozilla.com/D30106

--HG--
extra : moz-landing-system : lando
2019-05-07 03:04:06 +00:00
Botond Ballo bdf500fe17 Bug 1516722 - Also scroll the visual viewport in ScrollToShowRect() if necessary. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D29079

--HG--
extra : moz-landing-system : lando
2019-05-07 03:03:34 +00:00
Masayuki Nakano 41c520d31f Bug 1543315 - part 16: Mark PresShell::HandleEventWithTarget() as MOZ_CAN_RUN_SCRIPT r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D30011

--HG--
extra : moz-landing-system : lando
2019-05-06 13:15:05 +00:00
Masayuki Nakano 780b285e68 Bug 1543315 - part 15: Mark PresShell::ScrollFrameRectIntoView() as MOZ_CAN_RUN_SCRIPT r=smaug
Unfortunately, `EventChainVisitor` does not grab the `nsPresContext` with
`RefPtr` by itself.  Therefore, there is no guarantee of the lifetime without
checking the origin when its subclasses are instantiated.  This patch changes
it and subclasses to `MOZ_STACK_CLASS` since only `EventDispatcher::Dispatch()`
creates them in the stack with given `nsPresContext`.  Additionally, it's
already been marked as MOZ_CAN_RUN_SCRIPT_BOUNDARY`.  Therefore, the
`nsPresContext` instance has already been guaranteed its lifetime by the
caller.  For making this fact stronger, this patch marks their constructors
as `MOZ_CAN_RUN_SCRIPT`.  Therefore, nobody can create those instances without
guaranteeing the lifetime of `nsPresContext` and `dom::Event`.  Note that
it may look like that `mPresContext` of `EventChainPostVisitor` is not
guaranteed.  However, `EventChainPreVisitor` which gives `nsPresContext` to it
is also a stack only class.  So, it won't be deleted before
`EventChainPostVisitor` instance.

Differential Revision: https://phabricator.services.mozilla.com/D30010

--HG--
extra : moz-landing-system : lando
2019-05-06 13:57:46 +00:00
Masayuki Nakano 4fd67bb3f1 Bug 1543315 - part 14: Mark PresShell::WillPaintWindow() and PresShell::DidPaintWindow() as MOZ_CAN_RUN_SCRIPT r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D30009

--HG--
extra : moz-landing-system : lando
2019-05-06 13:01:48 +00:00
Masayuki Nakano 8d503c6d14 Bug 1543315 - part 13: Mark PresShell::Paint() as MOZ_CAN_RUN_SCRIPT r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D30008

--HG--
extra : moz-landing-system : lando
2019-05-06 13:25:35 +00:00
Kartikaya Gupta 46c4b1ff9e Bug 1524232 - Dispatch synthesized mousemoves to OOP iframes if that's where they land. r=tnikkel
Depends on D29731

Differential Revision: https://phabricator.services.mozilla.com/D29732

--HG--
extra : moz-landing-system : lando
2019-05-02 19:57:16 +00:00
Timothy Nikkel 9e00c372a5 Bug 1547277. If the size of the document as recorded in the frame/view tree and the document viewer diverge as a result of a call to GetContentSize make sure to invalidate when they converge again because what we draw is changing. r=mattwoodrow
The code comment mostly explains things.

Differential Revision: https://phabricator.services.mozilla.com/D29953

--HG--
extra : moz-landing-system : lando
2019-05-05 03:21:41 +00:00
Ting-Yu Lin 63457d2b61 Bug 1548673 Part 1 - Rename NS_INTRINSIC_WIDTH_UNKNOWN to NS_INTRINSIC_ISIZE_UNKNOWN. r=jfkthame
This patch is generated by running the following script under layout/,
and then manually delete the FIXME comment in LayoutConstants.h

  #!/bin/bash
  function rename() {
      find .\
           -type f\
           ! -path "./obj*"\
           ! -path "./.git"\
           ! -path "./.hg"\
           \( -name "*.cpp" -or\
              -name "*.h" \)\
              -exec sed -i -e "s/$1/$2/g" "{}" \;
  }
  rename NS_INTRINSIC_WIDTH_UNKNOWN NS_INTRINSIC_ISIZE_UNKNOWN

Differential Revision: https://phabricator.services.mozilla.com/D29746

--HG--
extra : moz-landing-system : lando
2019-05-03 17:34:36 +00:00
Michael Kaply fca7f5580c Bug 1548587 - Add addl preferences for dom keyboard hacks. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D29696

--HG--
extra : moz-landing-system : lando
2019-05-03 09:41:39 +00:00
Emilio Cobos Álvarez b3863ed908 Bug 1547792 - AspectRatio should be a single ratio, not a size. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D29244

--HG--
extra : moz-landing-system : lando
2019-05-02 23:28:21 +00:00
Brindusan Cristian 9deae973cd Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-05-02 18:33:18 +03:00
Brindusan Cristian 8f1402e37c Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-05-02 12:56:28 +03:00
Masayuki Nakano 14b7642127 Bug 1547422 - Make widget use mozilla::PresShell directly rather than via nsIPresShell r=jmathies
This patch makes widget use `mozilla::PresShell` directly rather than via
`nsIPresShell` and changes some pure virtual methods of `nsIPresShell` which
called by widget to `mozilla::PresShell`'s non-virtual methods.

Differential Revision: https://phabricator.services.mozilla.com/D29112

--HG--
extra : moz-landing-system : lando
2019-05-01 18:52:59 +00:00
Noemi Erli f1ef21cbc7 Backed out changeset 8c89fd37b79d (bug 1544242) for failures in browser_rules_shadowdom_slot_rules.js CLOSED TREE 2019-05-01 22:03:06 +03:00
Emilio Cobos Álvarez fb5b637f4f Bug 1544242 - Fix selector-matching for nested pseudo-elements. r=heycam,mats
We always include the combinator for pseudo-elements now (not including it was
just an optimization) in order to not match when nested pseudo-elements are
involved.

We could add a more generic check in `matches_simple_selector` like:

```
if element.is_pseudo_element() {
    match *selector {
        Component::PseudoElement(..) |
        Component::NonTSPseudoClass(..) => {},
        _ => return false,
    }
}
```

But even that wouldn't be enough to make selectors like `:hover::marker` not
match on the `::before::marker` pseudo-element, plus that code is really hot.

So for now do the check on the `next_element_for_combinator` function. It's a
bit hacky but it's the best I could came up with...

While at it, simplify some checks to use is_pseudo_element() instead of
implemented_pseudo_element() directly.

Only the Rust patch as-is would make markers for ::before and ::after on list
items not show up, so we also need to switch ::marker to use ProbeMarkerStyle()
rather than ProbePseudoElementStyle(), since the marker should exist even if it
matches no rules.

Differential Revision: https://phabricator.services.mozilla.com/D27529

--HG--
extra : moz-landing-system : lando
2019-05-01 17:19:08 +00:00
Sylvestre Ledru e226046cb8 Bug 1547143 - Format the tree: Be prescriptive with the pointer style (left) r=Ehsan
# ignore-this-changeset

Depends on D28954

Differential Revision: https://phabricator.services.mozilla.com/D28956

--HG--
extra : moz-landing-system : lando
2019-05-01 08:47:10 +00:00
Matt Woodrow 3fc4716479 Bug 1535945 - Don't skip invalidating frames when creating displayports for async scrollable ancestors. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D23816

--HG--
extra : moz-landing-system : lando
2019-05-01 04:23:07 +00:00
Mihai Alexandru Michis c995f0c31b Merge mozilla-central to mozilla-inbound a=merge CLOSED TREE 2019-05-16 12:47:56 +03:00
Gurzau Raul f774bd9752 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-05-15 19:02:08 +03:00
Jonathan Watt e811a45220 Bug 1551688. Make it clearer that nsIContentViewer.setPageMode() is for testing only by renaming it. r=bobowen
Differential Revision: https://phabricator.services.mozilla.com/D31126

--HG--
extra : rebase_source : 8365f296ef575e6632b27d06617d197f0fc50cff
2019-04-29 14:53:25 +01:00
Gijs Kruitbosch 811c33eeca Bug 1515204 - add mouseup after drop in EventUtils, r=NeilDeakin
Differential Revision: https://phabricator.services.mozilla.com/D28749

--HG--
extra : moz-landing-system : lando
2019-04-30 12:55:23 +00:00
Sebastian Hengst a886d2b7f8 Bug 1547416 - Move nsIPresShell::ScrollAxis to PresShellForwards.h: correct conflict fix. a=bustage-fix 2019-04-30 14:11:09 +02:00
Sebastian Hengst f69afa2cd0 Merge autoland to mozilla-central. a=merge 2019-04-30 13:31:28 +02:00
Masayuki Nakano 7c6b8177e2 Bug 1547418 - Make CapturingContentInfo a private struct of PresShell and move APIs for it from nsIPresShell to PresShell r=smaug a=reland
`CapturingContentInfo` struct is used only in `PresShell.cpp` so that we can
make it a private struct of `PresShell` if we move all users of them,
i.e., API to access them, from `nsIPresShell` to `PresShell`.

Differential Revision: https://phabricator.services.mozilla.com/D29111

--HG--
extra : source : 91ac1bb728ef0c25e230bae50297794dd631f8f6
extra : amend_source : 920f6137dba0e2f63182297d373f4f59be783113
2019-04-30 00:26:57 +00:00
Masayuki Nakano 14c20e04b1 Bug 1547416 - Move nsIPresShell::ScrollAxis to PresShellForwards.h r=smaug
`nsIPresShell::ScrollAxis` can be used anywhere and it's used by some
utils actually. So, it should be in `mozilla` namespace and perhaps,
 `PresShellForwards.h` is a good place to move it rather than creating
new header file.

Differential Revision: https://phabricator.services.mozilla.com/D29110

--HG--
extra : source : d89587999df100be804a749694ac08fffd5ab39d
2019-04-30 00:07:49 +00:00
Csoregi Natalia 29261f02c1 Backed out 2 changesets (bug 1516722) for wpt failures on scroll-restoration-fragment-scrolling-samedoc.html. a=backout
Backed out changeset 8f2db95f0610 (bug 1516722)
Backed out changeset 55c8e6f3e522 (bug 1516722)
2019-04-30 13:15:29 +03:00
Csoregi Natalia b378f30b76 Backed out 2 changesets (bug 1547416, bug 1547418) for causing conflicts. a=backout
Backed out changeset 91ac1bb728ef (bug 1547418)
Backed out changeset d89587999df1 (bug 1547416)
2019-04-30 13:13:46 +03:00
Masayuki Nakano f3bcf4c6d1 Bug 1547418 - Make CapturingContentInfo a private struct of PresShell and move APIs for it from nsIPresShell to PresShell r=smaug
`CapturingContentInfo` struct is used only in `PresShell.cpp` so that we can
make it a private struct of `PresShell` if we move all users of them,
i.e., API to access them, from `nsIPresShell` to `PresShell`.

Differential Revision: https://phabricator.services.mozilla.com/D29111

--HG--
extra : moz-landing-system : lando
2019-04-30 00:26:57 +00:00
Masayuki Nakano bad5d5bfe9 Bug 1547416 - Move nsIPresShell::ScrollAxis to PresShellForwards.h r=smaug
`nsIPresShell::ScrollAxis` can be used anywhere and it's used by some
utils actually. So, it should be in `mozilla` namespace and perhaps,
 `PresShellForwards.h` is a good place to move it rather than creating
new header file.

Differential Revision: https://phabricator.services.mozilla.com/D29110

--HG--
extra : moz-landing-system : lando
2019-04-30 00:07:49 +00:00
Masayuki Nakano c2709a0087 Bug 1547535 - Move all a11y code in nsIPresShell to mozilla::PresShell r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D29196

--HG--
extra : moz-landing-system : lando
2019-04-30 07:53:20 +00:00
Brad Werth 47f6d7796a Bug 1538681 Part 1: Backout a change that added an early-exit in MobileViewportManager::UpdateResolution. r=botond
This change was originally added as a drive-by optimization in Bug 1501665.
The early-exit apparently routes around a needed side effect in the case
where resolution is re-set to its current value.

Differential Revision: https://phabricator.services.mozilla.com/D28566

--HG--
extra : moz-landing-system : lando
2019-04-29 17:54:19 +00:00
Botond Ballo 7bbc3c40e5 Bug 1516722 - Also scroll the visual viewport in ScrollToShowRect() if necessary. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D29079

--HG--
extra : moz-landing-system : lando
2019-04-29 15:45:44 +00:00
Masayuki Nakano 36e5df54ec Bug 1547621 - Move all inline methods of nsIPresShell into mozilla::PresShell r=smaug
And also this patch moves some related methods which use the inline methods
and member variables used only by them.

Differential Revision: https://phabricator.services.mozilla.com/D29201

--HG--
rename : layout/base/nsIPresShellInlines.h => layout/base/PresShellInlines.h
extra : moz-landing-system : lando
2019-04-30 01:52:53 +00:00
Masayuki Nakano 2f69dfdd5d Bug 1547536 - Make PresShell QI-able for aware of do_QueryReferent() r=smaug
There is the following usage of nsIPresShell:
```
nsCOMPtr<nsIPresShell> presShell = do_QueryReferent(mPresShellWeak);
```

So, for changing this to:
```
RefPtr<PresShell> presShell = do_QueryReferent(mPresShellWeak);
```

PresShell should have its own IID.

Differential Revision: https://phabricator.services.mozilla.com/D29197

--HG--
extra : moz-landing-system : lando
2019-04-30 00:56:14 +00:00
Jonas Allmann a409257d6d Bug 1546990 - Remove several files from eval()-assertion whitelist, r=ckerschb
Refactor several occurences of `setTimeout()` to avoid triggering the `eval()` assertion.

Differential Revision: https://phabricator.services.mozilla.com/D28851

--HG--
extra : moz-landing-system : lando
2019-04-29 11:20:37 +00:00
Sylvestre Ledru 96da5036ad Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D28948

--HG--
extra : moz-landing-system : lando
2019-04-28 09:30:05 +00:00
Emilio Cobos Álvarez 30fc959628 Bug 1547261 - Add a crashtest. r=me 2019-04-27 13:22:37 +02:00
Botond Ballo 50a070b645 Bug 1531796 - Call NotifyApzTransaction() for skipped paints, too. r=rhunt,kats
We need to do this separately in the WR and non-WR codepaths for picking up
scroll updates for skipped paints.

Differential Revision: https://phabricator.services.mozilla.com/D29061

--HG--
extra : moz-landing-system : lando
2019-04-27 05:06:23 +00:00