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

122 Коммитов

Автор SHA1 Сообщение Дата
Kartikaya Gupta cb97ff3374 Bug 1389139 - Add support for transform and perspective display items to layers-free APZ. r=jrmuizel
A basic sanity check here seems to produce the correct behaviour but I'm
not at all confident that this will always do the correct thing in more
complex cases or when perspectives are involved. However this is hard to
test and get working without the testing infrastructure up and running
so I'd rather land this simple code first and then dig into the more
complex cases once we have a way to catch regressions.

MozReview-Commit-ID: E4HytiZowEn

--HG--
extra : rebase_source : c7466092298aebf66926e8e0bdf58eb4651f0f19
2017-08-16 12:50:37 -04:00
Morris Tseng 6391dec171 Bug 1389027 - Support nsDisplayPerspective in layers-free mode. r=kats
MozReview-Commit-ID: K0RCuQ8WEE3
2017-08-14 17:31:55 +08: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
Ehsan Akhgari eefe461ec1 Bug 1379344 - Avoid traversing the display list twice inside nsDisplayList::UpdateBounds(); r=mstange 2017-08-08 20:54:48 -04:00
Sebastian Hengst d55e18d804 Backed out changeset b954874c5ced (bug 1379344) for failing reftests 1111753-1.html, 1119117-1b.html and clipped-opacity-containing-unclipped-mixblendmode-ref.html. r=backout on a CLOSED TREE 2017-08-04 09:24:42 +02:00
cku 0e18c8bb3c Bug 1386986 - Move nsDisplaySVGEffect::mEffectsBounds to nsDisplayFilter. r=mstange
Put mEffectsBounds in nsDisplyaSVGEffect does not really make sense, since only
nsDisplayFilter need it.

MozReview-Commit-ID: KSvDspZJcMP

--HG--
extra : rebase_source : 9d2f994b40e82e7146358932fbebbc60a4ca01c6
extra : source : cfd8d564c0198239eb029e4984d75a692bd9f9ca
2017-08-03 16:50:06 +08:00
Ehsan Akhgari ce1eea874c Bug 1385182 - Try to avoid dynamic allocations for most arrays created inside nsDisplayList::Sort(); r=mstange 2017-08-03 23:05:26 -04:00
Ehsan Akhgari 8673ee6cd6 Bug 1379344 - Avoid traversing the display list twice inside nsDisplayList::UpdateBounds(); r=mstange 2017-08-03 23:04:48 -04:00
Kartikaya Gupta c474e2d82f Bug 1386747 - Put the scroll thumb's animation id in the scroll data for APZ. r=ethlin
MozReview-Commit-ID: fELBQVHky6
2017-08-03 15:32:01 -04:00
Kartikaya Gupta 7a68e63770 Bug 1386747 - Ensure that scroll thumb display items generate animation IDs. r=ethlin
We need to create a WebRenderAnimationData item in order to preserve the
animation id on the frame - this allows to re-use the same animation id
over multiple display list building phases.

MozReview-Commit-ID: 5Uj5sv6FUgt
2017-08-03 15:31:50 -04:00
Ethan Lin c80dac96f4 Bug 1386188 - Support filter for layers-free mode. r=kats
MozReview-Commit-ID: LuPnaSjhjgk

--HG--
extra : rebase_source : 2cf28919048683cdb446c5456a933651d2689fa1
2017-08-03 17:41:41 +08:00
Sebastian Hengst 2caa31713d Backed out changeset 4020e23649ea (bug 1386188) for Windows bustage at layers/StackingContextHelper.h(50). r=backout on a CLOSED TREE 2017-08-03 09:56:54 +02:00
Ethan Lin d2103026b7 Bug 1386188 - Support filter for layers-free mode. r=kats
MozReview-Commit-ID: LuPnaSjhjgk
2017-08-03 15:24:25 +08:00
Morris Tseng fbee651cc7 Bug 1378606 - Support mix-blend-mode in layers-free mode.
MozReview-Commit-ID: LNORKj1bUYq
2017-08-03 11:27:45 +08:00
Ethan Lin fa25e69f8d Bug 1384839 - Part3. Implement nsDisplayMask::CreateWebRenderCommands. r=kats
MozReview-Commit-ID: D6eOYP29XlN

--HG--
extra : rebase_source : 052360f9c7583b2e74880fbb0687b88e3765568f
2017-07-31 13:57:10 +08:00
Kartikaya Gupta c3e4aef0b4 Bug 1384616 - Save APZ-relevant scrollbar data into the WR scroll data for layers-free transactions. r=jrmuizel
MozReview-Commit-ID: 6DQz9N6Wq0H

--HG--
extra : rebase_source : 8a113d4a53e1562b55cc05a0bc411675a2ca9eb1
2017-07-31 15:27:30 -04:00
Kartikaya Gupta 4ed905c664 Bug 1384616 - Save APZ-relevant data from fixed-pos items in the WR scroll data for layers-free transactions. r=jrmuizel
MozReview-Commit-ID: HAFnrCVM9pZ

