Commit Graph

40 Commits

Author SHA1 Message Date
Daniel Holbert
132f908817 Bug 1208344 part 5: Add (preffed-off) support for "-webkit-box-orient" CSS property, as a writing-mode-dependent alias for "flex-direction". r=heycam 2015-12-30 23:36:31 -08:00
Seth Fowler
5d3e2f76e1 Bug 1181907 (Part 2) - Make nsCSSProperty hashable. r=heycam 2015-08-26 18:19:34 -07:00
Cameron McCormack
c6ef584ad1 Bug 1120284 - Part 5: Support logical axis properties. r=dbaron 2015-01-17 15:43:20 +11:00
Cameron McCormack
4468def2e9 Bug 1120284 - Part 2: Support non-shorthand-related logical box property groups. r=dbaron 2015-01-17 15:43:20 +11:00
Cameron McCormack
e213d872b9 Bug 1120284 - Part 1: Define logical property groups more explicitly. r=dbaron 2015-01-17 15:43:20 +11:00
Cameron McCormack
ddf87d6cf6 Bug 649142 - Part 1: Add macros and flags for defining logical properties and don't allocate storage for them in nsRuleData. r=dbaron
We define a new flag CSS_PROPERTY_LOGICAL to be used for logical longhand
properties and a new CSS_PROP_LOGICAL macro in nsCSSPropList.h to
define them.

When using CSS_PROP to capture all properties, includers must now
explicitly indicate whether logical properties are included or not,
by defining CSS_PROP_LIST_EXCLUDE_LOGICAL (to exclude them),
CSS_PROP_LIST_INCLUDE_LOGICAL (to include them), or CSS_PROP_LOGICAL
(to capture them separately from other properties).
2015-01-17 15:16:01 +11:00
Phil Ringnalda
41cdae473a Back out 9 changesets (bug 649142)
Backed out changeset 936703c75200 (bug 649142)
Backed out changeset b0252d2620d8 (bug 649142)
Backed out changeset 69ddb2036c50 (bug 649142)
Backed out changeset 67748675e669 (bug 649142)
Backed out changeset 15ed55c61f4e (bug 649142)
Backed out changeset 35c42cd138e1 (bug 649142)
Backed out changeset 1335630cf287 (bug 649142)
Backed out changeset b5725cd39a31 (bug 649142)
Backed out changeset b0eb691d6695 (bug 649142)
2014-12-30 20:04:20 -08:00
Cameron McCormack
6cceecc24a Bug 649142 - Part 1: Add macros and flags for defining logical properties and don't allocate storage for them in nsRuleData. r=dbaron
We define a new flag CSS_PROPERTY_LOGICAL to be used for logical longhand
properties and a new CSS_PROP_LOGICAL macro in nsCSSPropList.h to
define them.

When using CSS_PROP to capture all properties, includers must now
explicitly indicate whether logical properties are included or not,
by defining CSS_PROP_LIST_EXCLUDE_LOGICAL (to exclude them),
CSS_PROP_LIST_INCLUDE_LOGICAL (to include them), or CSS_PROP_LOGICAL
(to capture them separately from other properties).
2014-12-31 12:18:12 +11:00
Xidorn Quan
96a68ed4e1 Bug 966166 - Part 1: Parse @counter-style rule. r=dbaron, r=bz 2014-06-11 21:10:00 -04:00
Cameron McCormack
281ddc537e Bug 985838 - Change custom property name prefix from "var-" to "--" and allow identifiers to begin with "--". r=dbaron 2014-04-02 14:32:16 +11:00
Cameron McCormack
a8cf86e4b7 Bug 773296 - Part 2: Parse CSS variable declarations and store them on Declaration objects. p=ebassi,heycam r=dbaron
Patch co-authored by Emmanuele Bassi <ebassi@gmail.com>

This defines a CSSVariableDeclarations class that holds a set of
variable declarations.  This is at the specified value stage, so values
can either be 'initial', 'inherit' or a token stream (which is what you
normally have).  The variables are stored in a hash table.  Although
it's a bit of a hack, we store 'initial' and 'inherit' using special
string values that can't be valid token streams (we use "!" and ";").

Declaration objects now can have two CSSVariableDeclarations objects
on them, to store normal and !important variable declarations.  So that
we keep preserving the order of declarations on the object, we inflate
mOrder to store uint32_ts, where values from eCSSProperty_COUNT onwards
represent custom properties.  mVariableOrder stores the names of the
variables corresponding to those entries in mOrder.

We also add a new nsCSSProperty value, eCSSPropertyExtra_variable, which
is used to represent any custom property name.
nsCSSProps::LookupProperty can return this value.

