b01028d1d7bc3906ef71c72ad985919f79304b5e |
|
14-Mar-2017 |
Roozbeh Pournader <roozbeh@google.com> |
Break grapheme clusters after viramas if they end a cluster Previously, we stayed on the conservative side and disallowed any grapheme breaks (and thus cursoring) where a virama was followed by a letter, since we did not know if the virama would be forming a cluster with the letter or not. This created problems with Indic languages with infrequent conjuncts, such as Tamil. Now we use the information in calculated advances to find if a cluster is formed. If there is no cluster, we break the grapheme and allow cursoring after the virama. Test: Unit tests added to GraphemeBreakTests and MeasurementTests. Test: Also manually tested Tamil sequences. Bug: 35721792 Change-Id: Ib159edb94b3ad6f693f0d3dad016b332b2cef447
/frameworks/minikin/libs/minikin/Measurement.cpp
|
32c12c0ac825453f4c3bba07718cfe684ec90bec |
|
28-Dec-2016 |
Mark Salyzyn <salyzyn@google.com> |
resolve merge conflicts of 2377a00 to master Test: build Bug: 26552300 Bug: 31289077 Change-Id: I6181ae7e84f9bdcbed50841c70d07f6906a10eb7
|
555d84c6f98eafcbe677cdcb8e9605760acd8ce5 |
|
29-Sep-2016 |
Mark Salyzyn <salyzyn@google.com> |
minikin: Replace cutils/log.h with android/log.h or log/log.h - replace cutils/log.h with android/log.h (main buffer logging) - replace cutils/log.h with log.log.h (+SafetyNet logging) - define LOG_TAG before use. Test: compile Bug: 26552300 Bug: 31289077 Change-Id: I7a4803dd66f31b7103e09e5ff5b8fa523fa0fd60
/frameworks/minikin/libs/minikin/Measurement.cpp
|
14e2d136aaef271ba131f917cf5f27baa31ae5ad |
|
09-Jun-2016 |
Seigo Nonaka <nona@google.com> |
Always use minikin namespace. Here is a new policy of the namespace of minikin. - All components should be in minikin namespace. - All tests are also in minikin namespace and no anonymous namespace. Bug: 29233740 Change-Id: I71a8a35049bb8d624f7a78797231e90fed1e2b8c
/frameworks/minikin/libs/minikin/Measurement.cpp
|
ea408fc18e8e78d984ebdf63703da668a15720de |
|
18-Feb-2016 |
Keisuke Kuroyanagi <ksk@google.com> |
Optimize: Use measureText instead of doLayout. With this CL, measureText is used for getRunAdvance, getOffsetForAdvance and line breaking. Bug: 24505153 Change-Id: Ib699f6b1391b46537736fc274cdb41686586b550
/frameworks/minikin/libs/minikin/Measurement.cpp
|
542572394dfb35b6b78b73837ec13c8e3170385a |
|
21-Jul-2015 |
Raph Levien <raph@google.com> |
Revert "Allow clusters to start with zero-width characters" This reverts commit 3e0fc64da064b8c4156daf53242b8eeb47830f64. Bug: 22589743 Bug: 22121742 Change-Id: I7b482ffb8a0ee174ddc804aa890de45bdbd758e3
/frameworks/minikin/libs/minikin/Measurement.cpp
|
3e0fc64da064b8c4156daf53242b8eeb47830f64 |
|
30-Jun-2015 |
Raph Levien <raph@google.com> |
Allow clusters to start with zero-width characters The logic in getRunAdvance() assumed that any zero-width character was part of the preceding cluster, which is valid most of the time. However, characters such as ZWNBSP (U+FEFF) renders as a zero width glyph and is also a grapheme cluster boundary. This patch adds a clause to handle that case. Bug: 22121742 Change-Id: Iad79a7d988bded1ef05f0fd7905d20669ea22051
/frameworks/minikin/libs/minikin/Measurement.cpp
|
4ea1cc82b0e8170d6ab6a7e9ee274c81315cd59e |
|
10-Jun-2015 |
Keisuke Kuroyanagi <ksk@google.com> |
Fix: getOffsetForAdvance can return worng offset. searchStart was passed to getRunAdvance, but it can be different from the start that has been used to initialize Layout object. As a result, wrong index could be used in getRunAdvance. Bug: 21744454 Change-Id: Ibe83cc50ed6f0da2a1532318bc224502be350699
/frameworks/minikin/libs/minikin/Measurement.cpp
|
95af01c57b60130ba4c098340ba6ea4b4ebfee3f |
|
01-Jun-2015 |
Raph Levien <raph@google.com> |
Use context start correctly in getRunAdvance We were not taking context start into account when deciding whether to split a ligature, which was causing inconsistent behavior. This patch consistently references the widths array relative to the start of the context. Bug: 21549197 Change-Id: I7c71e10c1af84354fefe782fc0b87120016e6555
/frameworks/minikin/libs/minikin/Measurement.cpp
|
40beb7744a61248de82a6077996c83c14e0122c2 |
|
07-Apr-2015 |
Raph Levien <raph@google.com> |
Add functions for measuring cursor positioning New functions for computing the correspondence between cursor position and advance, respecting grapheme boundaries. Change-Id: I620378d5f64cd74300cd43db522adeb555825dff
/frameworks/minikin/libs/minikin/Measurement.cpp
|