platform/upstream/libHarfBuzzSharp.git
14 years agoSet component=0 for ligature glyph
Behdad Esfahbod [Wed, 27 Oct 2010 20:19:13 +0000 (16:19 -0400)]
Set component=0 for ligature glyph

14 years agoRemove comment
Behdad Esfahbod [Wed, 27 Oct 2010 19:38:06 +0000 (15:38 -0400)]
Remove comment

14 years agoGet rid of the OpenType-specific internal buffer representation
Behdad Esfahbod [Wed, 27 Oct 2010 18:42:15 +0000 (14:42 -0400)]
Get rid of the OpenType-specific internal buffer representation

Add variant integers to buffer item types.  More cleanup coming.

14 years agoAdd hb_var_int_t
Behdad Esfahbod [Wed, 27 Oct 2010 18:27:03 +0000 (14:27 -0400)]
Add hb_var_int_t

14 years agoRemove trailing comma
Behdad Esfahbod [Tue, 2 Nov 2010 23:12:37 +0000 (19:12 -0400)]
Remove trailing comma

14 years agoSupposedly implement vertical support in GPOS
Behdad Esfahbod [Wed, 27 Oct 2010 18:09:27 +0000 (14:09 -0400)]
Supposedly implement vertical support in GPOS

Not tested at all.

14 years agoClarify cursive_chain (and change its sign)
Behdad Esfahbod [Wed, 27 Oct 2010 17:44:59 +0000 (13:44 -0400)]
Clarify cursive_chain (and change its sign)

14 years agoRemove more pointless LONGTERMTODO items
Behdad Esfahbod [Wed, 27 Oct 2010 16:34:50 +0000 (12:34 -0400)]
Remove more pointless LONGTERMTODO items

14 years agoRename hb_ot_layout_get_lig_carets() to hb_ot_layout_get_ligature_carets()
Behdad Esfahbod [Wed, 27 Oct 2010 16:32:02 +0000 (12:32 -0400)]
Rename hb_ot_layout_get_lig_carets() to hb_ot_layout_get_ligature_carets()

14 years agoImplement vertical support in get_lig_carets()
Behdad Esfahbod [Wed, 27 Oct 2010 16:30:46 +0000 (12:30 -0400)]
Implement vertical support in get_lig_carets()

14 years agoRemove LONGTERMTODO item that I'll never fix
Behdad Esfahbod [Wed, 27 Oct 2010 16:07:49 +0000 (12:07 -0400)]
Remove LONGTERMTODO item that I'll never fix

14 years agoRemove unused macro
Behdad Esfahbod [Wed, 27 Oct 2010 16:00:49 +0000 (12:00 -0400)]
Remove unused macro

14 years agoRewrite Cursive joining to act more like other pair lookups
Behdad Esfahbod [Wed, 27 Oct 2010 15:54:26 +0000 (11:54 -0400)]
Rewrite Cursive joining to act more like other pair lookups

Look forward for next character instead of joining to the last character.

14 years agoFix Cursive positioning
Behdad Esfahbod [Wed, 27 Oct 2010 15:09:48 +0000 (11:09 -0400)]
Fix Cursive positioning

Test case: "مرا" rendered using IranNastaliq.

14 years agoFix segfault with Arabic combining marks
Behdad Esfahbod [Wed, 27 Oct 2010 14:40:39 +0000 (10:40 -0400)]
Fix segfault with Arabic combining marks

14 years agoRemove obsolete TODO item
Behdad Esfahbod [Wed, 27 Oct 2010 05:28:28 +0000 (01:28 -0400)]
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.

14 years agoOops, remove extra mask setting that broke complex shaping
Behdad Esfahbod [Wed, 27 Oct 2010 05:23:14 +0000 (01:23 -0400)]
Oops, remove extra mask setting that broke complex shaping

14 years agoDivide get_metrics into get_advance and get_extents
Behdad Esfahbod [Wed, 27 Oct 2010 05:13:56 +0000 (01:13 -0400)]
Divide get_metrics into get_advance and get_extents

Graphite module not updated.
Bump version to 0.3.

14 years agoFix blob leak
Behdad Esfahbod [Tue, 26 Oct 2010 15:28:14 +0000 (11:28 -0400)]
Fix blob leak

