Commit Graph

384 Commits

Author SHA1 Message Date
Kyle Huey
df5a32b6e5 Bug 812824: Use a clean struct for inheritance on root nodes. r=dbaron,Waldo 2012-11-28 13:21:36 -08:00
Zack Weinberg
0af062aa68 Bug 229827: escape unprintable characters in CSS parser diagnostics. r=dbaron 2012-11-16 21:53:38 -05:00
Ryan VanderMeulen
401bd9646a Backed out changesets b242651c3c1b (bug 229827), b36eaac9ecf8, and 40f38a8aa660 (bug 663291) for mochitest-3/4 failures.
CLOSED TREE
2012-11-16 16:59:38 -05:00
Zack Weinberg
dd6833d56d Bug 229827: escape unprintable characters in CSS parser diagnostics. r=dbaron
--HG--
extra : rebase_source : 9298095c2cd7669b5ca1a07cd5378a852c4a7f36
2012-11-16 15:29:21 -05:00
L. David Baron
4eb72418fe Fix CheckFontCallback to match 'rem' unit changes. (Bug 806310) r=bzbarsky 2012-11-09 20:18:36 -08:00
L. David Baron
5e73ed3046 Bug 809533, patch 3: Stop handling allocation failures in the style system that no longer need to be handled. r=bzbarsky 2012-11-09 10:30:28 -08:00
Mounir Lamouri
95886455ae Bug 737786 - 3/5 - Restrictions for ::-moz-placeholder. r=bz
The restrictions are basicially the one used for ::first-line with a few additions required to style the placeholder by the UA or for the users. See the bug comments for more details (hopefully, there will be a doc and a spec soon enough).
2012-11-09 10:25:52 +00:00
Mats Palmgren
8fc2862b38 Bug 685012 - Implement page-break-inside:avoid in the style system. r=dbaron 2012-11-08 17:09:37 +01:00
L. David Baron
addb318e8f Bug 572200, part 3: Cache data that lives in the rule tree on every relevant rule node that has a style context directly pointing to it directly. r=bzbarsky 2012-11-07 11:55:53 -08:00
L. David Baron
58f7327fc2 Bug 572200, part 2: Allow rule nodes to cache data owned by an ancestor rule node: don't destroy structs that we don't own. r=bzbarsky 2012-11-07 11:55:53 -08:00
Daniel Holbert
bf91bdf97d Bug 783415 part 1: Make "display" value of flex items compute to their blockified forms. r=dbaron 2012-11-07 11:28:59 -08:00
Jacek Szpot
0b35b0e3d8 Bug 792180 - Replace NS_{UN,}LIKELY with MOZ_{UN,}LIKELY; r=ehsan 2012-10-26 15:32:10 +02:00
L. David Baron
fe6b36ef5f Bug 804970, patch 6: Don't force rem units out of the rule tree. r=bzbarsky 2012-10-26 19:04:20 +02:00
L. David Baron
adc491234c Bug 804970, patch 5: Handle dynamic changes to the basis for 'rem' units by rebuilding all style data. r=bzbarsky 2012-10-26 19:04:20 +02:00
L. David Baron
48fdcf2bd2 Bug 804970, patch 3: Don't force vw/vh/vmin/vmax units out of the rule tree. r=bzbarsky 2012-10-26 19:04:20 +02:00
L. David Baron
6a3a6655e9 Bug 804970, patch 1: Don't force calc() units out of the rule tree. r=bzbarsky
This moves the calc() handling above the aCanStoreInRuleTree = false,
which it had no reason to be below.

