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

3691 Коммитов

Автор SHA1 Сообщение Дата
Mike Hommey ae28ced110 Bug 1852209 - Avoid using bitflags internals in webrender. r=gfx-reviewers,gw
Differential Revision: https://phabricator.services.mozilla.com/D189314
2023-09-27 19:56:16 +00:00
Glenn Watson f10a62a723 Bug 1849680 - Add support for masks on opaque compositor surfaces. r=gfx-reviewers,lsalzman
CLOSED TREE

Differential Revision: https://phabricator.services.mozilla.com/D188155
2023-09-25 23:11:23 +00:00
Cosmin Sabou 1a00bbd859 Backed out changeset d3828ca7337d (bug 1849680) for causing android bustages on underlay.yaml. 2023-09-26 02:04:05 +03:00
Glenn Watson ba49bf562c Bug 1849680 - Add support for masks on opaque compositor surfaces r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D188155
2023-09-25 21:28:33 +00:00
Iulian Moraru c8cba7bbad Backed out changeset 0cca5d3b5a43 (bug 1849680) for causing wrench build bustages. CLOSED TREE 2023-09-25 23:38:09 +03:00
Glenn Watson f0ab8716b3 Bug 1849680 - Add support for masks on opaque compositor surfaces r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D188155
2023-09-25 19:58:48 +00:00
Jamie Nicol 261fd5a578 Bug 1850815 - Make cs_border_solid's vColorLine highp. r=gfx-reviewers,bradwerth
This varying's precision being reduced to mediump in bug bug 1823411
is causing rendering glitches on certain Mali devices. It should never
have been reduced in the first place, as calculations regarding
positions may require the extra precision. This patch therefore
reverts it to highp.

Differential Revision: https://phabricator.services.mozilla.com/D188984
2023-09-22 16:07:00 +00:00
Jamie Nicol 374e0b9059 Bug 1853573 - Avoid shader miscompile on Adreno 3xx. r=gfx-reviewers,lsalzman
The repeated if-statements in the existing shader code appear to be
miscompiled on certain Adreno 3xx devices. Replacing them with a mix()
statement appears to avoid the bug.

Depends on D188818

Differential Revision: https://phabricator.services.mozilla.com/D188819
2023-09-21 14:30:12 +00:00
Jamie Nicol 0694aeb5d3 Bug 1853573 - Implement vec2_scalar fract() in swgl. r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D188818
2023-09-21 14:30:12 +00:00
Jan-Erik Rediger 8dd4f8a708 Bug 1852921 - Upgrade to Glean v54.0.0 r=chutten,supply-chain-reviewers,mach-reviewers,ahochheiden
Differential Revision: https://phabricator.services.mozilla.com/D188084
2023-09-19 08:18:12 +00:00
Sandor Molnar 1f5dbccdb3 Backed out changeset 1e582a0e5593 (bug 1852921) for causing build bustages 2023-09-19 01:43:08 +03:00
Jan-Erik Rediger a98db88b61 Bug 1852921 - Upgrade to Glean v54.0.0 r=chutten,supply-chain-reviewers,mach-reviewers,ahochheiden
Differential Revision: https://phabricator.services.mozilla.com/D188084
2023-09-18 14:09:18 +00:00
Iulian Moraru 01339f2b82 Backed out changeset c369e42eb572 (bug 1849680) for causing Bug 1853691. 2023-09-18 17:39:49 +03:00
Glenn Watson 98e7bbf614 Bug 1849680 - Add support for masks on opaque compositor surfaces r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D188155
2023-09-17 22:44:04 +00:00
Noemi Erli edbcdc5c97 Backed out changeset 4333e71e3754 (bug 1849680) for causing wrench bustages CLOSED TREE 2023-09-18 02:44:38 +03:00
Glenn Watson 331bbfed93 Bug 1849680 - Add support for masks on opaque compositor surfaces r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D188155
2023-09-17 22:44:04 +00:00
Cosmin Sabou 432ec143bf Backed out changeset 14877179e1a7 (bug 1849680) for causing mda failures on test_video_low_power_telemetry.html. CLOSED TREE 2023-09-15 10:03:57 +03:00
Glenn Watson 4b1b65aec9 Bug 1849680 - Add support for masks on opaque compositor surfaces r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D188155
2023-09-15 02:19:27 +00:00
Glenn Watson 82c19dea77 Bug 1851508 - Fix rendering artifacts on clip masks with nested perspective r=gfx-reviewers,lsalzman
Add support for drawing clip masks in the same reference frame as
the raster space without the perspective transform, which fixes
some complex edge cases with nested complex perspective transforms.

