95 Commits

Author SHA1 Message Date
dbaron%fas.harvard.edu
f78e55d4bf Changing noisy warning I added yesterday from |#ifdef DEBUG| to |#ifdef DEBUG_dbaron|. b=110911 / 113810
git-svn-id: svn://10.0.0.236/trunk@109852 18797224-902f-48f8-a5cc-f745e15eee43
2001-12-06 19:53:37 +00:00
dbaron%fas.harvard.edu
d3f3cc3a7b Remove nsDST and convert its users (PresShell::mSubShellMap, FrameManager::mPrimaryFrameMap, and FrameManager::PropertyList::mFrameValueMap) to PLDHash. Also convert FrameManager::mPlaceholderMap to PLDHash. Give image map area structures a pointer back to their image frame rather than (mis)using the primary frame map. Change API for changing placeholder map to reflect hash entry that accesses key through value by passing only the value and not the key. Give the root frame a proper mContent. b=110911 r=attinasi sr=brendan
git-svn-id: svn://10.0.0.236/trunk@109818 18797224-902f-48f8-a5cc-f745e15eee43
2001-12-06 05:45:07 +00:00
bryner%netscape.com
955fa48f3d Bug 41119 - Don't waste time notifying the frame manager about frame destruction if it is happening from nsFrameManager::Destroy. r=dbaron, sr=waterson.
git-svn-id: svn://10.0.0.236/trunk@109419 18797224-902f-48f8-a5cc-f745e15eee43
2001-12-01 00:22:00 +00:00
hyatt%netscape.com
c0d0283f4f Perf and footprint opt. Make style re-resolution cheaper. r=glazou, sr=hewitt, bug 109261
git-svn-id: svn://10.0.0.236/trunk@108035 18797224-902f-48f8-a5cc-f745e15eee43
2001-11-14 08:19:13 +00:00
jst%netscape.com
81bf1f1956 Checking in John Keiser's <jkeiser@iname.com> fix for *tons* of form submission and <select> related bugs, see tracking bug 34297 for details. r=rods@netscape.com, sr=jst@netscape.com
git-svn-id: svn://10.0.0.236/trunk@107083 18797224-902f-48f8-a5cc-f745e15eee43
2001-11-02 07:40:01 +00:00
dbaron%fas.harvard.edu
6a5015b10c Ensure that we don't re-resolve placeholders to the style context that should be on their out-of-flow frame. Fixes autocomplete popup. b=107744 r=waterson sr=hyatt
git-svn-id: svn://10.0.0.236/trunk@107059 18797224-902f-48f8-a5cc-f745e15eee43
2001-11-02 04:14:58 +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
alecf%netscape.com
210111498e two more nsUnicharUtils.h stragglers, I think I got r=jag, sr=scc on these in a previous patch - again for bug 100214
git-svn-id: svn://10.0.0.236/trunk@106370 18797224-902f-48f8-a5cc-f745e15eee43
2001-10-26 17:51:22 +00:00
jst%netscape.com
6f8619cfba No need to be this paranoid, checking for pointers being null once is enough! Checking twise in a row is just overkill.
git-svn-id: svn://10.0.0.236/trunk@106321 18797224-902f-48f8-a5cc-f745e15eee43
2001-10-26 03:31:49 +00:00
dbaron%fas.harvard.edu
8b3489a026 Bug 86947:
Make the line list doubly linked and access it through a list class and iterators.
Stop recomputing margins on all of the children of each block in the reflow chain (which causes O(N^2) state recovery during incremental reflow).  Instead, add a second dirty bit to the lines and walk backwards through the line list to recompute vertical margins only when either dirty bit is set and the previous line was not reflowed.  Add nsIFrame::IsEmpty to identify frames through which margins collapse.
Fix O(N^2) propagation of float damage by maintaining a set of intervals damaged by floats (bug 61962) and be sure to damage the correct areas (bug 48138).
Introduce nsCollapsingMargin to do correct collapsing of combinations of positive and negative margins (bug 50142).
Clean up some odds and ends and fix another smaller O(N^2) problem in nsBlockFrame::AddFrames.
r=attinasi, rbs  sr=waterson


