Commit Graph

621 Commits

Author SHA1 Message Date
Cameron McCormack
e5525cb6d8 Bug 1264830 - Part 5: Require all style structs be memmovable. r=bholley 2016-04-19 09:51:16 +10:00
Cameron McCormack
3e8238a070 Bug 1264830 - Part 4: Change nsStyleDisplay::mWillChange to use nsTArray. r=bholley
The initial value of nsStyleDisplay::mWillChange is represented by an
empty array, and will-change is not so common, so we change it to use an
nsTArray.
2016-04-19 09:51:16 +10:00
Cameron McCormack
ce928d01ad Bug 1264830 - Part 3: Change nsStyleDisplay::{mTransitions,mAnimations} to use nsStyleAutoArray. r=bholley
nsStyleDisplay::{mTransitions,mAnimations} both always have at least one
element in it, so we change them to use nsStyleAutoArray rather than
nsTArray.
2016-04-19 09:51:16 +10:00
Cameron McCormack
e7ae67f825 Bug 1264830 - Part 2: Change nsStyleImageLayers::mLayers to use nsStyleAutoArray. r=bholley
nsStyleImageLayers::mLayers always has at least one element in it, so we
change it to use nsStyleAutoArray rather than nsTArray.
2016-04-19 09:51:16 +10:00
Cameron McCormack
25fd6bca14 Bug 1264830 - Part 1: Add an nsStyleAutoArray array type, similar to AutoTArray<...,1> but memmovable. r=bholley
Existing uses of AutoTArray in style structs makes them non-memmovable.
We introduce this AutoTArray-alike class for use by those style struct
members that really do need to use an auto array's built-in allocation.
2016-04-19 09:51:15 +10:00
Cameron McCormack
6b84ca3abb Bug 1261754 - Part 12: Move filter from nsStyleSVGReset to nsStyleEffects. r=dholbert 2016-04-12 15:52:43 +10:00
Cameron McCormack
672aaef5a4 Bug 1261754 - Part 11: Move opacity from nsStyleDisplay to nsStyleEffects. r=dholbert 2016-04-12 15:52:43 +10:00
Cameron McCormack
0ef9faa708 Bug 1261754 - Part 10: Move mix-blend-mode from nsStyleDisplay to nsStyleEffects. r=dholbert 2016-04-12 15:52:42 +10:00
Cameron McCormack
c2126abc67 Bug 1261754 - Part 9: Move clip from nsStyleDisplay to nsStyleEffects. r=dholbert 2016-04-12 15:52:42 +10:00
Cameron McCormack
0718df89c3 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
6f4ce86293 Bug 1261754 - Part 7: Move pointer-events from nsStyleVisibility to nsStyleUserInterface. r=dholbert 2016-04-12 15:52:41 +10:00
Cameron McCormack
cb363fa1df Bug 1261754 - Part 6: Move vertical-align from nsStyleTextReset to nsStyleDisplay. r=dholbert 2016-04-12 15:52:41 +10:00
Cameron McCormack
d7db2f5ade Bug 1261754 - Part 5: Move text-rendering from nsStyleSVG to nsStyleText. r=dholbert 2016-04-12 15:52:41 +10:00
Cameron McCormack
5bd6866210 Bug 1261754 - Part 4: Move image-rendering from nsStyleSVG to nsStyleVisibility. r=dholbert 2016-04-12 15:52:40 +10:00
Cameron McCormack
6883fc4b42 Bug 1261754 - Part 3: Move quotes from nsStyleQuotes to nsStyleList and delete nsStyleQuotes. r=dholbert 2016-04-12 15:52:40 +10:00
Cameron McCormack
d340c36d57 Bug 1261754 - Part 2: Make quotes computed values shareable between different structs. r=dholbert 2016-04-12 15:52:40 +10:00
Cameron McCormack
cde55115b7 Bug 1261754 - Part 1: Improve static assertions for style struct bits. r=dholbert 2016-04-12 15:52:39 +10:00
Bobby Holley
a5883b607d Bug 1261552 - Introduce StyleStructContext, and make all style struct constructors take it. r=heycam 2016-04-04 23:14:29 -07:00
Bobby Holley
9e30bdaebc Bug 1261552 - Reimplement default placement-new for style structs. r=heycam
We require a pointer of the class type, rather than void*, to reduce
the risk of accidentally calling this overload instead of the PresContext
one.
2016-04-04 23:14:26 -07:00
Tobias Schneider
910b79dd54 Bug 1209273 - Part 1: Support for adjust-color CSS property. r=dbaron 2016-03-08 09:25:24 -08:00
Carsten "Tomcat" Book
dc337845d1 Backed out changeset d5a9ff0ae110 (bug 1209273) for test failures in browser_rules_completion-new-property_02.js 2016-04-01 11:58:12 +02:00
Tobias Schneider
af80c17051 Bug 1209273 - Part 1 - Support for color-adjust CSS property. r=dbaron 2016-03-10 10:51:00 +01:00
Bobby Holley
3836b7c35b Bug 1258017 - Redesign and simplify rule tree GC. r=dbaron
The basic idea here is as follows:
* Rule nodes are reference-counted, but releasing them adds them to a linked
  list rather than freeing them. This allows for the reuse that motivated the
  original GC scheme.