Differential Revision: https://phabricator.services.mozilla.com/D187864
2023-09-11 22:46:28 +00:00
Glenn Watson 0cc2ca2efe Bug 1851101 - Remove old image-mask clip code path r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D187253
2023-09-04 02:50:35 +00:00
Glenn Watson 83e7dec8ce Bug 1849661 - Use new clip-mask render paths for picture primitives r=gfx-reviewers,nical
This patch removes use of the legacy clip-mask paths for picture
primitives. It makes use of render task sub-pass functionality
to apply the mask directly on top of the picture primitive when
the coordinate systems match (the common case). In the case of
complex transforms it renders them to a screen-space mask which
can be applied by the old clip-mask sampling code. In future,
we'll likely apply these as a sub-pass too.

Differential Revision: https://phabricator.services.mozilla.com/D186638
2023-08-28 20:08:39 +00:00
Glenn Watson ceb6c4bba6 Bug 1849530 - Add support for sub-passes on a single render task r=gfx-reviewers,ahale
This adds support for sub-passes to individual render tasks, which
allow subsequent rendering to be configured on top of an existing
render task.

This patch introduces no functional change, it's preparation for
follow up patches.

The follow up patches will make use of this to apply clip masks to
picture primitives directly, where applicable, rather than allocating
a screen-space clip mask and drawing to that.

Differential Revision: https://phabricator.services.mozilla.com/D186614
2023-08-21 20:00:03 +00:00
Glenn Watson c5251a9715 Bug 1848066 - Support image-mask clips in new clip rendering paths r=gfx-reviewers,lsalzman
This will be used by a follow up patch to enable picture prims to
use the clip rendering paths.

Differential Revision: https://phabricator.services.mozilla.com/D185878
2023-08-13 20:34:19 +00:00
Glenn Watson 219c46b1c5 Bug 1847472 - Simplify logic in `build_mask_tasks` r=gfx-reviewers,lsalzman
This switches mask rendering to use an exact local bounds when
the clip is the same coord system as the raster root, and a
conservative estimate when there is a complex transform.

This simplifies the next patch to allow using the new clip-mask
paths for picture rendering (which are always raster roots).

Differential Revision: https://phabricator.services.mozilla.com/D185520
2023-08-07 20:22:30 +00:00
Jamie Nicol 44c0132291 Bug 1847319 - Block QCOM_tiled_rendering on all driver version on Adreno 308 GPUs. r=gfx-reviewers,lsalzman
In bug 1843749 we received reports of QCOM_tiled_rendering causing
glitches on Adreno 308 GPUs. As using this extension is a performance
win, especially on less powerful GPUs such as the Adreno 308, we
decided to block it only on the driver versions which we knew were
broken: V@331 and V@415.

However, we have now received a report that it is additionally broken
on version V@0502. As it now seems likely the bug affects all driver
versions, or at least more than originally hoped, this patch blocks
the extension on the Adreno 308 regardless of driver version.

Differential Revision: https://phabricator.services.mozilla.com/D185530
2023-08-07 16:11:48 +00:00
Travis Long aa6cb926b7 Bug 1626969 - Include locale in Glean pings.r=chutten,supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D185153
2023-08-07 11:02:56 +00:00
Cristina Horotan 29d764fc02 Backed out changeset 672918ecc3bc (bug 1626969) for causing mach failures on a CLOSED TREE 2023-08-04 22:09:05 +03:00
Travis Long de399e3600 Bug 1626969 - Include locale in Glean pings.r=chutten,supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D185153
2023-08-04 18:41:55 +00:00
Noemi Erli b4dadcc4c4 Bug 1847139 - Fix webrender tidy bustage r=fix CLOSED TREE 2023-08-04 09:17:41 +03:00
Mike Hommey 7d8fe87705 Bug 1847139 - Use a versioned dependency on malloc_size_of_derive for standalone webrender. r=gfx-reviewers,jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D185384
2023-08-04 05:44:54 +00:00
Glenn Watson 6ab57bb59e Bug 1847133 - Make `build_mask_tasks` a free function r=gfx-reviewers,lsalzman
This is rearranging code only, no functional change here. Landing
as a separate patch to make it easier to review the follow up patches
that rely on this change.

