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

877 Коммитов

Автор SHA1 Сообщение Дата
Jonathan Watt 4c1b207664 Bug 1510116. Fix some unified build issues in layout code. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D13039

--HG--
extra : rebase_source : f0b6516484ed97ed52b92e04617f89e4ee8189ff
2018-11-12 22:20:52 +00:00
Kartikaya Gupta bc812d01bd Bug 1508811 - Guard against trying to create an oversized DrawTargetRecording with WebRender. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D12677

--HG--
extra : moz-landing-system : lando
2018-11-23 16:43:48 +00:00
Matt Woodrow 86298e2149 Bug 1458993 - Use correct bounds for WR solid color. r=miko
MozReview-Commit-ID: Gp5C4v8qJXI

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

--HG--
extra : moz-landing-system : lando
2018-11-22 22:15:34 +00:00
Margareta Eliza Balazs 876022232b Merge inbound to mozilla-central. a=merge 2018-11-22 11:21:21 +02:00
Hiroyuki Ikezoe f0cd943dd9 Bug 1508843 - Factor out common processes to send animations to the compositor for WebRender. r=birtles
Depends on D12483

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

--HG--
extra : moz-landing-system : lando
2018-11-22 03:57:21 +00:00
Hiroyuki Ikezoe 377e2fc797 Bug 1508843 - Make boolean arguments for AddAnimationsForProperty enums. r=birtles
Differential Revision: https://phabricator.services.mozilla.com/D12483

--HG--
extra : moz-landing-system : lando
2018-11-22 03:57:19 +00:00
Jeff Muizelaar 5624b1e36e Bug 1507021. Use SnappedRectangle in more places. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D11840

--HG--
extra : moz-landing-system : lando
2018-11-19 23:03:32 +00:00
Kristen Wright f22175b197 Bug 1460439 - Conversion from NS_STYLE_BORDER_STYLE_* macro to StyleBorderStyle::* enum class r=emilio
Converted NS_STYLE_BORDER_STYLE_* consts to enum class. Updated corresponding values to enum class. reduced BCCornerInfo struct values to fit StyleBorderStyle values inside struct. Added defaults to switches that do not fully cover all instances of StyleBorderStyle.
2018-11-07 11:56:17 -08:00
Randell Jesup 3a05a3fb0f Bug 1298381: Implement TimeToFirstContentfulPaint behind a pref r=mattwoodrow,smaug 2018-10-18 16:16:45 -04:00
Dzmitry Malyshau aa76de2aae Bug 1503447 - Remove Nothing() semantic from ASR overrides r=kats
Previously, the ASR overrides contained Maybe<ClipId>, where Nothing() corresponded to taking the top of the clip/scroll stack instead of overriding. This change removes the associated complexity by ensuring that we always provide the ClipId.

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

--HG--
extra : moz-landing-system : lando
2018-11-14 14:15:16 +00:00
Hiroyuki Ikezoe e0aa8f4fcb Bug 1504929 - Break RestyleManager::GetAnimationGenerationForFrame into EffectSet::GetEffect and EffectSet::GetAnimationGeneration in AddAnimationsForProperty. r=birtles,sotaro
Since we use the EffectSet later in the same function.

Depends on D11599

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

--HG--
extra : moz-landing-system : lando
2018-11-13 10:18:23 +00:00
Hiroyuki Ikezoe 163ee505df Bug 1504929 - Avoid hashmap lookups in nsLayoutUtils::HasEffectiveAnimation and EffectCompositor::FindAnimationsForCompositor. r=birtles
Depends on D11427

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

--HG--
extra : moz-landing-system : lando
2018-11-13 10:17:44 +00:00
Miko Mynttinen e2e8b3d221 Bug 1504233 - Clip hit test info items properly r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D11038

--HG--
extra : moz-landing-system : lando
2018-11-12 01:36:59 +00:00
Bogdan Tara 388d7c8b5a Merge inbound to mozilla-central. a=merge 2018-11-08 20:48:31 +02:00
Emilio Cobos Álvarez f247168544 Bug 1505645 - Remove unused outparam from nsStyleTransformMatrix. r=boris
dummy bool is dummy.

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

--HG--
extra : moz-landing-system : lando
2018-11-08 02:25:28 +00:00
Emilio Cobos Álvarez b3a5d43536 Bug 1505645 - Remove other now useless old style system code. r=hiro
We'd better not be hitting those code paths already :-)

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

--HG--
extra : moz-landing-system : lando
2018-11-08 02:10:58 +00:00
Botond Ballo 074e717745 Bug 1477847 - Do not layerize mask items if we are inside a BasicLayerManager already. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D10414

