Commit Graph

2342 Commits

Author SHA1 Message Date
L. David Baron
80e1129c37 Bug 1053986 - Rename nsIFrame::Layout to XULLayout, and related methods with the same name. r=dholbert
This is a manual subset of changes written with sed, over .h and .cpp
files in layout/.

MozReview-Commit-ID: 9NNnNw6ClGq
2016-04-20 21:28:32 -07:00
L. David Baron
a66b07471f Bug 1053986 - Rename nsIFrame::IsCollapsed to IsXULCollapsed, and related methods. r=dholbert
This is a manual subset of changes written with sed, over .h and .cpp
files in layout/.  It's a subset because there is also a Selection
method called IsCollapsed, which is not changed here.

MozReview-Commit-ID: 9JgnPv0Hkff
2016-04-20 21:28:32 -07:00
L. David Baron
15df9934a9 Bug 1053986 - Rename nsIFrame::GetBoxAscent to GetXULBoxAscent. r=dholbert
Written purely with sed, over .h and .cpp files in layout/.

MozReview-Commit-ID: EDkbMQKqPg6
2016-04-20 21:28:32 -07:00
L. David Baron
62a468a6c1 Bug 1053986 - Rename nsIFrame::GetFlex to GetXULFlex. r=dholbert
Written purely with sed, over .h and .cpp files in layout/.

MozReview-Commit-ID: DNL01eSXB73
2016-04-20 21:28:31 -07:00
L. David Baron
8f4665f9af Bug 1053986 - Rename nsIFrame::GetMaxSize to GetXULMaxSize, and related methods. r=dholbert
Written purely with sed, over .h and .cpp files in layout/.

MozReview-Commit-ID: 39fYXMz7kqR
2016-04-20 21:28:31 -07:00
L. David Baron
0527201e1d Bug 1053986 - Rename nsIFrame::GetPrefSize to GetXULPrefSize, and related methods. r=dholbert
Written purely with sed, over .h and .cpp files in layout/.

MozReview-Commit-ID: yvcAZ8rndu
2016-04-20 21:28:31 -07:00
L. David Baron
4419f3e86b Bug 1053986 - Rename nsIFrame::GetMinSize to GetXULMinSize, and related methods. r=dholbert
Written purely with sed, over .h and .cpp files in layout/.

MozReview-Commit-ID: Jhe3o3kIOe0
2016-04-20 21:28:31 -07:00
L. David Baron
2f53d7f019 Bug 1053986 - Rename nsFrame.cpp static method IsBoxWrapped to IsXULBoxWrapped. r=dholbert
Written purely with sed, over .h and .cpp files in layout/.

MozReview-Commit-ID: EOh204RMxmi
2016-04-20 21:28:30 -07:00
L. David Baron
7511e4ea42 Bug 1053986 - Rename nsIFrame::IsBoxFrame to IsXULBoxFrame. r=dholbert
Written purely with sed, over .h and .cpp files in layout/.

But with additional manual changes in accessible/.

