Граф коммитов

44843 Коммитов

Автор SHA1 Сообщение Дата
Glenn Watson df2450a2e9 Bug 1830691 - Temporarily disable the new clip-mask rendering path r=gfx-reviewers,jrmuizel
We have a driver-specific regression related to the shader optimizer
and also a small performance regression in a couple of tests. Rather
than back out the (large) patch set, disable the new path for now
to provide time to investigate and fix those issues.

Differential Revision: https://phabricator.services.mozilla.com/D176796
2023-05-01 22:39:35 +00:00
CanadaHonk ccf8d8cf8e Bug 1823135 - Initial support for NVIDIA RTX Video Super Resolution r=gfx-reviewers,sotaro
Added initial support for NVIDIA's "RTX Video Super Resolution" for
video overlays on Windows, which uses hardware accelerated AI to
upscale instead of traditional upscaling methods.

Currently behind new pref "gfx.webrender.super-resolution.nvidia"
(disabled by default), allowing for prefs for other vendors later.

NVIDIA also have a setting in their own driver settings. Currently
Chromium always enable it on their end if a new enough driver and not on
battery power. This patch just checks if we are using an NVIDIA GPU and
tries to use it if the pref is enabled.

Intel also have had similar tech for a while, see Bug 1780824.

Differential Revision: https://phabricator.services.mozilla.com/D172942
2023-05-01 19:41:16 +00:00
Sandor Molnar 5a7c567320 Backed out changeset 0cc9bdf506f3 (bug 1823135) for causing build bustage in gfx/webrender_bindings/DCLayerTree.cpp CLOSED TREE 2023-05-01 20:03:16 +03:00
CanadaHonk 38187bbdb7 Bug 1823135 - Initial support for NVIDIA RTX Video Super Resolution r=gfx-reviewers,sotaro
Added initial support for NVIDIA's "RTX Video Super Resolution" for
video overlays on Windows, which uses hardware accelerated AI to
upscale instead of traditional upscaling methods.

Currently behind new pref "gfx.webrender.super-resolution.nvidia"
(disabled by default), allowing for prefs for other vendors later.

NVIDIA also have a setting in their own driver settings. Currently
Chromium always enable it on their end if a new enough driver and not on
battery power. This patch just checks if we are using an NVIDIA GPU and
tries to use it if the pref is enabled.

Intel also have had similar tech for a while, see Bug 1780824.

Differential Revision: https://phabricator.services.mozilla.com/D172942
2023-05-01 16:20:10 +00:00
Iulian Moraru 3563da061c Backed out changeset 93db8f4d488c (bug 1823135) for causing assertion failures on StaticPrefList_gfx.h. CLOSED TREE 2023-05-01 11:47:41 +03:00
CanadaHonk 0f18defb9a Bug 1823135 - Initial support for NVIDIA RTX Video Super Resolution r=gfx-reviewers,sotaro
Added initial support for NVIDIA's "RTX Video Super Resolution" for
video overlays on Windows, which uses hardware accelerated AI to
upscale instead of traditional upscaling methods.

Currently behind new pref "gfx.webrender.super-resolution.nvidia"
(disabled by default), allowing for prefs for other vendors later.

NVIDIA also have a setting in their own driver settings. Currently
Chromium always enable it on their end if a new enough driver and not on
battery power. This patch just checks if we are using an NVIDIA GPU and
tries to use it if the pref is enabled.

Intel also have had similar tech for a while, see Bug 1780824.

Differential Revision: https://phabricator.services.mozilla.com/D172942
2023-05-01 06:21:19 +00:00
Robert Longson 9acd8521cd Bug 1814398 - SVGImageElement should not derive from SVGGeometryElement r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D168674
2023-04-29 15:13:34 +00:00
sotaro c2f99c7e0e Bug 1806096 - Added check for front TextureClient lost by PersistentBufferProviderShared::SetKnowsCompositor() r=gfx-reviewers,lsalzman
Device reset could cause front TextureClient lost in PersistentBufferProviderShared::SetKnowsCompositor(). In this case, ShareableCanvasRenderer::UpdateCompositableClient() does not have TextureClient for compositor.

