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

41522 Коммитов

Автор SHA1 Сообщение Дата
Tetsuharu Ohzeki 0eff170956 Bug 1729816 - part 2: Remove unused CompositableHost::BumpFlashCounter(). r=gfx-reviewers,mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D125004
2021-09-09 02:02:11 +00:00
Tetsuharu Ohzeki 34efa74406 Bug 1729816 - part 1: Remove unused gfxPlatform::GetLayerDiagnosticTypes() and related prefs. r=gfx-reviewers,mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D125003
2021-09-09 02:02:10 +00:00
Glenn Watson 71eae85801 Bug 1729241 - Pt 1 - Refactor spatial tree accessors and update r=gfx-reviewers,kvark
In future, spatial tree nodes will not be stored in a flat
vec array. Instead, they'll be retained based on their unique
key. To prepare for this, refactor the spatial tree so that
all access to nodes is done via an accessor, and the tree
update no longer relies on `split_mut`.

Differential Revision: https://phabricator.services.mozilla.com/D124593
2021-09-08 20:24:47 +00:00
Sebastian Hengst 43d8cf1386 Backed out changeset 5281f57107c7 (bug 1728423) for hangs in nsLayoutUtils::PaintFrame (bug 1729723). CLOSED TREE 2021-09-08 18:42:23 +02:00
Nicolas Silva 9a1997f275 Bug 1729445 - Don't batch texture uploads for large-ish items. r=jnicol
In other words, don't batch items if we don't expect to be able to fit other items in the staging texture. The batched upload path has a cost on Windows (an extra copy) that is easily recovered when batching a lot of small items (typically works very well with glyphs), but we get diminishing returns and even slowdowns for larger items.

Differential Revision: https://phabricator.services.mozilla.com/D124791
2021-09-08 12:41:51 +00:00
Nicolas Silva 0afcd4879b Bug 1729441 - Add a pref to set the blob tile size. r=gfx-reviewers,bradwerth
The prefs name is gfx.webrender.blob-tile-size and can be changed at runtime.

It changes the behavior of a wrench reftest that was ensuring that we don't crash with unreasonable tile sizes. The new behavior (sanitizing the tile size) means we can render the image while we would previously skip it.

Differential Revision: https://phabricator.services.mozilla.com/D124789
2021-09-08 12:41:51 +00:00
Jonathan Kew bfa1d70def Bug 1715501 - patch 2 - Pass the presContext to platform font lookup methods so they can query it for font visibility. r=emilio
This does not in itself change user-visible behavior, but is a foundation for bug
1715507 where we will make the behavior per-context instead of global. This is basically
just plumbing, passing a pointer to the presContext that's asking for fonts to be
resolved all the way down to the gfx code that handles the font list and looks up
fonts.

For the immediate goal of making font visibility work per-context, it would be
sufficient to pass the desired visibility level in to the font-selection methods.
However, passing the actual presContext down (and not just its visibility level)
will enable us to report back via the dev console when a font is blocked (see bug
1715537), so the approach here provides the basis for that upcoming enhancement.

Depends on D124194

Differential Revision: https://phabricator.services.mozilla.com/D124195
2021-09-08 12:18:17 +00:00
Jonathan Kew 99dbfb0c56 Bug 1715501 - patch 1 - Track codepoints with no available fonts and replacement-char family separately for each font-visibility level. r=emilio
This does not change existing behavior, but will be required once font visibility
is no longer simply a global setting. The data cached in these members depends on
the font visibility level, so currently we just flush it if the visibility pref is
modified. But in future we may be using multiple levels at the same time (in
separate contexts), so we want to maintain separate per-level caches here.

Differential Revision: https://phabricator.services.mozilla.com/D124194
2021-09-08 12:18:17 +00:00
Cristian Tuns 9e1718d5a5 Backed out 4 changesets (bug 1715537, bug 1715507, bug 1715501) for causing mochitest failures on test_bug418986-2.html. CLOSED TREE
Backed out changeset fff777ea5637 (bug 1715537)
Backed out changeset 240308eb514d (bug 1715507)
Backed out changeset e3f8526e0e2a (bug 1715501)
Backed out changeset cfdd1c5d8d3f (bug 1715501)
2021-09-08 07:48:51 -04:00
Jonathan Kew 34bb52269d Bug 1715537 - Log a warning to the web console when a font request is blocked due to font-visibility restrictions. r=emilio
Depends on D124196

Differential Revision: https://phabricator.services.mozilla.com/D124345
2021-09-08 09:35:18 +00:00
Jonathan Kew 20585f15c0 Bug 1715501 - patch 2 - Pass the presContext to platform font lookup methods so they can query it for font visibility. r=emilio
This does not in itself change user-visible behavior, but is a foundation for bug
1715507 where we will make the behavior per-context instead of global. This is basically
just plumbing, passing a pointer to the presContext that's asking for fonts to be
resolved all the way down to the gfx code that handles the font list and looks up
fonts.

