gecko-dev/gfx/layers
Hiroyuki Ikezoe 04ba6da88c Bug 1817330 - Inform a reasonable APZHandledResult to GeckoView even if the APZ's result is nsEventStatus_eConsumeNoDefault. r=botond,geckoview-reviewers,owlish
Note that for touch events there are two possibilities where
InputQueue::ReceiveInputEvent() returns nsEventStatus_eConsumeNoDefault, a) the
touch input block is in a state of fast fling or b) the touch input block is in
a state of internal slop.

In the case of b) the nsEventStatus_eConsumeNoDefault status will never be used
since
 1) In cases of delayed results we just use the APZHandledResult we don't refer
    the nsEventStatus at all [1]
 2) In cases of non-delayed results even if the initial touch-start event gets
    into slop, TouchBlockState::UpdateSlopState returns false [2], thus APZ
    immediately reports one of the other nsEventStatuses and any subsequent
    statuses will never be used [3]

In the case of a) nsEventStatus_eConsumeNoDefault means the event doesn't need
to be sent to content, it doesn't mean any APZC didn't scroll by the event.

Also note that there's an automated test exercising the scenario a). It was
flaky before (bug 1687842), but now it appears to be stable.

[1] https://searchfox.org/mozilla-central/rev/32c74afbb24dce4b5dd6b33be71197e615631d71/gfx/layers/apz/src/InputQueue.cpp#986
[2] https://searchfox.org/mozilla-central/rev/32c74afbb24dce4b5dd6b33be71197e615631d71/gfx/layers/apz/src/InputBlockState.cpp#774-784
[3] https://searchfox.org/mozilla-mobile/rev/9fd115db1da9958a32c2cb2943fef79c1a0cac4a/firefox-android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/NestedGeckoView.kt#85,122-132

