Commit Graph

794 Commits

Author SHA1 Message Date
Kartikaya Gupta
8aa79d54f2 Bug 1384616 - Save APZ-relevant data from fixed-pos items in the WR scroll data for layers-free transactions. r=jrmuizel
MozReview-Commit-ID: HAFnrCVM9pZ
2017-07-31 15:27:29 -04:00
Louis Chang
3e447440a4 Bug 1319407 - Apply clip-path to each frame when box-decoration-break is clone. r=cjku,heycam
MozReview-Commit-ID: E7IR49MzkWm
2017-07-24 11:14:47 +08:00
Kartikaya Gupta
4ff424cc8f Bug 1382682 - Move ViewIDForASR into nsLayoutUtils for reuse. r=mstange
MozReview-Commit-ID: IcYqDO1D2SB
2017-07-20 12:33:09 -04:00
Kris Maglione
81578b8f6b Bug 1379508: Part 1 - Apply the correct client offsets to remote frameloaders in popup widgets. r=kats
On-screen coordinates for points in remote frameloads are calculated relative
to the screen origin of the top-level window, while event coordinates are
calculated relative to the nearest widget. Since popups have their own widgets
separate from the top-level window, their native client offsets have no
particular relation to the origin of the top-level window, and we need to
manually calculate them relative to the origin of the top-level widget
instead.

MozReview-Commit-ID: EDyEyu37XuY
2017-07-13 15:31:55 -07:00
Mats Palmgren
2d39a227cf Bug 1377707 - Ensure that LogTestDataForPaint is not called at all when APZTestLoggingEnabled() is false. r=tn
MozReview-Commit-ID: 8z7eqBBsn0R
2017-07-05 02:04:15 +02:00
Kartikaya Gupta
2df4b399f1 Bug 1376782 - Replace gfxPoint with a typedef to PointDouble. r=jrmuizel
This also moves the WithinEpsilonOf function from gfxPoint into
PointTyped, and changes call sites that are using
gfxPoint::Transform(Matrix4x4) to use Matrix4x4::TransformPoint(Point)
instead, which should be equivalent.

MozReview-Commit-ID: 3Z0bsU41rQt
2017-06-28 11:42:23 -04:00
Carsten "Tomcat" Book
2d174eeab7 merge mozilla-inbound to mozilla-central a=merge 2017-06-28 13:23:29 +02:00
Emilio Cobos Álvarez
112c8be41c Bug 1375674: Constify and simplify nsLayoutUtils::{First,Last}ContinuationOrIBSplitSibling. r=heycam
MozReview-Commit-ID: phsCyamDum
2017-06-25 01:48:27 +02:00
Jonathan Watt
130a6eeb64 Bug 1374614 - Support SVG image context paint in XUL tree views (treecol etc.). r=dholbert
MozReview-Commit-ID: LltEP7gTCgq
2017-05-26 14:24:57 +01:00
Ryan Hunt
b5ae153509 Bug 1351783 part 7 - Create FocusState and FocusTarget types. r=kats,botond
This commit begins the work needed for tracking focus by creating two new classes,
FocusTarget and FocusState. FocusState is created and used by APZCTreeManager to
track the global focus information, while FocusTarget is created per layer tree and
sent to APZ with local focus information. Between the two we are able to figure out
what the correct scrollable layer is to use in response to a keyboard scroll.

See the comment in `FocusState.h` for more details on the architecture and things
needed in future patches to complete this.

MozReview-Commit-ID: F75VZv3i9U2
2017-06-05 19:12:22 -05:00
Andi-Bogdan Postelnicu
1661b99af2 Bug 1374236 - Refactor MaybeSetupTransactionIdAllocator to avoid passing nsView*. r=mats
MozReview-Commit-ID: L3jedbOFdCP
2017-06-19 18:58:42 +03:00
Alexis Beingessner
3117218f13 Bug 1088760 - Remove nsRenderingContext, replacing all of its uses with gfxContext. r=jwatt,jrmuizel
MozReview-Commit-ID: K1WUIOnvazF
2017-06-13 11:00:10 -04:00
Sebastian Hengst
1b1d14e565 Backed out changeset 3d1ce85e6348 (bug 1088760) for bustage, at least on Android at layout/generic/nsPluginFrame.cpp:1612. r=backout 2017-06-13 00:30:03 +02:00
Alexis Beingessner
c6fbc5e17e Bug 1088760 - Remove nsRenderingContext, replacing all of its uses with gfxContext. r=jwatt,jrmuizel
MozReview-Commit-ID: K1WUIOnvazF
2017-06-12 17:32:48 -04:00
Brad Werth
5b390abfab Bug 1355675 Part 1: Add optional inCSSUnits parameters to GetTransformMatrix and GetTransformToAncestor. r=mattwoodrow
MozReview-Commit-ID: EA5uqeoUWE3
2017-05-30 09:05:52 -07:00
Ting-Yu Lin
b8f0384e83 Bug 1363640 Part 2 - Move the logic in SupportsServoStyleBackend() to UpdateStyleBackendType(). r=heycam
SupportsServoStyleBackend() uses methods in nsIDocument, so it would be more
straightforward to do that in UpdateStyleBackendType().