* We get rid of the marking, and instead rely on the reference count.
* Sweeping no longer requires a complicated traversal. We just pop items
  off the free list until it's empty. When a child is destroyed, its parent
  may go onto the free list.
* We remove special handling for the root node, and use a regular reference-counted
  edge from the style set.
* The free list automatically asserts that it's empty (meaning all nodes have been
  freed) in its destructor, which runs when the style set is destroyed.
* We get rid of the list of style context roots on the style set. We still need
  a count though, because of the HasCachedStyleData check.
2016-03-28 08:59:22 -07:00
Emilio Cobos Álvarez
218d5cde79 Bug 1259802: Add type replacement annotations to simplify rust binding generation for nsStyleStruct.h, r=bholley
This way or bindings are sane, and we don't have to bring in a lot of
the gfx code.
2016-03-25 11:46:21 -07:00
Jeremy Chen
4134ed5760 Bug 1247777 - Part1: parse and compute -webkit-text-fill-color property. r=heycam
--HG--
extra : commitid : 3L1KflCYhR3
2016-03-25 15:54:49 +08:00
Daniel Holbert
37e8c9d5cc Bug 1236400 part 1: Add internal enum values to represent "display: -webkit-box" & "display: -webkit-inline-box". r=mats
These new enum values are added with same behavior as their modern flexbox
equivalents -- they're hooked up to NS_NewFlexContainerFrame, and they're
listed alongside the modern flexbox enums in 'switch' & 'if' statements.

There's one exception, which I call out with a comment at the end of the patch:
we don't treat -webkit-box the same as flexbox in IsFlexOrGridDisplayType(),
because that method is used to determine whether we should blockify
inline-level children of a flex/grid container, and we don't want to blockify
any children of a -webkit-box. (Instead, we want to wrap them in an anonymous
flex item. That happens in the next patch.)

MozReview-Commit-ID: 9BB4Ib2KpvE
2016-03-24 09:55:11 -07:00
L. David Baron
89ad8d0c53 Bug 1142531: Check more bits in nsStyleContext::MoveTo assertion. r=heycam
MozReview-Commit-ID: 455suOkmdj7
2016-03-14 10:27:05 -07:00
CJKu
4985b55721 Bug 1224424 - Replace mask-mode:auto keyword by mask-mode:match-source; r=dbaron
MozReview-Commit-ID: FKEJI1rHTIA

--HG--
extra : rebase_source : cdd72c6ae3b44e75d0f3415d99d3a897729a43fc
2016-02-25 17:31:47 +08:00
L. David Baron
b64070584c Bug 1187851 patch 6 - Make dynamic changes to filter change fixed position containing block for descendants. r=roc
MozReview-Commit-ID: DDSadc3yzDL
2016-02-24 16:08:31 -08:00
Jonathan Watt
b7a8647630 Bug 1110460, part 5 - Factor out a nsStyleBasicShape::GetShapeTypeName method. r=dholbert 2016-02-17 00:19:27 +00:00
Dirk Schulze
7d71b51c43 Bug 1075457, part 1 - Implement rendering for |clip-path:polygon()|. r=mstange, r=jwatt
--HG--
extra : rebase_source : 17ddbe04589e146c5e64497527b5a74b54337b8b
2016-02-08 22:08:09 +00:00
Birunthan Mohanathas
d7371d07d0 Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-02-02 17:36:30 +02:00
Markus Stange
77d52c0a79 Bug 1241275 - Change the way -moz-window-dragging works. r=heycam,roc
This adds the value -moz-window-dragging: default as the initial value of the property,
and makes it a [reset] property. This allows us to change the way the window dragging
region is calculated: Elements with -moz-window-dragging: no-drag will now always be
undraggable, even if they are overlapped by -moz-window-dragging: drag elements. That
way we can keep the region calculation simple and don't have to add code to respect
z-ordering.

