gecko-dev/gfx/layers
Jamie Nicol 188f4eae4e Bug 1581868 - Make webrender schedule a frame immediately on resume. r=sotaro
On webrender on android, parent-process pages (eg about:support) were not being
rendered immediately after minimising then resuming the app, resulting in a
black screen. The problem was that webrender believed the previous frame was
still valid, and therefore that it did not need to render a new
one. Content-process pages were unnaffected because we clear cached resources
when the app is minimised, so we accidentally rendered a new frame on
resumption.

To fix this we always force a new frame to be rendered immediately on
resumption. This uncovers a race condition which causes us to sometimes render
frames at the wrong size when the window size has changed (for example when
showing or hiding the keyboard), so that is also fixed.

This also fixes a bug affecting fenix, where when opening a page in a new tab
the portion of the screen where the keyboard used to be would remain black until
the page had loaded. This no longer occurs because we force a composite as soon
as the keyboard is hidden.

Additionally, this patch reverts the original attempt at fixing this
bug, as it is not necessary.

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

--HG--
extra : moz-landing-system : lando
2020-01-10 02:01:30 +00:00
..
apz Bug 1607764 - Protect all accesses to Axis::mVelocity with the APZC lock. r=tnikkel 2020-01-09 01:42:05 +00:00
basic Bug 1592044 - Reduce the frequency of IOSurface and framebuffer creation and destruction with the help of a surface pool. r=jgilbert 2019-12-18 21:01:51 +00:00
client Bug 1477756 - Fix all webgl regression tests according to CI. r=handyman 2020-01-08 22:19:23 +00:00
composite Bug 1591629 - Split TransformData into 2 parts - transform data and motion path data. r=hiro 2020-01-08 09:02:36 +00:00
d3d11 Bug 1601531 - Tag image descriptors with PREFER_COMPOSITOR_SURFACE where appropriate r=gw 2019-12-06 06:53:57 +00:00
ipc Backed out changeset ec0e9a72aebb (bug 1600472) for causing bustages in WebRenderBridgeParent.cpp 2020-01-09 18:06:13 +02:00
layerviewer Bug 1596911 - Add missing license headers on the new managed extensions r=Gijs,MattN 2019-11-26 15:00:00 +00:00
mlgpu Bug 1573710 - Trigger composite after SetParent() r=Gankro 2019-11-01 11:01:34 +00:00
opengl Bug 1605906 - Add Pause/Resume handling to CompositorOGL for Wayland r=aosmond 2019-12-25 12:01:54 +00:00
protobuf
wr Bug 1581868 - Make webrender schedule a frame immediately on resume. r=sotaro 2020-01-10 02:01:30 +00:00
AnimationHelper.cpp Bug 1591629 - Rename mozilla::MotionPathData as mozilla::ResolvedMotionPathData. r=hiro 2020-01-08 09:02:38 +00:00
AnimationHelper.h Bug 1591629 - Split TransformData into 2 parts - transform data and motion path data. r=hiro 2020-01-08 09:02:36 +00:00
AnimationInfo.cpp Bug 1591629 - Split TransformData into 2 parts - transform data and motion path data. r=hiro 2020-01-08 09:02:36 +00:00
AnimationInfo.h Bug 1591629 - Split TransformData into 2 parts - transform data and motion path data. r=hiro 2020-01-08 09:02:36 +00:00
AsyncCanvasRenderer.cpp Bug 1477756 - Initial out-of-process WebGL implementation. r=mccr8,handyman 2020-01-08 22:19:14 +00:00
AsyncCanvasRenderer.h Bug 1598998 - Fix CanvasContextType::ImageBitmap handling r=nical 2020-01-08 01:12:50 +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
AxisPhysicsMSDModel.cpp Bug 1547143 - Format the tree: Be prescriptive with the pointer style (left) r=Ehsan 2019-05-01 08:47:10 +00:00
AxisPhysicsMSDModel.h Bug 1547143 - Format the tree: Be prescriptive with the pointer style (left) r=Ehsan 2019-05-01 08:47:10 +00:00
AxisPhysicsModel.cpp Bug 1547143 - Format the tree: Be prescriptive with the pointer style (left) r=Ehsan 2019-05-01 08:47:10 +00:00
AxisPhysicsModel.h Bug 1547143 - Format the tree: Be prescriptive with the pointer style (left) r=Ehsan 2019-05-01 08:47:10 +00: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 1540581 - P6. Tidy some C++ declarations in gfx/. r=gerald,jrmuizel 2019-04-11 12:36:51 +00:00
BufferTexture.cpp Bug 1600595: Part 2 - Change BufferTexture to allow any IShmemAllocator owner r=mattwoodrow 2020-01-04 19:35:38 +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 1585073: In CanvasEventRingBuffer, check stream is good before waiting for space or data. r=jrmuizel 2019-10-31 13:44:32 +00:00
CanvasDrawEventRecorder.h Bug 1570358: Check validity of enums before playing back Moz2D RecordedEvents. r=jrmuizel 2019-08-05 13:08:30 +00:00
CanvasRenderer.cpp Bug 1477756 - Initial out-of-process WebGL implementation. r=mccr8,handyman 2020-01-08 22:19:14 +00:00
CanvasRenderer.h Bug 1477756 - Initial out-of-process WebGL implementation. r=mccr8,handyman 2020-01-08 22:19:14 +00:00
CanvasTranslator.cpp Bug 1582372 Part 1: Ensure recorded texture SurfaceDescriptor is not in map for compositor when texture dies. r=mattwoodrow 2019-10-22 20:52:51 +00:00
CanvasTranslator.h Bug 1575874 - Fix ESlint failure a=me on a CLOSED TREE 2019-09-10 14:14:20 +03: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 1574745 - Move ShouldRecordFrames() from BasicCompositor to Compositor because CompositorOGL will need it. r=mattwoodrow 2019-08-30 19:52:15 +00:00
Compositor.h Bug 1592044 - Reduce the frequency of IOSurface and framebuffer creation and destruction with the help of a surface pool. r=jgilbert 2019-12-18 21:01:51 +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 1477756 - Initial out-of-process WebGL implementation. r=mccr8,handyman 2020-01-08 22:19: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 1543359 - P7. Plumb YUV Color Range info in Windows' Image types. r=mattwoodrow 2019-07-26 08:45:30 +00:00
D3D9SurfaceImage.h Bug 1557257 - Rename KnowsCompositor* aForwarder to aKnowsCompositor r=nical 2019-06-07 12:27:05 +00:00
D3D11ShareHandleImage.cpp Bug 1600595: Part 4 - Make D3D11ShareHandleImage use CreateBGRA8DataSourceSurfaceForD3D11Texture r=mattwoodrow 2020-01-04 19:37:01 +00:00
D3D11ShareHandleImage.h Bug 1543359 - P7. Plumb YUV Color Range info in Windows' Image types. r=mattwoodrow 2019-07-26 08:45:30 +00:00
D3D11YCbCrImage.cpp Bug 1543359 - P7. Plumb YUV Color Range info in Windows' Image types. r=mattwoodrow 2019-07-26 08:45:30 +00:00
D3D11YCbCrImage.h Bug 1543359 - P7. Plumb YUV Color Range info in Windows' Image types. r=mattwoodrow 2019-07-26 08:45:30 +00: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 1543359 - P9. Add YUV range information to NV12Effect and YCbCrEffect. r=mattwoodrow 2019-07-26 08:45:26 +00:00
FrameMetrics.cpp Bug 1602421 - Remove some useless includes. r=jfkthame 2019-12-09 14:53:50 +00:00
FrameMetrics.h Bug 1602421 - Remove some useless includes. r=jfkthame 2019-12-09 14:53:50 +00:00
GLImages.cpp Bug 1538969 - Report an opaque surface format for AndroidSurfaceTextureData when it's being used for an opaque video. r=jya 2019-04-10 08:08:22 +00:00
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 1577336: Part 5 - Create IGPUVideoSurfaceManager for shared parts of RemoteDecoderManagerChild r=mattwoodrow 2019-11-20 21:33:59 +00:00
IMFYCbCrImage.cpp Bug 1557257 - Rename KnowsCompositor* aForwarder to aKnowsCompositor r=nical 2019-06-07 12:27:05 +00:00
IMFYCbCrImage.h Bug 1557257 - Rename KnowsCompositor* aForwarder to aKnowsCompositor r=nical 2019-06-07 12:27:05 +00:00
IPDLActor.h Bug 1540581 - P6. Tidy some C++ declarations in gfx/. r=gerald,jrmuizel 2019-04-11 12:36:51 +00:00
ImageContainer.cpp Bug 1543359 - P6. Add backend for color range information. r=mattwoodrow. 2019-07-26 08:45:31 +00:00
ImageContainer.h Bug 1597681: Remove debug assertion for AddRef on main thread. r=mattwoodrow 2019-11-28 00:52:49 +00:00
ImageDataSerializer.cpp Bug 1543359 - P6. Add backend for color range information. r=mattwoodrow. 2019-07-26 08:45:31 +00:00
ImageDataSerializer.h Bug 1543359 - P6. Add backend for color range information. r=mattwoodrow. 2019-07-26 08:45:31 +00: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 1540581 - P6. Tidy some C++ declarations in gfx/. r=gerald,jrmuizel 2019-04-11 12:36:51 +00:00
ImageTypes.h Bug 1493898 - P6. Move YUVColorSpace definition in the gfx namespace. r=mattwoodrow. 2019-04-11 12:41:33 +00:00
LayerAttributes.h Bug 1585806 - Make SideBits an enum class, add casting where necessary. r=botond 2019-11-16 20:59:34 +00:00
LayerMetricsWrapper.h Bug 1583380. Plumb a fixed position webrender animation id from the display list to the HitTestingTreeNode. r=botond 2019-11-29 23:11:18 +00:00
LayerScope.cpp Bug 1600545 - Remove useless inclusions of header files generated from IDL files in accessible/, browser/, caps/, chrome/, devtools/, docshell/, editor/, extensions/, gfx/, hal/, image/, intl/, ipc/, js/, layout/, and media/ r=Ehsan 2019-12-06 09:16:44 +00:00
LayerScope.h Bug 1540581 - P6. Tidy some C++ declarations in gfx/. r=gerald,jrmuizel 2019-04-11 12:36:51 +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
LayerTreeInvalidation.cpp Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan 2019-06-08 08:26:37 +00:00
LayerTreeInvalidation.h Bug 1540581 - P6. Tidy some C++ declarations in gfx/. r=gerald,jrmuizel 2019-04-11 12:36:51 +00:00
LayerUserData.h Bug 1540581 - P6. Tidy some C++ declarations in gfx/. r=gerald,jrmuizel 2019-04-11 12:36:51 +00:00
Layers.cpp Bug 1500465 - Measure touch scroll latency and connect to telemetry. r=mstange,botond 2019-12-07 03:57:56 +00:00
Layers.h Bug 1591629 - Split TransformData into 2 parts - transform data and motion path data. r=hiro 2020-01-08 09:02:36 +00: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 1604535 - Avoid copying image surfaces when used with OMTP. r=tnikkel 2019-12-25 21:27:46 +00:00
LayersLogging.h Bug 1441308 - Core renderroot splitting changes r=kats,sotaro 2019-03-22 18:28:42 +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 1602317 - Remove some useless includes. r=heycam 2019-12-09 12:52:53 +00:00
MacIOSurfaceHelpers.cpp Bug 1543359 - P12. Fix colorspace rendering with IOSurface and basic compositor. r=mattwoodrow 2019-07-26 08:45:40 +00: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 1557257 - Rename KnowsCompositor* aForwarder to aKnowsCompositor r=nical 2019-06-07 12:27:05 +00:00
MacIOSurfaceImage.h Bug 1557257 - Rename KnowsCompositor* aForwarder to aKnowsCompositor r=nical 2019-06-07 12:27:05 +00: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
NativeLayer.h Bug 1592026 - Add a NativeLayerRootSnapshotter API and implement it with CARenderer. r=jrmuizel 2019-12-29 12:20:28 +00:00
NativeLayerCA.h Bug 1592026 - Add a NativeLayerRootSnapshotter API and implement it with CARenderer. r=jrmuizel 2019-12-29 12:20:28 +00:00
NativeLayerCA.mm Bug 1592026 - Add a NativeLayerRootSnapshotter API and implement it with CARenderer. r=jrmuizel 2019-12-29 12:20:28 +00:00
OOPCanvasRenderer.h Bug 1477756 - Client-side bindings mirror for precise CC, and merge similar codepaths. r=handyman 2020-01-08 22:19:16 +00:00
PaintThread.cpp Bug 1600545 - Remove useless inclusions of header files generated from IDL files in accessible/, browser/, caps/, chrome/, devtools/, docshell/, editor/, extensions/, gfx/, hal/, image/, intl/, ipc/, js/, layout/, and media/ r=Ehsan 2019-12-06 09:16:44 +00: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 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 1593803 - rename NS_DispatchToBackgroundThread to NS_DispatchBackgroundTask; r=KrisWright 2019-11-05 21:19:18 +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 1540581 - P6. Tidy some C++ declarations in gfx/. r=gerald,jrmuizel 2019-04-11 12:36:51 +00: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
RecordedCanvasEventImpl.h Bug 1575828: Ensure that CanvasChild::GetDataSurface is called on the main thread. r=jrmuizel 2019-09-10 02:06:46 +00:00
RenderTrace.cpp Bug 1547143 - Format the tree: Be prescriptive with the pointer style (left) r=Ehsan 2019-05-01 08:47:10 +00:00
RenderTrace.h Bug 1547143 - Format the tree: Be prescriptive with the pointer style (left) r=Ehsan 2019-05-01 08:47:10 +00: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 1519636 - Reformat recent changes to the Google coding style r=Ehsan 2019-08-13 07:15:25 +00: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 - Reformat recent changes to the Google coding style r=Ehsan 2020-01-09 21:50:11 +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 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 1540581 - P6. Tidy some C++ declarations in gfx/. r=gerald,jrmuizel 2019-04-11 12:36:51 +00: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 1540581 - P6. Tidy some C++ declarations in gfx/. r=gerald,jrmuizel 2019-04-11 12:36:51 +00:00
SurfacePool.h Bug 1592044 - Reduce the frequency of IOSurface and framebuffer creation and destruction with the help of a surface pool. r=jgilbert 2019-12-18 21:01:51 +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 1592038 - Allow sharing depth and stencil buffers between multiple MozFramebuffers. r=jgilbert 2019-12-19 03:26:19 +00: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 1540581 - P6. Tidy some C++ declarations in gfx/. r=gerald,jrmuizel 2019-04-11 12:36:51 +00:00
TextureDIB.cpp Bug 1435586 - Use static gfxPlatform methods directly instead of requiring initialization. r=kats 2019-06-05 12:40:26 -04:00
TextureDIB.h Bug 1540581 - P6. Tidy some C++ declarations in gfx/. r=gerald,jrmuizel 2019-04-11 12:36:51 +00: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 1557105 - Handle non-webrender widget case during enabling WebRender at ImageBridge r=nical 2019-06-10 12:36:14 +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 1557257 - Rename KnowsCompositor* aForwarder to aKnowsCompositor r=nical 2019-06-07 12:27:05 +00:00
TextureWrapperImage.h Bug 1557257 - Rename KnowsCompositor* aForwarder to aKnowsCompositor r=nical 2019-06-07 12:27:05 +00: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 1540581 - P6. Tidy some C++ declarations in gfx/. r=gerald,jrmuizel 2019-04-11 12:36:51 +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
moz.build Bug 1477756 - Fix all webgl regression tests according to CI. r=handyman 2020-01-08 22:19:23 +00:00