Commit Graph

2166 Commits

Author SHA1 Message Date
cku
3d320c6e38 Bug 1295094 - Part 12. nsDisplayFilter creation flow. r=mstange
MozReview-Commit-ID: 3Ts8GqYyNej
2016-09-01 11:11:54 +08:00
cku
d02a0fab15 Bug 1295094 - Part 10. nsDisplayMask creation flow. r=mstange
MozReview-Commit-ID: Jk9B54WtThK
2016-08-16 13:56:11 +08:00
cku
35ee6e24a3 Bug 1295094 - Part 9. Implement nsDisplayMask. r=mstange
MozReview-Commit-ID: CBszApBehRE
2016-08-10 03:02:45 +08:00
Markus Stange
afbf602572 Bug 1298209 - Use Maybe<nsRect> for nsIFrame::GetClipPropClipRect. r=mattwoodrow
MozReview-Commit-ID: 3LhUk1Vapnj
2016-08-23 14:43:08 -04:00
Markus Stange
9d57098a3b Bug 1298209 - Make clip capturing easier to understand. r=mattwoodrow
MozReview-Commit-ID: 6OmdH7WoFma
2016-08-23 17:34:33 -04:00
Markus Stange
3f3b187a0c Bug 1298209 - Create variables for extend3DContext and hasPerspective. r=mattwoodrow
MozReview-Commit-ID: 9Dm7lnLQ4I4
2016-08-22 19:26:58 -04:00
Ravi Shankar
181d48792f Bug 1297982 - Replace NS_STYLE_BOX_DECORATION_BREAK_* with enum class; r=xidorn
MozReview-Commit-ID: 9Cli68UpKdz
2016-08-26 12:44:32 +05:30
Xidorn Quan
c3a29f2b5d Bug 1200469 part 1 - Avoid using fallback cursor if from the same frame. r=tnikkel,smaug
MozReview-Commit-ID: A2Ku0TND66L
2016-08-19 23:37:14 +10:00
Bobby Holley
e55613ed13 Bug 1296509 - Optimize GetFlattenedTreeParent. r=smaug
We need to call it on some hot paths in stylo, and this allows us to do
quick inline check before delegating to the slow path.
2016-08-19 14:43:53 -07:00
Nicholas Nethercote
8b8bd02a31 Bug 1293596 (part 2) - Rework nsIWidget bounds getters. r=mstange.
This patch makes GetBounds(), GetScreenBounds() and GetClientBounds() more
obviously infallible, like existing functions such as GetNaturalBounds() and
GetClientSize(). This results in clearer behaviour in nsCocoaWindow.mm if
Objective C exceptions occur. Along the way, the patch removes some useless
failure checks for these functions.

The patch also removes the NS_IMETHOD from GetRestoredBounds and makes that
function MOZ_MUST_USE.
2016-08-19 09:03:04 +10:00
Igor
9c81c3c1ee Bug 1293384 - Part 2: Rename Snprintf.h header to Sprintf.h. r=froydnj 2016-08-14 23:43:21 -07:00
Igor
972b8460e2 Bug 1293384 - Part 1: Rename snprintf_literal to SprintfLiteral. r=froydnj 2016-08-14 23:44:00 -07:00
Wes Kocher
de62d9c40d Merge m-c to inbound, a=merge 2016-08-12 16:29:24 -07:00
Kearwood (Kip) Gilbert
f9fd286412 Bug 1250244 - Part 2: Remove old VR rendering paths,r=gw280
MozReview-Commit-ID: 8H7spQggI2w
2016-05-27 13:49:04 -07:00
Carsten "Tomcat" Book
ce02c3ed29 merge mozilla-inbound to mozilla-central a=merge 2016-08-10 15:54:26 +02:00
Sebastian Hengst
03d6e9f367 Backed out changeset ff84b85aa1cb (bug 1291667) for asserting at nsRuleNode.cpp:1322 and failing mochitests and reftests. r=backout 2016-08-10 12:59:15 +02:00
Ravi Shankar
94124bd377 Bug 1291667 - Change NS_STYLE_USER_SELECT_* constants to enum classes; r=Manishearth,heycam
MozReview-Commit-ID: 2qBMmQrtuR9
2016-08-10 13:57:32 +08:00
Matt Woodrow
75d4a848c5 Bug 1237102 - Make sure we don't generate invalidations for children of opacity:0 frames, even when plugins are present. r=tnikkel 2016-08-10 15:15:28 +12:00
Ting-Yu Lin
d42431d103 Bug 1293604 - Replace NS_STYLE_FLOAT_* with StyleFloat enum class. r=dbaron
MozReview-Commit-ID: 4K6TyIm6cs3
2016-08-09 17:32:54 +08:00
Matt Woodrow
0cabdc86cc Bug 1287122 - Make sure we build nsDisplayOpacity if we need it, since useOpacity already takes svg effects into account. r=dbaron 2016-08-05 10:37:46 +12:00
Ravi Shankar
62a1eae26d Bug 1291667 - Change NS_STYLE_USER_SELECT_* constants to enum classes; r=heycam,manishearth
MozReview-Commit-ID: IcDt3XYvdlj
2016-08-10 21:42:21 +05:30
Emilio Cobos Álvarez
cbf40d9237 Bug 1288938: Allow passing different reasons to dirty a non display SVG text frame. r=heycam
Otherwise, when a glyph changes, we might end up doing too much work, destroying
the text-run and the observer that dirtied the frame, causing an assertion when
trying to delete it from the observer set.