--HG--
extra : commitid : GX3ApAyzKi7
extra : rebase_source : 61cab4e535c6c5da75fe79eb1886b6c5b7d136ea
extra : amend_source : 0f461782b8f65eca1009c2f6c192b5b80b908233
2016-01-27 11:58:33 +01:00
CJKu
7b577b9c98 Bug 686281 - Rename nsStyleSVGReset::mLayers to nsStyleSVGReset::mMask; Rename nsStyleBackground::mLayers to nsStyleBackground::mImage. r=dbaron 2016-01-28 06:39:00 +01:00
CJKu
93fe52cf88 Bug 686281 - Remove nsStyleSVGReset::mMask; r=dbaron 2016-01-28 06:37:00 +01:00
CJKu
88df6fdaef Bug 686281 - A static assertion to keep value correctness of NS_RULE_NODE_IS_ANIMATION_RULE; r=dbaron. 2016-01-28 06:36:00 +01:00
CJKu
577578571f Bug 686281 - Implement CSS mask style; r=dbaron. 2016-01-28 06:28:00 +01:00
CJKu
538b854ad1 Bug 686281 - Rename *background* to *imagelayer*; r=dbaron. 2016-01-28 06:27:00 +01:00
CJKu
2d363d1b79 Bug 686281 - Implement nsStyleImageLayers; r=dbaron 2016-01-28 06:24:00 +01:00
Cameron McCormack
ff6a816c75 Bug 1238403 - Fix inconsistent indenting in layout/style/. r=xidorn 2016-01-11 10:28:35 +11:00
Mats Palmgren
0b1a56d480 Bug 1233106 part 1 - [css-align] Update align-/justify-* properties to the current CSS Align spec (adding 'normal' keyword, dropping 'auto' in some cases etc). r=dholbert
The CSSWG minutes for reference:
https://lists.w3.org/Archives/Public/www-style/2015Dec/0233.html

With subsequent correction for the root node:
https://lists.w3.org/Archives/Public/www-style/2016Jan/0015.html
2016-01-05 21:27:13 +01:00
Xidorn Quan
9ef82c65a1 Bug 1231485 part 2 - Add NeutralChange hint to nsStyleText::MaxDifference(). r=dbaron
--HG--
extra : source : e52efce3dce402c1d73790cba33d0a756c3604a9
2016-01-04 10:47:05 +11:00
Hiroyuki Ikezoe
ad26e984f4 Bug 1234966 - nsStylePosition::MaxDifference should include nsChangeHint_NeutralChange because CalcDiffrence returns it. r=heycam
--HG--
extra : commitid : FVjhKfDcAUz
2015-12-24 09:35:18 +09:00
Mats Palmgren
781441cd1d Bug 1118820 part 1 (style system part) - [css-grid] Implement the 'auto-fill' and 'auto-fit' keywords in the repeat() function. r=dholbert 2015-12-22 23:03:15 +01:00
Daniel Holbert
921795f698 (no bug) Fix typo in grid style-struct comment: s/grid-columns-rows/grid-template-rows/. No review, DONTBUILD 2015-12-18 16:28:38 -08:00
L. David Baron
f847691699 Bug 1224251 patch 3 - Return nsChangeHint_UpdateUsesOpacity when opacity changes between 1 and non-1. r=xidorn
--HG--
extra : commitid : BP6PdQF7hQo
2015-11-30 21:25:54 -08:00
L. David Baron
c9db8494ee Bug 1228877 - Make nsStyleContext::HasChildThatUsesGrandancestorStyle by setting bit on grandchild's parent instead of grandchild. r=xidorn
--HG--
extra : commitid : I1vYFLqDi7K
2015-11-30 16:16:46 -08:00
L. David Baron
150c18deae Bug 1228501 patch 4 - Remove nsStyleFont::CalcFontDifference, which now duplicates the list of tests in nsFont::Equals. r=jdaggett
--HG--
extra : commitid : DKp1CfndZTd
2015-11-30 14:02:25 -08:00
Carsten "Tomcat" Book
87c80c6a24 Backed out changeset 91898a35b414 (bug 1224251) 2015-11-30 12:10:43 +01:00
Carsten "Tomcat" Book
f016eefac0 Backed out changeset ec79945130ff (bug 1228501) 2015-11-30 12:10:35 +01:00