Commit graph

52 commits

Author SHA1 Message Date
Simon Montagu
9cdb41a6f4 Bug 1131013: when setting the position of inline frames in vertical writing modes with right-to-left direction, subtract the inline start from the container height to get the correct vertical position. r=jfkthame 2015-02-11 01:43:03 -08:00
Xidorn Quan
65f439f542 Bug 1089431 part 3 - Make line breaking inside ruby be triggered at correct time. r=jfkthame
--HG--
extra : rebase_source : 82e740ba6a5192e68f8dfa5b7f3634dc4dc971f7
extra : source : e4932342e22db87e3da1d7847f6a6c984c56db9f
2015-02-11 10:26:56 +11:00
Xidorn Quan
46d0d217a9 Bug 1089431 part 2 - Break between ruby bases according to line-breaking rules. r=jfkthame
--HG--
extra : rebase_source : dae94948a18c860fd5e86b3754c21fd856d5cc47
extra : source : bdcf6f831f5d0241de8b4a0de617902e23b29e8c
2015-02-11 10:26:56 +11:00
L. David Baron
a8c1becff0 Bug 1121738 - Ruby base container frames should not support CSS transforms. r=xidorn
Following bug 1055667 patch 5, nsRubyBaseContainerFrame is the only ruby
frame type with this bug.  It should not support CSS transforms given
the spec wording in
http://dev.w3.org/csswg/css-transforms/#transformable-element
2015-01-15 15:07:50 -08:00
Xidorn Quan
801d76bf4e Bug 1055667 part 3 - Suppress border/padding space on rbc/rtc frames. r=dbaron
--HG--
extra : source : 5025e0967ab9f189bb07af307733fcddcf90eb35
2015-01-15 20:02:11 +11:00
Xidorn Quan
1bf1df7b1e Bug 1055667 part 2 - Remove unnecessary param of SetBSizeFromFontMetrics. r=dbaron
--HG--
extra : source : aa79c8cebf3e2ab0fd4335eaa3c630a43dbe81f2
2015-01-15 20:02:11 +11:00
Xidorn Quan
60d4f4ddf2 Bug 1055667 part 1 - Allow inline direction margin of ruby base/text boxes. r=dbaron
--HG--
extra : source : 55f6a4607daa265757528e7a94f5ba6c9b6d773a
2015-01-15 20:02:11 +11:00
Xidorn Quan
a910edbc6b Bug 1115262 - Fix position of ruby annotation when writing mode is vertical-rl. r=jfkthame
--HG--
extra : source : ec2b2922a741fc5a62bc76c716529eda1b7fe5d0
extra : amend_source : 95bc6d9805f2c0cb9c4d76fcebb5defdd6c69660
2015-01-13 20:04:41 +11:00
Xidorn Quan
7969797ad3 Bug 1055658 part 4 - Revert RubyReflowState. r=dbaron
--HG--
extra : source : 27e60ddbd077439dadd09641ab54fc7eef09c69f
2015-01-13 20:04:41 +11:00
Nigel Babu
053a7d3408 Backed out 4 changesets (bug 1055658) for M5 bustage on a CLOSED TREE
Backed out changeset 3cbd9323c896 (bug 1055658)
Backed out changeset 99e071295c42 (bug 1055658)
Backed out changeset 55119d19e4c5 (bug 1055658)
Backed out changeset e82f640cb53f (bug 1055658)
2015-01-12 10:43:11 +05:30
Xidorn Quan
6ba35e648b Bug 1055658 part 4 - Revert RubyReflowState. r=dbaron
--HG--
extra : source : 27e60ddbd077439dadd09641ab54fc7eef09c69f
2015-01-12 14:31:55 +11:00
Xidorn Quan
8beb2f4821 Bug 1099807 part 4 - Fix line breaking around ruby intra-level whitespaces. r=dholbert
--HG--
extra : source : f6ebe9d9c7c863b18497e3c326f4486c5837a163
2015-01-08 18:28:09 +11:00
Xidorn Quan
a7ba233d21 Bug 1099807 part 3 - Use specific frame type in RubyColumn. r=dholbert
--HG--
extra : source : 0d78d1c0d10d9b5e32c0843a258d29e12f1369c4
2015-01-08 18:28:09 +11:00
Xidorn Quan
5f3951012f Bug 1099807 part 2 - Implement intra-level whitespace pairing. r=dholbert
Line breaking is not handled properly in this patch.
It would be fixed in the part 4.