Differential Revision: https://phabricator.services.mozilla.com/D176748
2023-04-28 07:13:54 +00:00
Daisuke Akatsuka acb2b54a97 Bug 1806591: Consume wheel event as long as being able to handle the event as the same series r=masayuki,mstriemer
Differential Revision: https://phabricator.services.mozilla.com/D176504
2023-04-28 04:31:30 +00:00
sotaro 7041dbe0e8 Bug 1829592 - Suppress remote texture ready check when WebRenderAPI::FlushPendingWrTransactionEventsWithoutWait() is used r=gfx-reviewers,lsalzman
WebRenderAPI::FlushPendingWrTransactionEventsWithoutWait() does not wait remote texture ready. It should be OK, since it is called only in WebRenderBridgeParent::ClearResources(). But there were cases that hit the assert. The assert failure was false alarm.

The change suppresses assert of remote texture ready check in RemoteTextureMap::GetExternalImageIdOfRemoteTexture() if wait of the remote texture ready was skipped by the FlushPendingWrTransactionEventsWithoutWait().

Differential Revision: https://phabricator.services.mozilla.com/D176498
2023-04-28 00:23:30 +00:00
stransky c9a9883e77 Bug 1829303 [Wayland] Remove thread specific wayland display objects r=emilio
- Remove nsWaylandDisplay thread specific objects as we don't need them.
- Use nsWaylandDisplay as non-referenced objects. There's only a global one.
- Create nsWaylandDisplay global object in nsAppRunner when Firefox starts. That ensures we create it in main thread.
- Remove mEventQueue, we don't need it.
- Remove mSyncCallback, it's unused.

Differential Revision: https://phabricator.services.mozilla.com/D176125
2023-04-26 20:57:17 +00:00
Lee Salzman e9fc456838 Bug 1830006 - Do not use malloc.h on OpenBSD. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D176556
2023-04-26 16:58:44 +00:00
Natalia Csoregi f32d5f3949 Backed out changeset a578872091a4 (bug 1828248) for causing Bug 1829772. CLOSED TREE 2023-04-26 17:56:05 +03:00
stransky 851dc88347 Bug 1828071 [Linux] Rename nsDMABufDevice to DMABufDevice and nsGbmLib to GbmLib r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D176508
2023-04-26 12:52:09 +00:00
stransky 9e813895f1 Bug 1828071 [Linux] Update DMABuf setup r=emilio
- Make dmabuf preferences static so we don't need GetDMABufDevice() to access them.
- Configure GetDMABufDevice() when it's created.
- Init dmabuf members directly in class.
- Removed unused methods.

Differential Revision: https://phabricator.services.mozilla.com/D176404
2023-04-26 12:52:09 +00:00
Andrew Osmond 80f2440559 Bug 1827024. r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D175005
2023-04-26 01:49:09 +00:00
Cristian Tuns a8189a418c Backed out 2 changesets (bug 1774315) for causing bc failures in browser_test_position_sticky.js CLOSED TREE
Backed out changeset a3b5ec0e4306 (bug 1774315)
Backed out changeset 7ece24d43282 (bug 1774315)
2023-04-25 22:24:22 -04:00
Erich Gubler 3914571f61 Bug 1829305: build(webgpu): track `wgpu-hal` for `wgpu_bindings` source deps r=webgpu-reviewers,jimb
Differential Revision: https://phabricator.services.mozilla.com/D176208
2023-04-25 21:13:58 +00:00
Erich Gubler d95cf633aa Bug 1829305: fix(webgpu): trade incorrect `ImageCopyBuffer` usage for exploded ID and FFI-friendly `ImageDataLayout` in `wgpu_server_encoder_copy_texture_to_buffer` r=webgpu-reviewers,jimb
Differential Revision: https://phabricator.services.mozilla.com/D176207
2023-04-25 20:59:51 +00:00
Erich Gubler 3d2cefa8e9 Bug 1829305: refactor(wgpu_bindings): move `ImageDataLayout` to crate root r=webgpu-reviewers,jimb
Differential Revision: https://phabricator.services.mozilla.com/D176206
2023-04-25 20:59:51 +00:00
Emilio Cobos Álvarez f4f11957b2 Bug 1774315 - Don't clamp target scroll position to layer scale. r=mstange
This prevents scrollLeft = <integer> to return scrollLeft = <integer>,
which is right now papered by bug 1674687.