14 years agoMassage mask setting a bit more
Behdad Esfahbod [Wed, 13 Oct 2010 22:33:16 +0000 (18:33 -0400)]
Massage mask setting a bit more

Still finding the exact correct way the masks should be set.

14 years agoOops, actually set global mask
Behdad Esfahbod [Wed, 13 Oct 2010 21:17:00 +0000 (17:17 -0400)]
Oops, actually set global mask

14 years agoMake sure boolean features always use value=1
Behdad Esfahbod [Wed, 13 Oct 2010 19:54:06 +0000 (15:54 -0400)]
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.

14 years agoReturn early if mask is 0
Behdad Esfahbod [Wed, 13 Oct 2010 19:38:52 +0000 (15:38 -0400)]
Return early if mask is 0

14 years agoMake sure feature values don't leak out of their mask
Behdad Esfahbod [Wed, 13 Oct 2010 19:36:38 +0000 (15:36 -0400)]
Make sure feature values don't leak out of their mask

14 years agoFix applying default-value for features
Behdad Esfahbod [Wed, 13 Oct 2010 19:34:50 +0000 (15:34 -0400)]
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.

14 years agoSet user masks after complex masks
Behdad Esfahbod [Wed, 13 Oct 2010 19:18:29 +0000 (15:18 -0400)]
Set user masks after complex masks

14 years agoAdd TODO item
Behdad Esfahbod [Wed, 13 Oct 2010 18:20:48 +0000 (14:20 -0400)]
Add TODO item

14 years agoCleanup TODO
Behdad Esfahbod [Wed, 13 Oct 2010 14:57:27 +0000 (10:57 -0400)]
Cleanup TODO

Looks like a roadmap now.

14 years agoFix stupid bug, oops
Behdad Esfahbod [Wed, 13 Oct 2010 14:41:53 +0000 (10:41 -0400)]
Fix stupid bug, oops

14 years agoStep the version up to 0.2 now that Arabic shaper is in
Behdad Esfahbod [Tue, 12 Oct 2010 22:34:20 +0000 (18:34 -0400)]
Step the version up to 0.2 now that Arabic shaper is in

14 years agoFix Arabic shaper
Behdad Esfahbod [Tue, 12 Oct 2010 21:37:44 +0000 (17:37 -0400)]
Fix Arabic shaper

It's tested now.  It works!

14 years agoHookup Arabic shaper!
Behdad Esfahbod [Tue, 12 Oct 2010 21:23:54 +0000 (17:23 -0400)]
Hookup Arabic shaper!

Not tested yet.

14 years agoMerge clearing masks and setting global masks
Behdad Esfahbod [Tue, 12 Oct 2010 21:07:02 +0000 (17:07 -0400)]
Merge clearing masks and setting global masks

14 years agoForm clusters before setting masks
Behdad Esfahbod [Tue, 12 Oct 2010 21:00:25 +0000 (17:00 -0400)]
Form clusters before setting masks

14 years agoClear masks before setting them up, not after!
Behdad Esfahbod [Tue, 12 Oct 2010 21:00:07 +0000 (17:00 -0400)]
Clear masks before setting them up, not after!

14 years agoAdd hb_ot_shape_execute()
Behdad Esfahbod [Tue, 12 Oct 2010 20:57:47 +0000 (16:57 -0400)]
Add hb_ot_shape_execute()

Not public yet.

14 years agoAdd hb_ot_complex_shaper_t stuff and start hooking Arabic shaper up
Behdad Esfahbod [Tue, 12 Oct 2010 20:50:36 +0000 (16:50 -0400)]
Add hb_ot_complex_shaper_t stuff and start hooking Arabic shaper up

14 years agoAdd hb_ot_shape_plan_t
Behdad Esfahbod [Tue, 12 Oct 2010 20:19:29 +0000 (16:19 -0400)]
Add hb_ot_shape_plan_t

This is the object that a separate plan/execute shaping API will use in
between the two stages.

14 years agoRefactor, in a different direction
Behdad Esfahbod [Tue, 12 Oct 2010 20:00:21 +0000 (16:00 -0400)]
Refactor, in a different direction

