Commit Graph

2217 Commits

Author SHA1 Message Date
L. David Baron
6d279b0435 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
48dd50ff36 Don't force availableHeight to be nonnegative, because doing so means that we'll place zero height blocks (including their non-zero-height contents) at the bottom of a page when there's not room (see nsHTMLReflowState::SetTruncated). (Bug 563584, patch 32) r=roc 2010-08-05 21:59:20 -07:00
L. David Baron
202767697e Set incomplete status when we have continuations that we shouldn't destroy. Fixes assertion on layout/generic/crashtests/469859-1.xhtml . (Bug 563584, patch 30) r=roc 2010-08-05 21:59:20 -07:00
L. David Baron
d71021a7dd Don't switch a constrained height to an unconstrained one due to infinite clearance. Fixes layout/reftests/bugs/563584-10b.html . (Bug 563584, patch 29) r=roc 2010-08-05 21:59:20 -07:00
L. David Baron
875b636719 Add comment describing mIsTopOfPage better. (Bug 563584, patch 28) r=roc 2010-08-05 21:59:20 -07:00
L. David Baron
5239f85a39 Don't split floats when we're not paginating. (Bug 563584, patch 26) Fixes assertion on layout/generic/crashtests/461294-1.html . r=roc 2010-08-05 21:59:20 -07:00
L. David Baron
bc78f1fdf5 In a constrained height situation, we need to reflow anything with floats. (Bug 563584, patch 25) Fixes assertion on layout/generic/crashtests/408883-1.html . r=roc 2010-08-05 21:59:20 -07:00
L. David Baron
5deb652621 Add bit to lines indicating that they may have a placeholder for a float that was pushed to the next line (and bump the child count up to 32 bits). (Bug 563584, patch 24) r=roc 2010-08-05 21:59:20 -07:00
L. David Baron
d34dbc633c Adjust reftest assertion manifests for churn in nscoord_MAX-related assertions (which includes 'computed overflow area' assertion, because of width wraparound in UnionRect making overflow area empty). (Bug 563584, patch 23) r=roc 2010-08-05 21:59:20 -07:00
L. David Baron
934f7dfb67 Pass correct *remaining* height to float manager, rather than the whole height of the content area. (Bug 563584, patch 22) r=roc 2010-08-05 21:59:20 -07:00
L. David Baron
b56efbfcf6 Add checks to VerifyList that previous siblings match next siblings. (Bug 563584, patch 21) r=roc 2010-08-05 21:59:20 -07:00
L. David Baron
4a3f5d15df Remove aReflowStatus parameters made unnecessary by previous patch. (Bug 563584, patch 20) r=roc 2010-08-05 21:59:20 -07:00
L. David Baron
46bdda8846 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
5247c76404 Do the same for PlaceBelowCurrentLineFloats: don't propagate the truncation of a float into the line's reflow status. (Bug 563584, patch 18) r=roc 2010-08-05 21:59:20 -07:00
L. David Baron
867d31744c 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
f3f9dbebba Save float's next sibling since reflowing it could change the next sibling. (Bug 563584, patch 16) r=roc 2010-08-05 21:59:19 -07:00
L. David Baron
646c626078 Steal float back before reflowing it, in order to allow first continuation of a float to be pushed to the next page. (Bug 563584, patch 15) r=roc 2010-08-05 21:59:19 -07:00
L. David Baron
fd5ab03929 nsBlockFrame::ReflowFloatContinuations doesn't need anything in AddFloat other than FlowAndPlaceFloat. (Bug 563584, patch 14) r=roc 2010-08-05 21:59:19 -07:00
L. David Baron
e714f071f9 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
99f4849c65 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
7c80834b1e Make nsFrameList::RemoveFramesAfter(nsnull) remove the whole list. (Bug 563584, patch 11.5) r=roc 2010-08-05 21:59:19 -07:00
L. David Baron
4f730231c6 Don't try to clear pushed floats when computing the final size of blocks. Fixes scrollbar on layout/reftests/bugs/563584-6-columns.html . (Bug 563584, patch 11) r=roc 2010-08-05 21:59:19 -07:00
L. David Baron
fe16c37241 Add the optimization mentioned in the previous patch, so we don't have to iterate all floats to determine if one was split. (Bug 563584, patch 10) r=roc 2010-08-05 21:59:19 -07:00
L. David Baron
02c1db8436 Allow the float manager to record that a float has been pushed past a break. (Bug 563584, patch 9) r=roc 2010-08-05 21:59:19 -07:00
L. David Baron
4da470a62d Remove initialization to value that doesn't make much sense and never matters. (Bug 563584, patch 8) r=roc 2010-08-05 21:59:19 -07:00
L. David Baron
138354b6a3 Use an AutoRestore to restore mY in nsBlockReflowState::FlowAndPlaceFloat. (Bug 563584, patch 7) r=roc 2010-08-05 21:59:19 -07:00
L. David Baron
489ed8d30b When we're in columns (and therefore not splitting floats), push floats that don't fit to the next column. (Bug 563584, patch 6) r=roc 2010-08-05 21:59:19 -07:00
L. David Baron
08a16e6b29 Replace force-fit with setting mIsTopOfPage correctly. (Bug 563584, patch 5) r=roc 2010-08-05 21:59:19 -07:00
L. David Baron
f46f248ca8 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
L. David Baron
353538a3ba Most of CanPlaceFloat is unnecessary given the float placement rules (in particular, that the top of a float cannot be higher than the top of any prior left or right float) and the fact that we now split floats. (Bug 563584, patch 3) r=roc 2010-08-05 21:59:18 -07:00
L. David Baron
11f75cf522 Remove aForceFit/aRelaxHeightConstraint concept from float reflow, since we now split floats rather than push them to the next page (and correct propagation of nsHTMLReflowState::mFlags::mIsTopOfPage will force fitting when we need to). (Bug 563584, patch 2) r=roc 2010-08-05 21:59:18 -07:00
L. David Baron
a33881c053 Fix assertion about float manager state by restoring old float manager state when we place a float and then cancel that placement. (Bug 563584, patch 1) r=roc 2010-08-05 21:59:18 -07:00
Chris Jones
3b7ff8f6bc Bug 570620, part a: Fix an assertion that will soon no longer hold and remove obsoleted already_AddRefed idiom in two places. r=roc 2010-08-05 17:11:23 -05:00
Boris Zbarsky
0b5df24742 Bug 582037. When computing intrinsic widths, take the viewport's dimensions into account when it has percent-height descendants. r=dbaron 2010-08-05 17:59:36 -04:00
Robert O'Callahan
df40488589 Bug 582467. With accelerated layer backends, we should always treat video layers as active to avoid having to read back; no point in saving composition costs on those backends anyway. r=vlad 2010-08-02 15:06:58 +12:00
L. David Baron
c06c57f6e6 Fix bustage from bug 570329 with s/windowsWidget/winWidget/g. 2010-07-30 20:50:52 -07:00
Craig Topper
fec95b227d Remove QueryFrame support for nsICSSPseudoComparator. (Bug 576794) r=bzbarsky a2.0=bsmedberg 2010-07-30 16:48:57 -07:00
L. David Baron
9cc2e9ec05 Switch reftest manifests to new, shorter syntax for widget toolkit tests. (Bug 570329) a2.0=tests
This patch was created by running the following sed commands:
s/MOZ_WIDGET_TOOLKIT=="\(gtk2\|cocoa\|qt\|windows\)"/\1Widget/g
s/MOZ_WIDGET_TOOLKIT!="\(gtk2\|cocoa\|qt\|windows\)"/!\1Widget/g
on all *.list files in the tree.
2010-07-30 16:48:57 -07:00
Kyle Huey
cc25e38cd5 Bug 575043: Remove internal uses of nsICaseConversion. r=smontagu sr=roc
--HG--
extra : rebase_source : f95ad3f21a95e354324e1524c378cad7146f3241
2010-07-29 12:22:16 -07:00
Steffen Imhof
a4facb8ffc Bug 578693 - Transport of key events to plugin in window-less case is incomplete for Qt backend r=dougt 2010-07-28 18:05:32 -07:00
Timothy Nikkel
f7c5754ce0 Bug 542136. Add crashtest. 2010-07-25 13:10:31 -05:00
Olli Pettay
abf43f852b Bug 566466 - speed up createElement(), r=jst, peterv 2010-07-23 12:49:57 +03:00
Karl Tomlinson
fb689d79eb b=580440 use native-rendering temp surfaces only as large as necessary r=roc a2.0=beltzner
--HG--
extra : rebase_source : 53788fe162ea7ef0c8b4190a08801cbd276e702b
2010-07-23 10:25:19 +12:00
Justin Lebar
445d3bb942 Bug 581051 - Move selection.modify() from nsISelection.idl into nsISelection3.idl. r,approval2.0=jst
--HG--
extra : rebase_source : 9008b467241f21bc66d5fca734d916400d21e3b2
2010-07-22 11:02:06 -07:00
Masayuki Nakano
660981e020 Bug 389372 - Contenteditable node is still editable without focus; r=ehsan,masayuki,roc sr=jst a=blocking-2.0:betaN+ 2010-07-22 12:22:44 -04:00
Ehsan Akhgari
436482ad96 Bug 576342 - Intermittent Windows Cd failure: "REFTEST TEST-UNEXPECTED-PASS | reftest/tests/layout/generic/crashtests/463741-1.html | assertion count 3 is less than expected 4 assertions"; r=Jesse 2010-07-21 20:47:04 -04:00
Masayuki Nakano
d7540e477b backout the previous my check-ins 2010-07-22 11:11:34 +09:00
Masayuki Nakano
742e98c291 Bug 389372 Contenteditable node is still editable without focus r=ehsan+roc, sr=jst 2010-07-22 08:46:52 +09:00
Craig Topper
b9673b8709 Bug 577438 Part 1: Add previous sibling to nsIMutationObserver::ContentRemoved. r=sicking 2010-07-21 15:05:17 -07:00
Boris Zbarsky
7b4527a47c Bump the mac assert count too. Bug 579940. 2010-07-19 13:28:45 -04:00