MozReview-Commit-ID: LMQVr6pYFVM
2016-08-03 10:53:37 -07:00
Daosheng Mu
c8b6afd953 Bug 1281215 - Make the outline of SVG container narrows to its children. r=heycam
MozReview-Commit-ID: Ct1mdwmHMw2
2016-07-29 07:35:58 +08:00
Matt Woodrow
c80cde7f7e Bug 1282312 - Part 1: Invalidate direct rendering observers for a frame when we schedule a paint due to changes. r=mstange 2016-07-29 17:58:21 +12:00
Manish Goregaokar
d7eaba573c Bug 1288383 - Replace NS_STYLE_USER_FOCUS_* with an enum class; r=heycam
MozReview-Commit-ID: A7BYcfsn1tI
2016-07-25 11:56:40 +05:30
Ting-Yu Lin
7e5a56b15d Bug 1277129 Part 7c - Rename various RS variables to RI. r=dbaron
This patch is generated by the following script:

function rename() {
find layout\
     -type f\
     ! -path "./obj*"\
     ! -path "./.git"\
     ! -path "./.hg"\
     \( -name "*.cpp" -or\
        -name "*.h" \)\
        -exec sed -i -r "s/$1/$2/g" "{}" \;
}

rename aChildRS aChildRI
rename aContainingBlockRS aContainingBlockRI
rename aFrameRS aFrameRI
rename aLastRS aLastRI
rename aOuterRS aOuterRI
rename aRS aRI
rename blockHtmlRS blockHtmlRI
rename captionRS captionRI
rename cellRS cellRI
rename childRS childRI
rename firstAncestorRS firstAncestorRI
rename flexContainerRS flexContainerRI
rename gridRS gridRI
rename innerRS innerRI
rename lastButOneRS lastButOneRI
rename LineContainerRS LineContainerRI
rename mBlockRS mBlockRI
rename parentRS parentRI
rename secondAncestorRS secondAncestorRI
rename lastRSSize lastRISize
rename lastRSPadding lastRIPadding

MozReview-Commit-ID: YEgZs3WMow
2016-07-21 18:36:39 +08:00
Ting-Yu Lin
d3e8cf1818 Bug 1277129 Part 7b - Rename various ReflowState variables to ReflowInput. r=dbaron
This patch is generated by the following script:

function rename() {
find .\
     -type f\
     ! -path "./obj*"\
     ! -path "./.git"\
     ! -path "./.hg"\
     \( -name "*.cpp" -or\
        -name "*.h" \)\
        -exec sed -i -r "s/$1/$2/g" "{}" \;
}

rename "([[:alpha:]]*)([rR])eflowState(s?)" "\1\2eflowInput\3"

MozReview-Commit-ID: ITFO7uMTkSb
2016-07-21 18:36:39 +08:00
Ting-Yu Lin
a16062e5d0 Bug 1277129 Part 6a - Rename frame to mFrame in SizeComputationInput. r=dbaron
MozReview-Commit-ID: 3SXZ4qEZJc
2016-07-21 18:36:38 +08:00
Ting-Yu Lin
bb0825b5c7 Bug 1277129 Part 5c - Rename nsHTMLReflowMetrics to ReflowOutput. r=dbaron
This patch is generated by the following script:

function rename() {
find .\
     -type f\
     ! -path "./obj*"\
     ! -path "./.git"\
     ! -path "./.hg"\
     \( -name "*.cpp" -or\
        -name "*.h" \)\
        -exec sed -i -e "s/$1/$2/g" "{}" \;
}

