Commit Graph

140 Commits

Author SHA1 Message Date
Behdad Esfahbod e6c09cdf43 Remove the pre_allocate argument from hb_buffer_create()
For two reasons:

1. User can always call hb_buffer_pre_allocate() themselves, and

2. Now we do a pre_alloc in add_utfX anyway, so the total number of
reallocs is limited to a small number (~3) anyway.  This just makes the
API cleaner.
2011-08-19 19:20:26 +02:00
Behdad Esfahbod 217cc81cd9 [test/shape-complex] Print cluster and position info in --verbose 2011-08-09 14:00:44 +02:00
Behdad Esfahbod 708403e7f3 Fix warnings with old glib 2011-08-09 13:52:36 +02:00
Behdad Esfahbod 38b2118724 [API] Add hb_ft_font_set_funcs(), remove hb_ft_get_font_funcs()
Remove hb_ft_get_font_funcs() as it cannot be used by the user anyway.

Add hb_ft_font_set_funcs().  Which will make the font internally use
FreeType.  That is, no need for the font to have created using the
hb-ft API.  Just create using hb_face_create()/hb_font_create() and
then call this on the font (after having set font scale).  This
internally creates an FT_Face and attached to the font.
2011-08-09 11:10:32 +02:00
Behdad Esfahbod c0975e1231 Fix build again 2011-08-09 00:46:18 +02:00
Behdad Esfahbod 33ccc77902 [API] Make set_user_data() functions take a replace parameter
We need this to set data on objects safely without worrying that some
other thread unsets it by setting it at the same time.
2011-08-09 00:43:24 +02:00
Behdad Esfahbod 458c89a856 Minor 2011-08-09 00:19:19 +02:00
Behdad Esfahbod f1f848e2e4 Fix build 2011-08-08 23:41:06 +02:00
Behdad Esfahbod 206e329345 [test] test-object is not FreeType-specific, move it to the right place 2011-08-07 01:10:55 -04:00
Behdad Esfahbod 9da554504e Add hb_shape_list_shapers() 2011-08-05 19:59:02 -04:00
Behdad Esfahbod 3ca6c4ecc2 Change hb_shape() API back to what it was, add hb_shape_full()
I disliked changing hb_shape() API, and disliked the fact that it was
returning a bool now.  So, reverted.  Added new API for the extra
functionality.
2011-08-05 17:22:19 -04:00
Behdad Esfahbod 02aeca985b [API] Changes to main shape API
hb_shape() now accepts a shaper_options and a shaper_list argument.
Both can be set to NULL to emulate previous API.  And in most situations
they are expected to be set to NULL.

hb_shape() also returns a boolean for now.  If shaper_list is NULL, the
return value can be ignored.

shaper_options is ignored for now, but otherwise it should be a
NULL-terminated list of strings.

shaper_list is a NULL-terminated list of strings.  Currently recognized
strings are "ot" for native OpenType Layout implementation, "uniscribe"
for the Uniscribe backend, and "fallback" for the non-complex backend
(that will be implemented shortly).  The fallback backend never fails.

The env var HB_SHAPER_LIST is also parsed and honored.  It's a
colon-separated list of shaper names.  The fallback shaper is invoked if
none of the env-listed shapers succeed.

New API hb_buffer_guess_properties() added.
2011-08-04 22:38:09 -04:00
Behdad Esfahbod 0530ca9a18 Fix out-of-tree build 2011-08-04 01:42:59 -04:00
Behdad Esfahbod 199abbd0f1 Minor 2011-08-02 13:59:47 -04:00
Behdad Esfahbod 4f052b93c0 Fix build with glib but not freetype 2011-08-02 13:44:24 -04:00
Behdad Esfahbod c21be799da Minor 2011-08-02 12:05:49 -04:00
Behdad Esfahbod 07cedd81f4 Minor 2011-07-30 21:16:51 -04:00
Behdad Esfahbod 3a9b14dfdf Minor 2011-07-30 20:23:55 -04:00
Behdad Esfahbod 8613193bbf [test] Fix problem with N'ko test direction
Old HarfBuzz test suite always shaped as left-to-right and hence had wrong
0x14db, direction expected glyphstring for N'ko.  Doh!

Failures down from 92 to 88.
2011-07-30 20:21:40 -04:00
Behdad Esfahbod 1a1b501315 Minor 2011-07-29 16:36:46 -04:00
Behdad Esfahbod dd5546de15 Minor 2011-07-29 16:27:31 -04:00
Behdad Esfahbod 63c0ef4a07 Fix decompose() implementations to work with non-starter non-composables
Add tests.
2011-07-21 20:58:42 -04:00
Behdad Esfahbod ad903e66b1 s/COMBINING_MARK/SPACING_MARK/ here too. Oops! 2011-07-21 10:17:22 -04:00
Behdad Esfahbod 498e1a9be6 [icu] Implement compose()/decompose() 2011-07-20 23:19:49 -04:00
Behdad Esfahbod ffd4a436f7 Add tests for compose()/decompose()
Adjust glib fallback implementation.

