Commit Graph

576 Commits

Author SHA1 Message Date
Max Vujovic
977bf5fda4 Bug 895182 - [CSS Filters] Implement parsing for blur, brightness, contrast, grayscale, invert, opacity, saturate, sepia. Co-authored with Dirk Schulze (krit). r=heycam 2013-07-23 10:47:16 -04:00
Nicholas Cameron
45bed62648 Bug 700926; reshuffle background image drawing. r=roc 2013-07-19 20:40:02 +12:00
L. David Baron
d77798324e Back out changeset e8bf739addfa (bug 868498 patch 2) for causing bug 894931. 2013-07-18 01:09:16 -07:00
Robert O'Callahan
b76b01e157 Bug 868498. Don't reframe for changes between position:static and position:relative. r=heycam 2013-07-16 08:58:52 -04:00
Cameron McCormack
2d185977b0 Bug 842181 - Prevent text zoom from affecting SVG text. r=dbaron 2013-06-29 13:28:50 +10:00
Rick Eyre
5f179e3bf3 Bug 772321 - Implement CSS parsing of writing-mode r=dbaron 2013-05-28 12:00:49 -04:00
Scott Johnson
b9b7335dce Bug 730559: Limit the number of columns during layout of column sets to prevent hang. [r=mats]
In nsRuleNode, when we parse a number of columns from a CSS style sheet, we enforce
a rule that the number of columns cannot exceed 1000. This patch simply enforces
the same rule when we decide that the column count will be generated based on
the available width (e.g. the column-count property has a value of 'auto').
2013-05-31 10:51:43 -05:00
Jonathan Watt
e1d4c615cc Bug 875037 - Fix lots of bugs in nsStyleSVG/nsSVGStyleReset::CalcDifference so that they return the correct hints. r=roc 2013-05-24 18:31:33 +01:00
Ehsan Akhgari
210df3c23e Backed out changeset 831c1928fba9 (bug 875037) for mochitest-1 assertions on a CLOSED TREE 2013-05-24 16:03:03 -04:00
Jonathan Watt
fd5d909818 Bug 875037 - Fix lots of bugs in nsStyleSVG/nsSVGStyleReset::CalcDifference so that they return the correct hints. r=roc 2013-05-24 18:31:33 +01:00
Daniel Holbert
a80d1a2bbd Bug 864553 part 1: Remove ifdefs for MOZ_FLEXBOX and configure.in MOZ_FLEXBOX chunk. r=dbaron 2013-05-22 11:44:25 +08:00
John Daggett
0237527ef8 Bug 549861 - reland font-variant subproperties with DOM-peer review. r=khuey 2013-05-20 11:59:20 +09:00
Ms2ger
4582dd6af1 Backout bug 549861 (changesets 27fb48df15ce:7ecd4e3863b4) for insufficient review. 2013-05-19 20:23:19 +02:00
John Daggett
61b05b94d1 Bug 549861. Implement CSS parsing of font-variant-alternates. r=dbaron 2013-05-13 18:45:37 +09:00
John Daggett
bc5affcad7 Bug 549861. Parse simple font-variant subproperties. r=dbaron 2013-05-13 18:45:36 +09:00
Masatoshi Kimura
7dced5c200 Bug 859018 - Remove the MSVC exemption for FAIL_ON_WARNINGS in layout. r=dbaron 2013-04-28 19:02:35 +09:00
Masayuki Nakano
eb1db9414a Bug 857820 part.1 Drop blink effect implementation r=dbaron 2013-04-14 19:11:07 +09:00
Daniel Holbert
8530f0785b Bug 848539 part 5: Back out 6bb37077d615, bug 763689 part 2 (style-system handling for min-width:auto). r=dbaron 2013-03-27 23:33:19 -07:00
Daniel Holbert
9378c4befe Bug 848539 part 4: Back out 82f73bdb2237, bug 763689 part 3 (style-system handling for min-height:auto). r=dbaron 2013-03-27 23:33:19 -07:00
David Zbarsky
1c27c4d045 [Bug 847110] Fix up includes in layout/style r=dbaron 2013-03-02 19:31:48 -05:00
Avi Halachmi
4ebab1bc1d Bug 838758: Cache GradientStops instead of gfxPattern. r=jrmuizel
Our gfxPattern cache is currently way too specific, which causes lots of
unnecessary cache misses. The only thing that we actually need to key on is the
color stops.