rename "nsHTMLReflowMetrics" "ReflowOutput"

MozReview-Commit-ID: 2HBb7DkooH5
2016-07-21 18:36:38 +08:00
Ting-Yu Lin
0623510910 Bug 1277129 Part 1d - Rename nsCSSOffsetState to SizeComputationInput. r=dbaron
This patch is generated by the following script:

function rename() {
find .\
     -type f\
     ! -path "./obj*"\
     ! -path "./.git"\
     ! -path "./.hg"\
     \( -name "*.cpp" -or\
        -name "*.h" \)\
        -exec sed -i -e "s/$1/$2/g" "{}" \;
}

rename nsCSSOffsetState SizeComputationInput

MozReview-Commit-ID: GUJ99qNiSwD
2016-07-21 18:36:35 +08:00
Ting-Yu Lin
10912a51e3 Bug 1277129 Part 1c - Rename nsHTMLReflowState to ReflowInput. r=dbaron
This patch is generated by the following script:

function rename() {
find .\
     -type f\
     ! -path "./obj*"\
     ! -path "./.git"\
     ! -path "./.hg"\
     \( -name "*.cpp" -or\
        -name "*.h" \)\
        -exec sed -i -e "s/$1/$2/g" "{}" \;
}

rename nsHTMLReflowState ReflowInput

MozReview-Commit-ID: 9r9vdVv1pXc
2016-07-21 18:36:35 +08:00
Kartikaya Gupta
3fc2dbcef6 Bug 1287142 - Ensure that the touch-action property on the scrollable element is applied to both the inner and outer scrollframe. r=tnikkel
MozReview-Commit-ID: JafhGnhpApE
2016-07-20 23:29:17 -04:00
Timothy Nikkel
0eaae35483 Bug 1271714. When creating the wrap list item that contains the display list for a frame make sure to use a scroll clip that includes content in the display list. r=mstange
In nsIFrame::BuildDisplayListForChild for certain types of frames we create wrap list items to wrap the constructed display list to make those items inseperable.

We were using the current scroll clip by default when creating these items, but that scroll clip may not contain all the content in the display list if we traversed into an out of flow frame whose containing block is an ancestor of the current frame. The CurrentAncestorScrollClipForStackingContextContents keeps track of exactly this. (Its name might be a little misleading as we may not be dealing with a true stacking context here. Nevertheless it does contain the correct clip.)

We also need to initialize the value of mStackingContextAncestorSC when we create an AutoSaveRestore because we are now using that value sometimes without calling Enter/ExitStackingContext (which initializes mStackingContextAncestorSC).
2016-07-13 01:08:18 -05:00
Kartikaya Gupta
352c02a130 Bug 1284586 - Disable paint-skipping for scrollframes that we detect as having a CSS-clipped descendant. r=mstange
MozReview-Commit-ID: AvjokFZMwdd
2016-07-13 16:05:53 -04:00
Carsten "Tomcat" Book
e3593f049e Backed out changeset 0d582c239872 (bug 1271714) for test failures 2016-07-13 09:44:45 +02:00
Timothy Nikkel
2b9e8f8ca5 Bug 1271714. When creating the wrap list item that contains the display list for a frame make sure to use a scroll clip that includes content in the display list. r=mstange
In nsIFrame::BuildDisplayListForChild for certain types of frames we create wrap list items to wrap the constructed display list to make those items inseperable.

We were using the current scroll clip by default when creating these items, but that scroll clip may not contain all the content in the display list if we traversed into an out of flow frame whose containing block is an ancestor of the current frame. The CurrentAncestorScrollClipForStackingContextContents keeps track of exactly this. (Its name might be a little misleading as we may not be dealing with a true stacking context here. Nevertheless it does contain the correct clip.)

We also need to initialize the value of mStackingContextAncestorSC when we create an AutoSaveRestore because we are now using that value sometimes without calling Enter/ExitStackingContext (which initializes mStackingContextAncestorSC).
2016-07-13 01:08:18 -05:00
Timothy Nikkel
707e109efa Bug 1276467. Enforce that any items creating when we descend into an out-of-flow for which we don't have the proper clip are invisible. r=mattwoodrow
Just giving them an empty visible rect isn't enough because the initial visible rect can be ignored when we compute visibility.

