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
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
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
We now read the emoji additions from a data file, instead of keeping
them in code.
Test: updated lint script passes.
Change-Id: Ica1ca10eaba0ca2b4a178d08354e31729cb88ce5
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
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
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
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
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
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
There are 12 characters that Android is defaulting to emoji,
differing from UTR #51 recommendation. This tests for their proper
support.
Change-Id: Icd570510090ef29b3b7a3520bc368c5f77f99fa4
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
This is temporary, until we have proper attribution for additional
emoji data.
Bug: 29939737
Change-Id: I5b97c8e055fa2ccf44b13bf801f681b860d47286
(cherry picked from commit f874a1949a7516596a0c2f5829e140dc6f69c326)
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
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
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
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
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
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
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
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