summaryrefslogtreecommitdiff
path: root/tools/fonts
AgeCommit message (Collapse)Author
2021-02-25Rename the font file with PostScript name based file nameSeigo Nonaka
This CL also adds lint rules for matching the file name and PostScript name. Bug: 179952916 Test: m fontchain_lint Merged-In: I829840299b5d138cfec8924ce8f77e1371524a70 Change-Id: Ifbe99d68c40605f004c88f63000b092cb68cafd6
2020-12-08Improve OWNERS coverage across frameworks/base/.Jeff Sharkey
As general background, OWNERS files expedite code reviews by helping code authors quickly find relevant reviewers, and they also ensure that stakeholders are involved in code changes in their areas. Some teams under frameworks/base/ have been using OWNERS files successfully for many years, and we're ready to expand them to cover more areas. Here's the historical coverage statistics for the last two years of changes before these new OWNERS changes land: -- 56% of changes are fully covered by OWNERS -- 17% of changes are partially covered by OWNERS -- 25% of changes have no OWNERS coverage Working closely with team leads, we've now identified clear OWNERS on a per-package basis, and we're using "include" directives whenever possible to to simplify future maintenance. With this extensive effort, we've now improved our coverage as follows: -- 98% of changes are fully covered by OWNERS -- 1% of changes are partially covered by OWNERS -- 1% of changes have no OWNERS coverage This specific change is automatically generated by a script that identifies relevant "include" directives. Bug: 174932174 Test: manual Exempt-From-Owner-Approval: refactoring with team leads buy-in Merged-In: I3480ddf2fe7ba3dfb922b459d4da01fa17a2c813 Change-Id: I3480ddf2fe7ba3dfb922b459d4da01fa17a2c813
2020-03-07Uses python3 for fontToolsHaibo Huang
Change-Id: I33bb8881823278c990faeb1a0e119f855c9948b9
2019-05-15Update fontchain_linter.py to support more flags.Qingqing Deng
Android Q will support all region flags in UNSUPPORTED_FLAGS list. BL - Saint Barthélemy BQ - Caribbean Netherlands MQ - Martinique RE - Réunion TF - French Southern Territories Bug: 127811703 Test: Verified on device. Test: m fontchain_lint Test: minikin_tests --gtest_filter=EmojiTest.cpp Test: atest cts/tests/tests/text/src/android/text/cts/EmojiTest.java Test: atest frameworks/base/core/tests/coretests/src/android/text/EmojiTest.java Change-Id: Ice1fb10af35dc4e180735d9712167b71635920da
2019-03-26Modify fontchain_linter.py for Unicode 12.0 .Qingqing Deng
Bug:127811703 Test: m fontchain_lint Change-Id: I36e5804388b70d98a507a719741cae6bc73b727f
2018-09-28Introduce OEM customization XML parserSeigo Nonaka
As the initial version of the OEM customization XML, support new-named-family customization. This allows OEMs to add new named family. Bug: 111544833 Test: atest FrameworksCoreTests:android.graphics Change-Id: If58711fc038898175fcad0ae095865312bd738e2
2018-07-12Remove requirement for kiss emoji should have genderSiyamed Sinir
Test: m fontchain_lint Test: m Test: Visual test on device after full build Bug: 110037531 Change-Id: Iac26c7c7c0e1a8a500a93f19d99831113529b201
2018-05-15Update font chain linter to match latest font fileSeigo Nonaka
- FAMILY emoji now has own gender neutral emoji - Some flags are newly supported - Some regions may have the same flags. Bug: 77148691 Test: m fontchain_lint Change-Id: If1a69974230f025d35503eb49bea105923593e87
2018-04-19Update fontchain_linter for emoji 11Siyamed Sinir
* Add default genders for super villain and super hero. * Read capability to read from emoji exclusions file. * Update lint rule to use different glyphs for couple with heart. Test: m fontchain_lint Test: Visual test with a build and sample app Bug: 77148691 Change-Id: Icd92f0455709625b3998fc8eef1d448e17a5d71f Merged-In: Icd92f0455709625b3998fc8eef1d448e17a5d71f Merged-In: I56dd3c1e1258bab2fcbdf42e5c42587e45dd92fe (cherry picked from commit e853efc0817ef38f6ba561ea768d49caf1e53dba)
2018-01-18Ignore missing font in fontchain_linter.pySeigo Nonaka
It is totally valid if the font is missing even if the font is listed in fonts.xml. Android Watch has less fonts and OEM vendor may reduce the font files. Bug: 72159040 Test: m fontchain_lint Change-Id: I22bdf7bfeb6d80a2a338ebf7536c8eaf193b03c5
2017-11-20Use serif fonts for serif fallback.Seigo Nonaka
Bug: 31491668 Test: m -j1024 fontchain_lint Change-Id: Ic1d356aa684f2284b0b0fc8de5d0e36380eb44bc
2017-11-17Merge "Build fontchain_lint using python_binary_host" am: 7ecac139ea am: ↵Nan Zhang
7ade558ad2 am: 67695d3aff Change-Id: I850304f79c1c35bfeb6951307b8ca2365da0330b
2017-11-17Build fontchain_lint using python_binary_hostNan Zhang
Test: out/host/linux-x86/bin/fontchain_lint out/target/product/generic/system true external/unicode Bug: b/27727331 Change-Id: Ib9353d2338c3b939027069f49e3e847c65526581
2017-10-17Enable patterns for Belarusian and Latin languagesRoozbeh Pournader
The native frameworks code now knows about Belarusian and Latin patterns. Also, the fontchain_lint tool needed to know the script for any hyphenation patterns added, and now it does. Bug: 65626527 Test: make -j fontchain_lint Change-Id: I747cbb5ea3d36ca63335bfe6b337fad1e75ee79b
2017-05-31Merge "Create fonts.xml module for adding fonts.xml to system/etc"TreeHugger Robot
2017-05-30Create fonts.xml module for adding fonts.xml to system/etcAndrew Sapperstein
Previously, we used PRODUCT_COPY_FILES. However, that does not allow overriding the file to use a different one on a per-device basis. This change migrates the logic to using a BUILD_PREBUILT module called fonts.xml. To add additional fonts, the add_additional_fonts.py script has been added. If ADDITIONAL_FONTS_FILE is defined, add_additional_fonts.py is run and generates a new version of fonts.xml that contains the content of ADDITIONAL_FONTS_FILE added where "<!-- fallback fonts -->" is added. Bug: 36855735 Bug: 37997769 Test: manual. built multiple devices and verified that the correct versions of fonts.xml were showing. Change-Id: I8308f0cb3068274bca5ebd25a38cc023babbd69d
2017-05-18Check CJK punctuation in early non-CJK fontsRoozbeh Pournader
Added tests check that CJK punctuation marks do not appear in non-CJK fonts that appear earlier than CJK fonts. This should prevent bugs like those fixed by Ic2cbc79cecf9539ace8a432f373685eeff81e106 and Ieeb4c04ca785e07a5db94006a6da31ad040b7e7a to appear again. Change-Id: I622dccd2a619b2366987a81d1c7f8f49334f5638 Fixes: 38182099 Bug: 19355391 Test: make -j fontchain_lint
2017-04-25Update fontchain to read from additional sequencesSiyamed Sinir
Test: make fontchain_lint Bug: 37520224 Bug: 37169477 Change-Id: Ie01a2aca85314701654cc2397f0bcf8eafdbe608
2017-04-10Update fontchain_lint to test new emoji fontRoozbeh Pournader
The new emoji font has been update to Unicode 10/Emoji 5, and has a new mechanism for flag fallbacks. It also shares glyphs between gendered emoji and non-genders ones. Test: make fontchain_lint passes Bug: 34688862 Bug: 33276970 Bug: 34738377 Change-Id: I4d43b8c777deb93be1e6a784eaa109e2e7febd7d
2017-04-05Use additions/emoji-data.txt instead of hardcoded valuesRoozbeh Pournader
Previously, characters for which Android defaulted to emoji were hardcoded in the script. Now they are read from a data file. Test: make checkbuild passes Bug: 36536216 Change-Id: I99eeadf89a29b8a3336263dd68520433765ed5e2
2017-03-31Use variable fonts for Noto Sans KhmerJungshik Shin
Update fonts.xml to use NotoSansKhmer-VF.ttf. The weight range of Khmer is also extended to have 9 weight instances (three more than Roboto with 200, 600 and 800). The width range for Khmer is left alone partly because of an apparent lack of support in fonts.xml for non-normal width fallback fonts. Note that Noto Sans Khmer UI is left alone because of a baseline issue. BUG: 22667753 Test: See the QA instruction in comment 10 of the bug. Test: fontchain_lint Change-Id: Idf6d4fec86822663ac08feb8979edacbc6c709a0
2017-03-17Read emoji addtions from data fileRoozbeh Pournader
We now read the emoji additions from a data file, instead of keeping them in code. Test: updated lint script passes. Change-Id: Ica1ca10eaba0ca2b4a178d08354e31729cb88ce5
2017-03-16Update fontchain_lint.py to read Emoji 5.0 dataRoozbeh Pournader
This corresponds to an update in emoji-zwj-sequences.txt in I956ba139737bd79f5e31324ed77df9182342df4e. Test: The updated script passes with the update data file. Bug: 30999328 Change-Id: I989dee6e571645daa324ae3eb667e3a92a31511f
2017-02-22Load hyphenation patterns for Bulgarian and Church SlavonicRoozbeh Pournader
Patterns for Bulgarian (bg) and Church Slavonic (cu) are now loaded too. Also make changes to fontchain_lint.py, so it knows the script for Bulgarian and Church Slavonic is Cyrillic. Test: make -j works and creates .hyb files for bg and cu Change-Id: I0586f6c49380279ef88fe952b5cfd2d3594c5524
2017-01-11Check the count of the families in a default collection.Seigo Nonaka
After I9e01d237c9adcb05e200932401cb1a4780049f86, Minikin can accept up to 254 font families. To make sure we don't exeed this limit, introduce an assertion to fontchain_lint.py Bug: 33562608 Test: m fontchain_lint Change-Id: I35fc104fd4763f77145bef0e7c5facf30fa99644
2016-09-14Fix incorrect emoji presentation for 'Zsym' scriptyirui
If the language tag "und-Zsym" is applied to a TextView, the default presentation should be text-style. However, it didn't work before this patch, due to a lack of "und-Zsym" language tag in fonts.xml. Bug: 31297127 Change-Id: Ieed8fe1532806dd1e75c58aa0d7a724bfeed7796
2016-08-09Update lint check to accommodate new emoji sequencesRaph Levien
These are not yet ready for updating in the unicode data, so we patch them in code until they are. Bug: 30594617 Change-Id: Ib4c8568aa4840341474eb0c0c95674d640473f4d
2016-07-27Add test for ascent and descent of serif and mono fontsRoozbeh Pournader
fontchain_lint now has tests making sure that their ascent and descent matches that of Roboto. Also, this moves a test class that contains a similar test and and other related tests from graphictests to coretests. Bug: 19791102 Change-Id: I8b473dd2a5f97ae2e3d322a2cabc16f3d32489f6
2016-07-27Test Roboto's vertical font metricsRoozbeh Pournader
Test that yMin, yMax, Ascent, and Descent values of Roboto are not changed. Bug: 26187231 Change-Id: Ia41f5a118e292b8eda8dae5124be112dc0cdbc8d
2016-07-26Check defaults for Android default-emoji charactersRoozbeh Pournader
There are 12 characters that Android is defaulting to emoji, differing from UTR #51 recommendation. This tests for their proper support. Change-Id: Icd570510090ef29b3b7a3520bc368c5f77f99fa4
2016-07-25Re-enable disabled emoji testsRoozbeh Pournader
Since Ib68f803c6adfb41db70f7319b7736d17cdbb6ec2 updates the emoji data to version 4.0 beta, we can now re-enable the disabled emoji tests. Also fix some style issues, update data file parsing method to handle the new emoji format, add UN to unsupported flags, and do a little refactoring. Bug: 26187231 Change-Id: I441fdfed68381d08e5e0b3af91e94bfae742eef6
2016-07-14Merge \\"Patch out part of the emoji tests.\\" into nyc-mr1-dev am: 2f39bc777cRaph Levien
am: a77343f873 Change-Id: I60cc91a65e818cb78663647bfa249c896a7cff2c
2016-07-13Patch out part of the emoji tests.Doug Felt
This is temporary, until we have proper attribution for additional emoji data. Bug: 29939737 Change-Id: I5b97c8e055fa2ccf44b13bf801f681b860d47286 (cherry picked from commit f874a1949a7516596a0c2f5829e140dc6f69c326)
2016-07-09Patch out part of the emoji tests.Doug Felt
This is temporary, until we have proper attribution for additional emoji data. Bug: 29939737 Change-Id: I5b97c8e055fa2ccf44b13bf801f681b860d47286
2016-06-15Remove modifications to emoji dataRoozbeh Pournader
The previous two changes, I60097cd78f28764d83abe0d12b53e2a7e6c974dc and Idcc8f1b66014b25758c163d908d34f06011d9927, added code to filter out two characters that were getting removed from the emoji set. Now that the upstream Unicode data file removes them (see Ibfea01280d08df34dcdd03f5121aabd532a6eecc), we can remove the code. Bug: 26187231 Change-Id: Ib849917d8978da1b24fe5fff17d62ad7c2de963a
2016-05-10Remove rifle (1F946) from emoji font.Doug Felt
Bug: 28678310 Change-Id: I60097cd78f28764d83abe0d12b53e2a7e6c974dc
2016-04-29Patch fontchain_lint to exclude modern_pentathlon.Doug Felt
Fix build breakage. Bug: 28426800 Change-Id: Idcc8f1b66014b25758c163d908d34f06011d9927
2016-04-04Add many more emoji testsRoozbeh Pournader
This creates an exact map of the emoji font and adds the following tests: * Test that all 'emoji style' variation sequences exist in the color emoji font. * Test that the emoji font contains the exact same character set that we expect. * Test that all unsupported flags map to the same flag tofu glyph. * Test that the reverse of ZWJ sequences exist in the font and map to the same glyph. * Test that legacy PUA Android emoji are supported. * Test that all emoji sequences that should map to the same glyph do so, but no other sequences map to the same glyph. Bug: 26187231 Change-Id: I64ef17862df2d91879bf7904055c77c24abb7d88
2016-03-31Re-enable emoji font testsRoozbeh Pournader
This re-enables the emoji font tests, but doesn't run the tests if SMALLER_FONT_FOOTPRINT is set. Additionally, we test that there's one and only one emoji font in the fallback chain. Bug: 26187231 Bug: 27785690 Change-Id: I2e6d467e3f54ee3d41737170d7c2492a0f6b30f0
2016-03-25Merge "Add Lang-to-Script entries for languages with new hyph patterns" into ↵Jungshik Shin
nyc-dev
2016-03-23Add Lang-to-Script entries for languages with new hyph patternsJungshik Shin
Hyphenation patterns are being added for 22 languages and they need entries in LANG_TO_SCRIPT This CL is a prerequisite to the following CL to add hyphenation patterns for more languages: https://googleplex-android-review.googlesource.com/#/c/890133/ BUG: 26405413 Change-Id: Ibba8379cca29a5a7b6df35f10b66468b612601f8
2016-03-22Temporarily disable emoji availability checkSiyamed Sinir
On builds where SMALLER_FONT_FOOTPRINT environment variable is set, some of the fonts are not included in the build which causes emoji checks to fail. This CL temporarily disables emoji checks. Bug: 27785690 Change-Id: Ie32f0aa630c84347588fc87630467c14e985940a
2016-03-17Add more emoji-related testsRoozbeh Pournader
1. Check that dual-use text/emoji character that default to text style are available in a font before the emoji font. (Exceptions are Unicode 7.0 characters that Noto Symbols doesn't support yet and four odd characters that should be added to the Noto Symbols subset.) 2. Remove previous workaround for default emoji-style characters that were in the Noto CJK fonts, since they are now subsetted out from Noto CJK. Bug: 26113320 Bug: 26187231 Change-Id: Ib9ea2f4f7e6ca0cd8d291f1dc3d7ee5053d4928e
2016-03-16Add emoji-related tests for the font chainRoozbeh Pournader
1. Check that all emoji characters are supported in emoji fonts. 2. Check that no default-emoji characters are included in any font that can get a higher score then the color emoji font, either by being before it or by having a language/script assigned. Bug: 26187231 Change-Id: Ic76bf59f1c6f9d2d290b1b64128d725ae08dcb5c
2016-03-10Add test script for sanity of font fallback chainRoozbeh Pournader
Various tests have been added: 1. Availability of hyphens: Make sure that every font used for rendering a language that is automatically hyphenated includes either of Unicode hyphen characters U+2010 HYPHEN or U+002D HYPHEN-MINUS. 2. Range of values: Make sure that styles, weights, and styles belong to certain limited sets. Bug: 26187231 Bug: 21570828 Bug: 21815394 Change-Id: Ia63d63cc8da4f2d6bc81fe5619ccac6cfcd9a54e