Also, call StyloEnabled() before doing other logic so that the warning about
"no docshell" won't show up when stylo is built but disabled.

MozReview-Commit-ID: 9ZUYatPBv1r
2017-05-09 18:33:57 -07:00
cku
0ca983ad6e Bug 1205475 - Part 2. Prevent multiple EffectSet property look up. r=mattwoodrow
Functions like BuildDisplayListForStackingContext or BuildDisplayListForChild look
up EffectSet property several times in callees, such as IsTransformed() or
HasOpacity(), which is time wasting.

We should look up EffectSet just once, and pass the found one to all callees
that need it.

MozReview-Commit-ID: GZywm2UcpU7
2017-05-17 15:13:12 +08:00
Botond Ballo
a4743bb472 Bug 1359868 - Move the ComputePartialPrerenderArea() helper to nsLayoutUtils so it can be reused. r=mstange
MozReview-Commit-ID: GVRBUfYwOFP
2017-05-01 19:59:08 -04:00
Mats Palmgren
78fce530a6 Bug 1349320 part 2 - [css-grid] Make nsLayoutUtils::IntrinsicForAxis take an optional percentage basis to use for resolving transferred percentages. r=dholbert
If the percentage basis isn't provided it will be calculated from the ancestors
as before.  Note that that algorithm is only valid if the frame's containing
block is the ancestor's content box, which isn't the case for grid items.
So grid layout MUST provide a percentage basis, although the given value may
be NS_UNCONSTRAINEDSIZE for either axis if the value is indefinite.

MozReview-Commit-ID: 7nvAuR43xfM
2017-05-11 02:33:14 +02:00
Kartikaya Gupta
4ad6851189 Back out bug 1359868 (2 csets) for possibly causing a checkerboarding regression. r=backout
MozReview-Commit-ID: KFOsj8If3sZ
2017-05-09 13:23:23 -04:00
Kartikaya Gupta
0a51fe4ea8 Merge m-c to graphics
MozReview-Commit-ID: 2cIoGVmLEuA
2017-05-08 10:50:52 -04:00
Kartikaya Gupta
79b515ab57 Merge m-c to graphics
MozReview-Commit-ID: 9HO5vhW5fyh
2017-05-04 09:05:26 -04:00
Kartikaya Gupta
30355f64ab Merge m-c to graphics
MozReview-Commit-ID: DVUE3Wys3HV
2017-05-03 08:52:43 -04:00
Kartikaya Gupta
b15f65ddbd Merge m-c to graphics
MozReview-Commit-ID: 9XwZUWIhGir
2017-05-02 09:45:11 -04:00
Ethan Lin
af28b15c49 Bug 1360112 - Correct background image position when enabling webrender background image. r=mattwoodrow 2017-05-01 00:59:26 +08:00
Emilio Cobos Álvarez
7e1330401f Bug 1355351: Simplify nsLayoutUtils callers, and make child iterators notice display: contents pseudos. r=heycam
This also happens to fix other bugs, like making display: contents pseudos
animatable, which weren't before.

MozReview-Commit-ID: LhwTPNbFvSZ
2017-04-19 12:53:57 +02:00
Botond Ballo
2ca730b70d Bug 1359868 - Move the ComputePartialPrerenderArea() helper to nsLayoutUtils so it can be reused. r=mstange
MozReview-Commit-ID: GVRBUfYwOFP
2017-05-01 19:59:08 -04:00
Emilio Cobos Álvarez
643f3f8618 Bug 1361051: rename mozilla::FrameType to mozilla::LayoutFrameType. r=xidorn
This avoids conflicts with mozilla::dom::FrameType.