--HG--
extra : moz-landing-system : lando
2018-11-07 18:51:00 +00:00
Nicolas Silva 1b186dddd4 Bug 1485512 - Try to express SVG filters as CSS filters when possible. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D8085

--HG--
extra : source : 28104a88b5855f21395f60192ab3f86325931915
extra : intermediate-source : 4a9ee25e545696b17ba09e2b7c9f702ab3d0efc1
2018-11-02 19:01:14 +01:00
Nazım Can Altınova f967885c60 Bug 1417976 - Part 2: Include DocShell IDs to marker payloads r=mstange
MozReview-Commit-ID: AML1ESUnFlu

Depends on D4914

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

--HG--
extra : moz-landing-system : lando
2018-11-06 21:45:50 +00:00
shindli 7c0a5e2aef Merge inbound to mozilla-central. a=merge 2018-11-03 11:40:50 +02:00
Noemi Erli e8db1dcf1f Backed out 3 changesets (bug 1417976) for causing devtools failures in builds/worker/workspace/build/src/tools/profiler/core/platform.cpp
Backed out changeset e70a24d50f20 (bug 1417976)
Backed out changeset 01ca16ef0b25 (bug 1417976)
Backed out changeset ede2fbe20d14 (bug 1417976)
2018-11-03 01:40:27 +02:00
Emilio Cobos Álvarez c52a218234 Bug 1504078 - Use references in the shapes code. r=bradwerth,TYLin
It doesn't make much sense to return const UniquePtr<Foo>& for something that
can't be null, it's just confusing.

Also make more stuff actually const.

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

--HG--
extra : moz-landing-system : lando
2018-11-02 18:19:06 +00:00
Nazım Can Altınova ed3240c681 Bug 1417976 - Part 2: Include DocShell IDs to marker payloads r=mstange
MozReview-Commit-ID: AML1ESUnFlu

Depends on D4914

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

--HG--
extra : moz-landing-system : lando
2018-11-02 20:26:48 +00:00
Margareta Eliza Balazs df311518fe Backed out 3 changesets (bug 1417976) for bustages in /builds/worker/workspace/build/src/obj-firefox/dist/include/GeckoProfiler.h CLOSED TREE
Backed out changeset 908f30faf4b6 (bug 1417976)
Backed out changeset 44ae0b8569b2 (bug 1417976)
Backed out changeset 801cdde1f597 (bug 1417976)
2018-11-02 18:42:21 +02:00
Nazım Can Altınova 8432e48060 Bug 1417976 - Part 2: Include DocShell IDs to marker payloads r=mstange
MozReview-Commit-ID: AML1ESUnFlu

Depends on D4914

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

--HG--
extra : moz-landing-system : lando
2018-11-02 16:17:54 +00:00
Ryan Hunt 2226bcc8a3 Bug 1504220 - Move ScrollableLayerGuid, ViewID, ZoomConstraints from FrameMetrics.h r=botond
This commit attempts to lower the pain of modifying FrameMetrics.h.

It looks like most includes really only want ViewID or
ScrollableLayerGuid, so this commit factors them out into a separate
header. In the process FrameMetrics::ViewID is changed to
ScrollableLayerGuid::ViewID, which personally seems like a better
place for it now that we have RepaintRequest. Unfortunately that
requires a lot of places to be updated.

After this commit there are still a couple of major places that
FrameMetrics is included.
 * nsDisplayList.h
 * nsIScrollableFrame.h
 * Layers.h

Those are going to be more tricky or impossible to fix so they're
not in this commit.

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

--HG--
rename : gfx/layers/FrameMetrics.h => gfx/layers/ScrollableLayerGuid.h
rename : gfx/layers/FrameMetrics.h => gfx/layers/ZoomConstraints.h
extra : rebase_source : 29ac79f91460a181bf7437af5c371207e22858e2
extra : source : c2e70e531075493fc6e374dcec862827f0bc6e77
2018-11-01 15:15:46 -05:00
Miko Mynttinen 5a4357d7c9 Bug 1503046 - Part 2: Introduce HitTestInfo and nsDisplayHitTestInfoItem, and make container items and nsDisplayCompositorHitTestInfo use them r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D10131

--HG--
extra : moz-landing-system : lando
2018-11-02 02:19:03 +00:00
Kartikaya Gupta 1523c9bf61 Bug 1490393 - Accumulate the deferred transform down the StackingContextHelper chain if the ASR matches. r=mstange
The implementation of deferred transforms did not handle the case where
we ended up deferring multiple transform items before encountering the
APZ-relevant display item. In this case we need to somehow accumulate
all the deferred transforms. This patch accomplishes that, and includes
a mochitest that exercises the relevant behaviour.

