CG is removed. By testing, D2D works fine with composing a mask by OP_IN mode.
MozReview-Commit-ID: Gs5rB6JachJ
--HG--
extra : rebase_source : 37cada77b33cd0f0265b0e1cb3e88ab8cc32e6e0
Simply split the code in nsSVGClipPathFrame::GetClipMask into two different
functions.
MozReview-Commit-ID: KMdVL3Wg8OC
--HG--
extra : rebase_source : 9a3e354378fe54bed26f8352450c423aa9b700b4
1. Remove the preference setting in reftest.list
2. Remove the preference guard in property_database.js
3. Remove the callback function of preference change
4. Remove the preference from all.js
MozReview-Commit-ID: 6aqYmhz6c9M
The Web-facing methods perform access checks which blow up when the
stars are aligned such that we run this code under a subject principal
that doesn't have access to the anchor node of the selection.
To avoid exposing the template ProcessInterpolateMatrix is left because it is
used in AddTransformFunctions in nsDisplayList.cpp.
MozReview-Commit-ID: D9KW7du5j04
--HG--
extra : rebase_source : afec2823ac615598ec965571f465ca2c6420a3cc
Bug 1259889 Part 2 [1] cannot be reverted cleanly, so I manually undo those
changes in this patch. That is, remove the ability for html.css to
invalidate dynamically since it was added specifically for details element.
Although reftest-stylo.list explicit mentions "DO NOT EDIT!", but I still
remove details pref from the file, since it doesn't harm to edit it anyway.
[1] https://hg.mozilla.org/mozilla-central/rev/30aaf3805b56
MozReview-Commit-ID: FsyTGQTxujh
--HG--
extra : rebase_source : 25e5a05a8a5a47642772da69f427631fa07e232d
Rewrite VsyncRefreshDriverTimer::GetTimerRate to always use the cached
value of the vsync rate in VsyncChild to avoid processing events on
the main thread.
Since VsyncChild::GetTimerRate is called in VsyncRefreshDriverTimer's
constructor, that cached value is bound to be set soon. This should
make the period of time we need to guess in
VsyncRefreshDriverTimer::GetTimerRate very short.
MozReview-Commit-ID: 1bnHNXAP8jY
--HG--
extra : rebase_source : 5a731962d417c4b3352970b2adb92b5d31de021c
Excessive clamping can cause incorrect behaviour in the presence of negative
margins.
MozReview-Commit-ID: AkQEqcQpAxx
--HG--
extra : rebase_source : 33cde31c15608792299a1dbef475e0fe0936270d
This patch removes support for mozapp iframes, leaving support for
mozbrowser iframes intact. Some of the code has been rewritten in order
to phrase things in terms of mozbrowser only, as opposed to mozbrowser
or app. In some places, code that was only useful with apps has been
completely removed, so that the APIs consumed can also be removed. In
some places where the notion of appId was bleeding out of this API, now
we use NO_APP_ID. Other notions of appId which were restricted to this
API have been removed.
We will use the new type for the generated IPDL message handler
prototype to make sure correct error handling method is called.
MozReview-Commit-ID: AzVbApxFGZ0
"For each leaf in the calc() expression, ComputeCalc will call either
ComputeNumber (when the leaf is the left side of a Times_L or the right
side of a Times_R or Divided) or ComputeLeafValue (otherwise)."
A future patch in this series adds support for evaluating pure-integer calc()s.
We rename ComputeNumber to ComputeCoefficient and introduce a coefficient_type
typedef so that coefficients can be integers. We don't want to leave it as
'number' because that is confusing (e.g. CSS <number>s are float values).
We also rename NumbersAlreadyNormalizedCalcOps to
FloatCoeffsAlreadyNormalizedCalcOps, and expect AppendCoefficient in the
template given to SerializeCalc instead of AppendNumber.
This requires some renames in nsCSSValue and nsRuleNode.
I would split this into a separate 'fully-automated' patch, except that it's so
few renames and it feels bad to add the comments separately.
We also have to add |typedef float coeff_type| to two CalcOps implementations
in nsRuleNode because they multiply-inherit from two classes that define
coeff_type as float.
MozReview-Commit-ID: 1ZmBLsGr6hK
--HG--
extra : rebase_source : 219b97c65794c404680a36607506dde66b11e4f4
In GetFlowArea(), "Shrink our band's height if needed." computation was
moved to the end because we need to pass the unmodified |blockEnd| to
compute LineRight() and LineLeft().
Revamp OutsetBorderRadii() to allow negative margin to reduce the radius,
but not below zero. Also implement the cubic formula required by the spec.
https://drafts.csswg.org/css-shapes/#valdef-shape-box-margin-box
OutsetBorderRadii() is now tailored only for margin-box with border-radius,
so it might no longer be suitable for other scenarios.
MozReview-Commit-ID: HKxW7rp6sIA
--HG--
extra : rebase_source : d416433016304feefc9ed9dcd1c22f7f2f92e27e
Per spec, float positioning and stacking is not affected by defining a float
area with a shape.
https://drafts.csswg.org/css-shapes/#relation-to-box-model-and-float-behavior
So all the call sites of GetFloatAvailableSpace() related to adding a
float are replaced by GetFloatAvailableSpaceForPlacingFloat().
<shape-box> with border-radius will be implemented in next part.
MozReview-Commit-ID: 1RXEeXDhdWo
--HG--
extra : rebase_source : 42cdb0c81b16168e4e30ee2261ceccb562e278cf
In later parts, we need the aMarginRect to build rect for shape box.
MozReview-Commit-ID: LtwMxbsNu3u
--HG--
extra : rebase_source : eee35663458079026b14922499b566674b2680ac
Also exchange the order of the second argument |aBSize| and the third
argument |aBandInfo| for GetFlowArea() so that aBCoord and aBSize are
grouped together. And it'll be prettier to add ShapeInfo behind BandInfo
in later part.
MozReview-Commit-ID: cusdomjUyu
--HG--
extra : rebase_source : 8a7dca7179f1a05d380473d5d56d984bbe8aa97f
The header file and its documentation uses |aBCoord| so I change the
implementation for consistency.
MozReview-Commit-ID: 99mEUgUwcBV
--HG--
extra : rebase_source : 3ead203f6a325b26d96b2728ff28af74784effd7
Based on bug 1294628 comment 8, I added spaces around the colon.
MozReview-Commit-ID: Dd4fvavMgmc
--HG--
extra : rebase_source : d99763461c764cc1a3c91c7c213bc8ac8c5cfbbc
clip-path-invalidation-1a.html/mask-invalidation-2a.html:
Verify the rendering result of changing scale transform of masked/clipped
element on LAYER_INACTIVE path.
clip-path-invalidation-1b.html/mask-invalidation-2b.html:
Verify the rendering result of changing scale transform of masked/clipped
element on LAYER_ACTIVE path.
clip-path-invalidation-1c.html/mask-invalidation-2c.html:
Verify the rendering result of changing the content of mask/clipPath element
on LAYER_INACTIVE path.
clip-path-invalidation-1d.html/mask-invalidation-2d.html:
Verify the rendering result of changing the content of mask/clipPath element
on LAYER_ACTIVE path.
MozReview-Commit-ID: 1ZFgzAea8T8
--HG--
extra : rebase_source : 6e04c6521db5862595f3051e54d8aa853e6ac9d6
This patch removes support for mozapp iframes, leaving support for
mozbrowser iframes intact. Some of the code has been rewritten in order
to phrase things in terms of mozbrowser only, as opposed to mozbrowser
or app. In some places, code that was only useful with apps has been
completely removed, so that the APIs consumed can also be removed. In
some places where the notion of appId was bleeding out of this API, now
we use NO_APP_ID. Other notions of appId which were restricted to this
API have been removed.
I'm not 100% sure that I'm being very consistent in my handling of
mFocusedValue, but since that's not used for file inputs, I don't think it
matters much...
A bigger problem is if people start using this caller type for things other than
file inputs.
Giving '0' (literal zero) to nsCOMPtr is now ambiguous, as both
nsCOMPtr(decltype(nullptr)) and nsCOMPtr(T*) could be used.
In any case, our coding standards mandate the use of 'nullptr' for pointers.
So I'm changing all zeroes into nullptr's where necessary.
MozReview-Commit-ID: LXiZTu87Ck6
--HG--
extra : rebase_source : f9dcc6b06e9ebf9c30a576f9319f76a51b6dc26f
In nsBlockFrame::PlaceLine(), we query the float available space by
using the line's BSize(), which may cause the line to reflow again due
to available space shrunk.
The first issue lies in the second reflow. That is, we do not leverage
the line's BSize() computed in the first reflow to query the float
available space when updating the inline reflow engine in
BlockReflowInput::AddFloat(). So some tall inline elements could still
overlap the floats as in the first reflow.
To solve this, we cache current line's BSize so that it could be
used to update the inline reflow engine when redo the line.
Another issue is in nsBlockFrame::PlaceLine(). When determined whether
the available space is shrunk, we use the float manager's state *before*
placing the line. So if current line has floats, they're not considered.
To solve this, we use the current set of floats to get the float available
space for comparison, and leave the original aFloatAvailableSpace to provide
the information when redoing the line.
MozReview-Commit-ID: GqqNlphgxYS
--HG--
extra : rebase_source : e2c64ab1ac363c7a08e532dc043bee69d6455049
This patch is based on bug 1291110 comment 29, but |aCanGrow| is preserved,
since the set of float available spaces we'll be testing in Part 4 are
difference from the one we enforced here.
MozReview-Commit-ID: LswbIaRukVR
--HG--
extra : rebase_source : 007d55fd867d052163ea5bb4222baf201fe30bcf
Rename to make the variable name consistent with the writing-mode
terminology used in PlaceLine().
MozReview-Commit-ID: AvhwHyHz7hV
--HG--
extra : rebase_source : bcec67d9959c1b881b4d287dbbab47dd0d6e0de9
In this test, we assume the caret does not appear at the end of the input.
However in this case, self.actions.flick() will select all text within the
input, and then send_keys() will replace it with '!'. As a result, the final
content might varies on different platforms. Test the final content match
tho target_content might not be reliable.
To fix this, we instead assert that final content does *not* match the
non_target_content as the bug occurs.
MozReview-Commit-ID: 2YRN8W3PUXG
--HG--
extra : rebase_source : c63b631c609992fccf350d3088bba8e0621d9a55
Move MaskLayerUserData member data setup code into assign operator to reduce
codes in CreateMaskLayer.
MozReview-Commit-ID: FKsM3OfWhvS
--HG--
extra : rebase_source : 1fc2f40615de048805e30133b0eecd4ef3d5ae92