Commit Graph

166 Commits

Author SHA1 Message Date
L. David Baron
5bd28c7261 Bug 743392 - Serialize background-color at the beginning of the last item of the background shorthand. r=heycam
This matches what Chrome and WebKit do for a single-item background
shorthand, per discussion on today's CSS teleconference.  (At least
Chrome has bugs for multiple-items.)

The added test fails without the patch and passes with the patch.
2015-01-22 16:53:56 -08:00
Cameron McCormack
213b168902 Bug 1121768 - Part 2: Give CSSPROPS_FOR_SHORTHAND_SUBPROPERTIES an nsCSSProps::EnabledState argument. r=dbaron 2015-01-17 15:55:07 +11:00
Cameron McCormack
21e084920b Bug 649142 - Part 6: Remove support for shorthand-implemented logical properties. r=dbaron
This includes removing:

* the box property directional source constants
* the CSS_PROPERTY_DIRECTIONAL_SOURCE property flag
* the CSS_PROPERTY_REPORT_OTHER_NAME property flag
* nsCSSProps::OtherNameFor
* methods on the CSS parser to parse directional box properties and set
  the old *-source and *-value properties
* the resolution of logical and physical properties in nsRuleNode during
  style computation, since that's now done as part of the cascade in
  nsCSSExpandedDataBlock::MapRuleInfoInto
2015-01-17 15:16:02 +11:00
Cameron McCormack
b6af6d3b71 Bug 649142 - Part 5: Convert logical border properties. r=dbaron 2015-01-17 15:16:02 +11:00
Cameron McCormack
a719267659 Bug 649142 - Part 4: Convert logical margin properties. r=dbaron 2015-01-17 15:16:02 +11:00
Cameron McCormack
380a5c4044 Bug 649142 - Part 3: Convert logical padding properties. r=dbaron
Here we convert the logical padding properties into their new resolved-at-
cascade-time implementations.  This involves:

* converting -moz-padding-{start,end} into logical longhand properties
* adding padding-inline-{start,end} aliases for -moz-padding-{start,end}
* converting padding-{left,right} into longhand properties
* removing padding-{left,right}-value and
  padding-{left,right}-{ltr,rtl}-source internal properties

The CSS parser and various tests are simplified a bit as a result.
2015-01-17 15:16:02 +11:00
Phil Ringnalda
d866ff0386 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
1413a08b8e Bug 649142 - Part 6: Remove support for shorthand-implemented logical properties. r=dbaron
This includes removing:

* the box property directional source constants
* the CSS_PROPERTY_DIRECTIONAL_SOURCE property flag
* the CSS_PROPERTY_REPORT_OTHER_NAME property flag
* nsCSSProps::OtherNameFor
* methods on the CSS parser to parse directional box properties and set
  the old *-source and *-value properties
* the resolution of logical and physical properties in nsRuleNode during
  style computation, since that's now done as part of the cascade in
  nsCSSExpandedDataBlock::MapRuleInfoInto
2014-12-31 12:18:16 +11:00
Cameron McCormack
73cc5f23f0 Bug 649142 - Part 5: Convert logical border properties. r=dbaron 2014-12-31 12:18:15 +11:00
Cameron McCormack
668e24d7c7 Bug 649142 - Part 4: Convert logical margin properties. r=dbaron 2014-12-31 12:18:14 +11:00
Cameron McCormack
ca96516c72 Bug 649142 - Part 3: Convert logical padding properties. r=dbaron
Here we convert the logical padding properties into their new resolved-at-
cascade-time implementations.  This involves:

* converting -moz-padding-{start,end} into logical longhand properties
* adding padding-inline-{start,end} aliases for -moz-padding-{start,end}
* converting padding-{left,right} into longhand properties
* removing padding-{left,right}-value and
  padding-{left,right}-{ltr,rtl}-source internal properties

