Commit graph

330 commits

Author SHA1 Message Date
Matt Woodrow
668b361a1d Bug 1466024 - Cleanup nsDisplaySubDocument display items when we swap the subdoc into a different outer document. r=miko
MozReview-Commit-ID: E4NKiIdXZsY

--HG--
extra : rebase_source : afdce58ba43dbf9bd93d971bd8b57240461c9954
2018-06-01 17:23:55 +12:00
Kartikaya Gupta
ded66f718a Bug 1436409 - Remove the layout.event-regions.enabled pref and bake it in as false everywhere. r=tnikkel
This pref was used to enable the building of nsDisplayLayerEventRegions
items without APZ, so that we could test it in isolation. However, we no
longer need to do so, and these display items are going to be deleted
anyway, so we can remove this pref.

MozReview-Commit-ID: LJVcFafCKyS

--HG--
extra : rebase_source : 76d8eeca8dca4ea88b8226bbe6b829dbc40e03e4
2018-06-08 17:31:27 -04:00
Matt Woodrow
c77fe6d1bd Bug 1462497 - Part 2: Invalidate the new caret frame in subdocuments, since it will result in a new nsDisplayWrapList being created. r=miko,mstange
nsDisplayListBuilder::DisplayCaret returning true means that we set canSkipWrapList to true, and then we build an nsDisplayWrapList.
We need to make sure we're invalidated for this changing in nesting level to be handled.

MozReview-Commit-ID: 4j3WIJDcHtI

--HG--
extra : rebase_source : b64d0af756c297de42aa2e164ee32ccbe01890d1
2018-05-23 10:59:53 +12:00
Chris Peterson
71422dcaa9 Bug 1457813 - Part 2: Replace non-asserting NS_PRECONDITIONs with MOZ_ASSERTs. r=froydnj
s/NS_PRECONDITION/MOZ_ASSERT/ and reindent

MozReview-Commit-ID: KuUsnVe2h8L

--HG--
extra : source : c14655ab3df2c9b1465dd8102b9d25683359a37b
2018-04-28 12:50:58 -07:00
Matt Woodrow
e9a5b8eda1 Bug 1452225 - Rebuild the whole subdoc when the caret changes, but don't invalidate the nsDisplaySubdocument. r=miko
MozReview-Commit-ID: K0KLXTo4GG

--HG--
extra : rebase_source : 54fc03744cb9df58497ba843fb6786c4db98fb64
2018-04-13 15:32:48 +12:00
Emilio Cobos Álvarez
e341b20ec4 Bug 1447483: Merge nsStyleContext and ServoStyleContext, rename to ComputedStyle. r=jwatt on a CLOSED TREE
MozReview-Commit-ID: JPopq0LudD
2018-03-22 20:06:24 +01:00
Emilio Cobos Álvarez
5dd797f154 Back out changeset b683bb3f22a1 (Bug 1447483) for not landing with all the files. r=me on a CLOSED TREE
This reverts commit 1808914126bb9f9e4a82d2c3d7ac961885fe7d62.

MozReview-Commit-ID: 5skESBseEvo
2018-03-22 20:05:22 +01:00
Emilio Cobos Álvarez
ca5ac79cca Bug 1447483: Merge nsStyleContext and ServoStyleContext, rename to ComputedStyle. r=jwatt
MozReview-Commit-ID: JPopq0LudD
2018-03-22 19:48:42 +01:00
Boris Zbarsky
9cb6df0dac Bug 1444143 part 2. Remove nsIFrameLoader::GetDocShell. r=mystor
The change from "docShell" to "mDocShell" for the SetName call in the
OwnerIsMozBrowserFrame case in nsFrameLoader::MaybeCreateDocShell is a
drive-by correctness fix for a bug the rename of "docShell" to "parentDocShell"
caught: setting the name of our _parent_ docshell based on the name attr of our
owner makes no sense.

