354 Commits

Author SHA1 Message Date
dbaron%fas.harvard.edu
0076b3d38d Improve performance of SelectorMatches using nsIContent::HasAttr, which was added a few months ago. r=bzbarsky sr=attinasi a=asa b=128739
git-svn-id: svn://10.0.0.236/trunk@116716 18797224-902f-48f8-a5cc-f745e15eee43
2002-03-16 15:24:08 +00:00
bryner%netscape.com
22fc00b640 Hook up the :checked CSS pseudoclass for input elements and use that instead of the _moz-input-checked attribute. Bug 128947, r=jkeiser, sr=ben, a=brendan.
git-svn-id: svn://10.0.0.236/trunk@116476 18797224-902f-48f8-a5cc-f745e15eee43
2002-03-13 10:12:33 +00:00
bryner%netscape.com
97fd40e754 Changing XUL menus to use a :-moz-menuactive pseudoclass rather than a menuactive attribute for styling the active item. This will allow XBL select widgets to not modify the HTML DOM. Bug 128947, r=dbaron, sr=hyatt, a=asa.
git-svn-id: svn://10.0.0.236/trunk@116424 18797224-902f-48f8-a5cc-f745e15eee43
2002-03-12 21:49:23 +00:00
bryner%netscape.com
01634657fa - Implement the :checked CSS pseudoclass which maps to the "selected" property on option elements.
- Eliminate the _moz-option-selected attribute; move the actual selected state into the option content node.
- Change all users of _moz-option-selected to use :checked.
- Add a third parameter to nsIDocument[Observer]::ContentStatesChanged to indicate which pseudoclass changed, this is used for optimizing handling of :checked state changes.

Bug 128947, r=dbaron, sr=jst, a=asa.


git-svn-id: svn://10.0.0.236/trunk@116029 18797224-902f-48f8-a5cc-f745e15eee43
2002-03-07 03:34:29 +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
bzbarsky%mit.edu
f68919f405 Relanding the Compare --> Equals conversion. a=mcafee
git-svn-id: svn://10.0.0.236/trunk@114163 18797224-902f-48f8-a5cc-f745e15eee43
2002-02-10 15:49:46 +00:00
bzbarsky%mit.edu
2ab4074373 Testing performance impact of backout of part of patch from bug 115289.
See bug 123947 for details.


git-svn-id: svn://10.0.0.236/trunk@114146 18797224-902f-48f8-a5cc-f745e15eee43
2002-02-09 16:10:51 +00:00
bzbarsky%mit.edu
2fd80b82c9 Convert Compare() to Equals() where possible now that we can do
case-insensitive Equals().  Bug 115289, r=alecf, sr=jag


git-svn-id: svn://10.0.0.236/trunk@113665 18797224-902f-48f8-a5cc-f745e15eee43
2002-02-05 02:03:07 +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
bzbarsky%mit.edu
ad1fb22926 Change users of Length() to IsEmpty() where the code really cares about
the latter in content/.  Bug 100649, r=jag, sr=jst