For the immediate goal of making font visibility work per-context, it would be
sufficient to pass the desired visibility level in to the font-selection methods.
However, passing the actual presContext down (and not just its visibility level)
will enable us to report back via the dev console when a font is blocked (see bug
1715537), so the approach here provides the basis for that upcoming enhancement.

Depends on D124194

Differential Revision: https://phabricator.services.mozilla.com/D124195
2021-09-08 09:35:17 +00:00
Jonathan Kew ffc9bc9fe0 Bug 1715501 - patch 1 - Track codepoints with no available fonts and replacement-char family separately for each font-visibility level. r=emilio
This does not change existing behavior, but will be required once font visibility
is no longer simply a global setting. The data cached in these members depends on
the font visibility level, so currently we just flush it if the visibility pref is
modified. But in future we may be using multiple levels at the same time (in
separate contexts), so we want to maintain separate per-level caches here.

Differential Revision: https://phabricator.services.mozilla.com/D124194
2021-09-08 09:35:16 +00:00
Timothy Nikkel f06fa58321 Bug 1729604. Remove unused aClip parameter from ScrollFrameHelper::ComputeScrollMetadata. r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D124870
2021-09-08 04:20:55 +00:00
Tetsuharu Ohzeki cc4be149b9 Bug 1729570 - part 3: Remove unused gfxPlatform::GetAcceleratedCompositorBackends(). r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D124862
2021-09-08 00:32:09 +00:00
Tetsuharu Ohzeki 52196aec67 Bug 1729570 - part 2: Remove unused gfxPlatform::GetCompositorBackends(). r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D124861
2021-09-08 00:32:09 +00:00
Tetsuharu Ohzeki 2d62dd89ed Bug 1729570 - part 1: Remove gfx/tests/gtest/TestTextureCompatibility.cpp. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D124860
2021-09-08 00:32:08 +00:00
Tetsuharu Ohzeki da3f8a5ccf Bug 1729579 - Remove gfxPlatformGtk::UseImageOffscreenSurfaces(). r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D124865
2021-09-08 00:20:44 +00:00
Tetsuharu Ohzeki c55c4a55a6 Bug 1729476 - Remove unused CompositorBridgeChild::ChildProcessHasCompositorBridge(). r=gfx-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D124819
2021-09-07 22:37:48 +00:00
Tetsuharu Ohzeki 0109338d54 Bug 1729476 - Remove unused CompositorBridgeChild::SendMakeSnapshot(). r=gfx-reviewers,ipc-reviewers,nika,nical
Differential Revision: https://phabricator.services.mozilla.com/D124818
2021-09-07 22:37:48 +00:00
Tetsuharu Ohzeki 6d48adb6f4 Bug 1729476 - Remove unused CompositorBridgeChild::SendNotifyChildCreated(). r=gfx-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D124817
2021-09-07 22:37:47 +00:00
Tetsuharu Ohzeki fdfaf254d0 Bug 1729476 - Remove unused CompositorBridgeChild::SendNotifyRegionInvalidated(). r=gfx-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D124816
2021-09-07 22:37:47 +00:00
Tetsuharu Ohzeki 6a5eb993a9 Bug 1729476 - Remove unused CompositorBridgeChild::SendGetTileSize(). r=gfx-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D124815
2021-09-07 22:37:47 +00:00
Tetsuharu Ohzeki 65ac86607f Bug 1729476 - Remove unused CompositorBridgeChild::WillEndTransaction(). r=gfx-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D124814
2021-09-07 22:37:46 +00:00
Tetsuharu Ohzeki 8c09912b8c Bug 1729476 - Remove unused CompositorBridgeChild::NotifyBeginAsyncEndLayerTransaction(). r=gfx-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D124813
2021-09-07 22:37:46 +00:00
Tetsuharu Ohzeki 69221cf5b7 Bug 1729476 - Remove unused CompositorBridgeChild::NotifyFinishedAsyncEndLayerTransaction(). r=gfx-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D124812
2021-09-07 22:37:45 +00:00
Tetsuharu Ohzeki a5c7ab55a9 Bug 1729476 - Remove unused CompositorBridgeChild::HandleMemoryPressure(). r=gfx-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D124811
2021-09-07 22:37:45 +00:00
Tetsuharu Ohzeki 46174a8c26 Bug 1729476 - Remove unused CompositorBridgeChild::ClearTexturePool(). r=gfx-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D124810
2021-09-07 22:37:44 +00:00
Tetsuharu Ohzeki 7202dea699 Bug 1729476 - Remove unused CompositorBridgeChild::GetTexturePool. r=gfx-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D124809
2021-09-07 22:37:44 +00:00
Nicolas Silva 3f70b08cd1 Bug 1728618 - Add a profile marker for shader compilation. r=gfx-reviewers,jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D124247
2021-09-07 07:35:35 +00:00
Nicolas Silva 715673b09f Bug 1728618 - Show shader build times in the wr profiler. r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D124218
2021-09-07 07:35:34 +00:00
Marian-Vasile Laza d25d135947 Backed out 7 changesets (bug 1728050, bug 1728251, bug 1728232, bug 1542929, bug 1714138, bug 1728258) for causing reftest failures. CLOSED TREE
Backed out changeset 41e053201cd3 (bug 1714138)
Backed out changeset 16ae9f5b4aa0 (bug 1728258)
Backed out changeset 414aa7ff05fe (bug 1542929)
Backed out changeset 7217ecf149c4 (bug 1728251)
Backed out changeset 405ff2ed2110 (bug 1728251)
Backed out changeset 3eec9e6c7218 (bug 1728232)
Backed out changeset 66038c15fe54 (bug 1728050)
2021-09-07 09:00:26 +03:00
sotaro 221d803ee9 Bug 1729244 - Rename gRenderThreadLog to gWebRenderBridgeParentLog in WebRenderBridgeParent.cpp r=nical
Forgot to rename it in Bug 1727511.

