85 Commits

Author SHA1 Message Date
dbaron%dbaron.org
44cf91f9e8 Do style resolution of later siblings required by the CSS + combinator on event state and attribute changes by changing the result of Has(Attribute|State)DependentStyle into a bitfield and setting and handling the restyle-later-siblings bit appropriately. b=15608 r+sr=bzbarsky
git-svn-id: svn://10.0.0.236/trunk@151284 18797224-902f-48f8-a5cc-f745e15eee43
2004-01-14 01:36:35 +00:00
bryner%brianryner.com
468d3e2e8d Eliminate nsIStyleSet as an XPCOM interface, making the implementation internal to layout. Frame constructor ownership moves to the pres shell, and the style set methods that forward to the frame constructor are gone. Rewrote style set sheet add/remove to reduce code size. For more details, see bug 64116. r+sr=dbaron.
git-svn-id: svn://10.0.0.236/trunk@150998 18797224-902f-48f8-a5cc-f745e15eee43
2004-01-07 22:30:53 +00:00
uid502
bdc0f5a1e4 Bug 212366. Make '-moz-opacity' behave like CSS3 opacity: it does not inherit by default, and it composites the element and all its children as a group. r+sr=dbaron
git-svn-id: svn://10.0.0.236/trunk@148696 18797224-902f-48f8-a5cc-f745e15eee43
2003-11-01 22:34:59 +00:00
dbaron%dbaron.org
220a62afce Implement element.style for XUL elements. Fully fault XUL attributes when style attribute is modified, and ensure that string and style rule versions of style attribute stay in sync. (HTML elements only store the latter.) b=7639 r+sr=bzbarsky
git-svn-id: svn://10.0.0.236/trunk@148493 18797224-902f-48f8-a5cc-f745e15eee43
2003-10-30 01:40:33 +00:00
bzbarsky%mit.edu
1c3e765c18 Don't bother reresolving style when empty stylesheets get added (eg from empty
<style> elements).  Also remove the methods for blowing away the ruletree
during a style reresolve, since ruletrees are now garbage-collected.  Bug
196557, r+sr=dbaron


git-svn-id: svn://10.0.0.236/trunk@144457 18797224-902f-48f8-a5cc-f745e15eee43
2003-07-04 01:44:24 +00:00
bsmedberg%covad.net
03384bfad0 Bug 210337 - Spring cleaning of unused XPCOM code and callers r/sr=alecf/bz
git-svn-id: svn://10.0.0.236/trunk@144063 18797224-902f-48f8-a5cc-f745e15eee43
2003-06-23 20:31:43 +00:00
dbaron%dbaron.org
bf4ec31727 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


git-svn-id: svn://10.0.0.236/trunk@143421 18797224-902f-48f8-a5cc-f745e15eee43
2003-06-07 22:14:42 +00:00
dbaron%dbaron.org
3b86a016bb 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
git-svn-id: svn://10.0.0.236/trunk@139034 18797224-902f-48f8-a5cc-f745e15eee43
2003-03-06 19:07:22 +00:00
peterv%netscape.com
c96c6fa64f Fix for bug 195153 (Remove bogus 'extern' decls from NS_New* functions.). Patch by jst, r=sicking, sr=peterv.
git-svn-id: svn://10.0.0.236/trunk@138957 18797224-902f-48f8-a5cc-f745e15eee43
2003-03-05 15:08:41 +00:00
dbaron%dbaron.org
3f0d2d6a2c Make our ignoring of properties for :first-line and :first-letter a lot closer to the spec (although still buggy). b=103189 r+sr=bzbarsky
git-svn-id: svn://10.0.0.236/trunk@138214 18797224-902f-48f8-a5cc-f745e15eee43
2003-02-22 19:20:16 +00:00
dbaron%dbaron.org
22283f6fd1 Replace nsIStyleSheet::AttributeAffectsStyle with nsIStyleRuleProcessor::HasAttributeDependentStyle. Strengthen the attribute optimization and apply it to HTML as well. b=163556 r+sr=bzbarsky
git-svn-id: svn://10.0.0.236/trunk@138196 18797224-902f-48f8-a5cc-f745e15eee43
2003-02-22 16:10:53 +00:00
dbaron%dbaron.org
e6a2b29ebf Remove nsISizeOfHandler and associated SizeOf methods. b=106792 r=bzbarsky sr=jst
git-svn-id: svn://10.0.0.236/trunk@138193 18797224-902f-48f8-a5cc-f745e15eee43
2003-02-22 15:34:38 +00:00
bryner%netscape.com
6278746fdf Phase 1 of style context deCOMtamination (bug 114713). Remove all dependencies on nsIStyleContext from outside of content and layout. Make nsIFrame::GetStyleData be a non-inline virtual function when called from outside of layout, since the nsStyleContext implementation won't be available to those callers. r=dbaron, sr=bzbarsky.
git-svn-id: svn://10.0.0.236/trunk@136056 18797224-902f-48f8-a5cc-f745e15eee43
2003-01-09 06:49:07 +00:00
dbaron%dbaron.org
30879d2c9e Bug 178643: Remove uses of NS_INIT_ISUPPORTS, since it's no longer needed. r=timeless sr=jag
git-svn-id: svn://10.0.0.236/trunk@135991 18797224-902f-48f8-a5cc-f745e15eee43
2003-01-08 19:24:38 +00:00
peterv%netscape.com
3a3c75b9f7 Fix for bug 183999 (Modernize content). r=caillon, sr=bz.
git-svn-id: svn://10.0.0.236/trunk@135128 18797224-902f-48f8-a5cc-f745e15eee43
2002-12-11 14:24:49 +00:00
bzbarsky%mit.edu
c3731640d3 Make the CSSLoader correctly order stylesheets as they are dynamically added
and removed via the DOM.  Clean up the nsIDocument stylesheet accessors.  Clean
up nsIDocumentObserver stylesheet stuff a bit.  Make style sheets visible in
the CSSOM (though not completely accessible) from the moment the load is kicked
off.  Make us have sheet objects that can be manipulated via CSSOM even for
failed loads. Bug 107567, bug 47734, bug 57225, bug 178407.
r=sicking,  sr=peterv.


