168 Commits

Author SHA1 Message Date
bzbarsky%mit.edu
b74edc231a Combine WalkRules and UseDocumentRules into one function. Bug 244252,
r=bryner, sr=dbaron


git-svn-id: svn://10.0.0.236/trunk@162054 18797224-902f-48f8-a5cc-f745e15eee43
2004-09-10 04:57:30 +00:00
tor%cs.brown.edu
8f57a74d59 Bug 254771 - Remove AssertNoCSSRules(lastPresHintRN, lastAgentRN) from
nsStyleSet::FileRules.  Patch by jonathan.watt@strath.ac.uk, r=bz, sr=dbaron


git-svn-id: svn://10.0.0.236/trunk@160607 18797224-902f-48f8-a5cc-f745e15eee43
2004-08-10 15:59:30 +00:00
dbaron%dbaron.org
3ea4fea687 Implement @-moz-document at-rule for site-specific rules, particularly in user stylesheets. b=238099 r+sr=bzbarsky
git-svn-id: svn://10.0.0.236/trunk@160406 18797224-902f-48f8-a5cc-f745e15eee43
2004-08-05 18:26:14 +00:00
neil%parkwaycc.co.uk
0bbab9b402 Bug 32372 should be possible to completely disable CSS p=fantasai@inkedblade.net r=me (xpfe) r/sr=dbaron
git-svn-id: svn://10.0.0.236/trunk@160395 18797224-902f-48f8-a5cc-f745e15eee43
2004-08-05 11:38:42 +00:00
bryner%brianryner.com
865734bf2f Change nsIPresContext to nsPresContext globally, follow-up to bug 253470. rs=roc
git-svn-id: svn://10.0.0.236/trunk@160184 18797224-902f-48f8-a5cc-f745e15eee43
2004-07-31 23:15:21 +00:00
dbaron%dbaron.org
59572fab24 Move things that aren't author stylesheets out of nsDocument's mStyleSheets array to simplify stylesheet management code. Add a level of the cascade for style attributes and ensure that there's only one rule processor per level of the cascade, and simplify the logic of nsCSSRuleProcessor creation. b=252578 r+sr=bzbarsky
git-svn-id: svn://10.0.0.236/trunk@159965 18797224-902f-48f8-a5cc-f745e15eee43
2004-07-28 07:08:41 +00:00
bzbarsky%mit.edu
1b04542f5d Fix preshints in anonymous content some more (by moving all document sheet
styleset munging out of the document viewer and into the document and splitting
out the preshint levels completely from the other CSS levels).  Bug 234861,
r+sr=dbaron


git-svn-id: svn://10.0.0.236/trunk@159283 18797224-902f-48f8-a5cc-f745e15eee43
2004-07-15 20:30:30 +00:00
bzbarsky%mit.edu
c0cd0937ba Move presentation attributes into the UA level in non-HTML documents and a
separate preshint level in HTML.  Bug 234861, r=dbaron, sr=jst


