Behdad Esfahbod
9082efc4aa
[OTLayout] s/mark_skipping/skipping/
...
In aticipation of upcoming changes.
2013-02-11 13:14:56 -05:00
Behdad Esfahbod
7b912c1936
Remove a few unnecessary const's
...
Apparently helps with MSVC compilation.
2013-01-04 01:25:27 -06:00
Behdad Esfahbod
11fba79ee9
[OTLayout] Fix various introspection issues with ClassDef's
...
As reported by Jonathan Kew.
2013-01-02 23:36:37 -06:00
Behdad Esfahbod
0beb66e3a6
Fix warnings
2012-12-05 19:14:28 -05:00
Behdad Esfahbod
130bb3f614
Rename VOID and void_t to have HarfBuzz prefix
...
Fixes build on Windows. Ouch!
2012-12-05 16:49:47 -05:00
Behdad Esfahbod
4a350d0eb2
[OTLayout] Reuse context in collect_glyphs() recursion
2012-12-04 17:13:09 -05:00
Behdad Esfahbod
8303593ba1
Minor
...
Use pointers instead of references, in preparation for upcoming change.
2012-12-04 17:08:41 -05:00
Behdad Esfahbod
1bcfa06d11
[OTLayout] Don't recurse in collect_glyphs() for GPOS
2012-12-04 16:58:09 -05:00
Behdad Esfahbod
e75943de80
[OTLayout] Fix collect_glyphs() recursion in ContextFormat3
2012-11-30 08:38:24 +02:00
Behdad Esfahbod
f18ff5a84d
[OTLayout] Return correct value from recursion
...
Commit 4c4e8f0e75
broke contextual lookups
by making the recurse() function always return false.
Reported by Khaled. Test case: لا in Amiri.
2012-11-30 08:07:06 +02:00
Behdad Esfahbod
2dc1141d7d
[OTLayout] Remove operator() from ClassDef
2012-11-24 19:16:34 -05:00
Behdad Esfahbod
b67881b171
[OTLayout] Remove operator() from Coverage
2012-11-24 19:13:55 -05:00
Behdad Esfahbod
1ea375da44
[OTLayout] Only collect output glyphs during recursion in collect_glyphs()
2012-11-24 02:05:52 -05:00
Behdad Esfahbod
f1b12781d2
[OTLayout] Implement ChainContext collect_glyphs()
...
All of collect_glyphs() complete and untested now.
2012-11-24 02:02:01 -05:00
Behdad Esfahbod
4c4e8f0e75
[OTLayout] Reuse apply context for recursion
2012-11-24 01:13:20 -05:00
Behdad Esfahbod
53a69f49e5
[OTLayout] Remove unused members
2012-11-24 01:03:05 -05:00
Behdad Esfahbod
d0a5233785
[OTLayout] Implement Context::collect_glyphs()
2012-11-23 18:54:59 -05:00
Behdad Esfahbod
26514d51b6
[OTLayout] More collect_glyphs()
2012-11-23 18:13:48 -05:00
Behdad Esfahbod
9b34677f36
[OTLayout] Clean up closure() a bit
2012-11-23 17:55:40 -05:00
Behdad Esfahbod
2c53bd3c3e
[OTLayout] Start porting sanitize() to process()
2012-11-23 17:29:05 -05:00
Behdad Esfahbod
f48ec0e834
[OTLayout] Add process() tracing
2012-11-23 17:23:41 -05:00
Behdad Esfahbod
ed2e135944
[OTLayout] More Extension templatizing
2012-11-23 17:10:40 -05:00
Behdad Esfahbod
7dddd4e72b
[OTLayout] More templatizing Extension
2012-11-23 17:04:55 -05:00
Behdad Esfahbod
653eeb2645
Make Extension a template
2012-11-23 16:57:36 -05:00
Behdad Esfahbod
a1733db1c6
[OTLayout] Start adding process() tracing
2012-11-23 16:40:04 -05:00
Behdad Esfahbod
73c18ae1b9
Cleanup
2012-11-23 15:34:11 -05:00
Behdad Esfahbod
be218c688c
Pass this object to trace macros
2012-11-23 15:32:14 -05:00
Behdad Esfahbod
902cc8aca0
[OTLayout] Start unbreaking tracing
2012-11-23 15:23:30 -05:00
Behdad Esfahbod
dabe698fcb
Minor
2012-11-23 14:21:35 -05:00
Behdad Esfahbod
c779d82b2f
Fix warnings
2012-11-23 14:09:21 -05:00
Behdad Esfahbod
81822528ef
Minor
2012-11-23 13:27:16 -05:00
Behdad Esfahbod
1d67ef980f
Move code around
2012-11-22 16:47:53 -05:00
Behdad Esfahbod
ec35a72a44
[OTLayout] Port apply() operator to process() template
2012-11-22 16:33:46 -05:00
Behdad Esfahbod
2005fa5340
[OTLayout] Port would_apply() and get_coverage() to process() templates
2012-11-22 16:33:46 -05:00
Behdad Esfahbod
44fc237b53
[OTLayout] Port closure() to process() template
2012-11-22 16:33:46 -05:00
Behdad Esfahbod
e8cfdd7fa8
Start implementing collect_glyphs() operation
...
Not functional yet.
2012-11-16 19:07:06 -08:00
Behdad Esfahbod
7d52e6601f
Whitespace
2012-11-16 18:49:54 -08:00
Behdad Esfahbod
5a08ecf920
Implement hb_ot_layout_get_glyph_class()
2012-11-16 13:34:29 -08:00
Behdad Esfahbod
2616689d15
More tracing fixups
2012-10-29 21:51:56 -07:00
Behdad Esfahbod
bc513add79
Add missing TRACE_RETURN
2012-10-29 19:03:55 -07:00
Behdad Esfahbod
2bd9fe3598
Refactor
2012-09-04 15:15:19 -04:00
Behdad Esfahbod
a5ddd9e31c
[OT] Really fix possible NULL dereference this time
2012-09-04 14:55:00 -04:00
Behdad Esfahbod
f8fa2b5cf6
Fix possible NULL dereference
...
As reported by Kenichi Ishibashi.
2012-09-03 20:19:46 -04:00
Behdad Esfahbod
2fcbbdb41a
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...
2012-08-29 14:01:22 -04:00
Behdad Esfahbod
5e399a8a45
Minor
2012-08-29 10:40:49 -04:00
Behdad Esfahbod
a177d027d1
[GSUB] Move ligation logic over
2012-08-28 23:18:22 -04:00
Behdad Esfahbod
191fa885d9
[GSUB] Merge Ligature and context input matching
...
Looks better now...
2012-08-28 22:58:55 -04:00
Behdad Esfahbod
93814ca7dc
Start converging Ligature and match_input
2012-08-28 22:39:10 -04:00
Behdad Esfahbod
7c8e844d92
Use namespace for OpenType tables
...
Avoids USHORT, SHORT, ULONG, LONG clashes with Windows API.
2012-08-28 17:57:49 -04:00
Behdad Esfahbod
d9b204d3d2
[GSUB] Allow non-zero-context matching in would_apply()
...
To be used in the next patch.
2012-08-23 16:22:28 -04:00