The CSS parser and various tests are simplified a bit as a result.
2014-12-31 12:18:14 +11:00
L. David Baron
ff080cde67 Bug 1100773 patch 2 - Convert style rule List methods to use fprintf_stderr. r=heycam
Note that getting decent logcat output on Android and B2G requires not
splitting lines of output across multiple fprintf_stderr calls.
2014-11-26 22:29:44 -08:00
L. David Baron
4bd15269cc Bug 1100773 patch 1 - Fix bracing of indent loops in style rule print functions. r=heycam 2014-11-26 22:29:44 -08:00
Dirk Schulze
cbf9adb5d4 Bug 1074528 - Implement parsing/computing of inset(). r=dbaron 2014-11-22 05:28:00 +01:00
Tooru Fujisawa
3c916932ea Bug 1039488 - Turn text-decoration into a shorthand. r=dbaron 2014-11-18 19:23:09 +09:00
John Daggett
9029a90848 Bug 975744 - remove font features pref and enable features by default. r=dbaron 2014-08-20 16:54:35 +09:00
John Daggett
39e8289510 Bug 1041951 - parse font-variant as a shorthand for font feature subproperties. r=dbaron 2014-08-20 16:54:25 +09:00
John Daggett
c1f695ff90 Bug 1053114 - fix serialization of shorthands with token value subproperties. r=heycam 2014-08-14 21:36:25 +09:00
Brian Birtles
c555bc2d0f Bug 1037314 - Include animation-play-state in animation shorthand; r=dbaron
This patch is basically a reversal of attachment 530792 from bug 654890.
2014-07-17 10:04:56 +09:00
Xidorn Quan
b214cee292 Bug 966166 - Part 3: Link to other parts. r=dbaron 2014-06-11 21:12:00 -04:00
Birunthan Mohanathas
9f41043f62 Bug 869836 - Part 3: Use Append('c') instead of AppendLiteral("c"). r=ehsan 2014-05-22 06:48:51 +03:00
Birunthan Mohanathas
1ebdb921a5 Bug 869836 - Part 2: Use AppendLiteral instead of Append(NS_LITERAL_STRING(...)). r=ehsan 2014-05-22 06:48:50 +03:00
Mats Palmgren
cec9a9bb28 Bug 994592 - Make 'row' the initial value for 'grid-auto-flow' and remove 'none' as a valid value. And add the 'stack' variants. r=simon.sapin 2014-05-06 09:45:13 +00:00
Cameron McCormack
d626db095c 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
Simon Sapin
c46c597dbf Bug 989755: Fix up serialization of the grid-template shorthand. r=dholbert
* Refuse to serialize some combinations of values that the shorthand
  can not represent: 'grid-template-areas: (not none)' combined with
  'grid-template-rows: subgrid' or 'grid-template-columns: subgrid'.
  (The former used to cause an assertion failure.)
* Remove an extraneous trailing space that occured when a <track-list>
  was last. (ie. followed by an omitted <line-names>)