14 years agoMore refactoring
Behdad Esfahbod [Tue, 12 Oct 2010 19:35:45 +0000 (15:35 -0400)]
More refactoring

14 years agoUpdate Arabic shaping table to Unicode 6.0.0.
Behdad Esfahbod [Tue, 12 Oct 2010 17:51:19 +0000 (13:51 -0400)]
Update Arabic shaping table to Unicode 6.0.0.

14 years agoFix infinite loop!
Behdad Esfahbod [Tue, 12 Oct 2010 16:32:18 +0000 (12:32 -0400)]
Fix infinite loop!

Untested code is indeed buggy code.

Mozilla bug #603352.

14 years agoFix missing negation in unreachable code!
Behdad Esfahbod [Tue, 12 Oct 2010 15:17:30 +0000 (11:17 -0400)]
Fix missing negation in unreachable code!

Mozilla bug #603346

14 years agoMore separation
Behdad Esfahbod [Sat, 9 Oct 2010 00:38:46 +0000 (20:38 -0400)]
More separation

14 years agoMinor
Behdad Esfahbod [Sat, 9 Oct 2010 00:30:04 +0000 (20:30 -0400)]
Minor

14 years agoEnable 'rtlm' mirroring
Behdad Esfahbod [Sat, 9 Oct 2010 00:27:38 +0000 (20:27 -0400)]
Enable 'rtlm' mirroring

14 years agoRename hb_mask_allocator_t to hb_ot_map_t
Behdad Esfahbod [Sat, 9 Oct 2010 00:20:32 +0000 (20:20 -0400)]
Rename hb_mask_allocator_t to hb_ot_map_t

hb_ot_plan_t may be a better name, donno.

14 years agoImprove checks
Behdad Esfahbod [Sat, 9 Oct 2010 00:16:23 +0000 (20:16 -0400)]
Improve checks

14 years agoAdd hb-ot-map.cc
Behdad Esfahbod [Sat, 9 Oct 2010 00:14:57 +0000 (20:14 -0400)]
Add hb-ot-map.cc

14 years agoFix feature overriding
Behdad Esfahbod [Sat, 9 Oct 2010 00:05:29 +0000 (20:05 -0400)]
Fix feature overriding

14 years agoMinor cleanup
Behdad Esfahbod [Fri, 8 Oct 2010 23:43:48 +0000 (19:43 -0400)]
Minor cleanup

14 years agoAdd hb-ot-shape-private.hh
Behdad Esfahbod [Fri, 8 Oct 2010 23:18:40 +0000 (19:18 -0400)]
Add hb-ot-shape-private.hh

14 years agoAdd hb-ot-map-private.hh
Behdad Esfahbod [Fri, 8 Oct 2010 23:18:16 +0000 (19:18 -0400)]
Add hb-ot-map-private.hh

14 years agoAdd private hb_segment_properties_t
Behdad Esfahbod [Fri, 8 Oct 2010 22:47:47 +0000 (18:47 -0400)]
Add private hb_segment_properties_t

14 years agoFlip the OT bit-allocation vs gsub/gpos inside-out
Behdad Esfahbod [Fri, 8 Oct 2010 22:41:57 +0000 (18:41 -0400)]
Flip the OT bit-allocation vs gsub/gpos inside-out

We now build our entire attack plan before jumping in.

14 years agoLogically separate feature collection
Behdad Esfahbod [Fri, 8 Oct 2010 16:29:59 +0000 (12:29 -0400)]
Logically separate feature collection

14 years agoMinor
Behdad Esfahbod [Fri, 8 Oct 2010 16:23:01 +0000 (12:23 -0400)]
Minor

14 years agoMove some more code around
Behdad Esfahbod [Fri, 8 Oct 2010 01:21:11 +0000 (21:21 -0400)]
Move some more code around

14 years agoMinor
Behdad Esfahbod [Fri, 8 Oct 2010 01:19:54 +0000 (21:19 -0400)]
Minor

14 years agoSimplify compiling lookups
Behdad Esfahbod [Fri, 8 Oct 2010 01:12:46 +0000 (21:12 -0400)]
Simplify compiling lookups

