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

36214 Коммитов

Автор SHA1 Сообщение Дата
Hiroyuki Ikezoe ff2144a3cd Bug 1620873 - Make MotionPathData Maybe<MotionPathData> in TransformData. r=boris
Having MotionPathData in layers::Animation is a bit inefficient for animations
other than transform like properties.

Differential Revision: https://phabricator.services.mozilla.com/D65921

--HG--
extra : moz-landing-system : lando
2020-03-10 01:30:08 +00:00
Bogdan Tara db7bc1a140 Backed out changeset a2ddfcc2a7d4 (bug 1618132) for mochitests failures complaining about hittest tests CLOSED TREE 2020-03-10 11:40:43 +02:00
Nicolas Silva 7f63167138 Bug 1618132 - Avoid redundant hit test tree builds. r=gw
build_frame is called by update_document which calls rebuild_hit_tester if the hit test tree is invalidated. The advantage of doing it there is that it is after the frame has been submitted to the renderer so we are out of the critical path and the work can overlap with draw call submission.

So we don't need to do the work in build_frame, and since we don't currently set the validity flag there we are often re-building the hit test tree a second time after frame building.

Differential Revision: https://phabricator.services.mozilla.com/D64328

--HG--
extra : moz-landing-system : lando
2020-02-27 02:28:41 +00:00
sotaro 2fd8ffcf08 Bug 1617808 - Re-deliver PREFER_COMPOSITOR_SURFACE flag to WebRender r=gw
Differential Revision: https://phabricator.services.mozilla.com/D64007

--HG--
extra : moz-landing-system : lando
2020-03-10 03:52:08 +00:00
Glenn Watson 8efc792cc9 Bug 1620147 - Fix virtual surface coords being outside bounds. r=Bert,sotaro
This adds support for tracking and invalidating tiles based on a
movable virtual offset.

Differential Revision: https://phabricator.services.mozilla.com/D65687

--HG--
extra : moz-landing-system : lando
2020-03-10 02:17:35 +00:00
Narcis Beleuzu 4728031ab3 Backed out changeset 0cb5cf87cb27 (bug 1617808) for bustages on bindings.rs . CLOSED TREE
--HG--
extra : rebase_source : be2dec023bc815d6e4ed4410c81345968ded211e
2020-03-10 02:16:24 +02:00
Bert Peers d0ccb302eb Bug 1620642 - reftest-analyzer improvements for analyzing test failures r=jgilbert
Turn the difference checkbox into a radio that adds "heatmap"; it uses
WebGL to show both images, their absolute difference, and a color-coded
max difference.  The quadrants split following the mouse.
This helps to separate large variations (red) from small variations
(green) and helps to compare the images without losing track of where
they are.

Differential Revision: https://phabricator.services.mozilla.com/D65841

--HG--
extra : moz-landing-system : lando
2020-03-09 19:45:11 +00:00
sotaro daa0d75b55 Bug 1619906 - Remove AllocShmemParams from ImageBridgeChild r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D65300

--HG--
extra : moz-landing-system : lando
2020-03-09 00:23:15 +00:00
sotaro c58ab473b3 Bug 1617808 - Re-deliver PREFER_COMPOSITOR_SURFACE flag to WebRender r=gw
Differential Revision: https://phabricator.services.mozilla.com/D64007

--HG--
extra : moz-landing-system : lando
2020-03-01 22:06:11 +00:00
Dzmitry Malyshau 0c4b15a728 Bug 1617879 - Rewrite the check for transformed clip intersection with the primitive in WR r=gw
Instead of trying to extract an inner rectangle from a transformed inner rectange,
which by itself doesn't have an obviously "best" solution, we are going to test if the
visibility rect is within the polygon of the projected inner rect.

The test is more precise, could be slightly more heavy, but most importantly - it's correct.

Differential Revision: https://phabricator.services.mozilla.com/D65836

--HG--
extra : moz-landing-system : lando
2020-03-09 19:46:35 +00:00
Glenn Watson 35249a411d Bug 1620904 - Restrict picture cache debug rects to tile valid rect. r=nical
This makes the picture cache debug view more represent the amount
of pixels that are being rasterized and composited. It's also a
bit clearer where picture cache boundaries are on some pages.

Differential Revision: https://phabricator.services.mozilla.com/D65932

