apps/home/video-player.git
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.

13 years agoShrink code
Behdad Esfahbod [Thu, 5 May 2011 19:28:37 +0000 (15:28 -0400)]
Shrink code

13 years agoUse threadsafe set implementation for hb_language lookups
Behdad Esfahbod [Thu, 5 May 2011 19:14:04 +0000 (15:14 -0400)]
Use threadsafe set implementation for hb_language lookups

Note that the static variable has to be a global static, as gcc
implements local statics differently and that would require linking
to libstdc++, which we don't want.

13 years agoAdd hb_threadsafe_set_t
Behdad Esfahbod [Thu, 5 May 2011 19:07:54 +0000 (15:07 -0400)]
Add hb_threadsafe_set_t

13 years agoUse hb_array_t for hb_language_t mapping
Behdad Esfahbod [Thu, 5 May 2011 19:00:43 +0000 (15:00 -0400)]
Use hb_array_t for hb_language_t mapping

13 years agoMove code around
Behdad Esfahbod [Thu, 5 May 2011 18:47:53 +0000 (14:47 -0400)]
Move code around

13 years ago[TODO] Remove done items
Behdad Esfahbod [Thu, 5 May 2011 18:39:24 +0000 (14:39 -0400)]
[TODO] Remove done items

13 years agoReplace fixed-size lookup_maps array with hb_array_t
Behdad Esfahbod [Thu, 5 May 2011 18:38:16 +0000 (14:38 -0400)]
Replace fixed-size lookup_maps array with hb_array_t

13 years agoReplace fixed-size feature_maps array with hb_array_t
Behdad Esfahbod [Thu, 5 May 2011 18:12:37 +0000 (14:12 -0400)]
Replace fixed-size feature_maps array with hb_array_t

13 years agoReplace fixed-size feature_infos array with hb_array_t
Behdad Esfahbod [Thu, 5 May 2011 17:42:19 +0000 (13:42 -0400)]
Replace fixed-size feature_infos array with hb_array_t

13 years agoMinor
Behdad Esfahbod [Thu, 5 May 2011 17:24:07 +0000 (13:24 -0400)]
Minor

13 years agoReplace hb_map_t with hb_set_t which is more intuitive and flexible
Behdad Esfahbod [Thu, 5 May 2011 17:21:04 +0000 (13:21 -0400)]
Replace hb_map_t with hb_set_t which is more intuitive and flexible

13 years agoMake array/map implementation more generic
Behdad Esfahbod [Thu, 5 May 2011 16:39:51 +0000 (12:39 -0400)]
Make array/map implementation more generic

13 years agoMake hb_mutex_*() macros take a pointer
Behdad Esfahbod [Thu, 5 May 2011 04:21:16 +0000 (00:21 -0400)]
Make hb_mutex_*() macros take a pointer

More intuitive.

13 years agoAdd hb_static_mutex_t
Behdad Esfahbod [Thu, 5 May 2011 04:17:43 +0000 (00:17 -0400)]
Add hb_static_mutex_t

13 years agoMove code around
Behdad Esfahbod [Wed, 4 May 2011 23:27:37 +0000 (19:27 -0400)]
Move code around

Mutex (and Windows.h by extension) are fairly isolated now.

13 years ago[ft] Fix font->face handling
Behdad Esfahbod [Tue, 3 May 2011 05:03:53 +0000 (01:03 -0400)]
[ft] Fix font->face handling

Don't use _cached()

13 years agoMove Win32 thread-safety stuff to hb-object-private.h
Behdad Esfahbod [Tue, 3 May 2011 04:49:06 +0000 (00:49 -0400)]
Move Win32 thread-safety stuff to hb-object-private.h

The Win32 definitions for LONG, ULONG, etc conflicts with
hb-open-type.h.  Avoid that by making sure hb-object-private.h
and hb-open-type.h are not included in the same compilation unit.

13 years agoRefactor to keep hb-object-private.h and hb-open-type.h separate
Behdad Esfahbod [Tue, 3 May 2011 04:35:53 +0000 (00:35 -0400)]
Refactor to keep hb-object-private.h and hb-open-type.h separate

