Add a size hint parameter to CreateTextureClientForDrawing, and use said
parameter to not create Gralloc surfaces that are bigger than the maximum
texture size.
This isn't technically correct because these functions will never call
functions that throw exceptions, however it lets the profiler unwind them.
The unwinding will also probably be wrong during prologue/epilogue. The right
solution is probably to use cfi.
In order to make test behavior better match real-world sampling behavior, this
patch updates the test code in CompositorParent so that it only updates the
layer when a composite is scheduled. This enables creating mochitests that
reproduce bugs observed in regular usage.
PLayerTransaction.GetTransform doesn't actually return the same kind of value
when the transform on the layer is not set by animation. This is because it uses
information stored with the animation to undo various transforms. We shouldn't
pretend to return something useful/similar when we don't have that information
available.
This patch renames GetTransform to GetAnimationTransform and makes it return
a union that has type void_t if the layer is not transformed by animation.
LayerTransactionParent::RecvGetTransform takes care to reverse all the
transformations applied by AsyncCompositionManager::SampleValue to the CSS
values calculated so that it can return CSS values for testing. However, it
fails to revert the conversion from CSS pixels to device pixels applied to the
translation components of the transform by
nsStyleTransformMatrix::ProcessTranslatePart as called by
nsDisplayTransform::GetResultingTransformMatrix.
This patch converts the resulting transform's translation components from device
pixels back to CSS pixels. It also adds documentation for the other operations
in LayerTransactionParent::RecvGetTransform.
http://hg.mozilla.org/users/bschouten_mozilla.com/tiling/summary
This work is mainly porting tiled layers to new textures, implementing
double-buffered tiles and implementing a texture client pool, to be used by
tiled content clients.
Any questions regarding this patch should go to:
Bas Schouten <bschouten@mozilla.com>
Chris Lord <clord@mozilla.com>
Nicolas Silva <nsilva@mozilla.com>
In their absence questions can be directed to:
Jeff Muizelaar <jmuizelaar@mozilla.com>
Benoit Girard <bgirard@mozilla.com>