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

34742 Коммитов

Автор SHA1 Сообщение Дата
Kris Taeleman 2969981f24 Bug 1571976 - Adding profiling for rasterized blob pixels. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D45559

--HG--
extra : moz-landing-system : lando
2019-09-11 23:36:23 +00:00
Hiroyuki Ikezoe dbf5343dd1 Bug 1581113 - Set dom.animations-api.getAnimations.enabled pref. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D45897

--HG--
extra : moz-landing-system : lando
2019-09-13 21:46:49 +00:00
Ciure Andrei a4046ec458 Backed out 6 changesets (bug 1574493) for causing nested-sticky-2.html to perma fail CLOSED TREE
Backed out changeset 358746636448 (bug 1574493)
Backed out changeset 34aef5498237 (bug 1574493)
Backed out changeset 1f88e2031c76 (bug 1574493)
Backed out changeset 07c588b5ea10 (bug 1574493)
Backed out changeset 0685e8d3510e (bug 1574493)
Backed out changeset 15d4390220c4 (bug 1574493)
2019-09-13 19:26:50 +03:00
Lee Salzman b99493d327 Bug 1576077 - make ScaledFontDWrite remember if it needs synthetic bold. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D45721

--HG--
extra : moz-landing-system : lando
2019-09-13 15:47:32 +00:00
Jonathan Kew 4118072885 Bug 1578154 - Ensure all device contexts flush their nsFontCache when the platform font list is reinitialized. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D45432

--HG--
extra : moz-landing-system : lando
2019-09-13 14:49:36 +00:00
Andrew Osmond 35a0f13ba2 Bug 1574493 - Part 6. Add reftest annotations for newly failing/passing tests. r=jrmuizel,kvark
Differential Revision: https://phabricator.services.mozilla.com/D45539

--HG--
extra : moz-landing-system : lando
2019-09-13 14:03:28 +00:00
Andrew Osmond d34a1ebd32 Bug 1574493 - Part 5. Snap scroll offsets and pictures during frame building. r=kvark
The snapping during scene building is unable to take into account scroll
offsets. Since we have already snapped the primitive rects in the raster
space, we know that this can only result in a translation rather than a
size change, and thus is safe to do during frame building.

When we update the transform tree, we now snap the scroll offset in
device space to ensure that scroll offsets should primarily be integer
offsets and not have snapping implications.

The local rect of a picture is calculated during the first picture
traversel. It is composed of already snapped primitives, however the
picture itself may inflate itself, and thus is now snapped again as part
of inflation.

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

--HG--
extra : moz-landing-system : lando
2019-09-13 14:03:26 +00:00
Andrew Osmond b39a6837b4 Bug 1574493 - Part 4. Snap primitives during scene building. r=kvark
Now that rounding has been removed from Gecko, we need to start snapping
properly in WebRender. Snapping can change the size of a primitive, and
thus it is problematic to do any later than scene building due to the
GPU caching and sharing of data between clips and such that only differ
in their positioning.

This patch produces a snapping transform which allows any primitive to
snap using information known during scene building. This excludes
animated tranforms which are assumed to be the identity. This allows for
primitives that are marked as will-change: transform but given no
initial transform to render the same as primitives that are not. This
also excludes scroll positioning because that is not known until frame
building. A follow up patch will deal with that.

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

--HG--
extra : moz-landing-system : lando
2019-09-13 14:03:25 +00:00
Andrew Osmond 25866edb78 Bug 1574493 - Part 3. Stop rounding rects/clips during display list building. r=jrmuizel
Rounding in layout pixels is very close to snapping in raster pixels if
there are no transforms involved. This is why it worked most of the time
and fell flat in many edge cases. In future parts of this series, we
will trust scene building and frame building to do the heavy lifting for
snapping purposes.

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

--HG--
extra : moz-landing-system : lando
2019-09-13 14:03:23 +00:00
Andrew Osmond 554bdc1122 Bug 1574493 - Part 2. Remove snapping in frame building. r=kvark
This will be rewritten in a later patch in the series. The shaders will
be provided the correct information and will no longer need to concern
themselves with snapping.

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