git-svn-id: svn://10.0.0.236/trunk@134667 18797224-902f-48f8-a5cc-f745e15eee43
2002-12-03 05:48:14 +00:00
dbaron%fas.harvard.edu
307f43b5a1 Consolidate all CSS pseudos and split them into three atom lists to distinguish between pseudo-classes, pseudo-elements, and fake-pseudo-elements used for anonymous boxes. b=147887 r,sr=roc,bz
git-svn-id: svn://10.0.0.236/trunk@134006 18797224-902f-48f8-a5cc-f745e15eee43
2002-11-17 15:37:56 +00:00
dbaron%fas.harvard.edu
521000f98f Remove unused ability to optionally arena-allocate certain stylesheet objects. b=174256 r=kin sr=bzbarsky a=rjesup
git-svn-id: svn://10.0.0.236/trunk@131998 18797224-902f-48f8-a5cc-f745e15eee43
2002-10-14 23:57:17 +00:00
alecf%netscape.com
0a6fd820f0 re-fix bug 166147 - autoinitialize mRefCnt to 0 for more efficient constructors
r=dougt, sr=jag, this time including some CSS stuff that has 31-bit refcounts.


git-svn-id: svn://10.0.0.236/trunk@129778 18797224-902f-48f8-a5cc-f745e15eee43
2002-09-17 04:49:28 +00:00
dougt%netscape.com
e289284076 166917. Clean up xpcom SDK includes. r=rpotts@netscape.com, sr=alecf@netscape.com, a=rjesup@wgate.com
git-svn-id: svn://10.0.0.236/trunk@129050 18797224-902f-48f8-a5cc-f745e15eee43
2002-09-07 17:13:19 +00:00
dbaron%fas.harvard.edu
650a42831e Remove unused Equals and HashValue methods (methods that were once on nsIStyleRule). b=163058 r=hyatt sr=kin
git-svn-id: svn://10.0.0.236/trunk@127715 18797224-902f-48f8-a5cc-f745e15eee43
2002-08-20 19:40:23 +00:00
dbaron%fas.harvard.edu
de6516960e Handle style attribute changes in XUL through the normal style change mechanism rather than forcing a reframe. Change nsIStyledContent::WalkInlineStyleRules to nsIStyledContent::GetInlineStyleRule to simplify nsCSSFrameConstructor::AttributeChanged. b=156971 sr=hyatt r=bzbarsky
git-svn-id: svn://10.0.0.236/trunk@127460 18797224-902f-48f8-a5cc-f745e15eee43
2002-08-16 11:29:20 +00:00
dbaron%fas.harvard.edu
23762bb47e Remove unused method nsIStyleRule::GetStrength. b=162492 r=kin sr=bzbarsky
git-svn-id: svn://10.0.0.236/trunk@127259 18797224-902f-48f8-a5cc-f745e15eee43
2002-08-14 13:16:35 +00:00
seawood%netscape.com
08f53dff2a The c++ standard requires that the throw list be used when declaring functions as well as defining them.
commercial compiler fixes for bug #149032


git-svn-id: svn://10.0.0.236/trunk@124604 18797224-902f-48f8-a5cc-f745e15eee43
2002-07-03 17:14:41 +00:00
seawood%netscape.com
a7c7e77b8b 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


