gecko-dev/gfx/layers
Timothy Nikkel b89bb47353 Bug 1628988. Don't apply ImgDrawResult::NOT_READY in PaintMaskSurface. r=mstange
PaintMaskSurface shouldn't be applying ImgDrawResult::NOT_READY when we don't have a frame and the mask image hasn't been resolved. ImgDrawResult is only about drawing images, not about waiting for external resources to resolve or frames to get constructed. The only purpose of tracking ImgDrawResult's in painting code is to know which frames we need to invalidate because their rendering might change if we sync decode images during a Draw call. Applying NOT_READY here means we invalidate for every paint with the sync decode images flag (ie reftest paints), and it never changes from NOT_READY. This bites the reftest for this bug 1624532.

To fix it, instead of "overloading" the ImgDrawResult we return a bool to indicate the mask is missing or incomplete.

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

--HG--
extra : moz-landing-system : lando
2020-04-13 20:08:05 +00:00
..
apz Bug 1627737 - Add `mTargetIsRoot` to `APZEventResult` r=botond 2020-04-08 16:13:50 +00:00
basic Bug 1618345 - Enforce proper color management by splitting gfx::Color into sRGBColor and DeviceColor types. r=jrmuizel 2020-03-09 14:16:17 +00:00
client Bug 1620594 - Part 7: Remove TabGroup and SystemGroup. r=nika,bas 2020-04-07 15:17:47 +00:00
composite Bug 1602133 - WebGPU presentation r=jgilbert,webidl,smaug,aosmond 2020-04-06 22:29:18 +00:00
d3d11 Bug 1617808 - Re-deliver PREFER_COMPOSITOR_SURFACE flag to WebRender r=gw 2020-03-10 03:52:08 +00:00
ipc Bug 1627737 - Add `mTargetIsRoot` to `APZEventResult` r=botond 2020-04-08 16:13:50 +00:00
layerviewer Bug 1620556 - Automatic code fixes for Prettier 1.19.1 upgrade. r=Standard8,remote-protocol-reviewers,marionette-reviewers,webcompat-reviewers,perftest-reviewers,sparky,whimboo,denschub 2020-03-13 23:38:52 +00:00
mlgpu Bug 1626659 - Fix non-unified build errors in gfx/layers/mlgpu. r=tnikkel 2020-04-04 23:39:01 +00:00
opengl Bug 1143478 - Rename mozilla::Pair to CompactPair. r=froydnj 2020-03-17 12:42:12 +00:00
protobuf Bug 1627444 p2 - Regenerate protobuf classes r=lina 2020-04-07 18:05:56 +00:00
wr Bug 1628988. Don't apply ImgDrawResult::NOT_READY in PaintMaskSurface. r=mstange 2020-04-13 20:08:05 +00:00
AnimationHelper.cpp Bug 1620873 - Make MotionPathData Maybe<MotionPathData> in TransformData. r=boris 2020-03-10 01:30:08 +00:00
AnimationHelper.h Bug 1620873 - Make MotionPathData Maybe<MotionPathData> in TransformData. r=boris 2020-03-10 01:30:08 +00:00
AnimationInfo.cpp Bug 1620873 - Make MotionPathData Maybe<MotionPathData> in TransformData. r=boris 2020-03-10 01:30:08 +00:00
AnimationInfo.h Bug 1620873 - Make MotionPathData Maybe<MotionPathData> in TransformData. r=boris 2020-03-10 01:30:08 +00:00
AsyncCanvasRenderer.cpp Bug 1626659 - Fix non-unified build errors elsewhere in gfx/layers. r=tnikkel 2020-04-04 23:39:14 +00:00
AsyncCanvasRenderer.h Bug 1598998 - Fix CanvasContextType::ImageBitmap handling r=nical 2020-01-08 01:12:50 +00:00
AtomicRefCountedWithFinalize.h
AxisPhysicsMSDModel.cpp Bug 1613985 - Use default for equivalent-to-default constructors/destructors in gfx. r=jrmuizel 2020-03-04 15:39:20 +00:00
AxisPhysicsMSDModel.h
AxisPhysicsModel.cpp Bug 1613985 - Use default for equivalent-to-default constructors/destructors in gfx. r=jrmuizel 2020-03-04 15:39:20 +00:00
AxisPhysicsModel.h
BSPTree.cpp
BSPTree.h Bug 1609996 - Reorder some includes affected by the previous patches. r=froydnj 2020-01-20 16:19:48 +00:00
BufferTexture.cpp Bug 1609996 - Reorder some includes affected by the previous patches. r=froydnj 2020-01-20 16:19:48 +00:00
BufferTexture.h Bug 1600595: Part 2 - Change BufferTexture to allow any IShmemAllocator owner r=mattwoodrow 2020-01-04 19:35:38 +00:00
CanvasDrawEventRecorder.cpp Bug 1614635: Keep waiting on the remote canvas writer side while the reader hasn't closed. r=jrmuizel 2020-02-24 10:53:48 +00:00
CanvasDrawEventRecorder.h Bug 1614635: Keep waiting on the remote canvas writer side while the reader hasn't closed. r=jrmuizel 2020-02-24 10:53:48 +00:00
CanvasRenderer.cpp Bug 1626659 - Fix non-unified build errors elsewhere in gfx/layers. r=tnikkel 2020-04-04 23:39:14 +00:00
CanvasRenderer.h Bug 1477756 - Initial out-of-process WebGL implementation. r=mccr8,handyman 2020-01-08 22:19:14 +00:00
CompositionRecorder.cpp Bug 1581240 - Return collected frames from the composition recorder as data URIs r=mstange 2019-11-07 22:34:37 +00:00
CompositionRecorder.h Bug 1581240 - Return collected frames from the composition recorder as data URIs r=mstange 2019-11-07 22:34:37 +00:00
Compositor.cpp Bug 1626659 - Fix non-unified build errors elsewhere in gfx/layers. r=tnikkel 2020-04-04 23:39:14 +00:00
Compositor.h Bug 1618345 - Enforce proper color management by splitting gfx::Color into sRGBColor and DeviceColor types. r=jrmuizel 2020-03-09 14:16:17 +00:00
CompositorTypes.h Bug 1570879 - Fix high contrast theme handling with DirectComposition and WebRender r=nical 2019-10-08 10:07:47 +00:00
CopyableCanvasRenderer.cpp Bug 1626659 - Fix non-unified build errors elsewhere in gfx/layers. r=tnikkel 2020-04-04 23:39:14 +00:00
CopyableCanvasRenderer.h Bug 1477756 - Initial out-of-process WebGL implementation. r=mccr8,handyman 2020-01-08 22:19:14 +00:00
D3D9SurfaceImage.cpp Bug 1618458 - Clean up TextureClientRecycleAllocator r=nical 2020-02-27 13:34:08 +00:00
D3D9SurfaceImage.h
D3D11ShareHandleImage.cpp Bug 1600595: Part 4 - Make D3D11ShareHandleImage use CreateBGRA8DataSourceSurfaceForD3D11Texture r=mattwoodrow 2020-01-04 19:37:01 +00:00
D3D11ShareHandleImage.h
D3D11YCbCrImage.cpp
D3D11YCbCrImage.h Bug 1618458 - Clean up TextureClientRecycleAllocator r=nical 2020-02-27 13:34:08 +00:00
DirectedGraph.h
DirectionUtils.h
Effects.cpp
Effects.h Bug 1618345 - Enforce proper color management by splitting gfx::Color into sRGBColor and DeviceColor types. r=jrmuizel 2020-03-09 14:16:17 +00:00
FrameMetrics.cpp Bug 1626659 - Fix non-unified build errors elsewhere in gfx/layers. r=tnikkel 2020-04-04 23:39:14 +00:00
FrameMetrics.h Bug 1617427 - Miscellaenous documentation fixes. r=botond 2020-03-13 19:56:56 +00:00
GLImages.cpp
GLImages.h Bug 1509316 - p1: move composite listening out of VideoData/VideoSink. r=jya,mattwoodrow 2019-10-09 23:08:12 +00:00
GPUVideoImage.h Bug 1613985 - Use default for equivalent-to-default constructors/destructors in gfx. r=jrmuizel 2020-03-04 15:39:20 +00:00
IMFYCbCrImage.cpp
IMFYCbCrImage.h
IPDLActor.h
ImageContainer.cpp Bug 1618429 - Add RecycleAllocator support to ImageContainer for RDD process r=nical 2020-03-11 10:52:48 +00:00
ImageContainer.h Bug 1618429 - Add RecycleAllocator support to ImageContainer for RDD process r=nical 2020-03-11 10:52:48 +00:00
ImageDataSerializer.cpp
ImageDataSerializer.h
ImageLayers.cpp Bug 1613985 - Use default for equivalent-to-default constructors/destructors in gfx. r=jrmuizel 2020-03-04 15:39:20 +00:00
ImageLayers.h Bug 1610388 - Remove nsAutoPtr usage from gfx/. r=mattwoodrow 2020-01-21 01:25:28 +00:00
ImageTypes.h Bug 1613358 [Wayland] Implement WaylandDMABUFSurfaceImage dmabuf image, r=sotaro 2020-02-06 15:15:02 +00:00
LayerAttributes.h Bug 1613009 - Make SimpleLayerAttributes explicitly serialized. r=botond 2020-03-13 19:59:04 +00:00
LayerMetricsWrapper.h Bug 1610731 - Remove GetIsStickyPosition and clean up some TODOs. r=botond 2020-04-04 06:16:57 +00:00
LayerScope.cpp Bug 1627444 p3 - Replace ByteSize by ByteSizeLong. r=boris 2020-04-07 15:26:26 +00:00
LayerScope.h
LayerSorter.cpp
LayerSorter.h
LayerTreeInvalidation.cpp Bug 1618345 - Enforce proper color management by splitting gfx::Color into sRGBColor and DeviceColor types. r=jrmuizel 2020-03-09 14:16:17 +00:00
LayerTreeInvalidation.h
LayerUserData.h
Layers.cpp Bug 1622360 - Downgrade mPendingScrollUpdates from RenderRootArray. r=jrmuizel 2020-04-06 20:44:46 +00:00
Layers.h Bug 1622360 - Downgrade mPendingScrollUpdates from RenderRootArray. r=jrmuizel 2020-04-06 20:44:46 +00:00
LayersHelpers.cpp
LayersHelpers.h
LayersLogging.cpp Bug 1622360 - Remove SLGuidAndRenderRoot and convert remaining uses to ScrollableLayerGuid. r=botond 2020-03-27 17:44:21 +00:00
LayersLogging.h Bug 1622360 - Remove SLGuidAndRenderRoot and convert remaining uses to ScrollableLayerGuid. r=botond 2020-03-27 17:44:21 +00:00
LayersTypes.cpp Bug 1594145 - Add gfx telemetry scalars to geckoview_streaming. r=Dexter,jnicol 2019-11-26 19:42:06 +00:00
LayersTypes.h Bug 1624789 - Replace MOZ_MUST_USE with [[nodiscard]] in gfx. r=gfx-reviewers,nical 2020-03-25 10:35:04 +00:00
MacIOSurfaceHelpers.cpp
MacIOSurfaceHelpers.h
MacIOSurfaceImage.cpp
MacIOSurfaceImage.h
MemoryPressureObserver.cpp Bug 1626659 - Fix non-unified build errors elsewhere in gfx/layers. r=tnikkel 2020-04-04 23:39:14 +00:00
MemoryPressureObserver.h
NativeLayer.h Bug 1613985 - Use default for equivalent-to-default constructors/destructors in gfx. r=jrmuizel 2020-03-04 15:39:20 +00:00
NativeLayerCA.h Bug 1608717 - Support per-tile clip (valid) region for native compositor implementations. r=sotaro,mstange 2020-02-12 04:27:15 +00:00
NativeLayerCA.mm Bug 1608717 - Support per-tile clip (valid) region for native compositor implementations. r=sotaro,mstange 2020-02-12 04:27:15 +00:00
OOPCanvasRenderer.h Bug 1613985 - Use default for equivalent-to-default constructors/destructors in gfx. r=jrmuizel 2020-03-04 15:39:20 +00:00
PaintThread.cpp Bug 1620594 - Part 1: Rework NS_ReleaseOnMainThreadSystemGroup. r=nika 2020-04-07 15:16:23 +00:00
PaintThread.h Bug 1613985 - Use default for equivalent-to-default constructors/destructors in gfx. r=jrmuizel 2020-03-04 15:39:20 +00:00
PersistentBufferProvider.cpp Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan 2019-11-26 14:35:02 +00:00
PersistentBufferProvider.h Bug 1592213: Allow up to 2 more textures in PersistentBufferProviderShared when webrender enabled. r=nical 2019-10-30 10:05:59 +00:00
ProfilerScreenshots.cpp Bug 1620594 - Part 7: Remove TabGroup and SystemGroup. r=nika,bas 2020-04-07 15:17:47 +00:00
ProfilerScreenshots.h Bug 1450059 - part 2 - move ProfilerScreenshots over to the background thread; r=gregtatum 2019-09-25 12:59:24 +00:00
ReadbackLayer.h Bug 1618345 - Enforce proper color management by splitting gfx::Color into sRGBColor and DeviceColor types. r=jrmuizel 2020-03-09 14:16:17 +00:00
ReadbackProcessor.cpp Bug 1618345 - Enforce proper color management by splitting gfx::Color into sRGBColor and DeviceColor types. r=jrmuizel 2020-03-09 14:16:17 +00:00
ReadbackProcessor.h
RecordedCanvasEventImpl.h Bug 1598585 Part 4: Notify the content process of a canvas device change. r=jrmuizel 2020-02-24 11:21:27 +00:00
RenderTrace.cpp
RenderTrace.h
RepaintRequest.h Bug 1617427 - Miscellaenous documentation fixes. r=botond 2020-03-13 19:56:56 +00:00
RotatedBuffer.cpp Bug 1609996 - Reorder some includes affected by the previous patches. r=froydnj 2020-01-20 16:19:48 +00:00
RotatedBuffer.h
ScrollableLayerGuid.h Bug 1613985 - Use default for equivalent-to-default constructors/destructors in gfx. r=jrmuizel 2020-03-04 15:39:20 +00:00
ShareableCanvasRenderer.cpp Bug 1477756 - Initial out-of-process WebGL implementation. r=mccr8,handyman 2020-01-08 22:19:14 +00:00
ShareableCanvasRenderer.h
SourceSurfaceSharedData.cpp Bug 1612589 - Improve image memory reporting even further. r=tnikkel 2020-02-05 22:22:13 +00:00
SourceSurfaceSharedData.h Bug 1612589 - Improve image memory reporting even further. r=tnikkel 2020-02-05 22:22:13 +00:00
SourceSurfaceVolatileData.cpp Bug 1612589 - Improve image memory reporting even further. r=tnikkel 2020-02-05 22:22:13 +00:00
SourceSurfaceVolatileData.h Bug 1612589 - Improve image memory reporting even further. r=tnikkel 2020-02-05 22:22:13 +00:00
SurfacePool.h Bug 1613985 - Use default for equivalent-to-default constructors/destructors in gfx. r=jrmuizel 2020-03-04 15:39:20 +00:00
SurfacePoolCA.h Bug 1592038 - Share depth buffers across IOSurface framebuffers with the same size. r=jgilbert 2019-12-19 02:55:15 +00:00
SurfacePoolCA.mm Bug 1052940 - Make Maybe<T> only declare copy/move operations if T is copyable/movable. r=froydnj,jgilbert 2020-03-27 14:10:45 +00:00
SyncObject.cpp
SyncObject.h Bug 1613985 - Use default for equivalent-to-default constructors/destructors in gfx. r=jrmuizel 2020-03-04 15:39:20 +00:00
TextureDIB.cpp Bug 1613985 - Use MOZ_COUNTED_DEFAULT_CTOR_*/MOZ_COUNTED_DTOR_* macros. r=froydnj 2020-02-20 11:40:14 +00:00
TextureDIB.h
TextureSourceProvider.cpp
TextureSourceProvider.h
TextureSync.cpp
TextureSync.h
TextureWrapperImage.cpp Bug 1613985 - Use default for equivalent-to-default constructors/destructors in gfx. r=jrmuizel 2020-03-04 15:39:20 +00:00
TextureWrapperImage.h
TiledLayerBuffer.h Bug 1519636 - Reformat recent changes to the Google coding style r=jgilbert 2020-04-05 13:34:58 +00:00
TransactionIdAllocator.h
TreeTraversal.h Bug 1625138 - Part 39: Replace mozilla::IsSame with std::is_same in gfx/. r=froydnj 2020-03-28 13:57:21 +00:00
UpdateImageHelper.h
WaylandDMABUFSurfaceImage.cpp Bug 1613358 [Wayland] Implement WaylandDMABUFSurfaceImage dmabuf image, r=sotaro 2020-02-06 15:15:02 +00:00
WaylandDMABUFSurfaceImage.h Bug 1616892 [Wayland] Use VAAPIFrameHolder at release callback, r=sotaro 2020-02-21 10:59:17 +00:00
ZoomConstraints.h Bug 1613985 - Use MOZ_COUNTED_DEFAULT_CTOR_*/MOZ_COUNTED_DTOR_* macros. r=froydnj 2020-02-20 11:40:14 +00:00
moz.build Bug 1622360 - Remove SLGuidAndRenderRoot and convert remaining uses to ScrollableLayerGuid. r=botond 2020-03-27 17:44:21 +00:00