--HG--
extra : moz-landing-system : lando
2019-09-13 14:03:15 +00:00
Andrew Osmond ef0483f724 Bug 1574493 - Part 1. Split out repeating and non-repeating images in the display list. r=jrmuizel
Repeating/background images may have extra parameters such the stretch
size and tile spacing, that non-repeating images do not require. By
splitting these apart, we can make it easier to infer what we should do
if snapping changes the size of an image primitive, in addition to
reducing the display list size for non-repeating images.

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

--HG--
extra : moz-landing-system : lando
2019-09-13 14:03:13 +00:00
Ciure Andrei 8c3feea58a Backed out 6 changesets (bug 1574493) for causing nested-sticky-1.html to perma fail CLOSED TREE
Backed out changeset fdc25a90b0ef (bug 1574493)
Backed out changeset 0ce3c48c1f79 (bug 1574493)
Backed out changeset 326b9f96614b (bug 1574493)
Backed out changeset b0817c0aee77 (bug 1574493)
Backed out changeset 70d99c264df9 (bug 1574493)
Backed out changeset e5217ab4b668 (bug 1574493)
2019-09-13 16:17:47 +03:00
Sylvestre Ledru 42c17aec0b Bug 1581065 - Ride along: Fix two typos in the doc r=andi
Differential Revision: https://phabricator.services.mozilla.com/D45818

--HG--
extra : moz-landing-system : lando
2019-09-13 11:32:01 +00:00
Andrew Osmond 4d96fe56c4 Bug 1574493 - Part 6. Add reftest annotations for newly failing/passing tests. r=jrmuizel,kvark
Differential Revision: https://phabricator.services.mozilla.com/D45539

--HG--
extra : moz-landing-system : lando
2019-09-13 10:48:37 +00:00
Andrew Osmond c80f443469 Bug 1574493 - Part 5. Snap scroll offsets and pictures during frame building. r=kvark
The snapping during scene building is unable to take into account scroll
offsets. Since we have already snapped the primitive rects in the raster
space, we know that this can only result in a translation rather than a
size change, and thus is safe to do during frame building.

When we update the transform tree, we now snap the scroll offset in
device space to ensure that scroll offsets should primarily be integer
offsets and not have snapping implications.

The local rect of a picture is calculated during the first picture
traversel. It is composed of already snapped primitives, however the
picture itself may inflate itself, and thus is now snapped again as part
of inflation.

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

--HG--
extra : moz-landing-system : lando
2019-09-13 10:48:35 +00:00
Andrew Osmond 3a0a1c5220 Bug 1574493 - Part 4. Snap primitives during scene building. r=kvark
Now that rounding has been removed from Gecko, we need to start snapping
properly in WebRender. Snapping can change the size of a primitive, and
thus it is problematic to do any later than scene building due to the
GPU caching and sharing of data between clips and such that only differ
in their positioning.

This patch produces a snapping transform which allows any primitive to
snap using information known during scene building. This excludes
animated tranforms which are assumed to be the identity. This allows for
primitives that are marked as will-change: transform but given no
initial transform to render the same as primitives that are not. This
also excludes scroll positioning because that is not known until frame
building. A follow up patch will deal with that.

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

--HG--
extra : moz-landing-system : lando
2019-09-13 10:48:33 +00:00
Andrew Osmond b2d4e121cb Bug 1574493 - Part 3. Stop rounding rects/clips during display list building. r=jrmuizel
Rounding in layout pixels is very close to snapping in raster pixels if
there are no transforms involved. This is why it worked most of the time
and fell flat in many edge cases. In future parts of this series, we
will trust scene building and frame building to do the heavy lifting for
snapping purposes.

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

--HG--
extra : moz-landing-system : lando
2019-09-13 10:48:31 +00:00
Andrew Osmond b124fe4b02 Bug 1574493 - Part 2. Remove snapping in frame building. r=kvark
This will be rewritten in a later patch in the series. The shaders will
be provided the correct information and will no longer need to concern
themselves with snapping.

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