git-svn-id: svn://10.0.0.236/trunk@155949 18797224-902f-48f8-a5cc-f745e15eee43
2004-05-05 00:30:57 +00:00
gerv%gerv.net
98831918fc Bug 236613: change to MPL/LGPL/GPL tri-license.
git-svn-id: svn://10.0.0.236/trunk@155044 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-17 21:52:36 +00:00
bryner%brianryner.com
e46f7c8143 More nsIPresContext deCOMtamination (bug 229371). Removed GetBaseURL, rename GetMedium to Medium and inline it, remove virtual style resolution methods that forward to style set (callers will call style set methods directly). Removed PresContext parameter to StyleSet style resolution functions. r+sr=dbaron.
git-svn-id: svn://10.0.0.236/trunk@151927 18797224-902f-48f8-a5cc-f745e15eee43
2004-01-28 00:18:22 +00:00
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
a607b89df2 Don't create new rule processors when a style sheet is enabled or disabled, just clear the rule cascade on the existing processors. Bug 230651, r=dbaron, sr=bzbarsky.
git-svn-id: svn://10.0.0.236/trunk@151243 18797224-902f-48f8-a5cc-f745e15eee43
2004-01-13 02:19:28 +00:00
bzbarsky%mit.edu
cd70a3e4ce Fix regression bug 230620. r+sr=dbaron
git-svn-id: svn://10.0.0.236/trunk@151185 18797224-902f-48f8-a5cc-f745e15eee43
2004-01-11 22:03:41 +00:00
bryner%brianryner.com
9dfcd977cb Additional cleanup related to bug 64116. r=bzbarsky.
git-svn-id: svn://10.0.0.236/trunk@151039 18797224-902f-48f8-a5cc-f745e15eee43
2004-01-08 19:23:12 +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
bryner%brianryner.com
b5347dd60c Change all callers of nsIPresContext::GetShell() to use the non-refcounting versions. Most callers now use PresShell(), a few that were checking for null conditions are using GetPresShell() -- this will be remedied once we can ensure that a prescontext never has a null pres shell. Bug 227690, r+sr=bzbarsky.
git-svn-id: svn://10.0.0.236/trunk@150598 18797224-902f-48f8-a5cc-f745e15eee43
2003-12-21 05:36:36 +00:00
bryner%brianryner.com
eeddf02bde deCOMtaminate nsIDocument by changing methods to use return value instead of out-params, eliminating unused nsresult return values, moving some members to nsIDocument and inlining the getters/setters. Bug 222134, r=bzbarsky, sr=jst.
git-svn-id: svn://10.0.0.236/trunk@148257 18797224-902f-48f8-a5cc-f745e15eee43
2003-10-22 06:09:48 +00:00
uid502
f97b0819f2 Bug 165149. More cleanup. Make nsStyleContext::GetPseudoType return a weak pointer. Also remove unnecessary arguments to nsHTMLContainerFrame::CreateViewForFrame. r+sr=bzbarsky
git-svn-id: svn://10.0.0.236/trunk@148055 18797224-902f-48f8-a5cc-f745e15eee43
2003-10-17 02:38:37 +00:00
bsmedberg%covad.net
1b71e7ac3e Bug 179834. Separate application resources and GRE resources. r=darin sr=dougt
git-svn-id: svn://10.0.0.236/trunk@146844 18797224-902f-48f8-a5cc-f745e15eee43
2003-09-13 17:55:56 +00:00
dbaron%dbaron.org
593f58592d Remove hint parameter from AttributeChanged methods and simplify style hint mechanism. b=211308 r+sr=bzbarsky
git-svn-id: svn://10.0.0.236/trunk@144735 18797224-902f-48f8-a5cc-f745e15eee43
2003-07-11 21:16:12 +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
dbaron%dbaron.org
4f6b46a91e 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
git-svn-id: svn://10.0.0.236/trunk@143968 18797224-902f-48f8-a5cc-f745e15eee43
2003-06-20 01:22:44 +00:00
dbaron%dbaron.org
906d582953 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
git-svn-id: svn://10.0.0.236/trunk@143831 18797224-902f-48f8-a5cc-f745e15eee43
2003-06-18 01:59:57 +00:00
dbaron%dbaron.org
69da9d4a19 Clean up API (and its callers) for getting style data: remove unneeded null checks and switch to new inline member functions (one for each struct) that return values. b=197205 r+sr=roc a=brendan
git-svn-id: svn://10.0.0.236/trunk@142488 18797224-902f-48f8-a5cc-f745e15eee43
2003-05-15 03:42:21 +00:00
roc+%cs.cmu.edu
d4ac9a5795 Bug 126263. Whack comboboxes/listboxes to use Gfx scrollbars. Also, make scrollbars attach their XBL content only when they become visible, to avoid pageload hit. r+sr=dbaron
git-svn-id: svn://10.0.0.236/trunk@140858 18797224-902f-48f8-a5cc-f745e15eee43
2003-04-08 20:50:57 +00:00
bzbarsky%mit.edu
3bd333c19e Remove some style-data-clearing functions that no one uses and that don't do
the right thing anyway.  Bug 169989, r+sr=dbaron