MozReview-Commit-ID: DwnWt8jTokV
2018-03-21 22:43:15 -04:00
Boris Zbarsky
29d232e53f Bug 1447098 part 1. Rename FromContent on various DOM classes to FromNode. r=mystor
MozReview-Commit-ID: 202nkbmkwfR
2018-03-21 17:39:04 -04:00
Matt Woodrow
4183152e2d Bug 1436904 - Part 1: Add a static constructor function for display items. r=Bas 2018-02-13 13:43:28 +13:00
Dorel Luca
bd05e3853c Backed out 3 changesets (bug 1436904) for many crashes see bugs: 1440281, 1440302, 1440303, 1440313. a=backout
Backed out changeset 27f0762d4472 (bug 1436904)
Backed out changeset 27640f52e188 (bug 1436904)
Backed out changeset 2b4d117c27dc (bug 1436904)
2018-02-22 17:28:59 +02:00
Matt Woodrow
e485bba27f Bug 1436904 - Part 1: Add a static constructor function for display items. r=Bas 2018-02-13 13:43:28 +13:00
Sebastian Hengst
f5e840425b merge mozilla-inbound to mozilla-central. a=merge 2018-02-10 00:26:50 +02:00
Boris Zbarsky
c61fc860fe Bug 1436508 part 14. Remove nsIDOMMutationEvent. r=masayuki
MozReview-Commit-ID: Gf59kFSIuaK
2018-02-09 11:17:10 -05:00
Miko Mynttinen
343f94e2b5 Bug 1434243 - Part 1: Ensure that AncestorHasApzAwareEventHandler is set when needed if APZ is enabled r=kats
MozReview-Commit-ID: BxAEotnGQwS

--HG--
extra : rebase_source : b28759fbfc0bb95b38391ae511ce6060a0ee683d
2018-02-02 14:15:37 +01:00
Emilio Cobos Álvarez
1cda1ad876 Bug 1427511: Make GetFlattenedTreeParent more straight-forward. r=smaug
Now that accessing nsIContent slots is not a blob of virtual function calls, we
should be able to unify logic here, and speed up the not-so-rare case for
chrome, while keeping the usual case fast.

MozReview-Commit-ID: 87iY5Cbhx4T
2018-01-02 18:00:25 +01:00
Kartikaya Gupta
45a0aff526 Bug 1418387 - Make the nsDisplayOwnLayer flags more strongly typed. r=mstange
MozReview-Commit-ID: 8s14jKhp9Lb

--HG--
extra : rebase_source : be3c14215018bb1fa46a753b0746068b8454e92e
2017-11-24 16:23:04 -05:00
Matt Woodrow
aab0cbe92c Bug 1406727. r=froydnj 2017-11-16 16:09:28 +13:00
Narcis Beleuzu
af710e4746 Backed out changeset 0f783930e1b2 (bug 1406727) for GTest failures on ArenaAllocator. r=backout on a CLOSED TREE 2017-11-16 07:45:06 +02:00
Matt Woodrow
5e1a10f3be Bug 1406727. r=froydnj 2017-11-16 16:09:28 +13:00
Kartikaya Gupta
028fa48259 Bug 1415225 - Stop setting the EventRegionsOverride flag on in-process subdocument layers. r=botond
The mechanics of this change is fairly straightforward - instead of setting the
override on the layer corresponding to the in-process subdocument, we just set
the flag on the display list builder; that flag is already checked when building
the layer event regions for descendant nsIFrames.

As a side-effect, we also don't need to force a layer for in-process subdocuments
just because they have document-level APZ-aware listeners. One of reasons we were
doing so before was so that we would have a layer to stash the override flags on
but now we don't need that any more.

Note that out-of-process subdocuments are not affected; for those cases
the nsSubDocumentFrame delegates BuildDisplayList to
RenderFrameParent/nsDisplayRemote, which will still set the overrides on
the RefLayer that is created.

MozReview-Commit-ID: DZWglE4e62p