--HG--
extra : moz-landing-system : lando
2019-09-13 10:48:24 +00:00
Andrew Osmond 25917edfc6 Bug 1574493 - Part 1. Split out repeating and non-repeating images in the display list. r=jrmuizel
Repeating/background images may have extra parameters such the stretch
size and tile spacing, that non-repeating images do not require. By
splitting these apart, we can make it easier to infer what we should do
if snapping changes the size of an image primitive, in addition to
reducing the display list size for non-repeating images.

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

--HG--
extra : moz-landing-system : lando
2019-09-13 10:48:22 +00:00
Andreea Pavel 730793a2ef Backed out 5 changesets (bug 1570081) for assertion failure at WebRenderCommandBuilder.cpp on a CLOSED TREE
Backed out changeset 8d4baf4d063a (bug 1570081)
Backed out changeset 14a4451b2781 (bug 1570081)
Backed out changeset ba19640abf33 (bug 1570081)
Backed out changeset 214c815015a8 (bug 1570081)
Backed out changeset 548e4395ee1a (bug 1570081)
2019-09-13 11:24:59 +03:00
Nicolas Silva 04ec40580d Bug 1570081 - Put the blob dirty rect in the same space as the drawing commands and visible rect. r=jrmuizel
Depends on D43222

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

--HG--
extra : moz-landing-system : lando
2019-09-12 15:59:58 +00:00
Nicolas Silva 563b86112a Bug 1570081 - Don't insert blob images with empty visible rects. r=jrmuizel
Depends on D41389

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

--HG--
extra : moz-landing-system : lando
2019-09-12 15:53:41 +00:00
Nicolas Silva ebc84206a7 Bug 1570081 - Wrench rawtest changes. r=jrmuizel
Other patches in this series change blob-related coordinate systems which
means rawtests have to be adapted since the previous test parameters will
now give different results.
In addition, the new model for specifying blobs mtaches the visible area
to the layout rectangle of the primitive, which means there is no more
decorrelation between the item and the portion of it that needs rendering,
so one of the test is adapted accordingly.

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

--HG--
extra : moz-landing-system : lando
2019-09-12 15:56:16 +00:00
Nicolas Silva 3bfb23feb3 Bug 1570081 - Support changing the blob image visible rect in WebRender. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D39911

--HG--
extra : moz-landing-system : lando
2019-09-12 15:54:50 +00:00
Bastien Orivel d843925e5f Bug 1580908 - Part 7: Update serde_bytes to 0.11. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D45716

--HG--
extra : moz-landing-system : lando
2019-09-12 21:46:21 +00:00
Bastien Orivel 081b88925b Bug 1580908 - Part 1: Update uuid to 0.7 to dedupe it. r=froydnj
This also removes a dependency on rand 0.4 getting it closer to being
able to remove that.

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

--HG--
extra : moz-landing-system : lando
2019-09-12 21:45:58 +00:00
Glenn Watson 9b39510831 Bug 1580827 - Fix video stuttering / freezing with WR dirty rects. r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D45734

--HG--
extra : moz-landing-system : lando
2019-09-12 20:19:54 +00:00
Andrew Osmond 388269850b Bug 1580896 - Make wrench's --chase argument support primitive IDs. r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D45703

--HG--
extra : moz-landing-system : lando
2019-09-12 20:17:16 +00:00
Boris Zbarsky 1128b8dee8 Bug 1578173 part 6. Remove remaining uses of [Constructor] from bindings. r=edgar
Differential Revision: https://phabricator.services.mozilla.com/D45394

--HG--
extra : moz-landing-system : lando
2019-09-12 11:01:17 +00:00
Glenn Watson c873e19b84 Bug 1580677 - Update plane-split dependency to 0.15.0 r=nical
Differential Revision: https://phabricator.services.mozilla.com/D45628