Depends on D8109

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

--HG--
extra : moz-landing-system : lando
2018-11-01 21:14:31 +00:00
Kartikaya Gupta c277149ab9 Bug 1501062 - Set the visible region on scrollthumb WebRenderLayerScrollData items. r=botond
This field is used by APZ to implement the feature where the scrollbar snaps
back to the starting position if the mouse gets too far away.
2018-10-29 15:40:09 -04:00
Boris Chiou 04b273259e Bug 1496619 - part 6: Generate StyleTimingFunction and drop ns_timing_function.rs r=emilio,birtles
First, we generate StyleComputedTimingFunction by cbindgen from Rust, and use
it in nsTimingFunction, so we could copy it directly without handling
the different memory layout. However, we have to rewrite the
nsTimingFunction and mozilla::ComputedTimingFunction for this.

Second, the rust-bindgen seems cannot generate the correct generic members
from complex C++ templates, especially for the nested template struct,
(https://github.com/rust-lang-nursery/rust-bindgen/issues/1429)
So we have to hide StyleTimingFunction to avoid the compilation errors.

Depends on D9312

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

--HG--
extra : moz-landing-system : lando
2018-10-26 18:03:35 +00:00
Boris Chiou adff31eff9 Bug 1496619 - Part 1: Drop frames() timing function r=birtles
frames() timing function was removed from the spec, so we drop it.
Besides, some devtool tests are removed because they use frame(). I will
add them back by using new step function later.

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

--HG--
extra : moz-landing-system : lando
2018-10-26 18:03:24 +00:00
Ryan Hunt 1601a8bb80 Bug 1453425 - Add relative scroll offset updates using nsGkAtoms::relative. r=botond
This commit adds a scroll origin, nsGkAtoms::relative, which can be used to
mark main thread scrolling that can be combined with a concurrent APZ scroll.

The behavior of this is controlled by a pref, apz.relative-update. This pref
is initially activated and is intended as an aid to narrowing down causes
of regressions for users in bug reports.

Relative scroll updates work by tracking the last sent or accepted APZ
scroll offset. This is sent along with every FrameMetrics. Additionally,
a flag is added to FrameMetrics, mIsRelative, indicating whether the
scroll offset can be combined with a potential APZ scroll. When this
flag is set, AsyncPanZoomController will apply the delta between the sent
base scroll offset, and sent new scroll offset.

This flag is controlled by the last scroll origin on nsGfxScrollFrame. The
new origin, `relative`, is marked as being able to clobber APZ updates,
but can only be set if all scrolls since the last repaint request or
layers transaction have been relative.

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

--HG--
extra : rebase_source : 51351a84c9cda228a0975e22eda3fd3bd8d261c4
extra : histedit_source : 4b564c19b16fe2bd26adc671b62b7cb6106e8163
2018-10-09 23:24:28 -05:00
Botond Ballo dc9473c8e5 Bug 1493976 - Define OutOfFlowDisplayData::ComputeVisibleRectForFrame() out of line. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D9442

--HG--
extra : moz-landing-system : lando
2018-10-24 19:19:06 +00:00
Emilio Cobos Álvarez 8e5db71984 Bug 1501125 - Use WR clips instead of a mask as well for circle() and ellipse() shapes. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D9463
2018-10-24 00:43:26 +02:00
Emilio Cobos Álvarez 6c70244466 Bug 1501122 - Handle opacity with WebRender instead of generating a mask if we have a simple clip. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D9458
2018-10-24 00:38:33 +02:00
Kartikaya Gupta 1c01a94201 Bug 1469403 - Set a flag on the DL builder to indicate if the docshell is active. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D9141

--HG--
extra : moz-landing-system : lando
2018-10-22 23:41:47 +00:00
Emilio Cobos Álvarez d62a793992 Bug 1500575 - Map inset clip paths to WR complex clip regions. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D9412

--HG--
extra : moz-landing-system : lando
2018-10-23 00:10:00 +00:00
Kartikaya Gupta a971a37e5f Bug 1485834 - Allow recomputing the cumulative resolution in ComputeScrollMetadata. r=botond
We need to correctly populate the cumulative resolution field in the
ScrollMetadata in order to support zooming. Without this, the cumulative
resolution doesn't include the presShell resolution, and that results in
APZ getting into an inconsistent state.

Currently, the cumulative resolution is populated from the
ContainerLayerParameters object's scale, but in the case of WebRender,
we call ComputeScrollMetadata with an empty ContainerLayerParameters
since don't actually do layer building or rasterization in Gecko.
This patch makes this more explicit by changing the argument to a
Maybe<ContainerLayerParameters> and passing Nothing() from the WebRender
call sites.

In this scenario, we just use the cumulative presShell resolution as
the cumulative resolution, which should be correct for WebRender as
we won't have an "extra" CSS-derived resolution applied on the Gecko
side.

Depends on D9120

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

--HG--
extra : moz-landing-system : lando
2018-10-19 14:24:50 +00:00
Miko Mynttinen 7363138acc Bug 1482403 - Always create nsDisplayOpacity for filters and masks when there is visual opacity r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D7183

--HG--
extra : moz-landing-system : lando
2018-10-14 19:27:15 +00:00
Miko Mynttinen 0212f3fee3 Bug 1494124 - Allow only one rect per frame in WeakFrameRegion r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D7303

--HG--
extra : moz-landing-system : lando
2018-10-02 11:40:16 +00:00
Jonathan Watt 6d7998277a Bug 1495215. Separate out the SVGObserverUtils mask handling from EffectProperties. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D7242

--HG--
extra : rebase_source : 00c2c87e8fc6fc3ae874139b9a9b8b6b1cb4d877
2018-09-19 15:54:27 +01:00
Jonathan Watt 85d30e0f2c Bug 1495034. Separate out the SVGObserverUtils clip path handling from EffectProperties. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D7194

--HG--
extra : rebase_source : d8137eb0f1b91fe926d04bfb3d7197c11d6402e7
extra : amend_source : c0faf32401c08471c6acb52b5eb36571ceaeb951
2018-09-05 18:12:44 +01:00
Jonathan Watt 5c1dd39583 Bug 1494285 p3. Rename nsDisplayFilter to nsDisplayFilters. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D7008

--HG--
extra : rebase_source : 89a1bd3e34666a09bd9d9d26329f183ebc28a1c3
extra : amend_source : 71c0eacf545383c23533ae05c46561159567d667
extra : histedit_source : a1047949377d690bba5cfcf86b16cb2be0610af0
2018-08-30 13:15:47 +01:00
Jonathan Watt 0133d476ce Bug 1494285 p2. Rename nsDisplayMask to nsDisplayMasksAndClipPaths. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D7007

--HG--
extra : rebase_source : de16f2d9fe5a0610af12b64603757f4fd8d6eee6
extra : amend_source : 1c932942463586d1dfe09bbf31569adc51efa220
extra : histedit_source : 5a6591e23a84382f1add26b9e81f06b8a2f3205a
2018-08-30 10:51:24 +01:00
Jonathan Watt 61cd895194 Bug 1494285 p1. Rename nsDisplaySVGEffects to nsDisplayEffectsBase. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D7002

--HG--
extra : rebase_source : f0b19827de42cbbab9d802bfd566fbb9fc8103e9
extra : amend_source : 37638ca71c6ce5d1cb4f697b362137bc93cfffa4
extra : histedit_source : c7f2b666e3666921804563d51e3de35af9294930
2018-08-30 09:36:09 +01:00
Jonathan Watt 0d889dc646 Bug 1494355. Separate out the SVGObserverUtils filter handling from EffectProperties. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D6930

--HG--
extra : rebase_source : cb3c301ae0fee233ae881c384499340c678e1874
2018-08-29 19:11:43 +01:00
Daniel Zielas 21d87f2b40 Bug 1420996 - Replace CompositorHitTestInfo with an EnumSet. r=botond
--HG--
extra : rebase_source : b62faecd4eb7a988e62a1f41eca6481f90e57c02
extra : histedit_source : 417426b84d2a269d84980df972073e67c2643cd3
2018-09-25 20:47:55 +02:00
Jeff Muizelaar 8d0131224b Bug 1490033. Use IsStyleMaybeAnimated to set up snapping surface transform. r=mstange
This catches all animations instead of those that only run on the compositor.

Differential Revision: https://phabricator.services.mozilla.com/D6543
2018-09-21 23:28:34 -04:00
Jeff Muizelaar 90fbfc8d8a Bug 1447880. Paint nsDisplayMasks directly instead of using a BasicLayerManager. r=mstange
This allows us to invalidate individual items inside of the mask instead of
treating the mask and it's children as a single item.

Differential Revision: https://phabricator.services.mozilla.com/D6224
2018-09-21 18:50:23 -04:00
Jeff Muizelaar 805679d7c9 Bug 1447880. Add nsDisplayMask::IsValidMask. r=mstange
This pulls out a nsDisplayMask::IsValidMask that can be used by
blob invalidation to ensure that the mask is drawable.

Differential Revision: https://phabricator.services.mozilla.com/D6502
2018-09-21 18:50:15 -04:00