git-svn-id: svn://10.0.0.236/trunk@124526 18797224-902f-48f8-a5cc-f745e15eee43
2002-07-02 20:25:30 +00:00
jst%netscape.com
0e34136ef1 Fixing bug 146034. Getting rid of nsHTMLIIDs.{h,cpp}. r=jfrancis@netscape.com, sr=rpotts@netscape.com
git-svn-id: svn://10.0.0.236/trunk@122039 18797224-902f-48f8-a5cc-f745e15eee43
2002-05-23 00:00:34 +00:00
dbaron%fas.harvard.edu
1e850f52c6 Fix up and enable hierarchical :hover and remove the hacks that made :hover work for anchors without it. Pass mask rather than pseudo-class to ContentStatesChanged notifications. Optimize event state changes in the style system by passing state mask to HasStateDependentStyle and using it in HasStateDependentStyle implementations. b=5693 r=bryner, joki sr=hyatt
git-svn-id: svn://10.0.0.236/trunk@118715 18797224-902f-48f8-a5cc-f745e15eee43
2002-04-11 03:49:30 +00:00
darin%netscape.com
04849998e1 fixes bug 124042 "support internationalized URIs" r=dougt, sr=alecf, a=asa
git-svn-id: svn://10.0.0.236/trunk@115936 18797224-902f-48f8-a5cc-f745e15eee43
2002-03-06 07:48:55 +00:00
cathleen%netscape.com
ec77313291 eliminates 107 nsCRT::memset calls to use memset instead. removed nsCRT::memset() function. bug 118135 r=dp sr=brendan
git-svn-id: svn://10.0.0.236/trunk@113659 18797224-902f-48f8-a5cc-f745e15eee43
2002-02-05 01:41:13 +00:00
jaggernaut%netscape.com
436d43f211 Bug 104158: Use NS_LITERAL_STRING instead of XXXWithConversion("..."). r=bryner, rs=alecf
git-svn-id: svn://10.0.0.236/trunk@110579 18797224-902f-48f8-a5cc-f745e15eee43
2001-12-16 11:58:03 +00:00
dbaron%fas.harvard.edu
e619d6fc7c Pull computation of loop invariants for rule matching out of outer loop (over rule processors) as well, from SelectorMatchesData in nsCSSStyleSheet to RuleProcessorData in nsStyleSet. Use the RuleProcessorData structure in nsHTMLStyleSheet as well. Simplify matching of :-moz-bound-element pseudo-class. b=83836 r=waterson, pierre sr=hyatt
git-svn-id: svn://10.0.0.236/trunk@107856 18797224-902f-48f8-a5cc-f745e15eee43
2001-11-10 23:51:45 +00:00
hyatt%netscape.com
ab0e4e56d4 Fix for 104336, deCOMtaminate rulenode, rulewalker, frames, r=dbaron, sr=waterson
git-svn-id: svn://10.0.0.236/trunk@106100 18797224-902f-48f8-a5cc-f745e15eee43
2001-10-24 00:01:09 +00:00
dougt%netscape.com
1f7520e927 Extraneous Symbol Removal. Patch by Jon Smirl jonsmirl@mediaone.net. r=dougt@netscape.com, sr=alecf@netscape.com. Bug 104172, 104316, 104420, 104426, 104461, 104511, 104527
git-svn-id: svn://10.0.0.236/trunk@105810 18797224-902f-48f8-a5cc-f745e15eee43
2001-10-19 20:59:33 +00:00
dbaron%fas.harvard.edu
1382ac90eb Making debugging code be |#ifdef DEBUG|. b=91036 r=harishd sr=jst
git-svn-id: svn://10.0.0.236/trunk@105468 18797224-902f-48f8-a5cc-f745e15eee43
2001-10-16 05:31:36 +00:00
gerv%gerv.net
ed9b258739 License changes, take 2. Bug 98089. mozilla/content/.
git-svn-id: svn://10.0.0.236/trunk@103682 18797224-902f-48f8-a5cc-f745e15eee43
2001-09-25 01:32:19 +00:00
bzbarsky%mit.edu
0f2651a119 Fix the nsIDOMMediaList interface to have the right properties. Make
media rules implement nsIDOMCSSMediaRule.  Fix insertRule() to be able
to insert into the middle of a rule list.  Fix issues with stylesheets
not getting dirtied when media lists are modified.  bug 93977,
r=pierre, sr=jst


