Commit Graph

2133 Commits

Author SHA1 Message Date
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
8aa801a6fd [Indic] Adjust position for split matras
We are going to split matras without a Unicode decompositions in a way
that the second half takes the codepoint of the whole matra.  So,
position them where the second half is supposed to end up.
2012-07-16 13:24:26 -04:00
Behdad Esfahbod
1feb8345a5 [GSUB] Allow 1-to-1 ligature substitutions!
Apparently Uniscribe allows these, and they are used in some Khmer fonts
shipped with Windows, namely, Daun Penh.
2012-07-16 13:23:40 -04:00
Behdad Esfahbod
29f106d7fb [Indic] Apply Above Forms 2012-07-16 12:05:35 -04:00
Behdad Esfahbod
fa2bd9fb63 Further simplify atomic ops on Visual Studio 2012-07-14 12:15:54 -04:00
Behdad Esfahbod
0a49235701 Minor 2012-07-13 13:20:49 -04:00
Behdad Esfahbod
11c4ad439e Add -Wcast-align 2012-07-13 11:29:31 -04:00
Behdad Esfahbod
a98d0ab186 Make sure HB_BEGIN_DECLS / HB_END_DECLS is only used in public headers
So we can use them to switch default visibility to internal if desired,
and use these to make only declared symbols public.
2012-07-13 10:19:10 -04:00
Behdad Esfahbod
5c5bc96216 Allow overriding HB_BEGIN_DECLS / HB_END_DECLS 2012-07-13 10:15:37 -04:00
Behdad Esfahbod
ec5f5f0f8a Don't export inline methods 2012-07-13 10:00:42 -04:00
Behdad Esfahbod
50a4e78b53 Check for exported weak symbols
Ouch, all our C++ inline functions are being exported (weakly) already.
Fix coming.
2012-07-13 09:48:39 -04:00
Behdad Esfahbod
b5aeb95afe Make hb_in_range() static 2012-07-13 09:45:54 -04:00
Behdad Esfahbod
271c8f8907 Minor 2012-07-13 09:32:30 -04:00
Behdad Esfahbod
391f1ff5d8 Fix _InterlockedCompareExchangePointer on x86 2012-07-13 09:04:07 -04:00
Behdad Esfahbod
2023e2b54d [ft] Disable ppem setting
The calculations were wrong.

FreeType makes it really hard to set size and ppem independently.
For now, disable it.  Need to come up with a fix later.
2012-07-11 19:01:26 -04:00
Behdad Esfahbod
cdf7444505 [ft] Use unfitted kerning if x_ppem is zero 2012-07-11 18:52:39 -04:00
Behdad Esfahbod
6d08c7f1b3 Revert "Towards templatizing common Lookup types"
This reverts commit 727135f3a9.

This is work-in-progress.  Didn't mean to push it out just yet.
2012-07-11 18:01:27 -04:00
Behdad Esfahbod
552bf3a9f9 Bump WINNT version requested from 500 to 600
Since we use the OpenType versions of Uniscribe functions, we are
relying on that version of the WINNT API.  Otherwise, usp10.h will hide
those symbols.
2012-07-11 18:00:28 -04:00
Behdad Esfahbod
9a5b421a64 Fix build with no Unicode funcs implementations provided 2012-07-11 18:00:28 -04:00
Behdad Esfahbod
6efe1eca66 Update git.mk to upstream 2012-07-11 18:00:28 -04:00
Behdad Esfahbod
727135f3a9 Towards templatizing common Lookup types 2012-07-11 18:00:28 -04:00
Behdad Esfahbod
1167c7bfc9 Minor 2012-07-11 18:00:28 -04:00
Behdad Esfahbod
aa116582e6 Minor 2012-07-11 18:00:28 -04:00
Behdad Esfahbod
1f13c7185f Add TODO item 2012-07-11 18:00:27 -04:00
Behdad Esfahbod
12f5c0a222 Fix check for Intel atomic ops 2012-06-26 11:16:13 -04:00
Behdad Esfahbod
6932a41fb6 Use octal-escaped UTF-8 characters instead of plain text
https://bugs.freedesktop.org/show_bug.cgi?id=50970
2012-06-26 10:46:31 -04:00
Behdad Esfahbod
8c0ea7bcb4 Disable introspection again
Until I figure out the build issues.  Sigh...
2012-06-24 13:20:56 -04:00
Behdad Esfahbod
8c5f5e6f5e Minor 2012-06-17 14:58:59 -04:00
Behdad Esfahbod
49f8e0cd9a GStaticMutex is deprecated 2012-06-16 15:40:03 -04:00
Behdad Esfahbod
5e113a4b79 g_thread_init() is deprecated 2012-06-16 15:26:13 -04:00
Behdad Esfahbod
1bc1cb3603 Make source more digestable for gobject-introspection 2012-06-16 15:21:55 -04:00
Behdad Esfahbod
84d781e54c Flesh out gobject-introspection stuff a bit 2012-06-16 15:21:41 -04:00
Behdad Esfahbod
49ee12ccd0 Add TODO item 2012-06-16 14:53:51 -04:00
Behdad Esfahbod
d3c8115d1a Minor 2012-06-12 09:52:57 -04:00
Behdad Esfahbod
2cf301968c Add hb_object_lock/unlock() 2012-06-09 14:58:01 -04:00
Behdad Esfahbod
6a5661f1e6 Ugh 2012-06-09 03:26:16 -04:00
Behdad Esfahbod
f211d5c291 More Oops! Fix fast-path with sub-type==0 2012-06-09 03:11:22 -04:00
Behdad Esfahbod
b1de6aa1f3 Oops! 2012-06-09 03:07:59 -04:00
Behdad Esfahbod
b12e2549cb Minor 2012-06-09 03:05:20 -04:00
Behdad Esfahbod
faf0f20253 Add sanitize() logic for fast-paths 2012-06-09 03:02:36 -04:00
Behdad Esfahbod
4e766ff28d Add fast-path for GPOS too
Shaves another 3% for DejaVu Sans long Latin strings.
2012-06-09 02:53:57 -04:00
Behdad Esfahbod
993c51915f Add fast-path to GSUB to check coverage
Shaves a good 10% off DejaVu Sans with simple Latin text for me.
Now, DejaVu is very ChainContext-intensive, but it's also a very
popular font!
2012-06-09 02:48:16 -04:00
Behdad Esfahbod
f19e0b0099 Match input before backtrack
Makes more sense, optimization-wise.
2012-06-09 02:26:57 -04:00
Behdad Esfahbod
67bb9e8cea Add set add_coverage() to Coverage() 2012-06-09 02:02:46 -04:00
Behdad Esfahbod
4952f0aa5b Minor 2012-06-09 01:43:20 -04:00
Behdad Esfahbod
ad6a6f2240 Minor 2012-06-09 01:43:20 -04:00
Behdad Esfahbod
46617a4213 Fix cache implementation 2012-06-09 01:43:20 -04:00
Behdad Esfahbod
ce47613889 Micro-optimize
I know...
2012-06-09 01:43:15 -04:00
Behdad Esfahbod
70416de298 Minor 2012-06-09 00:56:41 -04:00
Behdad Esfahbod
99159e52a3 Use linear search for small counts
I see about 8% speedup with long strings with DejaVu Sans.
2012-06-09 00:50:40 -04:00