Commit Graph

1035 Commits

Author SHA1 Message Date
Behdad Esfahbod
184a5279c6 Remove unused macro 2010-10-27 12:00:49 -04:00
Behdad Esfahbod
af5d02a269 Rewrite Cursive joining to act more like other pair lookups
Look forward for next character instead of joining to the last character.
2010-10-27 11:54:26 -04:00
Behdad Esfahbod
ea22c749c7 Fix Cursive positioning
Test case: "مرا" rendered using IranNastaliq.
2010-10-27 11:09:48 -04:00
Behdad Esfahbod
aefdb64689 Fix segfault with Arabic combining marks 2010-10-27 10:40:39 -04:00
Behdad Esfahbod
12b2d09a87 Remove obsolete TODO item
We don't cache any metrics internally, so the correct way to add more
glyph metrics items is to add new callbacks for them.  We already have
separeate callbacks for advance vs extents.
2010-10-27 01:28:28 -04:00
Behdad Esfahbod
248e3c2ba4 Oops, remove extra mask setting that broke complex shaping 2010-10-27 01:23:14 -04:00
Behdad Esfahbod
502f4cba3e Divide get_metrics into get_advance and get_extents
Graphite module not updated.
Bump version to 0.3.
2010-10-27 01:13:56 -04:00
Behdad Esfahbod
ec6c0e54d3 Fix blob leak 2010-10-26 11:28:14 -04:00
Behdad Esfahbod
bd7378b2ef Massage mask setting a bit more
Still finding the exact correct way the masks should be set.
2010-10-13 18:33:16 -04:00
Behdad Esfahbod
961f9baa7b Oops, actually set global mask 2010-10-13 17:17:00 -04:00
Behdad Esfahbod
39dede9fff 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.
2010-10-13 15:54:06 -04:00
Behdad Esfahbod
3506b2e78d Return early if mask is 0 2010-10-13 15:38:52 -04:00
Behdad Esfahbod
5c1c8c9c50 Make sure feature values don't leak out of their mask 2010-10-13 15:36:38 -04:00
Behdad Esfahbod
852912fc2d Fix applying default-value for features
Previously if a default global feature was overrided by a non-global
user feature, we were not setting any default mask for the feature,
essentially disabling the feature by default.  Fix that.
2010-10-13 15:34:50 -04:00
Behdad Esfahbod
2989be4919 Set user masks after complex masks 2010-10-13 15:18:29 -04:00
Behdad Esfahbod
a7820b7b15 Add TODO item 2010-10-13 14:20:48 -04:00
Behdad Esfahbod
04a3023a66 Cleanup TODO
Looks like a roadmap now.
2010-10-13 10:57:27 -04:00
Behdad Esfahbod
3111b8a0d5 Fix stupid bug, oops 2010-10-13 10:41:53 -04:00
Behdad Esfahbod
3703f88b74 Step the version up to 0.2 now that Arabic shaper is in 2010-10-12 18:34:20 -04:00
Behdad Esfahbod
758f68b860 Fix Arabic shaper
It's tested now.  It works!
2010-10-12 17:37:44 -04:00
Behdad Esfahbod
13403bc67a Hookup Arabic shaper!
Not tested yet.
2010-10-12 17:23:54 -04:00
Behdad Esfahbod
57ac0ecb78 Merge clearing masks and setting global masks 2010-10-12 17:07:02 -04:00
Behdad Esfahbod
fc96596b7c Form clusters before setting masks 2010-10-12 17:00:40 -04:00
Behdad Esfahbod
1e80782244 Clear masks before setting them up, not after! 2010-10-12 17:00:07 -04:00
Behdad Esfahbod
fd3d32d31c Add hb_ot_shape_execute()
Not public yet.
2010-10-12 16:57:47 -04:00
Behdad Esfahbod
49baa1f69e Add hb_ot_complex_shaper_t stuff and start hooking Arabic shaper up 2010-10-12 16:50:36 -04:00
Behdad Esfahbod
605ed468f3 Add hb_ot_shape_plan_t
This is the object that a separate plan/execute shaping API will use in
between the two stages.
2010-10-12 16:19:38 -04:00
Behdad Esfahbod
895fb5d364 Refactor, in a different direction 2010-10-12 16:00:21 -04:00
Behdad Esfahbod
d2ba016ca1 More refactoring 2010-10-12 15:35:45 -04:00
Behdad Esfahbod
66e487dfbf Update Arabic shaping table to Unicode 6.0.0. 2010-10-12 13:51:19 -04:00
Behdad Esfahbod
f4792d99ee Fix infinite loop!
Untested code is indeed buggy code.

Mozilla bug #603352.
2010-10-12 12:32:18 -04:00
Behdad Esfahbod
993d1e786a Fix missing negation in unreachable code!
Mozilla bug #603346
2010-10-12 11:17:30 -04:00
Behdad Esfahbod
52601275d5 More separation 2010-10-08 20:38:46 -04:00
Behdad Esfahbod
6b7e675862 Minor 2010-10-08 20:30:04 -04:00
Behdad Esfahbod
aa9c450bb2 Enable 'rtlm' mirroring 2010-10-08 20:27:38 -04:00
Behdad Esfahbod
36925f695d Rename hb_mask_allocator_t to hb_ot_map_t
hb_ot_plan_t may be a better name, donno.
2010-10-08 20:21:09 -04:00
Behdad Esfahbod
f5dd3be46b Improve checks 2010-10-08 20:16:23 -04:00
Behdad Esfahbod
5a2b0b3878 Add hb-ot-map.cc 2010-10-08 20:14:57 -04:00
Behdad Esfahbod
ecc4550ed7 Fix feature overriding 2010-10-08 20:05:29 -04:00
Behdad Esfahbod
8f08c32750 Minor cleanup 2010-10-08 19:51:03 -04:00
Behdad Esfahbod
a806762a31 Add hb-ot-shape-private.hh 2010-10-08 19:21:46 -04:00
Behdad Esfahbod
4924affe0f Add hb-ot-map-private.hh 2010-10-08 19:18:16 -04:00
Behdad Esfahbod
a7c5046d6b Add private hb_segment_properties_t 2010-10-08 18:47:47 -04:00
Behdad Esfahbod
b897c607d9 Flip the OT bit-allocation vs gsub/gpos inside-out
We now build our entire attack plan before jumping in.
2010-10-08 18:41:57 -04:00
Behdad Esfahbod
e89b7d2a61 Logically separate feature collection 2010-10-08 12:29:59 -04:00
Behdad Esfahbod
5b88908f12 Minor 2010-10-08 12:23:01 -04:00
Behdad Esfahbod
5360ce0c5c Move some more code around 2010-10-07 21:21:11 -04:00
Behdad Esfahbod
d9c7260788 Minor 2010-10-07 21:19:54 -04:00
Behdad Esfahbod
efe0d682e8 Simplify compiling lookups 2010-10-07 21:12:46 -04:00
Behdad Esfahbod
476c94218b Rename 2010-10-07 17:47:33 -04:00