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

39732 Коммитов

Автор SHA1 Сообщение Дата
sotaro 0dc5ddff34 Bug 1691895 - Make RenderCompositorSWGL work on android r=geckoview-reviewers,mattwoodrow,agi
Partial present is not supported yet with RenderCompositorSWGL on Android.

Differential Revision: https://phabricator.services.mozilla.com/D104654
2021-02-16 22:30:47 +00:00
Lee Salzman ba5d757a8a Bug 1692731 - Accelerate YUV 422 compositing in SWGL. r=jrmuizel
For YUV 422 video, when we are sampling UV planes at half the resolution of the
Y plane, we can interpolate from 2 samples for the UV planes as an approximation
of the 4 samples, allowing us to better pack the math into SIMD vectors and
substantially reduce the number of multiplications.

Differential Revision: https://phabricator.services.mozilla.com/D105137
2021-02-16 21:17:45 +00:00
Lee Salzman 20f75fe5f0 Bug 1692731 - Accelerate linear filter upscaling in SWGL. r=jrmuizel
Often images are upscaled from a smaller resolution on a page, especially
when there is any amount of zoom being used, and especially at higher screen
resolutions. In this case, we don't really take advantage of the fact that all
the samples for a SIMD chunk can be loaded from memory in a single load, so
long as we're willing to shuffle them around. We also can take advantage of the
fact that most images are axis-aligned so that they have a constant filter
offset with the next row.

Also, we can easily fall off the fast past for blendTextureNearest if for some
reason there is a significant subpixel offset. In this case, we can still do
something way faster than a normal linear filter the optimizes for the fact
that both the X and Y steps are constant 1:1, but we need to interpolate with
neighboring samples.

Differential Revision: https://phabricator.services.mozilla.com/D105131
2021-02-16 21:17:45 +00:00
Jim Blandy 8babe89301 Bug 1692013: Remove webrender::RenderApi::DebugCommand::SimulateLongLowPrioritySceneBuild. r=nical
This isn't used, and the support for it has bitrotted
(RenderBackend::low_priority_scene_tx is the wrong channel).

Differential Revision: https://phabricator.services.mozilla.com/D104730
2021-02-16 20:54:08 +00:00
Simon Giesecke 661e25bf09 Bug 1692880 - Make Put accept DataType instead of wrapping UserDataType. r=xpcom-reviewers,necko-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D104850
2021-02-16 15:53:33 +00:00
Jamie Nicol f236321327 Bug 1691955 - Avoid partial updates to picture cache tiles on Mali-Txxx. r=nical
Previously we had encountered issues when rendering partial regions of
picture cache tiles on Mali-Gxx devices. These often manifested as
patterns of black squares and rectangles. We worked around this by
ensuring that we always clear and render the entire tile. We have now
had a report of a similar looking problem on a Mali-Txxx devices, so
apply the same workaround there.

Differential Revision: https://phabricator.services.mozilla.com/D105278
2021-02-16 14:16:15 +00:00
longsonr 06ffd92145 Bug 1692736 - pass namespace id when writing/reading TransactionData r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D105272
2021-02-16 13:49:58 +00:00
Dorel Luca 847a939bb4 Backed out changeset 56ce2feb53e7 (bug 1688813) for Browser-chrome failures in browser_panelUINotifications_multiWindow.js. CLOSED TREE 2021-02-16 12:36:20 +02:00
Jonathan Kew 4a675c2c2f Bug 1692498 - Let the emoji font pref override Unicode presentation style only if it's explicitly user-set. r=emk
Differential Revision: https://phabricator.services.mozilla.com/D105102
2021-02-16 10:06:10 +00:00
Timothy Nikkel d6c5347d8b Bug 1691878. Modify gfx/layers/apz/test/mochitest/helper_scrollframe_activation_on_load.html to test the activate all scroll frames code better. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D104657
2021-02-16 09:32:21 +00:00
Matt Woodrow cd814ab6a8 Bug 1688813 - Draw position:fixed elements relative to the top-left of the document when using drawSnapshot. r=emilio,mstange
Differential Revision: https://phabricator.services.mozilla.com/D104935
2021-02-16 07:38:51 +00:00
Gerald Squelart 2416d881e2 Bug 1691589 - Reduce reliance on GeckoProfiler.h when only labels (and maybe markers) are needed - r=necko-reviewers,geckoview-reviewers,sg,agi,florian
There are no code changes, only #include changes.
It was a fairly mechanical process: Search for all "AUTO_PROFILER_LABEL", and in each file, if only labels are used, convert "GeckoProfiler.h" into "ProfilerLabels.h" (or just add that last one where needed).
In some files, there were also some marker calls but no other profiler-related calls, in these cases "GeckoProfiler.h" was replaced with both "ProfilerLabels.h" and "ProfilerMarkers.h", which still helps in reducing the use of the all-encompassing "GeckoProfiler.h".