MozReview-Commit-ID: W0wUPoQsVH
2016-04-20 21:28:30 -07:00
Nathan Froyd
d7b5415e7b Bug 1264784 - part 2 - remove unused virtual methods from nsIFrame; r=dholbert
There are no callers of these methods in mozilla-central, and having
them in the vtable of nsIFrame (and its 100+ subclasses!) consumes
needless space.
2016-04-15 19:37:35 -04:00
CJKu
8eacf30983 Bug 759568 - Part 2. Render background-clip:text; r=jfkthame
MozReview-Commit-ID: HQHBe7OioWs
2016-04-14 16:28:07 +08:00
Carsten "Tomcat" Book
3b36687a1f Backed out changeset 6a2e62e8c861 (bug 759568) 2016-04-14 08:57:41 +02:00
CJKu
f51f239496 Bug 759568 - Part 2. Render background-clip:text; r=jfkthame
MozReview-Commit-ID: HQHBe7OioWs
2016-04-14 12:45:38 +08:00
Mats Palmgren
1a83f57b72 Bug 645647 part 4 - Add an 'm' prefix to some members to follow our naming conventions. r=dholbert 2016-04-14 01:32:12 +02:00
Mats Palmgren
b7644da205 Bug 645647 part 3 - Remove unused trailingTextFrame member. r=dholbert 2016-04-14 01:32:12 +02:00
Mats Palmgren
c066fae6e9 Bug 645647 part 1 - Don't let empty bullet frames block suppressing white-space in intrinsic size calculations. r=dholbert 2016-04-14 01:32:12 +02:00
Sebastian Hengst
e99225a2fb Backed out changeset e64951d74d2a (bug 759568) 2016-04-12 17:55:44 +02:00
CJKu
110d895ffb Bug 759568 - Part 2. Render background-clip:text; r=jfkthame
MozReview-Commit-ID: HQHBe7OioWs
2016-04-12 21:58:22 +08:00
Jonathan Watt
947f9705a7 Bug 1263785 - Kill off the deprecated nsINode::GetCurrentDoc. r=baku 2016-03-31 12:46:32 +01:00
Boris Chiou
0c86176cb4 Bug 1182856 - Part 3: Cancel transitions for destroy frames. r=heycam
Add HasCSSTransition() and cancel transitions for destroyed frames.
2016-04-10 21:29:00 +02:00
Cameron McCormack
a08ba659c3 Bug 1261754 - Part 12: Move filter from nsStyleSVGReset to nsStyleEffects. r=dholbert 2016-04-12 15:52:43 +10:00
Cameron McCormack
4d84720983 Bug 1261754 - Part 11: Move opacity from nsStyleDisplay to nsStyleEffects. r=dholbert 2016-04-12 15:52:43 +10:00
Cameron McCormack
424a4cab99 Bug 1261754 - Part 10: Move mix-blend-mode from nsStyleDisplay to nsStyleEffects. r=dholbert 2016-04-12 15:52:42 +10:00
Cameron McCormack
5c65b6f60f Bug 1261754 - Part 9: Move clip from nsStyleDisplay to nsStyleEffects. r=dholbert 2016-04-12 15:52:42 +10:00
Cameron McCormack
4496226b12 Bug 1261754 - Part 8: Move box-shadow from nsStyleBorder to a new nsStyleEffects struct. r=dholbert 2016-04-12 15:52:42 +10:00
Cameron McCormack
98ad26ea1a Bug 1261754 - Part 7: Move pointer-events from nsStyleVisibility to nsStyleUserInterface. r=dholbert 2016-04-12 15:52:41 +10:00
Cameron McCormack
b1420ed1e1 Bug 1261754 - Part 6: Move vertical-align from nsStyleTextReset to nsStyleDisplay. r=dholbert 2016-04-12 15:52:41 +10:00
Botond Ballo
aa2fd58a6a Bug 1219296 - Split fields not needed for repaints out from FrameMetrics. r=kats
MozReview-Commit-ID: DymHOSI6yYK
2016-03-28 19:14:52 -04:00
Markus Stange
26545e85ac Bug 1255068 - Add a check for null scrollid. r=kats
MozReview-Commit-ID: 15lbTMb76np
2016-03-24 16:19:14 -04:00
Seth Fowler
0f24c44100 Bug 1157546 - Replace the image visibility API with a more general API that tracks visibility for any kind of frame. r=mstange 2016-03-25 14:49:43 -07:00
Matt Woodrow
d0b12ada69 Bug 1250718 - Don't flatten opacity to an intermediate surface when used in the middle of preserve-3d. r=thinker 2016-03-18 09:23:51 +13:00
Markus Stange
584ddde8a7 Bug 1255068 - Do not allow empty transaction transform changes if the scroll position has changed since the last paint. r=kats, r=mattwoodrow
MozReview-Commit-ID: 7exuhuf3HTJ
2016-03-11 16:09:16 -05:00
Matt Woodrow
00e217d7ea Bug 1220466 - Don't build event region display items for pseudo stacking contexts, unless they are also an AGR. r=mstange 2016-03-10 13:55:00 +13:00
Kartikaya Gupta
35f18df549 Bug 1205473 - Add a state bit to optimize building event regions. r=mattwoodrow
MozReview-Commit-ID: CPSgChJc92L
2016-03-09 17:29:41 -05:00
Brian Birtles
3ad43fba1f Bug 1239945 part 7 - Move GetAnimationCollection to AnimationCollection; r=dholbert
By moving GetAnimationCollection to AnimationCollection itself, we can remove
a bunch of virtual methods on the animation managers, simplify call sites,
and provide better type safety by ensuring a correspondence between element
property names and concrete animation types.

One change in behavior, however, is that in doing this we can no longer
add any newly-created AnimationCollection to the corresponding manager's linked
list of collections inside GetAnimationCollection. Instead we take a bool
outparam to indicate if a new collection was created and leave managing the
linked list to the manager. This is just a temporary measure, however, since
by the end of this patch series will will eliminate this linked list altogether
along with this flag.

MozReview-Commit-ID: 1jsc4QcmVDg
2016-03-09 12:55:39 +09:00
Brian Birtles
bd2759cad0 Bug 1239945 part 6 - Templatize AnimationCollection based on the concrete type of Animation stored; r=dholbert
This patch templatizes the type of Animation stored in an AnimationCollection.
This allows us to remove a number AsCSSAnimation() calls in nsAnimationManager.

This patch also removes the AnimationPtrArray typedef. In its place we
introduce OwningCSSAnimationPtrArray and OwningCSSTransitionPtrArray but we
don't use these as widely. There was some comment previously that the typedefs
in animation code make it hard to read, particularly when these typedefs don't
make it clear if the data type is an owning reference or not.

In doing this we need to templatize CommonAnimationManager as well and move the
implementation of its (few) methods to the header file. We may be able to
remove the need for templatizing CommonAnimationManager later in this patch
series depending on how we ultimately decide to handle the lifetime of
AnimationCollection objects.

CommonAnimationManager::GetAnimationCollection is a bit messy but this will be
significantly tidied up in subsequent patches in this series.

