Jeff Muizelaar
69909eb9c0
Bug 1272778. Use IntRects for clip rects instead of Rects. r=mstange
...
Previously, we took an IntRect converted to Rect and then later wanted
ints in the backend. This avoids all of that.
2016-05-13 19:58:43 -04:00
Wes Kocher
4e66096f2c
Backed out changeset b15136f926ca (bug 1272778) for build bustage
2016-05-13 16:05:12 -07:00
Jeff Muizelaar
1e05ef0499
Bug 1272778. Use IntRects for clip rects instead of Rects. r=mstange
...
Previously, we took an IntRect converted to Rect and then later wanted
ints in the backend. This avoids all of that.
2016-05-13 18:51:09 -04:00
Kevin Wern
4d07bc92ea
Bug 1227231: Use generic tree traversal algorithms for loops over Layer trees. r=botond
...
Create an Iterator type with classes ForwardIterator and ReverseIterator,
having GetFirstChild/GetNextSibling and GetLastChild/GetPrevSibling
methods, respectively. Specify the iterator type for each call to
ForEachNode. With this, we can support trees with forward and reverse
sibling structures.
Additionally, apply these algorithms to all Layer recursive traversals,
where applicable. Update tests to ensure both directions yield expected
results.
MozReview-Commit-ID: iYpX22XHTa
2016-03-10 01:20:40 -08:00
Gregor Wagner
806dcf8b7e
Bug 1271749 - Followup for Remove LayerManagerComposite access to nsIWidget. r=dvander
2016-05-11 17:09:43 -07:00
Matt Woodrow
10fe7d3518
Bug 1260611 - Part 3: Hold on to TextureHosts until the following composite is done. r=sotaro
2016-05-11 10:55:17 +12:00
Thomas Zimmermann
926082980f
Bug 1269422: Get Gonk widget with |CompositorWidgetProxy::RealWidget|. r=dvander
2016-05-05 11:27:38 +02:00
bd339
3dd8241cb8
Bug 1249936 - Remove unnecessary const from the return type of Layer accessors that return matrices by value. r=botond
...
MozReview-Commit-ID: 4JKqUDtYN3P
2016-05-03 16:33:43 +02:00
David Anderson
7ece2d231a
Restrict SetDispAcquireFence's nsIWidget access to Gonk. (bug 1269653 part 2, r=kats)
2016-05-03 17:37:34 -07:00
David Anderson
6763a01012
Don't use nsIWidget to check APZ in LayerManagerComposite. (bug 1269653 part 1, r=kats)
2016-05-03 17:37:34 -07:00
bd339
d013441203
Bug 1249936 - add a LayerComposite::GetShadowTransform method & simplify Layer::GetLocalTransform. r=botond
...
MozReview-Commit-ID: 80RNCyxAjtq
2016-05-01 12:54:26 +02:00
David Anderson
117773f3a6
Change Compositor::GetWidget to return a CompositorWidgetProxy. (bug 1264545 part 3, r=jimm)
2016-04-29 19:20:41 -04:00
Botond Ballo
0257b4cdc4
Bug 1257288 - Move IntersectMaybeRects() to gfx/2d/Rect.h. r=kats
...
MozReview-Commit-ID: C99GwsLN7Zg
2016-04-20 17:16:09 -04:00
Nicolas Silva
e779edc604
Bug 1258768 - Remove the remaining unsafe compositor casts. r=dvander
2016-04-14 12:38:42 +02:00
Sotaro Ikeda
0fc240ed8d
Bug 1262601 - Handle video content as opaque in PostProcessLayers() r=mattwoodrow
2016-04-10 19:51:21 -07:00
Sotaro Ikeda
d9e33fb961
Bug 1259541 - Reduce clearing backbuffer in nsBaseWidget::CreateBackBufferDrawTarget() r=mattwoodrow
2016-04-04 18:25:04 -07:00
Matt Woodrow
1190a416f9
Bug 1223736 - Part 3: Remove the distinction between 2d and 3d masks since it only adds complexity. r=Bas
2016-03-22 09:10:37 +13:00
Matt Woodrow
d710bf12bc
Bug 1250718 - Improve layer logging for preserve-3d layers. r=thinker
2016-03-18 09:18:10 +13:00
Botond Ballo
1a3b459d85
Bug 1248822 - In LayerManagerComposite::UpdateAndRender(), call PostProcessLayers() before LayerTreeInvalidation. r=mattwoodrow
...
The reason is that PostProcessLayers() can change the effective visible region,
and LayerTreeInvalidation needs the final effective visible region.
MozReview-Commit-ID: 1wLROyOTcIB
2016-02-08 19:01:45 -05:00
David Anderson
e796d454cf
Handle device resets by recreating the compositor, rather than the compositor IPDL stack. (bug 1245765 part 7, r=mattwoodrow)
2016-02-29 01:53:15 -05:00
David Anderson
d479876d10
Factor compositor initialization out of LayerManagerComposite. (bug 1245765 part 6, r=mattwoodrow)
2016-02-29 01:53:14 -05:00
Lee Salzman
a1983144f8
Bug 1249813 - part 3 - tell the compositor if the root layer has opaque content so it can skip clears. r=mattwoodrow
2016-02-25 14:38:05 -05:00
Milan Sreckovic
8b1c6899f4
Bug 1249312: UseAcceleratedCanvas on Mac should really be UseAcceleratedSkiaCanvas. r=mchang
2016-02-18 14:00:53 -05:00
Thinker K.F. Li
6f73aa3f88
Bug 1244943 - Make PostProcessLayers aware of preserve-3d. r=mattwoodrow
2016-02-18 17:12:40 -08:00
Michelangelo De Simone
3c44cb010c
Bug 1247445 - Rename Layer::GetEffectiveVisibleRegion GetLocalVisibleRegion. r=botond
2016-02-13 16:50:51 -08:00
Botond Ballo
0f57ffa346
Bug 1237827 - Be sure to clear LayerComposite::mLayerComposited between each composite. r=mattwoodrow
2016-02-08 20:26:54 -05:00
Matt Woodrow
5f57f1aaf4
Bug 1229317 - Allow preserve-3d and opacity to be combined on the root element of a preserve-3d chain. r=roc
2016-02-07 23:51:11 +13:00
Phil Ringnalda
b42e5c6dd4
Back out e751d638ab4b (bug 1229317) for reftest "Assertion failure: oldState < kReadMax" and crashes
...
CLOSED TREE
2016-02-05 22:42:55 -08:00
Matt Woodrow
5ed8180d76
Bug 1229317 - Allow preserve-3d and opacity to be combined on the root element of a preserve-3d chain. r=roc
2016-02-06 17:57:34 +13:00
Nicholas Nethercote
cd54d824b6
Bug 1239864 (part 6) - Use the new rect iterators in gfx/. r=nical.
2016-01-18 17:20:58 -08:00
Sotaro Ikeda
2e0421527a
Bug 1049296 - Handle Sideband stream compositing in HwcComposer2D r=mwu,nical
2016-01-18 20:52:32 -08:00
Matt Woodrow
20d16b245a
Bug 1231564 - Don't trigger new composites just to repaint debug overlays. r=BenWa
2016-01-11 15:12:05 +13:00
Matt Woodrow
5cd3499add
Bug 1231564 - Don't take the compositor side layer-tree snapshot until after compositing. r=dvander
2016-01-11 15:11:14 +13:00
Markus Stange
d0d996e53a
Bug 1187322 - Fix bustage.
2015-12-29 12:13:24 +01:00
Botond Ballo
cd4a0ce37c
Bug 1069417 - Fix an error introduced when rebasing across bug 1021845 to reopen a CLOSED TREE. r=bustage
2015-12-03 02:20:35 -05:00
Botond Ballo
6d77a56654
Bug 1069417 - Remove the explicit template argument of TransformTo() and related functions. r=kats
...
In this process, TransformTo() and UntransformTo() are renamed TransformedBy()
and UntransformBy() so calls to them continue to read sensibly.
2015-11-30 20:06:45 -05:00
Botond Ballo
85af71a0e4
Bug 1069417 - Modify TransformTo() and related functions to use typed matrices. r=kats
...
Call sites (all in APZ and related code) were modified accordingly. Some of
these modifications involved changing some matrices stored in APZ to be typed.
2015-11-30 20:14:31 -05:00
Nicholas Nethercote
72c03344bc
Bug 1229237 (part 2) - Make nsIWidget::DrawWindowUnderlay() take a LayoutDeviceIntRect. r=botond.
2015-11-16 20:34:00 -08:00
Markus Stange
8f38bc372d
Bug 1021845 - Before compositing, clip the visible region of a layer to the layer's clip rect. r=mattwoodrow
2015-12-02 22:54:03 +01:00
Sunny Sidhu
2ba69faae0
Bug 1220873 - Make Layer::mVisibleRegion a LayerIntRegion. r=botond
2015-11-29 02:07:55 -05:00
Botond Ballo
45329ab4ea
Bug 1208829 - Recompute visible regions during composition. r=mstange
2015-11-23 14:45:53 -05:00
Botond Ballo
253f689c20
Bug 1208829 - Rename LayerManagerComposite::ApplyOcclusionCulling to PostProcessLayers, and clean it up a bit. r=mstange
2015-11-09 20:43:54 -05:00
Nicholas Nethercote
ce94aae3ae
Bug 1225007 (part 1, attempt 3) - Use LayoutDevicePixel more in Cocoa widget code. r=kats.
2015-11-19 14:10:38 +11:00
Phil Ringnalda
040c117af2
Backed out 2 changesets (bug 1225007) for frequent OS X "Shouldn't return empty rect" assertion failures, a=backout
...
Backed out changeset c5b352c74b35 (bug 1225007)
Backed out changeset 8a513c70ce7c (bug 1225007)
2015-11-19 20:55:26 -08:00
Nicholas Nethercote
5db293bd80
Bug 1225007 (part 1, attempt 2) - Use LayoutDevicePixel more in Cocoa widget code. r=kats.
2015-11-19 14:10:38 +11:00
Nicholas Nethercote
117b39c2e9
Backout 52ba24123046 and 66768d6a50fa (bug 1225007) for causing lots of test assertions on Mac. CLOSED TREE
2015-11-17 17:02:39 -08:00
Nicholas Nethercote
0a8fdd9562
Bug 1225007 (part 1) - Use LayoutDevicePixel more in Cocoa widget code. r=kats.
2015-11-15 21:37:52 -08:00
Nicholas Nethercote
b557cdc655
Bug 1224403 (part 10) - Make nsScreenGonk::GetNaturalBoundsUntyped() typed. r=kats.
2015-11-12 05:44:43 -08:00
Nicholas Nethercote
3f2b2ab546
Bug 1223690 - Remove implicit Rect conversions. r=jrmuizel.
...
gfxRect can be implicitly constructed from IntRect, which hides a number of
implicit conversion points, makes Moz2Dification harder, and has some
surprising effects.
This patch removes the implicit constructor and replaces it with an explicit
conversion function:
gfxRect ThebesRect(const IntRect&)
This is the obvious outcome of removing the constructor.
But there is also a second, less obvious outcome: currently we do a number of
IntRect-to-Rect conversions using ToRect(), which (surprisingly) works because
it turns into an implicit IntRect-to-gfxRect conversion (via the implicit
constructor) combined with an explicit gfxRect-to-Rect conversion (via
ToRect()). I.e. we do two conversions, going from a Moz2D type to a Thebes
type and back to a Moz2D type!
So this patch also changes these conversion. It moves this existing function:
Rect ToRect(const IntRect&)
from gfx2DGlue.h -- where it doesn't really belong because it doesn't involve
any Thebes types -- to gfx/2d/Rect.h, templatifying and renaming it as
IntRectToRect() in the process.
The rest of the patch deals with fall-out from these changes. The call sites
change as follows:
- IntRect-to-gfxRect conversions:
- old: implicit
- new: ThebesRect()
- IntRect-to-Rect conversions:
- old: ToRect()
- new: IntRectToRect()
2015-11-11 14:23:14 -08:00
Botond Ballo
60a5318264
Bug 1222661 - Replace FromUntyped(obj) calls with FromUnknown*(obj). r=nical
2015-11-09 18:22:25 -05:00