--HG--
extra : moz-landing-system : lando
2020-03-09 15:37:48 +00:00
Andrew Osmond 964c6a2c3f Bug 1616444 - Ensure gradients are properly color managed with WebRender. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D66087

--HG--
extra : moz-landing-system : lando
2020-03-09 17:11:54 +00:00
Andrew Osmond 91b071ed14 Bug 1618345 - Enforce proper color management by splitting gfx::Color into sRGBColor and DeviceColor types. r=jrmuizel
gfx::Color is currently misused in many places. The DrawTargets expect
the color space to be in device space, e.g. what we are actually going
to draw using. Everything sitting above generally deals with sRGB, as
specified in CSS. Sometimes we missed the conversion from sRGB to device
space when issuing draw calls, and similarly sometimes we converted the
color to device space twice.

This patch splits the type in two. sRGBColor and DeviceColor now
represent sRGB and device color spaces respectively. DrawTarget only
accepts DeviceColor, and one can get a DeviceColor from an sRGBColor via
the ToDeviceColor helper API. The reftests now pass with color
management enabled for everything (e.g. CSS) instead of just tagged
raster images.

There will be a follow up patch to enable color management everywhere by
default on all supported platforms.

Differential Revision: https://phabricator.services.mozilla.com/D64771

--HG--
extra : moz-landing-system : lando
2020-03-09 14:16:17 +00:00
Jonathan Kew 3df4ab8b5e Bug 1620111 - Eliminate sync-IPC message ReadFontList, instead use SetXPCOMProcessAttributes to pass font list to the child process on Android. r=lsalzman,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D65742

--HG--
extra : moz-landing-system : lando
2020-03-09 12:27:45 +00:00
Nicolas Silva 3c022bc4bb Bug 1580178 - Allow hit-testing without synchronous messaging. r=botond,kats
This patch adds an asynchronous hit tester that can perform hit testing queries without blocking on a synchronous message to the render backend thread, which is often busy building frames. This is done by having a shared immutable hit tester readable by any thread, atomically swapped each time the render backend processes a new scene or frame.
In order to asynchronously hit test without causing race conditions with APZ intenral state, the hit tester has to be built while the APZ lock is held.

Differential Revision: https://phabricator.services.mozilla.com/D45345

--HG--
extra : moz-landing-system : lando
2020-03-02 10:27:17 +00:00
Tim Nguyen 6cec94d9be Bug 1620328 - Set conic-gradient angle range on Skia. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D65910

--HG--
extra : moz-landing-system : lando
2020-03-08 21:46:06 +00:00
Mark Banner 2c4e35b0a6 Bug 1620218 - Automatic code fixes for Prettier 1.18.2 upgrade. r=mossop,webcompat-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D65509

--HG--
extra : moz-landing-system : lando
2020-03-08 21:45:16 +00:00
Mark Banner 15cfe23b88 Bug 1620542 - Automatically fix ESLint errors in .eslintrc.js files. r=mossop
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D65703

--HG--
extra : moz-landing-system : lando
2020-03-07 10:09:44 +00:00
Andrew Osmond 4831a6bd0e Bug 1616030 - Fix SwizzleRow for big endian systems. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D65797

--HG--
extra : moz-landing-system : lando
2020-03-06 20:04:18 +00:00
Kartikaya Gupta c1d276b2c9 Bug 1613514 - Increase the timeout for the APZ fission tests. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D65558

--HG--
extra : moz-landing-system : lando
2020-03-06 17:28:23 +00:00
Boris Zbarsky c6c4a83796 Bug 1535530. Fix can-run-script analysis to not mishandle on-stack refs to RefPtrs. r=andi,masayuki
The key here is to test the type of the variable declaration for being a
smartptr type, instead of testing the type of the variable _use_.

Differential Revision: https://phabricator.services.mozilla.com/D65581

--HG--
extra : moz-landing-system : lando
2020-03-06 09:57:45 +00:00
Bert Peers 180c84a40e Bug 1618939 - Hit MOZ_CRASH(explicit panic) at gfx/wr/webrender/src/render_task.rs:37 r=gw
Adding a repro-case reftest that asks for a 19996x5000 RenderTask (at
-p1), then fix it in analogy with the clamping to reasonable values that
happens for `NormalBorder`.

Differential Revision: https://phabricator.services.mozilla.com/D65660