When we enter an out of flow without saved clip data we set a flag on the builder indicating all items created should be invisible. When we enter a visible out of flow (ie one with saved clip data) inside the first out of flow we clear the flag so items created inside the second out of flow can be visible.
2016-07-12 00:49:11 -05:00
Timothy Nikkel
c0ff136f67 Bug 1285411. Mark preserve 3d children as "force descend into" before we mark absolute frames so that we can save the proper clip for more out of flow frames. r=mattwoodrow 2016-07-09 18:41:02 -05:00
Hiroyuki Ikezoe
72ab9ce7e5 Bug 1278136 - Part 2: We should not check whether the animation can run on the compositor or it's paused when determining if we should create a stacking context. r=birtles,mattwoodrow
We should create a stacking context for any transform or opacity animations
that are either "in effect" (what we currently do) OR "current", i.e.
scheduled to run or running. *BUT* for now, we don't create any stacking
context in before phase without fill:backwards or fill:both because the
property never wins in cascade until the animation gets "in effect".  This
restriction will be removed in a subsequent patch in this bug after landing
bug 1279403.

MozReview-Commit-ID: 8RyLJNPtoKI
2016-06-27 12:52:53 +09:00
Hiroyuki Ikezoe
fe0c87b94d Bug 1278136 - Part 0: Clean up frame->StyleDisplay()->BackfaceIsHidden() usage. r=mattwoodrow
We already have a wrapper named nsIFrame::BackfaceIsHidden().

MozReview-Commit-ID: 5L49W6wtXs1
2016-07-08 13:01:31 +09:00
Timothy Nikkel
a8e0bebdb2 Bug 1277123. Only clear the containing block clip when entering an out of flow with an unknown clip. r=mattwoodrow
The content clip is still valid, as we are only descending into content descendants.

The clip for content descendants that the root scroll frame creates so content doesn't overflow (visually or for event handling) the main scrollbar can get cleared otherwise.
2016-07-06 16:55:17 -05:00
Stone Shih
8300bd626d Bug 1261673: Handle wheel event when mouse cursor is hovered on a focused number input as increasing/decreasing it's value. r=smaug 2016-05-06 18:39:10 +08:00
Matt Woodrow
dd176e3cb3 Bug 1283827 - Flatten transform-style:preserve-3d when combined with opacity. r=dbaron
This matches the behaviour required by the latest editor's draft spec and matches what blink is planning on shipping soon.
It may not be an entirely web compatible change, but we expect only a small number of websites to be affected. See
the bug for more details.
2016-07-02 14:47:12 +02:00
Matt Woodrow
68b363e689 Bug 1269321: Part 3 - Create a wrapper layer for masking when we can't support it on the normal layer. r=thinker 2016-06-30 18:10:25 +02:00
Brad Werth
69ccb7e3db Bug 1243559 - Removes static casts from calls to FrameProperties::Get, ::Set, and ::Remove, and forces callers to use the type associated with the property. r=dbaron 2016-06-21 13:17:11 -07:00
Makoto Kato
82adc21cb9 Bug 1203871 - Part 1. Add nsIFrame::GetCharacterRectsInRange. r=jfkthame
Masayuki suggests GetCharcterRectsInRange instead of first idea's API by part 2 implementation.

IME wants to need the width per character.  Now nsTextFrame/nsIFrmae has only API to get point of string.  So I want to add this method to calculate simply by comment #3.

If no text frame,  I would like to return error due to no character.  (Caller shouldn't call this API on non-text frame.)

MozReview-Commit-ID: LQHUTzhnGn
2016-06-23 12:02:14 +01:00
Phil Ringnalda
ae1f6b874d Back out changeset 0bb00282a4c2 (bug 1243559) for widespread SVG assertion failures
CLOSED TREE
2016-06-22 18:45:08 -07:00
Brad Werth
665cd94da6 Bug 1243559 - Removes static casts from calls to FrameProperties::Get, ::Set, and ::Remove, and forces callers to use the type associated with the property. r=dbaron 2016-06-21 13:17:11 -07:00
Xidorn Quan
e58ba38557 Bug 1281099 part 2 - Merge three bidi frame properties into one. r=jfkthame
MozReview-Commit-ID: CEJhM3c21KO
2016-06-21 17:53:10 +10:00
Xidorn Quan
e4b1698b6a Bug 1281099 part 1 - Convert some macros to functions to help later change. r=jfkthame
MozReview-Commit-ID: 2OS5eIsNAYN
2016-06-21 17:21:09 +10:00