Commit Graph

251 Commits

Author SHA1 Message Date
Xidorn Quan
283943571f Bug 1251995 part 4 - Use struct to pass params for nsTextFrame::DrawText* functions. r=jfkthame
MozReview-Commit-ID: LYshkPDrqYl
2016-03-02 13:27:17 +08:00
Xidorn Quan
15658bb242 Bug 1251995 part 2 - Add gfxTextRun::Range to replace parameter pairs like (offset, length) and (start, end). r=jfkthame
Although this makes some places more complicated, code should generally
be simpler and clearer. It could slightly improve performance on x64 for
functions with more than four parameters, since it makes more data be
passed via registers rather than the stack.

MozReview-Commit-ID: D0GM2Jyrr6W
2016-02-29 16:50:17 +08:00
Mats Palmgren
bee17a952f Bug 1246405 - Declare mTextRun earlier to avoid alignment spill on 64-bit architectures. r=roc 2016-02-08 17:35:01 +01:00
Birunthan Mohanathas
bfee0fb40c Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-02-02 17:36:30 +02:00
Phil Ringnalda
d871b9515f Back out 7 changesets (bug 1235261) for cpptest failures in TestTArray
CLOSED TREE

Backed out changeset d66c3f19a210 (bug 1235261)
Backed out changeset 467d945426bb (bug 1235261)
Backed out changeset 32b61df13142 (bug 1235261)
Backed out changeset c50bb8ed4196 (bug 1235261)
Backed out changeset 0ff0fa6fe81f (bug 1235261)
Backed out changeset df70e89669da (bug 1235261)
Backed out changeset 064969357fc9 (bug 1235261)
2016-01-31 10:10:57 -08:00
Birunthan Mohanathas
245cd6a02f Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-01-31 17:12:12 +02:00
Xidorn Quan
4dccb52f19 Bug 1230034 part 3 - Move some frame property declaration around. r=dbaron 2016-01-28 14:23:59 +11:00
Nicholas Nethercote
7fabd8754f Bug 1231550 - Use DrawTarget instead of gfxContext and/or nsRenderingContext in many places in font/text code. r=jfkthame.
AutoTextRun now only needs a DrawTarget instead of an nsRenderingContext, and
similar nsRenderingContext/gfxContext-to-DrawTarget replacements can be
propagated a long way up the call graph. This patch replaces 93 occurrences of
nsRenderingContext and 135 occurrences of gfxContext with DrawTarget; that's
13% of them.

The patch is mostly plumbing changes. A couple of not-entirely-plumbing
changes:

- It adds a comment about the null check in
  gfxGlyphExtents::GetTightGlyphExtentsAppUnits().

- A couple of functions simply had an unused gfxContext or nsRenderingContext
  parameter removed, e.g. SetLineBreaks().