--HG--
extra : rebase_source : 78494a5cbfd0dfecb5f2262e5c1b3dc5367c5d55
2017-11-09 09:03:51 -05:00
Mats Palmgren
1c2b8c222e Bug 1414666 part 1 - Add nsIFrame::PresShell() for convenient access to the shell. r=emilio
MozReview-Commit-ID: 8FPTPKWyVtY
2017-11-09 03:00:48 +01:00
Matt Woodrow
cd1604ef74 Bug 1414397 - Make sure we properly invalidate the entire frame subtree when detecting a caret frame change. r=miko
--HG--
extra : rebase_source : add63296c95ea090ca79ab120bede8038ce4f59e
2017-11-08 15:33:34 +13:00
Mats Palmgren
25cd0c37f7 Bug 1400618 part 1 - Collect NAC / generated content and call DestroyAnonymousContent / UnbindFromTree on those after the frames are destroyed. r=bz
MozReview-Commit-ID: 2trDgeJPw25
2017-11-07 01:20:33 +01:00
Sebastian Hengst
841ee307e6 merge mozilla-central to autoland. r=merge a=merge 2017-10-27 23:32:15 +02:00
Daniel Holbert
680815cd6e Bug 1412346 part 5: (automated patch) Switch a bunch of C++ files in layout to use our standard mode lines. r=jfkthame
This patch was generated automatically by the "modeline.py" script, available
here: https://github.com/amccreight/moz-source-tools/blob/master/modeline.py

For every file that is modified in this patch, the changes are as follows:
 (1) The patch changes the file to use the exact C++ mode lines from the
     Mozilla coding style guide, available here:
https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Coding_Style#Mode_Line

 (2) The patch deletes any blank lines between the mode line & the MPL
     boilerplate comment.

 (3) If the file previously had the mode lines and MPL boilerplate in a
     single contiguous C++ comment, then the patch splits them into
     separate C++ comments, to match the boilerplate in the coding style.

MozReview-Commit-ID: EuRsDue63tK

--HG--
extra : rebase_source : 3356d4b80ff6213935192e87cdbc9103fec6084c
2017-10-27 10:33:53 -07:00
Ethan Lin
58c22f74cd Bug 1411860 - Create nsDisplaySubDocument unconditionally. r=mattwoodrow
MozReview-Commit-ID: ELXI1SYZTa4
2017-10-27 14:03:32 +08:00
Sebastian Hengst
2db001a014 Backed out 2 changesets (bug 1411860, bug 1411886) for failing reftests layout/reftests/bugs/409084-1{a,b}.html on OS X. r=backout on a CLOSED TREE
Backed out changeset be44e8cd8503 (bug 1411886)
Backed out changeset 8c6307a06e78 (bug 1411860)
2017-10-26 17:35:16 +02:00
Ethan Lin
7c3b9b1155 Bug 1411860 - Create nsDisplaySubDocument unconditionally. r=mattwoodrow
MozReview-Commit-ID: ELXI1SYZTa4

--HG--
extra : rebase_source : 601f82f054edc4e54470ea80a316aa41edc2e1f4
2017-10-26 17:36:54 +08:00
Matt Woodrow ext:(%2C%20Miko%20Mynttinen%20%3Cmikokm%40gmail.com%3E%2C%20Timothy%20Nikkel%20%3Ctnikkel%40gmail.com%3E)
803900fbb1 Bug 1404181 - Part 25: Force rebuilding when we detect changes to the displaylist that didn't have invalidations. Also forces rebuilding of the canvas frame every time so that AddExtraBackgroundItems produces a consistent result. r=mstange
MozReview-Commit-ID: KBganOiuRGK