Needed to be able to include <Windows.h> from hb-object-private.h.

13 years ago[blob] Implement sub_blob() in terms of create()
Behdad Esfahbod [Tue, 3 May 2011 04:19:18 +0000 (00:19 -0400)]
[blob] Implement sub_blob() in terms of create()

Fixes problem with uninitialized sub_blob->mutex among other things.

Reported by Bradley Grainger.

13 years agoImplement win32 thread-safety stuff
Behdad Esfahbod [Tue, 3 May 2011 04:09:16 +0000 (00:09 -0400)]
Implement win32 thread-safety stuff

Patch from Bradley Grainger.

13 years agoAdd hb_mutex_free() and use it
Behdad Esfahbod [Tue, 3 May 2011 00:57:28 +0000 (20:57 -0400)]
Add hb_mutex_free() and use it

Based on patch by Bradley Grainger.

13 years agoCosmetic
Behdad Esfahbod [Tue, 3 May 2011 00:52:21 +0000 (20:52 -0400)]
Cosmetic

13 years ago[API] Make hb_font_create() take a face and reference it
Behdad Esfahbod [Tue, 3 May 2011 00:46:32 +0000 (20:46 -0400)]
[API] Make hb_font_create() take a face and reference it

13 years agoProtect NULL in a couple places
Behdad Esfahbod [Tue, 3 May 2011 00:18:58 +0000 (20:18 -0400)]
Protect NULL in a couple places

13 years agoFix bug in array growth implementation
Behdad Esfahbod [Mon, 2 May 2011 23:54:29 +0000 (19:54 -0400)]
Fix bug in array growth implementation

With this, test/object is now passing.  Yay!

13 years agoFix bug in map implementation
Behdad Esfahbod [Mon, 2 May 2011 23:54:17 +0000 (19:54 -0400)]
Fix bug in map implementation

13 years ago[object] Fix bug in get_user_data() implementation
Behdad Esfahbod [Mon, 2 May 2011 23:53:39 +0000 (19:53 -0400)]
[object] Fix bug in get_user_data() implementation

13 years ago[test/object] Add test for object lifecycle stuff
Behdad Esfahbod [Mon, 2 May 2011 23:52:47 +0000 (19:52 -0400)]
[test/object] Add test for object lifecycle stuff

Revealed many bugs in the (untested and known buggy) user_data
support.

13 years agoCosmetic
Behdad Esfahbod [Mon, 2 May 2011 23:52:32 +0000 (19:52 -0400)]
Cosmetic

13 years ago[API] Rename hb_blob_create_empty() to hb_blob_get_empty()
Behdad Esfahbod [Mon, 2 May 2011 23:36:39 +0000 (19:36 -0400)]
[API] Rename hb_blob_create_empty() to hb_blob_get_empty()

13 years ago[face] Return nil face if blob is inert
Behdad Esfahbod [Mon, 2 May 2011 23:35:53 +0000 (19:35 -0400)]
[face] Return nil face if blob is inert

13 years ago[buffer] Fail in _create() if we cannot pre-allocate the requested size
Behdad Esfahbod [Mon, 2 May 2011 23:35:05 +0000 (19:35 -0400)]
[buffer] Fail in _create() if we cannot pre-allocate the requested size

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

13 years ago[unicode] Make _get_parent() return _nil object instead of NULL
Behdad Esfahbod [Mon, 2 May 2011 19:59:57 +0000 (15:59 -0400)]
[unicode] Make _get_parent() return _nil object instead of NULL

13 years ago[test/unicode] Add script roundtrip tests for glib and ICU
Behdad Esfahbod [Mon, 2 May 2011 18:58:04 +0000 (14:58 -0400)]
[test/unicode] Add script roundtrip tests for glib and ICU

13 years ago[test/unicode] Better test chainup
Behdad Esfahbod [Mon, 2 May 2011 18:33:53 +0000 (14:33 -0400)]
[test/unicode] Better test chainup

13 years ago[test/unicode] Port the _custom test to test all property setters
Behdad Esfahbod [Mon, 2 May 2011 18:21:30 +0000 (14:21 -0400)]
[test/unicode] Port the _custom test to test all property setters