--HG--
extra : rebase_source : 9b7f5f7a3487501061b0526bfc92b06ef5593a88
2017-07-31 15:27:29 -04:00
Kartikaya Gupta 3b8aaa896a Bug 1384616 - Change how display items put their APZ-relevant info into the WebRenderScrollData. r=jrmuizel
Instead of the WebRenderLayerScrollData code knowing about all the
different display item types, it makes more sense to move this logic
into the display items.

In addition to avoiding dis-encapsulating the data from nsDisplayItem subclasses,
this makes it easier to handle two specific scenarios:
(1) the case where an nsDisplayItem A subclasses another nsDisplayItem B, but A
and B have different types returned by GetType(). Previously A and B would have
to be handled explicitly in the WebRenderLayerScrollData switch statements,
which doesn't scale well if new types are added. With the new approach the
virtual function is shared down from A to B and so takes care of it. This is
particularly relevant for types like nsDisplayOwnLayer which have a number of
subclasses.

(2) the case where a display item *might* have APZ-relevant information.
In this case the type of the item alone is not sufficient to determine
if we need to create a new WebRenderLayerScrollData for it. Instead, we
need to access specific state inside the display item. This is now
handled by the UpdateScrollData function returning true when passed
nullptr arguments, and replaces the switch statement in
WebRenderLayerManager that updated forceNewLayerData.

MozReview-Commit-ID: FlfHlgSccSn

--HG--
extra : rebase_source : d1fe841724cc6020433aea31ffb5214d8a44d0a9
2017-07-31 15:27:29 -04:00
Kartikaya Gupta 72688d935e Bug 1384616 - Fix indentation. r=jrmuizel
MozReview-Commit-ID: ArkCmZieGum

--HG--
extra : rebase_source : de6d006d63947b9ca8b972c70e6e8517073cd28c
2017-07-31 15:27:29 -04:00
Ethan Lin 805e149605 Bug 1384043 - Support solid color for layers free mode. r=mattwoodrow
MozReview-Commit-ID: H4YWgdl1yAV

--HG--
extra : rebase_source : ea2920a5b25c2fde2950af189c7245c90d370934
2017-07-26 10:03:23 +08:00
Wes Kocher 051dc17e6c Merge inbound to central, a=merge CLOSED TREE
MozReview-Commit-ID: GYc8r8gnS0j
2017-07-21 18:12:55 -07:00
Ethan Lin 9a75620fae Bug 1378602 - Part1. Add WR support for nsDisplayOpacity. r=kats
MozReview-Commit-ID: 8aH3pJ0oiGc
2017-07-21 14:21:46 +08:00
Ryan VanderMeulen d229288071 Merge m-c to autoland. a=merge
CLOSED TREE

--HG--
extra : amend_source : 2ab51304cc7df444f22c3aac001a1aba61faee3a
2017-07-21 09:42:41 -04:00
Nicolas Silva a9bf06994d Bug 1377595 - Mark display items that should be painted on the content side. r=jnicol 2017-07-20 11:34:15 +02:00
Kartikaya Gupta d9edfa153c Bug 1382744 - Make sure we process nested display items for layers-free webrender mode. r=ethlin
MozReview-Commit-ID: mTox2irS1w

--HG--
extra : rebase_source : 97cb2163aaf4a9f6df62688724df2ee051f55880
2017-07-20 14:14:25 -04:00
cku b507182a78 Bug 1381503 - Part 2. Do not use GetWidgetLayerManager if gfxPrefs::LayersAllowTextLayers return false. r=mattwoodrow
Call gfxPrefs::LayersAllowTextLayers before aBuilder->GetWidgetLayerManager,
which is costly. Since LayersAllowTextLayers returns false by default, we are
free of using aBuilder->GetWidgetLayerManager.

MozReview-Commit-ID: Jv1voPYjOad

--HG--
extra : rebase_source : b4892a8800d71eeac5f30b8425954505cade31e6
2017-07-17 23:31:36 +08:00
cku efa9c443f2 Bug 1377329 - Enlarge the default capacity of nsDisplayBuilfer::mFramesMarkedForDisplayList. r=mattwoodrow
For gmail, 100 is too small, enlarge the dafault capaicty of
nsDisplayListBuilder::MarkFramesForDisplayList to prevent reallocation.

MozReview-Commit-ID: 5zSxyakZ5O9

--HG--
extra : rebase_source : a20032ef98fc0e78ddbd4ac8194ee4f11c2e11a7
extra : source : 105804994e32827ff87ea7fcacecf942df41a051
2017-07-14 01:47:34 +08:00
Morris Tseng 03f68881d2 Bug 1376855 - Removed unused variables and interfaces. r=kats
MozReview-Commit-ID: 5rPI7jNI94K

--HG--
extra : rebase_source : 20ffeb6e064de9ccf19729aa6045ffa595c51429
2017-06-28 13:42:24 -07:00
Morris Tseng c5b2766eac Bug 1376855 - Support image mode of nsDisplayBorder in layers free mode. r=kats
MozReview-Commit-ID: 8FgUKpeCbka

