Xidorn Quan
0cb7562edc
Bug 1108429 part 8 - Implement default ruby alignment. r=roc
...
--HG--
extra : source : 469cb97255e807acd60aea73db7e76e03d9409c9
2014-12-15 10:33:59 +11:00
Xidorn Quan
d732a076a4
Bug 1108429 part 7 - Modify jusitication computation to take ruby into account. r=roc
...
--HG--
extra : source : dc85c8f239aa5f08d31ada2f1346ad1965bdd4c2
2014-12-15 10:19:38 +11:00
Xidorn Quan
b57d1f90f3
Bug 1108429 part 6 - Record inner justification opportunities for each frame. r=roc
...
--HG--
extra : source : 40cee8a9a435667520e3cc846783e8c17b252c5a
2014-12-15 09:57:36 +11:00
Xidorn Quan
a759fbf567
Bug 1108429 part 5 - Enable justification computation when there is ruby. r=roc
...
--HG--
extra : source : a70242f72a280e7f1ceab6b6fa4ece13bd807dee
2014-12-13 22:18:16 +11:00
Xidorn Quan
e8df246df7
Bug 1108429 part 4 - Handle isize reservation in sync annotation rect. r=roc
...
--HG--
extra : source : 9cd4da9858ad4a314cef0354ec73b8bd635c5ca9
2014-12-13 16:13:12 +11:00
Xidorn Quan
ea6940e783
Bug 1108429 part 3 - Add flag to indicate the existance of ruby. r=roc
...
--HG--
extra : source : 322ca21457397001c361db0ea766367d19b9b9a1
2014-12-13 11:48:30 +11:00
Xidorn Quan
7042d1e185
Bug 1109937 - Change flags in PerFrameData to use bit fields. r=roc
...
--HG--
extra : source : 76160496de67f8d8e3f0823613632897ab55fa84
2014-12-23 10:22:26 +11:00
Xidorn Quan
2331038635
Bug 1098272 part 1 - Suppress line breaks inside ruby boxes. r=dbaron,roc
...
--HG--
extra : rebase_source : 2e884fd15244a265011e3241be084c5a1c6fd66e
extra : source : 0ea7212c131401abff6a097773ae93cdfa05dcde
2014-12-22 15:17:55 +11:00
Xidorn Quan
244888aa06
Bug 1039009 - Handle float in the base line layout. r=dbaron
...
--HG--
extra : rebase_source : 981a5ae2bb8f8bf7852398ea944c6e07ed283292
extra : source : b661631e125ab0ffa2bdfa44201fe59571189423
2014-12-10 10:49:13 +11:00
Xidorn Quan
4ee06cf1d6
Bug 1081770 - Move ruby annotation frames when text-align: justify is applied to ruby bases. r=dbaron
...
--HG--
extra : rebase_source : 959be07c7a44c96eba46963213de01525e5292b0
extra : source : c5e6e8898b2df7b29fe1b2071291bde17d7780fc
2014-12-09 17:43:24 +11:00
Xidorn Quan
f9c28c207a
Bug 1107721 - Add method for attaching frame data to base line layout. r=dbaron
...
--HG--
extra : source : 82fe55e167562868c2a9056e08913f630a84fe48
2014-12-10 09:49:45 +11:00
Xidorn Quan
87cab6fb46
Bug 1107721 - Create PFD for root span. r=dbaron
...
--HG--
extra : source : 1b8c074e34182cd77158e1c09defe1231c25248e
2014-12-10 09:40:14 +11:00
Xidorn Quan
8be20d9f71
Bug 1107721 - Handle unlinking pfds linked to other levels. r=dbaron
...
--HG--
extra : source : c7f097390cb910d35fc09cc9cd8660d56fcccca2
2014-12-09 09:30:23 +11:00
Xidorn Quan
352948f6fe
Bug 1107721 - Separate pfd unlinking code to method UnlinkFrame. r=dbaron
...
The comment of UnlinkFrame says that the PFDs of linked annotations
won't be freed immediately, which is not implemented in this patch,
but in the next patch.
--HG--
extra : source : 813840414cb9140b71ae3f337a96236689dac705
2014-12-09 09:14:49 +11:00
Xidorn Quan
2c3631601f
Bug 1107721 - Add pointers to PerFrameData of different level. r=dbaron
...
--HG--
extra : source : 151ebfa898e36d36e5d7216a277ad8f1faa7fa5c
2014-12-05 15:57:12 -08:00
Xidorn Quan
347abfe9b0
Bug 1107721 - Allocate PerFrameData & PerSpanData from the base line layout. r=dbaron
...
--HG--
extra : source : 2444a14f27efcb9d69417d3333dfe809572b5dd0
2014-12-05 15:31:42 -08:00
Xidorn Quan
3ba35be862
Bug 1107721 - Add pointer to the base line layout in nsLineLayout. r=dbaron
...
--HG--
extra : source : 7b1b90d6bba043a68a84bb2faeba95096fa15ca5
2014-12-05 15:05:51 -08:00
Simon Montagu
33a271e5bd
Bug 1105137: treat nsFloatManager's mOrigin as an offset, not a point, and rename it to mOffset to make that clearer, r=jfkthame
2014-12-11 03:56:03 -08:00
Xidorn Quan
ef58484437
Bug 1096152 - Use frame instead of content to track break position. r=dbaron
...
--HG--
extra : amend_source : efab3508002471ed24c629d13985bca4fe4a1376
2014-11-14 16:41:14 +11:00
Jonathan Kew
2c2899d58e
Bug 1084370 - Fix handling of vertical-align in lines with vertical writing mode. r=smontagu
2014-11-13 12:58:30 +00:00
Jonathan Kew
34fea182cd
Bug 1093553 - Improve handling of line-height metrics, block ascent, etc., in vertical writing mode. r=smontagu
2014-11-13 08:58:06 +00:00
Jonathan Kew
6f8bff7661
Bug 1094914 - part 2 - Store margins and borders using line's writing mode in perFrameData, to avoid writing-mode conversions. r=smontagu
2014-11-13 08:58:02 +00:00
Jonathan Kew
a2a1b29517
Bug 1094914 - part 1 - Don't confuse frame and line writing-modes in nsLineLayout. r=smontagu
2014-11-13 08:58:02 +00:00
Xidorn Quan
a85f3a113d
Bug 1063857 - Implement new justification algorithm. r=roc,masayuki
2014-11-10 12:25:17 +11:00
Jonathan Watt
5767be9b18
No bug - Get rid of some unnecessary nsRenderingContext.h includes and nsRenderingContext forward declarations.
...
--HG--
extra : rebase_source : 2e682062b0c4fe3c1e916ed7c7b7ca98ec3b54d3
2014-11-06 22:07:35 +00:00
Carsten "Tomcat" Book
2032c5061a
Backed out changeset 53d51e7fbb9e (bug 1063857) for Android Reftest Failures
2014-11-04 10:59:46 +01:00
Xidorn Quan
6ce2bfc5f9
Bug 1063857 - Implement new justification algorithm. r=roc,masayuki
2014-11-02 15:07:00 +01:00
Jonathan Watt
4f23ebac06
Bug 1088625, part 3 - Remove nsRenderingContext's SetFont, FontMetrics and SetTextRunRTL methods now that no one uses them any more. r=mstange
2014-10-24 16:28:15 +01:00
Jonathan Watt
a0f005a778
Bug 1088625, part 1 - Add lots of missing nsFontMetrics.h and gfxTextRun.h includes
2014-10-24 16:28:14 +01:00
Jonathan Kew
83ad786e39
Bug 1087954 - Fix invalid mix of logical/physical coordinate systems in nsLineLayout::AllowForStartMargin. r=smontagu
2014-10-24 12:24:40 +01:00
Simon Montagu
aaa297f259
Bug 1082844: when converting between logical and physical coordinates in nsLineLayout, use the width of the containing block as container-width for the root span, and the width of the root span for child spans. r=jfkthame
2014-10-22 05:14:41 -07:00
Simon Montagu
8d64967541
Bug 1079139: make nsFlowAreaRect.mRect a LogicalRect. r=jfkthame
2014-10-21 15:16:13 -07:00
Simon Montagu
e753ab75a0
Bug 1062963 patch 3: make nsFloatManager's origin a LogicalPoint, adapt GetFlowAreas, AddFloats, ClearFloats, etc. to use it and make nsFloatManager region functions work with logical region. r=jfkthame
2014-10-21 15:16:12 -07:00
Simon Montagu
5c79483958
Bug 1062963 patch 1: Logical coordinates in nsLineLayout:ReflowFrame and CanPlaceFrame. r=jfkthame
2014-10-21 15:16:11 -07:00
Mats Palmgren
f2d23931c0
Bug 1085701 - Report the allocation size to the OOM abort. r=roc
2014-10-21 15:42:24 +00:00
Phil Ringnalda
b2eb743d9b
Backed out 4 changesets (bug 1062963, bug 1079139) for failures in 427129-table-caption.html in b2g reftest-6 and Android 2.3 reftest-5
...
Backed out changeset a9672db96a5d (bug 1079139)
Backed out changeset 241c23570a62 (bug 1062963)
Backed out changeset 90172cc0b012 (bug 1062963)
Backed out changeset 71211c4a4acc (bug 1062963)
2014-10-19 18:44:16 -07:00
Simon Montagu
3134a81fca
Bug 1079139: make nsFlowAreaRect.mRect a LogicalRect. r=jfkthame
2014-10-19 12:32:17 -07:00
Simon Montagu
3f0d7f2fcc
Bug 1062963 patch 3: make nsFloatManager's origin a LogicalPoint, adapt GetFlowAreas, AddFloats, ClearFloats, etc. to use it and make nsFloatManager region functions work with logical region. r=jfkthame
2014-10-19 12:32:17 -07:00
Simon Montagu
ec5af204d9
Bug 1062963 patch 1: Logical coordinates in nsLineLayout:ReflowFrame and CanPlaceFrame. r=jfkthame
2014-10-19 12:32:16 -07:00
Jonathan Kew
75e3fc9c57
Bug 1083104 - Fix misuse of physical instead of logical dimension for line breaking. r=smontagu
2014-10-16 09:40:20 +01:00
Simon Montagu
ceafcb2a98
Bug 1076986: make LogicalMargin and LogicalRect's IsEmpty the same as nsMargin and nsRect, r=jfkthame
2014-10-04 23:02:36 -07:00
Simon Montagu
72a6973797
Bug 1069941 patch 2: reset the start coordinate of the inline frames before ReorderFrames so that the margin doesn't get added twice, r=jfkthame
2014-09-30 10:59:13 -07:00
Susanna Bowen
779f8cef59
Bug 1030993 - Basic reflow implementation for ruby frame classes. r=dbaron
...
To account for spacing between bases or text boxes during reflow, the line
layout which manages the bases updates its inline direction coordinate based on
the preferred inline size for the corresponding text boxes. Next, the base is
reflowed at the correct inline coordinate. Each paired text box is then also
reflowed at the proper inline position determined by (1) the current position of
its corresponding base and (2) its own preferred width.
In computing intrinsic widths, accounting for spacing is less complicated. The
minimum intrinsic width is the width of the widest ruby column, and the
preferred intrinsic width is the sum of all the ruby column widths. Each ruby
column width is the maximum width of its base box and text boxes. These
individual widths are determined using GetPrefISize on the base and text boxes.
Ruby base container frames store a list of pointers to the ruby text container
frames in the segment they denote. This list of pointers is created in the ruby
frame reflow method before calling the reflow method for the ruby base
container. The list exists and is used only during reflow of the main ruby frame
and is cleared before returning from reflow.
2014-08-15 10:34:20 -07:00
Seth Fowler
983a3f905a
Bug 913586 (Part 7) - Update Maybe users in layout. r=dbaron
...
--HG--
extra : rebase_source : 1bf45d1356d36269ca951b58ebf1e448313c55c5
2014-08-13 15:42:15 -07:00
Simon Montagu
18c9f2f61a
Bug 789096 patch 10: make Reflow set nsHTMLReflowMetrics.ISize and BSize instead of Width and Height. r=jfkthame
2014-07-24 01:30:07 -07:00
Simon Montagu
c3b44c4dad
Bug 789096 patch 9: use logical coordinates in nsHTMLReflowState available size. r=jfkthame
2014-07-24 01:28:46 -07:00
Jonathan Kew
28b36e1b0b
bug 789096 patch X - avoid some unconstrained-width (should be -isize) warnings with mixed writing modes. r=smontagu
2014-07-10 10:11:33 +01:00
Susanna Bowen
233eb2e9e3
Bug 1033052 - Call SetRect in ReflowFrame since the old rect does not need to be preserved. r=dbaron
2014-07-02 13:54:49 -07:00
Susanna Bowen
b85550ce86
Bug 727125 - Lazily compute LineBaselineOffset when needed so it is present after a dynamic change of 'text-decoration'. r=dbaron
...
This fixes the positioning of underlines set on a block or its ancestor
when drawn on children of a block that have a vertical-align !=
baseline.
The lazy computation is done all at once for all children of a block to
avoid O(N^2) searches for the line containing a frame.
2014-06-18 12:55:00 -04:00
Simon Montagu
caa93255c4
Bug 789096: make method names in nsLineLayout correspond to the respective CSS properties. r=jfkthame
2014-06-17 07:41:33 -07:00
Simon Montagu
aaa4878ee5
Replace GetBaseline with GetLogicalBaseline and use logical coordinates in the line position and baseline getters in nsLayoutUtils. Bug 789096, r=jfkthame
2014-06-17 05:19:38 -07:00
Wes Kocher
abf9a45351
Backed out 2 changesets (bug 727125) for reftest bustage on an otherwise CLOSED TREE
...
Backed out changeset 443361e2724a (bug 727125)
Backed out changeset 16c8d78df86e (bug 727125)
2014-06-16 13:34:50 -07:00
Susanna Bowen
d1e6d153b7
Bug 727125 - Lazily compute LineBaselineOffset when needed so it is present after a dynamic change of 'text-decoration'. r=dbaron
...
This fixes the positioning of underlines set on a block or its ancestor
when drawn on children of a block that have a vertical-align !=
baseline.
The lazy computation is done all at once for all children of a block to
avoid O(N^2) searches for the line containing a frame.
2014-06-16 11:58:25 -07:00
Simon Montagu
ca20e365ef
Replace Get/SetTopAscent with Get/SetBlockStartAscent. Bug 789096, r=jfkthame
2014-06-11 02:45:31 -07:00
Simon Montagu
efc2140fbb
Add a WritingMode argument to nsHTMLReflowMetrics::ISize() and BSize(). Bug 789096, r=jfkthame
2014-06-05 02:39:36 -07:00
Susanna Bowen
ba0f6cdd21
Bug 1019287 - Use accessor instead of private variable in ifdef'ed logging code. r=dholbert
2014-06-02 16:26:00 -04:00
Simon Montagu
ab13ae46c1
Backout 38b25d5e6cf9 because assertions
2014-05-25 03:15:00 -07:00
Simon Montagu
dc4cbd5301
Add a WritingMode argument to nsHTMLReflowMetrics::ISize() and BSize(). Bug 789096, r=jfkthame
2014-05-24 23:47:04 -07:00
Mats Palmgren
75bad2215e
Bug 508665 - part 9, Remove now redundant static_cast<nsContainerFrame*> and do_QueryFrame() calls. r=roc
2014-05-24 22:20:40 +00:00
Simon Montagu
23c1664fb7
Wait for CanPlaceFrame (i.e. after reflow) to apply start-margin and test whether the frame is a last continuation and so needs its end-margin applied. Bug 999446, r=jfkthame
2014-05-20 07:04:54 -07:00
Mats Palmgren
03ca8433c3
Bug 1008908 - Remove assignment since the value isn't used. r=smontagu
2014-05-17 23:10:53 +00:00
Mats Palmgren
6703ffe99e
Bug 1008917 - part 11, make nsBlockFrame::ReflowDirtyLines() and nsLineLayout::ReflowFrame() return types 'void'. r=roc
2014-05-13 00:47:53 +00:00
Mats Palmgren
9795aca511
Bug 1008917 - part 2,3,4, make Reflow() return type 'void', and make a few reflow related helper methods 'void' too. r=roc
2014-05-13 00:47:52 +00:00
Wes Kocher
42253715d7
Backed out 11 changesets (bug 1008917) for apparently introducing an intermittent failure of B2G Crashtest-2 on a CLOSED TREE
...
Backed out changeset e2ab653f688a (bug 1008917)
Backed out changeset b52154d8d900 (bug 1008917)
Backed out changeset 2ab5b01da4de (bug 1008917)
Backed out changeset f7a38df1d44f (bug 1008917)
Backed out changeset 80304bb9a572 (bug 1008917)
Backed out changeset 10ed89a302e9 (bug 1008917)
Backed out changeset 161c41991d46 (bug 1008917)
Backed out changeset 25b2475d2368 (bug 1008917)
Backed out changeset b8000b31277c (bug 1008917)
Backed out changeset 9afa5e7715e1 (bug 1008917)
Backed out changeset 5c380c21351f (bug 1008917)
2014-05-12 15:47:41 -07:00
Mats Palmgren
5ba3e6847a
Bug 1008917 - part 11, make nsBlockFrame::ReflowDirtyLines() and nsLineLayout::ReflowFrame() return types 'void'. r=roc
2014-05-12 17:40:29 +00:00
Mats Palmgren
a722b491f1
Bug 1008917 - part 2,3,4, make Reflow() return type 'void', and make a few reflow related helper methods 'void' too. r=roc
2014-05-12 17:40:28 +00:00
Mats Palmgren
361c3593e3
Bug 613659 - Implement box-decoration-break layout for border/box-shadow and paddding/margin for inlines. r=cam
2014-05-05 17:55:54 +00:00
Mats Palmgren
6301b21c9f
Back out bug 613659 (for regression bug 998792)
...
--HG--
rename : layout/reftests/backgrounds/background-size-slice.html => layout/reftests/backgrounds/background-size-continuous.html
rename : layout/reftests/backgrounds/background-size-cover-slice.html => layout/reftests/backgrounds/background-size-cover-continuous.html
rename : layout/reftests/backgrounds/background-size-cover-clone.html => layout/reftests/backgrounds/background-size-cover-each-box.html
rename : layout/reftests/backgrounds/background-size-clone.html => layout/reftests/backgrounds/background-size-each-box.html
2014-04-20 19:39:24 +00:00
Mats Palmgren
2b31a712b1
Bug 613659 - Implement box-decoration-break layout for border/box-shadow and paddding/margin for inlines. r=cam
2014-04-18 23:01:23 +00:00
Simon Montagu
f8a68ec80e
Make nsLineBox.mBounds a LogicalRect. Bug 789096, r=jfkthame
2014-04-16 01:03:28 -07:00
L. David Baron
415725d6be
Bug 989130 - Back out changeset fe119a83b1f2 (bug 942017) while leaving the corresponding test from changeset 3c63decb4e7e. r=jfkthame
...
This should be backed out for two reasons:
(1) It caused a serious regression with bullets from list-style-image,
which no longer affect the line box height and thus overlap.
(2) The dependency on 'line-height: normal' doesn't make sense; there's
no reason for whether line-height is 'normal' or not to affect the
behavior of bullets.
I don't currently have time to figure out why Gecko behavior differs
from other browsers on bug 942017, but that should be re-analyzed and
the bug fixed in a different way. At first glance, the code should
already be leading to the expected behavior, since the bullet ought to
have the same metrics and alignment as the block's influence on the line
box's height. Why this isn't the case should be investigated.
2014-04-01 11:53:29 -07:00
Simon Montagu
ff1a91f1ec
Aways use the root span's writing mode when recursing into child spans in nsLineLayout::ApplyFrameJustification. Bug 986899, r=jfkthame
2014-03-24 10:50:13 -07:00
Simon Montagu
babaf4f2f3
Correction to typo in checkin for bug 789096. Bug 983691, r=jfkthame
2014-03-24 02:23:12 -07:00
L. David Baron
3ad78c87f5
Bug 349259 patch 1: Add an nsIContent* parameter to nsHTMLReflowState::CalcLineHeight. r=bz
2014-03-12 20:33:21 -07:00
Simon Montagu
2110ef8dc6
Use logical text layout API in nsLineLayout. Bug 789096, r=jfkthame
2014-03-11 13:23:50 -07:00
Carsten "Tomcat" Book
b99f5df532
Backed out changeset aeff4052ef00 (bug 789096)
2014-03-11 09:22:52 +01:00
Simon Montagu
5e0cf76c45
Use logical text layout API in nsLineLayout. Bug 789096, r=jfkthame
2014-03-10 22:19:03 -07:00
L. David Baron
0511ab14ec
Bug 439204: Remove assertion "We placed a float where there was no room!" r=roc
2014-03-03 00:54:39 -08:00
L. David Baron
fbcb130e34
Bug 709014 patch 1: Honor margin-left and margin-right on elements in inline layout that have 0 width and/or height (commonly, inline-blocks). r=roc
...
Prior to this patch, we failed to honor:
* margin-left on elements in inline layout with 0 width and 0 height
* margin-right on elements in inline layout with 0 width
I think that was because the code in CanPlaceFrame to discard both
margins when the width was 0 was running after the left-margin was
applied, unless the later code in PlaceFrame (checking both width 0 and
height 0) un-applied that left margin.
The assertion count change in test_value_computation.html is due to 2
additional "bad width" assertions (I presume from honoring large
margins that were previously ignored).
The change to 538935-1-ref.html is to match an improvement in rendering
of the margins in the test, where both sides of the margin are now
honored.
The change to layout/reftests/text-overflow/marker-basic-ref.html is to
keep the reference (which uses margins) rendering the same way following
the changes to margin handling.
The new behavior (in the reftests added in layout/reftests/inline/)
matches at least Chromium; I didn't check any other browsers.
2014-02-17 20:07:45 -08:00
L. David Baron
d31701cad1
Bug 91419 patch 9: Fix comments and debugging output referring to "special" frames. r=mats
2014-02-06 17:45:33 -08:00
Daniel Holbert
03c54ea5eb
Bug 967287 part 1: Remove unnecessary nsPresContext* argument from functions defined in nsContainerFrame.h. r=mats
2014-02-06 14:07:47 -08:00
Benoit Jacob
562cb87289
Bug 959380 - 1/5 - Make gfxBreakPriority a typed enum - r=jrmuizel
2014-01-23 13:26:39 -05:00
Cameron McCormack
69ff268fcf
Bug 957770 - Take SVG font size scaling into account when vertically aligning text. r=roc
2014-01-11 12:13:09 +11:00
Jonathan Kew
a7837e1ffa
bug 735577 - pt 4.1 - use accessor functions for some physical-coordinate fields in nsHTMLReflowMetrics, in preparation for logicalization. r=smontagu
2013-12-27 17:59:52 +00:00
Jonathan Kew
954a119d07
bug 735577 - pt 3.2 - update the rest of layout code to use the new accessors on nsHTMLReflowState. r=smontagu
2013-12-27 17:59:21 +00:00
Quentin Headen
6f30920da5
Bug 731667 - Rewrite mtable implementation to avoid use of _moz-* attributes - implement parsing and rendering. r=karlt, r=bz
2013-12-13 12:42:43 -05:00
Birunthan Mohanathas
68b00083fd
Bug 713082 - Part 1: Remove unnecessary Util.h includes. r=Waldo
2013-12-08 21:52:33 -05:00
Mats Palmgren
99419ff1d6
Bug 942017 - Only let the bullet frame affect the line height when line-height:normal. r=jfkthame
2013-12-08 01:11:50 +00:00
Mats Palmgren
d587273433
Bug 931853 - Adjust the frame's vertical position to account for a negative margin larger than its height, in quirks mode. r=roc
2013-11-12 18:38:29 +00:00
Mats Palmgren
4c415bc615
Bug 929991 - Layout implementation of 'text-align: true X'. r=roc
2013-10-27 20:56:32 +00:00
Ehsan Akhgari
44cb2c6702
Bug 921753 - Part 3: Avoid #including nsStyleStructInlines.h in nsHTMLReflowState.h; r=roc
...
This patch reduces the number of files that transitively #include
gfx/2d.h from 1362 to 1268.
2013-10-01 17:01:49 -04:00
Ehsan Akhgari
290feb1ade
Bug 921876 - Stop #including nsIFrame.h in nsLayoutUtils.h; r=roc
...
This patch does the following:
* Move nsIFrame::IntrinsicSize to mozilla::IntrinsicSize so that it can
be forward-declared.
* Move a number of templated inline nsLayoutUtils methods to nsIFrame.
* Use mozilla::layout::FrameChildListID instead of the
nsIFrame::ChildListID typedef in nsLayoutUtils.h.
* Move nsReflowFrameRunnable to its only user, nsProgressMeterFrame.cpp.
* Make a number of functions requiring nsIFrame.h out-of-line.
* Remove the nsIFrame.h #include from nsLayoutUtils.h and add it to the
places which require it implicitly.
2013-09-30 17:26:04 -04:00
Mats Palmgren
4974add798
Bug 919318 - Drop the Get prefix on the frame methods GetFirstContinuation, GetLastContinuation, GetFirstInFlow, GetLastInFlow and also on nsLayoutUtils::GetLastContinuationWithChild, because they never return null. r=dholbert
2013-09-25 11:42:34 +00:00
Daniel Holbert
90f7eae182
Bug 919871: Make .cpp files in layout/generic #include their corresponding .h file first. r=mats
2013-09-24 18:43:43 -07:00
L. David Baron
6d628a60bd
Bug 916751: Do not use nsIFrame::MovePositionBy from nsLineLayout. r=dholbert
...
Since bug 916751 is hard (for me) to test, I haven't confirmed for sure
that this fixes the bug.
However, it fixes the assertions that bug 911786 part 3 triggers in
layout/base/crashtests/317934-1.html through this codepath.
2013-09-17 04:44:16 -07:00
Corey Ford
c885568e56
Bug 911786 - Part 2: Reapply relative positioning when moving frames without reflowing them. r=dholbert
2013-09-11 11:51:42 -07:00
Ehsan Akhgari
baf3a129ad
Bug 907883 - Minimize #includes in layout/generic; r=roc
...
--HG--
extra : rebase_source : 5e87b764a12b05aff477c71547e2131be67ca93b
2013-08-22 14:32:52 -04:00
Corey Ford
9adda71475
Bug 898794 - Store normal frame position before applying relative positioning. r=dbaron
2013-08-08 17:20:17 -07:00
Corey Ford
3fcd99f543
Bug 901610 - Use nsStyleDisplay::IsRelativelyPositionedStyle in nsLineLayout. r=dbaron
2013-08-07 11:46:44 -07:00
Corey Ford
703e3044b9
Bug 893962 - Refactor the application of relative positioning. r=dbaron
2013-07-15 17:28:09 -07:00
Cameron McCormack
d3f6368233
Bug 864289 - Rename nsLineLayout::GetLineContainer(Frame|RS) to LineContainer\1. r=dholbert
2013-04-23 11:45:26 +10:00
Masayuki Nakano
65e843edc3
Bug 857820 part.1 Drop blink effect implementation r=dbaron
2013-04-14 19:11:07 +09:00
Cameron McCormack
ca4d21a415
Bug 842142 - Prevent odd text wrapping in SVG text. r=roc
2013-03-25 14:50:59 +11:00
Mats Palmgren
db184f49e1
Bug 843931 - Make nsLineLayout::NewPerFrameData() allocation infallible. r=roc
2013-02-23 11:38:15 +01:00
Mats Palmgren
d85ac931c6
Bug 843925 - Make nsLineLayout::NewPerSpanData() allocation infallible. r=roc
2013-02-23 11:38:15 +01:00
L. David Baron
c5b9eee040
Bug 781360 patch 3: Rename {nsIFrame,nsStyleContext,nsComputedDOMStyle}::GetStyle* to Style*, since they can never return null. r=dholbert
...
Except for the changes in:
layout/generic/nsIFrame.h (part)
layout/style/nsComputedDOMStyle.h (all)
layout/style/nsRuleNode.cpp (part)
layout/style/nsStyleContext.cpp (part)
layout/style/nsStyleContext.h (part)
(see patch 3b in the bug), this patch was written with the sed script:
s/\<GetStyle\(Font\|Color\|List\|Text\|Visibility\|Quotes\|UserInterface\|TableBorder\|SVG\|Background\|Position\|TextReset\|Display\|Content\|UIReset\|Table\|Margin\|Padding\|Border\|Outline\|XUL\|SVGReset\|Column\)\>/Style\1/g
2013-02-16 13:51:02 -08:00
L. David Baron
50d4e367af
Bug 841789, patch 1: Rename nsIFrame::GetStyleContext() to nsIFrame::StyleContext() since it can never return null. r=dholbert
...
This makes it conform to our convention that getters returning pointers
that can never be null do not begin with "Get".
2013-02-15 21:38:33 -08:00
Mats Palmgren
b7ae90666d
Bug 786533 - Replace NS_MIN/NS_MAX with std::min/std::max and #include <algorithm> where needed. r=ehsan
2013-01-15 13:22:03 +01:00
Scott Johnson
a13eed37dc
Bug 811825: Make max line box width ignored if frame has constrained height in order to prevent cut-off data when a user reflows-to-zoom. [r=dbaron]
2012-12-04 22:14:56 -06:00
Nicholas Nethercote
0e97b98462
Bug 814312 - Avoid PL_ArenaPool recycling in the layout engine. r=roc.
...
--HG--
extra : rebase_source : 7aaa3d745583c595692f1effd933cc70931194ff
2012-11-25 14:40:28 -08:00
Ehsan Akhgari
c284cd4124
Bug 810355 - Convert nsDidReflowStatus into an enum class; r=dholbert
2012-11-13 22:47:33 -08:00
Scott Johnson
1d7a36eb51
Bug 802311: Make max line box width adjustment API compute right edge of line boxes correctly to fix reflow-on-zoom issues. [r=dbaron]
2012-10-25 16:38:54 -05:00
Isaac Aggrey
481e7dfb0b
Bug 791906: Replace NSPR integer limit constants with stdint ones; r=ehsan
2012-09-28 01:57:33 -05:00
Leonard Camacho
4420e1cb45
Bug 524025 - Remove LL_* constants in nsLineLayout with separate booleans with field widths. r=dbaron
2012-09-27 21:26:40 -04:30
Scott Johnson
3ea152f05b
Bug 780258: Add an interface to set the maximum line box width, accessible from chrome script. [r=dbaron]
2012-09-05 16:39:34 -05:00
Ehsan Akhgari
e368dc9c85
Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
...
This patch was generated by a script. Here's the source of the script for
future reference:
function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
! -wholename "*security/nss*" \
! -wholename "*/.hg*" \
! -wholename "obj-ff-dbg*" \
! -name nsXPCOMCID.h \
! -name prtypes.h \
-type f \
\( -iname "*.cpp" \
-o -iname "*.h" \
-o -iname "*.c" \
-o -iname "*.cc" \
-o -iname "*.idl" \
-o -iname "*.ipdl" \
-o -iname "*.ipdlh" \
-o -iname "*.mm" \) | \
xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}
convert PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t
convert PRIntn int
convert PRUintn unsigned
convert PRSize size_t
convert PROffset32 int32_t
convert PROffset64 int64_t
convert PRPtrdiff ptrdiff_t
convert PRFloat64 double
2012-08-22 11:56:38 -04:00
Cameron McCormack
d7e9a93257
Bug 655877 - Part 14: Ignore float in SVG text frames. r=roc
2012-08-02 21:38:49 +10:00
Cameron McCormack
6b182261bf
Bug 655877 - Part 11: Ignore vertical-align and map dominant-baseline to vertical-align in SVG text frames. r=roc
2012-08-02 21:38:48 +10:00
Cameron McCormack
bd8a092ab9
Bug 655877 - Part 10: Ignore text-align and text-align-end in SVG text frames. r=roc
2012-08-02 21:38:47 +10:00
Aryeh Gregor
d0ad5a7d0c
Bug 777292 part 2 - Change all nsnull to nullptr
2012-07-30 17:20:58 +03:00
David Zbarsky
d2ee12f6f9
Bug 763350 - Clean up some includes in content/ and dom/ r=smaug
2012-07-01 16:45:59 -07:00
Ed Morley
83427f0fe0
Merge mozilla-central to mozilla-inbound
2012-05-21 13:19:38 +01:00
Gervase Markham
82ff7027aa
Bug 716478 - update licence to MPL 2.
2012-05-21 12:12:37 +01:00
L. David Baron
6b3b8f9533
Remove width determination parameters from font inflation methods. (Bug 747720, patch 5) r=roc
...
These are no longer needed since we're getting the width from the
nsFontInflationData.
2012-05-20 22:18:28 -07:00
L. David Baron
94eb7fc6c5
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
a05832e834
Implement text-align-last. Bug 536557, r=dbaron
2012-01-12 19:52:21 +02:00
Ed Morley
afde8417a5
Backout 6605cc311ec5 & 9217303c2e5c (bug 536557) for M4 orange
2012-01-12 15:33:00 +00:00
Simon Montagu
ad89de3591
Implement text-align-last. Bug 536557, r=dbaron
2012-01-12 16:29:20 +02:00
L. David Baron
df40c46fa8
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
78d0f2c7ca
Bug 515530 - Remove nsHTMLContainerFrame. r=roc
2011-12-27 21:18:48 +01:00
Nicholas Nethercote
24d2c81ee1
Bug 711908 - Fix a bunch of GCC warnings in layout. r=dbaron.
2011-12-19 19:46:39 -08:00
L. David Baron
1e5ca9ce1a
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
f1feb010c8
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
d65b4d17bd
Make NOISY_VERTICAL_ALIGN compile again. Not part of the build. No review.
2011-10-18 10:44:43 -07:00
Simon Montagu
23fcb4824f
Implement unicode-bidi: -moz-plaintext in layout. Bug 662288, r=roc
2011-10-18 14:51:58 +02:00
Ehsan Akhgari
92064e6d3f
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
461fab9117
Bug 10209 - Part 2: Implement the absolute positioning support for all frames; r=roc
2011-04-29 19:02:33 -04:00
Michael Wu
d2b70213ac
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
056a511714
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
84b8b6bf64
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
cc47ff48ae
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
1baff11dba
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
e915e08a19
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
2a3dbb4205
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
d69c8fdc7b
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
f13392fb42
Bug 614515 - Remove MOZ_SVG conditions. r=roc
2011-05-30 09:34:50 +02:00
Ehsan Akhgari
e66b9024c8
Bug 10209 - Part 2: Implement the absolute positioning support for all frames; r=roc
2011-04-29 19:02:33 -04:00
Chris Jones
d737e982f8
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
91abf226cc
Bug 642381, part 2: Rename LazilyConstructed to Maybe. r=luke
2011-04-28 17:48:51 -05:00
Zack Weinberg
ef90e52c10
Bug 174055, part 6: eliminate pointless nsresult return values.
2011-04-07 21:18:43 -07:00