src


Log

Author Commit Date CI Message
Behdad Esfahbod 218e67b9 2011-05-05T15:28:37 Shrink code
Behdad Esfahbod b8d6183e 2011-05-05T15:14:04 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.
Behdad Esfahbod d37486d8 2011-05-05T15:07:54 Add hb_threadsafe_set_t
Behdad Esfahbod b45f32ee 2011-05-05T15:00:43 Use hb_array_t for hb_language_t mapping
Behdad Esfahbod 21d2c92f 2011-05-05T14:47:53 Move code around
Behdad Esfahbod 265ac614 2011-05-05T14:38:16 Replace fixed-size lookup_maps array with hb_array_t
Behdad Esfahbod 6843569d 2011-05-05T14:12:37 Replace fixed-size feature_maps array with hb_array_t
Behdad Esfahbod 44b0a4d2 2011-05-05T13:42:19 Replace fixed-size feature_infos array with hb_array_t
Behdad Esfahbod b214ec3a 2011-05-05T13:24:07 Minor
Behdad Esfahbod 811482bd 2011-05-05T13:21:04 Replace hb_map_t with hb_set_t which is more intuitive and flexible
Behdad Esfahbod 478a4253 2011-05-05T12:39:51 Make array/map implementation more generic
Behdad Esfahbod b81bd429 2011-05-05T00:21:16 Make hb_mutex_*() macros take a pointer More intuitive.
Behdad Esfahbod a4b19009 2011-05-05T00:17:43 Add hb_static_mutex_t
Behdad Esfahbod 56eb5ad6 2011-05-04T19:27:37 Move code around Mutex (and Windows.h by extension) are fairly isolated now.
Behdad Esfahbod d2928858 2011-05-03T01:03:53 [ft] Fix font->face handling Don't use _cached()
Behdad Esfahbod 20001794 2011-05-03T00:49:06 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.
Behdad Esfahbod 266b3441 2011-05-03T00:35:53 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.
Behdad Esfahbod d4141a44 2011-05-03T00:19:18 [blob] Implement sub_blob() in terms of create() Fixes problem with uninitialized sub_blob->mutex among other things. Reported by Bradley Grainger.
Behdad Esfahbod fc52e9e4 2011-05-03T00:09:16 Implement win32 thread-safety stuff Patch from Bradley Grainger.
Behdad Esfahbod f55272ec 2011-05-02T20:57:28 Add hb_mutex_free() and use it Based on patch by Bradley Grainger.
Behdad Esfahbod 8d518648 2011-05-02T20:52:21 Cosmetic
Behdad Esfahbod 72657e4c 2011-05-02T20:46:32 [API] Make hb_font_create() take a face and reference it
Behdad Esfahbod cec6611c 2011-05-02T20:18:58 Protect NULL in a couple places
Behdad Esfahbod 5a503036 2011-05-02T19:54:29 Fix bug in array growth implementation With this, test/object is now passing. Yay!
Behdad Esfahbod 16123e10 2011-05-02T19:54:17 Fix bug in map implementation
Behdad Esfahbod 1cd5969f 2011-05-02T19:53:39 [object] Fix bug in get_user_data() implementation
Behdad Esfahbod 4911062d 2011-05-02T19:36:39 [API] Rename hb_blob_create_empty() to hb_blob_get_empty()
Behdad Esfahbod 1ab1d3e3 2011-05-02T19:35:53 [face] Return nil face if blob is inert
Behdad Esfahbod e87867cb 2011-05-02T19:35:05 [buffer] Fail in _create() if we cannot pre-allocate the requested size
Behdad Esfahbod c784c67a 2011-05-02T15:59:57 [unicode] Make _get_parent() return _nil object instead of NULL
Behdad Esfahbod 03034acb 2011-05-02T12:37:45 [icu] Make sure we return script UNKNOWN instead of INVALID
Behdad Esfahbod d02985ec 2011-05-02T12:35:14 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.
Behdad Esfahbod 6af9cff5 2011-04-29T12:00:38 [test/unicode] Use text fixture instead of static variables
Behdad Esfahbod 243673d6 2011-04-28T19:37:51 [test/buffer] Add more extensive UTF-8 test data from glib
Behdad Esfahbod c7ffe2ad 2011-04-28T16:03:29 [API Remove hb_font_funcs_copy() Will be adding font_funcs subclassing instead.
Behdad Esfahbod 30f34d08 2011-04-28T16:02:40 [TODO] Remove finished items
Behdad Esfahbod 080a0eb7 2011-04-28T16:01:01 Add _hb_unsigned_int_mul_overflows
Behdad Esfahbod 32640428 2011-04-28T14:24:16 [test/buffer] Test pre_allocate() and allocation_successful()
Behdad Esfahbod 123aa04f 2011-04-28T12:58:28 Fix possible but improbable overflow in hb_array_t
Behdad Esfahbod e0db4b86 2011-04-28T12:56:49 [buffer] More error handling Should be all set now.
Behdad Esfahbod 5fa849b7 2011-04-27T21:46:01 [API] Add _set/get_user_data() for all objects
Behdad Esfahbod 852e08ec 2011-04-27T21:45:51 Move code around
Behdad Esfahbod 29c67d3f 2011-04-27T21:22:32 Add initial implementation of user_data to objects
Behdad Esfahbod 47e71d96 2011-04-27T16:38:03 [object] Remove unnecessary use of macros
Behdad Esfahbod 8be1420f 2011-04-27T16:14:04 [blob] Use HB_FUNC instead of __FUNCTION__
Behdad Esfahbod ae008b90 2011-04-27T16:12:12 [object] Add tracing support back in
Behdad Esfahbod 39a840ae 2011-04-27T14:48:19 [API] Add hb_direction_from/to_string() And hb-view --direction argument.
Behdad Esfahbod f1425a54 2011-04-27T12:15:06 Rename hb-view.c and test.c to .cc files
Behdad Esfahbod 65e0063e 2011-04-27T09:33:58 Make buffer size growth start from 32 instead of 8
Behdad Esfahbod d4bee9f8 2011-04-27T09:24:37 [API] Add hb_unicode_funcs_get_default()
Behdad Esfahbod 153142da 2011-04-27T01:49:03 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.
Behdad Esfahbod 40a9b815 2011-04-27T01:48:56 Add TODO item
Behdad Esfahbod ebdc8346 2011-04-27T01:41:24 Don't return in void function Would have been nice if gcc had warned...
Behdad Esfahbod ec6f9c2f 2011-04-21T18:35:58 Further simplify object handling
Behdad Esfahbod fca368c4 2011-04-21T18:24:02 Add hb_object_header_t which is the common part of all objects Makes way for adding arbitrary user_data support.
Behdad Esfahbod a9f24c80 2011-04-21T17:18:22 Move hb_reference_count_t to hb-private.h
Behdad Esfahbod 2409d5f8 2011-04-21T17:14:28 Update Copyright headers
Behdad Esfahbod 08da7a38 2011-04-21T16:59:10 [hb-view] Accept numbers in feature tag name Reported by Adam Twardoch.
Behdad Esfahbod 24229eb1 2011-04-21T16:55:17 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).
Behdad Esfahbod dcb7026f 2011-04-21T16:34:22 Add ASSERT_STATIC_EXPR macro Unused right now.
Behdad Esfahbod 3e8bdbf9 2011-04-21T16:16:21 Cleanup hb_refrence_count_t
Behdad Esfahbod 783a7d69 2011-04-21T16:03:59 [TODO] Remove finished items
Behdad Esfahbod da975419 2011-04-21T15:08:01 [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 :-).
Behdad Esfahbod 4d559cdd 2011-04-21T14:58:23 [icu] Remove big script switch(), rely on reverse-lookup
Behdad Esfahbod d18431b4 2011-04-20T18:59:10 Move hb_reference_count_t from macros to inline methods
Behdad Esfahbod c57d454a 2011-04-20T18:50:27 Rename all private sources and headers to C++ files So we can liberally use the simple features of C++ that parts of the codebase is already using.
Behdad Esfahbod f19f4f9b 2011-04-20T18:25:56 Rename hb-blob.c to hb-blob.cc in preparation of more changes
Behdad Esfahbod 9417c1c0 2011-04-20T17:21:23 [API] Make hb_face_reference_table() return empty blob instead of NULL The idea here is that: - Like pretty much all other API in harfbuzz, user does not have to check for NULL. - In any caller code, the case of missing table should be handled exactly the same way that a too-short table is handled. Turning a non-existent talbe into a table of size 0 makes the user code safer.
Behdad Esfahbod c035812f 2011-04-20T17:03:00 [API] Rename hb_face_get_table() to hb_face_reference_table() That correctly reflects the reference ownership transfer happening.
Behdad Esfahbod 2d7b61a4 2011-04-20T16:40:56 [TODO] Remove done items
Behdad Esfahbod af029337 2011-04-20T15:49:31 [API] Remove hb_*_get_reference_count() This was a bizzare piece of API that I inherited from cairo. It has been wrong adding them to cairo in the first place. Remove them before someone uses them!
Behdad Esfahbod 440a76b6 2011-04-20T14:20:00 [OT] Fix script to ot-script-tag conversion
Behdad Esfahbod a3036a3e 2011-04-20T14:13:23 Minor
Behdad Esfahbod 5668189c 2011-04-20T03:03:32 [API] font: move user_data before destroy() This is the common convention for language binding tools.
Behdad Esfahbod e5847f75 2011-04-20T02:59:28 [API] blob: move user_data before destroy() This is the common convention for language binding tools.
Behdad Esfahbod f144a8ea 2011-04-20T02:54:42 [icu] Add two-way script conversion functions Also optimizes the common-direction script lookup.
Behdad Esfahbod 0809aadd 2011-04-20T02:44:29 [glib] Add two-way script conversion functions Also optimizes the common-direction script lookup to be an array lookup.
Behdad Esfahbod 5c8c1b68 2011-04-20T02:29:22 Remove verbose comments
Behdad Esfahbod fb194b87 2011-04-20T02:00:47 unicode: Cleanup implementation
Behdad Esfahbod ecfb7738 2011-04-20T01:34:51 Cosmetic
Ryan Lortie 2fd0c577 2011-04-20T00:19:20 [API] unicode: rework virtual functions for subclassing Unicode data providers can now be subclassed, including support for chain-up. The interface should now be nicely bindable, as well. Also fix glib unicode funcs that where broken after hb_script_t changes. Nicely caught by the test-unicode.c added in this commit.
Behdad Esfahbod f85faee9 2011-04-19T00:38:01 [API] Rename hb_buffer_add_glyph() to hb_buffer_add()
Behdad Esfahbod aab0de50 2011-04-19T00:32:19 [API] Add hb_buffer_allocation_successful() Returns the error status of the buffer.
Ryan Lortie 02a534b2 2011-04-15T18:34:45 [API] Rename hb_buffer_ensure() to hb_buffer_pre_allocate() The new name is self-documenting.
Ryan Lortie 70566bef 2011-04-15T18:32:36 [API} hb_buffer_get_glyph_{infos,positions}: Add length out parameter Return the length, whenever we return an array. Makes it easier on the language bindings.
Behdad Esfahbod 62879eeb 2011-04-18T23:40:21 [API] Use ISO 15924 tags for hb_script_t This simplifies the code, reduces static data, and makes the design more extensible to future additions of new scripts.
Behdad Esfahbod c0af193c 2011-04-15T19:26:24 Change buffer default properties to invalid This includes HB_DIRECTION_INVALID and HB_SCRIPT_INVALID. The INVALID will cause a "guess whatever from the text" in hb_shape(). While it's not ideal, it works better than the previous defaults at least (HB_DIRECTION_LTR and HB_SCRIPT_COMMON).
Behdad Esfahbod 00bec2c9 2011-04-15T19:16:54 Move enum types to hb-common.h
Behdad Esfahbod b54cd07b 2011-04-15T19:12:01 Mark internal buffer variables private
Behdad Esfahbod 0e8d35c0 2011-04-15T19:07:10 Add hb_script_from_string()
Behdad Esfahbod 8f0d7e0c 2011-04-15T18:59:56 Remove hb_buffer_clear_positions(), add hb_ot_layout_position_start()
Behdad Esfahbod 2fc56edf 2011-04-15T18:35:08 [API] Remove hb_buffer_clear() One should use hb_buffer_reset() really.
Behdad Esfahbod 5814dfa3 2011-04-15T14:41:04 Cosmetic
Behdad Esfahbod 3cbdf70e 2011-04-15T12:32:06 Make hb_language_t typesafe
Behdad Esfahbod c910bec8 2011-04-13T15:49:06 Add hb_buffer_reset() and hb_buffer_set_length()
Behdad Esfahbod 69ea23cb 2011-04-13T15:02:40 Minor
Behdad Esfahbod 8e4bb3ca 2011-04-11T17:55:58 Fold hb-language.[ch] into hb-common.[ch]
Behdad Esfahbod 316b7a1a 2011-04-11T17:49:10 Make hb_language_from_string("") return NULL language
Behdad Esfahbod 99b74760 2011-04-11T15:47:40 Rename hb_category_t to hb_unicode_general_category_t
Behdad Esfahbod 4188096a 2011-04-11T14:58:28 Make HB_TAG_CHAR4 private It's just sugar.