|
8d5eebc0
|
2014-08-12T16:50:22
|
|
[shape-plan] Fix shape-plan caching with more than one requested shaper
Wasn't breaking out of loop, ouch!
http://www.mail-archive.com/debian-bugs-dist@lists.debian.org/msg1246370.html
|
|
bc3d0dc6
|
2014-08-12T16:49:18
|
|
[shape-plan] Add debug tracing
|
|
c3e924fb
|
2014-08-12T14:25:11
|
|
[coretext] Rewind scratch-allocated arrays when not needed anymore
|
|
81b8d977
|
2014-08-12T15:49:47
|
|
[coretext] Fix buffer resizing
Was very broken. Now fixed and tested.
|
|
8fd4d70b
|
2014-08-12T13:12:31
|
|
[wince] Two more Windows CE fixes
Report has it that it builds (and works) now:
https://codereview.qt-project.org/#/c/92087/
|
|
fd0001d7
|
2014-08-12T10:32:41
|
|
[coretext] Compare CGFont and PS name, if CTFont didn't match
See comments.
Fixes vertical text. CoreText backend is in very good shape now!
Also see:
5a0eed3b50629be4826e4e9428f2c3255195395d
25f4fb9b56bb3f8bec821571c78f8829e40daa54
Fixes http://github.com/behdad/harfbuzz/pull/36
|
|
5a0eed3b
|
2014-08-11T23:47:16
|
|
[coretext] Implement vertical shaping
Currently doesn't work though, we detect font fallback. Apparently
matching on ct_font is not safe for this. Looks like commit
25f4fb9b56bb3f8bec821571c78f8829e40daa54 wasn't enough after all.
|
|
1b55077f
|
2014-08-11T20:45:12
|
|
[coretext] Remove unnecessary alt_size
Wasn't needed after a6b8dc87421de33746b0b14d86d2d1532aec02af.
|
|
10b1104d
|
2014-08-11T20:02:45
|
|
[coretext] Use CFRunStatus
Assert that all runs had expected direction, and take hint for
non-monotone clusters.
|
|
fd1a6aa8
|
2014-08-11T20:01:37
|
|
[coretext] Minor
|
|
130856c7
|
2014-08-11T19:16:26
|
|
[coretext] Remove debug printf!
|
|
b5fbc3b8
|
2014-08-11T18:40:01
|
|
API: Do not clear buffer-flags in hb_buffer_clear_contents()
After 763e5466c0a03a7c27020e1e2598e488612529a7, one doesn't
need to set flags for different pieces of text. The flags now
are something the client sets up once, depending on how it
actually uses the buffer. As such, don't clear it in
clear_contents().
Tests updated.
|
|
104484ce
|
2014-08-11T18:23:43
|
|
Minor
|
|
4acce77d
|
2014-08-11T17:46:50
|
|
[coretext] Pass buffer direction to CoreText
Have to use a CTTypesetter for this.
|
|
5ec45dd3
|
2014-08-11T17:46:12
|
|
[coretext] Minor
It's hard to handle all possible NULL returns from CoreText. Add one
more...
|
|
624a299b
|
2014-08-11T15:29:18
|
|
[coretext] Attach marks to base clusters
Fixes https://githu.com/behdad/harfbuzz/issues/49
to the extent that it can be fixed.
|
|
3c41ccb5
|
2014-08-11T15:11:59
|
|
[coretext] Use input clusters
Before, this shaper was returning UTF-16 cluster indices instead of
returning whatever cluster values the user had had set up in the buffer.
Ouch!
|
|
a6b8dc87
|
2014-08-11T15:08:19
|
|
[coretext] Fix buffer resize handling
We can't really resize buffer and continue in this shaper as we are
using the scratch buffer for string_ref and log_cluster. Restructure
shaper to retry from (almost) scratch.
|
|
9b3c60c8
|
2014-08-11T13:25:43
|
|
[coretext] Always compute log_clusters
To be used soon.
|
|
15c633dd
|
2014-08-11T13:42:42
|
|
Minor
|
|
9ce067c7
|
2014-08-11T02:04:38
|
|
[coretext] Simplify cluster mapping
|
|
49f7fb63
|
2014-08-10T19:19:38
|
|
[coretext] Minor
|
|
25f4fb9b
|
2014-08-10T19:05:25
|
|
[coretext] Fix fallback detection
Fixes http://github.com/behdad/harfbuzz/pull/36
|
|
77a7a53a
|
2014-08-10T18:59:47
|
|
[coretext] Fix last range
Test with:
hb-view /Library/Fonts/Zapfino.ttf ZapfinoZapfino --features=-dlig[7:] --shaper=coretext
|
|
c2b151d9
|
2014-08-10T18:52:07
|
|
Fix hb_in_range() for types smaller than int
As exercised by hb-coretext .notdef code.
|
|
26a963b9
|
2014-08-10T18:04:50
|
|
[wince] Try to fix some stuff on Windows CE
Based on errors seen here:
http://testresults.qt-project.org/ci/QtBase_dev_Integration/build_03837/wince70embedded-armv4i-msvc2008_Windows_7/log.txt.gz
Fully untested.
|
|
92aeee3f
|
2014-08-10T17:42:19
|
|
Minor
|
|
b9993d8d
|
2014-08-10T17:40:24
|
|
[coretext] Fix assert on Yosemite
Apparently those functions documented as sometimes returning NULL
actually exercise that right in OS X 10.10 Yosemite. The scratch
was too small for that. I *think* I fixed it, but haven't tested
as I don't have Yosemite.
|
|
087733dd
|
2014-04-18T11:21:08
|
|
[coretext] Use CGFont as face_data
|
|
d277c3d7
|
2014-08-07T15:38:52
|
|
[arabic] Bug 82306 - Mandaic had errors in its Unicode Joining_Type
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=82306
|
|
38fb30d7
|
2014-08-06T13:34:49
|
|
Use atexit() only if it's safe to call from shared library
Apparently they are not (advertised as?) safe on BSD systems.
We ignore the case of static libraries.
Whitelisted on glibc, Android, and MSVC / mingw.
https://bugs.freedesktop.org/show_bug.cgi?id=82246
|
|
d5e61470
|
2014-08-05T14:19:01
|
|
[arabic] Fix fallback shaping regression
Was broken in 615d00ea252739da57edbd980ff27e573.
Fixes https://github.com/behdad/harfbuzz/pull/48
Micro-test added.
|
|
91c2c0fd
|
2014-08-02T19:24:55
|
|
0.9.34
|
|
d7c850f8
|
2014-08-02T17:46:38
|
|
[uniscribe] Minor
|
|
8f3eebf7
|
2014-08-02T17:18:46
|
|
Make sure gsubgpos buffer vars are available during fallback_position
Add buffer var allocation asserts to a few key places.
|
|
2053f369
|
2014-08-02T16:31:16
|
|
Disable 'liga' for vertical text
The reason we turned it on is because Kazuraki uses it. But that's
not reason enough. Until the OpenType spec gets its act together re
adding design-direction to lookups, this is better user experience.
|
|
763e5466
|
2014-08-02T16:17:44
|
|
Make it easier to use HB_BUFFER_FLAG_BOT/EOT
Previously, we expected users to provide BOT/EOT flags when the
text *segment* was at paragraph boundaries. This meant that for
clients that provide full paragraph to HarfBuzz (eg. Pango), they
had code like this:
hb_buffer_set_flags (hb_buffer,
(item_offset == 0 ? HB_BUFFER_FLAG_BOT : 0) |
(item_offset + item_length == paragraph_length ?
HB_BUFFER_FLAG_EOT : 0));
hb_buffer_add_utf8 (hb_buffer,
paragraph_text, paragraph_length,
item_offset, item_length);
After this change such clients can simply say:
hb_buffer_set_flags (hb_buffer,
HB_BUFFER_FLAG_BOT | HB_BUFFER_FLAG_EOT);
hb_buffer_add_utf8 (hb_buffer,
paragraph_text, paragraph_length,
item_offset, item_length);
Ie, HarfBuzz itself checks whether the segment is at the beginning/end
of the paragraph. Clients that only pass item-at-a-time to HarfBuzz
continue not setting any flags whatsoever.
Another way to put it is: if there's pre-context text in the buffer,
HarfBuzz ignores the BOT flag. If there's post-context, it ignores
EOT flag.
|
|
0a5ae933
|
2014-08-02T15:00:34
|
|
Merge branch 'win1256'
|
|
6ab6be32
|
2014-08-02T14:58:38
|
|
[arabic/win1256] Remove unused MultipleSubst macros
|
|
abfa4252
|
2014-08-01T19:05:33
|
|
[arabic/win1256] Really fix lam-alef this time
https://bugzilla.mozilla.org/show_bug.cgi?id=1045139#c26
https://github.com/behdad/harfbuzz/commit/b276e897d17519a2c28f79d024904ac2bdd86bcf#commitcomment-7243499
|
|
55977f2a
|
2014-08-01T16:14:33
|
|
[arabic/win1256] Hook up lamMedi lookup
Restructure lookup array to accommodate.
https://bugzilla.mozilla.org/show_bug.cgi?id=1045139#c18
|
|
e839e252
|
2014-08-01T16:09:31
|
|
[arabic/win1256] Fix TEH MARBUTA final form
https://bugzilla.mozilla.org/show_bug.cgi?id=1045139#c18
|
|
a2de1932
|
2014-07-31T18:21:05
|
|
[arabic/win1256] Fix shaping of JEEM, HAH, and KHAH
https://bugzilla.mozilla.org/show_bug.cgi?id=1045139#c16
|
|
1789ccb1
|
2014-07-31T11:04:00
|
|
[arabic/win1256] Remove GCC'ism
The table can now compile independently too. If we cannot make it work
on MSVC, we can always generate the data and distribute it.
The code now compiles cleanly with:
gcc -c -xc -std=c99 -Werror -pedantic hb-ot-shape-complex-arabic-win1256.hh
g++ -c -xc -std=c++1x -Werror -pedantic hb-ot-shape-complex-arabic-win1256.hh
See:
https://github.com/behdad/harfbuzz/commit/a97f537cec209649302899975d76ca2b2661da7a#commitcomment-7218736
|
|
f28b1c82
|
2014-07-30T02:15:44
|
|
[arabic] Implement Windows-1256 private shaping
Bug 1045139 - The Arabic text with "MS Sans Serif" font is rendered bad
https://bugzilla.mozilla.org/show_bug.cgi?id=1045139
This is only enabled on Windows platforms, and requires support from
Uniscribe to work. But for clients that do hook up to Uniscribe, this
fixes shaping of Windows-1256-encoded bitmap fonts like "MS Sans Serif".
The code and table together have just less than a 1kb footprint when
enabled.
UNTESTED. I might even have broken regular Arabic fallback shaping.
|
|
ac53443f
|
2014-07-31T18:51:37
|
|
[hangul] Don't apply 'calt'
See comments.
Micro-test added.
|
|
8292f96b
|
2014-07-31T18:33:11
|
|
[test] Fix record-test.sh
|
|
88911e8c
|
2014-07-29T19:47:26
|
|
Minor
|
|
9e834e29
|
2014-07-26T20:34:01
|
|
[hebrew] Zero mark advance by GDEF late
Seems to be what Uniscribe does.
At this point I think it's work checking our default...
Fixes Bug 76767 - Zeroing of advance of 2nd component of multiple
substitution with SBL Hebrew
https://bugs.freedesktop.org/show_bug.cgi?id=76767
Micro-test added.
|
|
6f2d9ba5
|
2014-07-26T19:17:44
|
|
Add old-Myanmar shaper
Looks like Unsicribe responds to the 'mymr' tag by zeroing marks
GDEF_LATE instead of generic-shaper UNICODE_LATE. Implement that.
Fixes
Bug 81775 - Incorrect Rendering with harfbuzz-ng myanmar unicode
https://bugs.freedesktop.org/show_bug.cgi?id=81775
Micro-test added based on Padauk.
|
|
595d2b96
|
2014-07-26T18:44:15
|
|
Minor
|
|
fe6788bc
|
2014-07-25T12:40:56
|
|
Typo
|
|
0de25d41
|
2014-07-25T12:35:03
|
|
[util] Note CSS compatibility in --help-features
|
|
6e69200a
|
2014-07-25T12:30:47
|
|
Fix snprintf() format
Patch from Maks Naumov.
Fixes https://github.com/behdad/harfbuzz/pull/22
|
|
5c5cdbbd
|
2014-07-25T12:21:49
|
|
Make sure broken feature strings are not partially parsed
If user doesn't check hb_feature_from_string() return value, we
don't want them to end up see the partially-parsed feature.
|
|
a795fe63
|
2014-07-25T12:15:33
|
|
Allow quotation marks around feature tag in hb_feature_from_string()
With this, I believe we accept CSS feature strings completely.
|
|
3f646184
|
2014-07-25T12:04:27
|
|
Allow space at the end of feature string with values, eg 'dlig=1 '
|
|
f31f7d22
|
2014-07-25T12:03:52
|
|
Minor
|
|
60cb18a5
|
2014-07-25T12:01:22
|
|
Allow on/off in hb_feature_from_string()
We now allow things like "dlig on" / "dlig=on".
|
|
d9e618ec
|
2014-07-25T11:56:01
|
|
Remove duplicate definition of ISALNUM
It's defined in hb-private.h already.
|
|
2ee5f665
|
2014-07-25T11:53:46
|
|
Fix parsing of features like "- liga" (with the space)
|
|
e15fa7a8
|
2014-07-25T11:44:35
|
|
Do not require the '=' in hb_feature_from_string()
Towards accepting CSS font-feature-settings strings.
|
|
f4fe9bae
|
2014-07-25T11:39:55
|
|
Reject tags longer than 4 chars in hb_feature_from_string()
|
|
7e8c3895
|
2014-07-25T11:18:11
|
|
Minor warnings fixes
Some systems insist on -Wmissing-field-initializers. We have too many,
by design. Fix a few easy ones.
|
|
fc0daafa
|
2014-07-23T16:48:51
|
|
[indic] Handle old-spec Malayalam reordering with final Halant
See comment.
Micro-tests added.
|
|
d6d349d1
|
2014-07-23T11:38:49
|
|
Give CC to gir-scanner
From:
https://github.com/Alexpux/MINGW-packages/blob/master/mingw-w64-harfbuzz/0001-give-cc-to-gir-scanner.all.patch
|
|
8c1bdb46
|
2014-07-22T17:56:43
|
|
0.9.33
|
|
d218bdb2
|
2014-07-22T18:01:46
|
|
Fix test runner under Windows
|
|
3f310dc0
|
2014-07-22T16:26:27
|
|
Disallow changing settings on immutable face
Ouch!
|
|
0fc0a102
|
2014-07-21T11:12:54
|
|
[win] Fix Cygwin build
https://github.com/behdad/harfbuzz/commit/db308280488c2ee11ba865a9922eb6a0c1abeef3#commitcomment-7077778
|
|
1132a7dd
|
2014-07-20T01:17:40
|
|
Add HB_TAG_MAX_SIGNED / _HB_SCRIPT_MAX_VALUE_SIGNED
To make C language police happy.
|
|
df999763
|
2014-07-19T17:31:23
|
|
[gobject] Skip _HB_SCRIPT_MAX_VALUE
Fixes https://github.com/behdad/harfbuzz/pull/38
|
|
f1a8d50a
|
2014-07-19T16:52:32
|
|
[win] Don't define visibility attribtue under Cygwin
|
|
9c77027d
|
2014-07-19T16:37:22
|
|
[win] Turn STRICT on for including windows.h
|
|
db308280
|
2014-07-19T16:32:04
|
|
[win] Consolidate windows.h include tips and tricks
|
|
f26d59d4
|
2014-07-19T16:10:21
|
|
More fixing MemoryBarrier() on Mingw32
Set requested windows header to Vista. See discussion:
https://github.com/behdad/harfbuzz/commit/fbb2847f541389f40718af71c4945024ae177ab2#commitcomment-7054700
|
|
00a57eb4
|
2014-07-18T14:42:50
|
|
[test] Remove unused micro-font
|
|
ed29b15f
|
2014-07-18T14:37:49
|
|
[test] Add more Mongolian variation selector tests
From
https://code.google.com/p/chromium/issues/detail?id=393896
|
|
385cf37c
|
2014-07-17T18:22:07
|
|
Fix hb_in_range() unused-var warning on Windows
|
|
e3b42f1a
|
2014-07-17T17:13:54
|
|
[arabic] Disable 'cswh' again
Ouch!
|
|
66f30915
|
2014-07-17T16:05:47
|
|
0.9.32
|
|
82f4d9d5
|
2014-07-17T15:57:37
|
|
[arabic] Add note re disabled 'cswh'
|
|
615d00ea
|
2014-07-17T13:36:09
|
|
[arabic] Apply init/medi/isol/fini/... in separate stages
Follows the order of the Arabic/Syriac specs. Also don't stop
between rlig and calt in non-Arabic scripts.
Micro-tests for Arabic and Mongolian added for the latter.
|
|
d21e9970
|
2014-07-17T15:27:46
|
|
[test] Make record_test understand cmdline args to hb-shape
|
|
7cd33f23
|
2014-07-17T14:22:11
|
|
Micro optimization
|
|
164c13d7
|
2014-07-17T14:16:38
|
|
Another try to fix Mongolian free variation selectors
This reverts bf029281 and fixes it properly. That commit
was not enough as it was only inheriting the shaping_action
for prev_action, but not curr_action.
Micro-test added.
https://code.google.com/p/chromium/issues/detail?id=393896
|
|
5209c505
|
2014-07-17T12:23:44
|
|
Revert "Show U+FFFD REPLACEMENT CHARACTER for invalid Unicode codepoints"
We now handle U+FFFD replacement in hb_buffer_add_utf*(). Any other
manipulation can happen in user callbacks. No need for this.
https://github.com/behdad/harfbuzz/commit/efe74214bbb68eaa3d7621e73869b5d58210107e#commitcomment-7039404
This reverts commit efe74214bbb68eaa3d7621e73869b5d58210107e.
Conflicts:
src/hb-ot-shape-normalize.cc
|
|
9e7c7201
|
2014-07-17T14:40:34
|
|
Fix CoreText build after a8b89a09f6d3a34
|
|
a4d64375
|
2014-07-16T20:15:45
|
|
Minor
|
|
a18897f8
|
2014-07-16T16:02:15
|
|
0.9.31
|
|
976c8f45
|
2014-07-16T15:34:20
|
|
New API: hb_buffer_[sg]et_replacement_codepoint()
With this change, we now by default replace broken UTF-8/16/32 bits
with U+FFFD. This can be changed by calling new API on the buffer.
Previously the replacement value used to be (hb_codepoint_t)-1.
Note that hb_buffer_clear_contents() does NOT reset the replacement
character.
See discussion here:
https://github.com/behdad/harfbuzz/commit/6f13b6d62daae4989e3cc2fe4b168e5c59650964
New API:
hb_buffer_set_replacement_codepoint()
hb_buffer_get_replacement_codepoint()
|
|
bcba8b45
|
2014-07-16T14:59:04
|
|
New API hb_buffer_add_codepoints()
Like hb_buffer_add_utf32, but doesn't do any Unicode validation.
This is like what hb_buffer_add_utf32 used to be until a couple
commits ago.
|
|
625dbf14
|
2014-07-16T14:49:55
|
|
[buffer] Templatize UTF-* functions
|
|
e634fed4
|
2014-07-16T14:17:26
|
|
[buffer] Validate UTF-32 input
Same as what we do for UTF-8 and UTF-16.
|
|
b98c5db3
|
2014-07-16T13:44:01
|
|
Minor refactoring
|
|
844f1a48
|
2014-07-16T13:32:51
|
|
[tests] Add record-test.sh
|
|
3b861421
|
2014-07-16T13:22:05
|
|
Fix Mongolian Variation Selectors for fonts without GDEF
Originally we fixed those in 79d1007a501fd63c0ba4d51038c513e6b8b94740.
However, fonts like MongolianWhite don't have GDEF, but have IgnoreMarks
in their LigatureSubstitute init/etc features. We were synthesizing a
GDEF class of mark for Mongolian Variation Selectors and as such the
ligature lookups where not matching. Uniscribe doesn't do that.
I tried with more sophisticated fixes, like, if there is no GDEF and
a lookup-flag mismatch happens, instead of rejecting a match, try
skipping that glyph. That surely produces some interesting behavior,
but since we don't want to support fonts missing GDEF more than we have
to, I went for this simpler fix which is to always mark
default-ignorables as base when synthesizing GDEF.
Micro-test added.
Fixes rest of https://bugs.freedesktop.org/show_bug.cgi?id=65258
|
|
878a2537
|
2014-07-16T13:21:26
|
|
Minor
|
|
ec181e50
|
2014-07-16T13:10:03
|
|
Minor moving around
|
|
e7ce50d9
|
2014-07-16T12:30:39
|
|
[indic] Fix access past end of array
|