* Add tests for the result of this serialization.
2014-03-31 13:31:00 +02:00
Simon Sapin
67fad84a78 Bug 984728 - Refactor grid-auto-flow parsing to use ParseBitmaskValues; r=dholbert 2014-03-24 14:26:04 +01:00
Simon Sapin
1dd63c0ce5 Bug 984760 part 2: Use GridTemplateAreasValue though nsRefPtr pointers. r=dholbert 2014-03-21 23:06:16 +08:00
Simon Sapin
4ca8d6c048 Bug 984760 part 1: Rename nsCSSValueGridTemplateAreas to css::GridTemplateAreasValue. r=dholbert 2014-03-21 23:06:13 +08:00
Simon Sapin
697a4d6a75 Bug 981752 part 3: Add the grid shorthand. r=dholbert 2014-03-21 23:06:12 +08:00
Simon Sapin
598ed3b0c5 Bug 981752 part 2c: Add the grid-template shorthand. r=dholbert 2014-03-21 23:06:12 +08:00
Simon Sapin
c3ce91f54d Bug 981752 part 1: Add the grid-column, grid-row and grid-area shorthands. r=dholbert 2014-03-21 23:06:12 +08:00
Benoit Jacob
ae67b77a1c Bug 977757 - 1/3 - make nsCSSProps::EnabledState a bitfield - r=dbaron,bz 2014-03-07 12:14:23 -05:00
Peter Chang
a7504a1140 backout of rev 45253e02bde3, fd02f1217e4c, 75217485ce5a b=981804 2014-03-12 15:16:20 +08:00
Chris Peterson
8f8dadaf10 Bug 980810 - Part 2: Fix clang -Wstring-conversion warning in layout. r=dbaron 2014-03-07 00:53:03 -08:00
Benoit Jacob
73b34e3d33 Bug 977757 - 1/3 - make nsCSSProps::EnabledState a bitfield - r=dbaron,bz 2014-03-07 12:14:23 -05:00
Ryan VanderMeulen
c27e336485 Backed out changesets d65a803d2b9a, 9456495d6121, and 73c710ddf3d8 (bug 977757) for Gaia UI test failures.
CLOSED TREE
2014-03-06 13:10:20 -05:00
Benoit Jacob
7f3cdabc47 Bug 977757 - 1/3 - make nsCSSProps::EnabledState a bitfield - r=dbaron,bz 2014-03-06 11:38:17 -05:00
Ehsan Akhgari
68bfe70f09 Bug 927728 - Part 1: Replace PRUnichar with char16_t; r=roc
This patch was automatically generated by the following script:

#!/bin/bash
# Command to convert PRUnichar to char16_t

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*modules/libmar*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name prtypes.h \
       ! -name Char16.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert PRUnichar char16_t
2014-01-04 10:02:17 -05:00
Cameron McCormack
4afd66d2e7 Bug 731271 - Part 4: Add ability for nsCSSValues to serialize themselves in their original syntactic form. r=dbaron 2013-09-16 09:35:49 +10:00
Cameron McCormack
da34406ae7 Bug 773296 - Part 27: Support 'unset' in CSS variables. r=dbaron 2013-12-12 13:09:47 +11:00
Cameron McCormack
1c1d2c9506 Bug 773296 - Part 23: Support variables in CSSStyleDelcaration methods. r=dbaron
This adds support for custom properties on the remainder of the
CSSStyleDeclaration methods.

A shorthand that was specified using a variable reference is serialized
to its originally specified value, rather than by concatenating the
serializations of its longhand components.

A shorthand that was not specified using a variable references but which
has a component longhand that was is serialized to the empty string.
2013-12-12 13:09:46 +11:00
Cameron McCormack
62a3eadf14 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
Birunthan Mohanathas
88a0348924 Bug 713082 - Part 2: Rename Util.h to ArrayUtils.h. r=Waldo 2013-12-08 21:52:54 -05:00
Daniel Holbert
3b42b8cf68 Bug 939905: Add support for CSS "flex-flow" shorthand property. r=heycam 2013-12-05 10:57:51 -08:00
Cameron McCormack
dda8384b91 Bug 842329 - Part 3: Serialize the "all" shorthand property as the empty string unless all components are inherit/initial/unset. r=bzbarsky 2013-10-04 04:49:20 +10:00
Cameron McCormack
32f1604090 Bug 921731 - Part 9: Serialize shorthands using "unset" like those containing "inherit" or "initial". r=bzbarsky 2013-10-04 04:49:19 +10:00
Ehsan Akhgari
1089e71462 Bug 916610 - Minimize the #includes in layout/style; r=roc 2013-09-15 21:06:52 -04:00
John Daggett
25dc392786 Bug 904263 - check pref settings more efficiently. r=dbaron 2013-08-19 13:49:49 +09:00
John Daggett
912515edd4 Bug 904263 - don't set disabled subproperties within font shorthand parsing. r=dbaron 2013-08-15 09:37:57 +09:00
Masayuki Nakano
90fdab154e Bug 812995 Support 'blink' value at -moz-text-decoration-line and drop -moz-text-blink r=dbaron 2013-08-06 23:02:34 +09:00