gecko-dev/gfx/layers
Jamie Nicol 3970c266f2 Bug 1532731 - Handle 3D transformed ancestors when calculating display port transform. r=mattwoodrow
ClientTiledPaintedLayer::GetTransformToAncestorsParentLayer calculates
the transform from the layer to its display port ancestor's
parent. This transform is then applied to the calculated display
port.

However, if the display port ancestor participates in a preserve-3d
context then the scroll offset will not be included in the that
layer's transform, it will instead be on the root layer of the
preserve-3d context. This was causing the critical display port to
remain still as the contents of a perspective transform were scrolled,
resulting in content being permanently painted in low-precision as the
page was scrolled down.

Instead, if the display port ancestor participates in a 3d context, we
must find the root of that 3d context then calculate the transform to
*that* layer's parent.

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

--HG--
extra : moz-landing-system : lando
2019-04-09 21:39:02 +00:00
..
apz Bug 1516056 - Avoid calling clamped() with impossible bounds in AsyncPanZoomController::ZoomToRect(). r=kats 2019-04-08 23:35:34 +00:00
basic Bug 1528881 - Part 9: gfx/layers: Move CreateTextureHostBasic/D3D11/OGL() function declarations to header files. r=mattwoodrow 2019-02-17 23:05:15 -08:00
client Bug 1532731 - Handle 3D transformed ancestors when calculating display port transform. r=mattwoodrow 2019-04-09 21:39:02 +00:00
composite Backed out 3 changesets (bug 1538969) for wpt reftests failures on transform3d-backface-visibility-001. 2019-04-09 08:52:20 +03:00
d3d11 Bug 1519636 - clang-format-8: Reformat recent changes to the Google coding style r=Ehsan 2019-04-05 21:41:42 +00:00
ipc Backed out 3 changesets (bug 1538710) for Wrench bustage. CLOSED TREE 2019-04-08 19:09:49 +03:00
layerviewer Bug 1518283 - prohibit blank lines at the beginning and end of blocks (eslint padded-blocks) r=mossop,Standard8 2019-01-30 17:26:25 +00:00
mlgpu Bug 1519636 - clang-format-8: Reformat recent changes to the Google coding style r=Ehsan 2019-04-05 21:41:42 +00:00
opengl Backed out 3 changesets (bug 1538969) for wpt reftests failures on transform3d-backface-visibility-001. 2019-04-09 08:52:20 +03:00
protobuf
wr Bug 1541920. Handle blend mode activeness properly. r=mstange 2019-04-08 22:37:26 +00:00
AnimationHelper.cpp Bug 1540190 - replace the AnimationData IPDL union with native Maybe syntax; r=kats 2019-03-29 19:54:14 +00:00
AnimationHelper.h Bug 1540190 - replace the AnimationData IPDL union with native Maybe syntax; r=kats 2019-03-29 19:54:14 +00:00
AnimationInfo.cpp Bug 1538796 - Part 3 - convert IPDL OptionalOpacity union to use native Maybe syntax; r=kats 2019-03-25 19:29:46 +00:00
AnimationInfo.h Bug 1425837 - Part 6: Add individual transform properties into compositor animation list. r=hiro 2019-03-18 18:05:00 +00:00
AsyncCanvasRenderer.cpp Bug 1542344 - fix API mismatches in ImageEncoder; r=mccr8 2019-04-08 01:51:17 +00:00
AsyncCanvasRenderer.h Bug 1542344 - fix API mismatches in ImageEncoder; r=mccr8 2019-04-08 01:51:17 +00:00
AtomicRefCountedWithFinalize.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
AxisPhysicsModel.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
AxisPhysicsModel.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
AxisPhysicsMSDModel.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
AxisPhysicsMSDModel.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
BSPTree.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
BSPTree.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
BufferTexture.cpp Bug 1441651 - Part 2 - pass Shmem and ByteBuf by rvalref to Send* IPC methods; r=nika,jrmuizel 2019-03-04 16:35:30 +00:00
BufferTexture.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
CanvasRenderer.cpp Bug 1506665 - Add more GLContext failure handling r=jgilbert 2019-03-01 22:37:37 +00:00
CanvasRenderer.h Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan 2019-03-13 10:19:06 +01:00
CompositionRecorder.cpp Bug 1536174 - Part 1: Add API for recording composition results with content. r=mstange 2019-03-12 16:06:48 +01:00
CompositionRecorder.h Bug 1536174 - Part 1: Add API for recording composition results with content. r=mstange 2019-03-12 16:06:48 +01:00
Compositor.cpp Bug 1444449 - Do not return raw pointers to window targets from compositors r=bas 2019-02-12 18:53:10 +00:00
Compositor.h Bug 1444449 - Do not return raw pointers to window targets from compositors r=bas 2019-02-12 18:53:10 +00:00
CompositorTypes.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
CopyableCanvasRenderer.cpp Bug 1506665 - Add more GLContext failure handling r=jgilbert 2019-03-01 22:37:37 +00:00
CopyableCanvasRenderer.h Bug 1530471 - remove layers SkiaGL glue r=jrmuizel 2019-02-28 15:00:06 +00:00
D3D9SurfaceImage.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
D3D9SurfaceImage.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
D3D11ShareHandleImage.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
D3D11ShareHandleImage.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
D3D11YCbCrImage.cpp Bug 1386487 - Check if D3D11Device is obsoleted in D3D11YCbCrImage::GetAsSourceSurface() r=nical 2019-03-04 11:01:53 +00:00
D3D11YCbCrImage.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
DirectedGraph.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
DirectionUtils.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
Effects.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
Effects.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
FrameMetrics.cpp Bug 1519007 - Do not allow APZ to move the layout viewport outside the scrollable rect. r=kats 2019-03-29 22:00:36 +00:00
FrameMetrics.h Bug 1519007 - Do not allow APZ to move the layout viewport outside the scrollable rect. r=kats 2019-03-29 22:00:36 +00:00
GLImages.cpp Backed out 3 changesets (bug 1538969) for wpt reftests failures on transform3d-backface-visibility-001. 2019-04-09 08:52:20 +03:00
GLImages.h Backed out 3 changesets (bug 1538969) for wpt reftests failures on transform3d-backface-visibility-001. 2019-04-09 08:52:20 +03:00
GPUVideoImage.h Bug 1500454 - remove PVideoDecoder, etc from dom namespace. r=jya 2018-12-21 22:34:57 +00:00
ImageContainer.cpp Bug 1521000 - Part 2: Adjust our clang-format rules to include spaces after the hash for nested preprocessor directives r=sylvestre 2019-01-18 10:16:18 +01:00
ImageContainer.h Bug 1527085 - Ensure we invalidate when the image request changes. r=jrmuizel 2019-02-15 09:24:21 -05:00
ImageDataSerializer.cpp Bug 1479145 - Give RGB textures a 32-byte aligned stride on macOS in order to improve texture upload efficiency on certain drivers. r=mattwoodrow 2019-03-29 20:11:12 +00:00
ImageDataSerializer.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
ImageLayers.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
ImageLayers.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
ImageTypes.h Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan 2019-02-16 20:20:37 +01:00
IMFYCbCrImage.cpp Bug 1523969 part 8 - Move method definition inline comments to new line in 'gfx/'. r=kats 2019-02-25 16:07:19 -06:00
IMFYCbCrImage.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
IPDLActor.h Bug 1515437 - mark several IPC methods as final; r=froydnj 2018-12-19 21:46:49 +00:00
LayerAttributes.h Bug 1521644 - Add a layer property that indicates async zoom container layers. r=mattwoodrow 2019-02-01 18:29:11 +00:00
LayerMetricsWrapper.h Bug 1532731 - Handle 3D transformed ancestors when calculating display port transform. r=mattwoodrow 2019-04-09 21:39:02 +00:00
Layers.cpp No bug - clang-format -p gfx 2019-03-29 23:41:48 -07:00
Layers.h No bug - clang-format -p gfx 2019-03-29 23:41:48 -07:00
LayerScope.cpp Bug 1521000 - Part 2: Adjust our clang-format rules to include spaces after the hash for nested preprocessor directives r=sylvestre 2019-01-18 10:16:18 +01:00
LayerScope.h Bug 1511393 - Use c-basic-offset: 2 in Emacs mode line for C/C++ code. r=nbp 2018-12-01 04:52:05 +09:00
LayersHelpers.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
LayersHelpers.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
LayersLogging.cpp Bug 1441308 - Core renderroot splitting changes r=kats,sotaro 2019-03-22 18:28:42 +00:00
LayersLogging.h Bug 1441308 - Core renderroot splitting changes r=kats,sotaro 2019-03-22 18:28:42 +00:00
LayerSorter.cpp Bug 1521000 - Part 2: Adjust our clang-format rules to include spaces after the hash for nested preprocessor directives r=sylvestre 2019-01-18 10:16:18 +01:00
LayerSorter.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
LayersTypes.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
LayersTypes.h Bug 1536174 - Part 1: Add API for recording composition results with content. r=mstange 2019-03-12 16:06:48 +01:00
LayerTreeInvalidation.cpp Bug 1539306 - Use the current producer/frame id for mask layers, since they never set the previous one. r=mstange 2019-03-28 23:25:10 +00:00
LayerTreeInvalidation.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
LayerUserData.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
MacIOSurfaceHelpers.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
MacIOSurfaceHelpers.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
MacIOSurfaceImage.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
MacIOSurfaceImage.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
MemoryPressureObserver.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
MemoryPressureObserver.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
moz.build Bug 1531962 - Add a unit test harness for MobileViewportManager. r=kats 2019-04-04 22:10:27 +00:00
PaintThread.cpp Bug 1523969 part 8 - Move method definition inline comments to new line in 'gfx/'. r=kats 2019-02-25 16:07:19 -06:00
PaintThread.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
PersistentBufferProvider.cpp Backed out changeset da9a99c4896c (bug 1531975) for causing PersistentBufferProvider build bustages CLOSED TREE 2019-03-07 18:44:24 +02:00
PersistentBufferProvider.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
ProfilerScreenshots.cpp Bug 1523969 part 8 - Move method definition inline comments to new line in 'gfx/'. r=kats 2019-02-25 16:07:19 -06:00
ProfilerScreenshots.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
ReadbackLayer.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
ReadbackProcessor.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
ReadbackProcessor.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
RenderTrace.cpp Bug 1521000 - Part 2: Adjust our clang-format rules to include spaces after the hash for nested preprocessor directives r=sylvestre 2019-01-18 10:16:18 +01:00
RenderTrace.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
RepaintRequest.h Bug 1536157 - Make sure we repaint after accepting a visual scroll update. r=kats 2019-03-22 05:20:31 +00:00
RotatedBuffer.cpp Bug 1528881 - Part 6: gfx/layers: Make some global functions static. r=mattwoodrow 2019-02-17 14:25:01 -08:00
RotatedBuffer.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
ScrollableLayerGuid.h Bug 1519636 - clang-format-8: Reformat recent changes to the Google coding style r=Ehsan 2019-04-05 21:41:42 +00:00
ShareableCanvasRenderer.cpp Bug 1441308 - Core renderroot splitting changes r=kats,sotaro 2019-03-22 18:28:42 +00:00
ShareableCanvasRenderer.h Bug 1441308 - Core renderroot splitting changes r=kats,sotaro 2019-03-22 18:28:42 +00:00
SourceSurfaceSharedData.cpp Bug 1534655: Fix some unified build errors inside layers. r=kats 2019-03-12 16:08:18 +01:00
SourceSurfaceSharedData.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
SourceSurfaceVolatileData.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
SourceSurfaceVolatileData.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
SyncObject.cpp Bug 1521000 - Part 2: Adjust our clang-format rules to include spaces after the hash for nested preprocessor directives r=sylvestre 2019-01-18 10:16:18 +01:00
SyncObject.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
TextureDIB.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
TextureDIB.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
TextureSourceProvider.cpp Bug 1521000 - Part 2: Adjust our clang-format rules to include spaces after the hash for nested preprocessor directives r=sylvestre 2019-01-18 10:16:18 +01:00
TextureSourceProvider.h Bug 1516555 - Reformat everything to the Google coding style r=Ehsan 2018-12-28 15:48:06 +00:00
TextureSync.cpp Bug 1528881 - Part 6: gfx/layers: Make some global functions static. r=mattwoodrow 2019-02-17 14:25:01 -08:00
TextureSync.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
TextureWrapperImage.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
TextureWrapperImage.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
TiledLayerBuffer.h Bug 1521000 - Part 2: Adjust our clang-format rules to include spaces after the hash for nested preprocessor directives r=sylvestre 2019-01-18 10:16:18 +01:00
TransactionIdAllocator.h Bug 1517355 - Add CONTENT_FRAME_TIME variant that records from the vsync time. data-review=rrayborn, r=jrmuizel 2019-01-03 19:43:04 +00:00
TreeTraversal.h Bug 1519636 - clang-format-8: Reformat recent changes to the Google coding style r=Ehsan 2019-04-05 21:41:42 +00:00
UpdateImageHelper.h Bug 1441308 - Core renderroot splitting changes r=kats,sotaro 2019-03-22 18:28:42 +00:00
ZoomConstraints.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00