Differential Revision: https://phabricator.services.mozilla.com/D176306
2023-04-25 19:26:41 +00:00
Dan Robertson a887a52ab3 Bug 1753565 - Default disable smooth scrolls if prefers-reduced-motion. r=botond
If the user has the prefers-reduced-motion system setting enabled, do
not enable smooth scrolls by default.

Differential Revision: https://phabricator.services.mozilla.com/D172446
2023-04-25 19:00:08 +00:00
Lee Salzman cbc46a5e31 Bug 1829521 - More Skia build fixes for GCC ARM. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D176315
2023-04-25 14:00:13 +00:00
Jamie Nicol 1229a40148 Bug 1828248 - Use QCOM_tiled_rendering when rendering color and picture cache targets. r=gfx-reviewers,nical
We have seen reports that various websites, including twitter, perform
poorly on older Adreno devices due, to backdrop filter. We previously
encountered similar on Mali-G710 devices in bug 1809738, and it
appeared to be due to having to copy the contents of large
framebuffers--required to render the backdrop filter--to and from the
GPU's tile memory. On Mali we were able to avoid this penalty by
ensuring we performed an unscissored clear immediately after binding
the framebuffer, allowing the driver to omit initalizing the contents
of tile memory prior to rendering.

It's plausible that older Adreno drivers are not clever enough to be
able to make this optimization. However, there exists an extension
QCOM_tiled_rendering, which allows us to explicitly tell the driver
which subregion of a render target we are rendering too, and whether
it must be pre-initilized or post-resolved.

This patch makes use of this extension when rendering to color and
picture cache targets. In both cases we supply the region that is
being rendered and must only resolve the color attachment back to main
memory. In most cases we can additionally avoid initializing tile
memory prior to rendering, with the exception being in
draw_color_target() when we do not perform an initial clear, in which
case we must initialize the color attachment.

This results in a significant performance improvement on twitter when
tested on a Nexus 5 (Adreno 330) device.

Differential Revision: https://phabricator.services.mozilla.com/D176154
2023-04-24 16:37:07 +00:00
Jamie Nicol d62fe2d0aa Bug 1828248 - Update gleam to 0.15. r=gfx-reviewers,supply-chain-reviewers,jrmuizel
This provides us with QCOM_tiled_rendering, which will be used in the
next patch in this series.

Differential Revision: https://phabricator.services.mozilla.com/D176153
2023-04-24 16:37:06 +00:00
Sandor Molnar 8ef4b76706 Backed out 2 changesets (bug 1828248) for causing wrench bustages.
Backed out changeset 7a9431bded9e (bug 1828248)
Backed out changeset 5ec09fef9385 (bug 1828248)
2023-04-24 18:22:41 +03:00
Jamie Nicol d03c4c499b Bug 1828248 - Use QCOM_tiled_rendering when rendering color and picture cache targets. r=gfx-reviewers,nical
We have seen reports that various websites, including twitter, perform
poorly on older Adreno devices due, to backdrop filter. We previously
encountered similar on Mali-G710 devices in bug 1809738, and it
appeared to be due to having to copy the contents of large
framebuffers--required to render the backdrop filter--to and from the
GPU's tile memory. On Mali we were able to avoid this penalty by
ensuring we performed an unscissored clear immediately after binding
the framebuffer, allowing the driver to omit initalizing the contents
of tile memory prior to rendering.

It's plausible that older Adreno drivers are not clever enough to be
able to make this optimization. However, there exists an extension
QCOM_tiled_rendering, which allows us to explicitly tell the driver
which subregion of a render target we are rendering too, and whether
it must be pre-initilized or post-resolved.

This patch makes use of this extension when rendering to color and
picture cache targets. In both cases we supply the region that is
being rendered and must only resolve the color attachment back to main
memory. In most cases we can additionally avoid initializing tile
memory prior to rendering, with the exception being in
draw_color_target() when we do not perform an initial clear, in which
case we must initialize the color attachment.