calc() units are still forced out of the rule tree when there's an em,
ex, or rem unit inside the calc() structure, since aCanStoreInRuleTree
is passed through to the leaf CalcLengthWith calls.
2012-10-26 19:04:20 +02:00
Jonathan Kew
40f8726544 bug 804644 - convert Cocoa points to _un_scaled device pixels for system font sizes. r=roc 2012-10-23 21:09:23 +01:00
Seth Fowler
f07bf4e48c Bug 503720: Implement vw/vh/vmin/vmax. r=dbaron 2012-10-19 16:21:06 -07:00
Yu-Sian (Thomasy) Liu
49b91a54ac Bug 594935: Add calc to parser, do calc in PaintGradient and add stop point to HasCalc(). r=bz 2012-10-03 22:31:56 -07:00
Jonathan Kew
2c2d5f0ecf bug 674373 pt 4 - pass device-to-CSS pixel ratio to LookAndFeel code when requesting a font style. r=roc 2012-09-29 12:35:08 +01:00
Edwin Flores
8a6015cf0d Bug 719286 - Add support for -moz-objectValue keyword to CSS parser for SVG glyphs r=dbaron 2012-09-06 16:58:47 +12:00
Edwin Flores
582af889e5 Bug 719286 - Add support for -moz-objectFillOpacity and -moz-objectStrokeOpacity to CSS parser for SVG glyphs r=dbaron 2012-09-06 16:58:46 +12:00
Edwin Flores
32d64789ec Bug 719286 - Add support for objectfill and objectstroke values to CSS parser r=dbaron 2012-09-06 16:58:46 +12:00
Daniel Holbert
ac23760ca2 Bug 763689 patch 3: Support min-height:auto in computed style, and add special cases as necessary wherever it's read. r=dbaron 2012-09-04 16:26:11 -07:00
Daniel Holbert
cb09d97d7e Bug 763689 patch 2: Support min-width:auto in computed style, and add special cases as necessary wherever it's read. r=dbaron 2012-09-04 16:26:10 -07:00
Kyle Huey
1a68eab98d Bug 783162: Make mapped attributes hold the image alive. r=bz
The nsCSSValue in nsGenericHTMLElement::MapBackgroundInto is a temporary.  This causes a problem after Bug 697230 landed, because the nsCSSValue::Image we put into that value is destroyed once we're done doing style stuff.  Previously the nsImageLoader would grab the request off the nsCSSValue::Image and hold it alive.  Bug 697230 changed the behavior here; now when the nsCSSValue::Image is destroyed it tells the image loader to drop the request.  The result is that all the references to the request are dropped and the frame is never told it has a background.

The solution is to keep the nsCSSValue::Image alive longer.  This patch adds two new types of nsAttrValue.  The first is an nsCSSValue::URL.  A ParseBackgroundAttribute method is added on nsGenericHTMLElement that the relevant elements (body/td/th/table/tr/tbody/thead/tfoot) call that parses background into an nsCSSValue::URL.  The second is an nsCSSValue::Image.  nsGenericHTMLElement::MapBackgroundInto attempts to convert the nsCSSValue::URL into an nsCSSValue::Image by kicking off the image load.  The result is that image loads are only started when the element is actually visible.  This also mirrors the way background-image works.  This also allows us to fix two longstanding bugs in this code.  Since MapBackgroundInto doesn't have a pointer to the actual element, it relied on grabbing the principal of the document.  Now we can grab the principal of the node in ParseBackgroundAttribute.  MapBackgroundInto also has no way to get at the element's base URI (to honor xml:base), which is now possible in ParseBackgroundAttribute.

nsCSSValue::[Image|URL] have also been moved to be mozilla::css::[Image|URL]Value.  nsAttrValue.h is included in external linkage code, so it can't include nsCSSValue.h to get the declarations of nsCSSValue::[Image|URL], and nested classes can't be forward declared.  Moving the classes to a namespace solves the problem.

Finally some old inoperative quirks mode code was removed.  This code has done nothing since Bug 273078 was landed in 2004.
2012-08-24 10:50:49 -07:00
Ehsan Akhgari
0fd9123eac Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
This patch was generated by a script.  Here's the source of the script for
future reference:

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.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 PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t

convert PRIntn int
convert PRUintn unsigned

convert PRSize size_t

convert PROffset32 int32_t
convert PROffset64 int64_t

convert PRPtrdiff ptrdiff_t

