Commit Graph

406 Commits

Author SHA1 Message Date
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
97359757b6 Bug 502447. Make sure to recompute the viewport scrollbar flags early enough during root frame setup. r=roc 2009-07-22 21:31:44 -04:00
Robert O'Callahan
41b0dc9d84 Bug 339548. Part 9: Create nsRootPresContext::UpdatePluginGeometry, and use it. Make nsObjectFrame manage its widget directly. 2009-07-22 12:45:00 +12:00
Olli Pettay
0226273416 bug 501900, r+sr=roc 2009-07-21 14:59:46 +03:00
Boris Zbarsky
9046d1bc03 Bug 503364. Make GetAbsoluteContainingBlock work correctly for abs pos table ancestors again. r+sr=roc 2009-07-09 15:13:58 -07:00
Boris Zbarsky
b7e8beed7e Bug 502941. Don't bother appending if we already know our correct prevsibling. r+sr=roc 2009-07-07 22:23:24 -07:00
Robert O'Callahan
d939ea97ff Bug 501878. Don't suppress whitespace-only SVG text frames. r+sr=bzbarsky 2009-07-04 21:56:20 +12:00
Boris Zbarsky
32197e16c7 Bug 500905. Don't try to create text frames for textnodes that don't have frames if their parent frame's parent type is not block. That way we won't reconstruct the row, for example, if a cell is reframed and has whitespace next to it. Also fix WipeContainingBlock to not reframe in that case anyway. r+sr=roc 2009-06-29 21:39:55 -04:00
Robert O'Callahan
62129c7d37 Bug 500556. Split FRAMETREE_DEPENDS_ON_CHARS bit into NS_CREATE_FRAME_IF_NON_WHITESPACE and NS_REFRAME_IF_WHITESPACE so we don't need to reframe for every data change. r+sr=bzbarsky
--HG--
extra : rebase_source : 580aed3273c16e8402434a6f32d18dca542f29c0
2009-06-29 10:48:24 +12:00
Boris Zbarsky
1c73bfb395 Bug 500467. When removing table rows/rowgroups/cells, don't try to create frames for their adjacent whitespace. We don't need it. r+sr=roc 2009-06-25 18:12:51 -04:00
Robert O'Callahan
001a8ce4ef Bug 500124. Fix regression from bug 495385 by initializing text items correctly. Also avoid reframing text nodes in ContentRemoved when we know the text node doesn't need to be unsuppressed. r+sr=bzbarsky
--HG--
extra : rebase_source : 292265bb6af2e53eba713a11d91754e8bab2f5df
2009-06-24 20:46:04 +12:00
Robert O'Callahan
b345a70a9e Bug 495385. Text frames adjacent to block boundaries that contain only collapsible whitespace cannot affect layout, so don't create them. r+sr=bzbarsky
--HG--
extra : rebase_source : 2cd0b9d4bdfb47d8757efe0ca9983cbbcfca423c
2009-06-13 21:16:34 +12:00
Robert O'Callahan
338a814be0 Backed out changeset 69c6dbdfd179 2009-06-14 00:18:06 +12:00
Robert O'Callahan
9ffe56c833 Bug 495385. Text frames adjacent to block boundaries that contain only collapsible whitespace cannot affect layout, so don't create them. r+sr=bzbarsky
--HG--
extra : rebase_source : 544ae2157803cf075a50d2a451c6179525ebbc36
2009-06-13 21:16:34 +12:00
Robert O'Callahan
a956c259fc Bug 496840. Make dynamic insertion and removal of legends work in the presence of multiple legends. r+sr=bzbarsky
--HG--
extra : rebase_source : c11c9ac211575f01ac810eac7c1feb684ed76d7a
2009-06-12 14:01:05 +12:00
Robert O'Callahan
7042d53d8b Bug 496032. Buttons should should lay out their contents using IsBlockInside not IsBlockOutside. r+sr=bzbarsky
--HG--
extra : rebase_source : bd35093b32239a2803868ab8d684f56db318fbeb
2009-06-12 13:48:07 +12:00
Boris Zbarsky
5c39512d9e Bug 495350. Do a better job of keeping track of our line participant count. r+sr=roc 2009-06-11 13:09:35 -04:00
Timothy Nikkel
647a1b6542 Bug 496020 - "nsCSSFrameConstructor::BeginUpdate is called when scripts are not blocked." r+sr=bzbarsky 2009-06-11 13:09:34 -04:00
Jonathan Watt
c6553d47fd Bug 488460. Invalidation cleanup. r=longsonr 2009-06-11 17:23:43 +02:00
Arpad Borsos
be212f351c Bug 495296 - kill nsISVGTextContentMetrics; r+sr=roc 2009-05-29 12:15:40 +02:00
Neil Deakin
79321ef1f8 Bug 178324, refactor focus by moving all focus handling into one place and simplifying it, add many tests, fixes many other bugs too numerous to mention in this small checkin comment, r=josh,smichaud,ere,dbaron,marco,neil,gavin,smaug,sr=smaug (CLOSED TREE) 2009-06-10 14:00:39 -04:00
Boris Zbarsky
60fc72e742 Bug 495648. Work around yet more listbox suckage: it'll randomly create frames for content it hasn't included in its row count! r=enn, sr=roc pending 2009-06-01 12:46:31 -04:00
Boris Zbarsky
bc66ab1170 Bug 492163, bug 492112, and bug 483604. Stop putting the style contexts of textnodes and CSS generated content in the undisplayed map, and make sure to properly unbind generated content if we don't plan to actually create a frame construction item for it. r+sr=dbaron 2009-05-14 21:40:26 -04:00
Arpad Borsos
5b33bf7a38 Bug 492531 - Optimize some CSS and Reflow classes for memory usage; r+sr=dbaron 2009-05-13 10:26:48 +02: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
Boris Zbarsky
70c31886f4 Bug 480452. Make {ib} splits behave the same way with regard to margins, borders, and padding as inline frames that just have a line-break happening inside them do. r+sr=dbaron 2009-05-11 22:04:58 -04:00
Boris Zbarsky
e6259a26ac Bug 78070. When the root element is removed, remove all frames except the viewport; when it's reinserted, recreate them as needed. r=roc,dbaron sr=roc 2009-05-11 22:04:58 -04:00
Robert Longson
983f8abcf2 Bug 484176 - Support allowReorder for switch. r=jwatt,sr=roc 2009-05-07 20:37:33 +01:00
Boris Zbarsky
fc728b8197 Bug 490173. Switching display from -moz-popup to block in an HTML document doesn't trigger a frame reconstruct. r+sr=dbaron 2009-05-07 15:21:54 -04:00
Boris Zbarsky
64b2d5e1bf Bug 490957. Eliminate nsWebShell. r+sr=bsmedberg 2009-05-07 15:21:53 -04:00
Boris Zbarsky
215627f0fb Bug 490220. Make sure to skip over whitespace when looking for a following pseudo-sibling for a frame being removed. r+sr=roc 2009-04-27 14:20:08 -07:00
Boris Zbarsky
897fb606b4 Bug 482398. Fix insertions when there are Letter frames around to be sane. r+sr=dbaron 2009-04-23 20:31:13 -04:00
Simon Montagu
78c48d14b7 Enable bidi when a frame has right-to-left direction during style post-processing instead of frame construction to catch dynamic changes to direction. Bug 489517, r+sr=dbaron 2009-04-23 09:09:47 +03:00
Boris Zbarsky
307ccebf4c Bug 484448. Fix handling of whitespace kids of table-related frames. r=bernd, sr=roc
--HG--
rename : layout/reftests/table-anonymous-boxes/white-space-1.html => layout/reftests/table-anonymous-boxes/white-space-7.html
2009-04-08 12:56:16 -04:00
Boris Zbarsky
040053eb7d Bug 487449. Figure out the correct prevSibling for the new frames in ContentAppended, always pass the correct prevSibling to WipeContainingBlock, and make its aIsAppend argument exactly correspond to whether we'll call nsCSSFrameConstructor::AppendFrames. Change nsCSSFrameConstructor::AppendFrames() to take the prevSibling for the new frames. r+sr=roc 2009-04-14 09:30:20 -04:00
Boris Zbarsky
283d9a3b12 Bug 487895. Inserting an inline child into an inline with block :before, inline :after, and no other frame kids (but content kids to trigger ContentInserted) is broken. r+sr=roc 2009-04-14 09:29:51 -04:00
Boris Zbarsky
ebcd59ba91 Bug 488129 Fix end checks that were incorrectly reversed as part of part 7 of bug 480979. r+sr=roc 2009-04-14 09:29:27 -04:00
Robert O'Callahan
db73e45377 Bug 468491. When removing the continuations of a text frame, remove them starting at the end to avoid disrupting frame invariants by removing frames from the middle of the flow. r=dbaron
--HG--
extra : rebase_source : cc251f7dbc49568404aa2ebd7342e73b6d2fdf3a
2009-04-10 13:19:06 +12:00
Boris Zbarsky
25164496ef Backed out changeset 0ea22856b5d9 (bug 484448). 2009-04-08 15:56:43 -04:00
Boris Zbarsky
f70fe28e08 Bug 484448. Fix handling of whitespace kids of table-related frames. r=bernd, sr=roc
--HG--
rename : layout/reftests/table-anonymous-boxes/white-space-1.html => layout/reftests/table-anonymous-boxes/white-space-7.html
rename : layout/reftests/table-anonymous-boxes/white-space-1-ref.html => layout/reftests/table-anonymous-boxes/white-space-ref.html
2009-04-08 12:56:16 -04:00
Robert O'Callahan
7b4d0810ce Bug 459666. Guard assertion containing GetPrimaryFrameFor so it doesn't run at a bad time to be calling GetPrimaryFrameFor. Also, nsCSSFrameConstructor::PostRestyleEvent should check mPresShell->IsDestroying() when deciding whether to drop requests, and it should drop requests silently because it's perfectly safe and correct to do so. r+sr=bzbarsky
--HG--
extra : rebase_source : 8bf16bbc46de1f420d529f8d0a60ae07f8f0ef81
2009-04-01 14:08:34 +13:00
Boris Zbarsky
7aceab7bfd Use the local instead of making another virtual function call. Followup for bug 484031 2009-03-31 14:21:39 -04:00
Boris Zbarsky
c72ec148e3 Bug 486052. Make our FCData bits match GetAbsoluteContainingBlock again. r+sr=roc 2009-03-31 13:07:29 -04:00
Arpad Borsos
460de5285f Bug 399753 - Remove nsISupportsArray in the layout directory; r+sr=roc 2009-03-30 20:08:06 +02:00
Boris Zbarsky
ab6118631e Bug 484031. Be a bit more careful with ContentAppended. r+sr=roc 2009-03-30 11:23:14 -04:00
Boris Zbarsky
559f8c3bee Backing out revision 6a8a88c62925 (bug 484031) on suspicion of causing a Tp increase 2009-03-30 18:04:29 -04:00
Boris Zbarsky
a3a52c98d2 Bug 337957. Make WipeContainingBlock not trigger warnings about reentry into frame construction. r+sr=dbaron 2009-03-30 11:32:20 -04:00
Boris Zbarsky
8638f9dcb1 Bug 484031. Be a bit more careful with ContentAppended. r+sr=roc 2009-03-30 11:23:14 -04:00
Boris Zbarsky
4df023187e Bug 148810. Handle dynamic insertion and append better when table pseudo-frames are involved. r=bernd, sr=roc. Also fixes bug 112142, bug 208305, bug 325543, bug 368932, bug 371054, bug 372649, bug 394402, bug 448111. 2009-03-26 14:08:58 -04:00
Boris Zbarsky
8202fdf868 Bug 162063. Remove pseudo-frames as needed when the frame that needs them is removed from the frame tree. r=bernd, sr=roc. Also fixes bug 97506, bug 143397, bug 156888, bug 277995, bug 293576, bug 315146, bug 338735, bug 339388, bug 407115, 473824. 2009-03-23 14:08:03 -04:00
Boris Zbarsky
624363452c Bug 484004. Don't reframe on removal of an non-first, non-last block from an {ib} parent. r+sr=roc 2009-03-18 20:25:43 -04:00
Boris Zbarsky
8a3c92ef40 Bug 480880. Fix InvalidateCanvasIfNeeded callers and impl to actually work. r+sr=roc 2009-03-16 07:46:02 -04:00
Boris Zbarsky
8b7c54b7f2 Bug 482889 Part 3. Switch to a new algorithm for creating anonymous table objects. r=bernd, r+sr=roc 2009-03-15 16:01:48 -04:00
Boris Zbarsky
42f260732a Bug 482889 Part 2. Refactor calls to CreateRequiredPseudoFrames so that they all happen in AdjustParentFrame. r=bernd, r+sr=roc 2009-03-15 15:57:46 -04:00
Boris Zbarsky
924a80cbbf Back out the crasher test change from CLOSED TREE 2009-03-12 16:20:04 -04:00
Boris Zbarsky
122019be46 Test change to trigger a crash when trying to construct a table frame so we can test the new talos stack tooling, but should compile 2009-03-12 15:47:18 -04:00
Boris Zbarsky
81d4dd38af Test change to trigger a crash when trying to construct a table frame so we can test the new talos stack tooling 2009-03-12 15:46:48 -04:00
Boris Zbarsky
0fec8a7842 Bug 482592. Use the right container in ContentInserted. r+sr=roc 2009-03-12 10:17:14 -04:00
Olli Pettay
68a0322fcd Bug 478245 - Crash [@ nsEventStateManager::PreHandleEvent], r+sr=dbaron 2009-03-11 17:43:08 +02:00
Boris Zbarsky
12f0a421fd Bug 481788. Make FrameConstructionItemList a PRCList. r+sr=roc 2009-03-10 09:51:34 -04:00
Olli Pettay
468b832900 Bug 425265, r=roc, sr=bz 2009-03-08 21:01:02 +02:00
Boris Zbarsky
c71439c656 Bug 481105. Create anonymous child frames before non-anonymous ones for all our frames, not just root boxes. r+sr=roc 2009-03-06 13:12:18 -05:00
Boris Zbarsky
d10ea8903b Bug 480979 part 7. Create a FrameConstructionItemList class so we can abstract away item lists and change the implementation as needed. r+sr=roc 2009-03-05 08:09:03 -05:00
Boris Zbarsky
fd47df291b Bug 480979 part 6. Push use of FrameConstructionItem all the way up to ContentAppended/ContentInserted, and eliminate the need for DestroyNewlyCreatedFrames. r+sr=roc 2009-03-05 08:09:03 -05:00
Boris Zbarsky
f5d437816b Bug 480979 part 5. Build up a tree of FrameConstructionItems so that we'll know which inlines might need splitting. r+sr=roc 2009-03-05 08:09:02 -05:00
Boris Zbarsky
bbfc996d8e Bug 480979 part 4. Create separate FrameConstructionItems for page-break frames. r+sr=roc 2009-03-05 08:09:02 -05:00
Boris Zbarsky
efff0e4d2d Bug 480979 part 3. Move suppression of kids of columns and non-column kids of colgroups out further so that we don't even create FrameConstructionItems for them. r+sr=roc 2009-03-05 08:09:02 -05:00
Boris Zbarsky
85726c08e7 Bug 480979 part 2. Pass FrameConstructionItems through to the FrameFullConstructor implementations. r+sr=roc 2009-03-05 08:09:01 -05:00
Boris Zbarsky
0189933479 Bug 480979 part 1. Introduce FrameConstructionItem and restructure existing ConstructFrame and ProcessChildren code to use it internally without any other behavior changes. r+sr=roc 2009-03-05 08:09:01 -05:00
Boris Zbarsky
e2cb5e61e3 Bug 480323. Always create a trailing inline for {ib} splits. r+sr=dbaron 2009-03-04 07:55:29 -05:00
Boris Zbarsky
dba41efe0b Bug 480208. Eliminate the tag version of CreateAnonymousFrames. r+sr=roc 2009-03-01 10:16:30 -05:00
Boris Zbarsky
55f6d5a8f2 Bug 480017. Suppress misplaced popups before we construct table pseudoframe parents. r+sr=roc 2009-03-01 10:16:29 -05:00
Boris Zbarsky
b1f152d8fb Bug 479114. Create page-break frames only after we know our final parent. 2009-03-01 10:16:29 -05:00
Boris Zbarsky
7a957a90dd Bug 478956. Merge pseudo-frame handling for outer tables and non-table frames. r=bernd, sr=roc 2009-03-01 10:16:29 -05:00
Blake Kaplan
1a4ca1407d Remove unreachable printf since tinderbox isn't hitting it (bug 474537).
--HG--
extra : rebase_source : 95bf4a605216c97aaa15e552eb6779be8dbb33e3
2009-02-25 13:48:06 -08:00
Boris Zbarsky
a1f888815b Bug 476245. Keep better track of our anonymous content. r=smaug, sr=jst 2009-02-24 13:39:09 -05:00
L. David Baron
1e283adeaa Backed out changeset a328b5ae57e0 (bug 476245) for causing failures of test_videocontrols.html across platforms (although Linux hasn't cycled yet). 2009-02-24 13:38:35 -08:00
Boris Zbarsky
58d51f648c Bug 476245. Keep better track of our anonymous content. r=smaug, sr=dbaron 2009-02-24 13:39:09 -05:00
Mats Palmgren
ea317dbb9c Make FindPrimaryFrameFor faster by traversing the parent's special siblings and descendant continuations etc only once. b=470978 r+sr=bzbarsky 2009-02-22 19:17:51 +01:00
Boris Zbarsky
bdc319dc24 Bug 478820 part 3. Switch ConstructFrameByDisplayType to FrameConstructionData. r+sr=roc 2009-02-18 08:25:29 -05:00
Boris Zbarsky
10fb5e1b9b Bug 478820 part 2. Reorganize ConstructFrameByDisplayType a bit in the tables department. r=bernd, sr=roc 2009-02-18 08:25:29 -05:00
Boris Zbarsky
bc40ae5f4d Bug 478820 part 1. Reorganize ConstructFrameByDisplayType a bit in the block/inline department. r+sr=roc 2009-02-18 08:25:29 -05:00
Boris Zbarsky
6cff212e17 Bug 478814. Don't leave the XUL display types that are unimplemented if not MOZ_XUL defined if not MOZ_XUL. r+sr=dbaron 2009-02-17 21:45:57 -05:00
Boris Zbarsky
74338296c8 Bug 478811. Use the right IsTableRelated check when finding absolute containing blocks. r=bernd, sr=roc 2009-02-17 12:21:44 -05:00
Boris Zbarsky
d016304dfa Bug 478754. Remove effectively unused argument. r+sr=roc 2009-02-17 12:21:42 -05:00
Zack Weinberg
bea9955522 Bug 476557. Update view manager cache of page background color in PresShell::Paint, not nsCSSRendering::PaintBackground; permits a small API cleanup. r+sr=roc
--HG--
extra : rebase_source : dcf1475dd8b695eb18513e97ca35b08a4affd19f
2009-02-16 14:11:34 +13:00
Boris Zbarsky
304fd45c3f Bug 477333. Make sure to skip over editor's bogus anon content when dealing with first-letter too. r+sr=dbaron 2009-02-10 12:08:12 -05:00
Kyle Huey
93fcc53c4c Bug 452345. nsCSSFrameConstructor should use the term 'root element frame' instead of 'initial containing block', since 'initial containing block' means something else in CSS. r+sr=roc 2009-02-05 21:11:42 +13:00
Blake Kaplan
c8b404ae13 Add some logging code to see if bug 474537 is still around.
--HG--
extra : rebase_source : 840e2da57a266bd98f30e195f3819f59fb97c86d
2009-02-04 15:04:51 -08:00
Arpad Borsos
829f9f024a Bug 474369 - get rid of nsVoidArray; layout part; r+sr=roc 2009-02-03 15:42:18 +01:00
Boris Zbarsky
553227508e Bug 476063. Only do special fieldsetty stuff with <legend>s that are in a fieldset. r+sr=dbaron 2009-02-03 09:29:47 -05:00
Boris Zbarsky
47183857d0 Bug 476087. Work around editor breakage with anonymous content. r+sr=dbaron 2009-02-03 09:29:46 -05:00
Blake Kaplan
c6540ca70e Bug 474537 - Don't use a static array, since this can be called on multiple threads. r+sr=jst
--HG--
extra : rebase_source : 7926ab4fd9a5e141edfdd571ae82c8223bee5d37
2009-02-02 17:37:03 -08:00
Boris Zbarsky
4120090406 Backing out logging patch for bug 474537 2009-02-02 19:55:10 -05:00
Boris Zbarsky
713f5cf16b Another attempt at logging for bug 474537 2009-02-02 16:27:56 -05:00
Boris Zbarsky
c1149f03ad Backing out the logging now that we've hit it. See bug 474537 2009-02-02 15:17:55 -05:00
Boris Zbarsky
18e06836cd Add logging to try to sort out why some of our inputs are not nsIFormControl sometimes 2009-01-30 17:08:21 -05:00
L. David Baron
c61d051922 Create legends in CreateContinuingFrame. (Bug 468578) r+sr=roc 2009-01-29 12:39:22 -08:00
L. David Baron
583b7afd79 Handle placeholder frames in RemoveMappingsForFrameSubtree. (Bug 428113) r=mats.palmgren sr=roc 2009-01-29 12:39:21 -08:00
Boris Zbarsky
e753880b7c Bug 307394 part 2. Fix the indexing in ContentInserted to work correctly even when XBL is around. r+sr=dbaron. Also fixes bug 232990, bug 261826 , bug 272646, bug 386310, bug 468546 2009-01-29 14:46:20 -05:00