Commit Graph

325 Commits

Author SHA1 Message Date
kipp%netscape.com
2efcbb86f5 More cleanup of the combined-area computations; make sure we render every line when we have outside children; fixed up max-element-size computations to not double count floaters 1999-03-22 22:42:30 +00:00
kipp%netscape.com
468a9d8bbe Cleaned up combined area calculations 1999-03-22 20:46:09 +00:00
kipp%netscape.com
84ec5e1b82 Support redo-reflow for lines to handle reflow around large floaters 1999-03-21 01:15:12 +00:00
kipp%netscape.com
3ae10336ff Use CRAZY macros for debug noise 1999-03-20 21:57:03 +00:00
kipp%netscape.com
f8044caeaa Reworked the way that the final metrics are computed; support min/max width/height; track max-element-size issues better; disabled compact frame handling 1999-03-20 19:40:13 +00:00
kipp%netscape.com
e783e42229 Fixed centering of list bullets (bug #4040) 1999-03-20 01:37:43 +00:00
kipp%netscape.com
521d0a1247 Fix wide layout bug in todays build; fixed bug #4013 as well and bug #2589 1999-03-19 23:05:56 +00:00
kipp%netscape.com
c9067260be Spanked to collapse inline-reflow with line-layout into line-layout; fixed bugs #1278, #1990, #3527, #1670, etc. 1999-03-18 21:03:25 +00:00
kipp%netscape.com
2916ad11f9 Fixed numerous frame removed bugs (bug #3262) 1999-03-16 19:36:00 +00:00
kipp%netscape.com
69e626d5a3 Compute combined-area more sanely; handle another nasty top margin bug (1910) 1999-03-08 19:24:07 +00:00
kipp%netscape.com
3c7c26029e Cleanup state recomputation; fix bug # 3453 crasher; debug out some max-element-size issues 1999-03-05 19:25:44 +00:00
kipp%netscape.com
40529e4640 nsBlockReflowState no longer is-a nsHTMLReflowState; fixes to numerous bugs; reworked to use computed values from reflow-state 1999-03-05 04:21:32 +00:00
kipp%netscape.com
59afd8abfb Removed ifdef'd out code 1999-02-26 19:22:20 +00:00
kipp%netscape.com
a8d4b57b12 Find text runs more often (bug #3278, 3265); floaters are now handled mostly by the frame construction code 1999-02-26 17:04:44 +00:00
vidur%netscape.com
b15aacfeb3 Made style reresolution propogate down to the bullet frames for list items. Added list related attribute tests. 1999-02-25 19:14:35 +00:00
troy%netscape.com
3bdf672129 Removed nsIFrame::CreateContinuingFrame() 1999-02-25 05:31:15 +00:00
troy%netscape.com
da4193eab6 Changed nsIFrame::Init() to take an additional parameter 1999-02-25 03:27:57 +00:00
troy%netscape.com
03c5c1f520 Changed GetNextInFlow() and GetPrevInFlow() to be pointer arguments and
not references
1999-02-24 04:48:08 +00:00
kipp%netscape.com
02b92b2a8e Compute minimum-line-height and store it into the inline-reflow context 1999-02-23 19:32:00 +00:00
vidur%netscape.com
a5024bec72 Fixed casing for nsCOMPtr inclusion 1999-02-23 19:22:53 +00:00
vidur%netscape.com
93609d0604 Added nsIStyleSheetLinkingElement interface and implemented it for LINK and STYLE elements. Got attribute modifications for lists and list items working (including correct renumbering of lists when attribute values change). 1999-02-23 19:18:12 +00:00
kipp%netscape.com
c972607d82 Process bullets better so that they are vertically aligned properly 1999-02-18 22:22:55 +00:00
kipp%netscape.com
44573facc6 Fixed bug #3161 - removed bogus assertion 1999-02-18 18:25:45 +00:00
troy%netscape.com
ebfff565c5 Fixed build bustage 1999-02-12 18:18:34 +00:00
kipp%netscape.com
36c243cdc0 COMized nsIPresShell and nsIPresContext 1999-02-12 17:45:58 +00:00
troy%netscape.com
902190112d API changes for nsIPresContext ResolveStyleContextFor and ResolvePseudoStyleContextFor 1999-02-11 15:56:23 +00:00
troy%netscape.com
37614be21a Re-ordered DeleteFrame() code to fix a FMR 1999-02-10 18:12:24 +00:00
troy%netscape.com
034aa56b83 Changed GetNextSibling() to use a pointer argument instead of a reference 1999-02-10 06:13:38 +00:00
troy%netscape.com
9d570499cf Changed a bunch more nsIFrame member functions to be pointer arguments
instead of references
1999-02-10 05:38:18 +00:00
troy%netscape.com
2ac7b86865 Changed GetAdditionalChildListName() and FirstChild() to use ** instead
of *&
1999-02-10 02:25:01 +00:00
troy%netscape.com
c85f9efd2a Changed GetParent() to use ** instead of *& 1999-02-10 01:36:30 +00:00
troy%netscape.com
b974e26cea Changed some nsIFrame member functions to use ** instead of *& for OUT
paremeters
1999-02-10 00:42:56 +00:00
kipp%netscape.com
6953c4a7c8 Whacked away nsBaseIBFrame and BLOCK_IS_INLINE cruft 1999-02-09 17:31:33 +00:00
kipp%netscape.com
66115d3c10 Fixup absolute positioning by temporarily generating old style reflow commands when the list-name is not null; temporarily use FrameAppended instead of ReflowDirty for append operations 1999-02-03 19:09:24 +00:00
kipp%netscape.com
361ca345fb Changed base-ib-frame to implement AppendFrames/InsertFrames/RemoveFrame directly; changed args to DoRemoveFrame; updated the anonymous block to have a slightly different method set to manipulate its children 1999-02-02 17:31:09 +00:00
kipp%netscape.com
c529fc11be Fixed invocation bug that mac compiler caught 1999-02-01 19:08:30 +00:00
kipp%netscape.com
50b6da75a7 Implement anonymous block frame code; fixup base class InsertNewFrames to support multiple frame insertion 1999-02-01 17:29:37 +00:00
harishd%netscape.com
317d0d7c4e Passing stylecontext into Paintborder() 1999-01-22 22:25:00 +00:00
troy%netscape.com
7103b076b4 Changed nsHTMLReflowState to compute 'offsets' for relatively positioned
elements
1999-01-16 20:58:17 +00:00
kipp%netscape.com
10f24c7ebf Update List implementations to use GetAdditionalChildLists so that all lists of children are dumped out automatically 1999-01-16 00:19:10 +00:00
kipp%netscape.com
7f96144059 Spanked away SizeOf methods and nsIListFilter 1999-01-16 00:00:50 +00:00
kipp%netscape.com
4243726f6a Switch to using nsFrameList for frame lists 1999-01-15 22:53:39 +00:00
troy%netscape.com
6d63084a70 Fix for bug #1998. Now we render the background image over the padding area and not over the border area 1999-01-15 18:25:58 +00:00
troy%netscape.com
036e6852f2 Removed the content-parent frame pointer. Now we just have the one geometric
parent
1999-01-14 05:16:23 +00:00
troy%netscape.com
5c75ea66f0 Fix for bug #2276, and some initial support for 'right' and 'bottom'
for absolutely positioned elements
1999-01-13 06:37:31 +00:00
kipp%netscape.com
cd76455b98 Use new flag defines 1999-01-12 16:42:03 +00:00
troy%netscape.com
4b3e1eebad Replaced "maxSize" member if nsReflowState with "availableWidth" and
"availableHeight"
1999-01-05 23:31:18 +00:00
kipp%netscape.com
50b331f35c Reinstated the last set of checkins that were backed out 1999-01-05 23:01:54 +00:00
donm%netscape.com
9b2666a111 backing out changes against a long red tree. would like to clear
the hook.  -donm
1999-01-05 18:16:05 +00:00
kipp%netscape.com
e29f665a91 Fix handling of removed-child incremental reflow to no longer crash (bug #1941); also disabled incremental behavior for remove and inserted for now so that layout looks correct 1999-01-05 17:50:41 +00:00
troy%netscape.com
99455f5082 Moved enum and replaced it with #defines 1999-01-03 00:31:46 +00:00
troy%netscape.com
4591f9d2ad Changed width/height constraints in nsHTMLReflowState struct 1998-12-30 17:50:00 +00:00
troy%netscape.com
7b5cc03059 Moved logic that deals with moving absolutely positioned frames out of the
flow to the frame construction code
1998-12-29 03:38:16 +00:00
peterl%netscape.com
887cd5f867 sync to new attribute api 1998-12-20 01:21:23 +00:00
kipp%netscape.com
ed1c9c40e1 Display inline borders/background during content painting, not during background painting (per css2 spec) 1998-12-18 22:12:15 +00:00
kipp%netscape.com
40c2cfef07 Fixed numerous compiler warnings (hopefully) from the mac build 1998-12-18 17:34:34 +00:00
kipp%netscape.com
c29e5116c7 Revised frame Paint API 1998-12-18 15:54:23 +00:00
kipp%netscape.com
df22ba5edf Disabled skid marks 1998-12-17 19:10:53 +00:00
kipp%netscape.com
b5ddc4184d Clean up max-element-size computations; added code to remove empty lines (disabled for now) 1998-12-17 18:52:10 +00:00
kipp%netscape.com
081d6a2815 Moved floater reflow out of PlaceFloater and into AddFloater so that floaters are only reflowed during reflow, not during placement; Added code to support css 10.3.5; reflow floaters more often so that % width values are recomputed properly 1998-12-15 04:20:54 +00:00
kipp%netscape.com
8f3bfb6318 Fixed rendering problems with lines with outside children; repaired code (currently unused an ifdef'd) to compute the lines outside children state 1998-12-15 00:14:09 +00:00
kipp%netscape.com
934a9c6a93 Reworked incremental reflow floater handling to place floaters as their state is recovered instead of moving them 1998-12-12 19:19:11 +00:00
troy%netscape.com
e0814be9c7 Changed inline and block reflow code to reset reflow state's isTopOfPage
data member based on whether IsAdjacentWithTop() is true
1998-12-12 17:59:30 +00:00
kipp%netscape.com
58fef6676e Compute correct Y coordinate after clear floaters; fixed bullet positioning bug when placing a bullet next to a block frame that has a carried-out top margin 1998-12-11 22:26:45 +00:00
kipp%netscape.com
6234eb38c7 Removed bogus assert that was tripping on spacer-frames; fixed up justification behavior (thanks harish!) 1998-12-11 15:49:07 +00:00
troy%netscape.com
7ec6a2c281 Added new atoms to nsLayoutAtoms for additional named frame child lists 1998-12-09 05:30:17 +00:00
kipp%netscape.com
e10802d09e Factored out the block-band-data class; fixed a bug with treating block objects that weren't really nsBlockFrame's like they were (bug #1713) 1998-12-08 21:43:15 +00:00
kipp%netscape.com
320f0facc1 Fixed bug #1621 - if a floater was too wide and it was right aligned it would end up positioned off the left edge of the block 1998-12-08 03:57:12 +00:00
kipp%netscape.com
2025694b82 Removed check for a band count of when when clearing floaters because if the floater is large the band may only have one trapezoid in it 1998-12-08 03:47:44 +00:00
kipp%netscape.com
3723b826cc Disabled fixed height/width ignoring code for shrink-wrap blocks; fixed crash bug with premature deleting of a line 1998-12-07 22:28:55 +00:00
kipp%netscape.com
907f06864c Major spankage; refactored code; common base class for block/inline frames 1998-12-05 16:02:08 +00:00
troy%netscape.com
205250b6c4 Moved view creation to frame construction code. Also moved wrapping of
floated and absolutely positioned elements to frame construction code
1998-12-04 19:03:44 +00:00
troy%netscape.com
fbd9f4ef8b Removed explicit call of base class constructor because it was
making Unix compilers unhappy
1998-12-03 07:20:59 +00:00
troy%netscape.com
2a4b2c503f Added Init() member function to nsIFrame 1998-12-03 06:31:43 +00:00
kipp%netscape.com
12c4f09bc1 Disable fixed behavior when we are shrink wrapping so that floating tables (for example) can ignore their width if necessary 1998-11-20 22:24:20 +00:00
kipp%netscape.com
be3aca0f4e Added support for StyleChanged reflow reason 1998-11-20 17:41:44 +00:00
kipp%netscape.com
7b0a080513 Use revised API's to get percentage padding/borders value right 1998-11-20 17:18:58 +00:00
kipp%netscape.com
157425553e Override FrameForPoint so that floaters/bullets get events 1998-11-19 18:09:57 +00:00
kipp%netscape.com
a6926809f0 Added DumpRegressionData; revised ListTag; added GetFrameName 1998-11-19 17:22:29 +00:00
troy%netscape.com
89d24c72ce Fixed it so that we don't ignore painting child frames of a parent frame
thas has "visibility:hidden", because child elements can override their
parent's visibility
1998-11-19 03:52:29 +00:00
troy%netscape.com
9d1564cf4a Added some constants to use when referring to child list name indices 1998-11-18 06:13:58 +00:00
joki%netscape.com
77fd9c2652 Reworking internal event code to use nsIFrame::GetFrameForPoint
Adding new functionality through nsEventStateManager (cursor change, enter/exit events, tab navig)
1998-11-18 05:25:26 +00:00
kipp%netscape.com
552551e512 Revised max-element-size computation somewhat so that floaters are accounted for better 1998-11-17 22:28:51 +00:00
kipp%netscape.com
2757f6e3d4 Fixed up incremental reflow for content-changed and removed floaters 1998-11-17 01:04:45 +00:00
troy%netscape.com
d6a65c024a Split class declaration out into a separate header file so the body frame
can be a derived class
1998-11-16 17:11:12 +00:00
kipp%netscape.com
11b65a83d4 Removed extraneous bullet padding that was left-over from the pre-pseudo-style days 1998-11-15 01:17:05 +00:00
kipp%netscape.com
68f8209644 Fixed frame-removed crash case (when we run out kids); bug #691 1998-11-14 21:57:38 +00:00
kipp%netscape.com
6bc24733d4 Basic support for :first-letter pseudo-elements 1998-11-14 21:01:26 +00:00
kipp%netscape.com
f064456558 Modified List code to list floater list and bullet better; support multiple child lists; manage floater list properly 1998-11-14 19:28:11 +00:00
troy%netscape.com
532ccd2885 Cleaned up the way construction of the root frame happens for XML documents.
We no longer create a pseudo root element
1998-11-12 23:03:35 +00:00
kipp%netscape.com
ac0565a8f8 Fixed margin collapsing bug 1998-11-12 22:24:46 +00:00
kipp%netscape.com
f554f82547 Fixed some serious bugs in list bullet placement that prevented some relatively easy cases from working at all; this fixes up most outside list bullet cases 1998-11-12 18:19:22 +00:00
kipp%netscape.com
784d48c0a8 Fixed list numbering to work again (whoops!); added support for display: compact (just the beginnings); more work-in-progress for :first-letter support 1998-11-12 16:32:56 +00:00
kipp%netscape.com
2f43e35996 Added a sleazy implementation of css2's run-in display type 1998-11-11 03:55:55 +00:00
kipp%netscape.com
edd04980fc Tidy up by removing some old junky code 1998-11-10 18:03:29 +00:00
troy%netscape.com
527ee073f8 Renamed Init() to SetInitialChildList() and added an additional parameter
for the name of the child list
1998-11-10 06:05:32 +00:00
troy%netscape.com
081c78e696 First of a few changes to allow frames to have multiple child lists.
FirstChild() now takes an additional argument which is the name of the
child list.
1998-11-09 19:40:27 +00:00
kipp%netscape.com
40dbf5063b Disabled some more dubious br/margin code 1998-11-09 17:54:37 +00:00
kipp%netscape.com
07564642ae Fixed nowrap support by computing max-element-size better 1998-11-06 02:09:21 +00:00
kipp%netscape.com
1bafa4a69f Temporary fix to get rid of the green text 1998-11-05 19:38:32 +00:00
kipp%netscape.com
34aec22132 Fixed a few more floater bugs; fixed incremental reflow bug with regards to BR tags (clear=all for example); support :first-line properly; work in progress on :first-letter 1998-11-05 19:33:01 +00:00
peterl%netscape.com
cedec7bc27 sync to style resolution api changes 1998-11-03 20:33:43 +00:00
troy%netscape.com
fe4e76d9d9 Renamed HaveConstrainedWidth() and HaveConstrainedHeight() to HaveFixedContentWidth()
and HaveFixedContentHeight()
1998-11-01 01:29:00 +00:00
kipp%netscape.com
eb832dc1a3 nit changes 1998-10-31 22:53:00 +00:00
kipp%netscape.com
a10209c1f6 Reworked floater support somewhat now that blocks manage them instead of body frames; fixed up painting to use the outside-children data; support the visibility property; fixed bug #624,#628 1998-10-30 22:10:10 +00:00
michaelp%netscape.com
fc225bf7c1 changes to support nsIRenderingContext that conforms to COM conventions. 1998-10-30 02:08:25 +00:00
kipp%netscape.com
274d1bc566 Added justification support 1998-10-27 16:51:02 +00:00
buster%netscape.com
381df478eb changed base code so only frames with 0 width AND 0 height are ignored.
this fixes http://home.netscape.com among others that use content-free
nested tables to generate background colors and other evil tricks.
1998-10-22 22:00:50 +00:00
kipp%netscape.com
767b366eda Use TextRun API instead of no-longer public variables 1998-10-20 00:21:54 +00:00
kipp%netscape.com
c6b279a725 Use :BULLET style information to place bullets instead of hard coding off of the padding (Bug #1119) 1998-10-16 22:39:11 +00:00
kipp%netscape.com
951e920f4b Support CSS2 floater placement by not allowing them on top of each other; fixed a bug with floater incemental reflow and spacemanager management 1998-10-16 20:22:39 +00:00
kipp%netscape.com
f2de42911f Support clear attribute on floaters; nicer ListTag method 1998-10-15 23:27:12 +00:00
kipp%netscape.com
fcb61a671c Create views when necessary; fixed code to avoid IsLeftMostChild when checking during flow floater placement (now that the childs rect is deferred until vertical alignment the code in IsLeftMostChild is no longer valid) 1998-10-14 20:10:08 +00:00
kipp%netscape.com
ad26a95ac9 Update frame count when frames are pushed to a new line so that alignment behaves properly 1998-10-12 18:43:07 +00:00
kipp%netscape.com
a77548baff Removed nsCSSLayout::GetStyleSize and converted callers to use state in the html reflow state 1998-10-12 17:00:32 +00:00
kipp%netscape.com
ea5a5735f5 Added an nsIPresContext& to html-reflow-state's ctors and used it to implement better percentage width/height handling 1998-10-12 14:48:02 +00:00
kipp%netscape.com
8235f84572 Pass through text-runs to the line layout engine; removed a debug printf 1998-10-10 04:33:06 +00:00
kipp%netscape.com
c6db34691b Removed skid marks; implement FindTextRuns again 1998-10-09 23:46:02 +00:00
kipp%netscape.com
6dceba716f Mork work on floaters; support for clear style property 1998-10-09 22:58:25 +00:00
troy%netscape.com
d25a9a35a2 Removed GetContentIndex() from nsIFrame 1998-10-08 20:35:16 +00:00
kipp%netscape.com
61525c5c74 Disabled overflow:visible handling for now 1998-10-06 21:00:58 +00:00
kipp%netscape.com
033402f06e Cleaned up margin handling some more; added flags to control behavior of the block frame; fixed table reflow bug 1998-10-06 00:38:56 +00:00
troy%netscape.com
b5b596a60a Removed nsIInlineReflow and folded it into nsIHTMLReflow 1998-10-03 04:28:05 +00:00
kipp%netscape.com
2515fa9945 Preliminary support for negative top/bottom margins 1998-10-03 00:17:44 +00:00
kipp%netscape.com
43330b06e2 Reworked vertical margin collapsing 1998-10-02 21:50:53 +00:00
troy%netscape.com
7aceb4270d Eliminated nsIRunaround interface, and folded space manager parameter into
nsHTMLReflowState structure
1998-10-02 04:10:00 +00:00
michaelp%netscape.com
9b82a28284 modified for new fontmetrics/renderingcontext. 1998-10-02 01:12:39 +00:00
troy%netscape.com
ba3c7125c2 Separated reflow process out of nsIFrame and into nsIFrameReflow. Also
added nsIHTMLReflow, which is an HTML specific reflow interface
1998-10-01 04:46:11 +00:00
kipp%netscape.com
82258b5c71 Add in a bottom-line-margin when dealing with a zero-height line that contains a BR frame 1998-09-29 22:32:56 +00:00
troy%netscape.com
8c87a4ae92 Added back in support for absolutely positioned frames 1998-09-29 04:47:59 +00:00
kipp%netscape.com
261b8bd181 Changed factory method to parameterize the shrink wrapping behavior 1998-09-29 03:44:25 +00:00
troy%netscape.com
789fa70e40 Fixed some bustage I introduced with the factoring 1998-09-29 02:18:09 +00:00
troy%netscape.com
d83715df2a Partially enabled support for absolutely positioned elements 1998-09-28 23:24:37 +00:00
kipp%netscape.com
2d3942241b Cleaned up and repaired floater placement and spacemanager manipulation; the comments clearly (hopefully!) state whats going on... 1998-09-28 18:50:59 +00:00
kipp%netscape.com
f30c68a9f7 Fixed up list ordinal handling so that negatives don't work for roman numerals or for alphabetics, and that alphabetics count properly (a==1); this fixes bugzilla bug#589 1998-09-26 20:05:09 +00:00
kipp%netscape.com
8aa1262f04 use image-loader call back to trigger bullet frame reflows 1998-09-26 18:36:01 +00:00
kipp%netscape.com
fff04dae01 Use modified css rendering API 1998-09-26 17:17:20 +00:00
kipp%netscape.com
b3e3ba03b6 Fixed memory leak (bug #910) 1998-09-26 00:37:26 +00:00
kipp%netscape.com
b1f13b362f Added support for percentage base margins to the root, root-content and block frames 1998-09-25 23:47:59 +00:00
kipp%netscape.com
6d53992c3f Support break-before/after for block frames 1998-09-25 17:50:09 +00:00
kipp%netscape.com
053775b9aa Support (weakly) style-changed reflow and fixup naming of frame-removed methods 1998-09-25 16:10:10 +00:00
troy%netscape.com
50795d8516 Moved ContentDeleted() document notification code to the style system which
generates the reflow command
1998-09-25 05:13:06 +00:00
kipp%netscape.com
99bde8b304 Removed bullet pseudo-content and instead use pseudo style to process bullets properly 1998-09-24 21:32:39 +00:00
kipp%netscape.com
0f80d4a261 Fixed block's max-element-size computation for child inline frames 1998-09-24 17:47:25 +00:00
troy%netscape.com
cdf9d06a40 Removed some XXX CONSTRUCTION code that was work-in-progress, but is
no longer needed
1998-09-24 03:49:45 +00:00
kipp%netscape.com
e580331b37 Implement bullets here; implement list renumbering cleanly instead of having the bullets blindly do it (fixes a crash and several pagination bugs) 1998-09-23 20:10:40 +00:00
kipp%netscape.com
be50f363a2 Spanked hard to reorg code around nsInlineReflow; rework list handling; rework factoring of inline/block reflow 1998-09-23 02:25:26 +00:00
troy%netscape.com
62b1375f69 Removed farme enumeration member functions for indexed access, last child,
and child count
1998-09-19 03:24:26 +00:00
troy%netscape.com
f80fdc69aa Removed CreateFrame() from nsIHTMLContent 1998-09-18 18:04:42 +00:00
troy%netscape.com
28c7cf540c Removed content delegates 1998-09-18 17:18:37 +00:00