|
351f68f4
|
2015-06-12T17:46:06
|
|
[bindings] Fix hb_language_get_default() and hb_ot_tag_to_language()
Part of https://github.com/behdad/harfbuzz/issues/91
|
|
a5e4f6d6
|
2015-06-10T10:57:46
|
|
Fix warnings: "member call on null pointer of type"
https://bugzilla.mozilla.org/show_bug.cgi?id=1167119
|
|
8dacb7f8
|
2015-06-03T11:53:42
|
|
Add include check to hb-ot-font.h
|
|
01c3a885
|
2015-06-01T13:22:01
|
|
Fix "Since:" tags
Based on data from http://upstream-tracker.org/versions/harfbuzz.html
Resolves #103
|
|
f1b44303
|
2015-05-21T14:00:15
|
|
Fix unary minus operator applied to unsigned int
Applying unary minus operator to unsigned int causes the following
warning on MSVS:
warning C4146: unary minus operator applied to unsigned type, result still unsigned
Based on patch from Koji Ishi.
Fixes https://github.com/behdad/harfbuzz/pull/110
|
|
1ae6cdb3
|
2015-05-19T17:42:30
|
|
[gobject] Remove hb_language_t workarounds for g-i shortcomings
Using latest gobject-introspection, I don't seem to be having this
problem anymore:
https://bugzilla.gnome.org/show_bug.cgi?id=707656
Removing that kludge makes language_t behave more like the way I expect it
in Python.
Also fixes:
https://github.com/behdad/harfbuzz/issues/91
|
|
ece434fa
|
2015-05-19T17:20:58
|
|
[gobject] Macroize value types
Fixes user_data_t
|
|
9df099b4
|
2015-05-18T18:37:06
|
|
[ft] Don't set *glyph in get_glyph() if glyph not found
|
|
58015215
|
2015-05-06T00:40:31
|
|
Add note re OpenType 1.7 language tags
|
|
f6266ad2
|
2015-05-05T22:31:19
|
|
[minor] Remove comment about Navajo OpenType code.
Apparently the code is already standardized:
https://www.microsoft.com/typography/otspec/languagetags.htm
|
|
42b00118
|
2015-05-05T14:49:47
|
|
Merge pull request #102 from roozbehp/master
Add OpenType language tag 'NAV ' for Navajo.
|
|
be66ec53
|
2015-04-30T18:27:13
|
|
Use TRUE/FALSE instead of true/false in docs
|
|
d055e1fc
|
2014-01-08T02:28:55
|
|
Some attempt into initial hb-shape documentation
Very anaemic, needs to descripe the format understood by
hb_feature_from_string() etc., but it is just start.
|
|
81bedda5
|
2015-04-30T13:04:16
|
|
New API: hb_buffer_reverse_range()
|
|
cfeb0562
|
2015-04-29T09:32:42
|
|
Add OpenType language tag 'NAV ' for Navajo.
The code is not standardized yet, but is used in some Google fonts.
|
|
f724cc35
|
2015-04-23T12:45:02
|
|
Don't apply Arabic shaping to vertical text.
|
|
97942420
|
2015-04-23T18:56:24
|
|
Update check-libstdc++ for clang
|
|
39851ce8
|
2015-04-21T19:23:27
|
|
[coretext] Oops; fix issue number for previous commit
|
|
24f17afe
|
2015-04-21T19:21:32
|
|
[coretext] Fix positioning with trailing whitespace
Fixes https://code.google.com/p/chromium/issues/detail?id=476913
|
|
dba482fc
|
2015-04-17T13:08:08
|
|
[ot-font] Accept MS Symbol cmap if nothing else found
|
|
3029e8b5
|
2015-04-14T13:32:22
|
|
Revert "Add MSVC pragma for UTF-8 source code"
This reverts commit 89cbd4d9533011fb5487caa99a0cd58923e7cf59.
See discussion:
https://bugzilla.gnome.org/show_bug.cgi?id=747772
|
|
89cbd4d9
|
2015-04-13T12:27:08
|
|
Add MSVC pragma for UTF-8 source code
Not sure we have any right now; motivated by this:
https://bugzilla.gnome.org/show_bug.cgi?id=747772
|
|
713f99ff
|
2015-04-10T14:34:05
|
|
Merge pull request #99 from khaledhosny/introspection-fixes2
More ntrospection fixes
|
|
22524a51
|
2015-04-10T18:14:45
|
|
[bindings] Fix hb_buffer_get_segment_properties
Annotate the output parameter.
|
|
1086f21e
|
2015-04-10T12:21:04
|
|
Merge branch 'hb-fc'
|
|
04f89e8f
|
2015-04-10T17:49:01
|
|
[bindings] Fix ownership of returned hb_language_t
It should not be freed by the caller.
|
|
855a5d7c
|
2015-04-10T17:18:01
|
|
Fix build on WEC2013
Based on patch from Björn Breitmeyer
|
|
eb0bf3ae
|
2014-08-06T15:36:41
|
|
Relax inert checks
Previously, when creating an object from inert inputs (eg:
"hb_font_create(hb_face_get_empty())") we returned the inert
empty object. This is not helpful as there are legitimate
usecases to do that.
We now never return the inert object unless allocation failed.
Tests are revised to reflect.
|
|
9c974360
|
2015-04-09T12:04:14
|
|
Minor rename
|
|
f3b170bd
|
2015-04-08T16:26:24
|
|
Minor
|
|
2958f2c1
|
2015-04-08T16:26:16
|
|
Fixup
|
|
b931e0b0
|
2015-04-08T14:39:00
|
|
Fix warnings
Part of https://github.com/behdad/harfbuzz/pull/68
|
|
cdcdfe61
|
2015-04-08T13:25:04
|
|
Err, instead of warn, if mutex / atomic / unicode funcs are missing
Hopefully this results in fewer badly built HarfBuzz integrations.
|
|
fc3c59a1
|
2015-04-08T13:03:27
|
|
Fix unused var warnings
|
|
3f174cd0
|
2015-03-28T00:49:33
|
|
Minor refactoring to the atomics implementation
s/atomic_int/atomic_int_impl/ and s/atomic_ptr/atomic_ptr_impl/
to bring it in par with hb_mutex_impl_t, then re-introduce
hb_atomic_int_t as a wrapper around hb_atomic_int_impl_t.
In hb_reference_count_t, make it clear the non-atomic get and set
are intentional due to nature of the cases they are used in
(comparison to -1 and the debug output/tracing).
|
|
24930d54
|
2015-04-08T12:52:06
|
|
Minor
|
|
45a8b46f
|
2015-04-08T12:49:38
|
|
Allow implementing atomic and mutex ops in config
Motivated by
https://github.com/behdad/harfbuzz/pull/92
|
|
3fe4e92b
|
2015-04-08T12:49:23
|
|
Minor
|
|
ce01ad7c
|
2015-04-01T11:05:59
|
|
MSVC 2015 supports snprintf and not _snprintf
|
|
56071886
|
2015-04-01T11:04:33
|
|
Move WinCE define to better place
|
|
aee68508
|
2015-03-26T14:13:53
|
|
Fix VC++ /analyze warnings
out\debug\hb-buffer-deserialize-text.rl(47) : warning C6001: Using
uninitialized memory 'pos'.
|
|
a394bb66
|
2015-03-22T20:29:10
|
|
[bindings] Fix *_from_string functions
Without the element-type they will be getting garbage, at least with
Python.
|
|
9e401f68
|
2015-03-20T16:08:38
|
|
Fix reverse_range() for empty range
Fixes coretext notdef loop consisting of all default_ignorable glyphs
https://code.google.com/p/chromium/issues/detail?id=464755
|
|
98e3ea8e
|
2015-03-04T12:03:39
|
|
Fix hb-uniscribe build
|
|
8ac345e5
|
2015-03-02T16:06:55
|
|
Fix reverse_range() to only reverse alt array if positions are used
In hb-coretext, when we were using scratch buffer for book-keeping,
a reverse_range() caused by the notdef-insertion loop could mess up
our log_clusters. Ouch!
|
|
5f541f8f
|
2015-02-21T16:51:17
|
|
Minor refactoring
|
|
ef79bdf7
|
2015-02-21T16:49:15
|
|
Minor
|
|
68e04afb
|
2015-02-21T16:30:28
|
|
Typo
|
|
55553699
|
2015-02-21T16:29:08
|
|
Minor
|
|
5175300f
|
2015-02-21T12:50:01
|
|
[layout] Fix comparison of GlyphID and hb_codepoint_t
Before, the IntType::cmp functions providing this and was truncating
the hb_codepoint_t to 16bits before comparison. I have no idea how
this was never discovered, and I'm too lazy to try to reproduce this
with Pango (which uses non-16bit codepoint numbers for missing glyphs).
|
|
7cce809c
|
2015-02-21T12:41:08
|
|
Remove unused (and wrong as of a few commits ago) cmp() function
|
|
8e3d4bae
|
2015-02-21T12:31:59
|
|
Minor
|
|
f47cf1f1
|
2015-02-21T11:45:22
|
|
Minor
|
|
640b66c6
|
2015-02-19T17:30:05
|
|
[layout] If lookup has only one subtable, move the forward loop down to subtable
I was hoping to see a nice speedup, but it resulted in a very minor one.
|
|
e2f50f2a
|
2015-02-19T17:15:05
|
|
[layout] Add apply_forward / apply_backward
|
|
1d4a3284
|
2015-02-19T11:33:30
|
|
[layout] Remove unneeded return value from apply()
|
|
bbdd6fd2
|
2015-02-19T17:03:02
|
|
Minor simpilfy BEInt
|
|
88a399ac
|
2015-02-19T16:57:12
|
|
Optimize IntType comparison to avoid branches for 16bit numbers
|
|
37de2d53
|
2015-02-19T16:55:51
|
|
Minor simplify IntType
|
|
bd047d3b
|
2015-02-19T10:47:18
|
|
[layout] Minor
|
|
b9d3f605
|
2015-02-19T10:42:41
|
|
[layout] Minor
|
|
1a232213
|
2015-02-19T10:40:23
|
|
[layout] Don't check glyph props against lookup flags when recursing
Shouldn't be needed. I have a hard time imagining this breaking any
legitimate use case.
|
|
095a1257
|
2015-02-19T10:29:41
|
|
[layout] Port sanitize() to use dispatch()
Needed some rework of Extension table. Hopefully I got it right, and
the new template usage doesn't break any compilers...
|
|
758fb206
|
2015-02-18T13:45:03
|
|
Remove unused macro
|
|
40c58923
|
2015-02-18T13:18:46
|
|
[layout] Refactor Lookup::dispatch()
|
|
70366f5d
|
2015-02-18T13:09:54
|
|
[layout] Refactor get_subtable()
|
|
f72f326a
|
2015-02-17T19:18:07
|
|
Minor
|
|
8e36ccfd
|
2015-02-17T19:15:34
|
|
[layout] Use dispatch() for add_coverage()
|
|
50b8dc79
|
2015-02-17T18:14:17
|
|
[layout] Add may_dispatch()
No functional change right now.
|
|
de2118ed
|
2015-02-17T17:27:44
|
|
Make sanitize() a const method
This makes a lot of code safer. We only try modifying the object in one
place, after making sure it's safe to do so. So, do a const_cast<> in
that one place...
|
|
6759ed95
|
2015-02-17T16:05:30
|
|
Minor
|
|
6b599dac
|
2015-02-17T16:04:07
|
|
Remove unnecessary check in sanitize
|
|
365576d2
|
2015-01-29T13:59:42
|
|
[layout] Allocate iters in the context
Can be further optimized, but I think I didn't break anything.
Saves another 3% off Roboto shaping.
|
|
514564f5
|
2015-01-29T13:48:48
|
|
[layout] Move skippy_iter setup from constructor into init()
|
|
b051be54
|
2015-01-29T13:40:39
|
|
[lookup] Add skippy_iter.reset()
Towards reducing the cost of initializing skippy_iter()
|
|
2cecc38c
|
2015-01-29T13:32:05
|
|
[layout] Shuffle code around
|
|
69626698
|
2015-01-29T13:08:41
|
|
[layout] Merge forward and backward iterators
|
|
1f038eec
|
2015-01-29T13:05:25
|
|
[layout] Fix backward reject()
Has no functional effect since reject was never used with
match_glyph_data.
|
|
37d13acd
|
2015-01-29T11:38:01
|
|
[layout] Remove some unnecessary checks in skippy
|
|
baa14e18
|
2015-01-29T11:08:43
|
|
[lookup] Don't initialize skippy if coverage match fails
Currently:
- Initializing skippy is very expensive,
- Our lookup accelerator (using set-digests) can be very ineffecite,
As such, we end up many times initializing skippy but then failing
coverage check. Reordering fixes that.
When, later, we fix our accelerator to have truly small false-positive
rate (for example by using the frozen-sets), then we might want to
reorder these checks such that we wouldn't calculate coverage number
if skippy is going to fail.
This shows a 5% speedup with Roboto already.
|
|
7788993b
|
2015-01-28T23:01:12
|
|
[layout] Use setter method to set c->lookup_props
|
|
f4ee48fd
|
2015-01-28T22:53:54
|
|
[layout] Remove unused wrapper method
|
|
7b7129c7
|
2015-01-28T21:46:07
|
|
Add hb_frozen_set_t
I experimented with replacing use of hb_set_digest_t with this new
hb_frozen_set_t, hoping to get a huge speedup for busy lookups
(like kern lookup in Roboto), but I only got 6% speendup in Roboto
and 4% in NotoNastaliqUrduDraft :(.
|
|
241eac95
|
2015-01-28T20:55:42
|
|
Hide internals of lookup accelerators
|
|
9768e651
|
2015-02-14T00:58:51
|
|
Fix build with MSVC on CE
This code is C++ only. There isn't a single C++ compiler that fails to
understand the "inline" keyword, since it's required by C++98. Any
compiler older than C++98 is likely to choke on the template usage
further down, so this isn't necessary.
Moreover, the C++ standard says you cannot define macros.
[lib.macro.names] says "Nor shall such a translation unit define macros
for names lexically identical to keywords." -- technically, it's a
promise that the Standard Library headers won't do it, the wording means
that the entire translation unit won't do it, which implies no source
can do it.
MSVC complains about it:
fatal error C1189: #error : The C++ Standard Library forbids macroizing
keywords. Enable warning C4005 to find the forbidden macro.
Author: Thiago Macieira <thiago.macieira@intel.com>
|
|
7888a6b0
|
2015-01-28T12:40:40
|
|
[ft] Handle negative scales with vertical writing
|
|
982d94ea
|
2015-01-28T10:51:33
|
|
[coretext] Don't generate notdef glyph for default-ignorables
As discovered on Chrome Mac:
https://code.google.com/p/chromium/issues/detail?id=452326
|
|
6917a045
|
2015-01-28T10:43:32
|
|
[coretext] Unbreak glyph positioning in presence of notdef runs
As discovered on Chrome Mac:
https://code.google.com/p/chromium/issues/detail?id=452326
This was originally broken in:
commit 5a0eed3b50629be4826e4e9428f2c3255195395d
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Mon Aug 11 23:47:16 2014 -0400
[coretext] Implement vertical shaping
|
|
1eff4350
|
2015-01-27T12:26:04
|
|
Minor optimization
|
|
675956ac
|
2015-01-27T11:23:07
|
|
Do not leak hb_language_t on hb_language_item_t destruction
|
|
b306f967
|
2015-01-27T20:08:41
|
|
Minor improvement to HB_SHAPER_DATA_DESTROY
|
|
61820bc4
|
2015-01-26T14:25:52
|
|
[API] Add hb_buffer_add_latin1()
This is by no ways to promote non-Unicode encodings. This is an entry
point that takes Unicode codepoints that happen to all be the first
256 characters and hence fit in 8bit strings. This is useful eg in Chrome
where strings that can fit in 8bit are implemented that way, and this
avoids copying into UTF-8 or UTF-16.
Perhaps we should rename this to hb_buffer_add_codepoints8(). I'm also
curious if anyone would be really interested in hb_buffer_add_codepoints16().
Please discuss!
|
|
78c6e86c
|
2015-01-26T14:08:36
|
|
Fix hb_buffer_add_codepoints to actually NOT validate
|
|
f3537b62
|
2015-01-25T09:50:51
|
|
Move some code around
Just to keep Windows specific workarounds in a single place.
|
|
afb62d88
|
2015-01-25T08:16:26
|
|
Do not define MemoryBarrier on WinCE
There is a _HBMemoryBarrier() wrapper function that emulates
MemoryBarrier() behavior when it is not defined.
|
|
7db326a1
|
2015-01-25T08:13:24
|
|
Fix build on WinRT
There is no environment (like WinCE) and the basic version
of InitializeCriticalSection is unsupported.
https://codereview.qt-project.org/#/c/92496/
|
|
a319d077
|
2015-01-23T12:44:24
|
|
[ft] Handle negative x_scale / y_scale
|
|
b0b38bb8
|
2015-01-21T19:19:33
|
|
[coretext] Fix positioning of notdef
|
|
70622e50
|
2015-01-21T18:50:57
|
|
[coretext] Fix scaling
Before we were not accounting for possible differences in x_scale and
y_scale, as well as the signs of those. All should be in good shape
now.
|
|
221ba02b
|
2015-01-21T16:42:09
|
|
[coretext] Use vertical advance for notdef in vertical direction
|