13 years ago[test/unicode] Test Unicode 5.2+ but don't fail
Behdad Esfahbod [Mon, 2 May 2011 18:03:55 +0000 (14:03 -0400)]
[test/unicode] Test Unicode 5.2+ but don't fail

13 years ago[test/buffer] Clean up testing
Behdad Esfahbod [Mon, 2 May 2011 17:52:17 +0000 (13:52 -0400)]
[test/buffer] Clean up testing

Getting the hang of how to cleanly use gtest.

13 years agoMinor
Behdad Esfahbod [Mon, 2 May 2011 16:38:54 +0000 (12:38 -0400)]
Minor

13 years ago[icu] Make sure we return script UNKNOWN instead of INVALID
Behdad Esfahbod [Mon, 2 May 2011 16:37:45 +0000 (12:37 -0400)]
[icu] Make sure we return script UNKNOWN instead of INVALID

13 years agoISO 15924 fixes
Behdad Esfahbod [Mon, 2 May 2011 16:35:14 +0000 (12:35 -0400)]
ISO 15924 fixes

Update to http://unicode.org/iso15924

Fixes some of the test failures in test-unicode with ICU.  Still
one more to fix before the test passes.

13 years ago[test/unicode] Add log messages
Behdad Esfahbod [Mon, 2 May 2011 16:06:18 +0000 (12:06 -0400)]
[test/unicode] Add log messages

Use with --verbose to see what's failing

13 years agoMinor
Behdad Esfahbod [Mon, 2 May 2011 00:04:01 +0000 (20:04 -0400)]
Minor

13 years ago[test/unicode] Add testing of all unicode properties
Behdad Esfahbod [Fri, 29 Apr 2011 20:49:57 +0000 (16:49 -0400)]
[test/unicode] Add testing of all unicode properties

ICU fails for now.

13 years ago[test/unicode] Test is/make_immutable()
Behdad Esfahbod [Fri, 29 Apr 2011 16:17:09 +0000 (12:17 -0400)]
[test/unicode] Test is/make_immutable()

13 years ago[test/unicode] Use text fixture instead of static variables
Behdad Esfahbod [Fri, 29 Apr 2011 16:00:38 +0000 (12:00 -0400)]
[test/unicode] Use text fixture instead of static variables

13 years ago[test/buffer] Add UTF-16 tests
Behdad Esfahbod [Thu, 28 Apr 2011 23:44:45 +0000 (19:44 -0400)]
[test/buffer] Add UTF-16 tests

13 years ago[test/buffer] Add more extensive UTF-8 test data from glib
Behdad Esfahbod [Thu, 28 Apr 2011 23:37:51 +0000 (19:37 -0400)]
[test/buffer] Add more extensive UTF-8 test data from glib

13 years ago[test/buffer] Add initial utf-8 tests
Behdad Esfahbod [Thu, 28 Apr 2011 22:34:42 +0000 (18:34 -0400)]
[test/buffer] Add initial utf-8 tests

13 years agoAdd test suite infrastructure
Behdad Esfahbod [Thu, 28 Apr 2011 21:10:44 +0000 (17:10 -0400)]
Add test suite infrastructure

Wraps around glib for convenience and ease of use.