The changes to nsCSSParser are straightforward.  Custom properties
are parsed and checked for syntactic validity (e.g. "var(a,)" being
invalid) and stored on the Declaration.  We use nsCSSScanner's
recording ability to grab the unparsed CSS string corresponding to
the variable's value.
2013-12-12 13:09:40 +11:00
L. David Baron
b89a8fcac3 Add ids for CSS property aliases to the nsCSSProperty enum. (Bug 849656, patch 1) r=bzbarsky
Note that this uses the method_ field of the CSS_PROP_ALIAS macro, which
is not consistent in style with the other values of nsCSSProperty.
However, these enum values are unlikely to be used explicitly, and it
avoids having to add an extra parameter to the macro.  (It might even be
better to change the other values to work this way.)
2013-03-13 09:58:39 -07:00
Gervase Markham
82ff7027aa Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Boris Zbarsky
c8acd24873 Bug 753397. Add a field to nsCSSPropList for a preference that controls the property. r=dbaron
The actual controlling is not hooked up yet; that will happen in bug 753522 for
the DOM reflections of properties.
2012-05-09 21:29:37 -04:00
Nathan Froyd
ac04893f6b Bug 712299 - don't require manual syncing of font data; r=bz 2011-12-20 11:49:16 -05:00
Michael Ventnor
0523fe3efe Bug 446569 - Implement prefixed CSS3 columns shorthand r=dbaron 2011-08-23 14:18:22 +10:00
L. David Baron
a1b15c117e Remove the datastruct_ and member_ fields of the CSS_PROP macro. (Bug 645620, patch 5) r=bzbarsky 2011-03-28 16:07:27 -07:00
L. David Baron
08ab704b49 Add 'parsevariant_' parameter to CSS_PROP macro, with all properties initially zero. (Bug 636029) r=bzbarsky 2011-03-05 09:58:33 -08:00
Zack Weinberg
f892a0765b Bug 576044 (6/12): remove vestiges of nsCSSType. r=dbaron a2.0=dbaron 2010-08-19 15:33:44 -04:00
Zack Weinberg
ca47f883ec Bug 576044 (5/12): eliminate ValueList as a storage type. r=dbaron a2.0=dbaron 2010-08-19 15:33:44 -04:00
Zack Weinberg
69b647977d Bug 576044 (4/12): eliminate ValuePairList as a storage type. r=dbaron a2.0=dbaron 2010-08-19 15:33:44 -04:00
Zack Weinberg
124282380a Bug 576044 (3/12): eliminate Rect as a storage type. r=dbaron a2.0=dbaron 2010-08-19 15:33:44 -04:00
Zack Weinberg
c95db1a5f9 Bug 576044 (2/12): eliminate ValuePair as a storage type. r=dbaron a2.0=dbaron 2010-08-19 15:33:44 -04:00
Jonathan Kew
d34dd05fe1 bug 511339 - part 1 - implement -moz-font-feature-settings and -moz-font-language-override in CSS. r=dbaron 2010-07-13 21:30:42 +01:00
L. David Baron
3affc2ba0f Rewrap long argument lists to CSS_PROP macros. Whitespace changes only. (Bug 504652) 2009-09-11 06:46:36 -04:00
L. David Baron
7b15f79138 Add fields to nsCSSPropList.h for style struct offset and animation type. (Bug 504652) r=bzbarsky 2009-09-11 06:46:36 -04:00
L. David Baron
b8c5e7827d Add stylestruct_ parameter to CSS_PROP macro. (Bug 504652) r=bzbarsky 2009-09-11 06:46:36 -04:00
Jonathon Jongsma ext:(%2C%20L.%20David%20Baron%20%3Cdbaron%40dbaron.org%3E)
b603ef9875 Implement CSS transitions: implement the parsing and computation of the transition properties. (Bug 435441) r=bzbarsky 2009-08-20 14:52:47 -07:00
L. David Baron
e5173ca99c Fix parsing of 'none' values in 'list-style' shorthand. (Bug 474135) r+sr=bzbarsky 2009-01-22 17:28:13 -08:00
L. David Baron
16f9ced174 Add a flags table for CSS properties. (Bug 160403) r+sr=bzbarsky 2008-10-07 15:10:19 -07:00
Zack Weinberg
af751d9b0a Bug 441469. Implement parsing of @font-face rules. r+sr=dbaron 2008-08-07 19:15:40 -04:00
L. David Baron
7982784b57 Merge Quotes and CounterData storage types into ValuePairList. (Bug 322475) r+sr=bzbarsky 2008-08-04 15:15:11 -07:00
dbaron%dbaron.org
b3fe667f4d One-line descriptions of files, partly because they show up in LXR. 2006-03-30 06:20:34 +00:00
cbiesinger%web.de
5911657c5f bug 308409 convert ParseTextShadow to nsCSSValue::Array and nsCSSValueList
r+sr=dbaron
2005-09-20 12:04:45 +00:00
dbaron%dbaron.org
c21915db9d Remove unused iscoord parameter from CSS_PROP_* macros. b=205790 r+sr=bzbarsky 2004-11-30 19:24:34 +00:00
bzbarsky%mit.edu
a8a6ecf161 Add nsCSSValuePair type and use it for storage of some properties. Bug 208729,
r+sr=dbaron
2004-09-10 03:26:58 +00:00
gerv%gerv.net
9d2ee4928c Bug 236613: change to MPL/LGPL/GPL tri-license. 2004-04-17 21:52:36 +00:00
dbaron%dbaron.org
43ca4b48b9 Convert switch in nsCSSProps::LookupPropertyValue to use a table by adding to the CSS_PROP_* macros. b=208726 r+sr=bzbarsky 2004-02-19 18:02:20 +00:00
dbaron%dbaron.org
29254c752a Remove hints from CSS property list. b=158713 r+sr=bzbarsky 2003-07-02 22:17:23 +00:00
dbaron%dbaron.org
0a143da53b Put more information on the CSS properties in nsCSSPropList.h.
Use the property list in the tables for nsRuleNode::CheckSpecifiedProperties.
To reduce heap usage, redesign the storage of properties and values in nsCSSDeclaration to allocate all property-value pairs in a declaration block in a single allocation, and use temporary structures (like the old permanent structures) during parsing and modification.  Replace per-property switch statements in nsCSSDeclaration with table-based code to reduce code size.
b=125246  r+sr=bzbarsky
2003-06-07 22:14:42 +00:00