Differential Revision: https://phabricator.services.mozilla.com/D185374
2023-08-04 00:34:16 +00:00
Jan-Erik Rediger 1c2fbc9d73 Bug 1840044 - Update to Glean 53.1.0, UniFFI 0.24.1 and latest application-services. r=TravisLong,nika,markh,supply-chain-reviewers
Update:
  - Glean to v53.1.0
  - UniFFI to v0.24.1
  - application-services to a recent nightly that uses the above
    versions

- Updated `rusqlite` in toolkit/library/rust/shared/Cargo.toml
- Updated `uniffi-bindgen-gecko-js` to work with the new UniFFI.  Also
  updated it's askama version.
- Vetted new cargo dependencies

Ran `mach uniffi generate` to regenerate the code.

Differential Revision: https://phabricator.services.mozilla.com/D181872
2023-07-26 15:34:27 +00:00
Jamie Nicol 17c4d02def Bug 1843749 - Block qcom_tiled_rendering on Adreno 308 GPUs. r=gfx-reviewers,lsalzman
We started using this extension as an optimization on Adreno GPUs in
bug 1828248. At the time, we discovered that there was a driver bug in
version 0490 of the Adreno driver resulting in rendering errors on a
variety of Adreno GPUs. We therefore blocked the usage of the
extension on that driver version.

We have now discovered another bug causing even more apparent
rendering issues. This appears to only affect Adreno 308 GPUs running
driver versions 331 or 415. This patch therefore additionally blocks
the extension on such devices.

Differential Revision: https://phabricator.services.mozilla.com/D184388
2023-07-24 16:23:20 +00:00
Sandor Molnar fb1981e4cf Backed out changeset 93b5aead9fb9 (bug 1840044) for causing multiple failures, incl. build bustages CLOSED TREE 2023-07-20 22:00:20 +03:00
Jan-Erik Rediger f74614d6b0 Bug 1840044 - Update to Glean 53.1.0, UniFFI 0.24.1 and latest application-services. r=TravisLong,nika,markh,supply-chain-reviewers
Update:
  - Glean to v53.1.0
  - UniFFI to v0.24.1
  - application-services to a recent nightly that uses the above
    versions

- Updated `rusqlite` in toolkit/library/rust/shared/Cargo.toml
- Updated `uniffi-bindgen-gecko-js` to work with the new UniFFI.  Also
  updated it's askama version.
- Vetted new cargo dependencies

Ran `mach uniffi generate` to regenerate the code.

Differential Revision: https://phabricator.services.mozilla.com/D181872
2023-07-20 17:22:56 +00:00
Lee Salzman 1c3c925d9c Bug 1843485 - Avoid negative values in fastSqrt. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D184025
2023-07-19 20:05:47 +00:00
Glenn Watson a799855c86 Bug 1843569 - Support draw_clip_prim path for rounded rects r=gfx-reviewers,nical
This adds the same handling for drawing the clip prim to the new
rounded rect path as the transformed rect path.

Differential Revision: https://phabricator.services.mozilla.com/D183787
2023-07-19 19:34:00 +00:00
Glenn Watson 6cd2ae615b Bug 1843622 - Better fix / workaround for invalid scale in ScaleOffset r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D183698
2023-07-17 23:52:06 +00:00
Glenn Watson 4d4d79bcf7 Bug 1836703 - Fix drop-shadow not invalidating correctly. r=gfx-reviewers,lsalzman
There is still a remaining issue in some cases with the color of
the drop-shadow when moving the slider, but this seems to be a
different problem. This patch fixes the main issue.

Differential Revision: https://phabricator.services.mozilla.com/D183314
2023-07-17 20:06:25 +00:00
Glenn Watson d56d7e3b4d Bug 1841222 - Fix AA on single pixel lines with certain transforms with new mask path r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D183103
2023-07-16 19:39:31 +00:00
Lee Salzman c962135644 Bug 1842538 - Avoid overflow in linear gradient stepping. r=aosmond
Due to quantization and rounding of the linear gradient deltas, if
the amount of stepping due to long horizontal spans exceeds the precision
of the delta, then this can cause calculations to overflow. To avoid this,
break the stepping up into segments that re-quantize the color every so
often.