--HG--
extra : moz-landing-system : lando
2019-09-12 12:46:41 +00:00
Gurzau Raul fe4bb6d539 Backed out 6 changesets (bug 1574493) for wrench failures at stacking-context-clip.yaml on a CLOSED TREE.
Backed out changeset 8a8736ac4e25 (bug 1574493)
Backed out changeset 4a3294e88823 (bug 1574493)
Backed out changeset 0c26ecdc1ddc (bug 1574493)
Backed out changeset 11257f7b3ad3 (bug 1574493)
Backed out changeset dcedc286ad9d (bug 1574493)
Backed out changeset 87f216e0753d (bug 1574493)
2019-09-12 18:34:07 +03:00
Andrew Osmond ff567c5ddb Bug 1574493 - Part 6. Add reftest annotations for newly failing/passing tests. r=jrmuizel,kvark
Differential Revision: https://phabricator.services.mozilla.com/D45539

--HG--
extra : moz-landing-system : lando
2019-09-12 12:42:52 +00:00
Andrew Osmond fbb941e1dd Bug 1574493 - Part 5. Snap scroll offsets and pictures during frame building. r=kvark
The snapping during scene building is unable to take into account scroll
offsets. Since we have already snapped the primitive rects in the raster
space, we know that this can only result in a translation rather than a
size change, and thus is safe to do during frame building.

When we update the transform tree, we now snap the scroll offset in
device space to ensure that scroll offsets should primarily be integer
offsets and not have snapping implications.

The local rect of a picture is calculated during the first picture
traversel. It is composed of already snapped primitives, however the
picture itself may inflate itself, and thus is now snapped again as part
of inflation.

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

--HG--
extra : moz-landing-system : lando
2019-09-12 12:42:50 +00:00
Andrew Osmond fba00abf09 Bug 1574493 - Part 4. Snap primitives during scene building. r=kvark
Now that rounding has been removed from Gecko, we need to start snapping
properly in WebRender. Snapping can change the size of a primitive, and
thus it is problematic to do any later than scene building due to the
GPU caching and sharing of data between clips and such that only differ
in their positioning.

This patch produces a snapping transform which allows any primitive to
snap using information known during scene building. This excludes
animated tranforms which are assumed to be the identity. This allows for
primitives that are marked as will-change: transform but given no
initial transform to render the same as primitives that are not. This
also excludes scroll positioning because that is not known until frame
building. A follow up patch will deal with that.

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

--HG--
extra : moz-landing-system : lando
2019-09-12 12:42:48 +00:00
Andrew Osmond 320cbbf828 Bug 1574493 - Part 3. Stop rounding rects/clips during display list building. r=jrmuizel
Rounding in layout pixels is very close to snapping in raster pixels if
there are no transforms involved. This is why it worked most of the time
and fell flat in many edge cases. In future parts of this series, we
will trust scene building and frame building to do the heavy lifting for
snapping purposes.

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

--HG--
extra : moz-landing-system : lando
2019-09-12 12:42:41 +00:00
Andrew Osmond 571a0f49e1 Bug 1574493 - Part 2. Remove snapping in frame building. r=kvark
This will be rewritten in a later patch in the series. The shaders will
be provided the correct information and will no longer need to concern
themselves with snapping.

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

--HG--
extra : moz-landing-system : lando
2019-09-12 12:42:39 +00:00
Andrew Osmond 7cda552aeb Bug 1574493 - Part 1. Split out repeating and non-repeating images in the display list. r=jrmuizel
Repeating/background images may have extra parameters such the stretch
size and tile spacing, that non-repeating images do not require. By
splitting these apart, we can make it easier to infer what we should do
if snapping changes the size of an image primitive, in addition to
reducing the display list size for non-repeating images.

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

--HG--
extra : moz-landing-system : lando
2019-09-12 12:42:37 +00:00
Nathan Froyd 7c06e89288 Bug 1577583 - use __builtin_popcount in cairo for clang; r=lsalzman
`register` isn't allowed in C++17, but cairo is too old to care.
Instead of turning off the warning, just use the `__builtin_popcount`
path for clang.  This path also applies to clang-cl.

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