MozReview-Commit-ID: 7aEMbHRaTFk
2017-05-01 19:32:52 +02:00
Botond Ballo
c54a7e6d2f Bug 1357903 - Clip event regions when combining them to a containing PaintedLayerData. r=mstange
MozReview-Commit-ID: 9Z3ITH5raXl
2017-04-28 20:32:05 -04:00
Jonathan Kew
f7e305bc0d Bug 1362167 - Use strongly-typed enum classes instead of generic uint16_t fields for the gfxShapedText and gfxTextRun flags. r=jrmuizel 2017-05-04 22:27:05 +01:00
Jonathan Kew
527ecaca8e Bug 1362167 - Split gfxShapedText.mFlags into two 16-bit flags fields, and arrange storage more compactly to reduce size of gfxShapedWord and gfxTextRun objects. r=jrmuizel 2017-05-04 22:25:16 +01:00
Emilio Cobos Álvarez
3731858edf Bug 1360241: Devirtualize nsIFrame::GetType. r=heycam
MozReview-Commit-ID: 5Nzhyta5Hle
2017-04-30 17:30:08 +02:00
Jonathan Watt
cdd6a1c7e7 Bug 1358690, part 2 - Support context paint in SVG when drawn as a CSS background image. r=dholbert 2017-03-28 12:07:39 +01:00
Jeff Gilbert
ef8acdb9c3 Bug 1355763 - Add gfxAlphaType for specifying opaque/premult/non-premult. - r=daoshengmu
MozReview-Commit-ID: Jzr8aPYlEcO
2017-04-13 09:14:34 -07:00
Timothy Nikkel
203896ccec Bug 1355898. Rename flag SFE_WANT_FIRST_FRAME to SFE_WANT_FIRST_FRAME_IF_IMAGE to represent what it does better. r=jgilbert
We only pay attention to the flag for images.
2017-04-13 03:40:45 -05:00
Iris Hsiao
191fdd1b09 Backed out changeset f97fd860c168 (bug 1355763) 2017-04-13 14:46:43 +08:00
Jeff Gilbert
37d512e4b7 Bug 1355763 - Add gfxAlphaType for specifying opaque/premult/non-premult. - r=daoshengmu
MozReview-Commit-ID: Jzr8aPYlEcO
2017-04-12 22:03:43 -07:00
Carsten "Tomcat" Book
0175d8a0b6 Merge mozilla-central to mozilla-inbound 2017-04-07 15:33:03 +02:00
Mats Palmgren
baa2d27a7b Bug 1338108 - The result of adding any percentage factor to a size that is zero should also be zero. r=dholbert
MozReview-Commit-ID: ErkjtVZyFqV
2017-04-07 01:02:59 +02:00
Ting-Yu Lin
2c0ccc8249 Bug 1312328 - Remove CSS variables preference "layout.css.variables.enabled". r=xidorn
MozReview-Commit-ID: HwYpwbhQkZj
2017-04-07 00:29:39 +08:00
Sebastian Hengst
dfa9a2b84c Backed out changeset 4df8d4e384ef (bug 1338108) for unexpectedly passing 367185-1.xhtml. r=backout 2017-04-06 21:12:29 +02:00
Mats Palmgren
c1583928ed Bug 1338108 - The result of adding any percentage factor to a size that is zero should also be zero. r=dholbert
MozReview-Commit-ID: OzOCjvcz0A
2017-04-06 20:17:34 +02:00
Jan Henning
2b18d286ed Bug 1328868 - Part 1 - Allow setting a global zoom factor via nsLayoutUtils. r=tnikkel
For Android we want to be able to set a global zoom factor that will scale any page where font inflation is not turned on.

Android makes the system font scale available as a float factor. For our purposes, converting this to a percentage based value and rounding to an integer is accurate enough and enables us to pass this value as a standard Gecko int preference. This means we can make use of the standard infrastructure for setting and retrieving Gecko-side preferences both from Java and JS (the latter during testing), as opposed to having to write custom JNI and C++/IDL helper functions.

To that effect, we implement a method for retrieving that setting via nsLayoutUtils, analogous to the current font inflation settings. Since we later want to clamp the effective text zoom resulting from that setting by zoom.minPercent and maxPercent, we add var caches for them in nsLayoutUtils as well.

MozReview-Commit-ID: Ler2YmwzImE
2017-02-25 13:22:45 +01:00
Kartikaya Gupta
720d5fa9aa Bug 1316318 - Disable paint-skipping for elements where we disable APZ. r=mstange
If we disable APZ on an individual scrollable element by setting the "disable APZ"
flag on the ScrollMetadata, we should also disable paint-skipping for that element.
If we don't do this, we end up in a situation where the APZ code is not applying
the async transform but is sending repaint requests expecting the main thread to
do repaints. Meanwhile the main-thread thinks that it can send empty transactions
and have APZ update the async transform (a.k.a. paint-skipping). So visually
neither APZ nor main-thread have an effect and the element doesn't appear to
scroll except with the tile-aligned displayport shifts. Disabling paint-skipping
on the element fixes the issue.

MozReview-Commit-ID: H4wpVLw8r8X
2017-03-15 08:24:08 -04:00
Jonathan Watt
00d12b1b8c Bug 1345908 - Remove nsLayoutUtils::HasCSSBoxLayout. r=cjku 2017-02-07 21:11:53 +00:00
Timothy Nikkel
78536370b5 Bug 1346109. Add a function that returns if we need a displayport base rect for calculating a displayport. r=botond 2017-03-11 00:58:09 -06:00
Jonathan Watt
e84b0a4edc Bug 1345841 - Stop using Maybe<const T>. r=mats 2017-02-07 11:52:22 +00:00
Xidorn Quan
522b943280 Bug 1345343 - Add a pref to turn off effect of xml:base on style attribute. r=bz
MozReview-Commit-ID: EzNLxIW0OCv
2017-03-10 18:04:34 +11:00
Brad Werth
3c26028870 Bug 1343978 Part 1: Change ClientRectsAndTexts usage of DOMStringList to Sequence<DOMString>. r=smaug
MozReview-Commit-ID: 8mKxdPTq4Ej
2017-03-02 13:13:12 -08:00
Jonathan Watt
2a7bd2d507 Bug 1341174 - Bring the declarations of the four Draw*Image() methods in nsLayoutUtils.h back together. r=dholbert 2017-01-24 17:32:11 +00:00