Commit Graph

140 Commits

Author SHA1 Message Date
L. David Baron
d789ef0b1b Switch nsLayoutUtils inflation methods to the new setup with state on the pres context. (Bug 706609, patch 5) r=roc
This is the third of three patches to rework the way we handle getting
the font inflation container and width data during reflow, which are
needed so that we can sometimes honor inflation during intrinsic width
calculation (which we need to do to make some form controls inflate
correctly).
2012-01-24 17:21:29 -08:00
Simon Montagu
3ca7ecdbcb Implement text-align-last. Bug 536557, r=dbaron 2012-01-12 19:52:21 +02:00
Ed Morley
2099bb7e42 Backout 6605cc311ec5 & 9217303c2e5c (bug 536557) for M4 orange 2012-01-12 15:33:00 +00:00
Simon Montagu
dec2df3fe1 Implement text-align-last. Bug 536557, r=dbaron 2012-01-12 16:29:20 +02:00
L. David Baron
714e0a8683 Weaken the quirks mode inline box model zeroing-of-containers when those containers have children that are vertical-align: top or bottom, so that it's a little more like when they have children with other values of vertical-align (except that it's an approximation). (Bug 714519) r=roc
--HG--
extra : transplant_source : %1B%A2%1A%2Cb%7BcS%C9%5Et%F8%F16%E3%1A%12%D67%15
2012-01-01 17:35:12 -05:00
Mats Palmgren
ecaac9ba30 Bug 515530 - Remove nsHTMLContainerFrame. r=roc 2011-12-27 21:18:48 +01:00
Nicholas Nethercote
33730101c6 Bug 711908 - Fix a bunch of GCC warnings in layout. r=dbaron. 2011-12-19 19:46:39 -08:00
L. David Baron
1bf4346bd3 Apply font size inflation to line heights. (Bug 627842, patch 11) r=roc
Since font size inflation applies to the text after style data
computation, we must separately apply this inflation to line heights.
2011-11-23 18:48:23 -08:00
L. David Baron
1d218d5fcd Pass block's reflow state to nsTextFrame::UnionAdditionalOverflow. (Bug 627842, patch 8) r=roc 2011-11-23 18:48:23 -08:00
L. David Baron
8573702a37 Make NOISY_VERTICAL_ALIGN compile again. Not part of the build. No review. 2011-10-18 10:44:43 -07:00
Simon Montagu
2538e9f8cd Implement unicode-bidi: -moz-plaintext in layout. Bug 662288, r=roc 2011-10-18 14:51:58 +02:00
Ehsan Akhgari
2a602a5685 Bug 690892 - Replace PR_TRUE/PR_FALSE with true/false on mozilla-central; rs=dbaron
Landing on a CLOSED TREE
2011-10-17 10:59:28 -04:00
Ehsan Akhgari
b273fc68d8 Bug 10209 - Part 2: Implement the absolute positioning support for all frames; r=roc 2011-04-29 19:02:33 -04:00
Michael Wu
d8e503c38b Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones
--HG--
rename : tools/trace-malloc/bloatblame.c => tools/trace-malloc/bloatblame.cpp
2011-09-28 23:19:26 -07:00
L. David Baron
16759869c5 Remove overflow handling that should have been removed along with the standards-mode text-shadow of text-decoration handling in bug 403524, changeset 83b2648ee442. (Bug 680505, patch 1) r=roc
Since this affects only the *visual* overflow and not the *scrollable*
overflow, this patch should result in no behavior changes, since the
necessary visual overflow is added in
nsTextFrame::UnionAdditionalOverflow (since the text frame now draws the
shadows of text decorations, just like it draws text decorations
themselves).
2011-08-20 21:35:56 -04:00
L. David Baron
0cd491390d Replace all uses of nsLayoutUtils::SetFontFromStyle with GetFontMetricsForFrame or GetFontMetricsForStyleContext and remove SetFontFromStyle. (Bug 678671, patch 2) r=roc
There was nothing wrong with SetFontFromStyle, except that it's just one
more API to think about (and one more API to audit and modify for font
inflation work to happen in bug 627842).
2011-08-14 10:08:04 -07:00
Vitor Menezes
634b38b6b7 Bug 676538: Fix regression that caused text-decorations on inline *child* of block to draw at the offset for the block rather than the inline. r=dbaron
The FrameProperty representing baseline is set when a block defines
text-decorations and has vertically-aligned children, but we were
retrieving it whether the block or the vertically-aligned frame itself
defined the decorations.  As a result, we "undo" the frame offset to get
the baseline from the child in that case.
2011-08-10 12:44:17 -07:00
Vitor Menezes
1eb945fbb6 Bug 223764: Inlines inside inlines that draw text-decorations shouldn't alter the baseline. (r=dbaron)
We add a baseline field to nsInlineFrame and modify
nsLineLayout::BeginSpan to take a pointer to a baseline to update. This
also means that nsFirstLetterFrame no longer needs to update its own
baseline, and instead should just pass its own field along.
2011-08-03 11:30:58 -07:00
Vitor Menezes
e28c55c2e9 Fix text-decoration positioning in quirks mode and set overflow areas to match. (Bug 403524) r=dbaron
Change the quirks mode text-decoration code (soon to be used for all
modes) to follow CSS 2.1's rules for positioning of decoration lines.
Decorations are now drawn at a constant vertical position established by
the element creating the decoration, and more than one of the same type
(underline, overline, line-through) of decoration are supported on the
same piece of text.