--HG--
extra : moz-landing-system : lando
2020-03-06 03:48:40 +00:00
Glenn Watson 814194b463 Bug 1579235 - Part 12 - Support native compositor surfaces. r=Bert,sotaro
This patch adds support for external compositor surfaces when
using native compositor mode.

Differential Revision: https://phabricator.services.mozilla.com/D65436

--HG--
extra : moz-landing-system : lando
2020-03-05 20:45:17 +00:00
Glenn Watson 36a99a2cba Bug 1579235 - Part 11 - Refactor how external surfaces are composited. r=Bert,sotaro
This patch refactors how external surfaces are stored in the
CompositeState structure. This is primarily to simplify integration
with native compositor mode, but also simplifies the Draw compositor
path.

Previously, the ResolvedExternalSurface struct contained information
that was used to rasterize the external surface (YUV planes etc) and
also the information to composite it (device rect, clip rect, z_id).

Now, ResolvedExternalSurface contains just the information required
to rasterize the external surface, while the compositing information
is handled by adding the external surface as a regular tile. This
makes it possible to unify how external surfaces are drawn, via the
common draw_tile_list method.

Differential Revision: https://phabricator.services.mozilla.com/D65269

--HG--
extra : moz-landing-system : lando
2020-03-05 20:45:15 +00:00
Sebastian Zartner 5ebb2c8967 Bug 1432250 - Output the input image for zero or negative radii for <feMorphology>. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D63958

--HG--
extra : moz-landing-system : lando
2020-02-27 19:20:23 +00:00
Kartikaya Gupta 8ffc35b01e Bug 1619393 - Increase fuzz by one to allow reftest to pass on AppVeyor. r=Bert
Differential Revision: https://phabricator.services.mozilla.com/D65513

--HG--
extra : moz-landing-system : lando
2020-03-05 18:23:38 +00:00
Jonathan Kew e1a0b48294 Bug 1620125 - Don't assume mVerticalMetrics has necessarily been initialized before DrawOneGlyph is called. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D65567

--HG--
extra : moz-landing-system : lando
2020-03-05 18:07:17 +00:00
Kartikaya Gupta 3fe82f3ca4 Bug 1233272 - Suppress event retargeting for mouse events generated via longpress. r=snorp
Instead of just special-casing the eContextMenu and eMouseLongTap events in
PositionedEventTargeting, this adds a mechanism to suppress retargeting for
any events dispatched from a particular code block. This allows us to also
suppress retargeting the mousemove that precedes the eContextMenu, while still
retargeting any other mousemove events (e.g. the one that precedes a click).
Doing this is important because if the mousemove is retargeted, it can trigger
the hover pseudoclass CSS on an element when that element is not actually
going to be activated at all, and can be confusing to the user.

Depends on D65211

Differential Revision: https://phabricator.services.mozilla.com/D65212

--HG--
extra : moz-landing-system : lando
2020-03-04 20:24:55 +00:00
Martin Stransky 3e8ae1409e Bug 1619270 [Wayland] Check we're really on Wayland and not on headless, r=jhorak
Differential Revision: https://phabricator.services.mozilla.com/D65489

--HG--
extra : moz-landing-system : lando
2020-03-05 10:20:48 +00:00
Tim Nguyen ef0ca57a42 Bug 1616255 - Handle start and end offsets in conic-gradient WR shader. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D65391

--HG--
extra : moz-landing-system : lando
2020-03-05 00:03:05 +00:00
Bert Peers 5f77fad7a4 Bug 1619393 - Reftest improvements for fuzzy tests r=gw
Add support for a `fuzzy-range` keyword in reftest.list.
It is similar to `fuzzy` but it allows multiple pairs of
`max_difference, num_differences` numbers that introduce
multiple buckets of allowed differences.

For example, `fuzzy-range(5,100,20,10)` allows at most
100 pixels with a difference of at most 5, _plus_ an extra
10 pixels at most that have a difference more than 5 but
less than or equal to 20.
The total number of differing pixels allowed is thus 110,
but only if 100 of those differ by <= 5 and the remaining
10 by <= 20.
110 pixels with a difference <= 5 will still fail.
This is intentional to encourage tighter bounds in tests
where many pixels are slightly off and a few outliers are
off by a lot.