--HG--
extra : rebase_source : e816a2c1bd50430118fea2d02307dddd38ab0ecf
2017-10-21 16:51:22 +13:00
Matt Woodrow ext:(%2C%20Miko%20Mynttinen%20%3Cmikokm%40gmail.com%3E%2C%20Timothy%20Nikkel%20%3Ctnikkel%40gmail.com%3E)
b8eada5d39 Bug 1404181 - Part 19: Some items don't use style data from mFrame, so add overrides that let us check the right frame when determining if an item is invalid. r=mstange
MozReview-Commit-ID: Cvsf4xRFucp

--HG--
extra : rebase_source : 3c97c76be0619a05db803bacac504a3ef74a8fe4
2017-09-28 14:15:15 +13:00
Matt Woodrow ext:(%2C%20Miko%20Mynttinen%20%3Cmikokm%40gmail.com%3E%2C%20Timothy%20Nikkel%20%3Ctnikkel%40gmail.com%3E)
0488542fd6 Bug 1404181 - Part 11: Factor out PresShell paint count code se we can still call it without needing to build the display items. r=mstange
MozReview-Commit-ID: Ai4P92dd1zR

--HG--
extra : rebase_source : f6d23e5500316471e2c22d79babc128961e0d1c6
2017-09-28 08:41:57 +13:00
Matt Woodrow ext:(%2C%20Miko%20Mynttinen%20%3Cmikokm%40gmail.com%3E%2C%20Timothy%20Nikkel%20%3Ctnikkel%40gmail.com%3E)
31e9b3f8cd Bug 1404181 - Part 2: Track a 'visible' rect for display list building as well as the 'dirty' rect, so that we can do partial building by specifying a smaller 'dirty' rect. r=mstange
MozReview-Commit-ID: 7DUV9dl4zb1

--HG--
extra : rebase_source : e7bf5eacba44ce9cf77c55d623edef33a85f0492
2017-10-04 14:28:38 +13:00
Matt Woodrow
d8a662f0d2 Bug 1406727. r=mstange,froydnj a=abillings
--HG--
extra : rebase_source : a9932eb10d3ca451e1ce3a424cd48e957801f593
2017-10-17 15:19:44 +13:00
Timothy Nikkel
9c468fcb65 Bug 1408607. Make all uses of mWillBuildScrollableLayer conditional on painting to the window. r=mstange
This mostly restores us to the previous behaviour where we would set mWillBuildScrollableLayer to false for event handling display lists. But it's better because we don't keep flipping its value.

The real reason we want to do this is that it fixes bugs with event handling.
2017-10-16 01:50:35 -05:00
Nicholas Nethercote
d225f7151b Bug 1400460 - Rename nsIAtom as nsAtom. r=hiro.
(Path is actually r=froydnj.)

Bug 1400459 devirtualized nsIAtom so that it is no longer a subclass of
nsISupports. This means that nsAtom is now a better name for it than nsIAtom.

MozReview-Commit-ID: 91U22X2NydP

--HG--
rename : xpcom/ds/nsIAtom.h => xpcom/ds/nsAtom.h
extra : rebase_source : ac3e904a21b8b48e74534fff964f1623ee937c67
2017-10-03 09:05:19 +11:00
Kyle Machulis
e54a4653ba Bug 1404079 - Remove nsIDOMHTMLFrameElement; r=bz
MozReview-Commit-ID: GSvMwRpl7g4

--HG--
extra : rebase_source : a5e8ee45bae90eaa9ecdcc6f0bac0c9dac0ce2c8
2017-09-28 19:06:14 -07:00
Timothy Nikkel
3ca5249135 Bug 1364295. Simplify some code now that we don't create displayports during display list building. r=mstange 2017-10-02 16:00:16 -05:00
Ting-Yu Lin
2e869d8f3d Bug 1341009 - Add nsReflowStatus::IsEmpty() assertions to all nsIFrame::Reflow() methods and some reflow helpers, and remove unneeded Reset(). r=dholbert
nsReflowStatus::IsEmpty() assertions are added after DISPLAY_REFLOW in the
beginning of the Reflow().

