Граф коммитов

269 Коммитов

Автор SHA1 Сообщение Дата
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 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 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 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 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 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 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 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 e254b3d884 Bug 1052924 - Add assertion and comments pointing out that ruby base container frames do not have an mBlockRS, but that's OK since they are never the containing block for floats. r=dbaron 2014-11-26 15:52:49 +11: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 1bdefeee1e Bug 1088025 - part 1 - Ensure nsBlockReflowState has a constrained mContainerWidth before we reflow lines into the container. r=dbaron 2014-11-13 08:58:03 +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
Xidorn Quan a85f3a113d Bug 1063857 - Implement new justification algorithm. r=roc,masayuki 2014-11-10 12:25:17 +11: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
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 5c79483958 Bug 1062963 patch 1: Logical coordinates in nsLineLayout:ReflowFrame and CanPlaceFrame. r=jfkthame 2014-10-21 15:16:11 -07: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 ec5af204d9 Bug 1062963 patch 1: Logical coordinates in nsLineLayout:ReflowFrame and CanPlaceFrame. r=jfkthame 2014-10-19 12:32:16 -07:00
Ehsan Akhgari 60360fc645 Bug 1060985 - Fix more bad implicit constructors in layout; r=roc 2014-08-31 23:36:37 -04: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
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 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 6703ffe99e Bug 1008917 - part 11, make nsBlockFrame::ReflowDirtyLines() and nsLineLayout::ReflowFrame() return types 'void'. r=roc 2014-05-13 00:47:53 +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
Simon Montagu f8a68ec80e Make nsLineBox.mBounds a LogicalRect. Bug 789096, r=jfkthame 2014-04-16 01:03:28 -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
Benoit Jacob 562cb87289 Bug 959380 - 1/5 - Make gfxBreakPriority a typed enum - r=jrmuizel 2014-01-23 13:26:39 -05: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
Cameron McCormack d3f6368233 Bug 864289 - Rename nsLineLayout::GetLineContainer(Frame|RS) to LineContainer\1. r=dholbert 2013-04-23 11:45:26 +10: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
Chris Peterson 63e242521e Bug 829344 - Part 4: Fix gcc -Wlogical-op warnings from PRBool/bool conversion. r=ehsan 2013-01-10 17:56:51 -08: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
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
Aryeh Gregor d0ad5a7d0c Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
Gervase Markham 82ff7027aa Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01: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 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
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
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
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
L. David Baron dd079acd74 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
Boris Zbarsky 4e33893936 Bug 580167 part 3. Make nsLineLayout call ReflowText as needed. r=dbaron 2010-08-25 14:54:47 -04:00
L. David Baron 0d14c6f6b1 In a constrained height situation, we need to reflow anything with floats. (Bug 563584, patch 25) Fixes assertion on layout/generic/crashtests/408883-1.html . r=roc 2010-08-05 21:59:20 -07:00
L. David Baron 729eb4ac32 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 c347059add 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 132bf4d93d Bug 523468. Make sure we reflow the next line when content is pushed or pulled from an inline frame. r=dbaron 2009-10-27 14:43:56 +13:00
Robert O'Callahan c3e1864c33 Backed out changeset 9f5177a978ac 2009-10-27 21:46:18 +13:00
Robert O'Callahan 182a9bcb4b Bug 523468. Force next line to be reflowed whenever we push or pull children from an inline frame. r=dbaron 2009-10-27 14:43:56 +13:00
fantasai 1f4c53a304 Bug 492627 - Remove Placeholder Continuations [Part V: Reimplement float splitting without placeholder continuations] r=roc 2009-08-31 11:25:36 -07:00
fantasai b2ea1d69bb 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
L. David Baron af28c93900 Make the quirks mode line height algorithm's check for bullets check whether there's a bullet rather than checking whether it's an HTML LI. (Bug 179596) r=roc 2009-08-10 19:48:42 -07:00
L. David Baron 4c34a1aff5 Merge InitFloat into AddFloat (on nsLineLayout and nsBlockReflowState). (Bug 25888) r+sr=roc 2009-05-20 07:21:34 -04:00
Arpad Borsos 37bfad5344 Bug 492937 - kill nsLineLayout::mPlacedFloats and related code; r+sr=roc 2009-05-14 11:31:35 +02:00
Arpad Borsos 6a3e4f01b4 Bug 492510 - Optimize nsLineLayout for memory usage; r+sr=roc 2009-05-12 10:53:06 +02:00
Jonathan Kew 68b13a1a71 Bug 475968. Eliminate NS_FRAME_OUTSIDE_CHILDREN flag, store small overflow areas cheaply within the frame. r+sr=roc 2009-04-06 12:31:50 +12:00
Masayuki Nakano 0066bb8330 Bug 338209 Make spellchecker use thicker wavy underlines instead of dotted underlines r+sr=roc 2009-04-03 16:26:28 +09:00
L. David Baron efb6f0d272 Remove PerFrameData::mFrameType, since it's write-only. (Bug 478899) r+sr=bzbarsky 2009-02-19 13:55:48 -08:00
L. David Baron c936720f0a Back out all 8 changesets that I just landed (bugs 477959, 477961, 322475, 478899, 475215, 478156) again, because Talos Try server builds lie about which changesets they're testing. 2009-02-19 09:06:18 -08:00
L. David Baron d7971aa24b Remove PerFrameData::mFrameType, since it's write-only. (Bug 478899) r+sr=bzbarsky 2009-02-19 07:29:28 -08:00
L. David Baron 3d090560b0 Revert (back out) the previous 11 changesets (bugs 477959, 477961, 477963, 477962, 322475, 478899, 475215, 478156), due to Mac talos orange with (as usual) no useful diagnostic. 2009-02-18 18:59:47 -08:00
L. David Baron d071d4e2af Remove PerFrameData::mFrameType, since it's write-only. (Bug 478899) r+sr=bzbarsky 2009-02-18 17:13:25 -08:00
Robert O'Callahan 1523a6fb34 Bug 429968. Handle situations where first-letter text detects first-letter style should not be applied, by creating a zero-length 'first letter'. r+sr=dbaron
--HG--
extra : rebase_source : 650611aec3adb1498dc5d8d6d38212ddf09e32fc
2009-01-05 13:36:56 +13:00
L. David Baron ad5d856ae6 Rename flags and methods from space manager to float manager. (Bug 191448) r+sr=roc 2009-01-04 19:39:54 -05:00
Robert O'Callahan ed30595e99 Bug 431341. Include floating first-letter text when we build textruns for a paragraph, because we want nsLineBreaker to see the text for capitalization analysis. Make sure that textrun construction for floating first-letter text uses the block as its scope. And make sure we reconstruct textruns after determining the first-letter length, so that ligatures are broken as necessary. r=smontagu 2008-07-29 22:11:26 -07:00
Simon Montagu 0185f285af Support for word-wrap CSS property. Bug 99457, r+sr=dbaron, roc 2008-07-24 10:16:18 +03:00
Mats Palmgren bd4639345b Take left border+padding into account when calculating distance from block edge for TAB. b=430926 r+sr=roc 2008-06-20 06:39:56 +02:00
Robert O'Callahan 1b6c71eabf Bug 439004. Check whether there's logically empty content already placed on the line instead of just checking whether the line has advanced horizontally. r+sr=dbaron. 2008-06-14 20:28:07 +12:00
Robert O'Callahan 4188aa979e Allow floats to be placed on the current line even after nonzero-width inline content has been placed. Fixes an Acid3 layout bug. r+sr=dbaron 2008-06-11 11:53:22 +12:00
masayuki@d-toybox.com 6e2677d193 Bug 392785 overflowed underline sometimes is not repainted at scrolling r+sr=roc b1.9=dbaron 2008-02-16 07:31:27 -08:00
roc+@cs.cmu.edu 05225fa949 Bug 400813. Text with font-size:0 should not make a line be treated as empty. r+sr=dbaron 2008-02-14 01:08:33 -08:00
roc+@cs.cmu.edu abee6630e1 backing out bug 400813 again due to reftest failure... 2008-02-11 18:48:17 -08:00
roc+@cs.cmu.edu 5c233a1d82 Bug 400813. Lines with font-size:0 content should not be treated as empty. r+sr=dbaron 2008-02-11 17:42:14 -08:00
roc+@cs.cmu.edu 0b989b691c Backing out 400813, sigh 2008-01-29 23:35:05 -08:00
roc+@cs.cmu.edu 4786a8d1cb Bug 400813. Lines with actual content that just happens to be zero-width should be treated as non-empty. r+sr=dbaron 2008-01-29 23:12:26 -08:00
dbaron@dbaron.org 5553e72c54 Remove unused height output from nsLineLayout::EndSpan. b=407086 r+sr=roc a=dsicore 2007-12-12 13:51:18 -08:00
roc+@cs.cmu.edu 095643fe53 Bug 407111. Correctly set whether a break opportunity after non-text content fits. r+sr=dbaron,a=schrep 2007-12-07 01:17:19 -08:00
dmose@mozilla.org 4ef13d4907 Backing out fix for bug 392785 as per roc + mconnor. 2007-12-04 15:32:08 -08:00
masayuki@d-toybox.com 7fc09046f2 Bug 392785 overflowed underline sometimes is not repainted at scrolling r+sr=roc, b1.9=dbaron 2007-12-02 22:51:57 -08:00
roc+@cs.cmu.edu e1da1696a2 Bug 393096. Allow an element containing breakable whitespace to introduce a break opportunity no matter what the context. Also cleans up some trimming stuff and adds comprehensive whitespace breaking and trimming reftests. r+sr=dbaron 2007-10-20 00:30:26 -07:00
tglek@mozilla.com 8cf3fb1c90 Clean up prbool misuse in layout. bug 398312, r+sr+a=dbaron 2007-10-09 17:00:05 -07:00
roc+@cs.cmu.edu 18ec94e683 Bug 392829. Clean up nsLineLayout code that's not used (or at least used differently). r+sr+a=dbaron 2007-10-01 19:36:26 -07:00
roc+@cs.cmu.edu a0ce273d02 Bug 96041. Compute precise glyph extents for high-quality text, and when requested. r=vlad,r+sr=dbaron 2007-09-23 19:19:14 -07:00
roc+@cs.cmu.edu f5ea55f8b4 Backing out due to test bustage 2007-09-22 06:28:16 -07:00
roc+@cs.cmu.edu f2b87e6c9a Bug 96041. Compute true glyph bounding metrics. r=vlad,dbaron,sr=dbaron 2007-09-22 05:43:52 -07:00