pierre%netscape.com
531ba68b54
#43457 split nsStyleSpacing into 4 smaller structures: nsStyleBorder, nsStylePadding, nsStyleMargin, nsStyleOutline. Review=attinasi. Pending Approval: buster.
2001-01-20 22:46:54 +00:00
dbaron%fas.harvard.edu
9430a92e06
Clean up easily fixed unnecessary includes and exports of implementation header files in layout. b=63766 r=jst@netscape.com sr=buster@netscape.com
2000-12-30 19:22:22 +00:00
heikki%netscape.com
95fbe00809
Bug 59675, fixing uninitialized variables. r=jst, a=waterson.
2000-11-27 23:23:28 +00:00
buster%netscape.com
65da9167e6
My previous check-in had an important line accidentally commented out. This just re-enables that line. This fixes bug 58257
2000-10-30 04:48:53 +00:00
buster%netscape.com
e150c12cce
accidentally checked this in with a debug flag turned on that wrote a bunch of output to stdout. turned off.
2000-10-30 04:10:44 +00:00
warren%netscape.com
4189314fdb
Bug 47207. Backing out logging/PRINTF changes until we can fix stopwatch.h, introduce double parens, etc.
2000-10-28 22:17:53 +00:00
warren%netscape.com
6e35f97e31
Bug 47207. Changing printf to PRINTF to use new logging facility. r=valeski,sr=waterson
2000-10-27 22:43:51 +00:00
buster%netscape.com
0517a6c948
bug 57596 (crash caused by reframing XBL reparented explicit children)
...
fix by rickg
r=buster
a=waterson
2000-10-27 14:14:36 +00:00
buster%netscape.com
4d8d54d12d
backed out my/waterson's potential fix for bug 43914
...
this fixes bug 56102
a=waterson
2000-10-12 20:30:43 +00:00
buster%netscape.com
d11af5d076
bug 29276 (text inside <label> tags within a table cell breaks out of table cell)
...
bug 1164 (ALIGN=MIDDLE and ALIGN=ABSMIDDLE values are not being supported)
bug 54119 (percentage (%) image (img) heights do nothing)
r=karnaze, rods, attinasi
a=waterson
2000-10-09 21:19:36 +00:00
mjudge%netscape.com
41f6039492
fixing 34356. hack to get clickng before table working beta3+
2000-09-15 07:02:05 +00:00
buster%netscape.com
f87c8ffd34
bug 18445
...
r=karnaze
This bug fixes the way we treat placement of replaced inline elements when
they have display:block.
2000-09-15 06:20:07 +00:00
buster%netscape.com
4972e8aa20
bug 14280
...
nsTextTransformer.cpp.
I moved where we translate the nbsp to a (ascii 32 space character) until after the i18n routines are called, so they can properly account
for the space as non-breaking and therefore part of the first word in the block.
bug 39901 and 38396
nsHTMLImageLoader.*, nsImageFrame.cpp
I backed out the bad fix for 38396, and put in a new fix where I store a little state in the image loader flags for cases where the image
gets an unconstrained reflow and has %-based width. This does not handle %-based min-width or max-width, that would be a separate
bug that I'll file shortly. But this fixes the vast majority of real cases out there.
bug 18754
nsHRFrame.cpp, quirks.css, nsCSSFrameConstructor.cpp, last part of nsLineLayout.cpp
in quirks mode, I changed HR from a block element to a replaced inline element that acts like a block, using generated content to get
newlines before and after the HR. This isn't ideal, but it gets us backwards compatibility, and ian and dbaron have blessed the approach.
bug 50257
nsLineLayout.cpp
Did a couple of things in here:
* The actual fix is controlled by FIX_BUG_50257 #define symbol. This basically says that an break (BR) will always fit on a line.
A more general solution would probably be to round up to the nearest pixel, and if the thing is less than a pixel make it fit on a
line. This is a wimpier, safer solution.
* I noticed that the way we got the compatibility mode was way out of date, very wasteful. So I fixed that.
* I noticed that there were a bunch of redundant SetFlag calls. Since the flag variable is initialized to 0, setting a flag to 0 on a newly
created object is a waste.
nsBlockFrame.cpp -- just added a comment to some odd looking code, to make sure no one comes along later and breaks it
2000-09-11 21:15:02 +00:00
buster%netscape.com
ec30cf04f8
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.
2000-09-11 20:46:44 +00:00
dbaron%fas.harvard.edu
37748e21f8
Don't apply top margin to a block containing only floaters. Let it collapse through instead. b=44419
...
Only do the quirky fix for bug 37657 for tables, not all blocks. b=43086
r=buster@netscape.com
2000-09-04 21:44:48 +00:00
buster%netscape.com
311fc8f49e
bug 45152 (Typed text does not render in TextAreas with a horizontal scrollbar)
...
fixed by adding a flag in nsLineBox for the content of a line to mark it "forceInvalidate",
logic in nsLineLayout to set the line dirty for initial reflow of text frames,
and logic in block to check the new flag.
r=kin
2000-08-24 04:26:43 +00:00
rbs%maths.uq.edu.au
9e52b965b9
Enable the code to export the baseline out of the block frame code to support 'vertical-article: baseline' in table-cells. bug 10207. a:waterson@mozilla.org. was r:buster@netscape.com.
2000-07-28 09:18:15 +00:00
waterson%netscape.com
44152e8eb2
Bug 44709. Maintain renumbering depth on stack, instead of in a global. r=roc+moz@cs.cmu.edu
2000-07-28 09:02:34 +00:00
waterson%netscape.com
7acb9494c4
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
2000-07-27 05:16:08 +00:00
dbaron%fas.harvard.edu
ad42efa1f3
Fix bug 43882 (dogfood+) by removing special handling of empty P elements. (Most of the diffs are whitespace changes.) This also fixes bugs 43369, 43991, and 18050. However, it exposes a few other issues as well (the most important of which, nuking top margins on first *normal flow* children of BODY and TD, was previously fixed only in some cases, but shouldn't be hard to fix in general). r=waterson
2000-06-29 22:03:42 +00:00
buster%netscape.com
683cb37e34
fixed nsbeta2+ bugs 42138 35772 37657 38157 40283 35964
...
r=waterson, rods
2000-06-14 23:15:59 +00:00
buster%netscape.com
5045e5fae7
fixed bug 41757
...
file also contains some debug only code (disabled), another bug fix (also disabled), the removal of
some obsolete code that was already #ifdef'd out, and a bunch of new comments
r=mjudge, waterson
2000-06-11 22:14:33 +00:00
rbs%maths.uq.edu.au
59a9466655
[#ifdef MOZ_MATHML: not yet part of default build]. Export the baseline out of the block frame code to support 'vertical-align: baseline' in table-cells. bug 10207. r:buster@netscape.com. a:waterson@mozilla.org
2000-06-05 08:24:18 +00:00
alecf%netscape.com
95f0dd93a8
fix #ifdefs to quiet output (speeds up display of complex tables like tinderbox and slashdot.org) - does not affect release builds
2000-06-04 09:44:08 +00:00
anthonyd%netscape.com
9c012c0ecd
avoiding confusion between line iterator between layout and navigation.
...
if you want a line iterator for navigation you must explicitly ask for one.
2000-05-16 08:11:14 +00:00
buster%netscape.com
1a265a16b4
bugs 38396, 29429, 32471, 27390, 32581
...
errors in incremental calcuation of max-element-size and preferred-size
2000-05-14 04:56:25 +00:00
mjudge%netscape.com
125f730b0b
updating capture code
2000-05-14 03:41:25 +00:00
sspitzer%netscape.com
b62c28c988
fix crasher when clicking on a text area. bug #38897 .
2000-05-11 08:41:35 +00:00
mjudge%netscape.com
96a4bde93e
need to check for independent selection to grab mousedown state. will change this to be implemented by selectioncontroller later
2000-05-11 04:50:16 +00:00
mjudge%netscape.com
a89f9e3c80
changing way we access caret. use the selection controller whenever possible. because it will make the caret do the right thing even when we have multiple selections accessing same caret.
2000-05-11 04:25:43 +00:00
buster%netscape.com
4b232cf79f
effectively removed area frame
...
work troy was holding in his tree
r=buster
also fixed bugs 26952, 30944, 36022
r=troy
2000-05-09 05:06:16 +00:00
mjudge%netscape.com
9a80281cc8
adjusting how we get nsIFrameSelection. maybe we can QI from SelectionController
2000-05-08 03:59:53 +00:00
troy%netscape.com
8b0eb04e08
Reinstated clipping code which had been backed out because it caused
...
a problem for XUL layout. I added a workaround for the XUL problem
2000-04-25 04:43:11 +00:00
putterman%netscape.com
af52293cd0
Backing out troy's changes to fix various UI blocker bugs.
2000-04-24 22:15:55 +00:00
troy%netscape.com
73fc3dde30
Changes to bring clipping inline with upcoming CSS2 errata
2000-04-23 00:56:16 +00:00
rods%netscape.com
9d45d84767
Add ifdef'ed Performance Reflow Counting code
2000-04-21 14:59:47 +00:00
troy%netscape.com
47ea6dc9bd
b=36202 Patch from roc+moz@cs.cmu.edu that makes sure we invalidate if
...
necessary when pulling up frames
2000-04-19 03:12:13 +00:00
buster%netscape.com
a77bee1567
one line of debug code accidentally slipped in. Removed.
2000-04-17 15:03:55 +00:00
buster%netscape.com
2fd6bc2c33
bug 588 (text justification) for Robert O'Callahan <roc+moz@cs.cmu.edu>
...
r=buster
bug 18545 ([FLOAT] Problem Centering <TABLE> with <DIV> tag)
r=troy
bugs 18827, 19579, 22327 24782, 26512, 30124, 31849, 32846 (floater behavior wrong)
The primary change here is to determine if a block is impacted by a floater, and if so
mark the block's lines dirty when appropriate.
r=troy
no bug number. performance work. reduced the size of some reflow data structures by
collapsing multiple fields into a single bit field.
r=troy
2000-04-17 14:40:46 +00:00
nisheeth%netscape.com
ae1909623b
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.
2000-04-17 07:13:57 +00:00
mjudge%netscape.com
949cea5712
table cell selection now shows up background. also small fix for nsBlockFrame to do the right thing for mouse capture.
2000-04-13 20:21:32 +00:00
mjudge%netscape.com
3ad06c4f40
fix for setcapture. passes events to the nsHTMLFrame's areaframe when events are trapped to a given frame's view.
2000-04-12 03:04:11 +00:00
jim_nance%yahoo.com
005e33f06e
Bug 33322 - Fix compiler warnings. Its been on n.p.m.builds for a few
...
days for module owners to comment on. r=troy@netscape.com
2000-03-30 03:21:26 +00:00
buster%netscape.com
69807e3b4b
bug 29595 (and others)
...
fixes layout of pages where a single line is impacted by 2 or more floaters
r=troy
2000-03-22 23:19:10 +00:00
dbaron%fas.harvard.edu
fd5dc605d2
Fix event targetting bugs by using paint layers in GetFrameForPoint, testing for visibility, and trying GetFrameForPoint on additional views if one fails. r=joki@netscape.com(, hyatt@netscape.com) b=12232,20051,21304,24474,26785, and remaining issues from 23161.
2000-03-22 02:43:08 +00:00
pierre%netscape.com
4b5db8f52f
Fix 32199 (visibility:collapse is not being interpreted as hidden on block and inline level elements) and parts of 21701 (misuse of style attr mVisible).
In the following files, replacing disp->mVisible with disp->IsVisible() is a BUG FIX: nsBlockFrame, nsBulletFrame, nsHRFrame, nsHTMLContainerFrame, nsImageFrame, nsTextFrame.
In all the other files, replacing disp->mVisible with disp->IsVisible() or disp->IsVisibleOrCollapsed() is merely a SYNTACTICAL CHANGE. The respective owners will later review the use of IsVisibleOrCollapsed() and in some cases replace it with IsVisible(). See bug 21701.
2000-03-17 10:15:13 +00:00
troy%netscape.com
5386fb954a
b=24343 r=karnaze@netscape.com Changes so we properly lay out after changing
...
the font using the pref UI. Block and table code changed to handle
eReflowReason_StyleChange
2000-03-15 15:16:03 +00:00
troy%netscape.com
9c0bc3c815
b=24506 r=buster@netscape.com When calculating the width of a block frame
...
and it's an unconstrained reflow, then make sure to include the right
margin
2000-03-14 04:03:33 +00:00
troy%netscape.com
e08af64528
Now line boxes are allocated out of the pres shell arena. This reduces the
...
overhead of memory allocation, and it gets us recycling which speeds up
resize reflows
2000-03-12 03:00:51 +00:00
buster%netscape.com
ef92b77d4d
fixed bug 25510 and 28084
...
r=troy
a=jar
2000-02-22 22:06:19 +00:00
buster%netscape.com
8453813a13
bug 27927
...
r=troy
2000-02-16 04:11:37 +00:00
buster%netscape.com
00e6dbf1ef
continuing work on bug 25510
...
r=troy
2000-02-16 00:50:06 +00:00
dbaron%fas.harvard.edu
7654eb97da
Fix bug 15428 as suggested by VYV03354@nifty.ne.jp . Stop using 0 as the initial values for min and max of inline box contents so that lines that do not (vertically) contain their own baseline are sized correctly. Also, correctly size BR frames using their line-height (for strict-mode only).
...
Fix bugs 24186, 26996, and 26998 by reworking the quirks-mode line-height handling so that inline elements that do not have text as children (or meet a few other conditions that show the author wants real CSS support) will not increase the size of the line, but will be as close to their correct size as possible without enlarging the line. This fix includes emulation of the strange Nav4/IE quirk that a block's line-height is enforced on the first line of LI elements and the last line of LI, DD, and DT elements. Many of the changes are removing an earlier fix for 24186.
r=buster
2000-02-15 04:26:44 +00:00
buster%netscape.com
8402d07175
bug 25510 r=troy
...
bug 26289 for roc+moz@cs.cmu.edu , r=buster
2000-02-14 01:52:22 +00:00
troy%netscape.com
40b77daa44
b=26727 r=jfrancis@netscape.com Changed MarkLineDirty() to always mark the
...
line dirty even if it also marks the preceding line dirty
2000-02-07 15:36:08 +00:00
pp%ludusdesign.com
43d7ba4273
Converting ::GetIID() into NS_GET_IID(). Bug #20232 . r=scc, r=mozbot
2000-02-02 22:24:56 +00:00
buster%netscape.com
52bc94073f
fixing very minor compile-time error that only shows up if you have certain
...
debug flags set. r=none
2000-02-02 07:37:18 +00:00
troy%netscape.com
9cb902de91
b=25245. Fixed some problems in ReflowLine() when reflowing to incrementally
...
update the maximum width
2000-01-30 18:42:23 +00:00
troy%netscape.com
7c5823dbda
b=25223. Block code now does a better job of determing where the floater
...
should go before reflowing it
2000-01-29 00:47:33 +00:00
troy%netscape.com
87f43adf5c
b=25049. Fixed a problem with max-element-size not being calculated
...
correctly for a floated table
2000-01-28 03:12:30 +00:00
troy%netscape.com
ccbec76759
b=24936, r=nisheeth@netscape.com Changed block code to set mNextRCFrame to
...
NULL after reflowing the frame, so if we reflow it again we don't think it's
an incremental reflow
2000-01-26 22:18:33 +00:00
troy%netscape.com
73a3709284
b=21657 a=chofmann@netscape.com Made "overflow list" a full fledged
...
child list and changed ReparentFrameView() to check it.
2000-01-22 01:16:50 +00:00
nisheeth%netscape.com
762fd5b61c
r=troy. Changed block, inline, and text frames to call the parent's ReflowDirtyChild() method instead of generating reflow commands.
2000-01-19 03:58:05 +00:00
attinasi%netscape.com
195660d7fa
Added ASSERTION and run-time check for SpaceManager before dereferencing it. r=rods,pierre
2000-01-18 15:36:36 +00:00
joki%netscape.com
bb80e9df7d
Fix multiple event targetting bugs (23161, 10514, 13213, 16548, 19496, 12231) and reinstate the onchange event for text fields (bug 22472). r:rods
2000-01-18 15:17:31 +00:00
troy%netscape.com
0129f52c00
b=23388. Make sure mIsTopMarginRoot is set correctly in nsBlockReflowState
...
constructor
2000-01-13 02:05:31 +00:00
nisheeth%netscape.com
5bac2cf869
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.
2000-01-12 21:52:58 +00:00
nisheeth%netscape.com
009325d72d
Removing the "ifndef XP_MAC" around the call to nsFrame::CreateAndPostReflowCommand(). The real problem, identified by Scott Putterman, was that the definition of this function was in a debug only section in nsFrame.cpp. He has moved the function out of the debug only section.
2000-01-12 17:43:18 +00:00
nisheeth%netscape.com
0bc4c0eb6c
Ifdef out the call to nsFrame::CreateAndPostReflowCommand() on the Mac build for now.
2000-01-12 10:41:15 +00:00
nisheeth%netscape.com
409aee6ae9
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.
2000-01-12 08:28:24 +00:00
troy%netscape.com
1b8b3932a0
Fixed a problem with code that determined whether this was a beginning line.
...
It wasn't correctly handling the very first line in the block
2000-01-10 05:14:47 +00:00
troy%netscape.com
bd57e59030
More work on getting block frames to incrementally update their
...
maximum width
2000-01-08 03:58:27 +00:00
troy%netscape.com
e1f277616c
Reduced stack space by using PRPackedBool instead of PRBool
2000-01-04 02:59:35 +00:00
troy%netscape.com
1558ba3b1a
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
2000-01-03 04:32:13 +00:00
troy%netscape.com
4ddb903853
Work-in-progress for having maximum width (needed by tables) be updated
...
incrementally
1999-12-30 04:15:45 +00:00
troy%netscape.com
9420612b5a
b=19198, a=chofmann. Fixed RecoverStateFrom() to use the update conbined area when
...
invalidating. This fixes a regression introduced in version 3.308
1999-12-09 21:40:37 +00:00
troy%netscape.com
976a6ebb15
Removed code from PrepareChildIncrementalReflow() that was marking all lines
...
dirty if max-element-size was requested.
1999-12-08 02:05:51 +00:00
troy%netscape.com
0864b57fe0
b=16456. Removed some debug assertion code that was incorrect and caused
...
us to hit asserts when printing
1999-12-07 23:41:48 +00:00
sfraser%netscape.com
7a09644a3d
#ifdef out a printf. r=none
1999-12-07 07:38:16 +00:00
troy%netscape.com
3c7966f705
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
1999-12-06 15:49:53 +00:00
hyatt%netscape.com
16a944a1e3
Implementing a generalized recycler and arena for all layout frames. Hoping to improve
...
bug #9489 . Should also definitely fix bug #15916 . r=troy
1999-12-04 23:49:50 +00:00
troy%netscape.com
c86aebb168
Added XXX comment to remind me (and Chris) of a problem that needs to
...
be revisited
1999-12-01 04:50:26 +00:00
troy%netscape.com
8d6fa574b2
b=20286. Changed PlaceFloater() so that it repositions any views after
...
placing the frame
1999-11-30 05:09:08 +00:00
tbogard%aol.net
a0640b60c4
Changed nsIPresContext& to nsIPresContext*. Changed nsEventStatus& to nsEventStatus*. Now more compatible with XPIDL. a=vidur r=scc
1999-11-24 06:03:41 +00:00
troy%netscape.com
fe56995443
WillReflow/DidReflow changes and changes to the way view positioning
...
and sizing works
1999-11-19 15:33:29 +00:00
troy%netscape.com
e36c0c9d4c
b=17546. Changed block frame code to save/restore space manager when create
...
a space manager, and changes button code to use the NS_BLOCK_SPACE_MGR flag
when creating the area frame
1999-11-11 06:00:41 +00:00
dmose%mozilla.org
42fc94a6ec
updated license boilerplate to xPL 1.1, a=chofmann@netscape.com,r=endico@mozilla.org
1999-11-06 03:40:37 +00:00
kipp%netscape.com
ec28ac0c5c
r=troy; remove another 4 bytes from each block frame for a total of 10% today :-)
1999-11-03 00:42:12 +00:00
kipp%netscape.com
2bacd78cfe
r=troy; Shrink block frames by 4 bytes per instance by making the overflow-lines instance variable a frame property
1999-11-02 23:42:52 +00:00
kipp%netscape.com
d4c6233f05
r=troy; fixed bugs 2636 and 17636 - line layout issues for some more edge cases (nobr's with floaters in them) and handling of nbsp
1999-11-02 15:44:57 +00:00
troy%netscape.com
04accb3de6
Moved a bunch of stuff out to a nsIFrameDebug interface
1999-11-01 22:12:45 +00:00
kipp%netscape.com
0699f8cc22
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)
1999-11-01 15:24:57 +00:00
troy%netscape.com
effb3aefb7
Folded reflow functions into nsIFrame and eliminated nsIFrameReflow and
...
nsIHTMLReflow. This saves 4 bytes per frame and cleans things up
1999-10-30 02:52:11 +00:00
kipp%netscape.com
50dc6c6dba
r=troy; cleaned up resize reflow optimization logic and prepared it for fixing bug #17737 (not yet fixed!)
1999-10-29 14:34:53 +00:00
troy%netscape.com
a47e8db44b
Changed SetView/GetView to take an additional argument which is the
...
pres context
1999-10-26 04:44:41 +00:00
troy%netscape.com
918255682c
Removed 5 convenience functions from nsIFrame
1999-10-22 14:53:52 +00:00
kipp%netscape.com
3587210728
r=troy; bugs: 15153, 13196; fixed problem with style-change reflows not being propogated properly; also fixed floating table reflow issues found in 13196 by storing floater max-element-size for later retrieval
1999-10-21 20:43:48 +00:00
kipp%netscape.com
db2e83b3f1
Fixed O(N^2) debug logic bug; speed up paint loop by avoiding painting too much now that we have combined-area (bug 7455, 12297)
1999-10-19 23:04:19 +00:00
kipp%netscape.com
88cf2d89c8
r=troy; fixed bug 7093 by carefully pre-computed the collapsed top margin before reflowing the child block and then using that value to properly acquire the available space; In addition, I had to fix an incremental reflow bug associated with this problem
1999-10-15 23:35:10 +00:00
peterl%netscape.com
757c0b5f01
Added namespace ID to the AttributeChanged notification
...
Part fo the fix for Bug 15153
r=troy
1999-10-15 23:16:45 +00:00