- 23 3月, 2017 1 次提交
-
-
由 Seigo Nonaka 提交于
This CL is essentially reverting following changes: - "Serialize and deserialize supported axes." I4086fb887e13f872390b533584bce6f1d5598ea0 - "Make SparseBitSet serializable." I0463138adcf234739bb3ce1cdadf382021921f3e Bug: 36232655 Test: N/A Change-Id: I25c701e1805e92b01034142147a9925f86533819
-
- 21 3月, 2017 1 次提交
-
-
由 TreeHugger Robot 提交于
-
- 18 3月, 2017 4 次提交
-
-
由 Roozbeh Pournader 提交于
Previously, we insisted that in order for us to claim that a text variation sequence is supported or to display it, it needs to be standardized already. Now we accept any character as the base of a text variation sequence and support it as far the font used to display it is not an emoji font. Also fix a typo in a font name. Test: Unit tests are updated and pass. Bug: 30874706 Change-Id: I9660ec43aeee84303cfb825352a7f5029d036dd6
-
由 Roozbeh Pournader 提交于
This is now done properly in ICU so we no longer need to do it ourselves. Also updated some comments about emoji line-breaking. Test: Existings tests for this in Minikin continue to pass. Bug: 24959657 Bug: 27365282 Change-Id: I865ea9ba1e79a64409d84d2d30c121f740e35ad6
-
由 Roozbeh Pournader 提交于
Certain differences are still needed, since ICU appears to support Emoji 4.0 only, while we need Emoji 5.0. But the bulk of the data is now carried by ICU. We no longer need the script that generates the tables, so that's also removed. Test: Comprehensive unit tests added. Bug: 27365282 Bug: 30874706 Change-Id: I011443fbca9bb202deff7fffb40043f89e1f1fb1
-
由 TreeHugger Robot 提交于
-
- 17 3月, 2017 7 次提交
-
-
由 Seigo Nonaka 提交于
Test: ran minikin_perftest Bug: 36232655 Change-Id: Ic4d88663d522be17540e2ac17c9b7ae64210275f
-
由 TreeHugger Robot 提交于
-
由 Roozbeh Pournader 提交于
Update emoji character data to Unicode 10.0 / Emoji 5.0 (which also removes U+1F93B MODERN PENATHLON from the emoji base letters). Also add unit tests for line breaking for new characters (based on earlier work by Seigo Nonaka). Test: All new and existing unit tests pass; Test: Manually tested line breaking of new emojis in TextView. Bug: 28364892 Bug: 28678294 Bug: 30874706 Change-Id: I367cdab09187dc08a66a3112a5181a2b7fb338a5
-
由 TreeHugger Robot 提交于
-
由 TreeHugger Robot 提交于
-
由 Roozbeh Pournader 提交于
The rules are updated to the latest UAX #29, with tailorings based on the font in use: we can now use the clustering information calculated by Layout, so we will only disallow a grapheme break if an emoji ligature is actually formed. Test: Unit tests have been updated and pass. Bug: 30917298 Bug: 34211654 Change-Id: Idc0ef9f1f4f45dc45a50ed69e45c43ebfaea0306
-
由 Roozbeh Pournader 提交于
Refactor WordBreaker to make it ready for more complex behavior. Test: existing unit tests continue to pass Change-Id: Ife758f3e2cf48922ab56109e6c5d3cffa3673feb
-
- 16 3月, 2017 9 次提交
-
-
由 TreeHugger Robot 提交于
-
由 TreeHugger Robot 提交于
-
由 Seigo Nonaka 提交于
This is designed for catching race condition. The stress_tests is splited from unit test binary since this takes 30 seconds on angler. Bug: 36223724 Bug: 36208043 Test: ran minikin_stress_tests Change-Id: I1bf4ba43e6e97cd04e7d6dd42d388dd17ce64c7b
-
由 TreeHugger Robot 提交于
-
由 TreeHugger Robot 提交于
-
由 Seigo Nonaka 提交于
To avoid reading font files during FontFamily construction, serialize and deserialize supported axes and cmap coverage at the same time. Bug: 36232655 Test: ran minikin_tests Change-Id: I4086fb887e13f872390b533584bce6f1d5598ea0
-
由 Roozbeh Pournader 提交于
The previous code fell back directly from a script-specific hyphen to the ASCII hyphen-minus if the font didn't support the script-specific hyphen. Now we try the Unicode hyphen (U+2010) first before trying the ASCII hyphen-minus. Bug: 36201363 Test: Not needed Change-Id: I374234fd73fab7edd990ea86f8937c38761c90bf
-
由 Roozbeh Pournader 提交于
Previously, in greedy line breaking, when a line overflowed, we found the best line breaking candidate before it and broke the line there. But we didn't check to see if the remaining part now fits in a line. With this change, we now repeat checking for overflows, and break again until we have no breaking opportunity or the remaining text now fits in a line. Also found an issue with greedy line breaking and keeping the hyphenation edit for the next line which is now fixed. Test: Manual. The issue reported in the bug is now fixed. Bug: 34185255 Bug: https://code.google.com/p/android/issues/detail?id=231437 Bug: 33560754 Change-Id: I93bdd341e4f8e1257710e453e4938f224cb2a1ff
-
由 TreeHugger Robot 提交于
-
- 15 3月, 2017 4 次提交
-
-
由 Seigo Nonaka 提交于
LayoutCache only keeps result of layout and can live after FontCollection is destructed by GC. This kind of failure will be captured by minikin_stress_tests in the subsequent CL (I1bf4ba43e6e97cd04e7d6dd42d388dd17ce64c7b) Test: ran minikin_tests Bug: 36223724 Change-Id: I639b73c0f1041549158c43212a901c82df4b02db
-
由 Seigo Nonaka 提交于
The list of supportedAxes are necessary for returning value of setFontVariationSettings. Bug: 35764323 Test: ran TextViewTest and PaintTest in cts Change-Id: I52f244146ea0ce335df02c841f89285be2ed746e
-
由 Roozbeh Pournader 提交于
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
-
由 Seigo Nonaka 提交于
This reverts commit 62ad5653. Bug: 36208043 Test: N/A Change-Id: I165ab7a0718ea50a8034adb6277809e271fd762c
-
- 14 3月, 2017 4 次提交
-
-
由 Seigo Nonaka 提交于
FontLanguageListCache::kEmptyListId is gone, use kEmptyLanguageListId instead. Test: N/A Change-Id: I96075849c53f23fbce8dbc180a51d8f97e45f316
-
由 TreeHugger Robot 提交于
-
由 Seigo Nonaka 提交于
To share the calculated coverage information across the processes, make SparseBitSet serializable. Bug: 34042446 Test: minikin_tests passes Change-Id: I0463138adcf234739bb3ce1cdadf382021921f3e
-
由 Seigo Nonaka 提交于
This CL includes: - Stop using utils/Mutex and use std::mutex instead. - Stop using utils/Singleton. Test: minikin_tests passed Change-Id: Ib3f75b83397a546472bb5f91e066e44506e78263
-
- 13 3月, 2017 1 次提交
-
-
由 Seigo Nonaka 提交于
This is 2nd attempt at I9e01d237c9adcb05e200932401cb1a4780049f86. The previous CL was reverted because 8-bit integers were too small to store the indices of mFamilyVec. This CL changes it to 16-bit integers since size_t is still unnecessary large. Theoretically, 32-bit integers are necessary for the indices of mFamilyVec since the size of mFamilyVec can be 0x10EE01. However, in practice, 16-bit integers are enough for the indices of mFamilyVec. The length of mFamilyVec for the system fonts is 2084. Even if the developers load their own very large fonts, it can only increase the number of elements in mFamilyVec to at most 0x10FF. As the result, memory usage of the FontCollections for the system fonts decreases as follows. 64-bit process: before: 398,264 bytes, after: 282,568 bytes (-115,696 bytes) 32-bit process: before: 199,132 bytes, after: 149,548 bytes (-49,584 bytes) Bug: 33562608 Test: Verified Emoji and CJK characters are present. Test: android.text.cts.EmojiTest passed Test: Minikin unit tests passed Change-Id: I6796fd55ac30fe30528a212ebf6097b1d672e2f8
-
- 07 3月, 2017 3 次提交
-
-
由 Roozbeh Pournader 提交于
With this change, different languages can have a different minimum length for suffix and prefixes when hyphenating. Previously, the defaults used for English, 2 and 3, were used for every language. Bug: 35712376 Test: Minikin unit tests were updated and the pass Change-Id: Iffaf11c6b208c57d28d45b17246e177572dc1210
-
由 TreeHugger Robot 提交于
-
由 Roozbeh Pournader 提交于
Since there are no known users of Minikin outside Android yet, these files are simply a maintenance burden with no actual benefit. Removing the samples until there are potential external users. Test: Not needed Change-Id: If7f1fb775cae427fbe31b86c202d1380c701bf28
-
- 03 3月, 2017 1 次提交
-
-
由 Roozbeh Pournader 提交于
This adds better support for Arabic script languages, Armenian, Catalan, Hebrew, Kannada, Malayalam, Polish, Tamil, and Telugu by adding various hyphenation types and edits appropriate for the locales. For Arabic script languages, soft hyphens act transparently with regard to joining: If a line is broken at a soft hyphen where the two characters around the soft hyphen were joining each other before, they will continue to appear joining if the line is broken at the soft hyphen and a hyphen glyph is inserted. This is needed for Central Asian languages such as Uighur. For Armenian, U+058A ARMENIAN HYPHEN is used for line breaks caused by either automatic hyphenation or soft hyphens. For Catalan, nonstandard line breaks are implemented for "l·l", which hyphenates as "l-/l". For Polish, when there is a line break at a hyphen, the hyphen is repeated at the next line. For the South Indic languages, when breaks happen due to soft breaks or automatic hyphenation, no visible hyphen is inserted, although a penalty is added. For Hebrew, support for using U+05BE HEBREW PUNCTUATION MAQAF has been implemented, but it's turned off pending confirmation of desirability. Also, hard hyphens, which previously had no penalty added for breaking the line after them, now have the same penalty as an automatic or soft break, with the difference that no hyphen is inserted when they break. Finally, some bugs have been fixed with hyphenating multiscript and multi-font words. Bug: 19950445 Bug: 19955011 Bug: 25623243 Bug: 26154469 Bug: 26154471 Bug: 33387871 Bug: 33560754 Bug: 33752592 Bug: 33754204 Test: Unit tests added, plus thorough manual testing Change-Id: Iaccf776ce8d1d434ee8b1c534ff3659d80fdc338
-
- 27 2月, 2017 1 次提交
-
-
由 Seigo Nonaka 提交于
-
- 24 2月, 2017 4 次提交
-
-
由 Roozbeh Pournader 提交于
am: d2e637ea Change-Id: Ieee903aff9b9759da30996d9c64cf0dcf94d7294
-
由 Roozbeh Pournader 提交于
am: d9110339 Change-Id: I960946e29e3aeb6bac9cc2028a2201e8c8d5ae4f
-
由 Roozbeh Pournader 提交于
am: 2c97cc90 Change-Id: I551c3cae80bf13ca43f13548777691b244197df1
-
由 Roozbeh Pournader 提交于
The Bulgarian hyphenation patterns contain a line consisting of '0ь0' which has no practical effect on hyphenation. Add an exception in roundtrip testing to make sure we don't fail while comparing our tables with the input data. Test: make -j works and creates .hyb files for bg and cu Change-Id: Ia46b8a45fe522f5194d8105d31b34b0e27528cc9 (cherry picked from commit 3e203b7b)
-