git-svn-id: svn://10.0.0.236/trunk@106224 18797224-902f-48f8-a5cc-f745e15eee43
2001-10-25 01:08:40 +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
62a8215278 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@106009 18797224-902f-48f8-a5cc-f745e15eee43
2001-10-23 01:37:21 +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
vidur%netscape.com
ec7aeceee0 Fixes for printing bugs 84017 and 89151. The fix for bug 84017 removes the need for a resize reflow to get form frame values to print. The restoration of these values into the new frame model is done as part of the initial reflow. The fix for bug 89151 gets rid of the extra frame model built and forces printed images to come out of the decoded image cache. r=darinf, heikki, sr=rpotts
git-svn-id: svn://10.0.0.236/trunk@104221 18797224-902f-48f8-a5cc-f745e15eee43
2001-09-29 17:50:15 +00:00
waterson%netscape.com
25df26f9d3 Bug 84645. Move XBL insertion point logic into nsCSSFrameConstructor, where it can interact nicely with continuing frames. r=dbaron, sr=hyatt
git-svn-id: svn://10.0.0.236/trunk@102820 18797224-902f-48f8-a5cc-f745e15eee43
2001-09-12 20:19:41 +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
pollmann%netscape.com
d1ecad9b81 Bug 93972: Don't save form control values in session history if they have an autocomplete attribute set to off, or if their containing form has an autocomplete attribute set to off. This is accomplished by returning an empty 'state key' which indicates that the state should not be stored in session history's hash table. r/sr=jst@netscape.com,vidur@netscape.com
git-svn-id: svn://10.0.0.236/trunk@101197 18797224-902f-48f8-a5cc-f745e15eee43
2001-08-16 07:18:24 +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
pavlov%netscape.com
460155a537 fixing bug 78690. removing old imagelib. r=jst sr=waterson
git-svn-id: svn://10.0.0.236/trunk@100670 18797224-902f-48f8-a5cc-f745e15eee43
2001-08-09 20:22:39 +00:00
hyatt%netscape.com
6206b55be6 Fix for 90081, r=dbaron, sr=attinasi
git-svn-id: svn://10.0.0.236/trunk@99897 18797224-902f-48f8-a5cc-f745e15eee43
2001-07-25 06:33:06 +00:00
hyatt%netscape.com
fda213e89d Fixes for 80512 and 83707. r=blake, sr=waterson, a=asa
git-svn-id: svn://10.0.0.236/trunk@96284 18797224-902f-48f8-a5cc-f745e15eee43
2001-06-04 00:22:43 +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
pollmann%netscape.com
161f586d22 Bug 77834: Fix problem where form control state is being restored to the wrong form control or not restored at all when going back and forth through session history. The problem was that the hash key we used was the content ID, which was not consistent from page load to page load. The fix was to key instead by index of form in document / index of control in form, with logic to fall back to content ID if we are unable to do this. r=nisheeth@netscape.com, sr=jst@netscape.com, a=drivers@mozilla.org (blizzard@mozilla.org)
git-svn-id: svn://10.0.0.236/trunk@96057 18797224-902f-48f8-a5cc-f745e15eee43
2001-05-30 11:26:21 +00:00
waterson%netscape.com
212b96a815 Bug 79508. If the computed style change is going to cause a reflow (or worse), then don't touch any continuing frames. This keeps us from queuing an incremental reflow to a continuation, but is not ideal (e.g., there may be cases where we don't properly recompute the style contexts for continuations). r=rbs, sr=attinasi
git-svn-id: svn://10.0.0.236/trunk@95817 18797224-902f-48f8-a5cc-f745e15eee43
2001-05-23 06:39:34 +00:00
waterson%netscape.com
034c7e8885 Bug 76407. Handle second CantRenderReplacedElement() request for same frame: check to see if we've already posted an event for the frame. r=dbaron, sr=attinasi, a=chofmann
git-svn-id: svn://10.0.0.236/trunk@92963 18797224-902f-48f8-a5cc-f745e15eee43
2001-04-24 00:05:33 +00:00
erik%netscape.com
dc9f2947a7 bug 71370; author=simon@softel.co.il; r=attinasi; sr=erik; implement bidi
(bidirectional text) for languages such as Arabic and Hebrew; from IBM bidi
project; not part of build yet (due to #ifdef IBMBIDI)


git-svn-id: svn://10.0.0.236/trunk@89069 18797224-902f-48f8-a5cc-f745e15eee43
2001-03-09 03:29:00 +00:00
dbaron%fas.harvard.edu
edbbd33e17 Remove attempted workaround for CantRenderReplacedElement crash that didn't fix the crash (which is now fixed the right way).
Clean up the FrameManager a bit, mainly by moving the destruction of the frame tree into the |Destroy| method rather than doing it in the destructor.  This would make it safer to convert nsIFrameManager to IDL and use the frame manager from JS.  It also reduces the risk of leaks caused by having something owned by a frame own the frame manager.  Breaking cycles in a destructor can be risky because the objects entrained by the cycle could include the object whose destructor would break the cycle.
b=65800  r=waterson@netscape.com  sr=attinasi@netscape.com


git-svn-id: svn://10.0.0.236/trunk@88603 18797224-902f-48f8-a5cc-f745e15eee43
2001-03-06 01:46:03 +00:00
pollmann%netscape.com
c7b33ed83b Bug 62713: Only save scroll position in SH if offset from origin, only put entries in state table if state was created, cleanups, r=jst@netscape.com, sr=vidur@netscape.com
git-svn-id: svn://10.0.0.236/trunk@86291 18797224-902f-48f8-a5cc-f745e15eee43
2001-02-06 02:32:04 +00:00
hyatt%netscape.com
b98496bb42 Fix for 55292, r=ben, sr=brendan
git-svn-id: svn://10.0.0.236/trunk@86010 18797224-902f-48f8-a5cc-f745e15eee43
2001-02-02 00:54:47 +00:00
dbaron%fas.harvard.edu
5f0a7ab9bd Remove trailing semicolons after all uses of MOZ_DECL_CTOR_COUNTER to quiet build warnings on Mac. b=60415 a=brendan@mozilla.org
git-svn-id: svn://10.0.0.236/trunk@85654 18797224-902f-48f8-a5cc-f745e15eee43
2001-01-27 23:06:33 +00:00
buster%netscape.com
31a79a4925 bug 56432 ()
the problem was a factorial algorithm for finding primary frames.
fixed by added a hinting mechanism that takes advantage of existing
primary frame cache, greatly reducing the cost for the common case.
r=rods
sr=waterson


git-svn-id: svn://10.0.0.236/trunk@84973 18797224-902f-48f8-a5cc-f745e15eee43
2001-01-16 22:10:04 +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
attinasi%netscape.com
a684a2fc7f Fixes regression due to Style Data sharing: forcing shared contexts to be unique now when they have to be reresolved. b=63118 r=karnaze@netscape.com a=buster@netscape.com
git-svn-id: svn://10.0.0.236/trunk@83959 18797224-902f-48f8-a5cc-f745e15eee43
2000-12-21 22:16:38 +00:00
hyatt%netscape.com
82140bea60 Fix insertion point reparentin gissue with blocks. r=hixie, a=ben
git-svn-id: svn://10.0.0.236/trunk@82968 18797224-902f-48f8-a5cc-f745e15eee43
2000-11-28 10:10:41 +00:00
hyatt%netscape.com
42a6ac59c1 Fix for 51264. r=danm, a=ben
git-svn-id: svn://10.0.0.236/trunk@82920 18797224-902f-48f8-a5cc-f745e15eee43
2000-11-27 22:00:33 +00:00
warren%netscape.com
a8b9664a8c Bug 47207. Backing out logging/PRINTF changes until we can fix stopwatch.h, introduce double parens, etc.
git-svn-id: svn://10.0.0.236/trunk@81967 18797224-902f-48f8-a5cc-f745e15eee43
2000-10-28 22:17:53 +00:00
warren%netscape.com
c6b67eceeb Bug 47207. Changing printf to PRINTF to use new logging facility. r=valeski,sr=waterson
git-svn-id: svn://10.0.0.236/trunk@81885 18797224-902f-48f8-a5cc-f745e15eee43
2000-10-27 22:43:51 +00:00
attinasi%netscape.com
49df5c9af2 Added default implementation for frames to allow a frame to specify which frame provides its parent style context. Also reworked ReResolveStyleContext and VerifyStyleTree to allow the style context tree to diverge from the frame tree. b=45210 r=karnaze
git-svn-id: svn://10.0.0.236/trunk@78919 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-12 22:47:09 +00:00
pierre%netscape.com
63613c733a Fix blocker bug #52039 (crash when resolving pseudo-style for anonymous content).
git-svn-id: svn://10.0.0.236/trunk@78710 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-11 03:58:22 +00:00
jst%netscape.com
071de302f4 Fixing nsbeta3+ bug 28277. Add a callback to nsHTMLImageElement so that we know when a image created in JavaScript has loaded (or fails to load), this is needed to support onload and onerror event fireing and also to support the '.complete' property on images create in JavaScript. r=nisheeth@netscape.com
git-svn-id: svn://10.0.0.236/trunk@77858 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-01 07:05:08 +00:00
pollmann%netscape.com
d5ebd0e9c7 Bug 32770: Save scroll position in session history r=nisheeth
git-svn-id: svn://10.0.0.236/trunk@72258 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-15 00:35:46 +00:00
attinasi%netscape.com
2faff3ea46 Removed erroneous assertion: b=38768 r=dcone
git-svn-id: svn://10.0.0.236/trunk@71735 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-07 23:05:30 +00:00
buster%netscape.com
8eb430ca4d bug 38665
r=rickg a=rickg
fixed an optimized-only crash that looks like a race condition
where we send a message containing a pointer to a frame back to
the frame manager after the frames have been deleted.


git-svn-id: svn://10.0.0.236/trunk@71499 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-05 03:37:33 +00:00
attinasi%netscape.com
11e29319e1 Added a new method GetCanvasFrame which walks down from the root frame looking for the frame that represents the canvas. b=40217 r=kmcclusk a=karnaze
git-svn-id: svn://10.0.0.236/trunk@71188 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-31 22:33:12 +00:00
attinasi%netscape.com
8ebbdd39ea Fixed a problem with the method AttributeAffectsStyle: it was erroneously ignoring the fact that HTML attributes can affect style even if there are no CSS rules with thos attributes in the selectors. Changed to restrict the selector evaluation to XML elements. r=shaver, a=karnaze, b=39642
git-svn-id: svn://10.0.0.236/trunk@70872 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-25 23:02:31 +00:00
shaver%mozilla.org
8894dc47fd make sure that style attributes get the reresolve dance
git-svn-id: svn://10.0.0.236/trunk@70111 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-16 22:05:47 +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
mkaply%us.ibm.com
de7be3a9e5 # 34082
r= troy
OS/2 bring up continues - PR_CALLBACKs for VisualAge


git-svn-id: svn://10.0.0.236/trunk@67947 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-02 23:07:11 +00:00
attinasi%netscape.com
f07445d22b Fixed PseudoStyle resolution for primary style context in ReResolveStyleContext: was passing child-content when it should be passing parent-content. r=pierre
git-svn-id: svn://10.0.0.236/trunk@66898 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-23 03:49:19 +00:00
nisheeth%netscape.com
68adc31658 Fix for bug 30958: Reflow commands are now processed asynchronously all the time. The semantics of the API for queuing and processing reflow commands has changed. Now, AppendReflowCommand() initiates an asynchronous reflow event and all reflow command processing happens when that event fires. It is no longer possible for consumers outside the presentation shell to call ProcessReflowCommands() synchronously. Because of this change, reflow locks are no longer needed and have been removed.
git-svn-id: svn://10.0.0.236/trunk@66183 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-17 07:13:57 +00:00