fantasai
1e880721fb
Bug 508473 Part II: Remove DeletingFrameSubtree r=bz sr=roc
2009-12-24 00:20:41 -05:00
Mats Palmgren
b4284c9cc0
Don't try to get a nsLineBox* from an empty line list, it aborts a debug build. b=533379 r=bzbarsky
2009-12-18 10:02:10 +01:00
Olli Pettay
2f4c5ea761
Bug 487667 - Clone documents for printing, r=roc+jst+joe+dbaron
...
--HG--
extra : rebase_source : dbab242066ba97c0d7f34a2fb701a1c465f26ec4
2009-12-10 20:02:13 -08:00
Boris Zbarsky
99027aa785
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
e9f228c7d5
Backing out bug 525608 and bug 525952
2009-12-10 18:28:08 -08:00
Boris Zbarsky
0a82b262db
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
ffab603a47
Bug 518114 part 1. Don't force a virtual GetType call in GetFloatFromPlaceholder. r=roc
2009-11-16 16:00:07 -05:00
Timothy Nikkel
2f4f47ae5d
Bug 515811. mPrevChild needs to be set on early exit from nsBlockFrame::ReflowBlockFrame. r=fantasai sr=dbaron
...
--HG--
extra : rebase_source : a0a457fa9348f48ac4f491610098f7488501faf7
2009-10-15 21:41:58 -05:00
Robert O'Callahan
40e5fe01a0
Bug 523468. Make sure we reflow the next line when content is pushed or pulled from an inline frame. r=dbaron
2009-10-27 14:43:56 +13:00
Timothy Nikkel
0df2b80d29
Bug 520427. Improvements to debug output List for frames. r=dbaron
...
--HG--
extra : rebase_source : f7723925a24937bb1989344805e9fda01ae0eded
2009-10-15 21:47:03 -05:00
Boris Zbarsky
5215a681c7
Bug 525295. Rename nsStyleContext::GetPseudoType to GetPseudo. r=dbaron
2009-10-29 17:17:56 -04:00
Robert O'Callahan
28cab8ef6c
Backed out changeset 9f5177a978ac
2009-10-27 21:46:18 +13:00
Robert O'Callahan
d6f331fed2
Bug 523468. Force next line to be reflowed whenever we push or pull children from an inline frame. r=dbaron
2009-10-27 14:43:56 +13:00
Robert O'Callahan
63962ec51f
Bug 504524. Don't reflow the line after an incomplete frame unless we really need to. r=bz
2009-10-19 01:01:40 -07:00
Simon Montagu
f0251c1158
Don't propagate the FRAMES_ARE_EMPTY flag when continuations cross block frame boundaries. Bug 495875, r+sr=roc
2009-10-13 00:12:54 -07:00
Boris Zbarsky
7428a0a55a
Bug 516742. Make RFindLineContaining walk backwards along the lines' frames too, not just along the lines. r=roc,fantasai
2009-10-02 12:31:43 -04:00
Boris Zbarsky
4fc405cefa
Bug 512336. Make frame lists doubly-linked. r=roc,fantasai
2009-10-02 12:27:37 -04:00
David Zbarsky
8d8553ee41
Bug 488249. Replace IsNodeOfType(eHTML) checks with namespace checks. r+sr=jst
2009-08-24 16:02:07 -04:00
Boris Zbarsky
5c641e6c2b
Bug 512471. Make nsBlockFrame's mFrames track its principal child list. r=roc,fantasai
2009-09-29 15:47:05 -04:00
Timothy Nikkel
38273580a9
Bug 499607. Stop leaking nsBlockFrame's overflow nsLineList's. r=fantasai sr=dbaron
...
--HG--
extra : rebase_source : 925847bda80e1b917af99119a11d0fb90ec479e8
2009-09-28 20:23:33 -05:00
Mats Palmgren
cf4ae83f1a
Store the overflow out of flows as an nsFrameList. b=516974 r=bzbarsky
2009-09-24 04:39:21 +02:00
Michael Ventnor
7b53709720
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
4e06ef038e
Bug 233463, patch 5 - Remove nsFrameList(nsIFrame*) ctor. r=bzbarsky
2009-09-18 13:09:36 +02:00
Mats Palmgren
90fe0851f3
Bug 233463, patch 4 - Make nsIFrame::mNextSibling private. r=bzbarsky
2009-09-18 13:09:36 +02:00
Mats Palmgren
7ca7fe2f91
Bug 233463, patch 3 - Make Destroy/RemoveFrame() methods void and assert that the frame to remove is present. r=bzbarsky
2009-09-18 13:09:36 +02:00
Mats Palmgren
377056c269
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
8279fd683e
Bug 233463, patch 0 - Use nsFrameList methods instead of nsIFrame::SetNextSibling. r=bzbarsky
2009-09-18 13:09:35 +02:00
Mats Palmgren
948203eb7d
Replace PR_MIN/PR_MAX with NS_MIN/NS_MAX. b=512106 r=roc
2009-09-16 17:01:36 +02:00
Daniel Holbert
16a6a6205f
Bug 503961: Initialize block-reflow-state's nsOverflowContinuationTracker a little later, so that it doesn't end up with stale overflow-list pointers. r=fantasai r=roc
2009-09-13 17:26:01 -07:00
Zack Weinberg
17eb5a6efc
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
399ff738b4
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
Timothy Nikkel
b8eade5f1b
Bug 514634. Remove unneeded second call to SetNextSibling, add some assertions, and fix a comment. r=fantasai
...
--HG--
extra : rebase_source : ab9ca9100ae41a022c4a0c129f98d5918d3c8c44
2009-09-11 10:26:30 +12:00
Mats Palmgren
c6ef676b9d
Don't fall off the edge without returning a value. b=514689 r=fantasai
2009-09-04 23:07:30 +02:00
Timothy Nikkel
4c95346537
Bug 513394. Make sure that mPrevChild gets set on nsBlockReflowState. r=dbaron
2009-09-02 11:33:15 -04:00
fantasai
6bc41a439f
Bug 492627 - Remove Placeholder Continuations [Part VII: More intelligent deletion of floats and overflow containers] r=roc
2009-08-31 11:25:37 -07:00
fantasai
059cc95c6b
Bug 492627 - Remove Placeholder Continuations [Part VI: Handle <br clear>] r=roc
2009-08-31 11:25:36 -07:00
fantasai
d5c48032c3
Bug 492627 - Remove Placeholder Continuations [Part V: Reimplement float splitting without placeholder continuations] r=roc
2009-08-31 11:25:36 -07:00
fantasai
973c4e83aa
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
01a3a6c947
Bug 492627 - Remove Placeholder Continuations [Part III: Remove current float-splitting code.] r=roc
2009-08-31 11:25:35 -07:00
Jesse Ruderman
93e766d08f
Fix typo in assertion message
2009-08-25 21:50:41 -07:00
Boris Zbarsky
36622c6995
Backed out changeset 4aa19414e651 (bug 488249) to fix test orange.
...
--HG--
extra : rebase_source : ae1c0155ec32b0887eff27ded77c6ba2b37dda64
2009-08-24 20:51:57 -04:00
David Zbarsky
932e28482f
Bug 488249. Replace IsNodeOfType(eHTML) checks with namespace checks. r+sr=jst
2009-08-24 16:02:07 -04:00
Zack Weinberg
2cd31f70f9
Bug 510651: Fold nsIFrameDebug into nsFrame. r=dbaron sr=mrbkap
2009-08-20 14:52:48 -07:00
L. David Baron
7cc38c6fe9
When a block without lines has a bullet, give the line we fake its full line height. (Bug 179596) r=roc
2009-08-10 19:48:42 -07:00
Boris Zbarsky
f2936464e5
Bug 281387. Make nsIFrame::Append/InsertFrames use nsFrameList. r=bernd,roc, sr=dbaron
2009-07-30 13:23:32 -04:00
Boris Zbarsky
6e2c80851a
Bug 496500. Don't try to interrupt on lines we're not actually reflowing, since during a resize on Windows HasPendingInputEvent returns true while the mouse is down. r+sr=roc
2009-07-30 11:53:36 -04:00
Boris Zbarsky
209e31bf48
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
b4eb9b7084
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
5fefb45a48
Bug 504221 part 12. Switch SetInitialChildList to nsFrameList. r=fantasai, r+sr=roc
2009-07-28 08:53:20 -04:00
Boris Zbarsky
31d4329c40
Bug 504221 part 6. Switch nsBlockFrame::AddFrames to nsFrameList. r=fantasai,roc
2009-07-28 08:51:10 -04:00
Boris Zbarsky
db6ff446ab
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
34df7918a4
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
Boris Zbarsky
fa8b53c57c
Bug 505482. Make sure to not leave frames on overflow lists when we interrupt reflow. Also fixes bug 478527 and bug 496742. r=roc
2009-07-24 09:32:32 -04:00
fantasai
1a4e383ad9
Bug 499377 - Store float region on frame r+sr=roc
2009-07-14 22:19:31 -07:00
fantasai
678c355f17
Bug 503183 - Use Overflow Containers for float continuations beyond end of containing block r=roc
2009-07-13 09:50:54 -07:00
fantasai
be518814d7
Bug 389462 - columns don't reflow on resize r=roc
2009-07-06 18:23:24 -07:00
Daniel Holbert
3589586c5b
Bug 465651: Move ReflowOverflowContainerChildren earlier in nsBlockFrame::Reflow. r+sr=roc
2009-06-28 20:56:13 -07:00
L. David Baron
5cd3ba5141
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
Timothy Nikkel
358f2be59b
Bug 491700 - "hang while resizing windows (CPU hits 100%, no interaction is possible)." r+sr=bzbarsky
2009-06-12 21:28:41 -04:00
L. David Baron
7c71744210
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
Jonas Sicking
d378472c28
Bug 481566: Add prefs to control making the content sink more responsive. r/sr=mrbkap
2009-05-19 08:54:42 -07:00
Robert O'Callahan
f34b7ae2c5
Bug 492480. Unregister placeholder relationship when we destroy out-of-flow frames, instead of trying to do it earlier in many places and not always doing it right. r+sr=dbaron
...
--HG--
extra : rebase_source : c9bedc1d7482b9c7ccf2878caded9320b92eb652
2009-05-14 09:35:02 +12:00
Daniel Holbert
0947631c3a
Bug 490909: Remove old layout debugging code, patch #2 : remove 'VerifyTree' & related code. r+sr=dbaron
2009-05-12 12:03:09 -07:00
Simon Montagu
824ab9b61e
Do bidi reordering for visual RTL frames in the same way as other bidi frames. Bug 492231, r+sr=roc
2009-05-11 03:36:01 -07:00
Boris Zbarsky
2ba0794803
Bug 492080. More correct marking of dirty bits on floats when we interrupt. r+sr=dbaron
2009-05-09 22:51:34 -05:00
Daniel Holbert
197a86fb76
Bug 490909: Remove old debugging functions InLineList & InSiblingList, since they're not used by anything. r+sr=dbaron
2009-05-06 10:03:59 -07:00
Boris Zbarsky
05780cc568
Bug 67752. Implement interruptible reflow. r=roc,dbaron
2009-04-21 19:53:52 -04:00
Joe Drew
64bbcf4155
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
e5f6293681
Bug 67752. Implement interruptible reflow. r=roc,dbaron
2009-04-21 19:53:52 -04:00
L. David Baron
e4a4e2453e
Use a struct containing a rectangle and a boolean for float available space rather than passing them around separately. (Bug 25888) r+sr=roc
2009-04-08 13:52:37 -07:00
L. David Baron
8db07256cc
Switch away from nsBlockReflowState::mAvailSpaceRect in nsBlockFrame::PropagateFloatDamage. (Bug 25888) r+sr=roc
2009-04-08 13:52:37 -07:00
L. David Baron
b901f2cb67
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
c82f0b7e2f
Switch away from nsBlockReflowState::mAvailSpaceRect for inline reflow. (Bug 25888) r+sr=roc
2009-04-08 13:52:37 -07:00
L. David Baron
9bba032aed
Switch away from nsBlockReflowState::mAvailSpaceRect for reflow of child floats. (Bug 25888) r+sr=roc
2009-04-08 13:52:36 -07:00
L. David Baron
5e6c45ce6a
Switch away from nsBlockReflowState::mAvailSpaceRect in bullet reflow, and simultaneously refix bug 427370 in a way that also fixes bug 428810. (Bug 25888) r+sr=roc
2009-04-08 13:52:36 -07:00
Jonathan Kew
bdab93a7ca
Bug 475968. Eliminate NS_FRAME_OUTSIDE_CHILDREN flag, store small overflow areas cheaply within the frame. r+sr=roc
2009-04-06 12:31:50 +12:00
Masayuki Nakano
88c1e2ba58
Bug 338209 Make spellchecker use thicker wavy underlines instead of dotted underlines r+sr=roc
2009-04-03 16:26:28 +09:00
L. David Baron
159abd3cdd
Remove check for block being impacted by float that should no longer be needed given float damage propagation. (Bug 25888) r+sr=roc
2009-03-11 07:51:32 -07:00
L. David Baron
9e2237e480
Fix nsBlockFrame warning about child being used uninitialized in FindLineContaining by switching while to do-while. (Bug 477963) r+sr=roc
2009-02-19 09:48:37 -08:00
L. David Baron
8b207bcc51
Revert (back out) the previous 11 changesets (bugs 477959, 477961, 477963, 477962, 322475, 478899, 475215, 478156), due to Mac talos orange with (as usual) no useful diagnostic.
2009-02-18 18:59:47 -08:00
L. David Baron
d65dcf5c80
Fix nsBlockFrame warning about child being used uninitialized in FindLineContaining by switching while to do-while. (Bug 477963) r+sr=roc
2009-02-18 17:13:24 -08:00
Mats Palmgren
f0978053f2
Keep track of the line container and forget the current line if it's for a different container. b=444027 r+sr=roc
2009-02-10 10:23:05 +01:00
L. David Baron
850e8b403f
Avoid calling PlaceBlock and unsetting dirty bits that we still need when an ancestor is going to reflow for clearance. (Bug 476357) r+sr=roc
2009-02-09 20:36:54 -08:00
Boris Zbarsky
6f9a0da875
Bug 299837. Implement text-align:end. r+sr=dbaron
2009-02-05 22:48:30 -05:00
Arpad Borsos
829f9f024a
Bug 474369 - get rid of nsVoidArray; layout part; r+sr=roc
2009-02-03 15:42:18 +01:00
Daniel Holbert
5b26d7d11e
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
24e7cb1f78
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
50621e4f9f
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
d0b948876f
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
Mats Palmgren
6d4b0667d0
DEBUG: Make nsBlockFrame::List really print the overflow lines. b=472193 r+sr=roc
2009-01-08 22:17:53 +01:00
L. David Baron
eee42cfdd7
Replace space manager with a more limited float manager. (Bug 191448) r+sr=roc
...
--HG--
rename : layout/generic/nsSpaceManager.cpp => layout/generic/nsFloatManager.cpp
rename : layout/generic/nsSpaceManager.h => layout/generic/nsFloatManager.h
2009-01-04 19:39:54 -05:00
L. David Baron
57a8e776d8
Rename flags and methods from space manager to float manager. (Bug 191448) r+sr=roc
2009-01-04 19:39:54 -05:00
L. David Baron
82d6666100
Remove the VerifyReflow code that checked the space manager state. (Bug 191448) r+sr=roc
2009-01-04 14:52:38 -05:00
L. David Baron
b3d748ba11
Fix some missed renames from bug 471356. r+sr=bzbarsky
2009-01-04 14:52:38 -05:00
Robert O'Callahan
0731a2c4f4
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
Simon Montagu
3363523acc
Delete all text frame continuations when deleting first letter frame. Bug 466763, r+sr=roc
2008-12-02 22:56:53 -08:00
Robert O'Callahan
f9d2d59b5e
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
Robert O'Callahan
8ff4467f78
Bug 457398. Don't treat empty lines as the first line for text-indent or first-letter/first-line purposes. r+sr=dbaron
2008-11-27 10:44:47 -08:00
Robert O'Callahan
ab3854de4f
Bug 462968. Sanitize block height. r+sr=dbaron
2008-11-26 11:57:28 +13:00
Brad Lassey
ea8dd114d1
backing out changesets 026147c91538, fb2326fcfc36, ebf0c7cf17be, 57e6a1e9041e, 1f5d2c249f86 and d7a7824d6990 due to crash on linux talos machines durring tp.
2008-11-26 12:20:26 -05:00