--HG--
extra : source : 49c457bbcd3a55f7ee65b007d50dd2884c7158af
2015-01-08 18:28:09 +11:00
Xidorn Quan
58fd48c4de Bug 1116631 - Fix isize reservation of ruby base container. r=roc
--HG--
extra : rebase_source : efc67e14e7e6bbc2b6ba736b09780a9e507b122e
extra : source : 86371e41d07bab00c6cd04b236d194fa312b99c4
2015-01-07 12:47:09 +11:00
Xidorn Quan
b71f548568 Bug 1116037 part 12 - Move mLineSize to RubyReflowState. r=dbaron
--HG--
extra : source : 17ad55f13af3e96df7649f968c838bc48b323c68
2014-12-30 11:20:10 +11:00
Xidorn Quan
3013e06e68 Bug 1116037 part 11 - Add RubyReflowState for sharing states between ruby level boxes. r=dbaron
--HG--
extra : source : c4f342ece9c1548053348dbc317d9857cbe790b6
2014-12-30 11:16:30 +11:00
Xidorn Quan
09350f0596 Bug 1116037 part 10 - Remove mColumnCount from nsRubyBaseContainerFrame. r=dbaron
--HG--
extra : source : 36096895ec5437c5f9cf6c97d6085bfeae8654c7
2014-12-30 10:05:54 +11:00
Xidorn Quan
eb1ae2b722 Bug 1116037 part 9 - Move ruby text container arrays to stack. r=dbaron
--HG--
extra : source : 6c5d7212c3f8c355b4667aa46024dfef0710ca8e
2014-12-30 09:56:34 +11:00
Xidorn Quan
62bf8b83b1 Bug 1116037 part 8 - Merge two ruby text container arrays. r=dbaron
--HG--
extra : source : 2b3f8e1951d924c14c94c06a44012837b51a04ad
2014-12-30 09:44:12 +11:00
Xidorn Quan
16b6831601 Bug 1116037 part 7 - Small fixes to ruby line breaking. r=dbaron
--HG--
extra : source : 54ffc8e890c131d88047e4dabc7c2b71be544a5d
2014-12-30 09:24:57 +11:00
Xidorn Quan
a33cdf1a4e Bug 1116037 part 6 - Use a single struct to represent ruby column. r=dbaron
--HG--
extra : source : 7b927cec3f77e194b37de15e3a5b93aa70925d3c
2014-12-29 15:22:19 +11:00
Xidorn Quan
c7868a4f13 Bug 1116037 part 5 - Use unified struct for ruby reflow states. r=dbaron
--HG--
extra : source : 1c4bb2775ab5e26f34fb260daf12afdf86debe30
2014-12-29 15:03:38 +11:00
Xidorn Quan
259342b408 Bug 1116037 part 4 - Remove useless parameters in ruby reflow methods. r=dbaron
--HG--
extra : source : d712ee74e0f33f39b103e88753587559d0a0e9ed
2014-12-29 14:46:24 +11:00
Xidorn Quan
b48d600a85 Bug 1116037 part 3 - Use ruby "column" instead of "pair" to match the spec term. r=dbaron
--HG--
extra : source : a7e31ed3d8d6933631729f014efb546844c84586
2014-12-29 14:30:00 +11:00
Xidorn Quan
1175e8d1f5 Bug 1116037 part 2 - Use frame state bit to mark rtc of span. r=dbaron
--HG--
extra : source : ae8d3b155c8ac5f73992fdb5f23e6be48c884c78
2014-12-29 13:34:07 +11:00
Xidorn Quan
61ff35b52e Bug 1114792 - Rename nsStyleContext::IsDirectlyInsideRuby to IsInlineDescendantOfRuby. r=dbaron
--HG--
extra : rebase_source : c28b41828c7d02ab26803c583bae15a218a5da05
2014-12-31 16:39:43 +11:00
Xidorn Quan
83ed4953c7 Bug 1055665 part 3 - Position ruby annotations and set the line size of them correctly. r=dholbert
--HG--
extra : source : c4dff2a39c852a249a5ff6e929780d898ba956ac
2014-12-09 17:47:26 +11:00
Xidorn Quan
20e60d07f7 Bug 1108429 part 2 - Reserve isize for ruby boxes. r=roc
--HG--
extra : source : 123248ecc3ecfe0b4f9f0f544771cb4cc0f6192c
2014-12-13 11:05:02 +11:00
Xidorn Quan
17c1355146 Bug 1098272 part 6 - Check whether line break is allowed in ruby. r=dbaron
--HG--
extra : rebase_source : e016ab26fa8c22568d2310c17f34c4e1013373a2
extra : source : 7899fcd7c6f9059fdbf7417274f9181ed71d1e50
2014-12-22 16:52:30 +11:00
Xidorn Quan
efc664834d Bug 1098272 part 5 - Move final line break check code in ruby. r=dbaron
--HG--
extra : rebase_source : ebafbe41f95d43329eb6f3e67ed1eb2be0033d68
extra : source : b3e1d5a511d0caa503f5bd8161f549f0d6cd1070
2014-12-22 16:36:55 +11:00
Xidorn Quan
4f414b3c98 Bug 1098272 part 4 - Remove unused parameter of nsRubyBaseContainerFrame::ReflowSpans. r=dbaron
--HG--
extra : rebase_source : ae32a99dbaf9faaad19f54ebba6e8d2e49a955a7
extra : source : 99bbfb3dce962504d1014e632c4b4b7f19a00276
2014-12-22 16:32:14 +11:00
Xidorn Quan
91630ffe11 Bug 1098272 part 3 - Move initial line break check code in ruby. r=dbaron
--HG--
extra : rebase_source : 99b3ea00f9905165f7a9d06842f944a2a35e1521
extra : source : 90b588b9897d0c53f4022c4c942d410942bbe0fe
2014-12-22 16:24:24 +11:00
Xidorn Quan
b9fb386cc4 Bug 1098272 part 2 - Assert that there is no line break inside ruby. r=dbaron
--HG--
extra : rebase_source : 67ea1b202e197babf581a5f207c6b49ffe65a8fd
extra : source : c4dc03f162dc1b5c0e16bdfc3a338637c6ddb92c
2014-12-22 16:16:06 +11:00
Xidorn Quan
c244b776e2 Bug 1052123 - Autohide ruby annotations which are identical to their ruby bases. r=dbaron
--HG--
extra : transplant_source : %B5w%BF%89%879%D6F2%DD%BD%F3%BAG%0D%5E%A4%255%EE
2014-12-15 14:37:15 +11:00
Wes Kocher
1cc829126d Backed out changeset 50d264e4ffa4 (bug 1052123) for android/linux reftest failures 2014-12-16 15:44:15 -08:00
Xidorn Quan
a75dd2b420 Bug 1052123 - Autohide ruby annotations which are identical to their ruby bases. r=dbaron
--HG--
extra : rebase_source : a458af255ceeb6a384b7f879ab5d060052142b76
extra : source : 5f0779afa4060c867bf94d7c798e9eccf0cdb9bd
2014-12-15 14:37:15 +11:00
Xidorn Quan
a09ed65ad4 Bug 1107721 - Link line layouts of ruby annotations to those of their ruby base. r=dbaron
--HG--
extra : source : 40765e88bed63f79923291cff4af4e74d86b1681
extra : histedit_source : 75244b84b9bcbdfe0f06b452cb6de7ab65b11e79
2014-12-10 10:04:15 +11:00
Xidorn Quan
4d85275dd5 Bug 1107721 - Move BeginSpan down for attaching annotation containers to the base container. r=dbaron
--HG--
extra : source : 40b7661585537768ccc5bbac9c99ff70713815c9
extra : histedit_source : d9cd1403ce80c070fc3e3a1d66f9e9114bc0f1e3
2014-12-11 15:13:42 +11: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
Xidorn Quan
3510e424d1 (no bug) Add comment to clarify the reason of using UniquePtr in nsRubyBaseContainerFrame::Reflow. DONTBUILD, comment-only
--HG--
extra : rebase_source : b886f8cb9d0fb104e6a52267213b5afa19de8d08
extra : amend_source : 6c455e8f22ef1ecc58a0f3fe54327d964de85ecb
2014-12-11 11:24:53 +11:00
Ehsan Akhgari
b35004b3cd Bug 1109705 - Fix more bad implicit constructors in layout; r=roc 2014-12-10 17:47:09 -05:00
Xidorn Quan
e464df4013 Bug 1052924 - Implement basic line breaking for ruby. r=dbaron
Known problem:
It would cause infinite loop if there is any line break happens inside
ruby base or annotation, or the width of container is not enough for
the widest pair/span. This might be fixed in bug 1098272.
2014-11-26 15:52:50 +11:00
Xidorn Quan
5f4cd8dd0b Bug 1052924 - Separate reflow code. r=dbaron 2014-11-26 15:52:50 +11:00
Xidorn Quan
43f5510c25 Bug 1052924 - Give rbc & rtc correct position. r=dbaron
Important changes:
  * Use line layout to reflow ruby base container
