Alexander Surkov
0ba17ebe91
Bug 629114 - crash on add comment link in review board [@ nsBulletFrame::GetListItemText ] [@ nsBulletFrame::GetListItemText(nsStyleList const&, nsString&) ], r=davidb, marcoz, sr=bz, a=blocking2.x+
2011-03-28 22:59:54 +09:00
Boris Zbarsky
414c08eb55
Bug 626395. Make sure that when we're clipping our kids we don't create overflow containers for their overflow. Force the kids to lay out within our size instead. Also don't include overflowing kids in our overflow area if we're clipping them. r=roc, a=blocker
2011-01-19 17:39:31 -05:00
Boris Zbarsky
28bb2cf45c
Bug 609272. Make sure to not apply clipping of overflow when printing to the root element, because it doesn't really make use of its overflow style itself. r=dbaron
2010-11-30 13:19:57 -05:00
Dave Townsend
f322fea87c
Backing out bug 614058, bug 609272, bug 478445, bug 499628, bug 605296, bug 608914 and bug 614724 due to potentially causing bug 615736 CLOSED TREE. a=backout
2010-12-01 11:01:56 -08:00
Boris Zbarsky
26f311d0b7
Bug 609272. Make sure to not apply clipping of overflow when printing to the root element, because it doesn't really make use of its overflow style itself. r=dbaron
2010-11-30 13:19:57 -05:00
Ehsan Akhgari
db2d8e7cb6
Bug 389321 - Part 3: Use a centralized algorithm for caret positioning; r=roc a=blocking-betaN+
2010-08-31 14:54:44 -04:00
Alexander Surkov
130d300b75
Bug 557795 - non-libxul bustage fix, r=bz, a=blocking
2010-10-14 23:05:12 +09:00
Alexander Surkov
57c9906674
Bug 557795 - wrong list bullet text of accessible for the first numbered HTML:li in CKEditor, r=davidb, sr=roc, a=blocking
...
--HG--
rename : accessible/tests/mochitest/tree/test_list_invalidate.html => accessible/tests/mochitest/treeupdate/test_list.html
2010-10-14 18:05:22 +09:00
L. David Baron
65fcd4c12c
Split overflow areas for block frame float continuations. (Bug 542595, patch 12) r=roc a2.0=blocking2.0:beta8
2010-10-06 21:25:45 -07:00
L. David Baron
8c6cf1d539
Compute nsBlockFrame::ComputeCombinedArea to split overflow areas. (Bug 542595, patch 10) r=roc a2.0=blocking2.0:beta8
2010-10-06 21:25:45 -07:00
Robert O'Callahan
0cf14ffe41
Bug 596710. Increment (not decrement) rline to skip checking the cursor line twice. r=dbaron a=blocking
2010-09-17 12:09:08 -07:00
Ehsan Akhgari
2f6c2a4baa
Bug 593211 - Part 3: Optimize nsBlockInFlowLineIterator by using the line cursor if present; r,a=roc
...
--HG--
extra : rebase_source : 03f9f9532373592b415e622788204a7766d998f6
2010-09-08 20:15:24 -04:00
L. David Baron
7afdbd9a59
Rename float continuations to pushed floats. (Bug 563584, patch 33) r=roc
...
This patch was generated with the following sed commands on layout/generic/*.{h,cpp}: 's/FLOAT_CONTINUATION/PUSHED_FLOAT/g;s/FloatContinuation/PushedFloat/g;s/float continuation/pushed float/g' plus whitespace fixup where the frame state bits are defined.
2010-08-05 21:59:20 -07:00
L. David Baron
5d647fbf31
Rename PushTruncatedPlaceholderLine since the remaining reasons for lines being truncated are related to being next to floats, not having truncated floats. (Bug 563584, patch 19) r=roc
2010-08-05 21:59:20 -07:00
L. David Baron
f5631fb91d
Don't propagate the float's reflow status through places that expect an inline's reflow status, to avoid the assertion for which bug 563584 was filed. This separates pushing of floats from pushing of lines, and allows first-in-flow floats to be pushed to the next page without their associated line. (Bug 563584, patch 17) r=roc
2010-08-05 21:59:19 -07:00
L. David Baron
83f95abb0c
Manage float continuations to-be-pulled by the next-in-flow better by keeping them in a separate frame list until they're actually pulled. (Bug 563584, patch 13) r=roc
2010-08-05 21:59:19 -07:00
L. David Baron
e24a4a847e
Track which frames were float continuations that need to be pulled to the next block rather than figuring it out again when it's time to pull them. (This allows first-in-flows to be float continuations.) (Bug 563584, patch 12) r=roc
2010-08-05 21:59:19 -07:00
L. David Baron
5dbb4fc493
Replace force-fit with setting mIsTopOfPage correctly. (Bug 563584, patch 5) r=roc
2010-08-05 21:59:19 -07:00
L. David Baron
91606392a2
Make nsBlockReflowState::FlowAndPlaceFloat reflow the float after computing its vertical position, so we know how much height is actually available. (Bug 563584, patch 4) r=roc
...
Test coverage for this is in the future patch "Add reftests for bug 563584.".
2010-08-05 21:59:18 -07:00
Alexander Surkov
65c355c8a7
Bug 573706 - make frame based accessible creation more pellucid, r=davidb, sr=roc
2010-06-28 21:02:03 +09:00
L. David Baron
e272b3a13d
Use macros for frame state so that it's easy to change the size and easier to read the constants. (Bug 570837) r=roc
2010-06-08 22:28:14 -07:00
Michael Kohler
8550fb091a
Bug 564091: Fix spelling of nonexistent across the tree. r=timeless
...
--HG--
extra : rebase_source : 4f15f7fd6f90926b77d136be83af7f22c5ffa830
2010-05-23 12:26:15 -07:00
Boris Zbarsky
d136b98028
Bug 562688 part 11. Eliminate eELEMENT usage in layout/generic. r=dbaron
2010-04-30 09:12:06 -04:00
Ehren Metcalfe
a791e19cc4
Bug 556446: Remove dead code in layout. r=roc,bz
2010-04-03 07:36:19 -04:00
Robert O'Callahan
0fd1837981
Bug 551660. Switch layout code from using nsPropertyTable to FramePropertyTable. r=mats,sr=dbaron
2010-03-29 14:46:55 +13:00
Mats Palmgren
d637043263
Simplify PullFrame()/PullFrameFrom(). b=538525 r=roc
2010-01-11 15:08:23 +01:00
fantasai
3027a2127b
Bug 508473 part III: Pass destruction root to frame destruction methods r=bz sr=roc
2009-12-24 00:21:15 -05:00
Boris Zbarsky
5132d64872
Bug 525608 part 3. Change all style set consumers that ask for a pseudo style context to indicate what they're actually asking for (pseudo-element, anonymous box, or xul tree thing). r=dbaron
2009-12-11 02:37:40 -05:00
Boris Zbarsky
8202b90f61
Backing out bug 525608 and bug 525952
2009-12-10 18:28:08 -08:00
Boris Zbarsky
6eb3c28de7
Bug 525608 part 3. Change all style set consumers that ask for a pseudo style context to indicate what they're actually asking for (pseudo-element, anonymous box, or xul tree thing). r=dbaron
2009-12-10 14:36:05 -08:00
Boris Zbarsky
7761f7af77
Bug 512471. Make nsBlockFrame's mFrames track its principal child list. r=roc,fantasai
2009-09-29 15:47:05 -04:00
Mats Palmgren
ce915e403f
Store the overflow out of flows as an nsFrameList. b=516974 r=bzbarsky
2009-09-24 04:39:21 +02:00
Michael Ventnor
e18537e820
Bug 512988 - Text-shadow blur and underline messes up with padding-left. r+sr=roc
2009-09-18 20:18:35 +02:00
Mats Palmgren
1a7f096af8
Bug 233463, patch 2 - Introduce nsFrameList::mLastChild member for fast access to the last sibling frame. r=bzbarsky
2009-09-18 13:09:36 +02:00
Mats Palmgren
7a3be46e9e
Bug 233463, patch 0 - Use nsFrameList methods instead of nsIFrame::SetNextSibling. r=bzbarsky
2009-09-18 13:09:35 +02:00
Zack Weinberg
d47e0f433b
Bug 497495 part 3: Add methods to every nsFrame subclass that expose the as-allocated identity of every frame object. Also some cleanups to the QueryFrame implementation. r=dbaron sr=roc
2009-09-12 17:49:24 +01:00
L. David Baron
2ee74123ac
Make empty bullets (i.e., those for list-style-type:none) not contribute to layout. (Bug 512631) r=roc
2009-09-11 06:46:36 -04:00
fantasai
0a8cd46b1a
Bug 492627 - Remove Placeholder Continuations [Part VI: Handle <br clear>] r=roc
2009-08-31 11:25:36 -07:00
fantasai
1f4c53a304
Bug 492627 - Remove Placeholder Continuations [Part V: Reimplement float splitting without placeholder continuations] r=roc
2009-08-31 11:25:36 -07:00
fantasai
b2ea1d69bb
Bug 492627 - Remove Placeholder Continuations [Part IV: Switch float layout APIs to pass float directly, without placeholder] r=roc
2009-08-31 11:25:35 -07:00
fantasai
87bc18b4e2
Bug 492627 - Remove Placeholder Continuations [Part III: Remove current float-splitting code.] r=roc
2009-08-31 11:25:35 -07:00
Robert O'Callahan
4453cced60
Backed out changeset e2927bb26412
2009-08-26 14:49:18 -07:00
Zack Weinberg
64f6d4d0dd
Bug 497495 part 3a: rationalize the queryframe-implementation macro naming scheme, restructure the implementation to detect duplicate entries, and a couple fixes to the frame ID enumeration. r=dbaron sr=roc
...
Bug 497495 part 3b: update users of queryframe macros (strictly mechanical change). r=dbaron
--HG--
extra : rebase_source : ee672a17934227b408b83dc6b5cc4e4909652f72
2009-08-26 09:27:42 -07:00
Boris Zbarsky
811394b5da
Bug 281387. Make nsIFrame::Append/InsertFrames use nsFrameList. r=bernd,roc, sr=dbaron
2009-07-30 13:23:32 -04:00
Boris Zbarsky
2a78273130
Relanding bug 496823 in the hopes that it's not causing the XP Txul issue.
...
--HG--
extra : rebase_source : 593d43b5c229e077e4454d848dba59265dee6b58
2009-07-29 08:53:27 -04:00
Boris Zbarsky
51ea3f4f6e
Backed out changeset 622a29736f33 to see whether bug 496823 causes the WinXP Txul regression.
...
--HG--
extra : rebase_source : 450a2a83442a2326e303f97ad82d8213fbe11490
2009-07-28 14:35:28 -04:00
Boris Zbarsky
1ef12b64a7
Bug 504221 part 12. Switch SetInitialChildList to nsFrameList. r=fantasai, r+sr=roc
2009-07-28 08:53:20 -04:00
Boris Zbarsky
ba5826b152
Bug 504221 part 6. Switch nsBlockFrame::AddFrames to nsFrameList. r=fantasai,roc
2009-07-28 08:51:10 -04:00
Boris Zbarsky
cf7d0b6141
Bug 504221 part 5. Switch from GetFirstChild to GetChildList (returning an nsFrameList). For now, keep a GetFirstChild shim so callers don't have to be updated. r=fantasai, r+sr=roc
2009-07-28 08:51:09 -04:00
Boris Zbarsky
1950f2e7c4
Bug 496823. Blocks can implement GetLastChild() much faster than by just getting first child and iterating its siblings. r=roc
2009-07-26 21:27:32 -04:00
L. David Baron
98b2b4a981
Don't reduce the height we're checking while we reflow for floats. (Bug 494332) r+sr=roc
2009-06-16 08:00:20 -07:00
L. David Baron
803e2f944a
Fix bug 25888 for inline frames other than bullets: redo line reflow when the line's height pushes it into the way of other floats. (Bug 25888) r+sr=roc
2009-05-20 07:21:34 -04:00
Daniel Holbert
42f2f94d22
Bug 490909: Remove old layout debugging code, patch #2 : remove 'VerifyTree' & related code. r+sr=dbaron
2009-05-12 12:03:09 -07:00
Boris Zbarsky
346daa82d1
Bug 67752. Implement interruptible reflow. r=roc,dbaron
2009-04-21 19:53:52 -04:00
Joe Drew
633b99bd32
Backed out changeset 6a452e522e07 - Boris Zbarsky – Bug 67752. Implement interruptible reflow. r=roc,dbaron - because of apparent Tp hangs.
2009-04-21 23:02:17 -04:00
Boris Zbarsky
5c5eb9c3ea
Bug 67752. Implement interruptible reflow. r=roc,dbaron
2009-04-21 19:53:52 -04:00
L. David Baron
f1e122cbd0
Switch away from nsBlockReflowState::mAvailSpaceRect for reflow of child blocks. (Bug 25888) r+sr=roc
2009-04-08 13:52:37 -07:00
L. David Baron
53fb256319
Switch away from nsBlockReflowState::mAvailSpaceRect for reflow of child floats. (Bug 25888) r+sr=roc
2009-04-08 13:52:36 -07:00
Daniel Holbert
4ace9611a5
Bug 465928 followup: correct typo in enum name - s/PERSERVE/PRESERVE/. No functional changes. r=roc
2009-01-13 12:28:28 -08:00
Benjamin Smedberg
3498a5f86e
Bug 396185 - Make nsIFrame derivatives and helper abstract classes use a different dynamic-cast system than nsISupports:
...
* we know all types frames may be cast to at compile time, so instead of extensible GUID IIDs, use a big enum (see nsQueryFrame::FrameIID)
* eliminate all vestiges of refcounting, since frames aren't refcounted
Some frames (SVG frames in particular) still implement nsISupports-derived interfaces, for example nsISVGValue. There is a FrameIID for nsISVGValue that lets you go from a frame to the XPCOM interface, but you can't query back.
r+sr=roc
nsITextControlFrame didn't have an IID the first time around, but this wasn't a compile error because nsITextControlFrame::kFrameIID inherited from nsIFormControlFrame::kFrameIID. I've added a static analysis pass to verify the correct behavior, since I can't figure out a way to make the compiler do it.
--HG--
extra : rebase_source : 4894a2ca0278e2ab92f27459db77165f8348cf41
2009-01-12 14:20:59 -05:00
Benjamin Smedberg
73a6fab34b
Backed out changeset 4c4df6ed1b41 - Bug 396185 - Make nsIFrame not inherit from nsISupports due to mochitest failures... these appear to be crashes in nsGenericHTMLElement::GetEditorInternal.
2009-01-09 11:35:24 -05:00
Benjamin Smedberg
802d1a10c7
Bug 396185 - Make nsIFrame derivatives and helper abstract classes use a different dynamic-cast system than nsISupports:
...
* we know all types frames may be cast to at compile time, so instead of extensible GUID IIDs, use a big enum (see nsQueryFrame::FrameIID)
* eliminate all vestiges of refcounting, since frames aren't refcounted
Some frames (SVG frames in particular) still implement nsISupports-derived interfaces, for example nsISVGValue. There is a FrameIID for nsISVGValue that lets you go from a frame to the XPCOM interface, but you can't query back.
r+sr=roc
This patch locally causes two REFTEST-UNEXPECTED-PASS for Bidi stuff. It's possible that I accidentally fixed a bug, but I'm not sure, so I'm going to wait for the tinderboxes to confirm my local results.
2008-11-05 14:25:30 -05:00
L. David Baron
ad5d856ae6
Rename flags and methods from space manager to float manager. (Bug 191448) r+sr=roc
2009-01-04 19:39:54 -05:00
Robert O'Callahan
9d2aaab3a6
Bug 458296. When a block doesn't carry out the bottom-margin of its children, add that bottom-margin to its overflow area. Also, add the bottom-padding of a scrolled block to its overflow area. r+sr=dbaron
2008-12-29 21:18:40 +13:00
Robert O'Callahan
3bbe36fc35
Followup comment change for bug 465928.
2008-12-03 14:50:22 +13:00
Robert O'Callahan
bc9d906d47
Bug 465928. Avoid SetInvalidateTextRuns being called by nsBlockFrame::DoRemoveFrame when we're just deleting empty continuation frames. r+sr=dbaron
2008-12-03 14:27:19 +13:00
Benjamin Smedberg
ae14b3d6aa
Relanding bug 461410 - nsILineIterator is never used outside of layout - set nsresults to replicate the existing code more correctly, which fixes the mochitest failures, r+sr=roc with nits noted by Mats Palmgren
2008-10-30 12:17:59 -07:00
Benjamin Smedberg
292d44b1a8
Backed out changeset d4c9a0776667 (deCOM nsILineEnumerator) due to regression from it or bug 461212
2008-10-28 02:49:14 -04:00
Benjamin Smedberg
87c2e7ef23
Bug 461410 - nsILineIterator is never used outside of layout, and doesn't need to be refcounted: the callers can just destroy it when they're done with it. We can't do this with a virtual destructor, however, because nsTableRowGroupFrame implements the interface directly, while nsLineIterator is a separately-allocated class. So clients are expected to call DisposeLineIterator when they're done with it.
...
Instead of accessing nsILineIterator using QueryInterface, we add a nsIFrame::GetLineIterator API, which is cleaner and more efficient all at the same time!
r+sr=roc
2008-10-28 00:47:19 -04:00
Mats Palmgren
8344d70c49
Add 'aLineList' param to MarkLineDirty() so it knows the correct line list for 'aLine'. b=443528 r+sr=roc
2008-10-12 21:26:06 +02:00
Robert O'Callahan
775dd33c74
Bug 450930. Fire a DOM event when painting so that content and chrome can track what's being repainted. r=smaug,sr=dbaron
2008-09-18 21:47:21 +12:00
Michael Ventnor
129d4dc805
Implement text-shadow rendering (bug 10713). r+sr=roc. Relanding with fixes to make tests pass on Mac
2008-06-13 10:02:32 +12:00
Robert O'Callahan
42904fb3e3
Backing out text-shadow due to Mac issues
2008-06-12 17:32:31 +12:00
Michael Ventnor
159e13c0ea
Implement text-shadow rendering.
2008-06-12 14:34:40 +12:00
Robert O'Callahan
4188aa979e
Allow floats to be placed on the current line even after nonzero-width inline content has been placed. Fixes an Acid3 layout bug. r+sr=dbaron
2008-06-11 11:53:22 +12:00
dbaron@dbaron.org
f7d78f8105
Compute widths for replaced block clearing past floats once we're at the correct vertical position. b=430813 r+sr=roc a=schrep
2008-05-03 16:33:36 -07:00
dbaron@dbaron.org
f8dcd3c29e
Fix bug 427129 / 377664: When displacing blocks that don't interact with floats around floats, displace the border box rather than the margin box. Fix bug 427782: Simultaneously, only displace when the width actually won't go down to an amount that fits (i.e., if it will go to an amount smaller than the intrinsic minimum width, let it). b=427129 r+sr=roc a=schrep
2008-04-14 18:05:17 -07:00
dholbert@cs.stanford.edu
b7a5c89466
Bug 427017: Disable page-break-before/after for fixed- & absolutely-positioned elements. Also, fix assertion during an iterator-comparison by handling case where lineBox is in overflow-lines. r=fantasai sr=roc a1.9=beltzner
2008-04-11 22:32:49 -07:00
masayuki@d-toybox.com
dfeff6fa58
Bug 417014 Need blacklist system for underline offset adjusting of CJK fonts which have wrong underline offset r=roc+stuart, sr=roc, b1.9=stuart
2008-03-12 19:36:58 -07:00
roc+@cs.cmu.edu
efc1d5a1dd
Bug 400057. Make nsBlockInFlowLineIterator useful for finding the line containing a frame, searching across block continuations and their overflow lines. Use it in various places, especially in textrun construction. r+sr=dbaron
2008-02-27 01:53:48 -08:00
fantasai.cvs@inkedblade.net
919d5bd3d3
fixed positioned elements print only on first and last pages b=417676 r+sr=roc
2008-02-24 04:19:17 -08:00
reed@reedloden.com
e59cccedde
Bug 391559 - "Incorrect ordered-list numbering within -moz-column-* (and/or numbering changes when clicked)" [p=craig.topper@gmail.com (Craig Topper) r+sr=roc a1.9=beltzner]
2008-02-23 23:31:29 -08:00
dbaron@dbaron.org
f94fd579c7
Stop using -moz-float-edge for list items, but offset the bullet position in the presence of floats. b=413840 (and numerous others) r+sr=roc a=blocking1.9+
2008-02-10 13:49:24 -08:00
roc+@cs.cmu.edu
5338360abe
Bug 411870. nsBidiPresUtils needs to track the current line across block continuation boundaries. r=smontagu
2008-01-29 15:39:39 -08:00
dbaron@dbaron.org
f970a9abc8
Push scrollframes, tables, and other blocks that don't participate in float formatting down when they don't fit next to floats. b=134706,349255 r+sr=roc a=blocking1.9+
2008-01-28 23:40:05 -08:00
roc+@cs.cmu.edu
72c72d1d33
Bug 411870 backout again
2008-01-28 11:10:26 -08:00
roc+@cs.cmu.edu
ef12785f4c
Bug 411870. Bidi resolution needs to scan through block continuations when tracking the current line for frames. r=smontagu
2008-01-28 10:16:22 -08:00
roc+@cs.cmu.edu
cc8a28fdd6
backing out 411870
2008-01-27 22:28:31 -08:00
roc+@cs.cmu.edu
fbf20e6e5d
Bug 411870. Make bidi resolution track lines across block continuation boundaries. r=smontagu
2008-01-27 21:07:14 -08:00
dbaron@dbaron.org
d741ff81b0
Fix comment describing nsBlockFrame.
2007-12-12 13:49:14 -08:00
roc+@cs.cmu.edu
6512139327
Bug 400244. Remove UndoSplitPlaceholders which is not only unnecessary but actually harmful/crashy. r=fantasai,sr=dbaron
2007-12-01 02:51:56 -08:00
reed@reedloden.com
8c4eb4e25f
Bug 398101 - Be more diligent about invalidating textruns for lines [p=roc r+sr=dbaron a=blocking1.9+]
2007-11-08 22:55:32 -08:00
dholbert@cs.stanford.edu
f90fee0b0b
Bug 399384: Make first-letter frames use nearest ancestor blockFrame's content node, instead of direct parent's. r=bzbarsky, r+a=roc
2007-10-19 10:41:29 -07:00
roc+@cs.cmu.edu
036806699a
Bug 397518. Wrap inline non-MathML children of MathML frames in anonymous blocks. r+sr=bzbarsky
2007-10-12 01:30:54 -07:00
smontagu@smontagu.org
251bc05568
Change the usage of NEEDS_BIDI_RESOLUTION so that it is either set on every block in a continuation chain or none of them. Bug 394805, r+sr+b=roc
2007-10-11 04:41:04 -07:00
mats.palmgren@bredband.net
b61d4af97e
Take into account that |line| can be an overflow line when accessing the previous line. Patch by roc and me. b=397007 r+sr=me/roc blocking1.9=roc
2007-10-07 10:32:07 -07:00
smontagu@smontagu.org
47796d6787
Previous checkin was for bug 382422
2007-09-03 00:00:10 -07:00
smontagu@smontagu.org
ba9c0ad3c2
Bug 394222: Optimize calls to Bidi resolution. r=dbaron, sr+a=roc
2007-09-02 23:51:11 -07:00
roc+@cs.cmu.edu
1131fb1665
Bug 390050. Scan all blocks in a flow-chain, and their overflow lines, when iterating through lines to build text runs. r=smontagu,mats,sr=mats,a=bz
2007-08-22 02:08:13 -07:00
masayuki@d-toybox.com
9affd989eb
Bug 365336 text-decoration width should be rounded to the device pixels r+sr=roc
2007-08-06 01:15:00 -07:00
jwalden@mit.edu
bf1a450729
Bug 386801 - nsAbsoluteContainingBlock doesn't need to store a child list name; this shaves four bytes off nsViewportFrame, nsBlockFrame, and nsPositionedInlineFrame. r+sr+a=dbaron
2007-08-02 15:44:36 -07:00
roc+@cs.cmu.edu
a28eeaaafd
Bug 379349. Add support for 'overflow containers' --- special frame continuations that do not map any content of their own, but serve only as containers for laying out children that overflowed their parents' content height. patch by fantasai, r+sr=eli,roc
2007-07-25 21:03:29 -07:00
sharparrow1@yahoo.com
2c2399e327
Bug 381385: get rid of unneeded members of nsFloatCache (saves about 50 bytes footprint per float). r+sr=roc.
2007-06-16 13:27:46 -07:00
smontagu@smontagu.org
5318673346
Do bidi resolution during GetPrefWidth() and GetMinWidth() as well as Reflow(). Bug 365130, r+sr=roc
2007-05-28 07:40:56 -07:00
bzbarsky@mit.edu
1b5f6b30b6
Change the FrameNeedsReflow API to pass the dirty flags to be added directly tothe method, instead of setting them before calling the method. That way we canavoid reflowing the ancestor of a reflow root which is not itself dirty but hasdirty children. This also makes it harder to set dirty bits inconsistentlywith the FrameNeedsReflow call. Bug 378784, r+sr=dbaron, pending rbs' reviewon the mathml parts.
2007-05-06 12:16:51 -07:00
roc+@cs.cmu.edu
31b42ee9c8
Bug 368863. Reparent floats properly when placeholders move between inline continuations. r+sr=dbaron
2007-04-20 17:42:58 -07:00
bzbarsky@mit.edu
884eb773c8
Improve detection of blocks with first-letter style. Bug 372550, r+sr=dbaron
2007-04-15 17:42:54 -07:00
bzbarsky%mit.edu
ad75d79f05
Make blocks whose ancestors are not blocks have the NS_BLOCK_MARGIN_ROOT and
...
NS_BLOCK_SPACE_MGR bits as necessary. Bug 354600, r+sr=roc
2007-02-18 23:53:25 +00:00
smontagu%smontagu.org
b21d2d6a35
Bug 369236: Move IsBidiFormControl from nsHTMLReflowState to nsBlockFrame. r+sr=roc
2007-02-11 07:19:09 +00:00
cvshook%sicking.cc
a39ff30284
Kill remainders of ns(XBL|HTML|XUL|Layout)Atoms. r/sr=jst b=368128
2007-01-30 00:06:41 +00:00
dbaron%dbaron.org
f6245f0ed9
Change the bulk of ascent (baseline) computation to happen on a virtual method on nsIFrame, and remove the redundant descent member from nsHTMLReflowMetrics, primarily to support having both first-line and last-line baselines. b=367332 r+sr=roc
2007-01-23 04:06:56 +00:00
mats.palmgren%bredband.net
79090c0f4b
Rename IsSplittable() to GetSplittableType(). b=349973 r+sr=bzbarsky
2006-12-20 03:52:34 +00:00
dbaron%dbaron.org
31f1898810
Bug 300030: Move intrinsic width computation out of nsIFrame::Reflow and into its own methods on nsIFrame. Replace reflow reasons, types, and commands with dirty bits/notifications. Thanks to bzbarsky for almost all of the HTML form controls (mozilla/layout/forms) changes, and many others for help testing and patching. For detailed commit logs, see REFLOW_YYYYMMDD_BRANCH, where YYYYMMDD is one of 20061031, 20060830, 20060603, 20060302, 20060119, 20051011, 20050804, 20050429, 20050315, 20050111, and 20041213.
2006-12-08 05:38:33 +00:00
bzbarsky%mit.edu
b856b2c477
Back out bug 354600 to fix regressions.
2006-11-19 20:23:56 +00:00
bzbarsky%mit.edu
cbcaad14b4
Make block frames that are not kids of blocks automatically have space managers
...
(and margin roots, except in the columns case) so we don't have to play
whack-a-framestate-flag. Bug 354600, r+sr=roc
2006-11-16 17:51:53 +00:00
roc+%cs.cmu.edu
ae80e3d181
Bug 312963. Apply aTryPull to pulls of inline frames as well as lines. r+sr=dbaron
2006-09-22 02:04:56 +00:00
roc+%cs.cmu.edu
a42c58298b
relanding fix for bug 317278 :-(
2006-06-29 01:19:48 +00:00
roc+%cs.cmu.edu
1621ac24bd
Bug 237085. Move string subdivision code to gfx so we can efficiently make it metrics-dependent. r=smontagu,sr=rbs
2006-06-26 22:18:23 +00:00
roc+%cs.cmu.edu
ab87d3edb5
Bug 317278. Reland patch that reflows lines again if we detect some already-placed floats need to move to the next line. This time, with changes to nsSpaceManager's PushState/PopState infrastructure so that dynamic allocations are never required; the saved state is always stack-allocated by callers. r+sr=dbaron
2006-06-19 23:06:59 +00:00
roc+%cs.cmu.edu
ed0bc93ff0
Backing out patch for 317278 due to Tp regression
2006-06-19 01:29:07 +00:00
roc+%cs.cmu.edu
cc52ece1a1
Bug 317278. In some cases we push float placeholders from one line to the next after we have already placed their floats on the line. In such situations, reset the space manager and force the line to reflow again so those floats don't get placed. r+sr=dbaron
2006-06-19 00:02:49 +00:00
roc+%cs.cmu.edu
597d8bc582
Bug 339889. Propagate invalidation through the frame hierarchy to topmost widgets. r+sr=bzbarsky
2006-06-08 01:11:43 +00:00
roc+%cs.cmu.edu
a7f03736a9
Bug 328926. Remove aPresContext parameter from nsIFrame::Destroy, nsIFrame::SetInitialChildList and nsIFrame::RemovedAsPrimaryFrame. patch by Marc Liddell, r+sr=roc
2006-04-10 00:16:29 +00:00
roc+%cs.cmu.edu
6428e72efd
Bug 282173. Remove BuildFloatList. r+sr=dbaron
2006-04-09 22:56:27 +00:00
dbaron%dbaron.org
0e88f73bc6
Single line comments to describe files (helpful in LXR)
2006-03-29 18:29:03 +00:00
roc+%cs.cmu.edu
0a10a79f62
Bug 330934. Set a nsIFrame's stylecontext in its constructor, to ensure that there's always one available for GetPresContext() to use even if Init hasn't been called. Patch by Marc Liddell, r+sr=roc
2006-03-26 21:30:36 +00:00
pavlov%pavlov.net
131e8794e2
backing out roc's patch for bug 328926 due to crash running tests on vc8 machines.
2006-03-15 06:43:36 +00:00
roc+%cs.cmu.edu
557b089a47
Bug 328926. Remove aPresContext parameter from Destroy and SetInitialChildList. patch by Marc Liddell, r+sr=roc
2006-03-15 03:14:02 +00:00
roc+%cs.cmu.edu
c2801ebbd7
Bug 328926. Remove aPresContext from nsIFrame::Init and nsIFrame::DidSetStyleContext. r+sr=roc, patch by Marc Liddell
2006-03-09 18:55:21 +00:00
roc+%cs.cmu.edu
f132edee94
Bug 256311. Improve block reflow performance in the presence of many empty lines, by being more aggressive about caching block and line emptiness state, and by stashing a reference to a line that we know has nothing but empty lines above it. Relanding because I accidentally backed it out. r+sr=dbaron
2006-02-27 04:15:05 +00:00
roc+%cs.cmu.edu
1fac9c6d76
Backing out changes for bug 326944, really this time\!
2006-02-27 04:13:51 +00:00
roc+%cs.cmu.edu
bde356f1f5
Backing out changes for bug 326944.
2006-02-27 03:22:03 +00:00
roc+%cs.cmu.edu
e344f390f8
Bug 256311. Improve block reflow performance in the presence of many empty lines, by being more aggressive about caching block and line emptiness state, and by stashing a reference to a line that we know has nothing but empty lines above it. r+sr=dbaron
2006-02-27 02:51:57 +00:00
roc+%cs.cmu.edu
b7126ee8e0
Bug 326944. Remove nsIComboboxControlFrame. r+sr=roc, patch by Marc Liddell
2006-02-27 02:33:26 +00:00
uriber%gmail.com
c7032d59bb
Bug 299065: Bidi resolution needs to split inlines in addition to text frames. r+sr=dbaron
2006-02-21 21:33:47 +00:00
roc+%cs.cmu.edu
77bca74243
Bug 317375. Reorganize frame painting and mouse event targeting around frame display lists. Some review from dbaron, lots of testing help from Martijn, Julien and others
2006-01-26 02:29:17 +00:00
roc+%cs.cmu.edu
a710fcd15d
Bug 316281. Rework GetContentAndOffsetsFromPoint. r=uriber,sr=roc,patch by Eli Friedman
2005-12-07 23:08:39 +00:00
timeless%mozdev.org
1c34e68034
Bug 106386 Correct misspellings in source code
...
patch by mats.palmgren@bredband.net r=dbaron sr=dbaron
2005-11-20 22:05:24 +00:00
roc+%cs.cmu.edu
520b30a7f7
Bug 313817. DeCOMtaminate more NS_New*Frame functions. r+sr=roc, patch by Marc Liddell
2005-11-04 02:38:33 +00:00
roc+%cs.cmu.edu
fed343c43a
Bug 108310. Make GetFrameForPoint take frame-relative coordinates, not bogus relative-to-some-view-or-other, and simplify the signature. r+sr=roc, patch by Eli Friedman.
2005-09-19 02:15:54 +00:00
bzbarsky%mit.edu
cf64715ae5
Remove the pointless nsIContent arg of nsIFrame::AttributeChanged. Bug 281390,
...
patch by Vidar Braut Haarr <vhaarr+bmo@gmail.com>, r+sr=bzbarsky
2005-09-07 16:49:21 +00:00
roc+%cs.cmu.edu
f246fa2bbd
Bug 280987. Remove aPresContext from nsIFrameDebug::List. r+sr=roc, patch by Vidar Braut Harr.
2005-09-06 21:34:50 +00:00
timeless%mozdev.org
f3dd2fbc15
Bug 291436 r:\mozilla\layout\generic\nsBlockFrame.h(628) : warning C4099: 'nsBlockFrame::nsAutoOOFFrameList' : type name first seen using 'struct' now seen using 'class'
...
r=roc sr=roc a=shaver
2005-06-01 16:28:06 +00:00
bzbarsky%mit.edu
b6e9b8ecd1
Fix list renumbering regression. Bug 293070, r+sr+a=dbaron
2005-05-17 03:15:14 +00:00
roc+%cs.cmu.edu
87c224f2cb
Bug 263825. Make paginated floats work, and other fixes. r+sr=dbaron
2005-03-23 03:35:08 +00:00
bzbarsky%mit.edu
f03bac09cc
Add an IsFloatContainingBlock() method on nsIFrame, use this in the frame
...
constructor. Make sure the div inside an <object> when we do our "we need a
plugin" thing has the space manager bit set. Bug 283385, bug 285165, bug
286111. r+sr=roc
2005-03-18 04:13:05 +00:00
bzbarsky%mit.edu
54d585f2af
Remove prescontext args for some nsIFrame methods
...
(Append/Insert/Remove/ReplaceFrames) and for some methods in table land. Patch
by Vidar Braut Haarr <bugmail@q1n.org>, r+sr=bzbarsky
2005-02-07 01:58:25 +00:00
roc+%cs.cmu.edu
3ff2296f52
Bug 263099. Fix coordinate translation in event handling when finding the relevant line of nested blocks. r+sr=bzbarsky
2005-02-07 01:09:58 +00:00
neil%parkwaycc.co.uk
74e2aa375a
Bug 276100 GetOriginToView has unused PresContext argument p=bugmail@q1n.org r+sr=dbaron
2005-01-01 17:26:29 +00:00
bugzilla%arlen.demon.co.uk
3d7261604c
Bug 270708 remove nsPresContext variable from AttributeChanged and cleaned up comment in nsIFrame.h
...
p=bugmail@q1n.org r=pkwarren sr=bzbarsky
2004-12-31 01:13:27 +00:00
roc+%cs.cmu.edu
13a6502805
Bug 209694. Major rework of margin-collapsing and clearance to match CSS 2.1 rules. Also includes major incremental reflow fixes for those situations. See the bug for details. rubber-stamp r+sr=dbaron
2004-11-25 14:51:00 +00:00
roc+%cs.cmu.edu
b7dfbedd1f
Changing IsFrameEmpty to IsSelfEmpty as dbaron requested and I forgot to do before checking in.
2004-11-15 05:01:11 +00:00
roc+%cs.cmu.edu
fbb67978a5
Bug 261064. Compute static absolute positions more accurately. Also, ensure that static absolutely positioned frames are moved when their placeholders move. Also, ensure that absolutely positioned frames positioned relative to the left or bottom edge of their container move when the container size changes. r+sr=dbaron (rubberstamp)
2004-11-14 20:22:58 +00:00
roc+%cs.cmu.edu
c237520c89
Bug 251162. Landing experimental implementation of CSS3 columns. r+sr=dbaron
2004-10-08 12:17:10 +00:00
bryner%brianryner.com
f67d250152
Unify box and frame trees by moving nsIBox methods onto nsIFrame. XUL-box frames can call the superclass nsBox implementation, all other frames get the nsFrame implementation of the box methods, which acts like nsBoxToBlockAdaptor used to. Bug 258513, r+sr=roc.
2004-09-28 18:37:50 +00:00
roc+%cs.cmu.edu
3a3ac38479
Bug 257216. Fix sundry block issues for columns. In particular, remove overflowing floats from the space manager before we compute the space manager's XMost and YMost to include in the block size. r+sr=dbaron
2004-09-13 13:35:46 +00:00
roc+%cs.cmu.edu
34a39349e6
Relanding fix for bug 253977, now that state bits prevent GetOverflowLines from being expensive. Fix a few columns-hurting block bugs. 1) Always drain overflow lines on any kind of block reflow. 2) Set NS_FRAME_REFLOW_NEXTINFLOW in the reflow status whenever reflow of the block's next-in-flow is required. 3) Search overflow lines when we're looking for frame continuations to delete. 4) Show overflow area in nsContainerFrame frame dump. r+sr=dbaron
2004-08-26 12:38:50 +00:00
roc+%cs.cmu.edu
5990b839d3
Bug 256937. Use state bits to avoid expensive property lookups in GetOverflowLines/OutOfFlows/Placeholders. r+sr=dbaron
2004-08-26 03:07:05 +00:00
roc+%cs.cmu.edu
01147f5d80
Bug 253977 backout because of possible Tp regression on btek.
2004-08-22 03:50:59 +00:00
roc+%cs.cmu.edu
aca07ab169
Bug 253977. Fix a few columns-hurting block bugs. 1) Always drain overflow lines on any kind of block reflow. 2) Set NS_FRAME_REFLOW_NEXTINFLOW in the reflow status whenever reflow of the block's next-in-flow is required. 3) Search overflow lines when we're looking for frame continuations to delete. 4) Show overflow area in nsContainerFrame frame dump. r+sr=dbaron
2004-08-22 03:00:46 +00:00
bryner%brianryner.com
5c02a6978c
Change nsIPresContext to nsPresContext globally, follow-up to bug 253470. rs=roc
2004-07-31 23:15:21 +00:00
jim_nance%yahoo.com
824a6d1d0c
Fix But #250105 - Add Arena for nsLineLayout buffers. r+sr=roc
2004-07-15 17:50:34 +00:00
aaronleventhal%moonset.net
092ea261a2
Bug 242594. Expose list and list item objects, and bullet text. r=Louie.Zhao, sr=jst/dbaron
2004-06-04 19:28:36 +00:00
smontagu%smontagu.org
82d48e1672
DeCOMtaminate nsIFrame Set/GetProperty and merge Set/GetBidiProperty with it. Bug 117751, r+sr=roc
2004-06-01 06:20:16 +00:00
roc+%cs.cmu.edu
44b2bd59f6
Bug 230417. When a placeholder frame lands in a block's overflowList, put its out of flow frame in a new child list, overflowOutOfFlowsList
2004-05-05 02:30:33 +00:00
gerv%gerv.net
708b56cff4
Bug 236613: change to MPL/LGPL/GPL tri-license.
2004-04-18 14:30:37 +00:00
bzbarsky%mit.edu
04b19c480d
Change the way regression tests get the framestate to make it possible to mask
...
out irrelevant state bits as needed. Apply this to NS_BLOCK_HAS_LINE_CURSOR.
Bug 237955, r+sr=roc, a=dbaron
2004-04-04 01:48:16 +00:00
dbaron%dbaron.org
41c16857c2
DeCOMify nsIFrame::IsPercentageBase and rename to IsContainingBlock. b=237169 r+sr=bzbarsky a=brendan
2004-03-12 04:40:17 +00:00
roc+%cs.cmu.edu
2ab13be9a5
Fixing bustage, hopefully, THIS TIME
2004-03-07 19:23:53 +00:00
roc+%cs.cmu.edu
c7e522958e
Bug 51938. Cache recently accessed line if the lines' combinedArea.y/ymosts are nondecreasing --- speeds up painting and event handling on large blocks. r+sr=bzbarsky
2004-03-07 18:04:24 +00:00
bryner%brianryner.com
bc74f0b352
More nsIPresContext deCOMtamination (bug 229371). Removed GetBaseURL, rename GetMedium to Medium and inline it, remove virtual style resolution methods that forward to style set (callers will call style set methods directly). Removed PresContext parameter to StyleSet style resolution functions. r+sr=dbaron.
2004-01-28 00:18:22 +00:00
roc+%cs.cmu.edu
e7f165c614
Bug 190735. deCOMtaminate nsIFrame::FirstChild and nsIFrame::GetAdditionalChildListName. r+sr=bz
2004-01-09 14:20:53 +00:00
dbaron%dbaron.org
8856db0238
Clean up nsIFrame::IsEmpty signature and move towards making 'white-space' work on inlines. b=191699 r+sr=roc
2003-11-10 23:36:06 +00:00
uid502
d81619b4fa
Bug 190735. DeCOMtaminate nsIFrame::GetFrameType. r+sr=bzbarsky
2003-10-31 20:19:18 +00:00
dbaron%dbaron.org
3de4dc91e0
Use the correct term "float" instead of "floater". b=218654 r+sr=bzbarsky
2003-10-13 21:51:02 +00:00
bzbarsky%mit.edu
dc2a9b8f46
Use UnionRect instead of reimplementing it in the block code. Bug 220741,
...
r+sr=dbaron
2003-10-10 01:12:55 +00:00
kyle.yuan%sun.com
6562d22599
Bug 215220 Unable to receive caret-move event in HTML document
...
r=aaron, sr=henry.jia
Bug 217311 [ATK Accessibility] wrong text structure for HTML text
r=bolian.yin (Not in the default build)
Bug 218992 no placeholder for broken image
r=bolian.yin (Not in the default build)
This patch aims at solving some ATK accessible text issues. The main parts of this patch (inside accessibility/src/atk directory or the #ifdef MOZ_ACCESSIBILITY_ATK/#endif macro) are not in the default build (it gets built only when the default toolkit set to gtk2)
2003-09-14 12:56:21 +00:00
dbaron%dbaron.org
d85698fd40
Remove hint parameter from AttributeChanged methods and simplify style hint mechanism. b=211308 r+sr=bzbarsky
2003-07-11 21:16:12 +00:00
roc+%cs.cmu.edu
e7bf73c0d8
Bug 201767. Make nsBlockFrame::GetAdditionalChildListNames return the overflowList. Also, don't create scrollbars in print contexts except for the viewport scrollbar. r+sr=bzbarsky.
2003-04-22 01:33:14 +00:00
bzbarsky%mit.edu
0b85b42edc
Fix crash when composer and comboboxes interact. The real fix is in
...
nsComboboxControlFrame; the nsBlockFrame changes are just cleanup the fix
enables. Bug 197942, r=jkeiser, sr=dbaron.
2003-04-12 16:06:54 +00:00
kyle.yuan%sun.com
a8574cad31
Bug 193656 [ATK Accessibility] implement accessible object for block frame
...
r=aaronl, sr=henry.jia
2003-03-05 02:51:36 +00:00
dbaron%dbaron.org
0ec06d045f
Change the way we calculate max-element-width for blocks with floaters: stop trying (and sometimes failing) to ensure that there can always be text next to the floater. b=186593 r+sr=roc+moz
2003-02-22 16:19:31 +00:00
dbaron%dbaron.org
6dd68f3c64
Remove nsISizeOfHandler and associated SizeOf methods. b=106792 r=bzbarsky sr=jst
2003-02-22 15:34:38 +00:00
bryner%netscape.com
e43f5a49fd
Remove nsIStyleContext (bug 114713), r/sr=dbaron. Changed lots of methods to use nsStyleContext* or already_AddRefed<nsStyleContext> as return values, depending on whether a reference is returned. Turn on nsRefPtr (bug 104346), and change nsDerivedSafe to not declare AddRef and Release explicitly virtual, r=jag, sr=dbaron.
2003-02-22 00:32:13 +00:00
dbaron%dbaron.org
57124d8115
Replace computation of max-element-size (height and width) with max-element-width alone, since the max-element-height is practically unused and not meaningful for layout. b=186953 r+sr=bzbarsky
2003-01-09 14:26:32 +00:00
dbaron%fas.harvard.edu
34a1e37f7e
Correctly implement text-decoration in standards mode by drawing the underline on the element with the text-decoration property set. Refactor painting code a bit to avoid code duplication. Patch by Esben Mose Hansen <esben@oek.dk>, with paint refactoring and some other changes by dbaron. r=dbaron sr=bzbarsky b=1777
2002-12-11 04:00:18 +00:00
karnaze%netscape.com
0f0042a430
bug 127286 (part II due to cvs problems) - Handle splitting of floaters when lines impacting them are outside the block containing the floaters. sr=kin, r=alexsavulov
2002-12-04 00:58:52 +00:00
dbaron%fas.harvard.edu
d7be43384d
Fix margin collapsing of margins other than the first child's top margin out of the top of a block. b=44242, 18206 r=roc (mostly)
2002-11-28 19:29:28 +00:00
karnaze%netscape.com
92c3444803
bug 127145 - split blocks with computed heights. a=asa, sr=kin, r=alexsavulov.
2002-10-21 14:54:00 +00:00
karnaze%netscape.com
40902d04df
bug 163614 - Changed DeleteChildsNextInFlow to DeleteNextInFlowChild, params, and callers. sr=kin, r=alexsavulov,dcone
2002-10-08 20:35:26 +00:00
karnaze%netscape.com
d71ccf1e46
bug 157915 - Use the parent of the continued frame when calling DeleteChildsNextInFlow. sr=kin, r=alexsavulov
2002-09-24 22:13:20 +00:00
roc+%cs.cmu.edu
1b93fe2b31
Bug 75121. Incrementally reflow absolute frames without doing a resize-reflow of the container. Patch by dbaron and roc. r=dbaron,r=roc,sr=kin
2002-09-24 11:43:48 +00:00
dbaron%fas.harvard.edu
e2d870b917
Fix regression causing scrollbars not to be extended by absolutely positioned elements in some cases. Also removed unused |FixParentAndView|. b=154230 r=bzbarsky sr=jst
2002-08-06 12:54:52 +00:00
karnaze%netscape.com
b342f8f732
bug 153785 - Added function to undo splitting floaters when the line they are on gets moved to the next page. Cached the break type of the last floater that gets split in the block reflow state so that the frame afterh the floater's continuation can combine that break type with its own. a=asa, sr=kin, r=alexsavulov
2002-07-17 01:48:56 +00:00
dbaron%fas.harvard.edu
e63a11c0e8
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
2002-06-25 21:16:17 +00:00
karnaze%netscape.com
8458aad931
bug 151620 - always use quirk line-height inside a td. sr=waterson, r=dbaron.
2002-06-19 22:28:47 +00:00
rods%netscape.com
89bbd44ace
Add PR_LOGGING for printing
...
Bug 121622 r=dcone sr=kin
2002-06-19 21:51:13 +00:00
karnaze%netscape.com
29f4ff0184
bug 148245 - only split floaters when printing if the height is constrained, never split floating first letters. sr=waterson
2002-06-14 14:30:33 +00:00
karnaze%netscape.com
1faf4c0592
bug 145305 - split floaters during printing. sr=attinasi, r=alexsavulov.
2002-05-28 22:50:43 +00:00
waterson%netscape.com
e3554c37cc
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
2002-05-10 18:22:41 +00:00