--HG--
extra : rebase_source : 66b66d26c9b22cc0a9b11f57e9a743f07d8e6b42
2017-06-28 13:57:00 -07:00
Morris Tseng 506acb1953 Bug 1376855 - Support nsDisplayBackgroundImage in layers free mode. r=kats
MozReview-Commit-ID: KaIAVfNB4E5

--HG--
extra : rebase_source : a7797ce7ef8439780c2f61f7edf68f26c654c9ae
2017-06-28 15:07:45 -07:00
Ethan Lin 82a7c2b5e4 Bug 1372118 - Part3. Implement CreateWebRenderCommands for text, transform and background color. r=jrmuizel, r=kats
MozReview-Commit-ID: JRoSjygSFHc
2017-06-30 17:23:20 -07:00
Ethan Lin 17960f3f3e Bug 1372118 - Part2. Use new interface of CreateWebRenderCommands for non-image display items. r=jrmuizel, r=kats
MozReview-Commit-ID: BcmRjQhDEyf
2017-06-30 17:23:20 -07:00
Ethan Lin de600bafd7 Bug 1372118 - Part1. Have a path to create WebRender commands without layers. r=jrmuizel, r=kats, r=mattwoodrow
MozReview-Commit-ID: 7iOW9rEtwur
2017-06-30 17:23:20 -07:00
Alexis Beingessner adb013669b Bug 1088760 - Remove nsRenderingContext, replacing all of its uses with gfxContext. r=jwatt,jrmuizel
MozReview-Commit-ID: K1WUIOnvazF
2017-06-13 11:00:10 -04:00
Sebastian Hengst f3bf820bfd Backed out changeset 3d1ce85e6348 (bug 1088760) for bustage, at least on Android at layout/generic/nsPluginFrame.cpp:1612. r=backout 2017-06-13 00:30:03 +02:00
Alexis Beingessner c75211cb95 Bug 1088760 - Remove nsRenderingContext, replacing all of its uses with gfxContext. r=jwatt,jrmuizel
MozReview-Commit-ID: K1WUIOnvazF
2017-06-12 17:32:48 -04:00
Botond Ballo 539791ed1e Bug 1367488 - Pre-render offscreen portions of scrollbar thumbs inside an iframe. r=mstange
MozReview-Commit-ID: LCBHnFJdGtp

--HG--
extra : rebase_source : 1ab1d812674d321d76e634953284b3983774d798
2017-05-29 18:05:05 -04:00
Ethan Lin 6a1eda371b Bug 1367991 - follow-up: Fix the comment. r=me 2017-05-31 16:24:12 +08:00
Ethan Lin 8dcfe0291d Bug 1367991 - Check mask layer's draw result to make sure we will repaint it in the next transaction if the image is not ready. r=cjku 2017-05-31 14:38:25 +08:00
Jonathan Kew a8f81efd8e Bug 1365982 - Attach frame properties to each frame instead of looking them up in a hashtable on the prescontext. r=mats
--HG--
rename : layout/base/FramePropertyTable.cpp => layout/base/FrameProperties.cpp
rename : layout/base/FramePropertyTable.h => layout/base/FrameProperties.h
2017-05-27 12:36:00 +01:00
Kartikaya Gupta 5320a75266 Merge m-c to graphics
MozReview-Commit-ID: Fq2lBUWyr0m
2017-05-19 13:19:35 -04:00
Ethan Lin e853c9b0a6 Bug 1364830 - Fix background image layer's draw result and image flags. r=mattwoodrow 2017-05-16 10:44:49 +08:00
cku 4b27190a36 Bug 1351440 - Part 5. typedef DrawResult in nsDisplayItem to avoid the image:: qualification. r=jwatt
MozReview-Commit-ID: 1l8DUL1z6U2
2017-05-18 22:03:54 +02:00
cku 51288e6cfe Bug 1351440 - Part 3. Pass imgDrawingParams to nsSVGMaskFrame::GetMaskForMaskedFrame. r=jwatt
The reason of this change is the same as for Part 2, except this commit fixes
nsSVGMaskFrame::GetMaskForMaskedFrame rather than PaintSVG.

MozReview-Commit-ID: DS0eG6eKDgs
2017-05-18 22:03:45 +02:00
cku d85d3ab378 Bug 1351440 - Part 2. Encapsulate DrawResult and imgIContainer::FLAG_* into imgDrawingParams, and pass it to PaintSVG. r=jwatt
The DrawResult return was not in fact anything to do with the success or
failure of that method, but was actually passing out a very specific piece of information
about the success or failure of any imagelib drawing that may not have occurred
under the various PaintSVG calls.

The signature of PaintSVG is changed from
  DrawResult PaintSVG(...., uint32 flags);
to
  void PaintSVG(...., imgDrawingParams& aPackage);

imgDrawingParams wraps DrawResult and imgIContainer::FLAG_* as a pack, pass through
PaintSVG to imagelib draw calls under beneath.

MozReview-Commit-ID: IOq2evUAOQF
2017-05-18 22:03:41 +02:00