This means that text-decorations can now significantly overflow a text
frame, since the vertical-alignment of the element with text-decoration
may be substantially different from the vertical alignment of the text.
Set overflow areas for text frames with text decorations in
nsLineLayout::RelativePositionFrames since it must happen *after*
vertical alignment is done, and when relative positioning data are
consistent (nsIFrame::GetRelativeOffset matches the offset that has been
applied).
2011-08-03 11:30:58 -07:00
Ehsan Akhgari
c4436101c8 Back out bug 10209 and bug 656875 (its regression fix) from Aurora because the work on this bug has not been finished yet
--HG--
extra : transplant_source : t%9F%EB%2Aa%A4%C0%9Ab%A5%DDQ%3EMD%5E%01h%E7%2A
2011-06-01 16:18:15 -04:00
L. David Baron
81e96fe621 Change IsPercentageAware (which tests whether an inline box's width depends on the width of its container) to check the correct general statement of when the width of a replaced element depends on its container's width, and in doing so avoid depending on the notion of percentage intrinsic size. (Bug 611099) r=dholbert
Needed to help CSS 2.1 meet Proposed Recommendation entrance criteria.
2011-06-12 18:52:32 -07:00
Ed Morley
9e71e5b9ac Bug 614515 - Remove MOZ_SVG conditions. r=roc 2011-05-30 09:34:50 +02:00
Ehsan Akhgari
e4c89e2e5d Bug 10209 - Part 2: Implement the absolute positioning support for all frames; r=roc 2011-04-29 19:02:33 -04:00
Chris Jones
a61c26e2c0 Bug 642381, part 3: Hoist Maybe into mfbt and eliminate Gecko's use of jstl. r=jorendorff,luke 2011-04-28 17:48:52 -05:00
Chris Jones
6fd4cbff2d Bug 642381, part 2: Rename LazilyConstructed to Maybe. r=luke 2011-04-28 17:48:51 -05:00
Zack Weinberg
52c99aabb7 Bug 174055, part 6: eliminate pointless nsresult return values. 2011-04-07 21:18:43 -07:00
Zack Weinberg
42ead75834 Bug 174055, part 4: mechanical fixups outside gfx. 2011-04-07 18:05:49 -07:00
Zack Weinberg
299386f14c Bug 174055, part 1: minimize inclusion of nsI(Thebes)FontMetrics.h. 2011-04-07 18:04:41 -07:00
Zack Weinberg
d8db59d068 Bug 266236 part 8: Change nsRenderingContext::GetDeviceContext and ::GetFontMetrics to return bare pointers.
--HG--
rename : gfx/src/nsThebesRenderingContext.cpp => gfx/src/nsRenderingContext.cpp
rename : gfx/src/nsThebesRenderingContext.h => gfx/src/nsRenderingContext.h
extra : rebase_source : 36dd32d715cb75e99cd3a69e460c000c1777d6a6
2011-04-07 18:04:40 -07:00
Jan Küchler
5ef6bf26cf Bug 266236 part 3: Mechanical rename of nsIRenderingContext and nsThebesRenderingContext to nsRenderingContext. Mechanical substitution of nsRefPtr<nsRenderingContext> for nsCOMPtr<nsRenderingContext>.
--HG--
rename : gfx/src/nsThebesRenderingContext.cpp => gfx/src/nsRenderingContext.cpp
extra : rebase_source : 34884bfcafd885feaf73300bc7246cd192062a48
2011-04-07 18:04:40 -07:00
Jan Küchler
0e92a9d34a Bug 266236 part 1: Preliminary API cleanup on nsIRenderingContext.
--HG--
extra : rebase_source : a21ffad484f47103e403b8316eae5fdfd815c2cb
2011-04-07 18:04:39 -07:00
Daniel Holbert
99a50a3910 Bug 596478: delay nsImageFrame's IsPercentageAware check until after we've lazily initialized mIntrinsicSize. r=roc a=dbaron 2011-02-15 13:34:52 -08:00
L. David Baron
dfd177a552 Make overflow from text frames be visual overflow only, and not scrollable. (Bug 542595, patch 8) r=roc a2.0=blocking2.0:beta8 2010-10-06 21:25:45 -07:00
L. David Baron
03966a7c79 Make nsLineLayout track two separate overflow areas. (Bug 542595, patch 7) r=roc a2.0=blocking2.0:beta8 2010-10-06 21:25:45 -07:00
Daniel Holbert
ba3de9468d Bug 594617: Make nsImageFrame::GetIntrinsicSize return its actual intrinsic size, and teach IsPercentageAware about SVG images. r=roc a=blocking 2010-09-14 16:20:32 -04:00
L. David Baron
26ed2a5639 Add support for calc() to 'vertical-align' and 'text-indent'. (Bug 585715) r=bzbarsky a2.0=blocking:beta6+ 2010-08-31 12:05:12 -04:00
L. David Baron
ed01917887 Add support for calc() to the '{margin,padding}-{top,right,bottom,left}' and '-moz-margin-{start,end}' properties. (Bug 585715) r=bzbarsky a2.0=blocking:beta6+ 2010-08-31 12:05:12 -04:00
Boris Zbarsky
d4692ab044 Bug 580167 part 3. Make nsLineLayout call ReflowText as needed. r=dbaron 2010-08-25 14:54:47 -04:00
L. David Baron
065207f2c7 Add support for calc() to the 'top', 'right', 'bottom', and 'left' properties. (Bug 585715) r=bzbarsky a2.0=blocking+ 2010-08-25 12:17:56 +02:00
fantasai
4b31319f01 Change coordinate system in the float manager from content box (most of the time, but sometimes border box) to always border box. (Bug 551425) r=dbaron a2.0=blocking+ 2010-08-11 12:32:53 -07:00
L. David Baron
462a888804 Consolidate code for determining when widths and heights depend on a container. (Bug 585715) r=bzbarsky a2.0=blocking2.0+ 2010-08-11 12:32:52 -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
Robert O'Callahan
65a544dade Bug 551632. endsInDiacritic frame property is set but never used. r=smontagu 2010-03-29 14:46:13 +13:00
Robert O'Callahan
84aaebcc5c Bug 549184. Track 'has nonempty content been placed on this line yet' separately from 'has nonempty, non-span content been placed on this line yet'. r=dbaron
--HG--
extra : rebase_source : fe9318ed5143fe42107a55dfdcb6c0c8fee3dae6
2010-03-10 13:14:14 +13:00
Robert O'Callahan
abe4078562 Bug 538935. A span should be considered non-empty (for the purposes of deciding whether stuff after it is 'at the beginning of the line') only if it contains non-empty content. r=dbaron
--HG--
extra : rebase_source : 70e158527ef017ed5d5271e861a775aa85986645
2010-02-02 12:18:57 +13:00
Robert O'Callahan
b8d4541cc3 Bug 531361. Make nsLineLayout not assert about long lines that may occur naturally. r=dbaron 2009-12-12 13:27:18 -08:00
Boris Zbarsky
a443ed8d78 Bug 501847 part 2. Make various consumers deal with more than 2 inlines in an {ib} split. r=tn, sr=roc 2009-09-18 14:00:21 -04:00
L. David Baron
1e581250d4 Make unconstrained width assertions into warnings because we can hit them when we clamp really large widths. (Bug 525100) r=roc 2009-10-28 20:22:28 -07: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
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