git-svn-id: svn://10.0.0.236/trunk@139391 18797224-902f-48f8-a5cc-f745e15eee43
2003-03-13 18:58:54 +00:00
dbaron%dbaron.org
efc8215ab8 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
git-svn-id: svn://10.0.0.236/trunk@139384 18797224-902f-48f8-a5cc-f745e15eee43
2003-03-13 15:29:36 +00:00
dbaron%dbaron.org
089db98924 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
git-svn-id: svn://10.0.0.236/trunk@139035 18797224-902f-48f8-a5cc-f745e15eee43
2003-03-06 19:14:17 +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
dc1497f24d Make ProbePseudoStyleFor return null whenever :before and :after aren't displayed so that we don't try to reframe constantly in certain cases, preventing link clicking from working. b=188525 r+sr=bzbarsky
git-svn-id: svn://10.0.0.236/trunk@138300 18797224-902f-48f8-a5cc-f745e15eee43
2003-02-23 17:28:25 +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
c44337949a 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.
git-svn-id: svn://10.0.0.236/trunk@138129 18797224-902f-48f8-a5cc-f745e15eee43
2003-02-22 00:32:13 +00:00
dbaron%dbaron.org
2d204ffc53 Change |DEBUG_dbaron| to |DEBUG_dbaron_off| for stuff that I don't want to see anymore.
git-svn-id: svn://10.0.0.236/trunk@136422 18797224-902f-48f8-a5cc-f745e15eee43
2003-01-16 19:21:23 +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
dbaron%fas.harvard.edu
628288dc8a Fix build bustage inside |#ifdef DEBUG_dbaron|. (Not part of build.)
git-svn-id: svn://10.0.0.236/trunk@134884 18797224-902f-48f8-a5cc-f745e15eee43
2002-12-06 04:42: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
bzbarsky%mit.edu
8e9f040f59 Make GetImportantRule and GetISupportsValue return already_AddRefed.
Bug 171808, r=jkeiser, sr=dbaron


git-svn-id: svn://10.0.0.236/trunk@131534 18797224-902f-48f8-a5cc-f745e15eee43
2002-10-09 01:59:43 +00:00
bzbarsky%mit.edu
a70a392a2c Make GetParent on nsStyleContext return an
already_AddRefed<nsIStyleContext>.  Bug 171808, r=jkeiser, sr=dbaron


git-svn-id: svn://10.0.0.236/trunk@131531 18797224-902f-48f8-a5cc-f745e15eee43
2002-10-09 01:46:15 +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
roc+%cs.cmu.edu
c6bb83f66a Bug 160936. Add type nsChangeHint for style hints. Make it a set of bits. Make sure an NS_STYLE_HINT_REFLOW always also does a repaint of the frame. r=dbaron,sr=kin
git-svn-id: svn://10.0.0.236/trunk@128041 18797224-902f-48f8-a5cc-f745e15eee43
2002-08-24 14:41:28 +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
dbaron%fas.harvard.edu
268cd40267 Make quirk stylesheet assertion |#ifdef DEBUG_dbaron| until I figure out why it's firing. b=147691 r=hwaara sr=waterson
git-svn-id: svn://10.0.0.236/trunk@122569 18797224-902f-48f8-a5cc-f745e15eee43
2002-06-03 18:26:18 +00:00
dbaron%fas.harvard.edu
36706675ec Ensure that the quirks stylesheet is enabled/disabled before we start creating frames so that we don't have to build the rule cascade twice. Remove old compatibility mode pref that only controlled a small part of what it should have. b=141261 sr=waterson r=jst
git-svn-id: svn://10.0.0.236/trunk@122112 18797224-902f-48f8-a5cc-f745e15eee43
2002-05-23 23:09:31 +00:00
dbaron%fas.harvard.edu
a1c65dd9f5 Fix event state changes on some UI buttons by not overwriting a true result from HasStateDependentStyle with a false one. b=137067 r=bzbarsky sr=waterson
git-svn-id: svn://10.0.0.236/trunk@118997 18797224-902f-48f8-a5cc-f745e15eee43
2002-04-15 22:28:54 +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