74b56175e5d41c1c1dc992208842b5576973d452 |
|
26-May-2016 |
Roozbeh Pournader <roozbeh@google.com> |
Do not break after Myanmar viramas This is to work around a bug in ICU's line breaker, which thinks there is a valid line break between a Myanmar kinzi and a consonant. See http://bugs.icu-project.org/trac/ticket/12561 for the ICU bug. Bug: 28964845 Change-Id: I076ac15077e5627cbccf6732900bcc60d8596dda
/frameworks/minikin/libs/minikin/WordBreaker.cpp
|
77f488345316fba46c271fc04bea470819ae1712 |
|
19-Apr-2016 |
Seigo Nonaka <nona@google.com> |
Do not break before and after ZWJ. The emoji list is generated from external/unicode/emoji-data.txt Bug: 28248662 Change-Id: Ie49b3782505665d62c24371ca23d317ae5e9c5f7
/frameworks/minikin/libs/minikin/WordBreaker.cpp
|
d8917c69a9f7b7ca52f7ac850922dab4322113f5 |
|
16-Mar-2016 |
Roozbeh Pournader <roozbeh@google.com> |
Do not allow line breaks before currency symbols Implement the change proposed in UTC document L2/16-043R (http://www.unicode.org/L2/L2016/16043r-line-break-pr-po.txt) to make sure we do not break between letters and currency symbols. Bug: 24959657 Change-Id: Ia29d0e5625f84870bd910d0c6e19036d17206704
/frameworks/minikin/libs/minikin/WordBreaker.cpp
|
56840e8006ca2b822adb401fc8a65f3c075cde10 |
|
25-Feb-2016 |
Raph Levien <raph@google.com> |
Suppress line breaks in emoji + modifier An emoji base with an emoji modifier renders as a single glyph and thus should not be a line break. Current (Unicode 8) logic does indicate a line break, so we override the results of the ICU line break iterator. The code references a proposal to improve Unicode behavior; when that is adopted and we upgrade ICU accordingly, the special-case code should be deleted, but the tests can remain. Bug: 27343378 Change-Id: I5de9c53e9a34c503816f9131e3d894e6f7a57d13
/frameworks/minikin/libs/minikin/WordBreaker.cpp
|
d3f45892c721fb1738bf02fe19a5143a320ca4bf |
|
19-Feb-2016 |
Raph Levien <raph@google.com> |
Suppress linebreaks in emoji ZWJ sequences Due to the way emoji ZWJ sequences are defined, the ICU line breaking algorithm determines that there are valid line breaks inside the sequence. This patch suppresses these line breaks. This is an adaptation of I225ebebc0f4186e4b8f48fee399c4a62b3f0218a into the nyc-dev branch. Bug: 25433289 Change-Id: I84b50b1e6ef13d436965eab389659d02a30d100f
/frameworks/minikin/libs/minikin/WordBreaker.cpp
|
c88ef135fcc2661ec7addc171ebc60787df38aff |
|
09-Sep-2015 |
Raph Levien <raph@google.com> |
Add penalty for breaks in URLs and email addresses Recent changes have added special cases for line breaks within URLs and email addresses. Such breaks are undesirable when they can be avoided, but at other times are needed to avoid huge gaps, or indeed to make the line fit at all. This patch assigns a penalty for such breaks, equal to the hyphenation penalty. The mechanism is currently very simple, but would be easy to fine-tune based on more detailed information about break quality. Bug: 20126487 Bug: 20566159 Change-Id: I0d3323897737a2850f1e734fa17b96b065eabd9c
/frameworks/minikin/libs/minikin/WordBreaker.cpp
|
6d15657e4a3826d4d47d5358f1dde211484527e9 |
|
09-Sep-2015 |
Raph Levien <raph@google.com> |
Add line breaks to email addresses and URLs This change adds accceptable line breaks according to sections 7.42 (Dividing URLs and e-mail addresses) and 14.12 (URLs or DOIs and line breaks) of the Chicago Manual of Style (16th ed.). In general, these place breaks before punctuation symbols, and suppresses them after hyphens. Bug: 20126487 Bug: 20566159 Change-Id: I2d07d516b920a506a2f718c38fb435c5eb1ee1f8
/frameworks/minikin/libs/minikin/WordBreaker.cpp
|
9c4cc648abcae144f3b99d612e58ef01d5e52cce |
|
09-Sep-2015 |
Raph Levien <raph@google.com> |
Special-case URLs and email addresses for line breaking Detect URLs and email addresses, and suppress both line breaking and hyphenation within them. Bug: 20126487 Bug: 20566159 Change-Id: I43629347a063dcf579e355e5b678d7195f453ad9
/frameworks/minikin/libs/minikin/WordBreaker.cpp
|
57b6dae9894b9362ef04517ff477fd491f9d433b |
|
05-Sep-2015 |
Raph Levien <raph@google.com> |
Refine hyphenation around punctuation Implement a WordBreaker that defines our concept of valid word boundaries, customizing the ICU behavior. Currently, we suppress line breaks at soft hyphens (these are handled specially). Also, the new WordBreaker class has methods that determine the start and end of the word (punctuation stripped) for the purpose of hyphenation. This patch, in its current form, doesn't handle email addresses and URLs specially, but the WordBreaker class is the correct place to do so. Also, special case handling of hyphens and dashes is still done in LineBreaker, but all of that should be moved to WordBreaker. Bug: 20126487 Bug: 20566159 Change-Id: I492cbad963f9b74a2915f010dad46bb91f97b2fe
/frameworks/minikin/libs/minikin/WordBreaker.cpp
|