2014-11-26 15:52:49 +11:00
Xidorn Quan
d25178b0db Bug 1052924 - Resolve some warnings. r=dbaron
Important changes:
  * Change base class of nsRuby{Base,Text}Frame to nsInlineFrame
  * Make ComputeSize of nsRubyFrame and nsRubyBaseContainerFrame behavior like inline frames
2014-11-26 15:52:49 +11:00
Xidorn Quan
c25136319a Bug 1052924 - Rewrite reflow code. r=dbaron
Important changes:
  * Avoid using GetPrefISize on the ruby texts in
    nsRubyBaseContainerFrame::Reflow, since the size it produces might
    not match the size produced by Reflow.  The old code calls that on
    all the ruby texts to determine how big they are, then reflows all
    the ruby bases, and then reflows all the ruby texts.  The new code
    instead processes one pair at a time, and for each pair reflows the
    ruby texts and then the ruby base.
  * Change the base class of nsRubyTextContainerFrame from nsBlockFrame
    to nsContainerFrame, and stop constructing an nsBlockReflowState for
    its reflow.
  * Move the code for reflowing ruby texts from nsRubyTextContainerFrame
    and to nsRubyBaseContainerFrame.
  * Fix the regression that ruby text containers contain span are not
    reflowed properly. It is the regression introduced in patch 0.

