Commit Graph

7934 Commits

Author SHA1 Message Date
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
L. David Baron
06135a3d37 Fix processing of matrix() transform functions to handle calc() rather than asserting. (Bug 584569) r=bzbarsky 2010-08-05 21:59:18 -07:00
L. David Baron
8e7483c7aa Remove the MOZ_WIDGET_TOOLKIT backwards-compatibility definition in the reftest condition sandbox. (Bug 570329) r=roc 2010-08-05 21:59:18 -07:00
Chris Jones
1d4cc217ed Bug 570620, part b: Fix a hidden header depedency and add a PresShell::GetLayerManager() helper. r=tn 2010-08-05 17:11:23 -05: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
Bobby Holley
27a2d4812b Bug 343515 - need API for tabbrowsers to tell docshells they're visible/hidden.r=gavin,sr=bz,a=blocker 2010-08-05 11:27:52 -04:00
Daniel Holbert
f3625579d2 Bug 578786: Fix reftests for bug 491180 on Ubuntu 10.04. r=bz a=tests-only 2010-08-05 07:53:43 -07:00
Daniel Holbert
996b8e29c8 Bug 579492: Use dev pixels for screen rect in PresShell::PaintRangePaintInfo. r=roc a=dbaron 2010-08-05 07:53:43 -07:00
Jonathan Kew
f9fab4a776 bug 581092 - use unrounded width when advancing x-position to draw RTL text run in canvas. r=vlad a=blocking2.0 2010-08-05 10:18:39 +01:00
Jonathan Kew
a02799847b bug 578118 - reduce font size in reftest to avoid D2D antialiasing irregularities. r=bas a=tests-only 2010-08-05 10:18:37 +01:00
Boris Zbarsky
b9fae2b3d2 Bug 577838. The first line baseline of a fieldset should be the first line baseline of its legend (if it has one), or of its content if it does not. r=dbaron 2010-08-04 22:40:19 -04:00
David Zbarsky
de6582a359 Remove unneeded nsIDOMNSHTMLInputElement interface by merging it into nsIDOMHTMLInputElement. (Bug 582303) r=jst 2010-08-04 22:40:18 -04:00
Ehsan Akhgari
659cc9b4af Bug 578604 - Crash [@ nsTextControlFrame::SetInitialChildList(nsIAtom*, nsFrameList&) ] when print preview; r=roc a=blocking2.0+ 2010-08-04 22:13:57 -04:00
Kyle Huey
2a2801990e Bug 578714: Stop doing Unicode-aware case-folding inside layout/style. r=zwol sr=bz 2010-08-02 15:19:04 -07:00
Zack Weinberg
40a9b87efe Bug 581579: fix error recovery in parsing of CSS priority suffix. r+a=dbaron 2010-08-04 12:27:05 -07:00
Zack Weinberg
d32d8b4b6e Bug 338679: mark style declarations immutable if they are stringified. r=bzbarsky a=dbaron 2010-08-02 15:40:35 -07:00
Zack Weinberg
a6b8c9b603 Bug 569719 part 16: Don't refcount declarations and data blocks; don't have style rules hold direct pointers to data blocks. r+a=dbaron 2010-07-23 11:00:52 -07:00
Zack Weinberg
b8130b3679 Bug 569719 part 15: Always copy the entire css::Declaration before changing it in any way. r=dbaron 2010-07-23 11:00:49 -07:00
Zack Weinberg
d16aea72e1 Bug 569719 part 14: replace DeclarationChanged() with SetCSSDeclaration(), which takes the new declaration as an argument. r=dbaron 2010-07-23 11:00:47 -07:00
Zack Weinberg
39c4539636 Bug 569719 part 13: move nsCSSParser methods that manipulate data blocks into the appropriate nsCSS*DataBlock classes. r=dbaron 2010-07-23 11:00:44 -07:00
Zack Weinberg
af2031e447 Bug 569719 part 12: replace nsCSSParser::ClearTempData with explicit use of mTempData.ClearProperty (and make that method handle shorthands). r=dbaron 2010-07-23 11:00:42 -07:00
Zack Weinberg
bfd2ecb93e Bug 569719 part 11: take the fast path in ParseProperty for !important replacing !important, as well as normal replacing normal. r=dbaron 2010-07-23 11:00:39 -07:00
Zack Weinberg
604c8c3c12 Bug 569719 part 10: refactor parsing of !important and the end of a property declaration. r=dbaron 2010-07-23 11:00:37 -07:00
Zack Weinberg
6873de67ec Bug 569719 part 9: remove return value from css::Declaration methods that always return NS_OK, and change GetCSSDeclaration to return a css::Declaration instead of an nsresult. r=dbaron 2010-07-23 11:00:34 -07:00
Zack Weinberg
b9547bdd5e Bug 569719 part 7: Add AppendToString methods to nsCSSRect and friends as well, replacing Declaration::AppendStorageToString. r=dbaron 2010-07-23 11:00:29 -07:00
Zack Weinberg
b87b69a229 Bug 569719 part 6: Move Declaration::AppendCSSValueToString into nsCSSValue. r=dbaron 2010-07-23 11:00:27 -07:00
Zack Weinberg
a0acc46ce4 Bug 569719 part 5: in nsCSSValueList and nsCSSValuePairList, convert Equal() to operator==, and remove unnecessary argument from Clone(). r=dbaron 2010-07-23 11:00:24 -07:00
Zack Weinberg
1e5ad912e8 Bug 569719 part 4: Move nsCSSExpandedDataBlock::RuleDataPropertyAt into struct nsRuleData. r=dbaron 2010-07-23 11:00:21 -07:00
Zack Weinberg
b2480f1b17 Bug 569719 part 3: collapse nsDOMCSSDeclaration::ParseDeclaration into its sole caller (nsDOMCSSDeclaration::SetCSSText); remove always-constant flag arguments to nsCSSParser::ParseAndAppendDeclaration; rename that method to ParseDeclarations. r=dbaron 2010-07-23 11:00:19 -07:00
Jeff Muizelaar
ff12cb537d Bug 584400. cairo: Fix dash arrays with D2D
D2D unexpectedly uses dash lengths with
units of the line width.
2010-08-04 15:00:52 -04:00
Jim Mathies
f0c2ed6fd9 Bug 579421 - Title bar(window without body) appears at the upper left corner of monitor screen. r=roc. (CLOSED TREE) 2010-08-03 22:36:19 -07:00