History log of /external/harfbuzz_ng/src/hb-ot-shape.cc
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
7c6937e7c7b62602fef10ac4b2e164d0c67c932b 20-Nov-2017 ebraminio <ebrahim@gnu.org> Move all references of old url to the new address (#622)
/external/harfbuzz_ng/src/hb-ot-shape.cc
baf7779d2d6e4810168a8f036bbf8f9e6493dd1a 15-Nov-2017 Behdad Esfahbod <behdad@behdad.org> Limit how much recursion GSUB/GPOS does

This only counts recursions right now. Good start.

Hopefully...
Fixes https://github.com/behdad/harfbuzz/issues/429
/external/harfbuzz_ng/src/hb-ot-shape.cc
8b9d9b71b04c9d5698ec146658b31381060c700d 22-Oct-2017 Behdad Esfahbod <behdad@behdad.org> Fix set initialization issues
/external/harfbuzz_ng/src/hb-ot-shape.cc
dbdbfe3d7b36613d893832dcb1884c756c20bfda 15-Oct-2017 Behdad Esfahbod <behdad@behdad.org> Use nullptr instead of NULL
/external/harfbuzz_ng/src/hb-ot-shape.cc
9786fcd8fdc0adbe8b6269ddd174ee2818d6fa9e 03-Oct-2017 Behdad Esfahbod <behdad@behdad.org> Fix GPOS v_origin ordering

This should affect mark attachment in vertical text. I have no font to test,
but this sounds the right order.

Noticed while debugging https://github.com/behdad/harfbuzz/issues/532
/external/harfbuzz_ng/src/hb-ot-shape.cc
7cc348041d0b026ca6d2c240134e8f9100600e99 05-Sep-2017 Behdad Esfahbod <behdad@behdad.org> [unsafe-to-break] Fix unsafe-to-break for cluster-level=1

Fixes tests/shaping/tests/cluster.tests
/external/harfbuzz_ng/src/hb-ot-shape.cc
c449d2d8c9e27502380faa0b568a374c838ac9a7 31-Aug-2017 Behdad Esfahbod <behdad@behdad.org> [unsafe-to-break] Mark during fraction-slash formation

Fixes tests/automatic-fractions.tests
/external/harfbuzz_ng/src/hb-ot-shape.cc
1c17c2bde5bdf74a652b78d71b64e3aaa75ec43d 12-Aug-2017 Behdad Esfahbod <behdad@behdad.org> [unsafe-to-break] Copy flag to all glyphs in a cluster

Makes consumption easier.
/external/harfbuzz_ng/src/hb-ot-shape.cc
e2a2b5b229c92f1de3b9c3ea111cd1ffa75b18fc 11-Aug-2017 Behdad Esfahbod <behdad@behdad.org> [unsafe-to-break] Be careful with flag propagation when merging clusters
/external/harfbuzz_ng/src/hb-ot-shape.cc
5aec2fb8d0a4db52ae414d980b66018ca5ce1e9c 02-Mar-2017 Behdad Esfahbod <behdad@behdad.org> Remove TODO item that is not going to happen
/external/harfbuzz_ng/src/hb-ot-shape.cc
466b3e58bdc64229dab08c6e0e0079c789540370 04-Feb-2017 Behdad Esfahbod <behdad@behdad.org> Shuffle things around a bit
/external/harfbuzz_ng/src/hb-ot-shape.cc
2452543fdd383e62b8c4bc44b11bfd6796fc9963 18-Jan-2017 Khaled Hosny <khaledhosny@eglug.org> [ot] Fix automatic fraction for RTL scripts (#405)

The numbers for right-to-left scripts are processed also from right to
left, so the order of applying “numr” and “dnom” features should be
reversed in such case.

Fixes https://github.com/behdad/harfbuzz/issues/395
/external/harfbuzz_ng/src/hb-ot-shape.cc
e2b878055bb1c0b84e1f7cfbf3d3f80bfc6811ea 22-Dec-2016 Behdad Esfahbod <behdad@behdad.org> Disable OTL processing for Hebrew if GPOS doesn't have Hebrew subtable

New approach to fix this:
https://github.com/behdad/harfbuzz/commit/69f9fbc4200442a35484d3c790ae8f4979be5d60

Previous approach was reverted as it was too broad. See context:
https://github.com/behdad/harfbuzz/issues/347#issuecomment-267838368

With U+05E9,U+05B8,U+05C1,U+05DC and Arial Unicode, we now (correctly) disable
GDEF and GPOS, so we get results very close to Uniscribe, but slightly different
since our fallback position logic is not exactly the same:

Before: [gid1166=3+991|gid1142=0+737|gid5798=0+1434]
After: [gid1166=3+991|gid1142=0@402,-26+0|gid5798=0+1434]
Uniscribe: [gid1166=3+991|gid1142=0@348,0+0|gid5798=0+1434]
/external/harfbuzz_ng/src/hb-ot-shape.cc
1a0f4aa6dfee69236b422f7c8825eff940f45c19 22-Dec-2016 Behdad Esfahbod <behdad@behdad.org> Revert "Synthesize GDEF glyph class for any glyph that does not have one in GDEF"

This reverts commit 69f9fbc4200442a35484d3c790ae8f4979be5d60.

See https://github.com/behdad/harfbuzz/issues/347#issuecomment-268873401
Fixes https://github.com/behdad/harfbuzz/issues/347
/external/harfbuzz_ng/src/hb-ot-shape.cc
0aedfd59be54972e61a952753ffc0d12631771fe 28-Sep-2016 Behdad Esfahbod <behdad@behdad.org> [GX] Apply 'rvrn' feature before any other feature
/external/harfbuzz_ng/src/hb-ot-shape.cc
72ada4f0c6998fc2a282efc2a573733e37db8be5 10-Sep-2016 Behdad Esfahbod <behdad@behdad.org> [GX] Hook up feature variations

Shape-plan caching is not implemented.
/external/harfbuzz_ng/src/hb-ot-shape.cc
69f9fbc4200442a35484d3c790ae8f4979be5d60 17-Mar-2016 Behdad Esfahbod <behdad@behdad.org> Synthesize GDEF glyph class for any glyph that does not have one in GDEF

Previously we only synthesized GDEF glyph classes if the glyphClassDef
array in GDEF was null. This worked well enough, and is indeed what
OpenType requires: "If the font does not include a GlyphClassDef table,
the client must define and maintain this information when using the
GSUB and GPOS tables." That sentence does not quite make sense since
one needs Unicode properties as well, but is close enough.

However, looks like Arial Unicode as shipped on WinXP, does have GDEF
glyph class array, but defines no classes for Hebrew. This results
in Hebrew marks not getting their widths zeroed. So, with this change,
we synthesize glyph class for any glyph that is not specified in the
GDEF glyph class table. Since, from our point of view, a glyph not
being listed in that table is a font bug, any unwanted consequence of
this change is a font bug :).

Note that we still don't get the same rendering as Uniscribe, since
Uniscribe seems to do fallback positioning as well, even though the
font does have a GPOS table (which does NOT cover Hebrew!). We are
not going to try to match that though.

Test string for Arial Unicode:

U+05E9,U+05B8,U+05C1,U+05DC

Before: [gid1166=3+991|gid1142=0+737|gid5798=0+1434]
After: [gid1166=3+991|gid1142=0+0|gid5798=0+1434]
Uniscribe: [gid1166=3+991|gid1142=0@348,0+0|gid5798=0+1434]

Note that our new output matches what we were generating until July
2014, because the Hebrew shaper used to zero mark advances based on
Unicode, NOT GDEF. That's 9e834e29e0b657f0555df1ab9cea79ff7abcf08d.

Reported by Greg Douglas.
/external/harfbuzz_ng/src/hb-ot-shape.cc
8b5bc141cd3a6bfcea3c91a882a630426876ceb3 24-Feb-2016 Behdad Esfahbod <behdad@behdad.org> Add get_nominal_glyph() and get_variation_glyph() instead of get_glyph()

New API:
- hb_font_get_nominal_glyph_func_t
- hb_font_get_variation_glyph_func_t
- hb_font_funcs_set_nominal_glyph_func()
- hb_font_funcs_set_variation_glyph_func()
- hb_font_get_nominal_glyph()
- hb_font_get_variation_glyph()

Deprecated API:
- hb_font_get_glyph_func_t
- hb_font_funcs_set_glyph_func()

Clients that implement their own font-funcs are encouraged to replace
their get_glyph() implementation with a get_nominal_glyph() and
get_variation_glyph() pair. The variation version can assume that
variation_selector argument is not zero.
/external/harfbuzz_ng/src/hb-ot-shape.cc
815bdd7700155efcffa9a4c3ca5bfc31833d0586 22-Feb-2016 Behdad Esfahbod <behdad@behdad.org> In cluster-level=0, group ZWJ/ZWNJ with previous cluster

This better emulates Unicode grapheme clusters.

Note that Uniscribe does NOT do this, but should be harmless with most clients,
and improve fallback with clients that use HarfBuzz cluster as unit of fallback.

Fixes https://github.com/behdad/harfbuzz/issues/217
/external/harfbuzz_ng/src/hb-ot-shape.cc
89137e325a19d62fb00979e1e8ab2ca59a2c1147 22-Feb-2016 Behdad Esfahbod <behdad@behdad.org> Minor
/external/harfbuzz_ng/src/hb-ot-shape.cc
62c2711121fe78f373c15c0f53090b62b52d11c1 22-Feb-2016 Behdad Esfahbod <behdad@behdad.org> [coretext] Limit grapheme-cluster forming to cluster-level=0
/external/harfbuzz_ng/src/hb-ot-shape.cc
7d8d58ac81fe267e29ea68cdc6f4a4fa8c22d40f 11-Feb-2016 Behdad Esfahbod <behdad@behdad.org> [GPOS] Divide position_finish() into two phases, for advances and offsets

Right now the position_finish_advances() is empty. To be used for
spacing attachments proposal later.
/external/harfbuzz_ng/src/hb-ot-shape.cc
8474231567a08873cc5e0aa08fea60316a04c27e 11-Feb-2016 Behdad Esfahbod <behdad@behdad.org> [ot] Minor shuffling code around
/external/harfbuzz_ng/src/hb-ot-shape.cc
660c9d3fc21172e8dc340b017122c084dac6334c 10-Feb-2016 Behdad Esfahbod <behdad@behdad.org> Remove font-dependent ASCII-only perf hack

Is confusing. I already hit it myself. Remove. We can optimize
ASCII based on Unicode properties. But should not do based on
assumptions on the font.
/external/harfbuzz_ng/src/hb-ot-shape.cc
eaadcbbc53e02838c847e53ef214a55d6915d677 10-Feb-2016 Behdad Esfahbod <behdad@behdad.org> Remove now-unused mark zeroing BY_UNICODE
/external/harfbuzz_ng/src/hb-ot-shape.cc
35d18585fc57750d817f57bfffe569069f9803b5 27-Nov-2015 Behdad Esfahbod <behdad@behdad.org> Fix a few docs blocks
/external/harfbuzz_ng/src/hb-ot-shape.cc
ea512f71084296be3bd893f78650def894066de0 27-Nov-2015 Behdad Esfahbod <behdad@behdad.org> Use C-style casts instead of compare to 0, to convert hb_bool_t to bool
/external/harfbuzz_ng/src/hb-ot-shape.cc
67a36a725e2a61a096ba0324f359d17f9b02d312 27-Nov-2015 Behdad Esfahbod <behdad@behdad.org> Fix vertical GPOS

This was brorken earlier, though, it's really hard to notice it.
Unlike the glyph_h_origin(), an unset glyph_v_origin() does NOT
mean that the vertical origin is at 0,0.

Related to https://github.com/behdad/harfbuzz/issues/187
/external/harfbuzz_ng/src/hb-ot-shape.cc
766963adba6770dcd45de4417481ed8eda60a716 24-Nov-2015 Behdad Esfahbod <behdad@behdad.org> Merge pull request #114 from ThePhD/vc++-fixes

Fix all VC++ warnings and errors
abadc1717d997b69f987fdf1be9e12156d2d13d6 19-Nov-2015 Behdad Esfahbod <behdad@behdad.org> Try to better handle OOM situations

Fixes assert fail in https://github.com/behdad/harfbuzz/issues/161
with libharfbuzz-fuzzing.
/external/harfbuzz_ng/src/hb-ot-shape.cc
4301703bddb63a01651a0d58474bb15ac0ebbcf6 06-Nov-2015 Behdad Esfahbod <behdad@behdad.org> Limit buffer max size growth

https://github.com/behdad/harfbuzz/issues/161
/external/harfbuzz_ng/src/hb-ot-shape.cc
136863371c1402769426d892aef1b92f9ca1a25e 05-Nov-2015 Behdad Esfahbod <behdad@behdad.org> Add new shaper method postprocess_glyphs()

Unused currently. To be used for Syriac stretch implementation.

https://github.com/behdad/harfbuzz/issues/141
/external/harfbuzz_ng/src/hb-ot-shape.cc
e95eb23a4ee920eab1e2f4eec9cf490bb431452c 05-Nov-2015 Behdad Esfahbod <behdad@behdad.org> Don't try zeroing marks by GDEF if there are no non-ASCII

This one is a hack, but should be ok.
/external/harfbuzz_ng/src/hb-ot-shape.cc
7fa54ed75aa30ae1d6ee9136ccb83b630c24fb65 05-Nov-2015 Behdad Esfahbod <behdad@behdad.org> Don't try zeroing mark attachments by Unicode if there's no non-ASCII
/external/harfbuzz_ng/src/hb-ot-shape.cc
0f407325f6923db11d332585e8250e3646cb74d6 05-Nov-2015 Behdad Esfahbod <behdad@behdad.org> Minor
/external/harfbuzz_ng/src/hb-ot-shape.cc
497a6c2071cd0638e4c6af07621d01335fd963a9 05-Nov-2015 Behdad Esfahbod <behdad@behdad.org> Skip forming clusters if text is all ASCII
/external/harfbuzz_ng/src/hb-ot-shape.cc
5bc28b5f688ee90d103d052e98bc15d6e0e7e0b1 05-Nov-2015 Behdad Esfahbod <behdad@behdad.org> Optimize positioning for when h_origin is nil
/external/harfbuzz_ng/src/hb-ot-shape.cc
bee901b38ef3c26a04f69c299c8d5e028a0090e9 05-Nov-2015 Behdad Esfahbod <behdad@behdad.org> Optimize positioning direction calculations

It makes the binary smaller AND faster. Yumm!
/external/harfbuzz_ng/src/hb-ot-shape.cc
e3e4bb011ae1a2f1ba05e7ea450595b185304bec 05-Nov-2015 Behdad Esfahbod <behdad@behdad.org> Don't do fractions if buffer is ASCII-only
/external/harfbuzz_ng/src/hb-ot-shape.cc
6986208ba3b395534f4c7bcfa51df6bf9038f717 05-Nov-2015 Behdad Esfahbod <behdad@behdad.org> Optimize runs without Default_Ignorable's

Now that we have a buffer-wide scratch flags facility, use it to
optimize away a few passes.
/external/harfbuzz_ng/src/hb-ot-shape.cc
49ef630936325b2e56a870fcef9aa8473a8f8526 05-Nov-2015 Behdad Esfahbod <behdad@behdad.org> Adjust the width of various spaces if font does not cover them

See discussion here:
https://github.com/behdad/harfbuzz/commit/81ef4f407d9c7bd98cf62cef951dc538b13442eb

There's no way to disable this fallback, but I don't think it would
be needed. Let's hope for the best!

Fixes https://github.com/behdad/harfbuzz/issues/153
/external/harfbuzz_ng/src/hb-ot-shape.cc
aa7044de0ceacd71cab19212d266c3a66c03b41e 05-Nov-2015 Behdad Esfahbod <behdad@behdad.org> Generalize flags types
/external/harfbuzz_ng/src/hb-ot-shape.cc
f883de664fc4bfe01e30c89e07e31dc113f906d9 01-Sep-2015 Behdad Esfahbod <behdad@behdad.org> [OT] Merge /before/ reordering
/external/harfbuzz_ng/src/hb-ot-shape.cc
e47b772a56af44a9a4f9ec907ee2091b725b94c1 18-Aug-2015 Behdad Esfahbod <behdad@behdad.org> [ot] Change buffer content type right after we map to glyphs

Needed for upcoming debug output changes.
/external/harfbuzz_ng/src/hb-ot-shape.cc
5c99cf93d6242803bddcac2ca8300fdec7e0f8a7 14-Aug-2015 ThePhD <phdofthehouse@gmail.com> Merge branch 'master' into vc++-fixes
0f98fe88f42471eb8fb28d08d45eca9cd8303f7a 23-Jul-2015 Behdad Esfahbod <behdad@behdad.org> [ot] Search globally for 'vert' feature if not found in specified script/lang

Fixes https://github.com/behdad/harfbuzz/issues/63
/external/harfbuzz_ng/src/hb-ot-shape.cc
f327aacfa107bbef0c823ef9c3b7dfc91316040c 23-Jul-2015 Behdad Esfahbod <behdad@behdad.org> [ot] Minor
/external/harfbuzz_ng/src/hb-ot-shape.cc
8cfbc304ee563ec96e402beed34b10b6c0950a6a 22-Jul-2015 Behdad Esfahbod <behdad@behdad.org> Fix hide-default-ignorables after f0010dfd01ef4a927b0bdc175dd4e343a8637174

We can't delete things before hb_ot_layout_position_finish(). So,
just zero the advance before it, and remove later.
/external/harfbuzz_ng/src/hb-ot-shape.cc
2dbd3d29d6548bd96fd976606ed689fac8ad8817 22-Jul-2015 Behdad Esfahbod <behdad@behdad.org> Fix hide-ignorables if font doesn't have space glyph

Was broken by 82b521aeb7cc73879b44ca4278d6fa8b4347527f, as we have
positioning data by then and can't use the output buffer. Ouch!
/external/harfbuzz_ng/src/hb-ot-shape.cc
4ba796b26ee62de0d2830a550f3aa3b4aecf6f59 22-Jul-2015 Behdad Esfahbod <behdad@behdad.org> Refactor _hb_glyph_info_is_default_ignorable()
/external/harfbuzz_ng/src/hb-ot-shape.cc
f0010dfd01ef4a927b0bdc175dd4e343a8637174 22-Jul-2015 Behdad Esfahbod <behdad@behdad.org> [ot] Hide default-ignorables before finishing off positioning

For example, fixes the following sequence with Arial XP:
628 25cc 651 25cc 64e 3a 20 628 651 34f 64e
628 25cc 64e 25cc 651 3a 20 628 64e 34f 651

Discovered as part of:
https://bugs.freedesktop.org/show_bug.cgi?id=85873
/external/harfbuzz_ng/src/hb-ot-shape.cc
376d587f36b4ff10342ee6ca3bacd73532ea44c8 22-Jul-2015 Behdad Esfahbod <behdad@behdad.org> Implement more granular cluster-merging

TODO: Documentation.

Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=71445
/external/harfbuzz_ng/src/hb-ot-shape.cc
a60e2cfa395718cde48eb81f43adc27b4a92e117 22-Jul-2015 Behdad Esfahbod <behdad@behdad.org> [ot] Don't rely on cluster numbers for ensure_native_direction()
/external/harfbuzz_ng/src/hb-ot-shape.cc
701112dad9f6e690b253f1e64f4e7e549f5ae65f 22-Jul-2015 Behdad Esfahbod <behdad@behdad.org> [ot] Simplify form_clusters()
/external/harfbuzz_ng/src/hb-ot-shape.cc
7b8b63adc5e0389fc4cf2720ef7e5804ab6c29cc 22-Jul-2015 Behdad Esfahbod <behdad@behdad.org> [ot] Don't mirror character if font doesn't support mirrored character!
/external/harfbuzz_ng/src/hb-ot-shape.cc
8e545d59610211261e684c10158b9e5df6fae24d 23-Jun-2015 ThePhD <phdofthehouse@gmail.com> Fix all VC++ warnings and errors in the current commit's builds.
/external/harfbuzz_ng/src/hb-ot-shape.cc
5f13bbd9d4b0970851626e2ce3cf4ecb3cfde801 19-Jun-2015 Behdad Esfahbod <behdad@behdad.org> When removing default-ignorables, merge clusters

Fixes test-shape, and:
https://code.google.com/p/chromium/issues/detail?id=497578
/external/harfbuzz_ng/src/hb-ot-shape.cc
82b521aeb7cc73879b44ca4278d6fa8b4347527f 19-Jun-2015 Behdad Esfahbod <behdad@behdad.org> Rewrite hide_default_ignorables

Separate the loops for the two cases of replacing with space
and deleting. For deleting, use the out-buffer machinery.

Needed for upcoming cluster merge fix.
/external/harfbuzz_ng/src/hb-ot-shape.cc
01c3a88543850c87483fd8671044df53b368c520 01-Jun-2015 Sascha Brawer <sascha@brawer.ch> Fix "Since:" tags

Based on data from http://upstream-tracker.org/versions/harfbuzz.html
Resolves #103
/external/harfbuzz_ng/src/hb-ot-shape.cc
982d94eaa2a377616f22f39427e5ed9f1ce43263 28-Jan-2015 Behdad Esfahbod <behdad@behdad.org> [coretext] Don't generate notdef glyph for default-ignorables

As discovered on Chrome Mac:
https://code.google.com/p/chromium/issues/detail?id=452326
/external/harfbuzz_ng/src/hb-ot-shape.cc
8f3eebf7ee4005f9a8efaafcb7f4058cc0a3756e 02-Aug-2014 Behdad Esfahbod <behdad@behdad.org> Make sure gsubgpos buffer vars are available during fallback_position

Add buffer var allocation asserts to a few key places.
/external/harfbuzz_ng/src/hb-ot-shape.cc
2053f369f84676f197ac41ea654a318c48922abd 02-Aug-2014 Behdad Esfahbod <behdad@behdad.org> Disable 'liga' for vertical text

The reason we turned it on is because Kazuraki uses it. But that's
not reason enough. Until the OpenType spec gets its act together re
adding design-direction to lookups, this is better user experience.
/external/harfbuzz_ng/src/hb-ot-shape.cc
763e5466c0a03a7c27020e1e2598e488612529a7 02-Aug-2014 Behdad Esfahbod <behdad@behdad.org> Make it easier to use HB_BUFFER_FLAG_BOT/EOT

Previously, we expected users to provide BOT/EOT flags when the
text *segment* was at paragraph boundaries. This meant that for
clients that provide full paragraph to HarfBuzz (eg. Pango), they
had code like this:

hb_buffer_set_flags (hb_buffer,
(item_offset == 0 ? HB_BUFFER_FLAG_BOT : 0) |
(item_offset + item_length == paragraph_length ?
HB_BUFFER_FLAG_EOT : 0));

hb_buffer_add_utf8 (hb_buffer,
paragraph_text, paragraph_length,
item_offset, item_length);

After this change such clients can simply say:

hb_buffer_set_flags (hb_buffer,
HB_BUFFER_FLAG_BOT | HB_BUFFER_FLAG_EOT);

hb_buffer_add_utf8 (hb_buffer,
paragraph_text, paragraph_length,
item_offset, item_length);

Ie, HarfBuzz itself checks whether the segment is at the beginning/end
of the paragraph. Clients that only pass item-at-a-time to HarfBuzz
continue not setting any flags whatsoever.

Another way to put it is: if there's pre-context text in the buffer,
HarfBuzz ignores the BOT flag. If there's post-context, it ignores
EOT flag.
/external/harfbuzz_ng/src/hb-ot-shape.cc
595d2b96c37de8147489dc5e0ddcc4ab1ad3eea9 27-Jul-2014 Behdad Esfahbod <behdad@behdad.org> Minor
/external/harfbuzz_ng/src/hb-ot-shape.cc
7cd33f230441093dbfb1fec48f8c580ee8d9ef71 17-Jul-2014 Behdad Esfahbod <behdad@behdad.org> Micro optimization
/external/harfbuzz_ng/src/hb-ot-shape.cc
3b861421a772f52eb232ff93bd74b5a8214801ec 16-Jul-2014 Behdad Esfahbod <behdad@behdad.org> Fix Mongolian Variation Selectors for fonts without GDEF

Originally we fixed those in 79d1007a501fd63c0ba4d51038c513e6b8b94740.
However, fonts like MongolianWhite don't have GDEF, but have IgnoreMarks
in their LigatureSubstitute init/etc features. We were synthesizing a
GDEF class of mark for Mongolian Variation Selectors and as such the
ligature lookups where not matching. Uniscribe doesn't do that.

I tried with more sophisticated fixes, like, if there is no GDEF and
a lookup-flag mismatch happens, instead of rejecting a match, try
skipping that glyph. That surely produces some interesting behavior,
but since we don't want to support fonts missing GDEF more than we have
to, I went for this simpler fix which is to always mark
default-ignorables as base when synthesizing GDEF.

Micro-test added.

Fixes rest of https://bugs.freedesktop.org/show_bug.cgi?id=65258
/external/harfbuzz_ng/src/hb-ot-shape.cc
878a25375b2fdf64cf0cc30c23fca9fcd58548e8 16-Jul-2014 Behdad Esfahbod <behdad@behdad.org> Minor
/external/harfbuzz_ng/src/hb-ot-shape.cc
ec181e50140fc65b32d6080e2f7f73bbe0269ba9 16-Jul-2014 Behdad Esfahbod <behdad@behdad.org> Minor moving around
/external/harfbuzz_ng/src/hb-ot-shape.cc
7627100f428ac0ec8509d961d368d2d25d8f0b6e 11-Jul-2014 Behdad Esfahbod <behdad@behdad.org> Mark unsigned integer literals with the u suffix

Simplifies hb_in_range() calls as the type can be inferred.
The rest is obsessiveness, I admit.
/external/harfbuzz_ng/src/hb-ot-shape.cc
798e4185bc71b1a63528e6b0af236d4c964ec607 10-Jun-2014 Jonathan Kew <jfkthame@gmail.com> When zeroing mark widths for LTR, also adjust offset...

...so that they overstrike preceding glyph.

https://github.com/behdad/harfbuzz/pull/43
/external/harfbuzz_ng/src/hb-ot-shape.cc
8de20b1e8a1c4d2081f64e695045e6e4da7ce144 02-Jan-2014 Behdad Esfahbod <behdad@behdad.org> Add font->has_glyph()
/external/harfbuzz_ng/src/hb-ot-shape.cc
5497a8a274a7066c0230c850baadef681785c8bb 23-Dec-2013 Behdad Esfahbod <behdad@behdad.org> Cache various masks on the shape plan
/external/harfbuzz_ng/src/hb-ot-shape.cc
a7e8bbb080aef318b16750ca1771d0d3af3d0ae9 23-Dec-2013 Behdad Esfahbod <behdad@behdad.org> Minor fraction mask setting improvement
/external/harfbuzz_ng/src/hb-ot-shape.cc
76fff252a96b4357b5e71694d5201daef822aa60 22-Dec-2013 Behdad Esfahbod <behdad@behdad.org> Don't form fractions if only one of numr/dnom exist
/external/harfbuzz_ng/src/hb-ot-shape.cc
3aeee519f0b82df5263974945ae852badc4dbded 22-Dec-2013 Behdad Esfahbod <behdad@behdad.org> Bug 72698 - Automatically support frac / numr / dnom

When seeing U+2044 FRACTION SLASH in the text, find decimal
digits (Unicode General Category Decimal_Number) around it,
and mark the pre-slash digits with 'numr' feature, the post-slash
digits with 'dnom' feature, and the whole sequence with 'frac'
feature.

This beautifully renders fractions with major Windows fonts,
and any other font that implements those features (numr/dnom is
enough for most fonts.)

Not the fastest way to do this, but good enough for a start.
/external/harfbuzz_ng/src/hb-ot-shape.cc
739325178aba00ea5526c6a54ce588a79e5d45e2 21-Dec-2013 Behdad Esfahbod <behdad@behdad.org> Initialize masks before mirroring

We were throwing away the rtlm feature mask set during
mirroring...
/external/harfbuzz_ng/src/hb-ot-shape.cc
71b4c999a511bf018acaf48a45e070470c0daf12 28-Oct-2013 Behdad Esfahbod <behdad@behdad.org> Revert "Zero marks by GDEF for Tibetan"

This reverts commit d5bd0590ae2fbc7b0dee86385a565aef00ffb835.

The reasoning behind that logic was flawed and made under
a misunderstanding of the original problem, and caused
regressions as reported by Jonathan Kew in thread titled
"tibetan marks" in Oct 2013. Apparently I have had fixed
the original problem with this commit:

7e08f1258da229dfaf7e1c4b5c41e5bb83906cb0

So, revert the faulty commit and everything seems to be in good
shape.
/external/harfbuzz_ng/src/hb-ot-shape.cc
ac8cd511911c7dca6222d14fa758bff75d601567 18-Oct-2013 Behdad Esfahbod <behdad@behdad.org> Refactor
/external/harfbuzz_ng/src/hb-ot-shape.cc
d5bd0590ae2fbc7b0dee86385a565aef00ffb835 18-Oct-2013 Behdad Esfahbod <behdad@behdad.org> Zero marks by GDEF for Tibetan

See:
http://lists.freedesktop.org/archives/harfbuzz/2013-April/003101.html
/external/harfbuzz_ng/src/hb-ot-shape.cc
a1f7b2856184959e965c9c2b80363f9f46d486a7 18-Oct-2013 Behdad Esfahbod <behdad@behdad.org> [otlayout] Switch over from old is_a_ligature() to IS_LIGATED

Impact should be minimal and positive.
/external/harfbuzz_ng/src/hb-ot-shape.cc
101303dbf7cf15d044bf2518f14b3aec65970fea 18-Oct-2013 Behdad Esfahbod <behdad@behdad.org> [otlayout] More shuffling around
/external/harfbuzz_ng/src/hb-ot-shape.cc
91689de2603e4151e2a2d3a3852c61667f0c6264 18-Oct-2013 Behdad Esfahbod <behdad@behdad.org> [otlayout] Add _hb_glyph_info_set_glyph_props()

No functional change.
/external/harfbuzz_ng/src/hb-ot-shape.cc
3ddf892b5328b74afb6e7d9da727d8771ca5d288 18-Oct-2013 Behdad Esfahbod <behdad@behdad.org> [otlayout] Renaming
/external/harfbuzz_ng/src/hb-ot-shape.cc
3d2c4f0c2ff8fab4262988aad65b170e5b479b20 27-Sep-2013 Behdad Esfahbod <behdad@behdad.org> Fix hiding of default_ignorables if font doesn't have space glyph

Based on patch from Jonathan Kew. See discussion on the list.
/external/harfbuzz_ng/src/hb-ot-shape.cc
4b011094d5e90cf93df2891e47aeab1bffad5bbf 14-Sep-2013 Behdad Esfahbod <behdad@behdad.org> Move code around

I believe I didn't break anything...
/external/harfbuzz_ng/src/hb-ot-shape.cc
d71c0df2d17f4590d5611239577a6cb532c26528 09-Aug-2013 Behdad Esfahbod <behdad@behdad.org> Remove vrt2, vkrn, vpal, and valt from default vertical features

See thread by John Dagget on the list.
/external/harfbuzz_ng/src/hb-ot-shape.cc
d785fa0c45f7f25f5e5f352b933a5f6fa29be5c0 20-May-2013 Behdad Esfahbod <behdad@behdad.org> Minor refactoring
/external/harfbuzz_ng/src/hb-ot-shape.cc
127daf15e0b2f509ebd29a104236c8b38884efb0 20-May-2013 Behdad Esfahbod <behdad@behdad.org> Arabic mark width-zeroing regression

Mozilla Bug 873902 - Display Arabic text with diacritics is bad
https://bugzilla.mozilla.org/show_bug.cgi?id=873902
/external/harfbuzz_ng/src/hb-ot-shape.cc
ba87b8fc89bf745068ccd19264a2631ea0904846 21-Feb-2013 Behdad Esfahbod <behdad@behdad.org> Move code around
/external/harfbuzz_ng/src/hb-ot-shape.cc
c462b32dcb883a7aca066af24c4d28c7a2b7fa28 15-Feb-2013 Behdad Esfahbod <behdad@behdad.org> Disable automatic segment properties guessing

Before, if one called hb_shape() without setting script, language, and
direction on the buffer, hb_shape() was calling
hb_buffer_guess_segment_properties() on the user's behalf to guess
these.

This is very dangerous, since any serious user of HarfBuzz must set
these properly (specially important is direction). So now, we don't
guess properties by default. People not setting direction will get
an abort() now. If the old behavior is desired (fragile, good for
simple testing only), users can call
hb_buffer_guess_segment_properties() on the buffer just before calling
hb_shape().
/external/harfbuzz_ng/src/hb-ot-shape.cc
038c98f6866fe1177b04bd2ae3bb461b2f0fd1ed 15-Feb-2013 Behdad Esfahbod <behdad@behdad.org> Allow disabling of TrueType kerning

Responds to the same feature tag that GPOS kerning does:
'kern' for horizontal and 'vkrn' for vertical.
/external/harfbuzz_ng/src/hb-ot-shape.cc
ee9c3a17d0bf263c5eee479fd778db97cff8e189 15-Feb-2013 Behdad Esfahbod <behdad@behdad.org> Minor refactoring
/external/harfbuzz_ng/src/hb-ot-shape.cc
ec5448667b30ad662401c2b4f5fc0da524c013fd 14-Feb-2013 Behdad Esfahbod <behdad@behdad.org> Add hb_ot_map_feature_flags_t

Code cleanup. No (intended) functional change.
/external/harfbuzz_ng/src/hb-ot-shape.cc
e7ffcfafb1108801ac504f18f820e497226bf07f 14-Feb-2013 Behdad Esfahbod <behdad@behdad.org> Clean-up add_bool_feature
/external/harfbuzz_ng/src/hb-ot-shape.cc
0291a6528685f1f593707655943fb2360579cb9e 13-Feb-2013 Behdad Esfahbod <behdad@behdad.org> Further adjust mark advance zeroing

This is a followup to 568000274c8edb5f41bc4f876ce21fcc8bdaeed8.
Looks like in the Latin shaper, Uniscribe zeroes all Unicode NSM
advances *after* GPOS, not before. Match that.

Can be tested using DejaVu Sans Mono, since that font has GPOS
rules to zero the mark advances on its own.
/external/harfbuzz_ng/src/hb-ot-shape.cc
568000274c8edb5f41bc4f876ce21fcc8bdaeed8 12-Feb-2013 Behdad Esfahbod <behdad@behdad.org> Adjust mark advance-width zeroing logic for Myanmar

Before, we were zeroing advance width of attached marks for
non-Indic scripts, and not doing it for Indic.

We have now three different behaviors, which seem to better
reflect what Uniscribe is doing:

- For Indic, no explicit zeroing happens whatsoever, which
is the same as before,

- For Myanmar, zero advance width of glyphs marked as marks
*in GDEF*, and do that *before* applying GPOS. This seems
to be what the new Win8 Myanmar shaper does,

- For everything else, zero advance width of glyphs that are
from General_Category=Mn Unicode characters, and do so
before applying GPOS. This seems to be what Uniscribe does
for Latin at least.

With these changes, positioning of all tests matches for Myanmar,
except for the glitch in Uniscribe not applying 'mark'. See preivous
commit.
/external/harfbuzz_ng/src/hb-ot-shape.cc
51bb498b7b07bff4a447405b72f09b68d07a3e95 16-Nov-2012 Behdad Esfahbod <behdad@behdad.org> Minor
/external/harfbuzz_ng/src/hb-ot-shape.cc
5a08ecf9200a6ac9b4ebb7ec5c13dcb42d8820ce 16-Nov-2012 Behdad Esfahbod <behdad@behdad.org> Implement hb_ot_layout_get_glyph_class()
/external/harfbuzz_ng/src/hb-ot-shape.cc
eba312c8d1b2bbe8cb9b6414e843e78d2c521aa4 16-Nov-2012 Behdad Esfahbod <behdad@behdad.org> Plumbing to get shape plan and font into complex decompose function

So we can handle Sinhala split matras smartly... Coming soon.
/external/harfbuzz_ng/src/hb-ot-shape.cc
3f82f8ff07a9d16a7c047129658c1bbedfdb5436 16-Nov-2012 Behdad Esfahbod <behdad@behdad.org> Rename hb_buffer_guess_properties() to hb_buffer_guess_segment_properties()
/external/harfbuzz_ng/src/hb-ot-shape.cc
f30641038ba96e83950729b1bd9d86d2e98e46c5 16-Nov-2012 Behdad Esfahbod <behdad@behdad.org> Bunch of independent changes (ouch)

API additions:

hb_segment_properties_t
HB_SEGMENT_PROPERTIES_DEFAULT
hb_segment_properties_equal()
hb_segment_properties_hash()

hb_buffer_set_segment_properties()
hb_buffer_get_segment_properties()

hb_ot_layout_glyph_class_t

hb_shape_plan_t
hb_shape_plan_create()
hb_shape_plan_create_cached()
hb_shape_plan_get_empty()
hb_shape_plan_reference()
hb_shape_plan_destroy()
hb_shape_plan_set_user_data()
hb_shape_plan_get_user_data()
hb_shape_plan_execute()

hb_ot_shape_plan_collect_lookups()

API changes:

Rename hb_ot_layout_feature_get_lookup_indexes() to
hb_ot_layout_feature_get_lookups().

New header file:

hb-shape-plan.h

And a bunch of prototyped but not implemented stuff. Coming soon.
(Tests fail because of the prototypes right now.)
/external/harfbuzz_ng/src/hb-ot-shape.cc
aec89de5641fbe1c3031d63dd5f40ec99bf2a538 16-Nov-2012 Behdad Esfahbod <behdad@behdad.org> Add / modify set API a bit
/external/harfbuzz_ng/src/hb-ot-shape.cc
865745b5b87236651f5663cae3461db9cb505eed 14-Nov-2012 Behdad Esfahbod <behdad@behdad.org> Don't do fallback positioning for Indic and Thai shapers
/external/harfbuzz_ng/src/hb-ot-shape.cc
0c7df2222862122ebbdc8665a21d6771ef5e0252 13-Nov-2012 Behdad Esfahbod <behdad@behdad.org> Add buffer flags

New API:

hb_buffer_flags_t

HB_BUFFER_FLAGS_DEFAULT
HB_BUFFER_FLAG_BOT
HB_BUFFER_FLAG_EOT
HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES

hb_buffer_set_flags()
hb_buffer_get_flags()

We use the BOT flag to decide whether to insert dottedcircle if the
first char in the buffer is a combining mark.

The PRESERVE_DEFAULT_IGNORABLES flag prevents removal of characters like
ZWNJ/ZWJ/...
/external/harfbuzz_ng/src/hb-ot-shape.cc
0736915b8ed789a209205fec762997af3a8af89c 13-Nov-2012 Behdad Esfahbod <behdad@behdad.org> [Indic] Decompose Sinhala split matras the way old HarfBuzz / Pango did

Had to do some refactoring to make this happen...

Under uniscribe bug compatibility mode, we still plit them
Uniscrie-style, but Jonathan and I convinced ourselves that there is no
harm doing this the Unicode way. This change makes that happen, and
unbreaks free Sinhala fonts.
/external/harfbuzz_ng/src/hb-ot-shape.cc
9b37b4c5800b158f61602d2aba8a01349e24d251 13-Nov-2012 Behdad Esfahbod <behdad@behdad.org> Make planner available to complex shaper choosing logic
/external/harfbuzz_ng/src/hb-ot-shape.cc
cf3afd8979b1db76d437f428cbd51cb363e0d18e 26-Oct-2012 Behdad Esfahbod <behdad@behdad.org> Rename and revamp is_zero_width() to be is_default_ignorable()

That's really the logic desired. Except that MONGOLIAN VOWEL SEPARATOR
is not default_ignorable but it really should be. Reported to Unicode.

Based on suggestion from Konstantin Ritt.
/external/harfbuzz_ng/src/hb-ot-shape.cc
fecdfa95daf4916695f23e7dab89ab363be11b89 07-Oct-2012 Behdad Esfahbod <behdad@behdad.org> Fixup hb_ot_shape_closure()

Broke it when merged cmap mapping and normalizer. Ouch!
/external/harfbuzz_ng/src/hb-ot-shape.cc
f2eb3fa9dca8d21fae20c9b9dddad3245df74a05 26-Sep-2012 Behdad Esfahbod <behdad@behdad.org> [OT] Only insert dottedcircle if at the beginning of paragraph

If the first char in the run is a combining mark, but there is text
before the run, don't insert dottedcircle.

Part of addressing:
https://bugzilla.redhat.com/show_bug.cgi?id=858736
/external/harfbuzz_ng/src/hb-ot-shape.cc
028a1706f898bfcee0d14acfba47ebe1de09f0c4 06-Sep-2012 Behdad Esfahbod <behdad@behdad.org> Refactor common macro
/external/harfbuzz_ng/src/hb-ot-shape.cc
fabd3113a98c5f4114f48920fa7ea38bd65a8d32 06-Sep-2012 Behdad Esfahbod <behdad@behdad.org> [OT] Port Arabic fallback shaping to synthetic GSUB

All of init/medi/fina/isol and rlig implemented.

Let there be dragons... ⻯
/external/harfbuzz_ng/src/hb-ot-shape.cc
6912e476dd92639c3ddf07ca51c8d4a262c8b3a5 02-Sep-2012 Behdad Esfahbod <behdad@behdad.org> [OT] Insert dotted-circle for run-initial marks

Unfortunately if the font has GPOS and 'mark' feature does
not position mark on dotted-circle, our inserted dotted-circle
will not get the mark repositioned to itself. Uniscribe cheats
here.

If there is no GPOS however, the fallback positioning kicks in
and sorts this out.

I'm not willing to address the first case.
/external/harfbuzz_ng/src/hb-ot-shape.cc
3992b5ec4cb43d114d87ff7ee2b992bcf819c9cd 02-Sep-2012 Behdad Esfahbod <behdad@behdad.org> Move code around
/external/harfbuzz_ng/src/hb-ot-shape.cc
784f29d061a2939562eca0c4943feb01174aee00 31-Aug-2012 Behdad Esfahbod <behdad@behdad.org> Minor
/external/harfbuzz_ng/src/hb-ot-shape.cc
0ccf9b64736559a230425fd131c9eb8aa3048221 29-Aug-2012 Behdad Esfahbod <behdad@behdad.org> Move code around
/external/harfbuzz_ng/src/hb-ot-shape.cc
2fcbbdb41a322f54b61d9ce983ab54434504c5ed 29-Aug-2012 Behdad Esfahbod <behdad@behdad.org> Port Arabic fallback ligating to share code with GSUB

This will eventually allow us to skip marks, as well as (fallback)
attach marks to ligature components of fallback-shaped Arabic.
That would be pretty cool. I kludged GDEF props in, so mark-skipping
works, but the produced ligature id/components will be cleared later
by substitute_start() et al.

Perhaps using a synthetic table for Arabic fallback shaping was a better
idea. The current approach has way too many layering violations...
/external/harfbuzz_ng/src/hb-ot-shape.cc
9f9f04c2229227bb0712166e824157bbbf5cef80 12-Aug-2012 Behdad Esfahbod <behdad@behdad.org> [OT] Unbreak Thai shaping and fallback Arabic shaping

The merger of normalizer and glyph-mapping broke shapers that
modified text stream. Unbreak them by adding a new preprocess_text
shaping stage that happens before normalizing/cmap and disallow
setup_mask modification of actual text.
/external/harfbuzz_ng/src/hb-ot-shape.cc
07d682806349aee81f53114778ce0beb23909ed7 10-Aug-2012 Behdad Esfahbod <behdad@behdad.org> Minor
/external/harfbuzz_ng/src/hb-ot-shape.cc
b00321ea78793d9b3592b5173a9800e6322424fe 10-Aug-2012 Behdad Esfahbod <behdad@behdad.org> [OT] Avoid calling get_glyph() twice

Essentially move the glyph mapping to normalization process.
The effect on Devanagari is small (but observable). Should be more
observable in simple text, like ASCII.
/external/harfbuzz_ng/src/hb-ot-shape.cc
12c0875eafa4bd92db650e5acca046d99594d1e6 10-Aug-2012 Behdad Esfahbod <behdad@behdad.org> [OT] Remove redundant check
/external/harfbuzz_ng/src/hb-ot-shape.cc
5c60b70c89b4e0a6512d9fd1ab5394dd76feb742 10-Aug-2012 Behdad Esfahbod <behdad@behdad.org> [OT] More code shuffling around

Preparing for merging map_glyphs() and normalize().
/external/harfbuzz_ng/src/hb-ot-shape.cc
a02d86484be870615297abfc7be9f94645434762 09-Aug-2012 Behdad Esfahbod <behdad@behdad.org> Add check-exported-symbols.sh

And misc linking fixes.
/external/harfbuzz_ng/src/hb-ot-shape.cc
4c8ac4f47e95d2b266b2f64e75c55af8233b6b91 08-Aug-2012 Behdad Esfahbod <behdad@behdad.org> Misc minor fixes
/external/harfbuzz_ng/src/hb-ot-shape.cc
9c929abdcfef44c0193a2917b20981df37ade21c 08-Aug-2012 Behdad Esfahbod <behdad@behdad.org> Minor renaming
/external/harfbuzz_ng/src/hb-ot-shape.cc
affaf8a0e5aa38e5820455f789eebf916e02eb7b 08-Aug-2012 Behdad Esfahbod <behdad@behdad.org> [OT] Start adding fallback positioning

Used when there is no GPOS.
/external/harfbuzz_ng/src/hb-ot-shape.cc
7e4920fd1577987bf6804f67765e22a84983e057 08-Aug-2012 Behdad Esfahbod <behdad@behdad.org> Minor
/external/harfbuzz_ng/src/hb-ot-shape.cc
f4e48adcdd4315ce09e755f87a0f801d88194f42 08-Aug-2012 Behdad Esfahbod <behdad@behdad.org> [OT] Apply 'rclt' feature in horizontal mode

'rclt' is "Required Contextual Forms" being proposed by Microsoft.
It's like 'calt', but supposedly always on. We apply 'calt' anyway,
and now apply this too.
/external/harfbuzz_ng/src/hb-ot-shape.cc
71baea0062da4d7f143d62da38492a0813814e49 04-Aug-2012 Behdad Esfahbod <behdad@behdad.org> [OT] Use general-category, not GDEF class, to decide to zero mark advances

At this point, the GDEF glyph synthesis looks pointless. Not that I
have many fonts without GDEF lying around.

As for mark advance zeroing when GPOS not available, that also is being
replaced by proper fallback mark positioning soon.
/external/harfbuzz_ng/src/hb-ot-shape.cc
a8c6da90f4c6e8d27a3a1b758a55476776d9f750 02-Aug-2012 Behdad Esfahbod <behdad@behdad.org> [OT] Add per-complex-shaper shape_plan data

Hookup some Indic data to it. More to come.
/external/harfbuzz_ng/src/hb-ot-shape.cc
8bb5deba9630d35878eb6edb4643ecfabf99f15f 02-Aug-2012 Behdad Esfahbod <behdad@behdad.org> [OT] Pipe shape_plan down to pause_callbacks
/external/harfbuzz_ng/src/hb-ot-shape.cc
16c6a27b4bffc19026944c7bea9cf0a3a8ff1d8f 02-Aug-2012 Behdad Esfahbod <behdad@behdad.org> [OT] Port complex_shaper to planner/plan
/external/harfbuzz_ng/src/hb-ot-shape.cc
5393e3a62ba09fd7bcf3767b36225c8f49badb9d 02-Aug-2012 Behdad Esfahbod <behdad@behdad.org> [OT] Minor refactoring
/external/harfbuzz_ng/src/hb-ot-shape.cc
afbcc24be01a64bdb5c05c63880269145fa1d3c8 02-Aug-2012 Behdad Esfahbod <behdad@behdad.org> [GSUB] Wire the font, not just the face, down to substitute()

We need the font for glyph lookup during GSUB pauses in Indic shaper.
Could perhaps be avoided, but at this point, we don't mean to support
separate substitute()/position() entry points (anymore), so there is
no point in not providing the font to GSUB.
/external/harfbuzz_ng/src/hb-ot-shape.cc
8fbfda920e0b3bb4ab7afb732826026964b79be9 02-Aug-2012 Behdad Esfahbod <behdad@behdad.org> Inline font getters
/external/harfbuzz_ng/src/hb-ot-shape.cc
208f70f0553d73d2908b21b9552298029482a8b9 01-Aug-2012 Behdad Esfahbod <behdad@behdad.org> Inline Unicode callbacks internally
/external/harfbuzz_ng/src/hb-ot-shape.cc
1e7d860613032e40a3f90e2caa2ee5ac44ab8c8c 01-Aug-2012 Behdad Esfahbod <behdad@behdad.org> [GPOS] Adjust mark advance-width zeroing logic

If there is no GPOS, zero mark advances.

If there *is* GPOS and the shaper requests so, zero mark advances for
attached marks.

Fixes regression with Tibetan, where the font has GPOS, and marks a
glyph as mark where it shouldn't get zero advance.
/external/harfbuzz_ng/src/hb-ot-shape.cc
2bc3b9a616cedbc56ff4a915f9e3439ff3a6bf13 01-Aug-2012 Behdad Esfahbod <behdad@behdad.org> [OT] Zero mark advances if the shaper desires so

Enabled for all shapers except for Indic.
/external/harfbuzz_ng/src/hb-ot-shape.cc
5fecd8b0355894ceda14b3d3c654f20c3d5e77f4 01-Aug-2012 Behdad Esfahbod <behdad@behdad.org> [OT] Synthesize glyph classes
/external/harfbuzz_ng/src/hb-ot-shape.cc
693918ef8541014a5ef7dfb91c6ea0ae36d9c368 31-Jul-2012 Behdad Esfahbod <behdad@behdad.org> [OT] Streamline complex shaper enumeration

Add a shaper class struct.
/external/harfbuzz_ng/src/hb-ot-shape.cc
05bd1b63426e07d1df7a1b40bf845dc94ab995a8 31-Jul-2012 Behdad Esfahbod <behdad@behdad.org> [GSUB/GPOS] Move glyph props matching around
/external/harfbuzz_ng/src/hb-ot-shape.cc
7e34601dededd521bcef15111e39293df3d0d13d 30-Jul-2012 Behdad Esfahbod <behdad@behdad.org> Unbreak Hangul jamo composition

When we removed the separate Hangul shaper, the specific normalization
preference of Hangul was lost. Fix that. Also, the Thai shaper was
copied from Hangul, so had the fully-composed normalization behavior,
which was unnecessary. So, fix that too.
/external/harfbuzz_ng/src/hb-ot-shape.cc
4ba647eecf0f70917ac4229af1f2dd3c62fcb7d5 30-Jul-2012 Behdad Esfahbod <behdad@behdad.org> Fix leak
/external/harfbuzz_ng/src/hb-ot-shape.cc
e82061e8db922f0ddbefd5a184ee2f9f967b9a05 27-Jul-2012 Behdad Esfahbod <behdad@behdad.org> Move ot shaper completely to shape_plan
/external/harfbuzz_ng/src/hb-ot-shape.cc
ea278d3895fe0c92801d692cd71d8d9f1de7c048 27-Jul-2012 Behdad Esfahbod <behdad@behdad.org> Partially switch ot shaper to shape_plan
/external/harfbuzz_ng/src/hb-ot-shape.cc
5b95c148cc485f79fd7018bc4520b4cb5f728a18 27-Jul-2012 Behdad Esfahbod <behdad@behdad.org> Start implementing shape_plan
/external/harfbuzz_ng/src/hb-ot-shape.cc
bd26b4d21f59312805d294f46f15182adbcc47da 27-Jul-2012 Behdad Esfahbod <behdad@behdad.org> Minor
/external/harfbuzz_ng/src/hb-ot-shape.cc
027857d0412477fb4427dcb8a8c45287c272e143 26-Jul-2012 Behdad Esfahbod <behdad@behdad.org> Start adding a unified shaper access infrastructure

Add global shape_plan. Unused so far.
/external/harfbuzz_ng/src/hb-ot-shape.cc
b70021f7c81a0ed08475b14b07291f662cd9f905 24-Jul-2012 Behdad Esfahbod <behdad@behdad.org> When removing zero-width marks, don't remove ligatures

If a mark ligated, it probably should NOT be removed.
/external/harfbuzz_ng/src/hb-ot-shape.cc
d96838ef951ce6170eb2dc576ebcba2262cf7008 17-Jul-2012 Behdad Esfahbod <behdad@behdad.org> Allow complex shapers overriding common features

In a new callback... Currently unused by all complex shapers.
/external/harfbuzz_ng/src/hb-ot-shape.cc
330a2af3ff0e12c01b3b451357b8bdc83b2e9b47 09-Jun-2012 Behdad Esfahbod <behdad@behdad.org> Use merge_clusters when forming Unicode clusters
/external/harfbuzz_ng/src/hb-ot-shape.cc
5f68f8675e5ccaee91f5a90d86bc3b022b9a54e4 09-Jun-2012 Behdad Esfahbod <behdad@behdad.org> Minor
/external/harfbuzz_ng/src/hb-ot-shape.cc
0594a2448440208efa0acac9a5d8d52d43108289 06-Jun-2012 Behdad Esfahbod <behdad@behdad.org> Cleanup TRUE/FALSE vs true/false
/external/harfbuzz_ng/src/hb-ot-shape.cc
99c2695759a6af855d565f4994bbdf220570bb48 13-May-2012 Behdad Esfahbod <behdad@behdad.org> Add accessort to buffer for current info, current pos, and prev info
/external/harfbuzz_ng/src/hb-ot-shape.cc
d1deaa2f5bd028e8076265cba92cffa4fa2834ac 09-May-2012 Behdad Esfahbod <behdad@behdad.org> Replace zerowidth invisible chars with a zero-advance space glyph

Like Uniscribe does.
/external/harfbuzz_ng/src/hb-ot-shape.cc
1827dc208c867e433a95237d1ed3fc7a73d1d9a7 24-Apr-2012 Behdad Esfahbod <behdad@behdad.org> Add hb_ot_shape_glyphs_closure()

Experimental API for now.
/external/harfbuzz_ng/src/hb-ot-shape.cc
a4385f0b0a6949e2ce49e6a147ad4beaa724f6c3 24-Apr-2012 Behdad Esfahbod <behdad@behdad.org> Improve clustering
/external/harfbuzz_ng/src/hb-ot-shape.cc
a5f1834f57ea3fb254f5c7d372747de316fcc8f1 16-Apr-2012 Behdad Esfahbod <behdad@behdad.org> Apply 'liga' for vertical writing mode too

Apparently that's what Kazuraki uses to form vertical ligatures,
which suggests that it's what Adobe does.
/external/harfbuzz_ng/src/hb-ot-shape.cc
683b503f30bba29d57a93d7e8ac7138c2e7f49f1 15-Apr-2012 Behdad Esfahbod <behdad@behdad.org> Minor
/external/harfbuzz_ng/src/hb-ot-shape.cc
b9f199c8e38cc5ed0d73845568630f3bcbdd4374 15-Apr-2012 Behdad Esfahbod <behdad@behdad.org> Move code around
/external/harfbuzz_ng/src/hb-ot-shape.cc
d4adade217a61007dd2da5cd9eccf889f79a019a 15-Apr-2012 Behdad Esfahbod <behdad@behdad.org> Add assert
/external/harfbuzz_ng/src/hb-ot-shape.cc
6bd9b479b8b2befbb0847282e93beade197c8038 12-Apr-2012 Behdad Esfahbod <behdad@behdad.org> Hide backend-specific shape functions

Also remove shaper_options argument to hb_shape_full(). That was
unused and for "future". Let it go.

More shaper API coming in preparation for plan/planned API.
/external/harfbuzz_ng/src/hb-ot-shape.cc
0e3361464b00b76aa7375515163e0710a691db0c 12-Apr-2012 Behdad Esfahbod <behdad@behdad.org> Fix bug with not setting Unicode props of the first character

Fixes Mongolian shaping issue:
https://bugs.freedesktop.org/show_bug.cgi?id=45695
/external/harfbuzz_ng/src/hb-ot-shape.cc
acd88e659fdb2fa1cbf7171f0a1c7fbc81b9f298 11-Apr-2012 Behdad Esfahbod <behdad@behdad.org> In Arabic fallback shaping, check that the font has glyph for new char
/external/harfbuzz_ng/src/hb-ot-shape.cc
7752aa73e72301a46c64c533c1e423ff5987cc05 10-Apr-2012 Behdad Esfahbod <behdad@behdad.org> Minor
/external/harfbuzz_ng/src/hb-ot-shape.cc
11138ccff71f442da1fcf64faa0e1d22e083e775 05-Apr-2012 Behdad Esfahbod <behdad@behdad.org> Add normalize mode

In preparation for Hangul shaper.
/external/harfbuzz_ng/src/hb-ot-shape.cc
6769f21d579a354e32577ec57348e97d2cb1b438 05-Apr-2012 Behdad Esfahbod <behdad@behdad.org> More moving code around
/external/harfbuzz_ng/src/hb-ot-shape.cc
0501573deda3a8dcdfcea491392f554f21ed0154 10-Aug-2011 Behdad Esfahbod <behdad@behdad.org> Fix const correctness in the API
/external/harfbuzz_ng/src/hb-ot-shape.cc
02aeca985b570763342c35e99af90025bfa088d5 05-Aug-2011 Behdad Esfahbod <behdad@behdad.org> [API] Changes to main shape API

hb_shape() now accepts a shaper_options and a shaper_list argument.
Both can be set to NULL to emulate previous API. And in most situations
they are expected to be set to NULL.

hb_shape() also returns a boolean for now. If shaper_list is NULL, the
return value can be ignored.

shaper_options is ignored for now, but otherwise it should be a
NULL-terminated list of strings.

shaper_list is a NULL-terminated list of strings. Currently recognized
strings are "ot" for native OpenType Layout implementation, "uniscribe"
for the Uniscribe backend, and "fallback" for the non-complex backend
(that will be implemented shortly). The fallback backend never fails.

The env var HB_SHAPER_LIST is also parsed and honored. It's a
colon-separated list of shaper names. The fallback shaper is invoked if
none of the env-listed shapers succeed.

New API hb_buffer_guess_properties() added.
/external/harfbuzz_ng/src/hb-ot-shape.cc
c605bbbb6d4b2a98b1f40ca818760088d991f7d1 05-Aug-2011 Behdad Esfahbod <behdad@behdad.org> Remove C++ guards from source files

Where causing issues for people with MSVC.
/external/harfbuzz_ng/src/hb-ot-shape.cc
2118fdb9f584e6735e904638e48bae48314372fa 02-Aug-2011 Behdad Esfahbod <behdad@behdad.org> Fix fallback shaping

Broke it a few commits ago.
/external/harfbuzz_ng/src/hb-ot-shape.cc
9f9bcceca6321d5a5812f878de1de39901349a78 28-Jul-2011 Behdad Esfahbod <behdad@behdad.org> Register buffer vars in Indic shaper
/external/harfbuzz_ng/src/hb-ot-shape.cc
b65c06025d2b54a44f716e030d4b10072c65bea8 28-Jul-2011 Behdad Esfahbod <behdad@behdad.org> Formalize buffer var allocations
/external/harfbuzz_ng/src/hb-ot-shape.cc
651e8dd79ec8eaca5ab75a61e8ce961ff7bd26eb 25-Jul-2011 Behdad Esfahbod <behdad@behdad.org> Start cleaning up buffer var allocation

I've messed up a lot of stuff recently, different parts of the
shaping process are stumbling on eachother's toes because
manually tracking what's in which buffer var is hard. I'm
going to add some internal API to track those such that mistakes
are discovered as soon as they are introduced.
/external/harfbuzz_ng/src/hb-ot-shape.cc
c86f932015bdf5803572b0904d343d3bc033e009 25-Jul-2011 Behdad Esfahbod <behdad@behdad.org> Move code around
/external/harfbuzz_ng/src/hb-ot-shape.cc
34c22f816808d061a980cffca12de03beb437fa0 22-Jul-2011 Behdad Esfahbod <behdad@behdad.org> Implement Unicode Canonical Reordering Algorithm
/external/harfbuzz_ng/src/hb-ot-shape.cc
4ff0d2d9dfc4f7e4880a4e964ca9872624508ea0 22-Jul-2011 Behdad Esfahbod <behdad@behdad.org> Decomposition works now!
/external/harfbuzz_ng/src/hb-ot-shape.cc
468e9cb25c9bc14781b7013e447d763f93bf76a3 22-Jul-2011 Behdad Esfahbod <behdad@behdad.org> Move buffer methods into the object
/external/harfbuzz_ng/src/hb-ot-shape.cc
45412523dc295cb5ee12e096bfacb282cc925843 22-Jul-2011 Behdad Esfahbod <behdad@behdad.org> More normalization kick
/external/harfbuzz_ng/src/hb-ot-shape.cc
5d90a342e319068716429bf7af76c3896b61a0e5 21-Jul-2011 Behdad Esfahbod <behdad@behdad.org> Document normalization design
/external/harfbuzz_ng/src/hb-ot-shape.cc
d63adfc7d09b26764d9166da97372b21257e7611 21-Jul-2011 Behdad Esfahbod <behdad@behdad.org> No need to handle variation-selectors seperately, they are GC=Mn
/external/harfbuzz_ng/src/hb-ot-shape.cc
aa7264123a088936f2043b45d4d41ca7413fabe5 21-Jul-2011 Behdad Esfahbod <behdad@behdad.org> Only form clusters if we are reversing

This produces more accurate cluster mappings. Cluster mappings are
minimal now. Combining marks get their own cluster value most of
the time.
/external/harfbuzz_ng/src/hb-ot-shape.cc
5c6f5982d78e2d7fadc2fbb8b4f3a4be9420c59a 21-Jul-2011 Behdad Esfahbod <behdad@behdad.org> Towards normalization
/external/harfbuzz_ng/src/hb-ot-shape.cc
cf7f43ec3382cac2af11f5637c840500daabf889 21-Jul-2011 Behdad Esfahbod <behdad@behdad.org> Remove stale comment
/external/harfbuzz_ng/src/hb-ot-shape.cc
54d1a0d2b2c4ffe15494967122c6422ecb1fc80b 21-Jul-2011 Behdad Esfahbod <behdad@behdad.org> Form clusters before ensuring native direciton

This is essential as ensure_native_direction uses cluster info that
is set by form_clusters().
/external/harfbuzz_ng/src/hb-ot-shape.cc
9111b21ef99d5e53348176f683261b0101eb427f 21-Jul-2011 Behdad Esfahbod <behdad@behdad.org> Add _hb_buffer_output_glyph() and _hb_buffer_skip_glyph()
/external/harfbuzz_ng/src/hb-ot-shape.cc
655586fe5e1fadf2a2ef7826e61ee9a445ffa37a 21-Jul-2011 Behdad Esfahbod <behdad@behdad.org> Towards normalization
/external/harfbuzz_ng/src/hb-ot-shape.cc
49741c86334d12fa08a5bfa2110ff3b9adcba1c7 21-Jul-2011 Behdad Esfahbod <behdad@behdad.org> Include variation-selectors in cluster calculation
/external/harfbuzz_ng/src/hb-ot-shape.cc
4a68684654e645882095c1189477146287ce9437 21-Jul-2011 Behdad Esfahbod <behdad@behdad.org> When forming clusters, participate all mark types
/external/harfbuzz_ng/src/hb-ot-shape.cc
f6fd3780e12b23ff7ed3743497c8996e71dcb064 08-Jul-2011 Behdad Esfahbod <behdad@behdad.org> Let shapers decide when to apply ccmp and locl

Instead of always applying those two features before the complex shaper,
let the complex shaper decide whether they should be applied first.

Also add stub for Indic's final_reordering().
/external/harfbuzz_ng/src/hb-ot-shape.cc
c4641723fbf6532b2e80a662e15573b31276bc73 08-Jul-2011 Behdad Esfahbod <behdad@behdad.org> [API] Add compose() and decompose() unicode funcs, rename other ones

Add compose() and decompose() unicode funcs. These implement
pair-wise canonical composition/decomposition.

The glib/icu implementations are lacking for now. We are adding
API for this to glib, but I cannot find any useful API in ICU.
May end of implementing these in-house.

Changed all unicode_funcs callback names to remove the "_get" part.
Eg, hb_unicode_get_script_func_t is now hb_unicode_script_func_t,
and hb_unicode_get_script() is hb_unicode_script() now.
/external/harfbuzz_ng/src/hb-ot-shape.cc
891c4755baae6cd59fad59d27fd8933e5f548a74 08-Jul-2011 Behdad Esfahbod <behdad@behdad.org> Humm, undo some shuffling

In preparation for adding more advanced unicode funcs.
/external/harfbuzz_ng/src/hb-ot-shape.cc
76f76812ac7cca8ac6935952a2360d5e151480fa 08-Jul-2011 Behdad Esfahbod <behdad@behdad.org> Shuffle code around, remove shape_plan from complex shapers
/external/harfbuzz_ng/src/hb-ot-shape.cc
359dcaa0d33271025ca42a5f54ecbac7ae3b56d3 08-Jul-2011 Behdad Esfahbod <behdad@behdad.org> Update copyright headers
/external/harfbuzz_ng/src/hb-ot-shape.cc
b9452bfc1696457e156e79037c863903da5454fc 14-Jun-2011 Behdad Esfahbod <behdad@behdad.org> Fix compiler warnings with -pedantic
/external/harfbuzz_ng/src/hb-ot-shape.cc
63b177e45c2405272da3fa6c26fe11ae37950bd0 07-Jun-2011 Behdad Esfahbod <behdad@behdad.org> Minor
/external/harfbuzz_ng/src/hb-ot-shape.cc
89a2bc9ba674e7e57fec1fd8ce7648a44f3aab63 31-May-2011 Behdad Esfahbod <behdad@behdad.org> [Vertical] Apply vertical features

We apply all of vert, vrt2, vkrn, valt, and vpal.
/external/harfbuzz_ng/src/hb-ot-shape.cc
90645fb24bcbb78183576d3641a99560d87e49f2 28-May-2011 Behdad Esfahbod <behdad@behdad.org> [OT] Separate map_builder from the actual map

Respectively, separate planner from the actual plan.
/external/harfbuzz_ng/src/hb-ot-shape.cc
376dafa6ed414e368e9dc1d5a2e0bfc8e55f410d 27-May-2011 Behdad Esfahbod <behdad@behdad.org> Hide internal symbols
/external/harfbuzz_ng/src/hb-ot-shape.cc
7403e055cd1463f38215ad9faedd61c3e1b66ac5 25-May-2011 Behdad Esfahbod <behdad@behdad.org> [Vertical] fix vertical gpos

Wow, it took me a few days to find the right fix!

We now set the advance for attached marks to zero, but we
do this in the _finish() state of gpos, so it shouldn't
regress with fonts like DejaVuSansMono that explicitly
decrease the mark advance width to set it to zero.
/external/harfbuzz_ng/src/hb-ot-shape.cc
60fbb36096e344e9af79409ce8cfe3f1f7b0d321 20-May-2011 Behdad Esfahbod <behdad@behdad.org> [Vertical] GPOS is always done with horizontal origin
/external/harfbuzz_ng/src/hb-ot-shape.cc
8b38faeede41e64eb0f6ac2e12ce51dd7138d50a 19-May-2011 Behdad Esfahbod <behdad@behdad.org> More vertical

Starting to get there, but not without yet another round of changes.

I think I know wheere to go now.
/external/harfbuzz_ng/src/hb-ot-shape.cc
7e2c85de305be59e1a6afa7d2061e4b7dd00acf7 17-May-2011 Behdad Esfahbod <behdad@behdad.org> [API] Vertical support, take 2

I like this API *much* better. Implementation still incomplete, but
horizontal works.
/external/harfbuzz_ng/src/hb-ot-shape.cc
744970af4d884cc87ffa645804578fec8df674a9 17-May-2011 Behdad Esfahbod <behdad@behdad.org> [API] Add support for vertical text

Design not final yet, and in fact I'm going to change it immediately,
but this is an standalone change for itself.
/external/harfbuzz_ng/src/hb-ot-shape.cc
0fd8c2f1be693616f19f2f1526369874763d6cf6 12-May-2011 Behdad Esfahbod <behdad@behdad.org> [API] Make get_glyph() callback return a boolean

We need to know whether the glyph exists, so we can fallback to
composing / decomposing. Assuming that glyph==0 means "doesn't exist"
wouldn't work for applications like Pango that want to use different
"doesn't exist" glyph codes for different characters. An explicit
return value fixes that.
/external/harfbuzz_ng/src/hb-ot-shape.cc
e06d4eda7bbdb3a1be1f1ce8d98b059a0730f14d 12-May-2011 Behdad Esfahbod <behdad@behdad.org> Use constructor/destructor for hb_ot_shape_plan_t
/external/harfbuzz_ng/src/hb-ot-shape.cc
6a7ac79e26e85f6781186cf708a12825c0857324 11-May-2011 Behdad Esfahbod <behdad@behdad.org> Plug leaks
/external/harfbuzz_ng/src/hb-ot-shape.cc
a513dbcf73ab1cc39a7c9653034904d0c6cd9fe9 11-May-2011 Behdad Esfahbod <behdad@behdad.org> [API] Change signature of get_contour_point and get_kerning ffuncs

get_contour_point now takes glyph id before point_index.

get_kerning now takes a vector to fill-in.
/external/harfbuzz_ng/src/hb-ot-shape.cc
6843569d2c70c1771ce964e3d1a4cf91e14e7687 05-May-2011 Behdad Esfahbod <behdad@behdad.org> Replace fixed-size feature_maps array with hb_array_t
/external/harfbuzz_ng/src/hb-ot-shape.cc
72657e4ce757dcb055a8db7291b68f96f0d34bfb 03-May-2011 Behdad Esfahbod <behdad@behdad.org> [API] Make hb_font_create() take a face and reference it
/external/harfbuzz_ng/src/hb-ot-shape.cc
2409d5f8d7dd8b535ce5ea29e933f7db27d33793 21-Apr-2011 Behdad Esfahbod <behdad@behdad.org> Update Copyright headers
/external/harfbuzz_ng/src/hb-ot-shape.cc
fb194b8794898f51eb596fa4092c26606889d376 20-Apr-2011 Behdad Esfahbod <behdad@behdad.org> unicode: Cleanup implementation
/external/harfbuzz_ng/src/hb-ot-shape.cc
2fd0c577e322ccbf762927bc4600b3ea31db4c80 20-Apr-2011 Ryan Lortie <desrt@desrt.ca> [API] unicode: rework virtual functions for subclassing

Unicode data providers can now be subclassed, including support for
chain-up. The interface should now be nicely bindable, as well.

Also fix glib unicode funcs that where broken after hb_script_t
changes. Nicely caught by the test-unicode.c added in this commit.
/external/harfbuzz_ng/src/hb-ot-shape.cc
8f0d7e0c3fd4b05c43ac449be4f374dc2dc56127 16-Apr-2011 Behdad Esfahbod <behdad@behdad.org> Remove hb_buffer_clear_positions(), add hb_ot_layout_position_start()
/external/harfbuzz_ng/src/hb-ot-shape.cc
5814dfa3f5aa41bc3df06b78980d57d7bea0ba58 15-Apr-2011 Behdad Esfahbod <behdad@behdad.org> Cosmetic
/external/harfbuzz_ng/src/hb-ot-shape.cc
99b74760a4cddc798ab44b5ca897486bbb9c76d6 11-Apr-2011 Behdad Esfahbod <behdad@behdad.org> Rename hb_category_t to hb_unicode_general_category_t
/external/harfbuzz_ng/src/hb-ot-shape.cc
a71b9c8579d73aea4549f12524bbc2e89f43b5c5 06-Apr-2011 Behdad Esfahbod <behdad@behdad.org> Disable 'cswh' by default except for Arabic shaper

That better matches OpenType spec. Note that we enable it for all
Arabic-shaper scripts. Ie. we enable it by default for Syriac too,
but the SyriacOT spec does not require it. I think this is a more
useful compromise than special-casing for Arabic script alone.
/external/harfbuzz_ng/src/hb-ot-shape.cc
3286fc0e9adc3f2874c9409e7fdb09e4d2b7dda1 16-Mar-2011 Behdad Esfahbod <behdad@behdad.org> Let hb_shape() guess script and direction...

- Rename HB_SCRIPT_INVALID_CODE to HB_SCRIPT_INVALID

- Add HB_DIRECTION_INVALID

- Make hb_script_get_horizontal_direction() public

- Make hb_shape() guess script from buffer text (first non-common
non-inherit script) if buffer script is set to HB_SCRIPT_INVALID (this
is NOT the default.)

- Make hb_shape() guess direction from buffer script if buffer direction
is set to HB_DIRECTION_INVALID (this is NOT the default.)

- Make hb-view.c set INVALID script and direction on the buffer.

The above changes are meant to make hb-view fairly useful for uni-script
uni-direction text. The guessing behavior however is NOT the default of
hb_shape() and must be asked for explicitly. This is intended, because
the guess is not a suitable substitute to full-fledged bidi and script
segmentation. It's just a testing tool.
/external/harfbuzz_ng/src/hb-ot-shape.cc
bbbbe80ec9bc45c5b685bc09c8f993e98496555c 07-Dec-2010 Behdad Esfahbod <behdad@behdad.org> Rename original_direction to target_direction
/external/harfbuzz_ng/src/hb-ot-shape.cc
ee8aaf976a6eb42be49b63b4c51c7a0a338e0298 07-Dec-2010 Behdad Esfahbod <behdad@behdad.org> Fix arabic shaping of LTR text

We should ensure-direction before doing any complex work. The only
exception is mirroring that needs to see the original / final direction,
not the native. Handle that.
/external/harfbuzz_ng/src/hb-ot-shape.cc
3a852ae7fe6edfaadd75625d27515a3689503395 03-Nov-2010 Behdad Esfahbod <behdad@behdad.org> Save general category and combining class in the buffer for reuse
/external/harfbuzz_ng/src/hb-ot-shape.cc
1e7c1fcbc33599faefc32d4a28e5d8506d2c56fa 28-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Move code around
/external/harfbuzz_ng/src/hb-ot-shape.cc
98370e89d1bff248737b482d129c2a4deb8bfd95 27-Oct-2010 Behdad Esfahbod <behdad@behdad.org> WIP removing external synthesized GDEF support and implementing it internally
/external/harfbuzz_ng/src/hb-ot-shape.cc
dd2ffd282c059194fd87fb1664e2e0cdb56a87a0 27-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Minor renaming
/external/harfbuzz_ng/src/hb-ot-shape.cc
248e3c2ba47889c247959e44166644872aed59ba 27-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Oops, remove extra mask setting that broke complex shaping
/external/harfbuzz_ng/src/hb-ot-shape.cc
502f4cba3e0bcd625d31f8fd295b8b18e2d02a5a 27-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Divide get_metrics into get_advance and get_extents

Graphite module not updated.
Bump version to 0.3.
/external/harfbuzz_ng/src/hb-ot-shape.cc
bd7378b2ef9793de4e7f57b920f29f48ac9d0c25 14-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Massage mask setting a bit more

Still finding the exact correct way the masks should be set.
/external/harfbuzz_ng/src/hb-ot-shape.cc
39dede9ffffe732f78cbd092ccb3b48d77ddd66d 13-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Make sure boolean features always use value=1

Previously boolean features turned on the entire feature mask. This is
wrong if feature is Alternate and user has provided values bigger than one.
Though, I don't think other engines support such corner cases.
/external/harfbuzz_ng/src/hb-ot-shape.cc
2989be4919242670c94825bded96db20a7b2035b 13-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Set user masks after complex masks
/external/harfbuzz_ng/src/hb-ot-shape.cc
13403bc67a01e0d4908fb964093fd02ddd11c580 12-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Hookup Arabic shaper!

Not tested yet.
/external/harfbuzz_ng/src/hb-ot-shape.cc
57ac0ecb7843533b2e6e6d6c8a12b2a44437cc1c 12-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Merge clearing masks and setting global masks
/external/harfbuzz_ng/src/hb-ot-shape.cc
fc96596b7c1c4e62491e951a3c256fb00dcde550 12-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Form clusters before setting masks
/external/harfbuzz_ng/src/hb-ot-shape.cc
1e80782244cdb1dedae9d1e61079d0508e57ca72 12-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Clear masks before setting them up, not after!
/external/harfbuzz_ng/src/hb-ot-shape.cc
fd3d32d31cb6d74a9994b6850d539fd0b707d941 12-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Add hb_ot_shape_execute()

Not public yet.
/external/harfbuzz_ng/src/hb-ot-shape.cc
49baa1f69efb0e3c62e45bd59dd88459a84bf390 12-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Add hb_ot_complex_shaper_t stuff and start hooking Arabic shaper up
/external/harfbuzz_ng/src/hb-ot-shape.cc
605ed468f380f86d642031f6451447d270cb6de1 12-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Add hb_ot_shape_plan_t

This is the object that a separate plan/execute shaping API will use in
between the two stages.
/external/harfbuzz_ng/src/hb-ot-shape.cc
895fb5d364e7ae5d9d2e34b9f68b8651804369ef 12-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Refactor, in a different direction
/external/harfbuzz_ng/src/hb-ot-shape.cc
d2ba016ca1ba7489537768b619980d5159b5870c 12-Oct-2010 Behdad Esfahbod <behdad@behdad.org> More refactoring
/external/harfbuzz_ng/src/hb-ot-shape.cc
52601275d5e4000dada4f925fb78723eeeee7bd4 09-Oct-2010 Behdad Esfahbod <behdad@behdad.org> More separation
/external/harfbuzz_ng/src/hb-ot-shape.cc
6b7e6758626268ba1c7c266128e618ec73ae2c0f 09-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Minor
/external/harfbuzz_ng/src/hb-ot-shape.cc
aa9c450bb2d7c3c9e36ea32e3558250391a0582d 09-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Enable 'rtlm' mirroring
/external/harfbuzz_ng/src/hb-ot-shape.cc
36925f695d349a53d52ecc3a58f18240a6977463 09-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Rename hb_mask_allocator_t to hb_ot_map_t

hb_ot_plan_t may be a better name, donno.
/external/harfbuzz_ng/src/hb-ot-shape.cc
4924affe0f0adf75f2a0e2137a71206b0576d63f 09-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Add hb-ot-map-private.hh
/external/harfbuzz_ng/src/hb-ot-shape.cc
b897c607d91d569f4eaa681d1f5b3d9f3d2bb093 09-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Flip the OT bit-allocation vs gsub/gpos inside-out

We now build our entire attack plan before jumping in.
/external/harfbuzz_ng/src/hb-ot-shape.cc
e89b7d2a61b7f58e6c7cec00d5ce2246dee1e8a1 08-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Logically separate feature collection
/external/harfbuzz_ng/src/hb-ot-shape.cc
5b88908f12ad1d828dd6075fb8fc0036c2d6af3a 08-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Minor
/external/harfbuzz_ng/src/hb-ot-shape.cc
5360ce0c5c33f921b3f9ad3f42529a19df5ad0fe 08-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Move some more code around
/external/harfbuzz_ng/src/hb-ot-shape.cc
d9c726078828d50db62e05407a3f38f2e7607533 08-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Minor
/external/harfbuzz_ng/src/hb-ot-shape.cc
efe0d682e860ffd23a1d17c68c8273f17d51c1c9 08-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Simplify compiling lookups
/external/harfbuzz_ng/src/hb-ot-shape.cc
476c94218b4f5b8e119e82b0e10b641e0c10bf56 07-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Rename
/external/harfbuzz_ng/src/hb-ot-shape.cc
98aa3f65446496dc250d9b01d98cacfdf1157e06 06-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Call hb_ot_shape_setup_lookups_complex()
/external/harfbuzz_ng/src/hb-ot-shape.cc
f1d07885dc358e79c237e824c94b3320c0a9c17d 06-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Rename setup_lookups()
/external/harfbuzz_ng/src/hb-ot-shape.cc
affc5abac7bdae51df85856a5478d34d96fda4fe 06-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Move table_tag to hb_ot_shape_context_t
/external/harfbuzz_ng/src/hb-ot-shape.cc
967240dd8b96802345ef273e75427066e91ea8fb 06-Oct-2010 Behdad Esfahbod <behdad@behdad.org> Add internal hb_ot_shape_context_t
/external/harfbuzz_ng/src/hb-ot-shape.cc
4e573715ae5f5ed486ad66382bb44c47a86591ff 28-Sep-2010 Behdad Esfahbod <behdad@behdad.org> Improve cmp function parameter namings and casts

No semantic change.
/external/harfbuzz_ng/src/hb-ot-shape.cc
2422c4b96d32037a5cdaef4c427ed1d25db5f647 13-Aug-2010 Behdad Esfahbod <behdad@behdad.org> Add TODO
/external/harfbuzz_ng/src/hb-ot-shape.cc
27f0b092a13344e8791c496c77a3c1e5de4f887c 23-Jul-2010 Behdad Esfahbod <behdad@behdad.org> Logically separate feature allocation from application
/external/harfbuzz_ng/src/hb-ot-shape.cc
6cf63132dc771e1bcd5627720daf4bd2ea0800a5 23-Jul-2010 Behdad Esfahbod <behdad@behdad.org> Minor
/external/harfbuzz_ng/src/hb-ot-shape.cc
4e4ef24e46f273ad2bdda2f718223e05b37dd50f 23-Jul-2010 Behdad Esfahbod <behdad@behdad.org> Towards separating bit allocation from shaping
/external/harfbuzz_ng/src/hb-ot-shape.cc
acdba3f90b232fc12fcb200dca2584481b339118 23-Jul-2010 Behdad Esfahbod <behdad@behdad.org> Prefer C linkage
/external/harfbuzz_ng/src/hb-ot-shape.cc
f2a1b411b1d48c3dfac0df8e78c848d9aa3bb047 03-Jun-2010 Behdad Esfahbod <behdad@behdad.org> Followup fix for variation-selectors

Patch from Jonathan Kew
/external/harfbuzz_ng/src/hb-ot-shape.cc
a224b4d502d026fa642ee4098bf7bc0b4ba7ce27 03-Jun-2010 Behdad Esfahbod <behdad@behdad.org> Fix skipping variation-selectors
/external/harfbuzz_ng/src/hb-ot-shape.cc
81a77b115db401f69e869690f24b9047370bdfde 02-Jun-2010 Behdad Esfahbod <behdad@behdad.org> Make feature sorting stable
/external/harfbuzz_ng/src/hb-ot-shape.cc
fdc322a82047c4bda9fa3dab4338a0eac1c1bde7 29-May-2010 Behdad Esfahbod <behdad@behdad.org> Minor
/external/harfbuzz_ng/src/hb-ot-shape.cc
f062ec6bb24b1c21d37b12adc7e944a5fe53526a 29-May-2010 Behdad Esfahbod <behdad@behdad.org> Further simplify mask allocator
/external/harfbuzz_ng/src/hb-ot-shape.cc
8af45fda475d075c5a285002463a00a0423d3926 29-May-2010 Behdad Esfahbod <behdad@behdad.org> Fix global feature handling
/external/harfbuzz_ng/src/hb-ot-shape.cc
e04685ee7be01695ec437fab50f919f1b7423c57 29-May-2010 Behdad Esfahbod <behdad@behdad.org> Simplify mask allocation
/external/harfbuzz_ng/src/hb-ot-shape.cc
0e235d0fc9bdeeaffa7215c21abc5d40767a10c7 29-May-2010 Behdad Esfahbod <behdad@behdad.org> Towards a mask allocator
/external/harfbuzz_ng/src/hb-ot-shape.cc
81c5e8724b740c6e42ed3a45e0574c7c5f3ad8e6 29-May-2010 Behdad Esfahbod <behdad@behdad.org> Allow disabling default features

Patch from Jonathan Kew
/external/harfbuzz_ng/src/hb-ot-shape.cc
15c7379c16dbb9ee8ed1c0333ca7492532ce8423 26-May-2010 Behdad Esfahbod <behdad@behdad.org> Revert "Merge remote branch 'martin/master'"

This reverts commit 80af2812fb3b231ddcb4608ec13c6038a681c818, reversing
changes made to c442672ec2fb83ed41f3994b3aa4f92a097664ab.
/external/harfbuzz_ng/src/hb-ot-shape.cc
80af2812fb3b231ddcb4608ec13c6038a681c818 24-May-2010 Behdad Esfahbod <behdad@behdad.org> Merge remote branch 'martin/master'
bf36a1074ab23abeab0a7a6c47db26770dc1ab0a 24-May-2010 Behdad Esfahbod <behdad@behdad.org> Move all callback functions in a vtable structs
/external/harfbuzz_ng/src/hb-ot-shape.cc
72631c9d06b131d82080f212908e7d0b0266b841 22-May-2010 Martin Hosken <martin_hosken@sil.org> Merge branch 'master' of git://git.freedesktop.org/~behdad/harfbuzz-ng
1432ab15c163eb0b5be3de66a4cb3df15ad73500 22-May-2010 Martin Hosken <martin_hosken@sil.org> Add graphical output to hbtestfont
/external/harfbuzz_ng/src/hb-ot-shape.cc
bbc7a99d01298f9be1ebaaceacbc9bc961e247e5 21-May-2010 Behdad Esfahbod <behdad@behdad.org> Move mirroring around a bit
/external/harfbuzz_ng/src/hb-ot-shape.cc
bd0987386b3a4dddf208ccf1a70ebfff6242ba73 21-May-2010 Behdad Esfahbod <behdad@behdad.org> Add a few more standard features
/external/harfbuzz_ng/src/hb-ot-shape.cc
75f3469ca6d626b08eb411984a2ba7fd48ca5b5f 21-May-2010 Behdad Esfahbod <behdad@behdad.org> Add note
/external/harfbuzz_ng/src/hb-ot-shape.cc
1094a294f6a44c47fc75867983f2b135a6442bab 21-May-2010 Behdad Esfahbod <behdad@behdad.org> Add rtlm
/external/harfbuzz_ng/src/hb-ot-shape.cc
074ea787493a37ae8f68d17be7820f13fff57520 21-May-2010 Behdad Esfahbod <behdad@behdad.org> Add ltra, ltrm, and rtla features
/external/harfbuzz_ng/src/hb-ot-shape.cc
1ce7b87c4d8d1ab3ec1d5198351d71b7199f7c64 21-May-2010 Behdad Esfahbod <behdad@behdad.org> Cleanup bitmask allocation
/external/harfbuzz_ng/src/hb-ot-shape.cc
9722b8f005a10fd16e841df4da3ccd80be66e296 21-May-2010 Behdad Esfahbod <behdad@behdad.org> Simple renames
/external/harfbuzz_ng/src/hb-ot-shape.cc
ca663bb23c16f6a1f04efa6e10dad0e3e7c260a3 21-May-2010 Behdad Esfahbod <behdad@behdad.org> Move main shaper code into hb_ot_shape()
/external/harfbuzz_ng/src/hb-ot-shape.cc
4a9a5c0b06e8aa5d15327242609a7c766d3e0e94 21-May-2010 Behdad Esfahbod <behdad@behdad.org> Don't allocate bits for features not available
/external/harfbuzz_ng/src/hb-ot-shape.cc
e53d77142ac4ecbe38ab3235491fa93cb7ff16ab 21-May-2010 Behdad Esfahbod <behdad@behdad.org> Speed up feature mask setting

Patch from Jonathan Kew.
/external/harfbuzz_ng/src/hb-ot-shape.cc
ee1b322100a6bd575b999904592abbd9fed5587f 21-May-2010 Behdad Esfahbod <behdad@behdad.org> Fix feature mask setting
/external/harfbuzz_ng/src/hb-ot-shape.cc
6774463883978b00b4d8c719ed75edfc4537c77f 20-May-2010 Behdad Esfahbod <behdad@behdad.org> Apply user features to ranges!
/external/harfbuzz_ng/src/hb-ot-shape.cc
6b1b957f6d2955cbe4fa97e2659e033b3eaaf4d2 20-May-2010 Behdad Esfahbod <behdad@behdad.org> Add lookup_map
/external/harfbuzz_ng/src/hb-ot-shape.cc
60010a0c4d8efae5c61a0c9cf10cfe2c1860f41e 20-May-2010 Behdad Esfahbod <behdad@behdad.org> Update always-apply mask from 0xFFFF to 1

We plan to use the first bit to be always on.
/external/harfbuzz_ng/src/hb-ot-shape.cc
7f411dbfd9f8d5360c948531ff9f6c3998d1d897 20-May-2010 Behdad Esfahbod <behdad@behdad.org> Apply user features

No ranges yet
/external/harfbuzz_ng/src/hb-ot-shape.cc
22da7fd94d6318c52df69d70470a85464ffc533d 13-May-2010 Behdad Esfahbod <behdad@behdad.org> Rename a few files to be C++ sources

In anticipation for buffer revamp coming.
/external/harfbuzz_ng/src/hb-ot-shape.cc