Commit Graph

217 Commits

Author SHA1 Message Date
Robert O'Callahan
13041e1a84 Bug 772726. Part 13: Fix handling of transforms in gfxTextObjectPaint. r=eflores,jwatt
gfxTextObjectPaint::GetFillPattern/GetStrokePattern should take the destination's CTM
as a parameter in order to set up the pattern matrix correctly, since the pattern matrix
is combined with the CTM by cairo/Thebes --- but we want the pattern rendering to be
independendt of the CTM, instead depending only on the TM set up when we initialized
the gfxTextObjectPaint.
We make SVGTextObjectPaint store matrices that map device space to pattern space.
2012-09-12 17:13:12 +12:00
Chris Lord
6b2dc34a0b Bug 786502 - Separate background layers into separate items. r=roc
Separate out background layers into separate display-list items, so that
backgrounds that are a mix of fixed and non-fixed layers will be treated
individually.
2012-09-13 11:34:23 +01:00
L. David Baron
f646baaa52 Rename nsChangeHint_ReflowFrame to nsChangeHint_AllReflowHints to make it clearer that it's the one that contains multiple bits. (Bug 789592, patch 2) r=bzbarsky 2012-09-07 15:57:06 -07:00
L. David Baron
71132a9a8d Remove ForceCompare methods from style structs. (Bug 779968, patch 7) r=bzbarsky 2012-09-07 10:13:36 -07:00
L. David Baron
e5c1596389 Refix bug 731521 in the new setup for forcing comparison in nsStyleContext::CalcDifference, since we can no longer rely on nsStyleBorder::ForceCompare. (Bug 779968, patch 5) r=bzbarsky 2012-09-07 10:13:36 -07:00
L. David Baron
c0a7826aa0 Move nsStyleStruct MaxDifference methods inline, and make them available unconditionally rather than DEBUG-only. (Bug 779968, patch 1) r=bzbarsky 2012-09-07 10:13:36 -07:00
Cameron McCormack
7b1c6a96f0 Bug 655877 - Part 23a: Add white-space:-moz-pre-discard-newlines value with white space collapsing behavior like SVG's xml:space="preserve". r=roc,dbaron 2012-09-07 15:42:19 +10: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
Paul Adenot
a29fbcc5af Bug 761393 - Cache the gfxPatterns using an nsExpirationTracker and an hashtable. r=dbaron 2012-08-26 21:09:46 -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
Cameron McCormack
7ba6d92396 Bug 655877 - Part 27: Ignore text-shadow in SVG text frames. r=roc 2012-08-08 21:37:13 +10:00
Cameron McCormack
c819a0d0ac Bug 655877 - Part 16: Treat all values of display other than 'none' as 'inline' in SVG text frames. r=roc 2012-08-02 21:38:51 +10: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
Cameron McCormack
f41c8a5fe8 Bug 655877 - Part 14: Ignore float in SVG text frames. r=roc 2012-08-02 21:38:49 +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
Jonathan Watt
2e72406ef8 Bug 775304 - Don't visit the descendant frames for the nsChangeHint_UpdateEffects hint. r=roc, r=dbaron.
--HG--
extra : rebase_source : 11996bd6194d62f98eba81d5e3a13d29eaacd62b
2012-07-19 15:44:04 -04:00
Rafael Ávila de Espíndola
e2ca4c3e0c Bug 774022 - Remove extra ;. r=dbaron. 2012-07-15 00:15:35 -04:00
Masatoshi Kimura
b63f5083a9 Bug 752187 - Part 10: Implement rendering unprefixed gradients. 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
L. David Baron
06fa5d4558 Rename nsStyleBorder::GetActualBorderWidth to GetComputedBorderWidth. (Bug 713643, patch 4) r=bzbarsky 2012-05-30 22:19:49 -07:00
L. David Baron
09d883079b Remove nsStyleBorder::GetActualBorder, since it now does the same thing as nsStyleBorder::GetComputedBorder. (Bug 713643, patch 3) r=bzbarsky 2012-05-30 22:19:49 -07:00
Gervase Markham
ca171eec44 Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Robert Longson
3ca6774243 Bug 528332 - Implement non-scaling-stroke vector-effect. Part 1 - style system changes r=dbaron 2012-05-18 09:33:40 +01:00
Makoto Kato
ae4279cc0e Bug 249159 - Part 2 Implement CSS3 Text word-break property. r=dbaron, smontagu 2012-05-07 12:18:23 -07:00
Nathan Froyd
15633b7499 Bug 746276 - pack style structures more carefully; r=bz 2012-04-17 15:22:49 -04:00
Robert O'Callahan
dcc4fc6d0f Bug 735898. Part 7: Remove expensive nsIFrame::HasBorder checks, just check style instead. r=dbaron,a=blocking-fennec 2012-04-18 17:14:31 +12:00
Robert O'Callahan
99b4ec2a83 Bug 735898. Part 4: Create Inner/Outer box-shadow items only if we actually have inset/outset shadows. r=mattwoodrow 2012-04-16 17:43:33 +12:00
Boris Zbarsky
4beec41490 Bug 731521. Computed border on our descendants can change due to a change of our specified border styles even if our computed border did not change. r=dbaron 2012-04-05 13:14:54 -04:00
Daniel Holbert
ef60538add (no bug) Fix alignment of member vars mClip, mClipFlags in nsStyleDisplay class definition. whitespace-only, DONTBUILD 2012-03-15 18:13:08 -07:00
Matt Woodrow
f0d02037a5 Bug 730166 - Mark frames with a hidden backface as transformed. r=roc 2012-03-12 15:03:29 +13:00
Lazar Sumar
da2c684917 Bug 548375 - Implement css3-background background-repeat property two value syntax. r=dbaron 2012-02-24 21:23:14 -08:00
Jonathan Watt
cb807222d1 Bug 416581, part 1 - Move mLanguage from nsStyleVisibility to nsStyleFont. r=dbaron. 2012-01-24 13:09:55 +00:00
Mats Palmgren
9d52d983fd Bug 524925 - Consolidate overflow clipping checks to nsFrame::ApplyOverflowClipping(); and fix some code style nits. part=5/6 r=roc 2012-01-18 21:04:51 +01:00
Simon Montagu
7b2f366751 Implement text-align-last. Bug 536557, r=dbaron 2012-01-12 19:52:21 +02:00
Ed Morley
097cd18f1b Backout 6605cc311ec5 & 9217303c2e5c (bug 536557) for M4 orange 2012-01-12 15:33:00 +00:00