Differential Revision: https://phabricator.services.mozilla.com/D177456
2023-05-15 23:21:54 +00:00
..
apz Bug 1817330 - Inform a reasonable APZHandledResult to GeckoView even if the APZ's result is nsEventStatus_eConsumeNoDefault. r=botond,geckoview-reviewers,owlish 2023-05-15 23:21:54 +00:00
client Bug 1828071 [Linux] Rename nsDMABufDevice to DMABufDevice and nsGbmLib to GbmLib r=emilio 2023-04-26 12:52:09 +00:00
composite Bug 1826687 - Fix Android SurfaceTexture handling with async RemoteTexture r=gfx-reviewers,lsalzman 2023-05-08 20:07:53 +00:00
d3d11 Bug 1811170 - Make GpuProcessTextureId strongly-typed r=gfx-reviewers,lsalzman 2023-01-19 08:19:28 +00:00
ipc Bug 1827340 - Update WebRender settings only from root WebRenderBridgeParent r=lsalzman 2023-05-12 00:53:27 +00:00
layerviewer Bug 1508369 - clean up browser CSS to pass basic stylelint rules, r=desktop-theme-reviewers,webcompat-reviewers,extension-reviewers,devtools-reviewers,nchevobbe,denschub,dao 2023-05-09 17:12:50 +00:00
opengl Bug 1826687 - Fix Android SurfaceTexture handling with async RemoteTexture r=gfx-reviewers,lsalzman 2023-05-08 20:07:53 +00:00
wr Bug 1831419 - check for singular matrix before drawing r=emilio 2023-05-12 11:30:58 +00:00
AndroidHardwareBuffer.cpp Bug 1810097 - Support AHardwareBuffer of out-of-process WebGL on Android r=lsalzman,gfx-reviewers 2023-01-27 21:35:26 +00:00
AndroidHardwareBuffer.h Bug 1810097 - Support AHardwareBuffer of out-of-process WebGL on Android r=lsalzman,gfx-reviewers 2023-01-27 21:35:26 +00:00
AnimationHelper.cpp Bug 1832173 - Remove HasArcFFI for AnimationValue. r=boris 2023-05-11 08:25:36 +00:00
AnimationHelper.h Bug 1832173 - Remove HasArcFFI for AnimationValue. r=boris 2023-05-11 08:25:36 +00:00
AnimationInfo.cpp Bug 1816915 - Clean up EffectSet APIs. r=firefox-animation-reviewers,boris 2023-02-15 20:39:16 +00:00
AnimationInfo.h Bug 1802225 - Remove unused method AnimationInfo::TransferMutatedFlagToLayer(). r=tnikkel 2022-11-29 01:52:00 +00:00
AnimationStorageData.h Bug 1832173 - Remove HasArcFFI for AnimationValue. r=boris 2023-05-11 08:25:36 +00:00
AtomicRefCountedWithFinalize.h
AxisPhysicsModel.cpp
AxisPhysicsModel.h
AxisPhysicsMSDModel.cpp
AxisPhysicsMSDModel.h
BSPTree.cpp Bug 1802225 - Remove the LayerPolygon typedef. r=tnikkel 2022-11-29 01:52:01 +00:00
BSPTree.h Bug 1802225 - Remove the LayerPolygon typedef. r=tnikkel 2022-11-29 01:52:01 +00:00
BufferTexture.cpp Bug 1777426 - Ensure MemoryTextureData frees memory when owned by RemoteTextureMap. r=aosmond,gfx-reviewers 2022-07-12 06:56:21 +00:00
BufferTexture.h Bug 1781064 - Get buffer size directly from BufferTextureData. r=aosmond,gfx-reviewers 2022-08-05 18:48:48 +00:00
BuildConstants.h
CanvasDrawEventRecorder.cpp Bug 1825169: Process off main thread deletions in DrawEventRecorderPrivate::AddStoredObject. r=aosmond 2023-04-17 15:23:42 +00:00
CanvasDrawEventRecorder.h Bug 1825169: Process off main thread deletions in DrawEventRecorderPrivate::AddStoredObject. r=aosmond 2023-04-17 15:23:42 +00:00
CanvasRenderer.cpp Bug 1828071 [Linux] Rename nsDMABufDevice to DMABufDevice and nsGbmLib to GbmLib r=emilio 2023-04-26 12:52:09 +00:00
CanvasRenderer.h Bug 1805209 - Use RemoteTexture for WebGPU r=gfx-reviewers,lsalzman 2022-12-23 20:41:02 +00:00
CompositionRecorder.cpp Bug 1816559 - Remote compositor recording from GPU process r=mstange 2023-03-14 13:31:37 +00:00
CompositionRecorder.h Bug 1816559 - Remote compositor recording from GPU process r=mstange 2023-03-14 13:31:37 +00:00
Compositor.cpp Bug 1060421 - Change the type of [Int]PointTyped::[x|y] back to [Int]CoordTyped. r=botond 2022-11-04 18:29:35 +00:00
Compositor.h Bug 1742052 - Remove unused code around TextureHost r=gfx-reviewers,nical 2021-11-22 09:49:59 +00:00
CompositorAnimationStorage.cpp Bug 1832173 - Remove HasArcFFI for AnimationValue. r=boris 2023-05-11 08:25:36 +00:00
CompositorAnimationStorage.h Bug 1832173 - Remove HasArcFFI for AnimationValue. r=boris 2023-05-11 08:25:36 +00:00
CompositorTypes.cpp
CompositorTypes.h Bug 1808818 - Add RemoteTextureOwnerClient::PushDummyTexture() for handling remote texture allocation failure r=gfx-reviewers,lsalzman 2023-01-11 22:23:01 +00:00
D3D9SurfaceImage.cpp Bug 1785925 - Add LUT and Colorspace support to GLBlitHelper. r=lsalzman,media-playback-reviewers,alwu 2022-09-13 17:40:43 +00:00
D3D9SurfaceImage.h
D3D11ShareHandleImage.cpp Bug 1816482 - Add lock/sync handling to D3D11ShareHandleImage::MaybeCreateNV12ImageAndSetData() r=gfx-reviewers,lsalzman 2023-03-01 08:17:07 +00:00
D3D11ShareHandleImage.h Bug 1816482 - Add lock/sync handling to D3D11ShareHandleImage::MaybeCreateNV12ImageAndSetData() r=gfx-reviewers,lsalzman 2023-03-01 08:17:07 +00:00
D3D11TextureIMFSampleImage.cpp Bug 1785925 - Add LUT and Colorspace support to GLBlitHelper. r=lsalzman,media-playback-reviewers,alwu 2022-09-13 17:40:43 +00:00
D3D11TextureIMFSampleImage.h Bug 1785925 - Add LUT and Colorspace support to GLBlitHelper. r=lsalzman,media-playback-reviewers,alwu 2022-09-13 17:40:43 +00:00
D3D11YCbCrImage.cpp Bug 1827024. r=gfx-reviewers,lsalzman 2023-04-26 01:49:09 +00:00
D3D11YCbCrImage.h Bug 1757067 - Explicitly specify chroma subsampling scheme for YCbCr data. r=jgilbert,jrmuizel 2022-03-10 09:24:15 +00:00
DcompSurfaceImage.cpp Bug 1769254 - Add TextureHost type check for using update in AsyncImagePipelineManager::UpdateImageKeys() r=gfx-reviewers,lsalzman 2022-08-16 00:29:51 +00:00
DcompSurfaceImage.h Bug 1771011 - part2 : wrap media engine's dcomp handle, and use it on our gfx pipeline in the GPU process.r=jolin,sotaro 2022-08-13 23:48:07 +00:00
DirectionUtils.h
DMABUFSurfaceImage.cpp Bug 1809026 [Linux] Move global DMABufSurface management from VideoFrameSurface to DMABUFSurfaceImage r=alwu 2023-02-27 11:20:34 +00:00
DMABUFSurfaceImage.h
Effects.cpp
Effects.h
FrameMetrics.cpp Bug 1824480 - Remove ScrollMetadata::mBackgroundColor which is no longer used. r=dlrobertson 2023-04-04 18:00:38 +00:00
FrameMetrics.h Backed out 2 changesets (bug 1753565) for causing bc failures in browser_proton_moreTools_panel.js CLOSED TREE 2023-04-18 02:03:20 -04:00
GLImages.cpp Bug 1784109 - Override SurfaceTexture transform for videos on Mediatek 6735. r=gfx-reviewers,media-playback-reviewers,lsalzman,alwu 2022-09-09 14:43:21 +00:00
GLImages.h Bug 1784109 - Override SurfaceTexture transform for videos on Mediatek 6735. r=gfx-reviewers,media-playback-reviewers,lsalzman,alwu 2022-09-09 14:43:21 +00:00
GPUVideoImage.h Bug 1787561 Part 1: Make GPUVideoImage track color depth, and make RemoteImageHolder pass it through. r=media-playback-reviewers,gfx-reviewers,alwu,aosmond 2022-09-08 18:02:03 +00:00
ImageContainer.cpp Bug 1831099 - Remove lock requirement for ImageContainer::mNotifyCompositeListener to avoid deadlock. r=jnicol 2023-05-03 15:10:32 +00:00
ImageContainer.h Bug 1831099 - Remove lock requirement for ImageContainer::mNotifyCompositeListener to avoid deadlock. r=jnicol 2023-05-03 15:10:32 +00:00
ImageDataSerializer.cpp Bug 1757067 - Explicitly specify chroma subsampling scheme for YCbCr data. r=jgilbert,jrmuizel 2022-03-10 09:24:15 +00:00
ImageDataSerializer.h Bug 1757067 - Explicitly specify chroma subsampling scheme for YCbCr data. r=jgilbert,jrmuizel 2022-03-10 09:24:15 +00:00
ImageTypes.h Bug 1771011 - part2 : wrap media engine's dcomp handle, and use it on our gfx pipeline in the GPU process.r=jolin,sotaro 2022-08-13 23:48:07 +00:00
IMFYCbCrImage.cpp Bug 1757067 - Explicitly specify chroma subsampling scheme for YCbCr data. r=jgilbert,jrmuizel 2022-03-10 09:24:15 +00:00
IMFYCbCrImage.h
IPDLActor.h
LayersTypes.cpp Bug 1811170 - Make GpuProcessTextureId strongly-typed r=gfx-reviewers,lsalzman 2023-01-19 08:19:28 +00:00
LayersTypes.h Bug 1826280 - Add RemoteTexture async waiting capability r=gfx-reviewers,lsalzman 2023-04-06 05:27:08 +00:00
LayerUserData.h
MacIOSurfaceHelpers.cpp Bug 1765187 Part 2: Make macOS video decoder recognize and use color primaries. r=media-playback-reviewers,jgilbert,alwu 2022-10-10 20:12:59 +00:00
MacIOSurfaceHelpers.h
MacIOSurfaceImage.cpp Bug 1781122 Part 2: Make TextureHost aware of DRM Images, and set this on macOS. r=gfx-reviewers,sotaro 2022-09-07 18:51:12 +00:00
MacIOSurfaceImage.h Bug 1777264 Part 3: Make MacIOSurfaceImage report color depth accurately. r=media-playback-reviewers,alwu 2022-08-17 06:50:51 +00:00
MemoryPressureObserver.cpp
MemoryPressureObserver.h
moz.build Bug 1824069 - Make gfx/layers buildable outside of a unified build environment r=andi 2023-03-24 07:01:08 +00:00
NativeLayer.h Bug 1731136 Part 5: Make macOS native compositor and NativeLayerCA handle backdrop r=mstange 2022-06-01 19:40:04 +00:00
NativeLayerCA.h Bug 1821727: Refactor NativeLayerCA clip rect geometry calcuations. r=mstange 2023-03-10 19:23:05 +00:00
NativeLayerCA.mm Bug 1808155 Part 3: Make NativeLayerCA report when RenderCompositorNative is creating new video surfaces. r=mstange 2023-04-19 20:02:46 +00:00
NativeLayerWayland.cpp Bug 1829303 [Wayland] Remove thread specific wayland display objects r=emilio 2023-04-26 20:57:17 +00:00
NativeLayerWayland.h Bug 1207753 - Add MOZ_UNANNOTATED to all Mutexes/Monitors r=nika,kershaw 2022-03-16 18:47:08 +00:00
OOPCanvasRenderer.h
PersistentBufferProvider.cpp Bug 1806096 - Added check for front TextureClient lost by PersistentBufferProviderShared::SetKnowsCompositor() r=gfx-reviewers,lsalzman 2023-04-28 07:13:54 +00:00
PersistentBufferProvider.h Bug 1806096 - Added check for front TextureClient lost by PersistentBufferProviderShared::SetKnowsCompositor() r=gfx-reviewers,lsalzman 2023-04-28 07:13:54 +00:00
ProfilerScreenshots.cpp Bug 1742722 - Move CompositorScreenshot markers to the main thread, r=mstange. 2021-11-24 10:47:59 +00:00
ProfilerScreenshots.h Bug 1207753 - Add MOZ_UNANNOTATED to all Mutexes/Monitors r=nika,kershaw 2022-03-16 18:47:08 +00:00
RecordedCanvasEventImpl.h
RemoteTextureMap.cpp Bug 1829592 - Suppress remote texture ready check when WebRenderAPI::FlushPendingWrTransactionEventsWithoutWait() is used r=gfx-reviewers,lsalzman 2023-04-28 00:23:30 +00:00
RemoteTextureMap.h Bug 1829592 - Suppress remote texture ready check when WebRenderAPI::FlushPendingWrTransactionEventsWithoutWait() is used r=gfx-reviewers,lsalzman 2023-04-28 00:23:30 +00:00
RepaintRequest.cpp Bug 1571758 - Introduce scroll generation in APZC and SampledAPZCState and inform it to the scrollable frame on the main-thread via RepaintRequest. r=botond 2022-01-31 09:40:33 +00:00
RepaintRequest.h Bug 1779909 - Skip re-snapping during pan/touch gestures or scrollbar dragging. r=botond 2022-07-21 00:02:10 +00:00
SampleTime.cpp
SampleTime.h
ScreenshotGrabber.cpp Backed out changeset 48381173c92c (bug 1780315) for causing bug 1782764. CLOSED TREE 2022-08-03 13:43:39 +03:00
ScreenshotGrabber.h Backed out changeset 48381173c92c (bug 1780315) for causing bug 1782764. CLOSED TREE 2022-08-03 13:43:39 +03:00
ScrollableLayerGuid.cpp
ScrollableLayerGuid.h
ScrollbarData.h Bug 1815372 - Introduce OuterCSSPixel to represent quantities in CSS pixels of content surrounding a scroll frame. r=dlrobertson 2023-03-03 23:57:14 +00:00
ShareableCanvasRenderer.cpp Bug 1806096 - Added check for front TextureClient lost by PersistentBufferProviderShared::SetKnowsCompositor() r=gfx-reviewers,lsalzman 2023-04-28 07:13:54 +00:00
ShareableCanvasRenderer.h Bug 1776885 - Add capability of async remote texture on WebGL if CanvasRenderThread is used r=gfx-reviewers,lsalzman 2022-12-07 02:24:57 +00:00
SourceSurfaceSharedData.cpp Bug 1734739 - Part 1: Stop requiring otherpid for ShareTo, r=handyman 2021-11-24 17:56:00 +00:00
SourceSurfaceSharedData.h Bug 1207753 - Add MOZ_UNANNOTATED to all Mutexes/Monitors r=nika,kershaw 2022-03-16 18:47:08 +00:00
SurfacePool.h
SurfacePoolCA.h Bug 1824069 - Make gfx/layers buildable outside of a unified build environment r=andi 2023-03-24 07:01:08 +00:00
SurfacePoolCA.mm Bug 1824069 - Make gfx/layers buildable outside of a unified build environment r=andi 2023-03-24 07:01:08 +00:00
SurfacePoolWayland.cpp
SurfacePoolWayland.h Bug 1207753 - Add MOZ_UNANNOTATED to all Mutexes/Monitors r=nika,kershaw 2022-03-16 18:47:08 +00:00
SyncObject.cpp
SyncObject.h
TextureSourceProvider.cpp Bug 1734735 - Part 6: Remove dead TextureSync code, r=dthayer 2021-11-23 16:15:22 +00:00
TextureSourceProvider.h Bug 1742052 - Remove unused code around TextureHost r=gfx-reviewers,nical 2021-11-22 09:49:59 +00:00
TextureWrapperImage.cpp
TextureWrapperImage.h
TransactionIdAllocator.h
TreeTraversal.h
UpdateImageHelper.h Bug 1802225 - Remove unused aContentFlags parameter of ImageClient::UpdateImage(). r=tnikkel 2022-11-29 01:51:59 +00:00
ZoomConstraints.cpp
ZoomConstraints.h