Differential Revision: https://phabricator.services.mozilla.com/D183568
2023-07-14 13:06:47 +00:00
David Turner da07fe271f Bug 1836063 - Add invalidation regression test r=gfx-reviewers,gw
Add a regression test for picture cache invalidation caused by scrolling
content with opacity-filtered stacking contexts.  This test ensures that
picture cache tiles are not invalidated by scrolling when such
sub-pictures are present, which was the problem in bug 1836063.

Depends on D181664

Differential Revision: https://phabricator.services.mozilla.com/D182496
2023-07-13 19:42:21 +00:00
David Turner 731133fa2d Bug 1836063 - Exclude common clip in subpictures r=gfx-reviewers,gw
When processing a picture-cache-tile we find the lowest common ancestor
clip of each primitive in the cache-tile and set that as the clip root.
Not only does this save separately applying the clip to each primitive,
it also means we actually draw the parts of the cache tile which are out
of view.  This means we don't have to redraw the cache tile every time
more of it scrolls in to view.

This mechanism doesn't work when we have Picture primitives inside a
picture-cache-tile, e.g. for applying a filter.  Primitives in the
sub-Picture still had the viewport clip applied and so when the
sub-Picture intersected with the viewport edge we had to redraw the
cache tile on every scroll event.

This diff copies the common-ancestor-clip logic to sub-Picture
primitives.  On pages with lots of opacity filtered areas (e.g.
w3schools.com) this eliminates unnecessary cache-tile invalidation and
massively improves scrolling performance on systems with a weak GPU.

Differential Revision: https://phabricator.services.mozilla.com/D181664
2023-07-13 19:42:20 +00:00
Lee Salzman 874ecd4f11 Bug 1842447 - Work around fastSqrt imprecision in commitRadialGradient. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D183391
2023-07-13 15:54:44 +00:00
Norisz Fay f2946ec9ad Backed out 2 changesets (bug 1836063) for causing reftest failures on bg-fixed-in-css-filter.html CLOSED TREE
Backed out changeset cd0a65056113 (bug 1836063)
Backed out changeset 59cfe3846fff (bug 1836063)
2023-07-12 01:58:16 +03:00
Glenn Watson 4e84680754 Bug 1837902 - Support disparate coordinate systems with new WR clip mask code path r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D180632
2023-07-11 21:05:30 +00:00
David Turner 0c9a074356 Bug 1836063 - Add invalidation regression test r=gfx-reviewers,gw
Add a regression test for picture cache invalidation caused by scrolling
content with opacity-filtered stacking contexts.  This test ensures that
picture cache tiles are not invalidated by scrolling when such
sub-pictures are present, which was the problem in bug 1836063.

Differential Revision: https://phabricator.services.mozilla.com/D182496
2023-07-11 20:20:23 +00:00
David Turner 3f9ef988f1 Bug 1836063 - Exclude common clip in subpictures r=gfx-reviewers,gw
When processing a picture-cache-tile we find the lowest common ancestor
clip of each primitive in the cache-tile and set that as the clip root.
Not only does this save separately applying the clip to each primitive,
it also means we actually draw the parts of the cache tile which are out
of view.  This means we don't have to redraw the cache tile every time
more of it scrolls in to view.

This mechanism doesn't work when we have Picture primitives inside a
picture-cache-tile, e.g. for applying a filter.  Primitives in the
sub-Picture still had the viewport clip applied and so when the
sub-Picture intersected with the viewport edge we had to redraw the
cache tile on every scroll event.

This diff copies the common-ancestor-clip logic to sub-Picture
primitives.  On pages with lots of opacity filtered areas (e.g.
w3schools.com) this eliminates unnecessary cache-tile invalidation and
massively improves scrolling performance on systems with a weak GPU.

Differential Revision: https://phabricator.services.mozilla.com/D181664
2023-07-11 20:20:23 +00:00
Nicolas Silva 0573213f18 Bug 1842228 - Update app_units to 0.7.3. r=gfx-reviewers,supply-chain-reviewers,lsalzman
This fixes wrench's replay functionality.

Differential Revision: https://phabricator.services.mozilla.com/D183010
2023-07-10 12:41:40 +00:00
Nicolas Silva fe51b71b38 Bug 1778032 - Fix the position of border-image repeat tiles. r=gfx-reviewers,gw
Differential Revision: https://phabricator.services.mozilla.com/D180323
2023-07-10 10:16:50 +00:00