Commit Graph

499 Commits

Author SHA1 Message Date
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
Boris Zbarsky
3574872d3a Bug 335615. Don't do editor init inside frame construction. r=mats, sr=roc 2009-01-29 14:46:17 -05:00
Boris Zbarsky
4f8f3b0027 Bug 474938. Restore silly speculative parsing workaround. r+sr=peterv 2009-01-23 10:16:10 -05:00
Robert Longson
44b1a9bfb1 Bug 472135. Invalidate markers using style system hints instead of doing an eager invalidation (which reacquires frames, breaking our one-shot nsSVGRenderingObservers setup). r+sr=roc
--HG--
extra : rebase_source : 48ab3b34460f5908bcec5c3e15a5d12f71496579
2009-01-22 14:02:40 +13:00
Mark Banner
96e4962fb5 Build bustage fix for Bug 473390 - make it build for apps that build without MathML 2009-01-21 15:38:59 +00:00
L. David Baron
008ca182cf Merge backout of changeset 6849ce51dfef (patch 3 from bug 468645) to fix bug 472353. 2009-01-20 13:54:17 -08:00
L. David Baron
7c5191446f Backed out changeset 6849ce51dfef (patch 3 from bug 468645) to fix bug 472353. 2009-01-20 13:45:23 -08:00
Boris Zbarsky
1ebd2ace9a Bug 474417. <wbr> support broken. r+sr=roc 2009-01-20 14:42:25 -05:00
Boris Zbarsky
f1e21eec04 Bug 473390 part 18. Eliminate IsSpecialContent. r+sr=roc 2009-01-19 13:31:35 -05:00
Boris Zbarsky
8c55daf9b6 Bug 473390 part 17. Switch SVG frame construction over to the new setup. r=jwatt, sr=roc 2009-01-19 13:31:34 -05:00
Boris Zbarsky
ea8c0a5865 Bug 473390 part 16. Move around SVG assertions so that they happen in frame init, not during frame creation. r=jwatt, sr=roc 2009-01-19 13:31:34 -05:00
Boris Zbarsky
dcd16bd3ed Bug 473390 part 15. Switch XUL frame construction over to the new setup. r+sr=roc 2009-01-19 13:31:34 -05:00
Boris Zbarsky
b868afeb9d Bug 473390 part 14. Eliminate the mRootBox member of the frame constructor state, and move its only consumer into the relevant frame Init method. r+sr=roc 2009-01-19 13:31:33 -05:00
Boris Zbarsky
18399c778f Bug 473390 part 13. Remove the unused aScrolledChildStyle argument of BuildScrollFrame. r+sr=roc 2009-01-19 13:31:33 -05:00
Boris Zbarsky
2793dc5658 Bug 473390 part 12. Simplify some of the parent frame mess in XUL frame construction and remove some confusing comments. r+sr=roc 2009-01-19 13:31:33 -05:00
Boris Zbarsky
f3a2fedf99 Bug 473390 part 10. Move various XUL nsIBoxLayout stuff out of the frame constructor into frame creation functions, and make the XUL frame creation functions have the right signature to fit into the new world. r+sr=roc 2009-01-19 13:31:33 -05:00
Boris Zbarsky
9bbe40ce73 Bug 473390 part 9. Switch MathML frame construction over to the new setup. r+sr=roc 2009-01-19 13:31:32 -05:00
Boris Zbarsky
9f4f82f532 Bug 473390 part 8. Move the <mathml:math> display switching out of the frame constructor and into the frame creation function. r+sr=roc 2009-01-19 13:31:32 -05:00
Boris Zbarsky
adce23e350 Bug 473390 part 7. Switch HTML frame construction over to the new setup. r+sr=roc 2009-01-19 13:31:32 -05:00
Boris Zbarsky
15e9c687fa Bug 473390 part 6. Move the flag-setting for file controls out of the frame constructor and into the frame implementation. r+sr=roc 2009-01-19 13:31:32 -05:00
Boris Zbarsky
0966b434f3 Bug 473390 part 5. Move the checkbox and radio face style code out of the frame constructor and into those frames. r+sr=roc 2009-01-19 13:31:32 -05:00
Boris Zbarsky
4a76f2eb41 Bug 473390 part 4. Remove vestigial XBL form control stuff. r+sr=roc 2009-01-19 13:31:31 -05:00
Boris Zbarsky
ab5fa0c6e8 Bug 473390 part 3. Move some HTML frame construction assertions out of the frame constructor and into the relevant frame creation methods. r+sr=roc 2009-01-19 13:31:31 -05:00
Boris Zbarsky
c0de154bc2 Bug 473390 part 2. Call SetInitialChildList on HTML frames even if the child list is empty, to bring HTML in line with everything else. r+sr=roc 2009-01-19 13:31:31 -05:00
Boris Zbarsky
cb7d2b1273 Bug 473390 part 1. Stop checking IsSpecialContent for the root frame. Just construct a table if it's got a table display type and isn't XUL or SVG. This is safe because we no longer have the weirdness that was ConstructDocElementTableFrame. r+sr=roc 2009-01-19 13:30:15 -05:00
Robert O'Callahan
4388aebd00 Backout bug 472135 due to Linux test failure 2009-01-17 23:59:37 +13:00
Robert O'Callahan
00e57b8380 Backed out changeset 9246fefef1cc 2009-01-17 23:58:34 +13:00
Robert O'Callahan
0dd1ce33f5 Bug 471594. In ContentInserted, when we have an insertionPoint and we take the isAppend path, use the insertionPoint's last continuation as the place to append so we don't insert the new frames in the middle of some other content's continuation chain. r+sr=bzbarsky
--HG--
extra : rebase_source : dbcc34f8fc9a73d53105300d2aa2bebbc584ab8f
2009-01-16 21:25:04 +13:00
Robert Longson
4a4ce9e387 Bug 472135. Avoid re-getting the target marker frame in nsSVGMarkerProperty::DoUpdate --- that leads to infinite loops. Update things lazily instead via fake style changes. r+sr=roc
--HG--
extra : rebase_source : f90519e06842d6301e3a27eddb0cddd300b62db2
2009-01-16 21:20:29 +13:00
L. David Baron
5293f77173 When re-resolving style, re-resolve root in undisplayed map too. (Bug 473042) r+sr=bzbarsky 2009-01-16 13:32:09 -08:00
Boris Zbarsky
00e66d09cf Bug 453736. Make <svg:script> more like other scripts and fix up a few other minor issues. r=roc, r+sr=sicking 2009-01-14 07:49:18 -05:00
L. David Baron
8ae14c6f7f Prevent rebuilding all style data when paginated. (Bug 468645) r+sr=bzbarsky 2008-12-29 10:07:37 -05:00
L. David Baron
a3d0f42dba Fix style context invariants so we can re-resolve page break frames. (Bug 468645) r+sr=bzbarsky 2008-12-29 10:07:36 -05: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
Olli Pettay
7fb4bae15c Bug 470167 - 'ASSERTION: Should be in an update while creating frames' with stylesheet appended many times, r+sr=bz 2008-12-20 01:35:30 +02:00
Robert O'Callahan
ed66190092 Bug 449149. Implement the 'controls' attribute for audio elements. r+sr=bzbarsky,r=dolske,r=enndeakin
--HG--
extra : rebase_source : 4d11b963d3082f98269069c68aae33eef365aacb
2008-12-17 13:27:46 +13:00
L. David Baron
3e5f6435ab Move wrapping of blocks inside XUL into ProcessChildren to catch more callers. (Bug 421203) r+sr=roc a=blocking1.9.1+
--HG--
rename : layout/reftests/bugs/321402-3.xul => layout/reftests/bugs/421203-3.xul
rename : layout/reftests/bugs/321402-4.xul => layout/reftests/bugs/421203-4.xul
rename : layout/reftests/bugs/321402-5.xul => layout/reftests/bugs/421203-5.xul
rename : layout/reftests/bugs/321402-6.xul => layout/reftests/bugs/421203-6.xul
2008-12-16 16:30:31 -08:00
Olli Pettay
f8412fdedc Bug 431082 - Crash [@ nsDocShell::DoChannelLoad], r+sr=bz 2008-12-13 22:30:02 +02:00
Robert O'Callahan
a06ae88b70 Bug 468690. Remove leftover assertion that's no longer needed after the fix for bug 460012. r+sr=bzbarsky 2008-12-12 21:28:47 +13:00
Robert O'Callahan
bfa41e8f5e Merged to trunk 2008-12-08 20:52:15 +13:00
Mats Palmgren
1c185b29b9 Walk child frame next-in-flows that are overflow containers. Skip [excess]overflowContainersList to avoid processing them more than once. b=411835 r+sr=roc 2008-12-08 04:01:25 +01:00
Robert O'Callahan
64e40d52ed Bug 451117. Remove obsolete assertion. r+sr=bzbarsky 2008-12-08 13:50:57 +13:00
L. David Baron
7fc92bad7f Make the code to suppress infinite synthesized mouse move loops work again with asynchronous style changes. (Bug 302561) r+sr=bzbarsky,roc 2008-12-07 13:58:07 -08:00
L. David Baron
e2343835b0 Merge backout of changeset 7b553bbed53d (bug 302561) due to chrome test crash. 2008-12-04 09:57:44 -08:00
L. David Baron
90b976fe34 Backed out changeset 7b553bbed53d (bug 302561) due to chrome test crash. 2008-12-04 09:57:18 -08:00
L. David Baron
5ef811c47a Make incremental frame construction set mFixedPosIsAbsPos just like from-the-top frame construction. (Bug 467460) r+sr=roc 2008-12-04 08:09:53 -08:00
L. David Baron
3e43af7a94 Allow PostRebuildAllStyleData to be called with an aExtraHint. (Bug 458878) r+sr=bzbarsky a=blocking1.9.1+ 2008-12-04 08:09:53 -08:00
L. David Baron
85dd73ebd3 Make the code to suppress infinite synthesized mouse move loops work again with asynchronous style changes. (Bug 302561) r+sr=bzbarsky,roc 2008-12-04 08:09:52 -08: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
L. David Baron
7372b5e796 Merge roc-1.bundle to land 5 patches for roc. 2008-11-25 20:41:38 -08:00
Boris Zbarsky
bad0b33175 Bug 437142. Be a little more careful with GetPrimaryFrameFor to work around the mess that <area> elements cause. r+sr=roc 2008-11-25 20:49:14 -05:00
L. David Baron
f0a1beced5 Handle some additional codepaths for position: fixed elements inside elements with -moz-transform. (Bug 455171) r+sr=bzbarsky a=blocking1.9.1+ 2008-11-25 15:22:39 -08:00
L. David Baron
2a61487dd7 Back out 342b86dd79f48f11583e7b6526a5b78457d29a1c due to mac startup failures. 2008-11-25 14:38:17 -08:00
Robert O'Callahan
1dd1408b35 Bug 460012. When recreating frames for a generated content node, reframe the nearest non-generated-content ancestor. r+sr=bzbarsky 2008-11-26 11:15:41 +13:00
Robert O'Callahan
98a52f5f6c Bug 454751. Use a fresh nsFrameConstructorState when we construct new frames in ReconstructDocElementHierarchyInternal, so internal state pointing to deleted frames is flushed out. r+sr=bzbarsky 2008-11-26 11:12:06 +13:00
L. David Baron
dc119e5622 Handle some additional codepaths for position: fixed elements inside elements with -moz-transform. (Bug 455171) r+sr=bzbarsky a=blocking1.9.1+ 2008-11-25 13:27:54 -08:00
Mats Palmgren ext:(%2C%20L.%20David%20Baron%20%3Cdbaron%40dbaron.org%3E)
b06807d54b Put the root element in the undisplayed map so that we reconstruct it when it has its 'display' changed from 'none' to something else. (Bug 283686) r+sr=bzbarsky 2009-01-10 08:28:15 -08: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
Blake Kaplan
337fb163df Bug 458440 - Attempt to work around speculative parsing crash. r+sr=dbaron 2008-11-11 13:38:54 -08: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
Robert O'Callahan
f708c8026e Bug 425981. Make first-letter frame wrapping build its own frame constructor state to ensure it's for the correct place in the frame tree. r+sr=bzbarsky
--HG--
extra : rebase_source : 7dd5de3f6b2a9e83994d7023d4cfafce205e9376
2009-01-08 21:07:51 +13:00
Boris Zbarsky
95874e95d3 Bug 472500. Allow generated content on XUL frames. r+sr=roc 2009-01-07 18:22:08 -05:00
Boris Zbarsky
835c17ffde Bug 472501. Add XUL namespace checks in some more places where they're needed, and make the XBL suppression of child frame processing work for all frames, not just XUL. r=enndeakin, sr=roc 2009-01-07 18:22:05 -05:00
Boris Zbarsky
709cd54c51 Bug 284320. Remove the contentParentFrame hack in subdocument frames, along with the no-longer-used arg it used to be used for. r+sr=roc 2009-01-06 17:29:50 -05:00
Boris Zbarsky
6925343822 Bug 472322. Don't treat non-XUL listboxbody/listitem specially in XUL frame construction. r=enndeakin, sr=roc 2009-01-06 14:18:04 -05:00
Boris Zbarsky
7663cfbf76 Bug 291854. Push float containing blocks inside ProcessChildren. r+sr=roc 2009-01-05 20:54:32 -05:00
Boris Zbarsky
60aefffa14 Bug 472138. Push CreateAnonymousFrames into ProcessChildren. r+sr=roc 2009-01-05 17:25:33 -05:00
Boris Zbarsky
e240a880db Bug 472138. Eliminate unused or unnecessary CreateAnonymousFrames args. r+sr=roc 2009-01-05 17:25:31 -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
b3d748ba11 Fix some missed renames from bug 471356. r+sr=bzbarsky 2009-01-04 14:52:38 -05:00
Olli Pettay
28e3d7cf73 Bug 436965, r+sr=sicking 2009-01-02 17:41:43 +02:00
Olli Pettay
ed62696892 Back out bug 436965 2009-01-02 16:31:13 +02:00
Olli Pettay
f4bf461d7e Bug 436965, r+sr=sicking 2009-01-02 14:40:43 +02:00
L. David Baron
23d4f4d4b2 Stop using nsAreaFrame for anything other than xul:label, which is the only thing for which it does anything different from nsBlockFrame, and rename it accordingly. (Bug 471356) r+sr=roc
--HG--
rename : layout/generic/nsAreaFrame.cpp => layout/xul/base/src/nsXULLabelFrame.cpp
rename : layout/generic/nsAreaFrame.h => layout/xul/base/src/nsXULLabelFrame.h
2008-12-29 10:07:38 -05:00
L. David Baron
9b86daea26 Keep pres shell alive during ProcessRestyledFrames. (Bug 462392) r+sr=bzbarsky 2008-11-02 11:44:55 -08:00
Benjamin Smedberg
30eacd2625 Bug 461576 - nsListBoxBodyFrame shouldn't need to implement nsIListBoxObject - r=enn sr=roc 2008-10-28 00:47:19 -04:00
Bernd
71f711f4c9 bug 448543, video frame creation is tag based not display type based so this is special content r/sr=bzbarsky 2008-10-26 10:22:35 +01:00
Arpad Borsos
8b11d938d2 Bug 456388 - Remove PR_STATIC_CALLBACK and PR_CALLBACK(_DECL) from the tree; r+sr=brendan 2008-10-10 17:04:34 +02:00
Mats Palmgren
104954097b Bug 455063. Make sure we don't lose track of our initial containing block. r+sr=roc 2008-10-08 09:07:04 -04:00
Boris Zbarsky
11c7a6ff2f Bug 452964. Don't flag pseudo-frames wrapping generated content as themselves being generated content, since they might be shared with non-generated content. r+sr=roc. 2008-10-07 14:53:22 -04:00
Robert O'Callahan
09cfc5fa8c Bug 455984. Rework gradient and pattern code to use nsReferencedElement and nsSVGRenderingObservers, so they observe changes to the ID-element-map properly and propagate invalidations correctly (and with simpler code too). r=longsonr,sr=mats 2008-10-01 13:51:05 +13:00
Robert O'Callahan
337c852320 Backing out bug 455984 to see if it fixed Tp crashes 2008-10-01 00:28:20 +13:00
Robert O'Callahan
0a5a34cbab Bug 455984. Rework gradient and pattern code to use nsReferencedElement and nsSVGRenderingObservers, so they observe changes to the ID-element-map properly and propagate invalidations correctly (and with simpler code too). r=longsonr,sr=mats 2008-09-30 21:47:20 +13:00
Keith Schwarz
dc907e1ec7 Bug 435293. Implement CSS transforms. r=dbaron,r+sr=roc 2008-09-13 21:42:11 +12:00
Taras Glek
c26ce8e1ab bug 450777:deCOMtaminate nsNodeInfoManager::GetNodeInfo r+sr=jst 2008-09-12 15:32:18 -07:00
Mats Palmgren
8301514138 Don't create a frame for the root element if it's styled display:none. b=454361 r+sr=roc 2008-09-12 03:36:58 +02:00
Robert O'Callahan
539a029252 Bug 450340. Support SVG mask/clip-path/filter CSS properties applied to non-SVG content. r=longsonr,sr=mats 2008-09-11 12:24:16 +12:00
Robert O'Callahan
cddb22d87c Bug 243519. Rework root element frame construction and the CanvasFrame so that the CanvasFrame is an abs-pos container and the root element frame can be positioned. r=fantasai,sr=dbaron 2008-09-08 20:13:17 +12:00
Zack Weinberg
83829cd801 Bug 441367 - reduce repetitive code in nsRuleNode.cpp with SetDiscrete() and SetFactor() helper functions. r+sr=dbaron 2008-09-06 06:56:23 -07:00
Robert O'Callahan
ea7596e60c Backing out changesets 75919d3eb3d0 and 14ce7619e9c1 due to test failures 2008-09-07 00:35:20 +12:00
Robert O'Callahan
521ac66ad9 Bug 243519. Fix the crashtest so that it doesn't bomb out with a JS error without completing the actual test. And make it (and Acid3) actually pass without screwing up the frame tree. 2008-09-06 22:21:37 +12:00
Robert O'Callahan
f7339a0460 Bug 243519. Rework root element frame construction and the CanvasFrame so that the CanvasFrame is an abs-pos container and the root element frame can be positioned. r=fantasai,sr=dbaron 2008-09-06 21:35:05 +12:00
romaxa
4b98e80e72 Bug 376533 - "uClibc strings/index and childiterator.index conficts" [r=dbaron]
Index: mozilla/layout/base/nsCSSFrameConstructor.cpp
===================================================================
RCS file: /cvsroot/mozilla/layout/base/nsCSSFrameConstructor.cpp,v
retrieving revision 1.1453
2008-08-20 01:15:26 -05:00
Robert O'Callahan
2b3cbd99b7 Bug 451168 - "Borders around folder icons in directory listings (e.g. when viewing FTP sites)" [r+sr=bzbarsky] 2008-08-19 22:50:31 -05:00
Robert O'Callahan
0f9e4e319d Bug 238072. Make generated content take the normal frame construction path. Relanding with changes so that counter and quote nodes are initialized after their frames are available, more like the old code. r+sr=dbaron,bzbarsky 2008-08-18 13:16:42 +12:00
Robert Longson
0f5abca8c0 Bug 450495 - Make foreignObject a mandatory part of SVG. r+sr=roc 2008-08-17 12:18:21 +01:00
Robert O'Callahan
412609685e Bug 438987. Propagate background color correctly when the root element is a table. Relanding with a crash fix. r+sr=dbaron 2008-08-08 20:21:13 +12:00
Robert O'Callahan
18e74a0f2d Bug 438987, backing out 2008-08-08 15:34:43 +12:00
Robert O'Callahan
d75aff2db8 Bug 438987. Propagate background color correctly when the root element is a table. r+sr=dbaron 2008-08-08 13:52:41 +12:00
Robert O'Callahan
e6245e9ce2 Bug 238072 backout 2008-08-07 22:22:08 +12:00
Robert O'Callahan
8ad3721594 Bug 238072. Rework generated content support to match CSS 2.1, making generated content take the normal frame construction path so supporting any style applied to it (including 'position', 'float', etc). r+sr=bz,r=dbaron 2008-08-07 13:18:24 +12:00
Robert O'Callahan
aa8fb5c224 Bug 447567. Instead of brutally wiping out effects properties whenever the style context changes for an SVG frame (which wouldn't work for non-SVG frames), create a new style change hint to handle it. r=longsonr,sr=dbaron 2008-08-06 12:55:07 +12:00
Robert Longson
17c99ca38b bug 445687 - Should not be able to nest text r+sr=roc 2008-08-05 14:07:03 +01:00
Robert O'Callahan
d7dcf6eeb2 Bug 419285. nsCSSFrameConstructor should stop looking for first-letter content after a <br>. r+sr=dbaron 2008-07-29 22:02:00 -07:00
Boris Zbarsky
46b8af8b1f Bug 431520 followup. Actually return a value! 2008-07-29 01:17:28 -07:00
Boris Zbarsky
cdd7ce070b Bug 431520. Don't do first-line styling on fieldsets, because it confuses the legend code, and it's not clear what it should even do. r+sr=dbaron 2008-07-28 23:08:57 -07:00
L. David Baron
addab50588 Don't restyle slow selectors for changes to anonymous content (non-native-anonymous). (Bug 436453) r+sr=bzbarsky 2008-07-22 21:50:20 -07:00
L. David Baron
2c2f6ed495 Change the binding parent for native anonymous content to work like the binding parent for XBL anonymous content, and be the parent of the anonymous content subtree rather than the root of the anonymous content subtree. (Bug 436453) r=bzbarsky,smaug,surkov sr=bzbarsky 2008-07-22 21:50:20 -07:00