14 years agoRename
Behdad Esfahbod [Thu, 7 Oct 2010 21:47:33 +0000 (17:47 -0400)]
Rename

14 years agoAdd XXX note
Behdad Esfahbod [Thu, 7 Oct 2010 05:21:19 +0000 (01:21 -0400)]
Add XXX note

14 years agoCall hb_ot_shape_setup_lookups_complex()
Behdad Esfahbod [Wed, 6 Oct 2010 04:23:36 +0000 (00:23 -0400)]
Call hb_ot_shape_setup_lookups_complex()

14 years agoRename setup_lookups()
Behdad Esfahbod [Wed, 6 Oct 2010 04:21:37 +0000 (00:21 -0400)]
Rename setup_lookups()

14 years agoMove table_tag to hb_ot_shape_context_t
Behdad Esfahbod [Wed, 6 Oct 2010 04:18:16 +0000 (00:18 -0400)]
Move table_tag to hb_ot_shape_context_t

14 years agoAdd internal hb_ot_shape_context_t
Behdad Esfahbod [Wed, 6 Oct 2010 03:00:05 +0000 (23:00 -0400)]
Add internal hb_ot_shape_context_t

14 years agoAdd Arabic/Syriac/N'ko shaping logic
Behdad Esfahbod [Tue, 5 Oct 2010 22:36:58 +0000 (18:36 -0400)]
Add Arabic/Syriac/N'ko shaping logic

Not hooked up just yet.

14 years agoUpdate build system
Behdad Esfahbod [Tue, 5 Oct 2010 22:36:45 +0000 (18:36 -0400)]
Update build system

14 years agoAdd hb_face_get_upem()
Behdad Esfahbod [Mon, 4 Oct 2010 22:18:48 +0000 (18:18 -0400)]
Add hb_face_get_upem()

14 years agoAdd TODO item
Behdad Esfahbod [Mon, 4 Oct 2010 22:13:30 +0000 (18:13 -0400)]
Add TODO item

14 years agoAdd API comments
Behdad Esfahbod [Mon, 4 Oct 2010 21:22:57 +0000 (17:22 -0400)]
Add API comments

14 years agoAdd is_mutable() functions
Behdad Esfahbod [Mon, 4 Oct 2010 21:01:01 +0000 (17:01 -0400)]
Add is_mutable() functions

Correspond to the make_mutable() ones.

14 years agoAdd getters for all setter APIs
Behdad Esfahbod [Mon, 4 Oct 2010 20:45:21 +0000 (16:45 -0400)]
Add getters for all setter APIs

One in particular is not a straight getter: hb_font_unset_funcs() is
special because of the specific needs of the lifecycle management of
the user_data object.

14 years agoMinor
Behdad Esfahbod [Sun, 3 Oct 2010 23:09:39 +0000 (19:09 -0400)]
Minor

14 years agoAvoid div-by-zero, validate upem
Behdad Esfahbod [Fri, 1 Oct 2010 23:09:23 +0000 (19:09 -0400)]
Avoid div-by-zero, validate upem

14 years agoPedantic
Behdad Esfahbod [Fri, 1 Oct 2010 22:58:50 +0000 (18:58 -0400)]
Pedantic

14 years agoDon't zero glyph advances in MarkToBase and similar lookups
Behdad Esfahbod [Wed, 29 Sep 2010 16:20:36 +0000 (12:20 -0400)]
Don't zero glyph advances in MarkToBase and similar lookups

See email thread "Should MarkToBase attachment zero the mark advance?"
started by Jonathan Kew on 23 August 2010 for details.

14 years agoOne fewer cmp() implementation...
Behdad Esfahbod [Wed, 29 Sep 2010 16:10:24 +0000 (12:10 -0400)]
One fewer cmp() implementation...

14 years agoImprove cmp function parameter namings and casts
Behdad Esfahbod [Tue, 28 Sep 2010 20:23:58 +0000 (16:23 -0400)]
Improve cmp function parameter namings and casts

No semantic change.

14 years agoAdd comment re DejaVu Sans Mono having 'dflt' script
Behdad Esfahbod [Tue, 28 Sep 2010 20:25:23 +0000 (16:25 -0400)]
Add comment re DejaVu Sans Mono having 'dflt' script