The tests are not hooked up for ICU yet.
2011-07-20 22:31:23 -04:00
Behdad Esfahbod 23db8d5c92 [test] Work around glib <= 2.30 API 2011-07-12 12:02:26 -04:00
Behdad Esfahbod c4641723fb [API] Add compose() and decompose() unicode funcs, rename other ones
Add compose() and decompose() unicode funcs.  These implement
pair-wise canonical composition/decomposition.

The glib/icu implementations are lacking for now.  We are adding
API for this to glib, but I cannot find any useful API in ICU.
May end of implementing these in-house.

Changed all unicode_funcs callback names to remove the "_get" part.
Eg, hb_unicode_get_script_func_t is now hb_unicode_script_func_t,
and hb_unicode_get_script() is hb_unicode_script() now.
2011-07-08 00:09:31 -04:00
Behdad Esfahbod fc551edbf2 Add todo
I'm too lazy to fix the tests now.
2011-07-07 16:09:38 -04:00
Behdad Esfahbod 253a57fb5a [test-shape-complex] Remove the greek tests
They are outdated with respect to the DejaVu Sans I'm using.
We need to add font version checking to the tests.
2011-06-28 17:26:03 -04:00
Behdad Esfahbod afa74bf904 [test-shape-complex] Print out expected and actual glyphstrings upon failure
One has to run the test with --verbose to see that right now.
2011-06-28 17:25:17 -04:00
Behdad Esfahbod 42d453b023 [test] Name tests after their input string 2011-06-28 16:59:16 -04:00
Behdad Esfahbod 2741316978 Minor
Towards a better test runner.
2011-06-28 16:21:31 -04:00
Behdad Esfahbod cc674cbf7f Minor 2011-06-28 16:17:16 -04:00
Behdad Esfahbod 20d8a3982a [test] Remove disabled code
We'd add normalization and decomposition tests later.
2011-06-28 16:16:53 -04:00
Behdad Esfahbod 9704f0ca6c [test] Restructure shape test data a bit 2011-06-28 16:15:46 -04:00
Behdad Esfahbod a346e923a9 [test] Add Indic tests from harfbuzz.old
Needs fonts to be put in test/fonts.  Tests are skipped otherwise.
Run with --verbose for details.  Working on improving the test runner
to make it easier to make sense of what's going on.
2011-06-28 12:49:18 -04:00
Behdad Esfahbod 31f18abecb Minor compiler warning fixes 2011-06-15 09:49:58 -04:00
Behdad Esfahbod 75ba4073ca [test] Rename valgrind-log to log-vaglring.txt 2011-05-27 04:14:42 -04:00
Behdad Esfahbod 654f88fbc9 [test-common] Test hb_direction_to_string()
Caught by "make check-symbols".
2011-05-27 03:40:04 -04:00
Behdad Esfahbod 18bced134f [test] Rename test-symbols to check-symbols
Shows undocumented symbols.
2011-05-27 03:40:04 -04:00
Behdad Esfahbod 0e482ec6ba [test/unicode] Fix double-free
Caught by "make check-valgrind".
2011-05-27 03:40:04 -04:00
Behdad Esfahbod 28b1bac541 [test] Switch to automake-based test-runner
Adds check-valgrind among other modes.  We do not run under gtester by
default anymore.
2011-05-27 03:40:04 -04:00
Behdad Esfahbod adbc97ddde [test] Add test-symbols that checks API symbol text coverage
We're not at 100% coverage yet, so do not enable the test by default.
2011-05-27 03:40:03 -04:00
Behdad Esfahbod 9313b9aa66 [test/version] Test hb-version.h 2011-05-27 03:40:03 -04:00
Behdad Esfahbod 5bf56ea056 [TODO] Add item 2011-05-25 14:44:08 -04:00
Behdad Esfahbod 2d8ebcb9d0 [API] One last font-funcs API change
Now that vertical text works correctly, I'm doing a last round
modification of the font-funcs API to simplify.  Expect no more
changes around here.
2011-05-25 11:27:33 -04:00
Behdad Esfahbod d31691296f [test] Update to API changes 2011-05-25 11:01:32 -04:00
Behdad Esfahbod 744970af4d [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.
2011-05-17 17:12:34 -04:00
Behdad Esfahbod 5be7d047f6 Check for mmap()
Apparently there exist systems with mprotect(), but not mmap()?
2011-05-17 15:56:31 -04:00
Behdad Esfahbod 4053f3f788 Cosmetic 2011-05-16 17:03:27 -04:00