Differential Revision: https://phabricator.services.mozilla.com/D104588
2021-02-16 04:44:19 +00:00
Bogdan Tara 2a3a8792b0 Backed out changeset 95d35d57d5d6 (bug 1692498) for assertion failure at StaticPrefList_gfx.h CLOSED TREE 2021-02-15 23:23:33 +02:00
Jonathan Kew 1260865663 Bug 1692498 - Let the emoji font pref override Unicode presentation style only if it's explicitly user-set. r=emk
Differential Revision: https://phabricator.services.mozilla.com/D105102
2021-02-15 20:11:17 +00:00
Jonathan Kew 3b357da5bb Bug 1690192 - Fix possible leaks of an unreferenced gfxFont in FindFontForChar and GlobalFontFallback. r=m_kato
Differential Revision: https://phabricator.services.mozilla.com/D105103
2021-02-15 18:59:20 +00:00
Simon Giesecke ca94ec101e Bug 1691894 - Simplify uses of GetOrInsert where non-default-constructed entries are eventually inserted. r=xpcom-reviewers,necko-reviewers,nika,valentin
Differential Revision: https://phabricator.services.mozilla.com/D104674
2021-02-15 16:37:52 +00:00
Simon Giesecke 780a1636a9 Bug 1691894 - Replace several suboptimal uses of Put after Get by GetOrInsertWith or WithEntryHandle. r=xpcom-reviewers,necko-reviewers,kmag,valentin,geckoview-reviewers,agi
Differential Revision: https://phabricator.services.mozilla.com/D104849
2021-02-15 15:12:17 +00:00
smolnar 1afbbe67e1 Backed out 5 changesets (bug 1691894) for causing hazard failures in nsXULPrototypeCache. CLOSED TREE
Backed out changeset 22dc870ee609 (bug 1691894)
Backed out changeset 58c31e9d6ae3 (bug 1691894)
Backed out changeset 7483e84149d8 (bug 1691894)
Backed out changeset f977d6cfa973 (bug 1691894)
Backed out changeset db4503476f34 (bug 1691894)
2021-02-15 16:43:23 +02:00
Emilio Cobos Álvarez f0ba453d2b Bug 1669051 - Turn off async font loading in APZ tests to see if they help avoiding intermittents. r=jfkthame
Per comment 9 this seems caused by an unexpected reframe. I haven't been
able to repro this, but the only kind of thing that should cause it is
the global reflow we do when fonts change.

This patch turns these async font loading features off in APZ tests to
see whether it helps avoiding this kind of intermittent. If it doesn't,
I guess we should revert this and try to repro harder.

Differential Revision: https://phabricator.services.mozilla.com/D105166
2021-02-15 10:18:16 +00:00
Simon Giesecke 3c29a68440 Bug 1691894 - Make Put accept DataType instead of wrapping UserDataType. r=xpcom-reviewers,necko-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D104850
2021-02-15 10:04:46 +00:00
Simon Giesecke 8973094ec1 Bug 1691894 - Replace several suboptimal uses of Put after Get by GetOrInsertWith or WithEntryHandle. r=xpcom-reviewers,necko-reviewers,kmag,valentin,geckoview-reviewers,agi
Differential Revision: https://phabricator.services.mozilla.com/D104849
2021-02-15 10:04:45 +00:00
Sylvestre Ledru eb4a1abeb2 Bug 1617369 - Reformat recent rust changes with rustfmt r=emilio DONTBUILD
Updated with rustfmt 1.4.18-stable (8157a3f 2020-07-15)

# ignore-this-changeset

Depends on D105158

Differential Revision: https://phabricator.services.mozilla.com/D105159
2021-02-15 09:14:01 +00:00
Sylvestre Ledru b4f9be25d4 Bug 1519636 - Reformat recent changes to the Google coding style r=andi,necko-reviewers
Updated with clang-format version 11.0.1 (taskcluster-B6bdwSKDRF-luRQWXBuzpA)

# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D105158
2021-02-15 08:49:20 +00:00
Hiroyuki Ikezoe b89f612a23 Bug 1613566 - Use layersId to find the target hit testing tree node for scroll thumb dragging. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D104893
2021-02-14 22:37:42 +00:00
Jonathan Kew 34861521fe Bug 1692010 - Simplify handling of generics in WhichPrefFontSupportsChar, for better clarity. r=emk
Differential Revision: https://phabricator.services.mozilla.com/D104729
2021-02-13 04:17:07 +00:00
Emilio Cobos Álvarez 3f5561a2f7 Bug 1678487 - Make CMSMode an enum class. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D104945
2021-02-13 03:59:23 +00:00
Emilio Cobos Álvarez 675578aca4 Bug 1678487 - Remove SRGBOverrideObserver, and make gfx.color_management.force_srgb a static pref. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D104944
2021-02-13 03:59:22 +00:00
Mihai Alexandru Michis afd69c4be3 Backed out 3 changesets (bug 1678487) for causing reftest failures.
CLOSED TREE

Backed out changeset f6519420f910 (bug 1678487)
Backed out changeset 9beae015d19b (bug 1678487)
Backed out changeset 029cc10d2477 (bug 1678487)
2021-02-13 05:18:54 +02:00
Emilio Cobos Álvarez ba4d1a3c68 Bug 1678487 - Make CMSMode an enum class. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D104945
2021-02-13 02:15:22 +00:00
Emilio Cobos Álvarez 47b903f8b3 Bug 1678487 - Remove SRGBOverrideObserver, and make gfx.color_management.force_srgb a static pref. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D104944
2021-02-13 02:15:22 +00:00
Brindusan Cristian d930c1c648 Backed out 5 changesets (bug 1678487) for multiple failures. CLOSED TREE
Backed out changeset 00242b4230f2 (bug 1678487)
Backed out changeset 63612a51cfee (bug 1678487)
Backed out changeset bd0321ad1968 (bug 1678487)
Backed out changeset c6a4d3c17d39 (bug 1678487)
Backed out changeset 5de112a29a87 (bug 1678487)
2021-02-13 02:41:17 +02:00
Emilio Cobos Álvarez dc73c68e0e Bug 1678487 - Initialize all the CMS state once on the main-thread, have thread-safe accessors for the various transforms. r=aosmond
Well, mostly thread-safe, in the sense that on shutdown we might free
them, but that is pre-existing and can't happen for the code-path that I'm
about to touch.

We could probably just avoid freeing these transforms if we wanted...

Differential Revision: https://phabricator.services.mozilla.com/D104946
2021-02-12 23:23:31 +00:00
Emilio Cobos Álvarez d7aca6b47c Bug 1678487 - Make CMSMode an enum class. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D104945
2021-02-12 23:23:31 +00:00
Emilio Cobos Álvarez d2dca72aa3 Bug 1678487 - Remove SRGBOverrideObserver, and make gfx.color_management.force_srgb a static pref. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D104944
2021-02-12 23:23:31 +00:00
Mike Hommey 241dbe43de Bug 1692353 - Replace use of compare_and_swap with compare_exchange. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D104931
2021-02-12 22:32:27 +00:00
Jonathan Kew 87b20ff958 Bug 1691719 - Optimize InitSystemFontNames when running on Catalina or later, where the .SFNS is a variable font with optical sizing. r=lsalzman
Depends on D105042

Differential Revision: https://phabricator.services.mozilla.com/D105044
2021-02-12 20:10:36 +00:00
Jonathan Kew 75d0bf426f Bug 1691719 - Don't explicitly activate supplemental fonts directory when building with pre-Catalina SDK, as the fonts are automatically made available. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D105042
2021-02-12 20:10:36 +00:00
Lee Salzman 137e36e7fd Bug 1685943 - Accelerate solid color span with clip masking or AA. r=jrmuizel
This addresses some deficiencies in the way solid spans are handled when clip-masking
or AA is used. In that case, the overhead of the extra blend stage is significant and
we can do a better just by temporarily disabling the those parts of the blend stage
and fast-pathing them instead of just going through commit_solid_span.

Differential Revision: https://phabricator.services.mozilla.com/D104963
2021-02-12 16:47:40 +00:00
Simon Giesecke f701c44a5c Bug 1691894 - Fix EntryHandle to only work with DataType rather than wrapping UserDataType. r=xpcom-reviewers,necko-reviewers,nika,jonco,valentin
Differential Revision: https://phabricator.services.mozilla.com/D104810
2021-02-12 15:25:40 +00:00
Nicolas Silva 5362b13377 Bug 1688180 - Decouple the render task kind from whether it is cached. r=gw
This patch removes from RenderTaskKind members that are independent from what the render task is drawing. The uv rect set automatically either to Some(handle) if the render task is not cached or to None if it is cached. This reflects what was happening implicitly before this patch. The uv rect kind defaults to Rect which is the most common case, but can be set when creating the render task.

This is a first step toward more flexibility when deciding whether a render task is cached or not (there is stil some coupling in the batching code between the type of primitive and whether their render tasks are cached).
More importantly, not having to understand what is up with presence or absence of uv handles in render tasks makes adding new ones much easier.

