platform/upstream/libHarfBuzzSharp.git
13 years ago[Vertical] GPOS x/y advance adjustments only apply in hori/vert respectively
Behdad Esfahbod [Fri, 20 May 2011 19:59:59 +0000 (15:59 -0400)]
[Vertical] GPOS x/y advance adjustments only apply in hori/vert respectively

13 years ago[Vertical] Fix GPOS y-advance direction
Behdad Esfahbod [Thu, 19 May 2011 23:19:50 +0000 (19:19 -0400)]
[Vertical] Fix GPOS y-advance direction

13 years ago[Vertical] Do fallback origin calculation
Behdad Esfahbod [Thu, 19 May 2011 23:08:57 +0000 (19:08 -0400)]
[Vertical] Do fallback origin calculation

13 years ago[Vertical] GPOS is always done with horizontal origin
Behdad Esfahbod [Thu, 19 May 2011 22:46:15 +0000 (18:46 -0400)]
[Vertical] GPOS is always done with horizontal origin

13 years agoMore vertical
Behdad Esfahbod [Thu, 19 May 2011 17:08:00 +0000 (13:08 -0400)]
More vertical

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

I think I know wheere to go now.

13 years ago[hb-view] Add --annotate
Behdad Esfahbod [Wed, 18 May 2011 14:17:02 +0000 (10:17 -0400)]
[hb-view] Add --annotate

Currently it only marks glyph origins.

13 years agoVertical: Adjust origin in glyph_extents() and glyph_contour_point()
Behdad Esfahbod [Wed, 18 May 2011 03:31:00 +0000 (23:31 -0400)]
Vertical: Adjust origin in glyph_extents() and glyph_contour_point()

The base for vertical is almost ready now.

13 years agoCosmetic
Behdad Esfahbod [Wed, 18 May 2011 03:27:22 +0000 (23:27 -0400)]
Cosmetic

13 years agoMinor
Behdad Esfahbod [Wed, 18 May 2011 03:23:27 +0000 (23:23 -0400)]
Minor

13 years ago[API] Vertical support, take 2
Behdad Esfahbod [Tue, 17 May 2011 21:55:03 +0000 (17:55 -0400)]
[API] Vertical support, take 2

I like this API *much* better.  Implementation still incomplete, but
horizontal works.