This switches the cache to hold GradientStops instead of gfxPatterns. This
improves our cache hit rate and is simpler. It also avoids doing caching when
not using Azure, which currently has no benefit.

Average paint times results (in ms)
(on windows 7 x64, i7-3630qm, HD4000)
-------------------------------------
m-c
open: 3.5 close: 3.3

m-c cache-key
open: 2.6 close: 2.4

ux
open: 7.3 close: 5.2

ux cache-key
open: 6.9 close: 5.3
2013-02-15 20:54:49 +02:00
Cameron McCormack
d1ebd604ba Bug 655877 - Part 11b: Use the right hints when reflowing due to dominant-baseline change. r=jwatt 2013-02-11 17:22:16 +11:00
Seth Fowler
e16e0c6089 Bug 836124 - Replace GetCurrentFrameIsOpaque() with [noscript] FrameIsOpaque(aWhichFrame). r=joe 2013-02-04 14:22:30 -08:00
Jonathan Watt
69fde4614e Bug 835883 - Give the -moz-orient property an 'auto' value, and make that its initial value. r=dholbert. 2013-02-02 19:13:22 +01:00
L. David Baron
f54e8232e1 Bug 835169: Remove unused mapping into style of table cols attribute. r=bzbarsky 2013-01-28 21:16:22 -08:00
Mats Palmgren
7532b4e736 Bug 786533 - Replace NS_MIN/NS_MAX with std::min/std::max and #include <algorithm> where needed. r=ehsan 2013-01-15 13:22:03 +01:00
Cameron McCormack
d2bd541d5c Bug 828805 - Implement SVG paint-order property. r=bz,roc 2013-01-13 10:27:53 +11:00
Robert O'Callahan
161c2dd30a Bug 816359. Part 2: Make nsStyleDisplay::HasTransform take a frame parameter and check that the frame supports transforms. r=mats" 2012-12-31 11:45:57 +13:00
Cameron McCormack
d57e4a2d48 Bug 793617 - Implement mask-type property. r=dbaron,longsonr 2012-12-21 11:15:22 +11:00
Robert O'Callahan
7b53429aaf Bug 810470. Part 2: Change nsDisplayBackground invalidation to store and compare the background positioning rect. r=mattwoodrow 2012-11-08 10:05:32 -05:00
Mats Palmgren
26e8c5e8e6 Bug 685012 - Implement page-break-inside:avoid in the style system. r=dbaron 2012-11-08 17:09:37 +01:00
Jacek Szpot
09f9b9a1c3 Bug 792180 - Replace NS_{UN,}LIKELY with MOZ_{UN,}LIKELY; r=ehsan 2012-10-26 15:32:10 +02:00
Jeff Muizelaar
3ac9f89155 Bug 799335. Rename nsStyleImage::RequestDecode to StartDecoding. r=dholbert
Now that RequestDecode call StartDecoding this make more sense.
2012-10-12 16:04:03 -04:00
Jeff Muizelaar
dc4eb71e7c Bug 792199. Only decode visible images immediately when switching to a tab. r=joe
This creates a new method 'StartDecoding' which does a RequestDecode and some
decoding of the image.
2012-10-04 16:02:15 -04:00
Yu-Sian (Thomasy) Liu
275ff3701f 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
Timothy Nikkel
5d6b63d32b Bug 784591. Add an optional argument to the unlock image api on documents so that we can request that the image be discarded only in some situations. r=khuey 2012-10-01 12:53:57 -05:00
Isaac Aggrey
990e90e88a Bug 791906: Replace NSPR integer limit constants with stdint ones; r=ehsan 2012-09-28 01:57:33 -05:00
L. David Baron
9cf7793fcb 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
24f2fc9f96 Change some uses of nsChangeHint_ReflowFrame to check nsChangeHint_NeedReflow. (Bug 789592, patch 1) r=bzbarsky 2012-09-07 15:57:06 -07:00
L. David Baron
955068e2c5 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
48464229a5 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
db6c9df650 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
e721868899 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
2843307366 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
75fea45125 Bug 719286 - Add support for objectfill and objectstroke values to CSS parser r=dbaron 2012-09-06 16:58:46 +12:00
Daniel Holbert
995f69ff6e 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
5fba4829ef 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
40ebe5f99d Bug 761393 - Cache the gfxPatterns using an nsExpirationTracker and an hashtable. r=dbaron 2012-08-26 21:09:46 -07:00
Kyle Huey
3fa23c4692 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
243c878d26 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