Commit Graph

172 Commits

Author SHA1 Message Date
Max Vujovic
d6a69e0e49 Bug 913990 - When encountering bogus URI during style computation for filter, fall back to initial value. r=dholbert 2013-10-17 14:37:57 -04:00
Dirk Schulze
27731f2af6 Bug 898361 - Implement parsing for drop-shadow. r=heycam 2013-08-05 17:02:27 +10:00
Ms2ger
32cf0a6f16 Backout changeset a58abd7408bf for mochitest and crashtest crashes. 2013-08-04 12:21:17 +02:00
Dirk Schulze
ea188a5971 Bug 898361 - Implement drop-shadow parsing for the filter property. r=heycam 2013-08-04 18:58:28 +10:00
Ehsan Akhgari
ef4b479714 Bug 872127 - Part 2: Replace mozilla/StandardInteger.h with stdint.h; r=Waldo,ted 2013-07-30 10:25:31 -04:00
Cameron McCormack
10e5ff17b2 Bug 856879 - Remove constructor arguments argument from style struct macros. r=dbaron 2013-04-02 12:45:48 +11:00
David Zbarsky
3250bd906e [Bug 847110] Fix up includes in layout/style r=dbaron 2013-03-02 19:31:48 -05:00
L. David Baron
59101dc21e Bug 781360 patch 2: Rename nsRuleNode::GetPresContext to PresContext, since it can never return null. r=dholbert 2013-02-16 13:04:54 -08:00
Cameron McCormack
4a4eda5e13 Bug 508725 - Part 2: Record on nsCSSStyleSheets whether they are for a <style scoped>. r=dbaron 2013-01-09 10:25:47 +11:00
Cameron McCormack
c067646b00 Backout bug 508725 (d267bb4b58b5, 50f71edffeb9, 6aec8e22fe60, e62e1f33958a, 0f146c435249, eb959b9f4862, 2b0ee42f3aa0, 02db01cd6796, 2ef0e517d43d, b650588e05c9 and a3c916829d56) for build failure on a CLOSED TREE. 2013-01-08 19:36:21 +11:00
Cameron McCormack
894a529cc1 Bug 508725 - Part 2: Record on nsCSSStyleSheets whether they are for a <style scoped>. r=dbaron 2013-01-08 19:09:22 +11:00
L. David Baron
cc4392ab07 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
559e6b289a Bug 572200, part 1: Make rule nodes know whether they're used directly by a style context. r=bzbarsky 2012-11-07 11:55:53 -08:00
Daniel Holbert
b4b593c4d3 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
Ehsan Akhgari
e368dc9c85 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
Aryeh Gregor
d0ad5a7d0c Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
Ms2ger
b9cdb58b83 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
Shriram Kunchanapalli
52ac1d5caf Bug 219767: Move font size functions in nsStyleUtil into nsRuleNode. r=dbaron 2012-05-31 10:09:46 +05:30
Gervase Markham
82ff7027aa Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Kyle Huey
8f79312973 Bug 718539: Followup to fix MSVC warnings. r=me 2012-05-04 12:45:03 -07:00
John Daggett
4984947d00 Bug 718539. Update font-feature-settings to latest spec syntax. r=dbaron 2012-04-26 15:24:26 +09:00
Mark Capella
bb0cb90d39 Bug 740688 - Use uintptr_t instead of PRUword, and intptr_t instead of PRWord. r=jwalden
--HG--
extra : rebase_source : 648a581323d2c2893df780f71fe34dadcc4bbaab
2012-04-11 17:17:44 -07:00
Jonathan Watt
f4f67ef82f Bug 416581, part 2 - Pay attention to the 'lang' attribute when fetching the user's font prefs for the CSS cascade. r=dbaron. 2012-01-25 23:52:26 +00:00
Jonathan Watt
f36738d918 Bug 416581, part 1 - Move mLanguage from nsStyleVisibility to nsStyleFont. r=dbaron. 2012-01-24 13:09:55 +00:00
Michael Wu
d2b70213ac Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones
--HG--
rename : tools/trace-malloc/bloatblame.c => tools/trace-malloc/bloatblame.cpp
2011-09-28 23:19:26 -07:00
Brian Birtles
3e8804de84 Bug 562815 part 6 - Check if property is cached in rule tree; r=dbaron
--HG--
extra : rebase_source : 9a7d2388bd00e2c8177cebc9d2a1339626cdd3ab
2011-08-23 08:34:12 +09:00
L. David Baron
b47daece8e Make nsRuleNode's use of font metrics for ch and ex units pass the correct language. (Bug 678671, patch 3) r=roc
This makes these users (which are exceptions within layout, although
low-level enough that it won't matter for font inflation work) call
through to GetMetricsFor explicitly with the correct language, rather
than using the broken nsPresContext::GetMetricsFor and its
charset-detected language.

This improves the correctness of our behavior for 'ch' and 'ex' CSS
units when the font selection (or defaults) are language-dependent.  It
should also reduce the number of unique sets of font metrics requested
(which helps nsFontCache effectiveness).
2011-08-14 10:08:04 -07:00
Makoto Kato
0f68dad14d Bug 660587 - Remove nsRuleNode::gLangService. r=roc 2011-05-31 14:18:50 +09:00
L. David Baron
6964725cc6 Remove nsCSSStruct.h/cpp. (Bug 645620, patch 4) r=bzbarsky 2011-03-28 16:07:26 -07:00
L. David Baron
8ff298d446 Make nsCachedStyleData store arrays of nsStyleStruct*, and use style struct IDs for faster access to those arrays. (Bug 639231, patch 3) r=bzbarsky 2011-03-17 20:14:32 -07:00
L. David Baron
ec0055aa6b Instead of stack-allocating nsRuleData* structs in separate methods for each style struct, allocate an array of nsCSSValue using alloca. (Bug 636039, patch 15) r=bzbarsky 2011-03-17 20:14:31 -07:00
L. David Baron
eaaf37ca08 Convert nsRuleNode::Compute*Data to property getters instead of accessing struct members. (Bug 636039, patch 11) r=bzbarsky 2011-03-17 20:14:31 -07:00
Boris Zbarsky
20d4516c3b Bug 625434. Make sure we don't get into a situation where we're failing to gc the ruletree for a page. r=dbaron, a=blocker 2011-01-18 21:20:35 -05:00
L. David Baron
3d7d18c200 Simplify storage of computed calc() as a result of removing min() and max(). (Bug 363249) r=bzbarsky a2.0=blocking2.0:beta6 2010-09-11 09:27:13 -07: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
L. David Baron
fb76c8e137 There's no need for a separate CoordPercentCalc implementation; ComputeCalc can handle that. (Bug 585715) r=bzbarsky a2.0=blocking2.0+ 2010-08-11 12:32:52 -07:00
L. David Baron
46944261e9 Add API to compute length, percentage or calc() style coords. (Bug 363249) r=bzbarsky 2010-07-02 21:18:55 -07:00
L. David Baron
bdaba1f3fc Add API to compute computed-value calc() expressions to lengths. (Bug 363249) r=bzbarsky 2010-07-02 21:18:55 -07:00
timeless
f3cdc36c53 Bug 334571 Coverity 702, NS_SIDES array limit check - replace NS_FOR_CSS_SIDES defines with enum. r=zwol,mats 2010-04-27 18:15:02 +02:00
timeless
aa22afa674 Bug 334571 strip trailing whitespace. r=zwol 2010-04-27 18:15:01 +02:00
Zack Weinberg
52c2d9375f Eliminate NS_HIDDEN and NS_HIDDEN_ from layout/style/. Search-and-replace plus formatting fixes. rs=bzbarsky, no bug. 2010-04-06 14:52:17 -07:00
Boris Zbarsky
59885cc01b Bug 527977 part 2. Add a way to destroy the structs in an nsInheritedStyleData without trying to deallocate the object itself. r=zwol 2010-03-02 18:27:20 -05:00
Boris Zbarsky
2e31c39bf5 Bug 527977 part 1. Remove unused ClearInheritedData functions. r=zwol 2010-03-02 18:27:20 -05:00
Robert Longson
28e410c8b6 Bug 523576 - Fix compilation with disable-svg. r=dbaron 2009-12-12 19:43:34 +00:00
Boris Zbarsky
9790daa9b2 Bug 529749. Make sure nsRuleWalker never has a null mCurrent. r=dbaron 2009-12-11 22:36:34 -08:00
Boris Zbarsky
999ecb34d4 Bug 514773. Don't trigger rulenode gc unless we have rulenodes to gc. r=dbaron 2009-09-24 13:59:43 -04:00
Boris Zbarsky
f0ebc1afd4 Bug 495798. Drop native theming for controls styled with transparent backgrounds, even if the user said to not use the page colors. r+sr=dbaron 2009-06-16 15:05:12 -07:00
Michael Ventnor
1afd316abf Bug 476738. Implement 'inset' box-shadows. r+sr=roc,r=dbaron 2009-02-10 21:45:13 +13:00
L. David Baron
8ba395c73e Rename aInherited/inherited to aCanStoreInRuleTree/canStoreInRuleTree. (Bug 476598) r+sr=bzbarsky 2009-02-04 13:24:18 -08:00
L. David Baron
69c66d75de Make the aInherited parameters to Compute*Data const. (Bug 476598) r+sr=bzbarsky 2009-02-04 13:24:18 -08:00
Keith Rarick
01dca56c79 Implement 'rem' unit from css3-values. (Bug 472195) r+sr=dbaron 2009-01-20 13:58:48 -08:00
L. David Baron
3f1a725a7f Prevent posting media query changed events during construction. (Bug 468645) r+sr=bzbarsky 2008-12-29 10:07:36 -05:00
Arpad Borsos
c72ef7d248 Bug 456388 - Remove PR_STATIC_CALLBACK and PR_CALLBACK(_DECL) from the tree; r+sr=brendan 2008-10-10 17:04:34 +02:00
L. David Baron
42047643c7 Fix warnings about breaking strict aliasing rules by making mChildren a union. (Bug 458813) r+sr=bzbarsky 2008-10-07 15:10:19 -07:00
Keith Schwarz
48a87265ac Bug 435293. Implement CSS transforms. r=dbaron,r+sr=roc 2008-09-13 21:42:11 +12:00
L. David Baron
62b65d2845 Implement Media Queries. (Bug 156716) r+sr=bzbarsky 2008-07-26 09:14:48 -07:00
L. David Baron
bb92a0b039 Make rule node children destruction happen in a queue from the root rule node (or root of the subtree being destroyed) rather than using recursion. (Bug 439184.) r+sr=bzbarsky 2008-07-13 13:57:38 -07:00
L. David Baron
f43140a296 Replace nsRuleList with a next sibling pointer on the rule node itself (saving one word in the normal linked list case, and wasting one in the hash table case). (Bug 439184.) r+sr=bzbarsky 2008-07-13 13:57:38 -07:00
Michael Ventnor
b3e218a0a8 Bug 212633 - "Add support for CSS3 box-shadow" (parsing support) [p=ventnor.bugzilla@gmail.com (Michael Ventnor) r+sr=dbaron] 2008-07-07 19:56:52 -05:00
vladimir@pobox.com
32bee1faae b=427122, padding on select elements is ignored ; r=dbaron, a=beltzner 2008-04-25 16:12:45 -07:00
vladimir@pobox.com
7ca24931ed backing out 2008-04-20 01:24:42 -07:00
vladimir@pobox.com
ff8acc97ea b=427122, padding on select elements ignored, r=dbaron,a=beltzner 2008-04-19 23:42:00 -07:00
dwitte@stanford.edu
7e454eebf6 get rid of nsStyleStruct base type. b=408933, r+sr=dbaron, a=beltzner 2008-01-10 12:56:49 -08:00
roc+@cs.cmu.edu
ab982faa16 Bug 355548. Clean up MathML's font handling by moving most of it to the style system. Creates nsMathMLElement to put functionality there. Tightens MathML attribute parsing and introduces full support for 'scriptsizemultiplier', 'scriptminsize' and their interactions with CSS font-size. r+sr=dbaron 2008-01-09 01:38:28 -08:00
roc+@cs.cmu.edu
96da482e7e backing out bug 355548 due to test failures 2008-01-08 15:11:27 -08:00
roc+@cs.cmu.edu
c816d4ca4f Bug 355548. Clean up MathML's font handling by moving most of it to the style system. Creates nsMathMLElement to put functionality there. Tightens MathML attribute parsing and introduces full support for 'scriptsizemultiplier', 'scriptminsize' and their interactions with CSS font-size. r+sr=dbaron 2008-01-08 14:36:46 -08:00
dbaron@dbaron.org
0c9f816e8a Make IsWidgetStyled use style system to really check whether author styled borders or backgrounds, rather than depending on default values in forms.css. b=240117 r+sr=bzbarsky a=roc 2007-10-08 16:11:01 -07:00
dbaron@dbaron.org
c1f73f5b72 Remove comment about exceptions that no longer exist thanks to bug 386640. 2007-09-27 09:26:22 -07:00
dbaron@dbaron.org
ee607c6642 Make SetGenericFont not use aStartStruct-based computation since it's fundamentally incompatible with it. b=216456 r+sr=bzbarsky 2007-07-25 23:32:19 -07:00
dbaron@dbaron.org
5bf1dff4fa Fix enumerated values of font-size to depend on the right preference. b=389464 r+sr=bzbarsky 2007-07-25 16:12:38 -07:00
sharparrow1@yahoo.com
2217b2847d Bug 386640: ClearStyleDataAndReflow is fundamentally broken. r+sr=bz 2007-07-25 10:14:13 -07:00
dbaron@dbaron.org
ee7b9906fd Make aRuleDetail parameters to Compute*Data not be references. b=388546 r+sr=bzbarsky 2007-07-22 10:56:56 -07:00
jwalden@mit.edu
6d7584839a Bug 348748 - Replace all instances of NS_STATIC_CAST and friends with C++ casts (and simultaneously bitrot nearly every patch in existence). r=bsmedberg on the script that did this. Tune in next time for Macro Wars: Episode II: Attack on the LL_* Macros. 2007-07-08 00:08:04 -07:00
dbaron@dbaron.org
df3358641f Implement -moz-border-start and -moz-border-end. Patch by Simon Montagu <smontagu@smontagu.org> and me. b=74880 r/sr=smontagu/dbaron 2007-07-04 11:51:16 -07:00
dbaron@dbaron.org
3546b59264 Make rule nodes know their level in the cascade. b=374907 r+sr=bzbarsky 2007-05-16 14:08:51 -07:00
dbaron@dbaron.org
7983f1a9af Reduce #include dependencies on style system headers: reduce what nsRuleData.h pulls in. b=379089 r+sr=bzbarsky 2007-04-28 09:01:24 -07:00
benjamin@smedbergs.us
baab01ada6 Bug 376636 - Building with gcc 4.3 and -pendatic fails due to extra semicolons, patch by Art Haas <ahaas@airmail.net>, rs=me 2007-04-23 07:21:53 -07:00
bzbarsky%mit.edu
0a51e9bdb4 Make the GetStyle* getters not go through GetStyleData() so they can be
faster.  Bug 360870, r+sr=dbaron
2006-12-12 17:44:45 +00:00
dbaron%dbaron.org
5ccb05fd01 nsRuleNode should not have a virtual destructor (and thus vtable pointer). b=335630 r+sr=bzbarsky 2006-04-27 20:01:59 +00:00
dbaron%dbaron.org
b699322435 Use macros for the beginning and end of nsRuleNode::Compute*Data. b=332333 r+sr=bzbarsky 2006-04-15 07:17:43 +00:00
dbaron%dbaron.org
30f8db359a File comments that show up in LXR and provide a quick summary of what's in each file. 2006-03-25 05:47:31 +00:00
dbaron%dbaron.org
94a40f887d Change the way having allow documents to use other fonts unset works: convert everything specified into either the monospace or serif/sans-serif generic depending on whether the monospace generic was specified anywhere in the list. b=159440 r+sr=bzbarsky 2006-02-11 17:41:50 +00:00
dbaron%dbaron.org
9fd5b55440 Remove comment (from bug 91054) that meant to refer to eStyleUnit_Inherit, which was removed in bug 205790. 2005-12-27 19:37:14 +00:00
dbaron%dbaron.org
28c1cdc52d More documentation and a little cleanup. b=281113 r+sr=bzbarsky (and for the previous comment change too) 2005-02-05 05:24:21 +00:00
dbaron%dbaron.org
78fd3f2b78 Fix comment. 2005-02-04 20:29:18 +00:00
dbaron%dbaron.org
78d6780bb5 Add comments. 2005-02-04 20:11:00 +00:00
bryner%brianryner.com
5c02a6978c Change nsIPresContext to nsPresContext globally, follow-up to bug 253470. rs=roc 2004-07-31 23:15:21 +00:00
dbaron%dbaron.org
cdfbc24f0a Reduce headers brought in by nsRuleNode.h. Split nsRuleData into its own file. b=64023 r+sr=bzbarsky 2004-07-20 06:11:27 +00:00
bryner%brianryner.com
23089547be Add a NS_FASTCALL macro that specifies regparm(3) and stdcall on gcc/x86 to improve performance (passing up to 3 arguments in registers instead of on the stack, and having the caller pop any stack arguments). Apply NS_FASTCALL to our most frequently called non-public methods and functions. Also add NS_CDECL to explicitly specify the default calling convention and make it part of NS_IMETHOD, since xptcall can't deal with NS_FASTCALL. Bug 249652, r=darin, sr=dbaron. 2004-07-14 22:14:34 +00:00
roc+%cs.cmu.edu
087ede0319 Bug 245297. Add basic style system support for columns. r+sr=dbaron 2004-06-17 11:57:37 +00:00
bryner%brianryner.com
13638907d1 Apply NS_HIDDEN to nsCSSValue, nsRuleNode, and nsStyleContext based on profiling data showing that these functions have very high call counts. Bug 227537, r+sr=dbaron. 2004-05-12 21:20:09 +00:00
gerv%gerv.net
9d2ee4928c Bug 236613: change to MPL/LGPL/GPL tri-license. 2004-04-17 21:52:36 +00:00
bryner%brianryner.com
0af1a79c51 More nsIPresContext deCOMtamination (bug 229371). r+sr=roc. 2004-04-13 00:28:44 +00:00
alex.fritze%crocodile-clips.com
5c676d4a47 Landing of SVG_20020806_BRANCH, Bug 182533. Refactoring of SVG backend, new GDI+ and Libart rendering
backends, text support on Windows (GDI+), rudimentary text support on Linux (libart/freetype2), presentation
attributes, lots of bug fixes (see bug 182533 for dependency list).

Not part of default build; code is #ifdef'ed out.

r=sicking, sr=jst for dom and htmlparser changes
r=bsmedberg, sr=tor for config changes
r=dbaron, sr=bzbarsky for content and layout changes
r=tor, sr=bzbarsky for gfx changes
2004-02-07 12:39:26 +00:00
dbaron%dbaron.org
474bdc807e Implement -moz-margin-start, -moz-margin-end, -moz-padding-start, and -moz-padding-end and cascade them correctly. Use them in html.css to improve default styles for lists in RTL documents. b=74880 r+sr=bzbarsky 2004-02-04 06:10:56 +00:00
dbaron%dbaron.org
5803e6024c Fix problems when using generic font when the parent font is not generic but the closest ancestor with a generic font used the same generic. Miscellaneous cleanup. b=226871 r+sr=bzbarsky a=brendan 2003-12-02 22:24:32 +00:00
dbaron%dbaron.org
35a6c43f33 Convert jump tables to if-else trees to avoid the performance cost of function pointers. b=210550 r+sr=bzbarsky 2003-07-09 03:46:27 +00:00
dbaron%dbaron.org
51e6755ccd Add nsIFrame::GetPresContext, which gets the pres context from the rule node which it gets from the style context. DeCOMtaminate nsStyleContext::GetRuleNode, nsRuleNode::GetRule, and nsRuleNode::GetPresContext. Remove unused nsRuleNode::PathContainsRule. b=208190 r+sr=roc 2003-06-20 01:22:44 +00:00
dbaron%dbaron.org
fe7914e2c9 Make CSSStyleRuleImpl immutable by changing mutation code (including some merging of code between nsDOMCSSAttributeDeclaration and DOMCSSDeclarationImpl) so that it creates a new rule for the modified declaration. Change StyleRuleChanged notification signatures, and change pres shell's handling of style rule change, addition, and removal to just do reresolution. Remove fine-grained ways of clearing style data. Change PeekStyleData so it doesn't do more work than it needs to, and can be relied on not to access rules that no longer match any content. b=188803 r+sr=bzbarsky 2003-06-18 01:59:57 +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