MozReview-Commit-ID: 3ywatY53pRR
2016-03-09 12:55:39 +09:00
Markus Stange
cc7e2246b3 Bug 1248913 - Rename nsDisplayMixBlendMode to nsDisplayBlendMode. r=mattwoodrow
We're going to use it both for background-blend-mode and for mix-blend-mode.

MozReview-Commit-ID: 6zKCDSkLspc
2016-03-05 17:04:02 -05:00
Markus Stange
7b58e2bc3d Bug 1248913 - Add a constructor argument to nsDisplayMixBlendMode that lets you specify the blend mode. r=mattwoodrow
MozReview-Commit-ID: 9MqjLKjRmeh
2016-03-05 16:39:25 -05:00
Markus Stange
ccfcc4b90c Bug 1248913 - nsDisplayListBuilder doesn't need to know what blend modes it contains, just whether it contains any. r=mattwoodrow
MozReview-Commit-ID: 5yQcGnXBKKp
2016-03-05 12:46:14 -05:00
Markus Stange
b3aac21902 Bug 1238564 - Don't do another pass over the display list to figure out ancestor scroll clips. r=mattwoodrow
MozReview-Commit-ID: BgySqVGG43R
2016-03-05 11:27:54 -05:00
Markus Stange
c218f8cd27 Bug 1238564 - When building a fixed/sticky display item, don't restore the clip until we're ready to build that item so that inner items aren't unnecessarily clipped. r=roc
This isn't really about regular clips, it's about scroll clips. If the inner
item has an unnecessary scroll clip (one that's already on the parent), this can
cause the inner item's bounds to be larger than necessary because, after the
first patch in bug 1238564, it will include the whole bounds of async-scrollable
scroll frames.
Also, if e.g. the inner item is an opacity item, and it has a scroll clip that's
not just the innermost ancestor scroll clip of all of its children, then
FrameLayerBuilder's mContainerBounds == mAccumulatedChildBounds assertion can
fail if the opacity item gets flattened away, because the child bounds won't
have been enlarged for the scroll clip.

There must be a better way to do the clip resetting in
nsFrame::BuildDisplayListForStackingContext - the code is not pretty at all.
But I'd rather get the tests passing first before we figure out how to clean it
up.

MozReview-Commit-ID: E1DdpN546va
2016-02-23 18:22:21 +01:00
Markus Stange
2f548e96d9 Bug 1238564 - Set the innermost possible scroll clip on opacity items during creation. r=mattwoodrow
Always use an ancestor scroll clip of all direct children, or the original
scroll clip if the children don't share the same scroll clip tree.
Unfortunately this requires another pass over the stacking context display list.

Also, fix clips, scroll clips and creation order of blend items:
If a clipped mix-blend-mode item contains absolute / fixed positioned items,
those items should not be clipped, same for blend container items.
When a transform item contains blend modes, create the blend container inside
the transform.

Don't do tree comparisons on scroll clips from different scroll clip trees.
If the inner scroll clip is nullptr, because it was cleared, it will look like
it's the ancestor of the outer non-nullptr scroll clip.

These changes don't look very related, but it was very hard to get tests passing
with only some of the changes and not the others, and after having spent two
weeks on this patch I'm not thrilled about going back and checking exactly which
change was necessary to fix which test failure.

MozReview-Commit-ID: IKGciUBrdNa
2016-03-04 15:05:58 -05:00
Mats Palmgren
cd3dfc336c Bug 1225005 - Clamp negative values in containing block size. r=roc 2016-03-02 23:39:34 +01:00
Mats Palmgren
28822f727d Bug 1249913 - True overflow containers shouldn't have borders or background. r=dholbert 2016-03-02 23:39:34 +01:00
David Anderson
f8e264b755 Remove lazy scrollinfo hoisting introduced in bug 1193557. (bug 1209278 part 2, r=mstange) 2016-02-23 10:11:43 -08:00
Cameron McCormack
cbb5f757f4 Bug 1248864 - Part 3: Use RestyleManagerHandle instead of concrete restyle manager class. r=dholbert 2016-02-24 18:01:12 +11:00
Cameron McCormack
471cf640eb Bug 1248864 - Part 1: Move RestyleManager.h to EXPORTS.mozilla. r=dholbert 2016-02-24 18:01:12 +11:00
Wes Kocher
9a52b34169 Backed out 2 changesets (bug 1193557, bug 1209278) for build bustage
Backed out changeset 755b9088813c (bug 1193557)
Backed out changeset 21356fa4e353 (bug 1209278)
2016-02-23 10:39:08 -08:00
David Anderson
c6f8e80e7b Remove lazy scrollinfo hoisting introduced in bug 1193557. (bug 1209278 part 2, r=mstange) 2016-02-23 10:11:43 -08:00
Boris Chiou
32cdf253b7 Bug 1244049 - Part 2: Replace nsCSSPseudoElements::Type with CSSPseudoElementType. r=dbaron
Also, try to use forward declaraions for CSSPseudoElementType;
2016-02-17 21:37:00 +01:00