14 years agoFix stupid bug in bsearch cmp function!
Behdad Esfahbod [Tue, 28 Sep 2010 20:23:28 +0000 (16:23 -0400)]
Fix stupid bug in bsearch cmp function!

14 years agoAdd TODO iteam
Behdad Esfahbod [Thu, 23 Sep 2010 14:28:51 +0000 (10:28 -0400)]
Add TODO iteam

14 years agoRemove unimplemented method hb_font_get_funcs()
Behdad Esfahbod [Thu, 23 Sep 2010 14:27:08 +0000 (10:27 -0400)]
Remove unimplemented method hb_font_get_funcs()

Got to add a suitable replacement.

14 years agoAdd test.c using public API
Behdad Esfahbod [Wed, 22 Sep 2010 21:42:59 +0000 (17:42 -0400)]
Add test.c using public API

14 years agoFix hb_ot_layout leak
Behdad Esfahbod [Wed, 22 Sep 2010 21:38:44 +0000 (17:38 -0400)]
Fix hb_ot_layout leak

14 years agoFix blob refcounting with insane SFNT table directories
Behdad Esfahbod [Wed, 22 Sep 2010 21:37:02 +0000 (17:37 -0400)]
Fix blob refcounting with insane SFNT table directories

14 years agoAdd TODO item
Behdad Esfahbod [Wed, 22 Sep 2010 21:12:10 +0000 (17:12 -0400)]
Add TODO item

14 years agoSpeedup Device table delta computation for common cases
Behdad Esfahbod [Wed, 22 Sep 2010 20:46:18 +0000 (16:46 -0400)]
Speedup Device table delta computation for common cases

14 years agoFix NULL dereference
Behdad Esfahbod [Mon, 16 Aug 2010 18:36:27 +0000 (14:36 -0400)]
Fix NULL dereference

Reported by Jonathan Kew.  Face table handling needs to be redone
anyway, but fix this for now.

14 years ago[GPOS] Fix div-by-zero
Behdad Esfahbod [Fri, 13 Aug 2010 18:10:02 +0000 (14:10 -0400)]
[GPOS] Fix div-by-zero

Patch by Jonathan Kew.  Mozilla bug #465728.

14 years agoAdd TODO
Behdad Esfahbod [Fri, 13 Aug 2010 18:00:34 +0000 (14:00 -0400)]
Add TODO

14 years agoLogically separate feature allocation from application
Behdad Esfahbod [Fri, 23 Jul 2010 21:35:54 +0000 (17:35 -0400)]
Logically separate feature allocation from application

14 years agoMinor
Behdad Esfahbod [Fri, 23 Jul 2010 21:32:26 +0000 (17:32 -0400)]
Minor

14 years agoTowards separating bit allocation from shaping
Behdad Esfahbod [Fri, 23 Jul 2010 21:22:11 +0000 (17:22 -0400)]
Towards separating bit allocation from shaping

14 years agoAdd TODO items
Behdad Esfahbod [Fri, 23 Jul 2010 19:40:58 +0000 (15:40 -0400)]
Add TODO items

14 years agoPrefer C linkage
Behdad Esfahbod [Fri, 23 Jul 2010 19:11:18 +0000 (15:11 -0400)]
Prefer C linkage

14 years agoDe-C++ where possible
Behdad Esfahbod [Fri, 23 Jul 2010 19:00:13 +0000 (15:00 -0400)]
De-C++ where possible

Helps with avoiding many "extern C" declarations in source files.

14 years agoHeader dep cleanup
Behdad Esfahbod [Fri, 23 Jul 2010 18:56:29 +0000 (14:56 -0400)]
Header dep cleanup

14 years agodos2unix
Behdad Esfahbod [Fri, 23 Jul 2010 18:54:22 +0000 (14:54 -0400)]
dos2unix

14 years agoDon't use "operator ="
Behdad Esfahbod [Fri, 23 Jul 2010 18:46:57 +0000 (14:46 -0400)]
Don't use "operator ="

Some compilers don't like operator = defined on members of union members
either.  Reported by Ginn Chen for Sun Studio compilers.