|
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.
|
|
7ff7401c
|
2011-04-11T13:27:30
|
|
Make hb_tag_from_string(NULL) return HB_TAG_NONE
|
|
db5227c4
|
2011-04-11T13:16:08
|
|
Move macros around
|
|
07233581
|
2011-04-11T13:12:37
|
|
Rename HB_TAG_STR() to HB_TAG_CHAR4()
The problem with HB_TAG_STR() was that it expected a string of size 4
exactly, and unlike hb_tag_from_string() it doesn't pad the tag with
space characters. So, the new name is more appropriate.
|
|
d77b7620
|
2011-04-11T12:29:52
|
|
Add few more paratheses to the HB_TAG macro
Never hurts.
|
|
b13640de
|
2011-04-11T12:29:31
|
|
A few more ASSERTs
|
|
ae9eeaff
|
2011-04-11T11:49:08
|
|
Remove warning message from public header file
Since we now assert thos in hb-private.h, the int types cannot be wrong.
(Except for when someone else includes hb-common.h in a very broken
configuration, but that's not our problem!)
Plus, we don't use inline in the public headers, so remove that too.
|
|
6fd5364b
|
2011-04-11T11:47:14
|
|
Assert int types
|
|
a71b9c85
|
2011-04-06T14:04:56
|
|
Disable 'cswh' by default except for Arabic shaper
That better matches OpenType spec. Note that we enable it for all
Arabic-shaper scripts. Ie. we enable it by default for Syriac too,
but the SyriacOT spec does not require it. I think this is a more
useful compromise than special-casing for Arabic script alone.
|
|
cab6f65b
|
2011-04-04T15:36:51
|
|
[hb-view] setlocale (LC_ALL, "")
For now we don't use anything from the locale, but we should default
to using $LANG, etc, if --language is not specified. Right?
|
|
fb9ca1bf
|
2011-04-04T14:50:09
|
|
[hb-view] Rewrite --features parsing, with range support
The --features parsing handles errors now. More importantly, it
allos limiting individual features to specific byte ranges. The
format is Python-esque. Here is how it all works:
Syntax: Value: Start: End:
Setting value:
"kern" 1 0 ∞ # Turn feature on
"+kern" 1 0 ∞ # Turn feature off
"-kern" 0 0 ∞ # Turn feature off
"kern=0" 0 0 ∞ # Turn feature off
"kern=1" 1 0 ∞ # Turn feature on
"kern=2" 2 0 ∞ # Choose 2nd alternate
Setting index:
"kern[]" 1 0 ∞ # Turn feature on
"kern[:]" 1 0 ∞ # Turn feature on
"kern[5:]" 1 5 ∞ # Turn feature on, partial
"kern[:5]" 1 0 5 # Turn feature on, partial
"kern[3:5]" 1 3 5 # Turn feature on, range
"kern[3]" 1 3 3+1 # Turn feature on, single char
Mixing it all:
"kern[3:5]=0" 1 3 5 # Turn feature off for range
|
|
ccc6745a
|
2011-04-04T14:49:50
|
|
[hb-view] Use cached hb-ft face creation
Avoids recreating the face the second time we call draw().
|
|
1b4a2cc0
|
2011-04-04T14:45:28
|
|
[hb-view] Add --debug
Frees all allocated memory before exiting. Useful for valgrind run.
|
|
b2da26d1
|
2011-04-01T15:48:43
|
|
[hb-view] Support --features
Accepts values like:
--features="-mkmk,aalt=2,calt=1,+cswh"
A minus sign means "=0", a plus sign means "=1". Default is "=1".
A minus sign overrides an explicit value.
|
|
f48ff19b
|
2011-04-01T14:19:10
|
|
Sort options for clarity
|
|
5d91c3d5
|
2011-03-16T17:36:32
|
|
Add script to/from ISO 15924 tag support
Also adds --script support to hb-view.
If a script tag is not known to us, we pass the ISO 15924 tag around.
Right now, the OT layer ignores that, but we can fix it to blindly
convert that to an OT script tag.
|
|
3286fc0e
|
2011-03-16T14:53:32
|
|
Let hb_shape() guess script and direction...
- Rename HB_SCRIPT_INVALID_CODE to HB_SCRIPT_INVALID
- Add HB_DIRECTION_INVALID
- Make hb_script_get_horizontal_direction() public
- Make hb_shape() guess script from buffer text (first non-common
non-inherit script) if buffer script is set to HB_SCRIPT_INVALID (this
is NOT the default.)
- Make hb_shape() guess direction from buffer script if buffer direction
is set to HB_DIRECTION_INVALID (this is NOT the default.)
- Make hb-view.c set INVALID script and direction on the buffer.
The above changes are meant to make hb-view fairly useful for uni-script
uni-direction text. The guessing behavior however is NOT the default of
hb_shape() and must be asked for explicitly. This is intended, because
the guess is not a suitable substitute to full-fledged bidi and script
segmentation. It's just a testing tool.
|
|
b7b29684
|
2011-03-02T01:01:03
|
|
[hb-view] Handle write_to_png errors
|
|
c2cb98c8
|
2011-03-01T23:18:09
|
|
[hb-view] Link with -lm
|
|
b5dd44e2
|
2011-02-28T10:13:52
|
|
Fix possible overflow
|
|
a4b781e9
|
2011-02-23T12:47:56
|
|
Default background color shall either be white or transparent
Definitely not black!
|
|
5353bf43
|
2011-02-22T18:06:19
|
|
Add initial hb-view tool
Currently doesn't handle script or direction.
|
|
82438c6a
|
2011-02-15T18:37:29
|
|
Fix #pragma message for MSVC.
__LOC__ was renamed to _HB__LOC__ in cd7555 but the corresponding
change wasn't made in hb-private.h.
|
|
ba9ab8d6
|
2011-01-10T07:45:41
|
|
Fix language extension matching
|
|
7bbe14be
|
2011-01-09T22:29:14
|
|
Fix 'make distcheck'
|
|
cc1a8a93
|
2011-01-06T14:58:52
|
|
Fix ChanContext backtrack matching with GPOS
Reported on mailing list by Keith Stribley and Khaled Hosny.
|
|
1c318302
|
2011-01-06T14:44:14
|
|
Remove unused realloc
We always allocate and grow str and pos together.
|
|
756f794a
|
2010-12-26T20:52:40
|
|
Remove Graphite backend
It was unmaintained and the code has to be replaced to use the new
grphite-ng code base.
|
|
f3d9d987
|
2010-12-22T01:39:29
|
|
Docs
|
|
d86a5b3c
|
2010-12-21T18:36:25
|
|
Bug 32274 - classic mongolian shaper
Add support for classic Mongolian script to the Arabic shaper.
Still work to be done around U+180E MONGOLIAN VOWEL SEPARATOR as it
should not be included in the final glyph stream the same way that
ZWNJ, etc should not appear in the final glyph stream.
But the joining part should be done.
There remains the question of how should the U+18A9 MONGOLIAN LETTER ALI
GALI DAGALGA be handled as it has General Category NSM but a letter
nonetheless. For now, our generic logic makes this a joining T instead
of joining D as other Mongolian letters are.
|
|
b0e7378f
|
2010-12-21T14:19:32
|
|
Reroute Mandaic shaping through the Arabic shaper
We added Mandaic joining data to the Arabic shaper a while ago, but
were not actually using the Arabic shaper for Mandaic. Fixed.
|
|
88e7f374
|
2010-12-21T14:18:24
|
|
Annotate the Arabic joining table with block information
|
|
1482a39e
|
2010-12-17T20:15:05
|
|
Rename remaining metrics uses to extents
|
|
22c53765
|
2010-12-14T23:51:29
|
|
Rename TableDirectory to TableRecord as per OpenType 1.6
|
|
33e8b861
|
2010-12-13T15:54:56
|
|
Update 'head' table to OpenType 1.6
|
|
b7683335
|
2010-12-13T14:22:35
|
|
Disallow ligature substitutions replacing one glyph
|
|
7eb87511
|
2010-12-13T14:13:35
|
|
Mozilla Bug 618592 - freeze on typekit
Fix apply_lookup() for zero-input broken fonts.
|