Commit Graph

47 Commits

Author SHA1 Message Date
Cameron McCormack
54483ba170 Bug 1330236 - Compute SVG getNumberOfChars() quicker in simple cases. r=longsonr+218550
MozReview-Commit-ID: FgwR9dxTefx
2017-01-17 13:45:43 +08:00
Jeremy Chen
b21b678070 Bug 1316482 - use the refactored TransformText as a template function for both char16_t and uint8_t text. r=xidorn
With this patch, we shall only maintain one version of the TransformText logic.

MozReview-Commit-ID: JAIksFVqvqf
2017-01-12 09:27:02 +08:00
Jeremy Chen
a259ddec22 Bug 1316482 - remove collapsible white spaces according to the White Space Processing Rules. r=jfkthame
This patch is an implementation of CSS Text 3 - 4.1.1 Phase 1 Step 1.

According to the specification, if white space characters are considered
collapsible, they should be removed before applying segment break transformation
rules during the text transform.

In this patch, a refactoring of text transformation logic has been made. Every
run of consecutive document white space characters (spaces/tabs/segment breaks)
is collected first. Then, we could apply the white space processing rules
accordingly.

MozReview-Commit-ID: 1JStjFk5TBs
2017-01-12 09:27:01 +08:00
Wes Kocher
c79bfe3886 Backed out 4 changesets (bug 1316482) for frequent reftest failures on win7vm a=backout
Backed out changeset ad208e73ab6c (bug 1316482)
Backed out changeset 2a28dc0a75d3 (bug 1316482)
Backed out changeset b54126cc63d4 (bug 1316482)
Backed out changeset ebd0c6c8b783 (bug 1316482)

MozReview-Commit-ID: IFpLJUjj8qH
2017-01-10 18:11:10 -08:00
Jeremy Chen
a8834ca657 Bug 1316482 - use the refactored TransformText as a template function for both char16_t and uint8_t text. r=xidorn
With this patch, we shall only maintain one version of the TransformText logic.

MozReview-Commit-ID: JAIksFVqvqf
2017-01-10 00:02:03 +08:00
Jeremy Chen
d14f84c71b Bug 1316482 - remove collapsible white spaces according to the White Space Processing Rules. r=jfkthame
This patch is an implementation of CSS Text 3 - 4.1.1 Phase 1 Step 1.

According to the specification, if white space characters are considered
collapsible, they should be removed before applying segment break transformation
rules during the text transform.

In this patch, a refactoring of text transformation logic has been made. Every
run of consecutive document white space characters (spaces/tabs/segment breaks)
is collected first. Then, we could apply the white space processing rules
accordingly.

MozReview-Commit-ID: 1JStjFk5TBs
2017-01-10 00:02:02 +08:00
Jeremy Chen
ed651d5973 (no bug) minor indentation cleanup in nsTextFrameUtils.h. whitespace-only, no review, DONTBUILD
MozReview-Commit-ID: FIN0Tif6JZQ
2016-11-28 20:45:37 +08:00
Jeremy Chen
3505c4f3b2 (no bug) fix comment for nsTextFrameUtils::TransformText. comment-only, no review, DONTBUILD
MozReview-Commit-ID: Cu7zjjvOwQE
2016-11-28 20:45:37 +08:00
Emilio Cobos Álvarez
06042d69fb Bug 1288938: layout: Move the GlyphObserver to the text run instead of the frame. r=jfkthame
MozReview-Commit-ID: KphTCkcZeid
2016-08-03 10:53:37 -07:00
Jonathan Kew
80dba63482 Bug 1072106 - Be more careful about checking for spaces that should not have justification applied. r=roc 2014-09-24 18:10:56 +01:00
Cameron McCormack
eef6e38fde Bug 1019555 - Treat newlines and tabs as space characters in SVG xml:space="preserve" text. r=roc 2014-06-05 13:25:15 +10:00
James Kitchener
5e0ef2bc14 Bug 953385 - Set math script flag on textruns belonging to MathML tokens. r=roc 2014-01-30 10:59:16 -05:00
Cameron McCormack
9d7284d20b Bug 960312 - Rename TEXT_IS_IN_SINGLE_CHAR_MI to NS_FRAME_IS_IN_SINGLE_CHAR_MI to make it clear it's global. r=roc 2014-01-16 16:10:09 +11:00
Jonathan Kew
2abc2853d1 bug 955957 - pt 1 - reimplement gfxSkipChars and gfxSkipCharsIterator to perform better with huge text runs. r=roc 2014-01-10 09:42:05 +00:00
Carsten "Tomcat" Book
45a6807f8b Backed out changeset 4b54755de2a7 (bug 955957) for Build Bustage on a CLOSED TREE 2014-01-10 09:30:28 +01:00
Jonathan Kew
14f1d33c02 bug 955957 - pt 1 - reimplement gfxSkipChars and gfxSkipCharsIterator to perform better with huge text runs. r=roc 2014-01-10 07:48:01 +00:00
Ehsan Akhgari
68bfe70f09 Bug 927728 - Part 1: Replace PRUnichar with char16_t; r=roc
This patch was automatically generated by the following script:

#!/bin/bash
# Command to convert PRUnichar to char16_t

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*modules/libmar*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name prtypes.h \
       ! -name Char16.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 PRUnichar char16_t