This results in a significant performance improvement on twitter when
tested on a Nexus 5 (Adreno 330) device.

Differential Revision: https://phabricator.services.mozilla.com/D176154
2023-04-24 15:00:17 +00:00
Jamie Nicol 08408d1bf3 Bug 1828248 - Update gleam to 0.15. r=gfx-reviewers,supply-chain-reviewers,jrmuizel
This provides us with QCOM_tiled_rendering, which will be used in the
next patch in this series.

Differential Revision: https://phabricator.services.mozilla.com/D176153
2023-04-24 15:00:16 +00:00
Cristina Horotan 78b8d8e273 Merge mozilla-central to autoland a=merge on a CLOSED TREE 2023-04-24 13:02:02 +03:00
Cristina Horotan 91e7aee4b8 Backed out 6 changesets (bug 1829303, bug 1828071) for causing causing Linux crashes (bug 1829462) a=backout
Backed out changeset 90256c29ed1f (bug 1829303)
Backed out changeset 9c6ea77a90eb (bug 1828071)
Backed out changeset b71c46d9b101 (bug 1828071)
Backed out changeset c333d6127dfe (bug 1828071)
Backed out changeset c2c5841b88e0 (bug 1828071)
Backed out changeset 0b2180c4f9a5 (bug 1828071)
2023-04-24 12:50:04 +03:00
Sandor Molnar a311dd12da Backed out 2 changesets (bug 1828248) for causing wr bustages.
Backed out changeset d6cb8770e9ba (bug 1828248)
Backed out changeset 85d5bfd8f946 (bug 1828248)
2023-04-24 12:18:19 +03:00
Jamie Nicol d931db1911 Bug 1828248 - Use QCOM_tiled_rendering when rendering color and picture cache targets. r=gfx-reviewers,nical
We have seen reports that various websites, including twitter, perform
poorly on older Adreno devices due, to backdrop filter. We previously
encountered similar on Mali-G710 devices in bug 1809738, and it
appeared to be due to having to copy the contents of large
framebuffers--required to render the backdrop filter--to and from the
GPU's tile memory. On Mali we were able to avoid this penalty by
ensuring we performed an unscissored clear immediately after binding
the framebuffer, allowing the driver to omit initalizing the contents
of tile memory prior to rendering.

It's plausible that older Adreno drivers are not clever enough to be
able to make this optimization. However, there exists an extension
QCOM_tiled_rendering, which allows us to explicitly tell the driver
which subregion of a render target we are rendering too, and whether
it must be pre-initilized or post-resolved.

This patch makes use of this extension when rendering to color and
picture cache targets. In both cases we supply the region that is
being rendered and must only resolve the color attachment back to main
memory. In most cases we can additionally avoid initializing tile
memory prior to rendering, with the exception being in
draw_color_target() when we do not perform an initial clear, in which
case we must initialize the color attachment.

This results in a significant performance improvement on twitter when
tested on a Nexus 5 (Adreno 330) device.

Depends on D176153

Differential Revision: https://phabricator.services.mozilla.com/D176154
2023-04-24 08:43:52 +00:00
Jamie Nicol 5b6cafa983 Bug 1828248 - Update gleam to 0.15. r=gfx-reviewers,supply-chain-reviewers,jrmuizel
This provides us with QCOM_tiled_rendering, which will be used in the
next patch in this series.

Differential Revision: https://phabricator.services.mozilla.com/D176153
2023-04-24 08:43:52 +00:00
sotaro b733c4cf10 Bug 1829052 - Enable async RemoteTexture on nightly except Android r=gfx-reviewers,lsalzman
One assert check is remove from RemoteTextureMap::PushTexture(). The assert was wrong. RemoteTextureHostWrapper is unregistered when its Compositable ref becomes 0. It could happen.

On android, async RemoteTexture could not be enabled until Bug 1826687 fix.