2015-12-15 13:56:41 -08:00
Xidorn Quan
79d8370f97 Bug 1229739 - Use the color of shadow if available for drawing emphasis marks in shadow. r=jfkthame 2015-12-04 16:28:34 +11:00
Robert O'Callahan
f31d503c54 Bug 1221043. Revert to including trailing whitespace for accessibility APIs. r=marcoz,mats 2015-12-01 02:21:25 +13:00
Xidorn Quan
713c472a8d Bug 1040668 part 10 - Implement emphasis mark rendering. r=jfkthame 2015-11-28 11:56:33 +11:00
Nicholas Nethercote
97e025e8d2 Bug 1223215 (part 1) - Convert some gfx{Point,Size} to gfx::{Point,Size}. r=roc.
This lets us remove some Thebes{Point,Size}() and To{Point,Size}() calls.
2015-11-08 20:19:00 -08:00
Robert O'Callahan
a6cc83a9c7 Bug 264412. Refactor nsIFrame::GetRenderedText API to be more sane. r=mats,marcoz
The test changes here are to adjust for the fact that
nsTextFrame::GetRenderedText can now trim whitespace from the end of lines
that end in a hard line break.
2015-10-30 19:23:10 +13:00
Matt Woodrow
2dfc6a4660 Bug 1216851 - Allow flattening of opacity when it contains text. r=roc 2015-10-23 11:22:45 +13:00
Carsten "Tomcat" Book
ec720929e1 Backed out changeset 0e8e25c04938 (bug 1216851) for reftest failures 2015-10-29 13:52:29 +01:00
Matt Woodrow
a3cb76b5b7 Bug 1216851 - Allow flattening of opacity when it contains text. r=roc 2015-10-23 11:22:45 +13:00
Robert O'Callahan
0b818e072e Revert incorrectly committed changes ab657569f554 and a396f4262479 2015-10-24 22:38:22 +13:00
Robert O'Callahan
5919848f93 Bug 264412. Refactor nsIFrame::GetRenderedText API to be more sane. r=mats,marcoz
The test changes here are to adjust for the fact that
nsTextFrame::GetRenderedText can now trim whitespace from the end of lines
that end in a hard line break.
2015-10-24 22:27:29 +13:00
Jonathan Kew
01be605280 Bug 1193519 pt 4 - Reverse the direction of text-decoration offsets in sideways-lr mode. r=dholbert 2015-09-24 10:23:34 +01:00
Masayuki Nakano
0dcfc3787a Bug 299603 part.4 Some global methods in nsTextFrame.cpp should be members of nsTextFrame class r=roc 2015-08-19 16:37:39 +09:00
Xidorn Quan
8016bfddd7 Bug 1149009 - Suppress line break inside text frame if it is directly contained by ruby content box. r=dbaron 2015-05-04 09:52:53 +12:00
Jonathan Kew
f0061d09b7 Bug 1157951 patch 1 - Rename fields and variables in nsCharClipDisplayItem etc using VisIStart/End instead of left/right. r=roc 2015-04-29 08:18:53 +01:00
Ehsan Akhgari
ea41d8de48 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -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 MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
L. David Baron
4757323b8f Bug 1140486 patch 1 - Pass block frame instead of block reflow state to nsTextFrame::RecomputeOverflow. r=jfkthame
This allows calling it from UpdateOverflow in patch 2.
2015-03-07 12:27:36 -08:00
Mats Palmgren
4fbfa7bcb1 Bug 1134531 - Remove nsTextFrame::DidSetStyleContext which only contained a (now obsolete) wallpaper. r=heycam 2015-02-24 18:35:30 +00:00
Jonathan Watt
b532b4c22e Bug 1136486 - Simplify the SVG text rendering callbacks by getting rid of NotifyBeforeSVGGlyphPainted and NotifyAfterSVGGlyphPainted. r=heycam 2015-02-17 22:01:54 +00:00
Jonathan Watt
77e18f01bd Bug 1135913, part 4 - Unify SVGTextFrame's NotifyBeforeSelectionDecorationLine and NotifySelectionDecorationLinePathEmitted callbacks. r=heycam 2015-02-04 13:51:22 +00:00
Jonathan Watt
39a2f4feb2 Bug 1135913, part 3 - Unify SVGTextFrame's NotifyBeforeDecorationLine and NotifyDecorationLinePathEmitted callbacks. r=heycam 2015-02-03 20:00:18 +00:00
Jonathan Kew
0e6573dd2a Bug 1128190 - Always use a mask to render shadows for color glyphs, regardless of blur radius. r=roc 2015-02-02 09:19:28 +00:00
Jonathan Watt
0d0ce5c404 Bug 1127114, part 2 - Unify SVGTextFrame's NotifyBeforeSelectionBackground and NotifySelectionBackgroundPathEmitted callbacks. r=heycam 2015-01-27 16:32:24 +00:00
Robert O'Callahan
60ef9c392a Bug 1099977. Part 2: Make gfxFont::Measure return an empty bounding-box when all glyphs are invisible. r=jfkthame 2014-11-18 23:23:45 +13:00
Xidorn Quan
a63ab53715 Bug 1099807 part 1 - Add common superclass for ruby base and ruby text. r=dholbert 2015-01-08 18:28:09 +11:00
Jonathan Kew
b15e11bc92 Bug 1096260 - Convert flags parameter of nsIFrame::ComputeSize from uint32_t to a typed enum, and update callers accordingly. r=dholbert 2014-11-11 11:02:41 +00:00
Xidorn Quan
9cf6197f83 Bug 1063857 - Implement new justification algorithm. r=roc,masayuki 2014-11-10 12:25:17 +11: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 Kew
1ec098ba6b bug 1066043 - split gfxFont.cpp and .h into more manageably-sized pieces. r=jdaggett 2014-09-16 10:58:12 +01:00
Ehsan Akhgari
8bb87f8a27 Bug 1060985 - Fix more bad implicit constructors in layout; r=roc 2014-08-31 23:36:37 -04:00
Jonathan Kew
670778f5d9 bug 1046950 pt 2 - convert ComputeSize to use logical-coordinate parameters. r=smontagu 2014-08-24 15:34:44 +01:00
Robert O'Callahan
90936063c3 Bug 1048752. Part 9: Remove nsCaret.h from nsDisplayList.h. r=tn
I got tired of slow build turnarounds every time I modified nsCaret.h.
2014-08-06 17:19:25 +12:00
Jonathan Kew
fe8090d7de bug 1031241 pt 3 - Also rename Intrinsic{Width,Height} to Intrinsic{I,B}Size. r=smontagu 2014-07-24 18:03:26 +01:00
Jonathan Kew
711a2298a4 bug 1031241 pt 2 - More renaming, e.g. where {Min,Pref}Width occurs within longer type and function names. r=smontagu 2014-07-24 18:03:25 +01:00
Jonathan Kew
c7e5b8d9dc bug 1031241 pt 1 - Rename Get{Min,Pref}Width to Get{Min,Pref}ISize throughout layout. r=dbaron,smontagu 2014-07-24 18:03:25 +01:00
Susanna Bowen
e432267ea6 Bug 727125 - Update overflow areas for text frames on text-decoration change to ensure text-decoration on hover is visible. r=dbaron 2014-06-17 10:32:00 -04:00
Simon Montagu
614fa9614f 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
1ec236110b 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
103fbd6790 Bug 727125 - Update overflow areas for text frames on text-decoration change to ensure text-decoration on hover is visible. r=dbaron 2014-06-16 11:58:29 -07:00
Robert O'Callahan
c6c9b51a7f Bug 1014252. Optimize clearing of textruns via RemoveInFlows. r=matspal
We're keeping the core idea that, before we remove the frames-to-be-destroyed
from the continuation chain, their textruns need to be disconnected/destroyed.
However, nsContinuingTextFrame::DestroyFrom tries to optimize when the
destroying frames that aren't mentioned in the userdata for the textrun, and
certain other conditions are met; we need a similar optimization here. It's
simpler here because the other conditions are definitely met, since all the
text for the frames being deleted has already been consumed and reflowed by
previous frames.

We don't need the TEXT_STYLE_MATCHES_PREV_CONTINUATION state bit anymore
because nsContinuingTextFrame::DestroyFrom will never see any textruns when
called via RemoveEmptyInFlows.
2014-05-28 15:39:25 +12:00
Mats Palmgren
bebbaf8351 Bug 508665 - part 5, Make nsIFrame::Init require a nsContainerFrame* for the parent frame param. r=roc 2014-05-24 22:20:40 +00:00
Mats Palmgren
84ce46d68c 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