13 years ago[API Remove hb_font_funcs_copy()
Behdad Esfahbod [Thu, 28 Apr 2011 20:03:29 +0000 (16:03 -0400)]
[API Remove hb_font_funcs_copy()

Will be adding font_funcs subclassing instead.

13 years ago[TODO] Remove finished items
Behdad Esfahbod [Thu, 28 Apr 2011 20:02:40 +0000 (16:02 -0400)]
[TODO] Remove finished items

13 years agoAdd _hb_unsigned_int_mul_overflows
Behdad Esfahbod [Thu, 28 Apr 2011 20:01:01 +0000 (16:01 -0400)]
Add _hb_unsigned_int_mul_overflows

13 years agoDesable possibly lethal test on 64-bit machines
Behdad Esfahbod [Thu, 28 Apr 2011 19:54:16 +0000 (15:54 -0400)]
Desable possibly lethal test on 64-bit machines

13 years ago[test/buffer] Test pre_allocate() and allocation_successful()
Behdad Esfahbod [Thu, 28 Apr 2011 18:24:16 +0000 (14:24 -0400)]
[test/buffer] Test pre_allocate() and allocation_successful()

13 years agoFix possible but improbable overflow in hb_array_t
Behdad Esfahbod [Thu, 28 Apr 2011 16:58:28 +0000 (12:58 -0400)]
Fix possible but improbable overflow in hb_array_t

13 years ago[buffer] More error handling
Behdad Esfahbod [Thu, 28 Apr 2011 16:56:49 +0000 (12:56 -0400)]
[buffer] More error handling

Should be all set now.

13 years ago[test/buffer] Add test pre_alloc(); hangs in the buffer code right now
Behdad Esfahbod [Thu, 28 Apr 2011 16:28:54 +0000 (12:28 -0400)]
[test/buffer] Add test pre_alloc(); hangs in the buffer code right now

Because the following loop overflows:

  while (size > new_allocated)
      new_allocated += (new_allocated >> 1) + 32;

13 years ago[test/buffer] Test reset(), set_length(), and set/get_unicode_data()
Behdad Esfahbod [Thu, 28 Apr 2011 16:15:24 +0000 (12:15 -0400)]
[test/buffer] Test reset(), set_length(), and set/get_unicode_data()

13 years ago[test/buffer] Test reverse() and reverse_clusters()
Behdad Esfahbod [Thu, 28 Apr 2011 15:56:29 +0000 (11:56 -0400)]
[test/buffer] Test reverse() and reverse_clusters()

13 years ago[API] Add _set/get_user_data() for all objects
Behdad Esfahbod [Thu, 28 Apr 2011 01:46:01 +0000 (21:46 -0400)]
[API] Add _set/get_user_data() for all objects

13 years agoMove code around
Behdad Esfahbod [Thu, 28 Apr 2011 01:45:51 +0000 (21:45 -0400)]
Move code around

13 years agoAdd initial implementation of user_data to objects
Behdad Esfahbod [Thu, 28 Apr 2011 01:22:32 +0000 (21:22 -0400)]
Add initial implementation of user_data to objects

13 years ago[object] Remove unnecessary use of macros
Behdad Esfahbod [Wed, 27 Apr 2011 20:38:03 +0000 (16:38 -0400)]
[object] Remove unnecessary use of macros

13 years ago[blob] Use HB_FUNC instead of __FUNCTION__
Behdad Esfahbod [Wed, 27 Apr 2011 20:14:04 +0000 (16:14 -0400)]
[blob] Use HB_FUNC instead of __FUNCTION__

13 years ago[object] Add tracing support back in
Behdad Esfahbod [Wed, 27 Apr 2011 20:12:12 +0000 (16:12 -0400)]
[object] Add tracing support back in

13 years agoGNOME Bug 612402 - (hb-arm) HarfBuzz compilation fix for arm
Behdad Esfahbod [Wed, 27 Apr 2011 19:10:12 +0000 (15:10 -0400)]
GNOME Bug 612402 - (hb-arm) HarfBuzz compilation fix for arm

With gcc on arm, request 8-bit structure alignment.

13 years ago[API] Add hb_direction_from/to_string()
Behdad Esfahbod [Wed, 27 Apr 2011 18:48:19 +0000 (14:48 -0400)]
[API] Add hb_direction_from/to_string()

And hb-view --direction argument.

13 years agoRename hb-view.c and test.c to .cc files
Behdad Esfahbod [Wed, 27 Apr 2011 16:15:06 +0000 (12:15 -0400)]
Rename hb-view.c and test.c to .cc files

13 years ago[TODO] Add hb-view items
Behdad Esfahbod [Wed, 27 Apr 2011 16:14:53 +0000 (12:14 -0400)]
[TODO] Add hb-view items

13 years agoMake buffer size growth start from 32 instead of 8
Behdad Esfahbod [Wed, 27 Apr 2011 13:33:58 +0000 (09:33 -0400)]
Make buffer size growth start from 32 instead of 8

13 years ago[API] Add hb_unicode_funcs_get_default()
Behdad Esfahbod [Wed, 27 Apr 2011 13:24:37 +0000 (09:24 -0400)]
[API] Add hb_unicode_funcs_get_default()

13 years agoReplace simple macros with inline functions for better type safety
Behdad Esfahbod [Wed, 27 Apr 2011 05:49:03 +0000 (01:49 -0400)]
Replace simple macros with inline functions for better type safety

Now that we use C++ for all source code, lets benefit from it!

The hb_be_int16/32_get/put/eq() macros grow code size if replaced with
inline functions, so leave them as is.

13 years agoAdd TODO item
Behdad Esfahbod [Wed, 27 Apr 2011 05:48:56 +0000 (01:48 -0400)]
Add TODO item

13 years agoDon't return in void function
Behdad Esfahbod [Wed, 27 Apr 2011 05:41:24 +0000 (01:41 -0400)]
Don't return in void function

Would have been nice if gcc had warned...

13 years agoFurther simplify object handling
Behdad Esfahbod [Thu, 21 Apr 2011 22:35:58 +0000 (18:35 -0400)]
Further simplify object handling

13 years agoAdd hb_object_header_t which is the common part of all objects
Behdad Esfahbod [Thu, 21 Apr 2011 22:24:02 +0000 (18:24 -0400)]
Add hb_object_header_t which is the common part of all objects

Makes way for adding arbitrary user_data support.

13 years agoMove hb_reference_count_t to hb-private.h
Behdad Esfahbod [Thu, 21 Apr 2011 21:18:22 +0000 (17:18 -0400)]
Move hb_reference_count_t to hb-private.h

13 years agoUpdate Copyright headers
Behdad Esfahbod [Thu, 21 Apr 2011 21:14:28 +0000 (17:14 -0400)]
Update Copyright headers

13 years ago[hb-view] Accept numbers in feature tag name
Behdad Esfahbod [Thu, 21 Apr 2011 20:59:10 +0000 (16:59 -0400)]
[hb-view] Accept numbers in feature tag name

Reported by Adam Twardoch.

13 years agoRemove obsolete comment
Behdad Esfahbod [Thu, 21 Apr 2011 20:55:17 +0000 (16:55 -0400)]
Remove obsolete comment

Talking to Ryan Lortie, he thinks my comment doesn't make sense.

So I'm making the getter const.  Note that g_atomic_int_get()
casts that away itself, so we don't need to worry about that
(which kinda makes me uncomfortable actually).

13 years agoAdd ASSERT_STATIC_EXPR macro
Behdad Esfahbod [Thu, 21 Apr 2011 20:34:22 +0000 (16:34 -0400)]
Add ASSERT_STATIC_EXPR macro

Unused right now.

13 years agoCleanup hb_refrence_count_t
Behdad Esfahbod [Thu, 21 Apr 2011 20:16:21 +0000 (16:16 -0400)]
Cleanup hb_refrence_count_t

13 years ago[TODO] Remove finished items
Behdad Esfahbod [Thu, 21 Apr 2011 20:03:59 +0000 (16:03 -0400)]
[TODO] Remove finished items

13 years ago[API] Allow negative font x_scale/y_scale
Behdad Esfahbod [Thu, 21 Apr 2011 19:08:01 +0000 (15:08 -0400)]
[API] Allow negative font x_scale/y_scale

I was reconsidering whether y should grow down, since all three/four
times I've used this API I was tricked and got that wrong in my use.
So I was very inclined to make y grow down instead of up.  However,
considering that the font space has y up and it would be very confusing
for callbacks to work against that, I decided that what I really want
is for the user to be able to set y_scale to a negative number to imply
that user-space y grows down.

Changing x_scale/y_scale from unsigned int to int allows that, and I've
made pango to use that instead of negating glyph y_offset later.  hb-ft
however still has y group up.  I *guess* that's how FreeType works?
I'm not sure, FreeType docs don't make this clear...

I'm happy with the resolution :-).