Known regression:
  * This patch drops centering ruby base and annotation in pairs. This
    should be fixed in bug 1055676 (ruby-align).
2014-11-26 15:52:49 +11:00
Xidorn Quan
458a202ef8 Bug 1052924 - Use unified enumerators to simplify code. r=dbaron 2014-11-26 15:52:48 +11:00
Xidorn Quan
9b0f833e9c Bug 1052924 - Rewrite pref isize and min isize computation. r=dbaron
Known regression:
This patch changes AppendTextContainer, and put aside text containers
which contain spanning annotations. This changes makes those text
containers not be reflowed by the current code. It will be fixed in
some later patch.
2014-11-26 15:52:48 +11:00
Susanna Bowen
c622b18e05 Bug 1030993 - Fix assertion failure in reftest css-ruby/ruby-whitespace-1.html. r=dbaron
Fixes the assertion failure with text:
"###!!! ASSERTION: Wrong line container
hint: '!aForFrame || (aLineContainer == FindLineContainer(aForFrame) ||
aLineContainer->GetType() == nsGkAtoms::rubyTextContainerFrame ||
(aLineContainer->GetType() == nsGkAtoms::letterFrame &&
aLineContainer->IsFloating()))', file
/home/sgbowen/builds/mozilla-central/layout/generic/nsTextFrame.cpp, line 1259"
which occasionally appears when opening pages with ruby or when running ruby
reftests.

Updates the manifest for ruby reftests to the current expectations (adjust
assertion counts, etc.)
2014-08-15 10:34:20 -07:00