|
218e67b9
|
2011-05-05T15:28:37
|
|
Shrink code
|
|
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.
|
|
d37486d8
|
2011-05-05T15:07:54
|
|
Add hb_threadsafe_set_t
|
|
b45f32ee
|
2011-05-05T15:00:43
|
|
Use hb_array_t for hb_language_t mapping
|
|
21d2c92f
|
2011-05-05T14:47:53
|
|
Move code around
|
|
265ac614
|
2011-05-05T14:38:16
|
|
Replace fixed-size lookup_maps array with hb_array_t
|
|
6843569d
|
2011-05-05T14:12:37
|
|
Replace fixed-size feature_maps array with hb_array_t
|
|
44b0a4d2
|
2011-05-05T13:42:19
|
|
Replace fixed-size feature_infos array with hb_array_t
|
|
b214ec3a
|
2011-05-05T13:24:07
|
|
Minor
|
|
811482bd
|
2011-05-05T13:21:04
|
|
Replace hb_map_t with hb_set_t which is more intuitive and flexible
|
|
478a4253
|
2011-05-05T12:39:51
|
|
Make array/map implementation more generic
|
|
b81bd429
|
2011-05-05T00:21:16
|
|
Make hb_mutex_*() macros take a pointer
More intuitive.
|
|
a4b19009
|
2011-05-05T00:17:43
|
|
Add hb_static_mutex_t
|
|
56eb5ad6
|
2011-05-04T19:27:37
|
|
Move code around
Mutex (and Windows.h by extension) are fairly isolated now.
|
|
d2928858
|
2011-05-03T01:03:53
|
|
[ft] Fix font->face handling
Don't use _cached()
|
|
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.
|
|
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.
|
|
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.
|
|
fc52e9e4
|
2011-05-03T00:09:16
|
|
Implement win32 thread-safety stuff
Patch from Bradley Grainger.
|
|
f55272ec
|
2011-05-02T20:57:28
|
|
Add hb_mutex_free() and use it
Based on patch by Bradley Grainger.
|
|
8d518648
|
2011-05-02T20:52:21
|
|
Cosmetic
|
|
72657e4c
|
2011-05-02T20:46:32
|
|
[API] Make hb_font_create() take a face and reference it
|
|
cec6611c
|
2011-05-02T20:18:58
|
|
Protect NULL in a couple places
|
|
5a503036
|
2011-05-02T19:54:29
|
|
Fix bug in array growth implementation
With this, test/object is now passing. Yay!
|
|
16123e10
|
2011-05-02T19:54:17
|
|
Fix bug in map implementation
|
|
1cd5969f
|
2011-05-02T19:53:39
|
|
[object] Fix bug in get_user_data() implementation
|
|
4911062d
|
2011-05-02T19:36:39
|
|
[API] Rename hb_blob_create_empty() to hb_blob_get_empty()
|
|
1ab1d3e3
|
2011-05-02T19:35:53
|
|
[face] Return nil face if blob is inert
|
|
e87867cb
|
2011-05-02T19:35:05
|
|
[buffer] Fail in _create() if we cannot pre-allocate the requested size
|
|
c784c67a
|
2011-05-02T15:59:57
|
|
[unicode] Make _get_parent() return _nil object instead of NULL
|
|
03034acb
|
2011-05-02T12:37:45
|
|
[icu] Make sure we return script UNKNOWN instead of INVALID
|
|
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.
|
|
6af9cff5
|
2011-04-29T12:00:38
|
|
[test/unicode] Use text fixture instead of static variables
|
|
243673d6
|
2011-04-28T19:37:51
|
|
[test/buffer] Add more extensive UTF-8 test data from glib
|
|
c7ffe2ad
|
2011-04-28T16:03:29
|
|
[API Remove hb_font_funcs_copy()
Will be adding font_funcs subclassing instead.
|
|
30f34d08
|
2011-04-28T16:02:40
|
|
[TODO] Remove finished items
|
|
080a0eb7
|
2011-04-28T16:01:01
|
|
Add _hb_unsigned_int_mul_overflows
|
|
32640428
|
2011-04-28T14:24:16
|
|
[test/buffer] Test pre_allocate() and allocation_successful()
|
|
123aa04f
|
2011-04-28T12:58:28
|
|
Fix possible but improbable overflow in hb_array_t
|
|
e0db4b86
|
2011-04-28T12:56:49
|
|
[buffer] More error handling
Should be all set now.
|
|
5fa849b7
|
2011-04-27T21:46:01
|
|
[API] Add _set/get_user_data() for all objects
|
|
852e08ec
|
2011-04-27T21:45:51
|
|
Move code around
|
|
29c67d3f
|
2011-04-27T21:22:32
|
|
Add initial implementation of user_data to objects
|
|
47e71d96
|
2011-04-27T16:38:03
|
|
[object] Remove unnecessary use of macros
|
|
8be1420f
|
2011-04-27T16:14:04
|
|
[blob] Use HB_FUNC instead of __FUNCTION__
|
|
ae008b90
|
2011-04-27T16:12:12
|
|
[object] Add tracing support back in
|
|
39a840ae
|
2011-04-27T14:48:19
|
|
[API] Add hb_direction_from/to_string()
And hb-view --direction argument.
|
|
f1425a54
|
2011-04-27T12:15:06
|
|
Rename hb-view.c and test.c to .cc files
|
|
65e0063e
|
2011-04-27T09:33:58
|
|
Make buffer size growth start from 32 instead of 8
|
|
d4bee9f8
|
2011-04-27T09:24:37
|
|
[API] Add hb_unicode_funcs_get_default()
|
|
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.
|
|
40a9b815
|
2011-04-27T01:48:56
|
|
Add TODO item
|
|
ebdc8346
|
2011-04-27T01:41:24
|
|
Don't return in void function
Would have been nice if gcc had warned...
|
|
ec6f9c2f
|
2011-04-21T18:35:58
|
|
Further simplify object handling
|
|
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.
|
|
a9f24c80
|
2011-04-21T17:18:22
|
|
Move hb_reference_count_t to hb-private.h
|
|
2409d5f8
|
2011-04-21T17:14:28
|
|
Update Copyright headers
|
|
08da7a38
|
2011-04-21T16:59:10
|
|
[hb-view] Accept numbers in feature tag name
Reported by Adam Twardoch.
|
|
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).
|
|
dcb7026f
|
2011-04-21T16:34:22
|
|
Add ASSERT_STATIC_EXPR macro
Unused right now.
|
|
3e8bdbf9
|
2011-04-21T16:16:21
|
|
Cleanup hb_refrence_count_t
|
|
783a7d69
|
2011-04-21T16:03:59
|
|
[TODO] Remove finished items
|
|
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 :-).
|
|
4d559cdd
|
2011-04-21T14:58:23
|
|
[icu] Remove big script switch(), rely on reverse-lookup
|
|
d18431b4
|
2011-04-20T18:59:10
|
|
Move hb_reference_count_t from macros to inline methods
|
|
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.
|
|
f19f4f9b
|
2011-04-20T18:25:56
|
|
Rename hb-blob.c to hb-blob.cc in preparation of more changes
|
|
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.
|
|
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.
|
|
2d7b61a4
|
2011-04-20T16:40:56
|
|
[TODO] Remove done items
|
|
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!
|
|
440a76b6
|
2011-04-20T14:20:00
|
|
[OT] Fix script to ot-script-tag conversion
|
|
a3036a3e
|
2011-04-20T14:13:23
|
|
Minor
|
|
5668189c
|
2011-04-20T03:03:32
|
|
[API] font: move user_data before destroy()
This is the common convention for language binding tools.
|
|
e5847f75
|
2011-04-20T02:59:28
|
|
[API] blob: move user_data before destroy()
This is the common convention for language binding tools.
|
|
f144a8ea
|
2011-04-20T02:54:42
|
|
[icu] Add two-way script conversion functions
Also optimizes the common-direction script lookup.
|
|
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.
|
|
5c8c1b68
|
2011-04-20T02:29:22
|
|
Remove verbose comments
|
|
fb194b87
|
2011-04-20T02:00:47
|
|
unicode: Cleanup implementation
|
|
ecfb7738
|
2011-04-20T01:34:51
|
|
Cosmetic
|
|
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.
|
|
f85faee9
|
2011-04-19T00:38:01
|
|
[API] Rename hb_buffer_add_glyph() to hb_buffer_add()
|
|
aab0de50
|
2011-04-19T00:32:19
|
|
[API] Add hb_buffer_allocation_successful()
Returns the error status of the buffer.
|
|
02a534b2
|
2011-04-15T18:34:45
|
|
[API] Rename hb_buffer_ensure() to hb_buffer_pre_allocate()
The new name is self-documenting.
|
|
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.
|
|
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.
|
|
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).
|
|
00bec2c9
|
2011-04-15T19:16:54
|
|
Move enum types to hb-common.h
|
|
b54cd07b
|
2011-04-15T19:12:01
|
|
Mark internal buffer variables private
|
|
0e8d35c0
|
2011-04-15T19:07:10
|
|
Add hb_script_from_string()
|
|
8f0d7e0c
|
2011-04-15T18:59:56
|
|
Remove hb_buffer_clear_positions(), add hb_ot_layout_position_start()
|
|
2fc56edf
|
2011-04-15T18:35:08
|
|
[API] Remove hb_buffer_clear()
One should use hb_buffer_reset() really.
|
|
5814dfa3
|
2011-04-15T14:41:04
|
|
Cosmetic
|
|
3cbdf70e
|
2011-04-15T12:32:06
|
|
Make hb_language_t typesafe
|
|
c910bec8
|
2011-04-13T15:49:06
|
|
Add hb_buffer_reset() and hb_buffer_set_length()
|
|
69ea23cb
|
2011-04-13T15:02:40
|
|
Minor
|
|
8e4bb3ca
|
2011-04-11T17:55:58
|
|
Fold hb-language.[ch] into hb-common.[ch]
|
|
316b7a1a
|
2011-04-11T17:49:10
|
|
Make hb_language_from_string("") return NULL language
|
|
99b74760
|
2011-04-11T15:47:40
|
|
Rename hb_category_t to hb_unicode_general_category_t
|
|
4188096a
|
2011-04-11T14:58:28
|
|
Make HB_TAG_CHAR4 private
It's just sugar.
|