git-svn-id: svn://10.0.0.236/trunk@112623 18797224-902f-48f8-a5cc-f745e15eee43
2002-01-24 02:03:19 +00:00
jaggernaut%netscape.com
576ec93128 Bug 113228: Replace ns{C}String::To{Upper,Lower}Case with global versions. r=bzbarsky, sr=jst
git-svn-id: svn://10.0.0.236/trunk@110611 18797224-902f-48f8-a5cc-f745e15eee43
2001-12-17 07:14:49 +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
b42386ef84 Bug 109431: Speed up ID selector matching, mainly by using nsDependentString instead of nsAutoString. Patch by rjesup and me. Bug 110815: Avoid an unneeded QI from nsICSSStyleRule to nsIStyleRule, which it inherits. r=jag sr=hyatt
git-svn-id: svn://10.0.0.236/trunk@108664 18797224-902f-48f8-a5cc-f745e15eee43
2001-11-21 03:30:44 +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
dbaron%fas.harvard.edu
9b135c4afe Avoid attempting to do CSS selector matching on text nodes, comments, or processing instructions by adding a 'NonElement' style resolution method that assumes that no rules match (temporarily, until we don't have style contexts for text nodes) and by cleaning code that was using textPseudo (the usual case) or passing the text node directly (only a few unusual cases). b=56117 r=hyatt sr=attinasi
git-svn-id: svn://10.0.0.236/trunk@106640 18797224-902f-48f8-a5cc-f745e15eee43
2001-10-30 06:02:05 +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
b7714209d4 Remove extra exports. patch by Jon Smirl jonsmirl@mediaone.net. r=dougt@netscape.com, sr=alecf@netscape.com
git-svn-id: svn://10.0.0.236/trunk@105813 18797224-902f-48f8-a5cc-f745e15eee43
2001-10-19 21:02:39 +00:00
bzbarsky%mit.edu
c17db72087 Last checkin was r=pierre, sr=jst
git-svn-id: svn://10.0.0.236/trunk@105770 18797224-902f-48f8-a5cc-f745e15eee43
2001-10-19 14:02:36 +00:00
bzbarsky%mit.edu
ee4bb498aa Clean up handling of quirk doctypes and case-sensitivity in the CSSOM.
Mostly just uses the nodeinfo more and combines some redundant code into
helpers. Bug 95336, bug 10622, bug 102815


git-svn-id: svn://10.0.0.236/trunk@105769 18797224-902f-48f8-a5cc-f745e15eee43
2001-10-19 13:50:30 +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
dbaron%fas.harvard.edu
7bb7b59a69 Replace uses of overloaded |fputs| and most uses of |ns[C]String::ToCString|. b=104763 r=jag rs=scc
git-svn-id: svn://10.0.0.236/trunk@105460 18797224-902f-48f8-a5cc-f745e15eee43
2001-10-16 03:53:44 +00:00
alecf%netscape.com
f7b48fa3b1 convert nsCRT::strn?cmp to Convert() for bug 100214, to depend on string rather than xpcom for case-insensitive unicode support. r=sspitzer for mail stuff, r=jag for everything else, sr=sfraser
git-svn-id: svn://10.0.0.236/trunk@105318 18797224-902f-48f8-a5cc-f745e15eee43
2001-10-13 00:16:32 +00:00
jaggernaut%netscape.com
51e0dc7a6c Bug 100476: Convert uses of member functions ToNewUnicode, ToNewCString and ToNewUTF8String to their global versions and remove support from nsCString and nsString. r=dbaron, rs=scc
git-svn-id: svn://10.0.0.236/trunk@104212 18797224-902f-48f8-a5cc-f745e15eee43
2001-09-29 08:28:41 +00:00
bzbarsky%mit.edu
316ec70207 Make setting element.style.foo just parse the value instead of creating
a property:value pair and parsing that.  Speeds up setting of
element.style.top by about 5%.  Bug 99797, r=attinasi, sr=jst


git-svn-id: svn://10.0.0.236/trunk@104060 18797224-902f-48f8-a5cc-f745e15eee43
2001-09-28 01:38: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
pierre%netscape.com
53dfaf64c7 Bug 93371 (WRMB: Treat classes case insensitively in quirks mode). Back out ianh's patch in nsCSSParser.cpp and nsHTMLAttributes.cpp. Treat classes and IDs case insensitively as described in Bug 35522. r=glazman (+dbaron/jst) sr=hyatt
git-svn-id: svn://10.0.0.236/trunk@102494 18797224-902f-48f8-a5cc-f745e15eee43
2001-09-07 00:23:37 +00:00
rjesup%wgate.com
3d0a34aaca Bug 92575: voidarray->autovoidarray changes in content/*, minus mChildren
changes in nsXULContentSink.cpp and nsGenericElement.cpp as per jst.
  r=hyatt r=pierre sr=jst


git-svn-id: svn://10.0.0.236/trunk@102430 18797224-902f-48f8-a5cc-f745e15eee43
2001-09-06 19:16:03 +00:00
bzbarsky%mit.edu
bafa24e23a Re-fix bug 93977 and fix bug 98358 (lack of underlining on links). The
CSS parser parses "foo, bar { decls }" into two separate rules -- one
for foo and one for bar.  So ParseRule() has to return an array of
rules, not just a rule.  r=dbaron, sr=jst


git-svn-id: svn://10.0.0.236/trunk@102406 18797224-902f-48f8-a5cc-f745e15eee43
2001-09-06 13:14:35 +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
bryner%netscape.com
7da361b479 Bug 66835 - fix method hiding warnings by renaming some methods on nsIContent. r=jag, sr=jst.
git-svn-id: svn://10.0.0.236/trunk@101283 18797224-902f-48f8-a5cc-f745e15eee43
2001-08-17 08:14:14 +00:00
cls%seawood.org
3b8b92a2e8 Use NS_PTR_TO_INT32 macros to do 64-bit safe pointer conversions.
Bug #20860 r=Roland.Mainz@informatik.med.uni-giessen.de sr=brendan@mozilla.org


git-svn-id: svn://10.0.0.236/trunk@101008 18797224-902f-48f8-a5cc-f745e15eee43
2001-08-14 07:59:59 +00:00
dbaron%fas.harvard.edu
2ae7573be9 Fix errors in my patch for bug 90791 that were causing a crash. b=93106 r=waterson, brendan, pierre sr=hyatt
git-svn-id: svn://10.0.0.236/trunk@100990 18797224-902f-48f8-a5cc-f745e15eee43
2001-08-14 02:54:35 +00:00
bzbarsky%mit.edu
8cca381b47 Making import rules implement the nsIDOMCSSImportRule interface. Bug 90290, r=pierre, sr=jst
git-svn-id: svn://10.0.0.236/trunk@100358 18797224-902f-48f8-a5cc-f745e15eee43
2001-08-04 21:19:53 +00:00
brendan%mozilla.org
f5bc62edea FASTLOAD_20010703_BRANCH landing, r=dbaron, sr=shaver.
git-svn-id: svn://10.0.0.236/trunk@100030 18797224-902f-48f8-a5cc-f745e15eee43
2001-07-31 19:05:34 +00:00
jst%netscape.com
21ce7f8ced Removing use of obsolete macros for defining lists of interfaces used by the DOM classinfo code. r=pollmann@netscape.com, rs=vidur@netscape.com
git-svn-id: svn://10.0.0.236/trunk@99476 18797224-902f-48f8-a5cc-f745e15eee43
2001-07-18 07:48:12 +00:00
dbaron%fas.harvard.edu
c09758cc43 Replace the mMediumCascadeTable nsHashtable with a linked list of rule cascades since searching a linked list of at most two elements (and usually just one) is *much* faster than doing a hashtable lookup. r=waterson sr=attinasi b=90791
git-svn-id: svn://10.0.0.236/trunk@99340 18797224-902f-48f8-a5cc-f745e15eee43
2001-07-16 20:59:28 +00:00
jaggernaut%netscape.com
51b17b5bf0 Bug 88413: Remove |GetUnicode()| from nsString (and replace it with |get()|). r=dbaron, rs=scc.
This removes all call-sites I can currently fix. Tomorrow I'll try to get someone to checkin my changes to security/ and I'll get some help with the Netscape side of things.

nsString::GetUnicode()'s final death-blow will be dealt soon. Please keep this in mind as you add new code :-)


git-svn-id: svn://10.0.0.236/trunk@98363 18797224-902f-48f8-a5cc-f745e15eee43
2001-06-30 11:02:25 +00:00
dbaron%fas.harvard.edu
e3ce81b2b0 Correct matching of dashmatch (|=) according to recent CSS WG discussions and fix :not() bugs with class selectors, id selectors, and $= and ^= attribute selectors. r=hixie sr=attinasi a=asa b=83616
git-svn-id: svn://10.0.0.236/trunk@97467 18797224-902f-48f8-a5cc-f745e15eee43
2001-06-19 22:46:08 +00:00
dbaron%fas.harvard.edu
d1140fa5b3 Miscellaneous performance fixes related to selector matching:
* cut in half the number of (expensive, universally hashed) selectors needed for many UA-stylesheet :link and :visited rules by implementing :-moz-any-link (bug 83484)
 * remove most of EnumerateTagRules since most of it does no useful work (bug 83506)
 * avoid refcounting of atoms for stack-based hash keys (bug 83511)
 * add logging (turned off, except for me) to evaluate effectiveness of RuleHash
 * add a namespace hash, which will be a big win once bug 35847 is fixed (bug 83497)
 * avoid repeated reallocation of mEnumList by setting the initial length to a minimum of 8
 * remove an unneeded variable in the beginning of SelectorMatches
 * fix one case in CSS error reporting (bug 65469), not part of default build
b=83482  r=attinasi@netscape.com  sr=waterson@netscape.com  a=asa@mozilla.org


git-svn-id: svn://10.0.0.236/trunk@96389 18797224-902f-48f8-a5cc-f745e15eee43
2001-06-05 01:00: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
dbaron%fas.harvard.edu
d4c259efad Work around crash by using nsSupportsArray::Clone instead of the buggy (82133) nsSupportsArray::AppendElements. Patch from glazman@netscape.com, r=dbaron, sr=attinasi, b=80057
git-svn-id: svn://10.0.0.236/trunk@95685 18797224-902f-48f8-a5cc-f745e15eee43
2001-05-22 20:53:00 +00:00
jst%netscape.com
9d299d36ce Landing the XPCDOM_20010329_BRANCH branch, changes mostly done by jband@netscape.com and jst@netscape.com, also some changes done by shaver@mozilla.org, peterv@netscape.com and markh@activestate.com. r= and sr= by vidur@netscape.com, jband@netscape.com, jst@netscpae.com, danm@netscape.com, hyatt@netscape.com, shaver@mozilla.org, dbradley@netscape.com, rpotts@netscape.com.
git-svn-id: svn://10.0.0.236/trunk@94238 18797224-902f-48f8-a5cc-f745e15eee43
2001-05-08 16:46:42 +00:00
dbaron%fas.harvard.edu
81d8f8c076 Fix OS/2 bustage. |nsISupportsArrayEnumFunc| should not have |PR_CALLBACK|.
git-svn-id: svn://10.0.0.236/trunk@93378 18797224-902f-48f8-a5cc-f745e15eee43
2001-04-28 04:30:42 +00:00
dbaron%fas.harvard.edu
6af2d87084 Fix unneeded construction of |nsAutoString|s in |SelectorMatches| by pulling one out of a loop and rewriting matching of ^= and $= CSS3 selectors to remove the other. b=77063 r=glazman@netscape.com sr=attinasi@netscape.com
Fix O(N^2) cascading by replacing insertion into one large |nsISupportsArray| with appending into a hashtable (hashed by weight) of |nsISupportsArray| and then combining those arrays into the larger array.  b=77066  r=attinasi@netscape.com  sr=waterson@netscape.com
Reduce construction of |SelectorMatchesData| by retaining (so they can be used for matching other selectors) any new ones constructed in |SelectorMatchesTree| until the one originally passed to |SelectorMatchesTree| is destroyed.  b=77090  r=attinasi@netscape.com  sr=waterson@netscape.com


git-svn-id: svn://10.0.0.236/trunk@93351 18797224-902f-48f8-a5cc-f745e15eee43
2001-04-28 02:16:16 +00:00
pierre%netscape.com
e1fa3a64af #12386 "Matching of case sensitive attribute values should be case sensitive" sr=waterson
git-svn-id: svn://10.0.0.236/trunk@92655 18797224-902f-48f8-a5cc-f745e15eee43
2001-04-18 04:36:52 +00:00
attinasi%netscape.com
f3e7b8ac13 Fix for regression: only restrict HTML content from event pseudo application. b=75823 sr=hyatt
git-svn-id: svn://10.0.0.236/trunk@92284 18797224-902f-48f8-a5cc-f745e15eee43
2001-04-14 06:34:50 +00:00
attinasi%netscape.com
28ecdbb41f 'Fixes' major performance problem with universal dynamic pseudo selectors by restricting their application in Standard mode to the same elements we restrict them to in QuirksMode. b=68821 r=waterson sr=shaver
git-svn-id: svn://10.0.0.236/trunk@92033 18797224-902f-48f8-a5cc-f745e15eee43
2001-04-11 23:47:34 +00:00
blakeross%telocity.com
f6fd365262 Implement css3 :empty selector (75186). Patch by the evil QA-turned-engineer Ian Hickson <ian@hixie.ch> who insists on using me shamelessly for my cvs account. r=pierre sr=attinasi
git-svn-id: svn://10.0.0.236/trunk@91932 18797224-902f-48f8-a5cc-f745e15eee43
2001-04-11 02:55:41 +00:00
glazman%netscape.com
c70d8d0d40 fix for :not() due to 72302; b=71647, r=pierre, sr=attinasi
git-svn-id: svn://10.0.0.236/trunk@91882 18797224-902f-48f8-a5cc-f745e15eee43
2001-04-10 13:43:20 +00:00
hyatt%netscape.com
65a76bc8a4 Fix regression to :-moz-bound-element caused by the :not checkin.
git-svn-id: svn://10.0.0.236/trunk@91706 18797224-902f-48f8-a5cc-f745e15eee43
2001-04-08 22:22:47 +00:00