Behdad Esfahbod
3506672ce9
Port _nil objects to Null() machinery
...
Finally, unified!
2018-08-06 06:17:48 -07:00
Ebrahim Byagowi
24b8b9b227
Resolve clang's used-but-marked-unused warnings
2018-04-23 11:38:45 -07:00
Behdad Esfahbod
dbdbfe3d7b
Use nullptr instead of NULL
2017-10-15 12:11:08 +02:00
Behdad Esfahbod
53543f8b3e
Ship UCDN and use it by default
...
So we are not relying on version of Unicode data in glib...
Fixes https://github.com/behdad/harfbuzz/issues/386
Fixes https://github.com/behdad/harfbuzz/issues/388
2017-01-05 20:12:32 -08:00
Behdad Esfahbod
b8811429b6
Fix Since tags
...
Fixes https://github.com/behdad/harfbuzz/issues/103
2015-09-03 15:53:22 +04:30
Behdad Esfahbod
9ae156b768
Fix pragma usage
...
https://bugs.freedesktop.org/show_bug.cgi?id=91228
Commit cdcdfe61b9
changed two `#pragma
message` to `#pragma error` in hb-unicode.cc, however MSVC uses #error,
just like the #else branch. `#pragma error` is an unknown pragma so
MSVC does not fail the build because of it, which I believe was the
intention of that commit.
If it's meant to be an #error, then the #ifdef for _MSC_VER can be
removed entirely.
2015-07-05 22:43:17 +01:00
Sascha Brawer
01c3a88543
Fix "Since:" tags
...
Based on data from http://upstream-tracker.org/versions/harfbuzz.html
Resolves #103
2015-06-01 13:25:27 +02:00
Behdad Esfahbod
cdcdfe61b9
Err, instead of warn, if mutex / atomic / unicode funcs are missing
...
Hopefully this results in fewer badly built HarfBuzz integrations.
2015-04-08 13:25:04 -07:00
Behdad Esfahbod
b91904a40d
[bindings] Replace deprecated allow-none with optional and nullable
2015-01-06 15:43:14 -08:00
Behdad Esfahbod
3f310dc0ca
Disallow changing settings on immutable face
...
Ouch!
2014-07-22 16:26:27 -04:00
Behdad Esfahbod
09732cc669
Remove dead warning
2014-03-19 12:00:17 -07:00
Behdad Esfahbod
af1aa362ca
If HAVE_ICU_BUILTIN is defined, use hb-icu Unicode callbacks
...
Useful for Android / Chrome / etc when ICU is built in the same
library as harfbuzz itself.
2014-03-14 15:54:13 -07:00
Behdad Esfahbod
085d4291a9
[introspection] Disable constructors for now
...
Since our types are not associated with their methods, marking
constructors makes them inaccessible from bindings. Undo for now.
2013-09-12 17:14:33 -04:00
Behdad Esfahbod
288f289997
[docs/introspection] More annotations
2013-09-06 17:30:54 -04:00
Behdad Esfahbod
d9afa11133
Build hb-icu into libharfbuzz-icu.so
2013-05-28 15:27:40 -04:00
Behdad Esfahbod
3f33f0d1f2
Import UCDN into source tree
...
https://github.com/grigorig/ucdn
2012-10-02 16:23:29 -04:00
Behdad Esfahbod
d5045a5f40
[ICU] Use new normalizer2 compose/decompose API
...
It's considerably faster than the fallback implementation we had
previously!
2012-08-11 21:27:15 -04:00
Behdad Esfahbod
56c9e7c004
Fill out combining class resetting for fallback shaping Thai/Lao/Tibetan
2012-08-09 21:14:23 -04:00
Behdad Esfahbod
21756934a1
[OT] Implement fallback positioning
...
Implemented for Arabic, Hebrew, and generic marks.
Activated if no GPOS table present.
2012-08-08 01:20:45 -04:00
Behdad Esfahbod
6adf417bc1
Use a lookup table for modified_combining_class
2012-08-01 18:07:42 -04:00
Behdad Esfahbod
208f70f055
Inline Unicode callbacks internally
2012-08-01 17:13:10 -04:00
Behdad Esfahbod
7470315a3e
Move unicode accessors around
2012-08-01 17:01:59 -04:00
Behdad Esfahbod
21fdcee001
Add hb_unicode_combining_class_t
2012-08-01 16:28:50 -04:00
Behdad Esfahbod
378d279bbf
Implement Unicode compatibility decompositions
...
Based on patch from Philip Withnall.
https://bugs.freedesktop.org/show_bug.cgi?id=41095
2012-07-31 21:36:16 -04:00
Behdad Esfahbod
7afb14407e
[Indic] Recategorize Telugu length marks
...
Fixes 8 more Telugu tests. Failures at 15 (0.00154548%).
2012-07-30 13:54:46 -04:00
Behdad Esfahbod
42848453bf
[Thai] Reorder U+0E3A THAI VOWEL SIGN PHINTHU
...
Uniscribe reorders U+0E3A to be after U+0E38 and U+0E39. We do that by
modifying the ccc for U+0E3A.
Fixes the two remaining Thai failures (see previous commit).
2012-07-23 13:52:07 -04:00
Behdad Esfahbod
4c450c703f
[Indic] Recompose Bengali Ya,Nukta
...
This is a bunch of hacks for now.
Improves Bengali a bit.
2012-07-20 18:13:04 -04:00
Behdad Esfahbod
2e193b240e
[Indic] Don't split U+0AC9
...
Althought IndicMatraCategory.txt classifies it as Top_And_Right matra,
it does not have Unicode decomposition, and Uniscribe does not do
anything special about it either.
Gujarati failures down from 0.672% to 0.0130966%.
2012-07-20 14:02:35 -04:00
Behdad Esfahbod
8c973ebf0f
[Indic] Implement per-script matra positioning
...
Following what the spec says.
Brings down Telugu failures from 40% to 3.75%, and Kannada failures from
44% to 10%. Does NOT affect other scripts' test results.
2012-07-19 13:25:08 -04:00
Behdad Esfahbod
b01d9b3d90
[Indic] Disallow decomposition of a couple characters
...
This is a hack for now. Will be fixed when we do complex-shaper-driven
normalization properly.
The results with or without decomposition are the same, but Uniscribe
does not normalize, so this matches better.
2012-07-19 11:25:49 -04:00
Behdad Esfahbod
91cade7555
[Indic/Unicode] Decompose Sinhala split matras the way Uniscribe likes
...
Makes no visual difference.
Fixes most of the failures. Down from 15% to 1.3%!
2012-07-18 16:50:41 -04:00
Behdad Esfahbod
d487fff266
Split matras without a Unicode decomposition
...
This is a hack for now, to get us going with Khmer. This will be
refactored properly later to move the complex logic into complex
shapers.
2012-07-16 13:25:57 -04:00
Behdad Esfahbod
0594a24484
Cleanup TRUE/FALSE vs true/false
2012-06-05 20:35:40 -04:00
Behdad Esfahbod
be4560a3b5
Undo default unicode-funcs to avoid static initializer again
2012-06-05 18:43:57 -04:00
Behdad Esfahbod
f06ab8a426
Better hide nil objects and make them const
2012-06-05 14:49:14 -04:00
Behdad Esfahbod
bb09f0ec10
Minor
2012-04-24 16:02:12 -04:00
Behdad Esfahbod
2db2a56682
Move code around
2012-04-05 16:40:37 -04: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
c605bbbb6d
Remove C++ guards from source files
...
Where causing issues for people with MSVC.
2011-08-04 20:00:53 -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
22fdc66712
[glib] Add compose() and decompose() implementations with fallback
2011-07-20 21:51:37 -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
891c4755ba
Humm, undo some shuffling
...
In preparation for adding more advanced unicode funcs.
2011-07-07 23:27:27 -04:00
Behdad Esfahbod
4b6317c4f4
More code shuffling
2011-07-07 23:14:42 -04:00
Behdad Esfahbod
80a6833b03
[API] Add hb_*_get_empty() for all objects
2011-05-11 18:21:58 -04:00
Behdad Esfahbod
7aa12ebdff
[unicode] Simplify method setting
2011-05-11 11:55:11 -04:00
Behdad Esfahbod
56eb5ad6f9
Move code around
...
Mutex (and Windows.h by extension) are fairly isolated now.
2011-05-04 19:27:37 -04:00
Behdad Esfahbod
c784c67a28
[unicode] Make _get_parent() return _nil object instead of NULL
2011-05-02 15:59:57 -04:00
Behdad Esfahbod
5fa849b77d
[API] Add _set/get_user_data() for all objects
2011-04-27 21:46:01 -04:00
Behdad Esfahbod
47e71d9661
[object] Remove unnecessary use of macros
2011-04-27 16:41:08 -04:00