A few Reflow() implementations have Reset() calls at the end which are left
in place by this patch (with an explanatory comment added to each). These
ending Reset()s are only needed for cases where a non-splittable frame
passes its own nsReflowStatus to a child's reflow method. Just in case the
child leaves a "not fully complete" value in the nsReflowStatus, the
non-splittable parent frame must clear out the nsReflowStatus before
returning, so that its own parent doesn't then try to split it.

MozReview-Commit-ID: 6Jj3jfMAqj4

--HG--
extra : rebase_source : e1fe6a775ad97e16a6d7cc224634ff962ccb0fbf
2017-09-13 18:00:25 +08:00
Emilio Cobos Álvarez
c04f22ad37 Bug 1368852: Avoid flushing frames from nsHideViewer if we know we're not going to get a frame. r=tnikkel
MozReview-Commit-ID: ATVMfQ8myC1

--HG--
extra : rebase_source : fb82003b9ce61644f0cdf4eac5245ef321dec8d5
2017-09-13 00:08:46 +02:00
Matt Woodrow
781ec6ffa1 Bug 1388162 - Add a Destroy function to nsDisplayItem to use instead of manually invoking the destructor, this will allow us to recycle them in the future. r=mstange
* * *
[mq]: fix

MozReview-Commit-ID: LUXZAIL73BJ
2017-08-07 16:07:43 +12:00
Matt Woodrow
40f5b92e3b Bug 1388161 - Store the dirty rect on the display list builder rather than passing it as a parameter to BuildDisplayList. r=mstange 2017-08-07 14:23:35 +12:00
Sebastian Hengst
8257b2d113 Backed out changeset 8f2dd8f13b53 (bug 1388161) for failing chrome's test_animation_performance_warning.html | preserve-3d transform. r=backout 2017-08-10 14:40:21 +02:00
Sebastian Hengst
7f85daeb2a Backed out changeset e9985564e081 (bug 1388162) for failing chrome's test_animation_performance_warning.html | preserve-3d transform. r=backout 2017-08-10 14:40:20 +02:00
Matt Woodrow
95f2e31f88 Bug 1388162 - Add a Destroy function to nsDisplayItem to use instead of manually invoking the destructor, this will allow us to recycle them in the future. r=mstange 2017-08-07 16:07:43 +12:00
Matt Woodrow
a3a130b6ff Bug 1388161 - Store the dirty rect on the display list builder rather than passing it as a parameter to BuildDisplayList. r=mstange 2017-08-07 14:23:35 +12:00
Kyle Machulis
d812ac4e87 Bug 1279218 - Additional applet tag logic removal; r=bz
I've been having problems with interdiffs on mozreview lately, so for
ease of review, this patch is being submitted as a seperate patch for
review. Once it is r+'d, it will be folded into the first patch in
this set before landing.

MozReview-Commit-ID: CS9MngaXlBd

--HG--
extra : rebase_source : 6a86fd4f7a66e73497a756976a2562d183002a2a
2017-07-28 16:44:39 -07:00
Timothy Nikkel
5db4da69f6 Backed out changeset bc4c5281f2c2 (bug 1379887) for causing regressions. 2017-07-29 01:21:32 -05:00
Timothy Nikkel
96e0c1cbc6 Bug 1379887. Don't clobber the value of mWillBuildScrollableLayer when we are building a display list for event handling. r=mstange
ScrollFrameHelper::DecideScrollableLayer doesn't get the actual value of usingDisplayPort/wasUsingDisplayPort if we are not painting to the window. It then sets mWillBuildScrollableLayer to usingDisplayPort. mWillBuildScrollableLayer is the value that determines if we are active and hence an ASR, we don't want to change that between paint display lists for an event handling display list.

We then want to condition uses of mWillBuildScrollableLayer and the return value of DecideScrollableLayer on if we want painting to the window so we get the same behaviour as before when not painting to the window.
2017-07-11 15:30:04 -05:00