The number of parameters is arbitrary; longer lists can
get confusing so this change also introduces optional
support for writing `<=` in front of the max difference
and `*` in front of the max pixel count, eg.
`fuzzy-range(<=5,*100,<=20,*10)` (no spaces).

Any pixels that exceed the highest maximum will fail the
test, similar to `fuzzy`.

Steps tested:
1. the same tests fail in exactly the same way before and after;
2. reordered the `fuzzy` statements for raster_root_A/B/C to no longer
   be sorted by max difference, and verified that the tests pass/fail
   the same way;
   (then sort them again which is easier to understand);
3. tests using the new feature still fail when the ref no longer matches
   (deliberately broke the _ref version and verified test failed);

Differential Revision: https://phabricator.services.mozilla.com/D65247

--HG--
extra : moz-landing-system : lando
2020-03-04 23:07:29 +00:00
Cameron McCormack a1ff54a54f Bug 1607356 - Move OTS sanitization to background thread. r=KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D65267

--HG--
extra : moz-landing-system : lando
2020-03-04 18:25:08 +00:00
Jeff Muizelaar c7fe1a2838 Bug 1619978. Crash sometimes if we fail to get the SystemFontCollection. r=jfkthame
WebRender won't support GDI fonts so we need to figure out what to do
with the users that are currently using them. This should help give us
better diagnostics on what's going wrong.

gfxCriticalError only crashes on Nightly and Beta builds

Differential Revision: https://phabricator.services.mozilla.com/D65342

--HG--
extra : moz-landing-system : lando
2020-03-04 17:47:23 +00:00
Simon Giesecke 487e61434c Bug 1613985 - Fix bustage on PathHelpers.h. r=fix CLOSED TREE
--HG--
extra : amend_source : 8f3038ca698c65ee17a9780172d6b2a8fb699c50
2020-03-04 18:36:20 +02:00
Simon Giesecke dce1e48caf Bug 1613985 - Use default for equivalent-to-default constructors/destructors in gfx. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D65288

--HG--
extra : moz-landing-system : lando
2020-03-04 15:39:20 +00:00
Makoto Kato 6279258383 Bug 1503656 - Part 7. Notify of safe area insets changed. r=smaug
Since safe area insets uses on content, we need send it from chrome process to
content process.

SafeAreaInsetsChanged will be called per window position/size change (Next
patch is Android implementation for it), we have to calculate safe area insets
on widget/window per change.

Current implementation is that this value is top level document only like Blink
since https://github.com/w3c/csswg-drafts/issues/4670 isn't resolved yet.

Differential Revision: https://phabricator.services.mozilla.com/D55084

--HG--
extra : moz-landing-system : lando
2020-03-04 08:16:31 +00:00
Csoregi Natalia aa5b814fee Backed out 6 changesets (bug 1503656) as per request. CLOSED TREE
Backed out changeset 27faa3b167a9 (bug 1503656)
Backed out changeset 7111f9b5ad06 (bug 1503656)
Backed out changeset 43fdc889beac (bug 1503656)
Backed out changeset 332ceea26151 (bug 1503656)
Backed out changeset f31efa4ea2ec (bug 1503656)
Backed out changeset 91b847efe591 (bug 1503656)
2020-03-04 10:07:42 +02:00
Makoto Kato 00949ff265 Bug 1503656 - Part 7. Notify of safe area insets changed. r=smaug
Since safe area insets uses on content, we need send it from chrome process to
content process.

SafeAreaInsetsChanged will be called per window position/size change (Next
patch is Android implementation for it), we have to calculate safe area insets
on widget/window per change.

Current implementation is that this value is top level document only like Blink
since https://github.com/w3c/csswg-drafts/issues/4670 isn't resolved yet.

Differential Revision: https://phabricator.services.mozilla.com/D55084

--HG--
extra : moz-landing-system : lando
2020-03-04 07:28:04 +00:00
Emilio Cobos Álvarez 46d1624d9d Bug 1619664 - Rename and don't null-check nsPresContext::GetTheme as it can't return null. r=dholbert
There were some callers in nsRangeFrame that were already not-null-checking.

All platforms have a native theme and should we add new ones they could use
nsBasicNativeTheme.

Differential Revision: https://phabricator.services.mozilla.com/D65169

--HG--
extra : moz-landing-system : lando
2020-03-04 01:58:30 +00:00
Emilio Cobos Álvarez 741c54ae79 Bug 1619664 - Decide which theme to use per document, not per-process. r=mstange,spohl
This allows testing much more easily.