2014-01-04 10:02:17 -05:00
James Kitchener
e1cec479dd Bug 114365 - Textrun transformations and TextFrame changes for mathvariant. r=roc 2013-12-02 11:49:27 -05:00
Simon Montagu
45f665030b Add new bidi control characters defined in Unicode 6.3. Bug 922530, r=jfkthame 2013-10-02 16:07:02 +03:00
Ehsan Akhgari
06d49ffd4d Bug 907883 - Minimize #includes in layout/generic; r=roc 2013-08-22 14:32:52 -04:00
Cameron McCormack
db6c9df650 Bug 655877 - Part 23a: Add white-space:-moz-pre-discard-newlines value with white space collapsing behavior like SVG's xml:space="preserve". r=roc,dbaron 2012-09-07 15:42:19 +10:00
Ehsan Akhgari
243c878d26 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
Gervase Markham
cb6a072c2a Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
L. David Baron
dea3236515 Build font data structure by walking the necessary text. (Bug 706193, patch 3) r=roc
Compute the amount of text in the scope of an nsFontInflationData
object.  This walks the text that's inside of the block formatting
context at which this object is rooted, excluding the text that's inside
any nested BFC.  Using the amount of text, the font sizes of the text,
and the line threshold preference, we compute whether to enable font
size inflation within that block formatting context.
2012-04-16 15:32:12 -07:00
Jonathan Kew
6163793bb9 bug 703100 - pt 1 - eliminate gfxTextRunWordCache and gfxTextRunCache. r=roc 2011-12-06 12:39:18 +00:00
Ehsan Akhgari
478ad1a412 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
0fe7772ece Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones 2011-09-28 23:19:26 -07:00
Robert O'Callahan
2b6c530588 Bug 430332. Defer nsTransformingTextRun::RebuildTextRun until the linebreaker has completely set up the break and capitalization data on the transformed text run. r=smontagu 2009-01-09 13:23:28 +13:00
Jonathan Kew
e8716ebdce Bug 470418 - Leak nsStyleContext with RTL, text-transform; r,sr=roc 2009-01-01 16:34:13 +03:30
Ehsan Akhgari
cbb97dccb6 Bug 441782 - bidi.numerals == 4 does not switch numeric shapes in content; r,sr=roc 2008-12-18 23:42:53 +03:30
Robert O'Callahan
c8d8200486 Backed out changeset dcd1ad7a918e 2008-12-18 16:05:16 +13:00
Robert O'Callahan
8d2fc31070 Bug 430332. Defer nsTransformingTextRun::RebuildTextRun until the linebreaker has completely set up the break and capitalization data on the transformed text run. r=smontagu 2008-12-18 14:13:23 +13:00
Robert O'Callahan
19d7a2a093 Backed out changeset 0cb24a4bcd9b 2008-12-13 00:09:56 +13:00
Robert O'Callahan
223e98c4b1 Bug 430332. Defer nsTransformingTextRun::RebuildTextRun until the linebreaker has completely set up the break and capitalization data on the transformed text run. r=smontagu 2008-12-12 21:37:59 +13:00
Robert O'Callahan
a4e0828d4b Bug 230555. Support white-space:pre-line. r+sr=dbaron 2008-08-12 20:31:56 +12:00
fd863397a0 Bug 403426. We should clear whitespace status when we reset the linebreaker. If a final break opportunity exists we should save it and forward it to the line layout. Relanding with a fix so hopefully we won't crash Tp this time. r=smontagu 2007-12-03 00:22:07 -08:00
6703d78120 Backing out bug 403426 2007-11-30 12:52:24 -08:00
7f47758370 Bug 403426. Clear break-after-whitespace flags when we reset the linebreaker. Also rescue a trailing break opportunity when we reset the line breaker and notify the line layout that the opportunity exists. r=smontagu 2007-11-30 12:03:33 -08:00
7f4663bf42 Prevent duplicate entries in the line-break array. Bug 404204, b+r+sr=roc 2007-11-26 00:27:06 -08:00
9dd7f23693 Bug 389707. Rework text-transform:capitalize by putting logic to decide what to capitalize into nsLineBreaker. r=smontagu 2007-11-11 17:51:31 -08:00
ca0f7d6711 Bug 385423. Refactor textrun cache so that all textrun clients use a single global word-based cache. Responsibility for stripping out problematic characters (e.g. newlines) is given to the word cache. r=vlad,smontagu 2007-07-03 20:39:01 -07:00
c712c410a5 Bug 386548. Remove nsTextTransformer. r+sr=mats 2007-07-02 16:36:59 -07:00
8831ef42fa Landing textframe updates: Use word-based textrun cache; rewritten PeekOffsetWord; adjust textframe content-offsets and content-lengths when CharacterDataChanged fires; search backwards for textrun scanning/creation start point, instead of all the way back to the start of the block; ensure that we pass the correct start iterator to PropertyProvider in TrimTrailingWhiteSpace. 2007-06-12 14:01:12 -07:00
371690c9a2 Not part of the build. Change nsLineBreaker so that breaks at element boundaries are always governed by the white-space property on the element that's the nearest common ancestor of the DOM nodes on each side of the break point --- fixes bug 382289. Also, pass NBSP through to textruns so that whitespace trimming doesn't trim NBSP. Also, count trimmed spaces correctly when updating mClusterCount. 2007-05-30 15:27:27 -07:00
ba760daede Not part of the build. Update new text frame for textrun API changes. Also implements a textrun cache for the new text frame 2007-05-09 15:04:56 -07:00
1f4a5665cd Bug 333659. Major new-textframe update. You can really browse the Web with it now, although major bugs remain. 2007-03-22 16:13:12 -07:00
roc+@cs.cmu.edu
8b03653c52 Bug 333659. Landing new text interfaces, new gfxPangoTextRun (enabled), new textframe code (disabled). r+sr=dbaron for the part-of-the-build layout parts,r=stuart for the part-of-the-build gfx parts 2007-01-16 20:51:52 +00:00