Differential Revision: https://phabricator.services.mozilla.com/D124596
2021-09-07 00:06:17 +00:00
Matt Woodrow 9bdea2da6b Bug 1542929 - Remove mReferenceFrame from nsDisplayItem. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D124009
2021-09-06 23:12:04 +00:00
Matt Woodrow 7e0f7ff766 Bug 1728050 - Move opacity flattening to be part of WR DL serialization. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D124005
2021-09-06 23:12:02 +00:00
Glenn Watson c043405180 Bug 1728720 - Remove ROOT_SPATIAL_NODE_INDEX and TOPMOST_SCROLL_NODE_INDEX. r=nical
Add a real root node that is not based on the root pipeline. Remove
the constant for the root spatial node, and retrieve it from the
spatial tree.

Although this doesn't achieve anything useful right now, it will be
needed when spatial nodes are retained between display list and are
referenced by handle.

Differential Revision: https://phabricator.services.mozilla.com/D124310
2021-09-06 20:04:19 +00:00
Jamie Nicol 15d74fcee2 Bug 1728064 - Add test to ensure shaders don't contain flat scalar varyings on android. r=gfx-reviewers,kvark
There is a driver bug on Adreno 3xx devices causing incorrect
rendering when flat scalar varyings are used in fragment shaders. This
has occured several times in different shaders, so this patch finally
adds a test to ensure it does not occur again.

We have used the glsl crate to parse and validate the shaders rather
than angle, as exposing the required bindings to mozangle is messy. We
must therefore use the pre-optimized shaders as the glsl crate does
not handle preprocessor directives correctly.

This has been implemented as a wrench test rather than a unit test as
running unit tests on android is difficult. Additionally we want to
use the shaders specific to the platform the tests are ran on, the bug
only affects (some) android devices, and shaders on other platforms
may differ.

Differential Revision: https://phabricator.services.mozilla.com/D124205
2021-09-06 13:56:58 +00:00
Jamie Nicol 4a11f7cb49 Bug 1728064 - Remove all remaining flat scalar varyings from shaders on android. r=gfx-reviewers,kvark
There is a driver bug on Adreno 3xx devices causing incorrect
rendering when flat scalar varyings are used in fragment shaders. The
original report was in bug 1630356, but it has been reported since on
several occasions for various shaders, which have been fixed one at a
time. This patch removes the remaining flat scalar varyings from all
of our shaders so that we do not encounter this issue again.

Additionally, it removes the usage of #ifdefs surrounding these
workarounds so that it applies to all platforms rather than just
android. This has been done to keep the code more readable - now that
we have a test to ensure this is not regressed it no longer needs to
be loud and ugly.

