Commit Graph

662 Commits

Author SHA1 Message Date
Xidorn Quan
6ed01ce159 Bug 1114792 - Rename nsStyleContext::IsDirectlyInsideRuby to IsInlineDescendantOfRuby. r=dbaron 2014-12-31 16:39:43 +11:00
Xidorn Quan
e5e1274201 Bug 1103832 - Initialize mLineIsEmpty and mLineAtStart of ruby annotations to false. r=dbaron 2014-12-10 15:57:14 +11:00
Xidorn Quan
10dbd31052 Bug 1055665 part 3 - Position ruby annotations and set the line size of them correctly. r=dholbert 2014-12-09 17:47:26 +11:00
Xidorn Quan
760bd8410a Bug 1055665 part 2 - Make nsLineLayout::VerticalAlignLine not rely on line box. r=roc 2014-12-09 17:47:26 +11:00
Xidorn Quan
a611c6b3f9 Bug 1108429 part 8 - Implement default ruby alignment. r=roc 2014-12-15 10:33:59 +11:00
Xidorn Quan
dec478ae4a Bug 1108429 part 7 - Modify jusitication computation to take ruby into account. r=roc 2014-12-15 10:19:38 +11:00
Xidorn Quan
d9e75049f5 Bug 1108429 part 6 - Record inner justification opportunities for each frame. r=roc 2014-12-15 09:57:36 +11:00
Xidorn Quan
d29aeb508d Bug 1108429 part 5 - Enable justification computation when there is ruby. r=roc 2014-12-13 22:18:16 +11:00
Xidorn Quan
7ec54e8447 Bug 1108429 part 4 - Handle isize reservation in sync annotation rect. r=roc 2014-12-13 16:13:12 +11:00
Xidorn Quan
d66c397776 Bug 1108429 part 3 - Add flag to indicate the existance of ruby. r=roc 2014-12-13 11:48:30 +11:00
Xidorn Quan
08ab6bf9b0 Bug 1109937 - Change flags in PerFrameData to use bit fields. r=roc 2014-12-23 10:22:26 +11:00
Xidorn Quan
145528be65 Bug 1098272 part 1 - Suppress line breaks inside ruby boxes. r=dbaron,roc 2014-12-22 15:17:55 +11:00
Xidorn Quan
4fffd2815c Bug 1039009 - Handle float in the base line layout. r=dbaron 2014-12-10 10:49:13 +11:00
Xidorn Quan
8c00730899 Bug 1081770 - Move ruby annotation frames when text-align: justify is applied to ruby bases. r=dbaron 2014-12-09 17:43:24 +11:00
Xidorn Quan
e8c311d112 Bug 1107721 - Add method for attaching frame data to base line layout. r=dbaron 2014-12-10 09:49:45 +11:00
Xidorn Quan
81badd0b54 Bug 1107721 - Create PFD for root span. r=dbaron 2014-12-10 09:40:14 +11:00
Xidorn Quan
ca24b9d4a1 Bug 1107721 - Handle unlinking pfds linked to other levels. r=dbaron 2014-12-09 09:30:23 +11:00
Xidorn Quan
e8642d5904 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.
2014-12-09 09:14:49 +11:00
Xidorn Quan
3e1b50d2fd Bug 1107721 - Add pointers to PerFrameData of different level. r=dbaron 2014-12-05 15:57:12 -08:00
Xidorn Quan
d9596d8c75 Bug 1107721 - Allocate PerFrameData & PerSpanData from the base line layout. r=dbaron 2014-12-05 15:31:42 -08:00
Xidorn Quan
6737561b22 Bug 1107721 - Add pointer to the base line layout in nsLineLayout. r=dbaron 2014-12-05 15:05:51 -08:00
Simon Montagu
69888c32f2 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
b0f0fcc4a3 Bug 1096152 - Use frame instead of content to track break position. r=dbaron 2014-11-14 16:41:14 +11:00
Jonathan Kew
121113906b 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
e7e5f2df11 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
f761e31283 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
eef17b9e40 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
9cf6197f83 Bug 1063857 - Implement new justification algorithm. r=roc,masayuki 2014-11-10 12:25:17 +11:00
Jonathan Watt
5c8ecf10a2 No bug - Get rid of some unnecessary nsRenderingContext.h includes and nsRenderingContext forward declarations. 2014-11-06 22:07:35 +00:00
Carsten "Tomcat" Book
f74c7bbb38 Backed out changeset 53d51e7fbb9e (bug 1063857) for Android Reftest Failures 2014-11-04 10:59:46 +01:00
Xidorn Quan
08d8f0ff5d Bug 1063857 - Implement new justification algorithm. r=roc,masayuki 2014-11-02 15:07:00 +01:00
Jonathan Watt
a459e03874 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
05b59bc989 Bug 1088625, part 1 - Add lots of missing nsFontMetrics.h and gfxTextRun.h includes 2014-10-24 16:28:14 +01:00
Jonathan Kew
b6f62fec7e 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
6c0342d043 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
00fa156476 Bug 1079139: make nsFlowAreaRect.mRect a LogicalRect. r=jfkthame 2014-10-21 15:16:13 -07:00
Simon Montagu
e7034c290f 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
729141b175 Bug 1062963 patch 1: Logical coordinates in nsLineLayout:ReflowFrame and CanPlaceFrame. r=jfkthame 2014-10-21 15:16:11 -07:00
Mats Palmgren
fa96467143 Bug 1085701 - Report the allocation size to the OOM abort. r=roc 2014-10-21 15:42:24 +00:00
Phil Ringnalda
32261f5095 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
5d321528ec Bug 1079139: make nsFlowAreaRect.mRect a LogicalRect. r=jfkthame 2014-10-19 12:32:17 -07:00
Simon Montagu
3c9c6d4a60 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
6add99b91a Bug 1062963 patch 1: Logical coordinates in nsLineLayout:ReflowFrame and CanPlaceFrame. r=jfkthame 2014-10-19 12:32:16 -07:00
Jonathan Kew
6f650aa1c6 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
0f8118aec5 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
26d6d0b4d3 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
3c4a808a0e 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
0d38e30bcc Bug 913586 (Part 7) - Update Maybe users in layout. r=dbaron 2014-08-13 15:42:15 -07:00
Simon Montagu
659c93475e 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
0132cc9646 Bug 789096 patch 9: use logical coordinates in nsHTMLReflowState available size. r=jfkthame 2014-07-24 01:28:46 -07:00