There are some edge cases with native theme changes and such (ThemeChanged and
co assume there's only one theme per process). But I don't think they matter
much for our use cases.

Differential Revision: https://phabricator.services.mozilla.com/D65162

--HG--
extra : moz-landing-system : lando
2020-03-03 19:46:41 +00:00
Glenn Watson cf6ebbb053 Bug 1579235 - Part 10 - Fix incorrect skipping of composites. r=Bert
Ensure that the image keys and image generations for external
compositor surfaces are included in the composite descriptor,
which is used to determine if a composite is required or can
be skipped.

Differential Revision: https://phabricator.services.mozilla.com/D65216

--HG--
extra : moz-landing-system : lando
2020-03-03 23:32:51 +00:00
Jim Blandy 7db1aac145 Bug 1618319: Segregate intern::UpdateList insertions and removals. r=gw
Rather than treating webrender::intern::UpdateList as a sequence of operations,
each of which might be an insertion or a removal, and using a side table to
supply extra data for insertions, it's simpler to segregate insertions and
removals into two separate vectors. This avoids the need for an enum whose
discriminant needs to be checked within the loop, and allows a few loops that
are only looking for one kind of operation to skip over the others entirely.

Ultimately, there should be no change in the order in which operations occur. In
practice, the old UpdateList always held a contiguous run of insertions,
followed by a run of removals (removals are consumed by apply_updates directly
after being generated by end_frame_and_get_pending_updates).

Differential Revision: https://phabricator.services.mozilla.com/D64444

--HG--
extra : moz-landing-system : lando
2020-02-27 02:26:09 +00:00
Kartikaya Gupta 691e4ca68d Bug 1613260 - Increase allowed fuzz on new tests so they pass in AppVeyor CI. r=Bert
Differential Revision: https://phabricator.services.mozilla.com/D65164

--HG--
extra : moz-landing-system : lando
2020-03-03 18:03:22 +00:00
Kris Taeleman fd73d4c35e Bug 1616623 - Switching gfx telemetry to user lifetimes and removing last_seen r=chutten
Differential Revision: https://phabricator.services.mozilla.com/D63361

--HG--
extra : moz-landing-system : lando
2020-02-25 22:43:20 +00:00
Dzmitry Malyshau 1b1bc98a76 Bug 1614703 - WebGPU render pipeline creation r=jgilbert,webidl,baku
Differential Revision: https://phabricator.services.mozilla.com/D64833

--HG--
extra : moz-landing-system : lando
2020-03-03 16:37:02 +00:00
Mihai Alexandru Michis 1e6afc5e96 Backed out changeset f1c86e7d23cd (bug 1614703) for causing bustages in WebGPUParent.cpp
CLOSED TREE
2020-03-03 17:23:55 +02:00
Kartikaya Gupta d633586fcc Bug 1618545 - Delete obsolete/unused code relating to Fennec's experimental ui.zoomedview feature. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D65022

--HG--
extra : moz-landing-system : lando
2020-03-03 15:27:50 +00:00
Kartikaya Gupta 8bd863a615 Bug 1619340 - ifdef out the individual gtests failing on Android. r=botond
Instead of skipping entire files, ifdef out the individual tests that are
failing. This allows us to audit them one at a time to re-enable, while
preventing regressions in tests in those files that are already passing.

Differential Revision: https://phabricator.services.mozilla.com/D65024

--HG--
extra : moz-landing-system : lando
2020-03-03 15:21:03 +00:00
Dzmitry Malyshau 53a10a49a5 Bug 1614703 - WebGPU render pipeline creation r=jgilbert,webidl,baku
Differential Revision: https://phabricator.services.mozilla.com/D64833

--HG--
extra : moz-landing-system : lando
2020-03-03 15:08:24 +00:00
Andrew Osmond 5ee82cb26c Bug 1615394 - Add color management support to the BMP decoder. r=tnikkel
This patch adds support for color management in BMPs added in
BITMAPV4HEADER and BITMAPV5HEADER. While display of BMPs is relatively
rare this comes in handy when interacting with the Windows clipboard.

Differential Revision: https://phabricator.services.mozilla.com/D64880

--HG--
extra : moz-landing-system : lando
2020-03-03 14:16:00 +00:00