13 years ago[API] Add support for vertical text
Behdad Esfahbod [Mon, 16 May 2011 22:15:37 +0000 (18:15 -0400)]
[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.

13 years agoMinor
Behdad Esfahbod [Tue, 17 May 2011 21:08:36 +0000 (17:08 -0400)]
Minor

13 years agoCheck for mmap()
Behdad Esfahbod [Tue, 17 May 2011 19:05:34 +0000 (15:05 -0400)]
Check for mmap()

Apparently there exist systems with mprotect(), but not mmap()?

13 years agoCosmetic
Behdad Esfahbod [Mon, 16 May 2011 20:20:48 +0000 (16:20 -0400)]
Cosmetic

13 years agoRemove unnecessary TODO item
Behdad Esfahbod [Mon, 16 May 2011 20:01:58 +0000 (16:01 -0400)]
Remove unnecessary TODO item

13 years ago[hb-view] Start work on vertical support
Behdad Esfahbod [Mon, 16 May 2011 19:18:16 +0000 (15:18 -0400)]
[hb-view] Start work on vertical support

13 years ago[hb-view] No need to allocate an extra glyph item at the end
Behdad Esfahbod [Mon, 16 May 2011 19:08:31 +0000 (15:08 -0400)]
[hb-view] No need to allocate an extra glyph item at the end

13 years agoMinor
Behdad Esfahbod [Mon, 16 May 2011 19:07:48 +0000 (15:07 -0400)]
Minor

13 years ago[test/buffer] Add more tests for nil buffer
Behdad Esfahbod [Mon, 16 May 2011 16:24:56 +0000 (12:24 -0400)]
[test/buffer] Add more tests for nil buffer

13 years ago[test/ot-tag] More tests
Behdad Esfahbod [Sat, 14 May 2011 03:04:46 +0000 (23:04 -0400)]
[test/ot-tag] More tests

13 years ago[API] Add HB_LANGUAGE_INVALID
Behdad Esfahbod [Sat, 14 May 2011 02:55:32 +0000 (22:55 -0400)]
[API] Add HB_LANGUAGE_INVALID

13 years ago[test/test-ot-tag] Test hb-ot-tag.h, fix many bugs
Behdad Esfahbod [Sat, 14 May 2011 02:46:36 +0000 (22:46 -0400)]
[test/test-ot-tag] Test hb-ot-tag.h, fix many bugs

I'm in awe with how many bugs this test revealed.  All fixed.

13 years ago[TODO] Add items
Behdad Esfahbod [Sat, 14 May 2011 00:25:38 +0000 (20:25 -0400)]
[TODO] Add items

13 years ago[API] Add hb_face_make/is_immutable()
Behdad Esfahbod [Thu, 12 May 2011 21:48:20 +0000 (17:48 -0400)]
[API] Add hb_face_make/is_immutable()

13 years agoFinish off previous change
Behdad Esfahbod [Thu, 12 May 2011 19:19:33 +0000 (15:19 -0400)]
Finish off previous change

13 years ago[API] Make get_glyph() callback return a boolean
Behdad Esfahbod [Thu, 12 May 2011 19:14:13 +0000 (15:14 -0400)]
[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.

13 years ago[test/shape] Check shape output
Behdad Esfahbod [Thu, 12 May 2011 18:27:44 +0000 (14:27 -0400)]
[test/shape] Check shape output

13 years agoRename get_kernings() arguments from first/second_glyph to left/right_glyph
Behdad Esfahbod [Thu, 12 May 2011 16:39:40 +0000 (12:39 -0400)]
Rename get_kernings() arguments from first/second_glyph to left/right_glyph

Makes it clear that kerning is in visual order.

13 years ago[test] Add test-shape.c. Oops
Behdad Esfahbod [Thu, 12 May 2011 14:53:57 +0000 (10:53 -0400)]
[test] Add test-shape.c.  Oops

13 years ago[test/blob] Use MAP_ANON instead of MAP_ANONYMOUS
Behdad Esfahbod [Thu, 12 May 2011 14:49:30 +0000 (10:49 -0400)]
[test/blob] Use MAP_ANON instead of MAP_ANONYMOUS

More portable.

13 years ago[test/shape] Add simplest test for hb_shape()
Behdad Esfahbod [Thu, 12 May 2011 05:39:17 +0000 (01:39 -0400)]
[test/shape] Add simplest test for hb_shape()

13 years ago[object] Make object inert during destruction
Behdad Esfahbod [Thu, 12 May 2011 05:19:39 +0000 (01:19 -0400)]
[object] Make object inert during destruction

Such that user_data and other finalizers cannot resurrect object

13 years ago[TODO] Update
Behdad Esfahbod [Thu, 12 May 2011 05:02:03 +0000 (01:02 -0400)]
[TODO] Update

13 years agoFix font subclass chainup
Behdad Esfahbod [Thu, 12 May 2011 04:46:57 +0000 (00:46 -0400)]
Fix font subclass chainup

Test passing now.

13 years ago[test/font] Test font_funcs subclassing
Behdad Esfahbod [Thu, 12 May 2011 04:35:12 +0000 (00:35 -0400)]
[test/font] Test font_funcs subclassing

13 years ago[test/font] Test empty funcs
Behdad Esfahbod [Thu, 12 May 2011 04:18:28 +0000 (00:18 -0400)]
[test/font] Test empty funcs

13 years ago[test/font] Test more
Behdad Esfahbod [Thu, 12 May 2011 03:57:36 +0000 (23:57 -0400)]
[test/font] Test more

13 years ago[API] Pass face to get_table()
Behdad Esfahbod [Thu, 12 May 2011 03:31:15 +0000 (23:31 -0400)]
[API] Pass face to get_table()

13 years ago[API] Remove const from font user_data
Behdad Esfahbod [Thu, 12 May 2011 03:25:28 +0000 (23:25 -0400)]
[API] Remove const from font user_data

13 years ago[test/font] More tests
Behdad Esfahbod [Thu, 12 May 2011 03:22:55 +0000 (23:22 -0400)]
[test/font] More tests

13 years ago[test/font] More tests
Behdad Esfahbod [Thu, 12 May 2011 03:12:58 +0000 (23:12 -0400)]
[test/font] More tests

13 years ago[test/font] More get_empty() tests
Behdad Esfahbod [Thu, 12 May 2011 03:07:47 +0000 (23:07 -0400)]
[test/font] More get_empty() tests

13 years ago[test/font] Test get_face() / get_parent()
Behdad Esfahbod [Thu, 12 May 2011 03:06:02 +0000 (23:06 -0400)]
[test/font] Test get_face() / get_parent()

13 years ago[test/font] Add test_font_properties()
Behdad Esfahbod [Thu, 12 May 2011 03:05:02 +0000 (23:05 -0400)]
[test/font] Add test_font_properties()

13 years ago[test/font] Start adding tests for hb-font.h
Behdad Esfahbod [Thu, 12 May 2011 02:52:35 +0000 (22:52 -0400)]
[test/font] Start adding tests for hb-font.h

13 years ago[API] Rename hb_face_create_for_data() to hb_face_create()
Behdad Esfahbod [Thu, 12 May 2011 02:49:29 +0000 (22:49 -0400)]
[API] Rename hb_face_create_for_data() to hb_face_create()

13 years ago[API] Add hb_ot_layout_substitute_start/finish()
Behdad Esfahbod [Thu, 12 May 2011 02:33:13 +0000 (22:33 -0400)]
[API] Add hb_ot_layout_substitute_start/finish()

13 years agoRemove unused hb_set_t
Behdad Esfahbod [Thu, 12 May 2011 02:23:15 +0000 (22:23 -0400)]
Remove unused hb_set_t

13 years agoRemove hb_static_threadsafe_set_t
Behdad Esfahbod [Thu, 12 May 2011 02:21:38 +0000 (22:21 -0400)]
Remove hb_static_threadsafe_set_t

13 years agoUse constructor/destructor for hb_ot_shape_plan_t
Behdad Esfahbod [Thu, 12 May 2011 02:18:31 +0000 (22:18 -0400)]
Use constructor/destructor for hb_ot_shape_plan_t

13 years agoMinor
Behdad Esfahbod [Thu, 12 May 2011 02:00:56 +0000 (22:00 -0400)]
Minor

13 years agoFix compile with no mutex available
Behdad Esfahbod [Thu, 12 May 2011 01:31:25 +0000 (21:31 -0400)]
Fix compile with no mutex available

13 years agoFree static mutex'es
Behdad Esfahbod [Thu, 12 May 2011 01:28:01 +0000 (21:28 -0400)]
Free static mutex'es

13 years agoStreamline mutex stuff
Behdad Esfahbod [Thu, 12 May 2011 01:27:52 +0000 (21:27 -0400)]
Streamline mutex stuff

13 years agoRemove unused hb_mutex_trylock()
Behdad Esfahbod [Thu, 12 May 2011 01:14:34 +0000 (21:14 -0400)]
Remove unused hb_mutex_trylock()

13 years ago[test] Add tests for _get_empty() funcs
Behdad Esfahbod [Thu, 12 May 2011 01:12:44 +0000 (21:12 -0400)]
[test] Add tests for _get_empty() funcs

13 years ago[TODO] Update
Behdad Esfahbod [Thu, 12 May 2011 01:08:31 +0000 (21:08 -0400)]
[TODO] Update

13 years ago[API] Add hb_*_get_empty() for all objects
Behdad Esfahbod [Wed, 11 May 2011 22:14:44 +0000 (18:14 -0400)]
[API] Add hb_*_get_empty() for all objects

13 years ago[API] Add HB_UNTAG()
Behdad Esfahbod [Wed, 11 May 2011 22:06:12 +0000 (18:06 -0400)]
[API] Add HB_UNTAG()

Useful in C API only.

13 years agoMinor
Behdad Esfahbod [Wed, 11 May 2011 22:02:48 +0000 (18:02 -0400)]
Minor

13 years agoPlug more leaks
Behdad Esfahbod [Wed, 11 May 2011 18:30:56 +0000 (14:30 -0400)]
Plug more leaks

All good now.

13 years agoPlug leaks
Behdad Esfahbod [Wed, 11 May 2011 18:19:18 +0000 (14:19 -0400)]
Plug leaks

13 years ago[unicode] Simplify method setting
Behdad Esfahbod [Wed, 11 May 2011 15:55:11 +0000 (11:55 -0400)]
[unicode] Simplify method setting

13 years agoMinor
Behdad Esfahbod [Wed, 11 May 2011 15:48:28 +0000 (11:48 -0400)]
Minor

13 years agoAdd maxp table
Behdad Esfahbod [Wed, 11 May 2011 14:31:33 +0000 (10:31 -0400)]
Add maxp table

Not used for anything right now.  Will use to get num_glyphs in the future.

13 years agoMinor
Behdad Esfahbod [Wed, 11 May 2011 12:58:21 +0000 (08:58 -0400)]
Minor

13 years ago[API] Change signature of get_contour_point and get_kerning ffuncs
Behdad Esfahbod [Wed, 11 May 2011 04:24:34 +0000 (00:24 -0400)]
[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.

13 years ago[font] Do user-space conversion when chaining up to parent font
Behdad Esfahbod [Wed, 11 May 2011 04:15:37 +0000 (00:15 -0400)]
[font] Do user-space conversion when chaining up to parent font

13 years agoMinor
Behdad Esfahbod [Wed, 11 May 2011 04:04:15 +0000 (00:04 -0400)]
Minor

13 years agoRemove hb_ot_layout_context_t, simplify code
Behdad Esfahbod [Wed, 11 May 2011 04:02:02 +0000 (00:02 -0400)]
Remove hb_ot_layout_context_t, simplify code

13 years agoMake default font-funcs chain-up to the parent
Behdad Esfahbod [Wed, 11 May 2011 00:49:02 +0000 (20:49 -0400)]
Make default font-funcs chain-up to the parent

13 years ago[API] Pass down closure user_data to font funcs
Behdad Esfahbod [Wed, 11 May 2011 00:41:13 +0000 (20:41 -0400)]
[API] Pass down closure user_data to font funcs

13 years agoWhitespace
Behdad Esfahbod [Wed, 11 May 2011 00:14:44 +0000 (20:14 -0400)]
Whitespace

13 years ago[API] Remove font_funcs func getter functions
Behdad Esfahbod [Wed, 11 May 2011 00:04:26 +0000 (20:04 -0400)]
[API] Remove font_funcs func getter functions

13 years ago[API] Add hb_font_create_sub_font() and hb_font_get_parent()
Behdad Esfahbod [Wed, 11 May 2011 00:02:49 +0000 (20:02 -0400)]
[API] Add hb_font_create_sub_font() and hb_font_get_parent()

Not quite useful just yet.

13 years ago[font] Fix internal sign of x/y_scale
Behdad Esfahbod [Tue, 10 May 2011 23:57:00 +0000 (19:57 -0400)]
[font] Fix internal sign of x/y_scale

Should have been done as part of da975419884a535281745f30f4b32fee0bc8a7a1

13 years ago[API] Remove broken-by-design hb_font_unset_funcs()
Behdad Esfahbod [Tue, 10 May 2011 23:40:44 +0000 (19:40 -0400)]
[API] Remove broken-by-design hb_font_unset_funcs()

13 years agoAdd hb_font_make/is_immutable()
Behdad Esfahbod [Tue, 10 May 2011 23:39:32 +0000 (19:39 -0400)]
Add hb_font_make/is_immutable()

13 years agoFix build without mutex
Behdad Esfahbod [Tue, 10 May 2011 23:21:07 +0000 (19:21 -0400)]
Fix build without mutex

13 years agoRemove duplicate atomic_int implementation
Behdad Esfahbod [Tue, 10 May 2011 23:18:12 +0000 (19:18 -0400)]
Remove duplicate atomic_int implementation

13 years agoFix set implementation to be truly threadsafe even with destroy() callbacks
Behdad Esfahbod [Tue, 10 May 2011 23:12:49 +0000 (19:12 -0400)]
Fix set implementation to be truly threadsafe even with destroy() callbacks

The test/object test is passing again, instead of deadlocking.

13 years ago[test] Always initialize gthread such that our mutex() stuff is tested
Behdad Esfahbod [Tue, 10 May 2011 23:11:27 +0000 (19:11 -0400)]
[test] Always initialize gthread such that our mutex() stuff is tested

Now the test/object test deadlocks as expected.  Fix coming.

13 years ago[test/object] Test user_data with destroy() callback that calls user_data
Behdad Esfahbod [Tue, 10 May 2011 23:00:07 +0000 (19:00 -0400)]
[test/object] Test user_data with destroy() callback that calls user_data

Exposes the non-atomicity of user_data opertaions at this time because
we call finish() while still locked and modifying the object.  In fact,
I'm surprised that it doesn't deadlock.  It should.

13 years agoAdd DOAP file
Behdad Esfahbod [Tue, 10 May 2011 21:55:40 +0000 (17:55 -0400)]
Add DOAP file

13 years ago[test/blob] Fix bug in test
Behdad Esfahbod [Tue, 10 May 2011 21:48:34 +0000 (17:48 -0400)]
[test/blob] Fix bug in test

13 years ago[test/blob] Add create_sub_blob()
Behdad Esfahbod [Tue, 10 May 2011 21:41:44 +0000 (17:41 -0400)]
[test/blob] Add create_sub_blob()

13 years ago[test] Test blob API
Behdad Esfahbod [Tue, 10 May 2011 21:37:08 +0000 (17:37 -0400)]
[test] Test blob API

13 years ago[API] Simplify blob API, remove lock
Behdad Esfahbod [Sat, 7 May 2011 02:28:26 +0000 (22:28 -0400)]
[API] Simplify blob API, remove lock

13 years agoAdd -Bsymbolic-functions to linker flags
Behdad Esfahbod [Fri, 6 May 2011 23:30:59 +0000 (19:30 -0400)]
Add -Bsymbolic-functions to linker flags

13 years ago[TODO] Update
Behdad Esfahbod [Fri, 6 May 2011 23:30:46 +0000 (19:30 -0400)]
[TODO] Update

13 years agoRemove unused hb_blob_try_writable_inplace()
Behdad Esfahbod [Fri, 6 May 2011 23:20:52 +0000 (19:20 -0400)]
Remove unused hb_blob_try_writable_inplace()

13 years agoAdd note re deadlocks
Behdad Esfahbod [Fri, 6 May 2011 20:28:10 +0000 (16:28 -0400)]
Add note re deadlocks

13 years ago[API] Add hb_language_get_default()
Behdad Esfahbod [Fri, 6 May 2011 04:04:28 +0000 (00:04 -0400)]
[API] Add hb_language_get_default()

It uses locale information to detect default language.  It's used by
hb_shape() whenever language is not set on the buffer.

Not sure how to properly test it in the test suite.  Tested by observing
that with DejaVu Sans we select the proper local glyph version for U+431
under Serbian locale.  See http://www.pango.org/ScriptGallery

13 years ago[API] Add version macros and functions
Behdad Esfahbod [Fri, 6 May 2011 01:31:04 +0000 (21:31 -0400)]
[API] Add version macros and functions

Step version up to 0.5.0.

Also, fix to pass "make distcheck"

13 years agoAdd disable-static libtool flag
Behdad Esfahbod [Thu, 5 May 2011 23:47:59 +0000 (19:47 -0400)]
Add disable-static libtool flag

No one who builds harfbuzz static uses the autotools build system to do it.

13 years agoRemove win32-dll libtool flag
Behdad Esfahbod [Thu, 5 May 2011 23:47:12 +0000 (19:47 -0400)]
Remove win32-dll libtool flag

Since we're not win32-dll clean the way libtool docs define it.

13 years agoAdd AC_CANONICAL_HOST
Behdad Esfahbod [Thu, 5 May 2011 23:37:53 +0000 (19:37 -0400)]
Add AC_CANONICAL_HOST

13 years agoFix build with older glib
Behdad Esfahbod [Thu, 5 May 2011 20:24:42 +0000 (16:24 -0400)]
Fix build with older glib

13 years ago[buffer] Remove wrong optimization
Behdad Esfahbod [Thu, 5 May 2011 20:09:45 +0000 (16:09 -0400)]
[buffer] Remove wrong optimization

While the cluster fields of the glyph string are usually sorted, they
wouldn't be in special cases (for example for non-native direction).
Blindly using bsearch is plain wrong.  If we want to reintroduce this
optimization we have to make sure we know the buffer clusters are
monotonic and in which direction.  Not sure it's worth it though.

13 years agoMake user_data access threadsafe
Behdad Esfahbod [Thu, 5 May 2011 19:33:19 +0000 (15:33 -0400)]
Make user_data access threadsafe

For now, by taking a global user_data mutex.