Differential Revision: https://phabricator.services.mozilla.com/D104840
2021-02-12 12:55:24 +00:00
Jeff Gilbert 85ed84ba5f Bug 1692355 - [angle] Don't assert for non-sampleable non-ms sources in blitRenderbufferRect if we can CopySubResource. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D104940
2021-02-12 09:22:51 +00:00
Lee Salzman 15e2d003ce Bug 1678119 - Simplify SWGL image fast-paths since complex blending is no longer required. r=jrmuizel
Now that most of the complicated alpha-pass features such as clip-masking and anti-aliasing
are handled in SWGL during the blend stage, most of the fast-paths are identical and only call
swgl_commitTextureLinear in a tight loop. We can do a lot better here by just moving that loop
into SWGL, not only making it faster but removing all the redundant boiler-plate code out of
the shaders.

Differential Revision: https://phabricator.services.mozilla.com/D104536
2021-02-12 02:43:56 +00:00
Lee Salzman ae6d305bf9 Bug 1678119 - Update reftest fuzz for SWGL anti-aliasing. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D104494
2021-02-12 02:43:55 +00:00
Lee Salzman bd41ed1f9c Bug 1678119 - Use swgl_antiAlias() in WR brush shaders. r=jrmuizel
This cleans up the WR brush shaders to not have to use its own
implementation of init_transform_fs() for anti-aliasing when SWGL
is available. To enable this, most of the details of AAing have
been moved into brush.glsl to simplify the control knobs and
allow easier modifications.

With swgl_antiAlias() used, the drawSpan fast-paths no longer have to
care about whether ot not AA is enabled, so we can more easily stay
on these fast-paths without worry.

Differential Revision: https://phabricator.services.mozilla.com/D104493
2021-02-12 02:43:55 +00:00
Lee Salzman d91d4d18d4 Bug 1678119 - Implement native anti-aliasing in SWGL. r=jrmuizel
The main goal of this patch is to move all the complexity of optionally
handling anti-aliasing out of the GLSL drawSpan fast-paths and into SWGL
itself into specific blend-mode handling of anti-aliasing. Mainly this
adds a swgl_antiAlias() extension to be called from the GLSL vertex shader,
after which no further involvement is necessary from the shader to work.
This also enables SWGL to better track those areas of a span that don't
need any anti-aliasing applied, and so can potentially be faster.

Some massaging of blend_pixels() was necessary to get it to inline properly
with all the extra cases added. This is mainly a consequence of the DO_AA
macro that lives inside BLEND_CASE, which is used to handle the dispatching
of new AA_BLEND_KEY and AA_MASK_BLEND_KEY cases. The parameters for these
AA modes are mostly handled in SWGL via the aa_span() function, which computes
the area of the span where non-opaque AA weights are necessary and where it can
skip over the opaque interior.

There are some incidental drive-by cleanups that were necessary of bvecs and
pack_pixels.

Differential Revision: https://phabricator.services.mozilla.com/D104492
2021-02-12 02:43:54 +00:00
Butkovits Atila 9852a9e53e Backed out 4 changesets (bug 1678119) for causing build bustage on brush_blend.h. CLOSED TREE
Backed out changeset c93691df2440 (bug 1678119)
Backed out changeset 163ea6e7bcc2 (bug 1678119)
Backed out changeset 16b232a35692 (bug 1678119)
Backed out changeset b9dce9d33351 (bug 1678119)
2021-02-12 03:32:07 +02:00
Matt Woodrow 2b2b87d224 Bug 1676409 - Attempt to resolve CrossProcessPaint objects for printing immediately, in case we didn't queue any dependencies. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D104782
2021-02-12 00:40:41 +00:00
Matt Woodrow b9928bb97d Bug 1682329 - Null check BrowserParent since it can have gone away mid-screenshot. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D104781
2021-02-12 00:40:40 +00:00
Lee Salzman 9c94c67c13 Bug 1678119 - Simplify SWGL image fast-paths since complex blending is no longer required. r=jrmuizel
Now that most of the complicated alpha-pass features such as clip-masking and anti-aliasing
are handled in SWGL during the blend stage, most of the fast-paths are identical and only call
swgl_commitTextureLinear in a tight loop. We can do a lot better here by just moving that loop
into SWGL, not only making it faster but removing all the redundant boiler-plate code out of
the shaders.

Differential Revision: https://phabricator.services.mozilla.com/D104536
2021-02-12 00:19:03 +00:00
Lee Salzman 9024a10fb5 Bug 1678119 - Update reftest fuzz for SWGL anti-aliasing. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D104494
2021-02-12 00:19:02 +00:00