Differential Revision: https://phabricator.services.mozilla.com/D124204
2021-09-06 13:56:58 +00:00
Marian-Vasile Laza c39298632e Backed out 2 changesets (bug 1728064) for causing webrender bustages. CLOSED TREE
Backed out changeset 9c7077da42f2 (bug 1728064)
Backed out changeset 4daf6a7a42f7 (bug 1728064)
2021-09-06 15:10:51 +03:00
Kagami Sascha Rosylight dce6c97690 Bug 1728171 - Part 3: Add test r=edgar
Differential Revision: https://phabricator.services.mozilla.com/D124173
2021-09-06 11:50:35 +00:00
Kagami Sascha Rosylight 6c8d3ce28a Bug 1728171 - Part 2: Add button parameter to utils.sendNativePenInput r=cmartin,edgar
Differential Revision: https://phabricator.services.mozilla.com/D124172
2021-09-06 11:50:34 +00:00
Jamie Nicol 7542987dcd Bug 1728064 - Add test to ensure shaders don't contain flat scalar varyings on android. r=gfx-reviewers,kvark
There is a driver bug on Adreno 3xx devices causing incorrect
rendering when flat scalar varyings are used in fragment shaders. This
has occured several times in different shaders, so this patch finally
adds a test to ensure it does not occur again.

We have used the glsl crate to parse and validate the shaders rather
than angle, as exposing the required bindings to mozangle is messy. We
must therefore use the pre-optimized shaders as the glsl crate does
not handle preprocessor directives correctly.

This has been implemented as a wrench test rather than a unit test as
running unit tests on android is difficult. Additionally we want to
use the shaders specific to the platform the tests are ran on, the bug
only affects (some) android devices, and shaders on other platforms
may differ.

Differential Revision: https://phabricator.services.mozilla.com/D124205
2021-09-06 11:20:48 +00:00
Jamie Nicol 5fd22f55bf Bug 1728064 - Remove all remaining flat scalar varyings from shaders on android. r=gfx-reviewers,kvark
There is a driver bug on Adreno 3xx devices causing incorrect
rendering when flat scalar varyings are used in fragment shaders. The
original report was in bug 1630356, but it has been reported since on
several occasions for various shaders, which have been fixed one at a
time. This patch removes the remaining flat scalar varyings from all
of our shaders so that we do not encounter this issue again.

Additionally, it removes the usage of #ifdefs surrounding these
workarounds so that it applies to all platforms rather than just
android. This has been done to keep the code more readable - now that
we have a test to ensure this is not regressed it no longer needs to
be loud and ugly.

Differential Revision: https://phabricator.services.mozilla.com/D124204
2021-09-06 11:20:48 +00:00
Matt Woodrow d41e38aec0 Bug 1727682 - Make WebRenderLayerManager not inherit LayerManager. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D124433
2021-09-05 22:36:45 +00:00
Matt Woodrow 4ffaa45107 Bug 1728914 - Remove AsLayerManager. r=gfx-reviewers,aosmond
Depends on D124420

Differential Revision: https://phabricator.services.mozilla.com/D124421
2021-09-05 02:16:38 +00:00
Matt Woodrow 20dea375cb Bug 1728914 - Move payload handling from LayerManger to WebRenderLayerManager. r=gfx-reviewers,aosmond,jrmuizel
Depends on D124418

Differential Revision: https://phabricator.services.mozilla.com/D124419
2021-09-05 02:16:37 +00:00
Marian-Vasile Laza 36a784a4c4 Merge autoland to mozilla-central. a=merge 2021-09-04 12:38:27 +03:00
Jeff Muizelaar b79cfd62d3 Bug 1729076 - Remove unused mlgshaders. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D124504
2021-09-03 23:20:48 +00:00
Emilio Cobos Álvarez 70f53c85d4 Bug 856337 - Implement image-rendering: smooth and image-rendering: pixelated. r=jrmuizel,dholbert,longsonr
Also, more directly go from StyleImageRendering to wr::ImageRendering.

 * image-rendering: smooth the non-deprecated version of
   OptimizeQuality, which maps to SamplingFilter::LINEAR /
   wr::ImageRendering::Auto (which uses gl::LINEAR).

 * image-rendering: pixelated maps to wr::ImageRendering::Pixelated /
   SamplingFilter::POINT which is the same crisp-edges does.

Note that this uncovers that we were mapping image-rendering:
crisp-edges to wr::ImageRendering::Pixelated.

I'm going to preserve behavior on this patch but we should consider
switching that to map to wr::ImageRendering::CrispEdges on a
follow-up (filed bug 1728831 for this).

Differential Revision: https://phabricator.services.mozilla.com/D124378
2021-09-03 08:56:43 +00:00
Sandor Molnar 06f9e93e66 Backed out changeset 3bdf9c5f10cc (bug 1729051) build bustages. CLOSED TREE 2021-09-03 22:13:35 +03:00
Andrew Osmond eae74a37c7 Bug 1729051 - Simplify imgFrame to only use shared surfaces for raster images. r=jrmuizel
In practice we already only use SourceSurfaceSharedData as our
rasterized image backing. This means we no longer need to lock the data
to keep it in memory (when we used volatile memory), nor to try to
optimize the surface for the DrawTarget.

Differential Revision: https://phabricator.services.mozilla.com/D124476
2021-09-03 18:53:19 +00:00