--HG--
extra : moz-landing-system : lando
2019-09-12 13:06:01 +00:00
Nicolas Silva 40a8a07d2f Bug 1570081 - Fix a number of issues with the tile decomposition code. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D44689

--HG--
extra : moz-landing-system : lando
2019-09-12 11:49:29 +00:00
Hiroyuki Ikezoe 0eeb21e17f Bug 1541705 - Introduce nsLayoutUtils::FrameIsScrolledOutOfViewInCrossProcess and use it for the check whether animating element is scrolled out of view or not. r=botond,boris
Differential Revision: https://phabricator.services.mozilla.com/D44421

--HG--
extra : moz-landing-system : lando
2019-09-12 08:08:57 +00:00
Hiroyuki Ikezoe f61192f0f0 Bug 1541705 - Notify areas of out-of-process subframes from the compositor to the corresponding process. r=botond
Note that the areas are clipped out by all ancestor scroll ports and
their coordinate systems are the screen coordinate.  So that we can tell
arbitrary elements in out-of-process iframes are scrolled out or not with
this area and the transform matrix of the iframe on screen coodinate.

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

--HG--
extra : moz-landing-system : lando
2019-09-12 08:08:45 +00:00
Hiroyuki Ikezoe 5221523b46 Bug 1541705 - Introduce remote document rect. r=botond
The rect will be used for calculating the result of the composition of the
remote display item on the compositor.

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

--HG--
extra : moz-landing-system : lando
2019-09-12 08:08:32 +00:00
Kris Taeleman 553a42bb5e Bug 1571977 - Add wrench test for textureRect. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D44925

--HG--
extra : moz-landing-system : lando
2019-09-11 19:58:02 +00:00
Glenn Watson dd41a93180 Bug 1580063 - Track dirty rects in WR picture cache tiles, and use them to reduce GPU work. r=nical
This patch adds a simple quadtree structure to each picture cache
tile. This tree is used to track dirty regions of each tile. By
using a tree that can split / merge nodes, the CPU overhead of
tracking dirty areas is minimized, by only splitting nodes where
content is regularly changing.

For now, this patch makes use of the dirty rects to set a single
scissor rect when rendering picture cache tiles. This results in
a significant performance improvement (due to fewer pixels being
drawn) on many pages. In future, the dirty rects will also be
exposed at the API level, allowing clients to leverage partial
present APIs for power saving purposes.

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

--HG--
extra : moz-landing-system : lando
2019-09-11 13:20:08 +00:00
Jeff Muizelaar b8ad0be101 Bug 1580543. Update to VS 2017 for WebRender appveyor. r=kvark
This should hopefully fix WebRender CI.

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

--HG--
extra : moz-landing-system : lando
2019-09-11 17:30:02 +00:00
Steven Michaud a57ff23303 Bug 1201401 - Work around a crash in CVCGDisplayLink::getDisplayTimes. r=spohl
Differential Revision: https://phabricator.services.mozilla.com/D45426

--HG--
extra : moz-landing-system : lando
2019-09-11 16:49:45 +00:00
Jonathan Kew 393c038cf9 Bug 1580352 - Avoid potential undefined behavior (left-shifting a negative integer) in pixman. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D45512

--HG--
extra : moz-landing-system : lando
2019-09-11 12:22:39 +00:00
Andrew Osmond 90491197ac Bug 1568616 - Include document's scratch buffer in WebRender captures. r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D45188

--HG--
extra : moz-landing-system : lando
2019-09-10 02:34:05 +00:00
Jonathan Kew aaa84ab1a4 Bug 1548813 - Ensure cached mReplacementCharFallbackFamily is cleared if the font list is reinitialized. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D45347

--HG--
extra : moz-landing-system : lando
2019-09-10 14:19:04 +00:00
Jeff Muizelaar ecc722c789 Bug 1568227. Change to using the visual rect for the blob bounds. r=nical
This also makes sure that we invalidate for any visible rect bounds changes.
This makes more sense even if it's more conservative.

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

--HG--
extra : moz-landing-system : lando
2019-09-10 17:48:43 +00:00