git-svn-id: svn://10.0.0.236/trunk@102234 18797224-902f-48f8-a5cc-f745e15eee43
2001-09-05 00:00:18 +00:00
dbaron%fas.harvard.edu
3485888237 Replace uses of deprecated NS_IMPL_ISUPPORTS and NS_IMPL_QUERYINTERFACE macros with NS_IMPL_{ISUPPORTS,QUERYINTERFACE}{1,0}. r=jag rs=brendan b=45797
git-svn-id: svn://10.0.0.236/trunk@101462 18797224-902f-48f8-a5cc-f745e15eee43
2001-08-21 01:48:11 +00:00
hyatt%netscape.com
b7b1cb3691 Fix for 78695 (rule matching improvements). r/sr=attinasi, jst, waterson
git-svn-id: svn://10.0.0.236/trunk@96136 18797224-902f-48f8-a5cc-f745e15eee43
2001-05-31 22:19:43 +00:00
pierre%netscape.com
287fc1dc9e 43457: change the mutable style context APIs, disable style context sharing, implement style data sharing. r=waterson.
git-svn-id: svn://10.0.0.236/trunk@93798 18797224-902f-48f8-a5cc-f745e15eee43
2001-05-03 13:20:48 +00:00
hyatt%netscape.com
3f460ba63e Fix for 67739. r=pierre,attinasi, sr=ben
git-svn-id: svn://10.0.0.236/trunk@87132 18797224-902f-48f8-a5cc-f745e15eee43
2001-02-15 21:25:31 +00:00
pierre%netscape.com
8944a57fe0 Reinstate my changes that were backed out 10 days ago. #43457 split nsStyleSpacing into 4 smaller structures: nsStyleBorder, nsStylePadding, nsStyleMargin, nsStyleOutline. r=attinasi,sr=buster.
git-svn-id: svn://10.0.0.236/trunk@86533 18797224-902f-48f8-a5cc-f745e15eee43
2001-02-07 09:57:26 +00:00
mcafee%netscape.com
644a6ffc68 Backing out pierre's change from 1/20 for performance reasons (66263). r=attinasi, a=granrose, phil
git-svn-id: svn://10.0.0.236/trunk@85463 18797224-902f-48f8-a5cc-f745e15eee43
2001-01-25 02:58:12 +00:00
pierre%netscape.com
148e913722 #43457 split nsStyleSpacing into 4 smaller structures: nsStyleBorder, nsStylePadding, nsStyleMargin, nsStyleOutline. Review=attinasi. Pending Approval: buster.
git-svn-id: svn://10.0.0.236/trunk@85210 18797224-902f-48f8-a5cc-f745e15eee43
2001-01-20 22:46:54 +00:00
rods%netscape.com
a6e0d47c5a removing most all NS_DEFINE_IID and replacing them with NS_GET_IID macros
Bug 61274, r=buster sr=waterson


git-svn-id: svn://10.0.0.236/trunk@84377 18797224-902f-48f8-a5cc-f745e15eee43
2001-01-04 20:44:42 +00:00
shaver%mozilla.org
f792546214 Significantly reduce the amount of time we blow on style reresolution by
tracking the attributes which appear in CSS selectors, and only firing
a complete reresolution when we change one of those.  In the irrelevant-attr
case, we just let the frame update itself and get on with our lives right
away.  Fixed 38378, r=brendan, booyah.

Also, when setting an attribute to the same value that it currently holds,
don't think about it especially hard, and _don't_ go anywhere near the
style code.  Fixed 21879, r=brendan, boo_yah_.


git-svn-id: svn://10.0.0.236/trunk@69948 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-16 02:43:33 +00:00
scc%netscape.com
8a7f53cc88 making string conversions explicit
git-svn-id: svn://10.0.0.236/trunk@66101 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-15 20:15:37 +00:00
attinasi%netscape.com
9657bf7bed Implemented Style Size Dump. r=rickg b=26565
git-svn-id: svn://10.0.0.236/trunk@64709 18797224-902f-48f8-a5cc-f745e15eee43
2000-03-31 07:08:36 +00:00
warren%netscape.com
d100457780 Bug 21556: Making linux be thread-safe. Making tons of classes implement threadsafe AddRef/Release. a=jar
git-svn-id: svn://10.0.0.236/trunk@62243 18797224-902f-48f8-a5cc-f745e15eee43
2000-03-05 21:26:01 +00:00
pp%ludusdesign.com
a2927ce43e Converting ::GetIID() into NS_GET_IID(). Bug #20232. r=scc, r=mozbot
git-svn-id: svn://10.0.0.236/trunk@59537 18797224-902f-48f8-a5cc-f745e15eee43
2000-02-02 22:24:56 +00:00
dmose%mozilla.org
92d791b7b0 updated license boilerplate to xPL 1.1, a=chofmann@netscape.com,r=endico@mozilla.org
git-svn-id: svn://10.0.0.236/trunk@52908 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-06 03:40:37 +00:00