convert PRFloat64 double
2012-08-22 11:56:38 -04:00
L. David Baron
1eef1584d8 Track whether nsStyleVisibility::mLanguage came from explicit information in the document. (Bug 702121, patch 1) r=jfkthame 2012-08-20 19:23:32 -07:00
Kyle Huey
0cc1c18795 Bug 697230: Part 1 - Centralize style image observers. r=bz 2012-08-13 15:04:19 -07:00
Jonathan Kew
83a0c3a21a bug 721750 - support text-shadow property on ::-moz-selection. r=dbaron 2012-08-04 19:52:21 +01:00
Cameron McCormack
ba7efb66ff Bug 655877 - Part 15: Don't treat SVG text frames as being positioned. r=roc 2012-08-02 21:38:50 +10:00
Scott Johnson
79055c4778 Bug 764567: Implement column-fill part of CSS3 multicol spec, now with regression fixes [r=roc]. 2012-07-31 11:21:19 -05:00
Aryeh Gregor
e806eeab4f Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
Cameron McCormack
e6e89e5e75 Bug 774968 - line-height percentage value not computed accurately. r=dbaron
--HG--
extra : rebase_source : 93885c1b2ef72d673a935c135f89cc06bc58136d
2012-07-20 07:03:35 +10:00
Boris Zbarsky
43d45b95b9 Bug 771594. Allow preference control over what CSS properties we parse. r=dbaron,dholbert 2012-07-13 19:59:05 -04:00
Masatoshi Kimura
b63f5083a9 Bug 752187 - Part 10: Implement rendering unprefixed gradients. r=dbaron 2012-07-07 10:27:08 -04:00
Masatoshi Kimura
162441c196 Bug 752187 - Part 9: Implement unprefixed radial-gradient parsing. r=dbaron 2012-07-07 10:27:08 -04:00
Masatoshi Kimura
05280fd9ca Bug 752187 - Part 6: Rename mIsToCorner to mIsLegacySyntax. r=dbaron 2012-07-07 10:27:08 -04:00
Daniel Holbert
fc1301da05 Bug 696253, patch 7: implement parsing/computation for CSS property 'flex-basis'. r=dbaron 2012-07-06 17:06:23 -07:00
Daniel Holbert
1a2b565ce1 Bug 696253, patch 6: implement parsing/computation for CSS properties 'flex-grow' and 'flex-shrink'. r=dbaron 2012-07-06 17:06:22 -07:00
Daniel Holbert
905f2b0773 Bug 696253, patch 5: implement parsing/computation for CSS property 'align-self'. r=dbaron 2012-07-06 17:06:21 -07:00
Daniel Holbert
307261d50e Bug 696253, patch 4: implement parsing/computation for CSS property 'align-items'. r=dbaron 2012-07-06 17:06:21 -07:00
Daniel Holbert
a64d2dea9d Bug 696253, patch 3: implement parsing/computation for CSS property 'flex-direction'. r=dbaron 2012-07-06 17:06:20 -07:00
Daniel Holbert
83ce4b75fe Bug 696253, patch 2: implement parsing/computation for CSS property 'order'. r=dbaron 2012-07-06 17:06:19 -07:00
Daniel Holbert
772477aae8 Bug 696253, patch 1: implement parsing/computation for CSS property 'justify-content'. r=dbaron 2012-07-06 17:06:19 -07:00
Daniel Holbert
348d6c9a3d Bug 666041 patch 2: Add "-moz-flex" & "-moz-inline-flex" values for "display" property. r=bz 2012-06-26 15:11:38 -07:00
Scott Johnson
2332c9b000 Bug 733614: Backout changes from bug 695222 for mozilla 16 branch [r=dbaron]. 2012-06-13 11:00:56 -05:00
Daniel Holbert
12f6753057 Bug 763689: Add "auto" keyword for min-height and min-width, which for now just computes to 0. r=bz 2012-06-12 10:48:20 -07:00
Nathan Froyd
df08b6c5cc Bug 674922 - report on most common objects allocated in a PresShell's arena; r=roc,njn 2012-06-06 13:35:40 -04:00
Ms2ger
19f060907a Bug 629882 - Support currentColor in the 2D canvas context; r=dbaron
This changes nsCSSParser::ParseColorString to fill in an nsCSSValue instead
of an nscolor, and exposes nsRuleNode::ComputeColor to turn this nsCSSValue
into an nscolor.

Because gradients can be used with different canvas elements in different
documents, these cannot pass useful values for nsRuleNode::ComputeColor's
aPresContext and aStyleContext arguments. This patch also changes SetColor
to deal with those parameters being null.
2012-06-06 09:36:38 +02:00