283 Commits

Author SHA1 Message Date
aaronl%netscape.com
54113de18f Bug 160793. Active Accessibility: support broken images. r=kyle, sr=hewitt
git-svn-id: svn://10.0.0.236/trunk@126976 18797224-902f-48f8-a5cc-f745e15eee43
2002-08-10 07:59:44 +00:00
kin%netscape.com
73a7e6dade Fix for bug 157055 (Text doesn't show up on Lycos mail front page (layout broken by focus))
Removed |!aReflowState.path->mReflowCommand| check from |if| condition for the first block that attempts to incrementally reflow the block's absolute children.

This was preventing us from properly reflowing an absolute positioned child or one its children when the current reflow path tree contained both a reflow command targeted at the block and one targeted at the aboslutely positioned child or one of its children. This check shouldn't be necessary since nsAbsoluteContainingBlock::IncrementalReflow() does the necessary checks to see if it really should reflow any of the absolute children.

r=karnaze@netscape.com,waterson@netscape.com  sr=dbaron@fas.harvard.edu   a=asa@mozilla.org


git-svn-id: svn://10.0.0.236/trunk@125984 18797224-902f-48f8-a5cc-f745e15eee43
2002-07-29 04:19:15 +00:00
karnaze%netscape.com
ed50f0e383 bug 154741 - use macros instead of NS_FRAME_COMPLETE, a=asa, sr=kin, r=alexsavulov.
git-svn-id: svn://10.0.0.236/trunk@125215 18797224-902f-48f8-a5cc-f745e15eee43
2002-07-15 14:46:01 +00:00
dbaron%fas.harvard.edu
7c4652cc16 Split strict mode into almost-standards and full-standards mode, where the only quirk in almost standards mode is the quirky inline box model. Remove previous fix for bug 151620. Tweak mode detection to use almost-standards for XHTML Transitional, HTML 4.01 transitional with system ID, and for IBM system DOCTYPE. b=153032 r=karnaze, bzbarsky, harishd sr=waterson
git-svn-id: svn://10.0.0.236/trunk@124017 18797224-902f-48f8-a5cc-f745e15eee43
2002-06-25 21:16:17 +00:00
karnaze%netscape.com
54191082bf bug 148399 - fix places where patch in bug 145305 incorrectly changed checks for NS_FRAME_COMPLETE to use NS_FRAME_IS_NOT_COMPLETE macro. sr=kin, r=alexsavulov
git-svn-id: svn://10.0.0.236/trunk@123317 18797224-902f-48f8-a5cc-f745e15eee43
2002-06-14 14:40:02 +00:00
dbaron%fas.harvard.edu
f06e55f876 Fix performance problem on home.netscape.com: Don't do full reflow of all absolutely positioned elements whose containing block is on the path to the target of an incremental reflow. b=146831 sr=waterson r=kin
git-svn-id: svn://10.0.0.236/trunk@123125 18797224-902f-48f8-a5cc-f745e15eee43
2002-06-12 03:21:00 +00:00
karnaze%netscape.com
49e0a9f4cb bug 145305 - split floaters during printing. sr=attinasi, r=alexsavulov.
git-svn-id: svn://10.0.0.236/trunk@122236 18797224-902f-48f8-a5cc-f745e15eee43
2002-05-28 22:50:43 +00:00
shanjian%netscape.com
a9c700ad59 #142562 problem with <td align=right or align=center
We are observing langGroup in some place while ignor it in others. This patch
make all font metrics call consistent. nsIRenderingContext API is change to
make things neat.
r=rbs, sr=waterson


git-svn-id: svn://10.0.0.236/trunk@122131 18797224-902f-48f8-a5cc-f745e15eee43
2002-05-24 20:11:14 +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
waterson%netscape.com
5bae3657e6 Bug 129115. Change the reflow path from a list structure to a tree structure to amortize state recovery and damage propagation costs. Eliminate table timeout reflows. r=kin,karnaze,rods,rbs; sr=attinasi
git-svn-id: svn://10.0.0.236/trunk@121265 18797224-902f-48f8-a5cc-f745e15eee43
2002-05-10 18:22:41 +00:00
dbaron%fas.harvard.edu
94075d45c2 Remove |aForceUnique| parameter from style context resolving methods, and corresponding flag from nsStyleContext, since the only caller was ReResolveStyleContext (on the assumption that other callers used it). Allow ReResolveStyleContext to benefit from FindChildWithRules and allow it to re-resolve to the same tree even when called on the root style context. b=133821 r=attinasi sr=hyatt a=asa
git-svn-id: svn://10.0.0.236/trunk@117795 18797224-902f-48f8-a5cc-f745e15eee43
2002-03-31 16:59:00 +00:00
attinasi%netscape.com
d0a0308d7e Patched topcrash sites: checking for null before deref. b=121444 r=kmcclusk sr=roc+moz a=asa (drivers)
git-svn-id: svn://10.0.0.236/trunk@117450 18797224-902f-48f8-a5cc-f745e15eee43
2002-03-26 01:22:31 +00:00
kin%netscape.com
39fbbae643 Fix for bug 102615: After changing font color, backspacing
to a previous line does not let caret
                    update position

Modified RemoveFrame() so that it generates a reflow
command when removing a <br> from an inline with a next-in-flow.

r=dbaron@fas.harvard.edu  sr=attinasi@netscape.com  a=scc@mozilla.org


git-svn-id: svn://10.0.0.236/trunk@116937 18797224-902f-48f8-a5cc-f745e15eee43
2002-03-20 01:44:43 +00:00
timeless%mac.com
21c081c8bc Bugzilla Bug 106386 rid source of these misspellings: persistant persistance priviledge protocal editting editted targetted targetting
r='s from many people. sr=jst


git-svn-id: svn://10.0.0.236/trunk@111049 18797224-902f-48f8-a5cc-f745e15eee43
2001-12-23 23:23:41 +00:00
karnaze%netscape.com
65fe290a5b bug 103925 (2nd patch) - flag pixel rounding errors in display reflow debugging. sr=attinasi, r=bernd
git-svn-id: svn://10.0.0.236/trunk@108053 18797224-902f-48f8-a5cc-f745e15eee43
2001-11-14 13:40:03 +00:00
bzbarsky%mit.edu
068756d821 Use NS_LITERAL_STRING instead of NS_ConvertASCIItoUCS2 where possible
(i.e. where the string is a literal).  Bug 104159, r=jag, sr=alecf


git-svn-id: svn://10.0.0.236/trunk@107987 18797224-902f-48f8-a5cc-f745e15eee43
2001-11-14 01:33:42 +00:00
karnaze%netscape.com
4ff0e5cecb bug 103925 - general reflow debugging capability. sr=attinasi, r=alexsavulov
git-svn-id: svn://10.0.0.236/trunk@106524 18797224-902f-48f8-a5cc-f745e15eee43
2001-10-29 01:43:59 +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
gerv%gerv.net
13afb6d0f9 Relicensing Round 1, Take 2. Most C-like NPL files -> NPL/GPL/LGPL. Bug 98089.
git-svn-id: svn://10.0.0.236/trunk@104119 18797224-902f-48f8-a5cc-f745e15eee43
2001-09-28 20:14:13 +00:00
waterson%netscape.com
e26708f220 Bug 59200. Merge floater reflow and placement into FlowAndPlaceFloater() to deal with the fact that a floater may need to be reflowed as its 'pushed' to a new location. For auto-width floaters, ensure that the floater is not flowed at a width less than its max-element-size. Enforce CSS2 section 9.5.1 rule [2] by maintaining mLastFloaterY in the reflow state. r=rbs, sr=attinasi.
git-svn-id: svn://10.0.0.236/trunk@95630 18797224-902f-48f8-a5cc-f745e15eee43
2001-05-21 23:03:46 +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
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
buster%netscape.com
f407725c66 bug 28811
r=karnaze
The problem was we were over-eager in optimizing away a resize reflow for lines
that contain %-aware children.  We were only looking at the first-level children
of a line, not all the children.  Now, we compute a bit for each inline container
based on it's children, true if any of them are %-aware wrt any width measurement.
We propogate this bit upwards to a bit on the line itself, and check this bit during reflow.


git-svn-id: svn://10.0.0.236/trunk@78755 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-11 20:46:44 +00:00
waterson%netscape.com
c607d4bc40 Bug 46693. Check to see if we CanContinueTextRun() while walking over the frames to FindNextText(). This revives the logic that I nuked when fixing 19051, and keeps you from trying to walk over <br> or other frames to erroneously continue a text run. r=akkana.
git-svn-id: svn://10.0.0.236/trunk@75085 18797224-902f-48f8-a5cc-f745e15eee43
2000-07-28 22:29:28 +00:00
waterson%netscape.com
86cf521ec9 Bug 19051. Remove code that computed and maintained nsTextRun. Instead, compute 'next text' when required by crawling the frame tree in nsLineLayout::FindNextText(). r=roc+moz@cs.cmu.edu
git-svn-id: svn://10.0.0.236/trunk@74887 18797224-902f-48f8-a5cc-f745e15eee43
2000-07-27 05:16:08 +00:00
rods%netscape.com
fbf8aca833 Add ifdef'ed Performance Reflow Counting code
git-svn-id: svn://10.0.0.236/trunk@66719 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-21 14:59:47 +00:00
buster%netscape.com
bf63049426 bug 29595 (and others)
fixes layout of pages where a single line is impacted by 2 or more floaters
r=troy


git-svn-id: svn://10.0.0.236/trunk@63783 18797224-902f-48f8-a5cc-f745e15eee43
2000-03-22 23:19:10 +00:00
troy%netscape.com
b2652e371a b=32192 r=buster@netscape.com Fixed a place where the code to lazily
set the parent pointer for child frames was missing on case


git-svn-id: svn://10.0.0.236/trunk@63709 18797224-902f-48f8-a5cc-f745e15eee43
2000-03-22 04:06:37 +00:00
troy%netscape.com
ec58a955b0 b=5588. Changed it so we lazily reparent the child frames on the overflow list
when it's our initial reflow


git-svn-id: svn://10.0.0.236/trunk@62684 18797224-902f-48f8-a5cc-f745e15eee43
2000-03-12 03:14:11 +00:00
buster%netscape.com
faf4d905b4 fixed bug 24186 (well, fixed it enough for beta at least. see bug for details)
r=troy


git-svn-id: svn://10.0.0.236/trunk@59508 18797224-902f-48f8-a5cc-f745e15eee43
2000-02-02 07:38:23 +00:00
troy%netscape.com
60471abd92 b=21657 a=chofmann@netscape.com Made "overflow list" a full fledged
child list and changed ReparentFrameView() to check it.


git-svn-id: svn://10.0.0.236/trunk@58373 18797224-902f-48f8-a5cc-f745e15eee43
2000-01-22 01:16:50 +00:00
nisheeth%netscape.com
990dc941ec r=troy. Changed block, inline, and text frames to call the parent's ReflowDirtyChild() method instead of generating reflow commands.
git-svn-id: svn://10.0.0.236/trunk@58221 18797224-902f-48f8-a5cc-f745e15eee43
2000-01-19 03:58:05 +00:00
nisheeth%netscape.com
8978d5a35b r=troy. nsContainerFrame::ReflowDirtyChild() always generates a reflow command targeted at its child. nsInlineFrame::ReflowDirtyChild() always passes up the reflow request to its parent. nsBlockFrame::ReflowDirtyChild() no longer has code for checking whether its parent is an area frame.
git-svn-id: svn://10.0.0.236/trunk@57571 18797224-902f-48f8-a5cc-f745e15eee43
2000-01-12 21:52:58 +00:00
nisheeth%netscape.com
59dbaae9fb r=troy. Reflow commands are now coalesced by block and inline frames. This fixes bug 985 in which we now generate 6 reflow commands instead of 257.
git-svn-id: svn://10.0.0.236/trunk@57522 18797224-902f-48f8-a5cc-f745e15eee43
2000-01-12 08:28:24 +00:00
troy%netscape.com
a9936ebc11 Added new #define NS_SHRINKWRAPWIDTH that specifies that a frame should
shrink wrap its width (paying attention to the maximum computed width). Mostly
complete implementation for block frames


git-svn-id: svn://10.0.0.236/trunk@56652 18797224-902f-48f8-a5cc-f745e15eee43
2000-01-03 04:32:13 +00:00
troy%netscape.com
52084caad8 Change to how overflow is handled for absolutely positioned elements.
We no longer use nsIAraeFrame and now it's folded into the overflow
area in the reflow metrics


git-svn-id: svn://10.0.0.236/trunk@55424 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 15:49:53 +00:00
hyatt%netscape.com
7e24c61109 Implementing a generalized recycler and arena for all layout frames. Hoping to improve
bug #9489.  Should also definitely fix bug #15916. r=troy


git-svn-id: svn://10.0.0.236/trunk@55321 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 23:49:50 +00:00
tbogard%aol.net
ae5a81e394 Changed nsIPresContext& to nsIPresContext*. Changed nsEventStatus& to nsEventStatus*. Now more compatible with XPIDL. a=vidur r=scc
git-svn-id: svn://10.0.0.236/trunk@54392 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 06:03:41 +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
troy%netscape.com
3513334988 Moved a bunch of stuff out to a nsIFrameDebug interface
git-svn-id: svn://10.0.0.236/trunk@52427 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-01 22:12:45 +00:00
kipp%netscape.com
2cabf1bf40 Disabled debug noise I accidently checked in (whoops!)
git-svn-id: svn://10.0.0.236/trunk@52387 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-01 15:31:04 +00:00
kipp%netscape.com
63ae90acca r=troy; reworked the way that blocks inside of inline elements are handled. It's all in the frame construction code now (bugs 15999, 16737)
git-svn-id: svn://10.0.0.236/trunk@52385 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-01 15:24:57 +00:00
troy%netscape.com
88c4d96e2c Folded reflow functions into nsIFrame and eliminated nsIFrameReflow and
nsIHTMLReflow. This saves 4 bytes per frame and cleans things up


git-svn-id: svn://10.0.0.236/trunk@52309 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-30 02:52:11 +00:00
troy%netscape.com
bd46e7911f Changed SetView/GetView to take an additional argument which is the
pres context


git-svn-id: svn://10.0.0.236/trunk@51822 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-26 04:44:41 +00:00
troy%netscape.com
d16381b6f3 Removed 5 convenience functions from nsIFrame
git-svn-id: svn://10.0.0.236/trunk@51531 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-22 14:53:52 +00:00
troy%netscape.com
dced08401d r=kipp@netscape.com
Added API to get/set properties on frames. Also changed nsContainerFrame
to use a property to implement the frame overflow list. This saves 4 bytes
per container frames


git-svn-id: svn://10.0.0.236/trunk@51358 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-21 05:11:43 +00:00
kipp%netscape.com
76b98f20a7 Factored common code into a single method (UseComputedHeight)
git-svn-id: svn://10.0.0.236/trunk@50509 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-12 23:25:49 +00:00
troy%netscape.com
4d5ed09a1f Added nsHTMLReflowState constructor that allows containing block width
and height to be specified. This is needed for relatively positioned
block elements


git-svn-id: svn://10.0.0.236/trunk@47787 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-16 14:33:19 +00:00
kipp%netscape.com
355616b87d Cleaned up
git-svn-id: svn://10.0.0.236/trunk@46626 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-09 21:04:00 +00:00