Differential Revision: https://phabricator.services.mozilla.com/D175978
2023-04-24 07:54:29 +00:00
Corinne R Pohl 73ee6e2b1f Bug 1829507: Fix typo in DrawEventRecorder.h. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D176220
2023-04-23 02:05:57 +00:00
stransky 3aefdbee32 Bug 1829303 [Wayland] Remove thread specific wayland display objects r=emilio
- Remove nsWaylandDisplay thread specific objects as we don't need them.
- Use nsWaylandDisplay as non-referenced objects. There's only a global one.
- Create nsWaylandDisplay global object in nsAppRunner when Firefox starts. That ensures we create it in main thread.
- Remove mEventQueue, we don't need it.
- Remove mSyncCallback, it's unused.

Differential Revision: https://phabricator.services.mozilla.com/D176125
2023-04-22 06:08:08 +00:00
Nicolas Silva 08d60b6df2 Bug 1829121 - Update wgpu to revision 25cb9f61e9a6be572ee42536bbe57aa5f759a700. r=webgpu-reviewers,ErichDonGubler
Differential Revision: https://phabricator.services.mozilla.com/D176057
2023-04-21 15:39:25 +00:00
pmcmanis 8af7d4f0b9 Bug 1829236 - Update new Glean Release (52.6.0) in m-c r=chutten,supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D176097
2023-04-21 15:11:52 +00:00
stransky 769c1d4630 Bug 1828071 [Linux] Use static preferences in nsDMABufDevice r=emilio
There's no need to create nsDMABufDevice just to get/set dmabuf config.

Differential Revision: https://phabricator.services.mozilla.com/D175469
2023-04-21 10:25:37 +00:00
stransky cfac00270a Bug 1828071 [Linux] Always configure nsDMABufDevice and remove GetAndConfigureDMABufDevice() for child processes r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D175468
2023-04-21 10:25:37 +00:00
Shravan Narayan ed0bb19d78 Bug 1827704 - Migrate to the upstream wasm2c for RLBox sandboxing r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D175439
2023-04-21 01:31:35 +00:00
Lee Salzman c891dafa82 Bug 1829203 - Fix valgrind suppression in Skia. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D176074
2023-04-20 19:14:22 +00:00
Dan Robertson 3e22d70394 Bug 1774875 - Immediately fire click events for non-scrollable elements. r=botond,geckoview-reviewers,m_kato
Non-scrollable elements are immediately activated on touch-start, so it
is not necessary to delay firing the synthesized mouse and click events.

Differential Revision: https://phabricator.services.mozilla.com/D169727
2023-04-20 13:26:25 +00:00
Jonathan Kew a3e321b11d Bug 1589778 - Ensure cluster boundaries are set up even in blank textruns. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D175960
2023-04-20 08:38:38 +00:00
Glenn Watson 67ff166dcd Bug 1829027 - Fix clip-out rects for slow path with non-uniform radii r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D175983
2023-04-20 05:39:07 +00:00
Lee Salzman 94786390f2 Bug 1828931 - Cherry-pick SkSL fixes. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D175977
2023-04-20 02:59:26 +00:00
Botond Ballo 0b45e90332 Bug 1829010 - Disable helper_hittest_iframe_perspective.html and helper_hittest_iframe_perspective-3.html on Windows 11. r=hiro
This is done by moving them to a new test group, test_group_hittest-3.html.

Bug 1829021 tracks investigating the cause of their frequent failure on
Windows 11 and re-enabling them.

Differential Revision: https://phabricator.services.mozilla.com/D175967
2023-04-20 00:16:48 +00:00
Nika Layzell 2278c1bb9f Bug 1824465 - Part 16: Make PVRManager refcounted, r=ipc-reviewers,mccr8
Differential Revision: https://phabricator.services.mozilla.com/D173731
2023-04-19 22:10:09 +00:00
Nika Layzell f47a74ba59 Bug 1824465 - Part 15: Make PVRGPU refcounted, r=ipc-reviewers,mccr8
Differential Revision: https://phabricator.services.mozilla.com/D173730
2023-04-19 22:10:09 +00:00
Nika Layzell ba88b2535d Bug 1824465 - Part 14: Make PVR Refcounted, r=ipc-reviewers,mccr8
Differential Revision: https://phabricator.services.mozilla.com/D173729
2023-04-19 22:10:09 +00:00