Commit Graph

155 Commits

Author SHA1 Message Date
7e193db284 Remove comment about exceptions that no longer exist thanks to bug 386640. 2007-09-27 09:26:22 -07:00
15421497a3 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
8fc5bc463b 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
babae45ed6 Bug 386640: ClearStyleDataAndReflow is fundamentally broken. r+sr=bz 2007-07-25 10:14:13 -07:00
0dd5f752c3 Make aRuleDetail parameters to Compute*Data not be references. b=388546 r+sr=bzbarsky 2007-07-22 10:56:56 -07:00
98de634631 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
3ec01a1b7b 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
5a7345afe2 Make rule nodes know their level in the cascade. b=374907 r+sr=bzbarsky 2007-05-16 14:08:51 -07:00
05d338f6d2 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
7334d31070 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
8d71a18608 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
84e5a6f7e4 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
702db7be9d 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
bdeea6cda8 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
0962238501 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
5c8f6d5980 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
fbe5ccda13 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
ad7fd38f76 Fix comment. 2005-02-04 20:29:18 +00:00
dbaron@dbaron.org
fd7c5837ff Add comments. 2005-02-04 20:11:00 +00:00
bryner@brianryner.com
6cde4639f0 Change nsIPresContext to nsPresContext globally, follow-up to bug 253470. rs=roc 2004-07-31 23:15:21 +00:00
dbaron@dbaron.org
da4019813c 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
0e308c4434 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
1600f68744 Bug 245297. Add basic style system support for columns. r+sr=dbaron 2004-06-17 11:57:37 +00:00
bryner@brianryner.com
7386177ccf 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
cf0b0c064a Bug 236613: change to MPL/LGPL/GPL tri-license. 2004-04-17 21:52:36 +00:00
bryner@brianryner.com
5ddc9f91a1 More nsIPresContext deCOMtamination (bug 229371). r+sr=roc. 2004-04-13 00:28:44 +00:00
alex.fritze@crocodile-clips.com
10a947f578 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
34acfedef2 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
109f26273c 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
cc86cc627d 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
2ac380ff71 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
99d81c4dbc 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
cb886e55cc 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
dbaron@dbaron.org
887906a883 Split nsCSSDeclaration.h and .cpp into separate files for the structs (nsCSSStruct.h and .cpp) and nsCSSDeclaration. b=201681 2003-04-15 03:07:34 +00:00
bryner@netscape.com
4486f8d13d Make --disable-xul work (bug 69995). We build enough XUL to support
scrollbars unconditionally, but can now leave out heavyweight widgets like
grid, listbox, and tree.  r=bzbarsky, sr=alecf.
2003-04-11 00:56:27 +00:00
dbaron@dbaron.org
f70ad582fc Ensure that GetStyleData never returns null, even in out-of-memory, by storing a backup set of style structs to return in case of failure. b=154751 r+sr=bzbarsky 2003-03-13 15:29:36 +00:00
dbaron@dbaron.org
55bea67586 Implement garbage collection of the rule tree to fix some cases of memory growth and to allow us to move towards style rule immutability. b=117316 r+sr=bzbarsky 2003-03-06 19:14:17 +00:00
dbaron@dbaron.org
e9466869d1 Handle inline style changes by creating new style rules to wrap the modified nsCSSDeclarations, thus moving towards style rule immutability and away from property-based change hints. Patch from Boris Zbarsky <bzbarsky@mit.edu>. r=dbaron sr=roc b=171830 2003-03-06 19:07:22 +00:00
bryner@netscape.com
ba58162e96 Remove nsIStyleContext (bug 114713), r/sr=dbaron. Changed lots of methods to use nsStyleContext* or already_AddRefed<nsStyleContext> as return values, depending on whether a reference is returned. Turn on nsRefPtr (bug 104346), and change nsDerivedSafe to not declare AddRef and Release explicitly virtual, r=jag, sr=dbaron. 2003-02-22 00:32:13 +00:00
dbaron@fas.harvard.edu
53113f8eee Subclass the nsCSS* structs as nsRuleData* so members can be added to the latter without bloating the former, and to allow the former to go away eventually. Propagate whether a font family name comes from HTML through the style system and use it to set a bit on nsFont indicating that quirky behavior of Symbol fonts is acceptable. b=175372 r=bzbarsky sr=kin 2002-11-12 15:17:07 +00:00
dbaron@fas.harvard.edu
d2498b9a86 Add comments explaining lookups in nsCachedStyleData. b=156902 sr=bzbarsky 2002-08-06 13:46:35 +00:00
dbaron@fas.harvard.edu
9696d7c472 To make maintainance easier and allow more data-as-data rather than data-as-code, create a preprocessable list of style structs and use it in many places where we previously listed all (or half) of the style structs. b=155745 r=bzbarsky sr=waterson 2002-07-09 04:10:10 +00:00
seawood@netscape.com
acbfd89feb The c++ standard requires that the throw list be used when declaring functions as well as defining them.
commercial compiler fixes for bug #149032
2002-07-03 17:14:41 +00:00
seawood@netscape.com
0ae28f14fb Add CPP_THROW_NEW macro to the build system. This macro should be used when defining a local |operator new| function. It will be set to an empty throw function by default on all platforms except mac CW builds. This will allow us to not crash on systems that expect |operator new| to throw an exception by default and will suppress compiler warnings about how |operator new| should throw an exception instead of returning NULL.
Bug 149032 r=timeless sr=scc
2002-07-02 20:25:30 +00:00
hyatt@netscape.com
60eb7d740a Fix for 99344, inline styles not being recognized under certain DHTML circumstances. r=dbaron, sr=waterson, a=asa 2002-04-05 08:05:33 +00:00
dbaron@fas.harvard.edu
1a4ae0b2d3 Fix HPUX bustage. (It's right, as always. I can't static_cast to an incomplete class.) 2002-03-19 03:09:02 +00:00
dbaron@fas.harvard.edu
b0ff521b4f Fix performance problem on pages with large numbers of repeated style attributes or differing presentational HTML attributes by changing the way nsRuleNode decides whether to store children in a hashtable or linked list: decide based on the child count rather than whether the node is the root. Convert hashtable child storage from nsHashtable to PLDHashTable. b=129187 sr=brendan r=hyatt a=asa 2002-03-19 01:29:20 +00:00
dbaron@fas.harvard.edu
13c9ef743d Restore optimization of getting data from parent context only when there is actually inheritance (except correctly this time), to prevent unnecessary struct computation and creation. Rename nsRuleNode::mInheritBits to mDependentBits. Use none bits (and thus prevent struct recomputation and copying) in the case where explicit inheritance overrides a non-inherited specified value, but still only for inherited structs. Other minor cleanup. b=113098 sr=hyatt r=bzbarsky 2002-02-17 01:53:40 +00:00
blythe@netscape.com
a348c79725 Fix bug 107270
Reduce nsCSSDeclaration footprint
r=dbaron, sr=hyatt
2002-01-15 22:43:37 +00:00
sfraser@netscape.com
6f3584fd20 Fix for bug 115157 -- shrink data structures by converting PRBool to PRPackedBool. r=dp, sr=waterson 2001-12-14 23:10:42 +00:00