platform/upstream/libHarfBuzzSharp.git
11 years ago[ICU] Fix includes
Behdad Esfahbod [Thu, 16 Aug 2012 11:32:59 +0000 (07:32 -0400)]
[ICU] Fix includes

As reported by Steven Loomis, including uversion.h works everywhere.

11 years agoWhitespace
Behdad Esfahbod [Wed, 15 Aug 2012 22:52:17 +0000 (18:52 -0400)]
Whitespace

11 years ago[NEWS] Fix date
Behdad Esfahbod [Wed, 15 Aug 2012 21:24:28 +0000 (17:24 -0400)]
[NEWS] Fix date

Oops!

11 years agoMinor
Behdad Esfahbod [Tue, 14 Aug 2012 13:33:18 +0000 (09:33 -0400)]
Minor

11 years agoFix ICU build with older ICUs
Behdad Esfahbod [Mon, 13 Aug 2012 14:52:52 +0000 (10:52 -0400)]
Fix ICU build with older ICUs

11 years agoMinor
Behdad Esfahbod [Sun, 12 Aug 2012 21:11:27 +0000 (17:11 -0400)]
Minor

11 years agominor
Behdad Esfahbod [Sun, 12 Aug 2012 01:32:23 +0000 (21:32 -0400)]
minor

11 years ago[ICU] Use new normalizer2 compose/decompose API
Behdad Esfahbod [Sun, 12 Aug 2012 01:26:25 +0000 (21:26 -0400)]
[ICU] Use new normalizer2 compose/decompose API

It's considerably faster than the fallback implementation we had
previously!

11 years agoAdd TODO
Behdad Esfahbod [Sat, 11 Aug 2012 23:17:54 +0000 (19:17 -0400)]
Add TODO

11 years ago[OT] Unbreak Thai shaping and fallback Arabic shaping
Behdad Esfahbod [Sat, 11 Aug 2012 22:34:13 +0000 (18:34 -0400)]
[OT] Unbreak Thai shaping and fallback Arabic shaping

The merger of normalizer and glyph-mapping broke shapers that
modified text stream.  Unbreak them by adding a new preprocess_text
shaping stage that happens before normalizing/cmap and disallow
setup_mask modification of actual text.

11 years ago[OT] Add shape_plan to Arabic shaper
Behdad Esfahbod [Sat, 11 Aug 2012 22:20:28 +0000 (18:20 -0400)]
[OT] Add shape_plan to Arabic shaper

11 years agoAdd TODO
Behdad Esfahbod [Sat, 11 Aug 2012 21:36:23 +0000 (17:36 -0400)]
Add TODO

11 years ago[OT] Implement fallback mark positioning for "double" combining marks
Behdad Esfahbod [Fri, 10 Aug 2012 20:38:44 +0000 (16:38 -0400)]
[OT] Implement fallback mark positioning for "double" combining marks

11 years ago[OT] Fix fallback mark positioning with left-to-right text
Behdad Esfahbod [Fri, 10 Aug 2012 20:34:04 +0000 (16:34 -0400)]
[OT] Fix fallback mark positioning with left-to-right text

Ouch!

11 years agoBump version to 0.9.2
Behdad Esfahbod [Fri, 10 Aug 2012 18:49:37 +0000 (14:49 -0400)]
Bump version to 0.9.2

A *real* release this time, with NEWS, ChangeLog, etc.

11 years agoBump version to 0.9.1
Behdad Esfahbod [Fri, 10 Aug 2012 17:49:32 +0000 (13:49 -0400)]
Bump version to 0.9.1

11 years ago[test] Move around
Behdad Esfahbod [Fri, 10 Aug 2012 13:06:30 +0000 (09:06 -0400)]
[test] Move around

11 years ago[test] Add Urdu ligature sequences from CRULP
Behdad Esfahbod [Fri, 10 Aug 2012 13:05:29 +0000 (09:05 -0400)]
[test] Add Urdu ligature sequences from CRULP

11 years ago[OT] Slightly adjust normalizer
Behdad Esfahbod [Fri, 10 Aug 2012 07:51:44 +0000 (03:51 -0400)]
[OT] Slightly adjust normalizer

The change is very subtle.  If we have a single-char cluster that
decomposes to three or more characters, then try recomposition, in
case the farther mark may compose with the base.

11 years agoMinor
Behdad Esfahbod [Fri, 10 Aug 2012 07:28:50 +0000 (03:28 -0400)]
Minor

11 years ago[OT] Avoid calling get_glyph() twice
Behdad Esfahbod [Fri, 10 Aug 2012 02:33:32 +0000 (22:33 -0400)]
[OT] Avoid calling get_glyph() twice

Essentially move the glyph mapping to normalization process.
The effect on Devanagari is small (but observable).  Should be more
observable in simple text, like ASCII.

11 years ago[OT] Remove redundant check
Behdad Esfahbod [Fri, 10 Aug 2012 02:00:53 +0000 (22:00 -0400)]
[OT] Remove redundant check

11 years ago[OT] More code shuffling around
Behdad Esfahbod [Fri, 10 Aug 2012 01:58:07 +0000 (21:58 -0400)]
[OT] More code shuffling around

Preparing for merging map_glyphs() and normalize().

11 years agoShuffle buffer variable allocations around
Behdad Esfahbod [Fri, 10 Aug 2012 01:48:55 +0000 (21:48 -0400)]
Shuffle buffer variable allocations around

To room for more allocations, coming.

11 years agoMinor
Behdad Esfahbod [Fri, 10 Aug 2012 01:31:52 +0000 (21:31 -0400)]
Minor

11 years agoFill out combining class resetting for fallback shaping Thai/Lao/Tibetan
Behdad Esfahbod [Fri, 10 Aug 2012 01:12:30 +0000 (21:12 -0400)]
Fill out combining class resetting for fallback shaping Thai/Lao/Tibetan

11 years agoRevert "Reject lookups with no subTable"
Behdad Esfahbod [Thu, 9 Aug 2012 22:30:34 +0000 (18:30 -0400)]
Revert "Reject lookups with no subTable"

This reverts commit 30ec9002d84e8b49290e782e6192069821ffa942.

See previous commit.

11 years agoRevert "[GSUB/GPOS] Reject Context/ChainContext lookups with zero input"
Behdad Esfahbod [Thu, 9 Aug 2012 22:30:05 +0000 (18:30 -0400)]
Revert "[GSUB/GPOS] Reject Context/ChainContext lookups with zero input"

This reverts commit 0981068b75710397f08e0d2d776a0a2ea68d7117.

I was confused.  Even if we access coverage[0] unconditionally, we don't
need bound checks since the array machinary already handles that.

11 years agoAdd check-exported-symbols.sh
Behdad Esfahbod [Wed, 8 Aug 2012 22:04:29 +0000 (18:04 -0400)]
Add check-exported-symbols.sh

And misc linking fixes.

11 years agoMisc minor fixes
Behdad Esfahbod [Wed, 8 Aug 2012 21:44:19 +0000 (17:44 -0400)]
Misc minor fixes

11 years agoUse a export-file for Windows builds
Behdad Esfahbod [Wed, 8 Aug 2012 21:16:01 +0000 (17:16 -0400)]
Use a export-file for Windows builds

Apparently even that doesn't make check-internal-symbols.sh happy with
mingw32.  Going to disable that for DLLs again, but hopefully the
export-file is doing *something*.

11 years ago[hb-old] speed-up build
Behdad Esfahbod [Wed, 8 Aug 2012 21:15:44 +0000 (17:15 -0400)]
[hb-old] speed-up build

11 years agoMinor
Behdad Esfahbod [Wed, 8 Aug 2012 20:53:37 +0000 (16:53 -0400)]
Minor

11 years agoMinor
Behdad Esfahbod [Wed, 8 Aug 2012 19:27:14 +0000 (15:27 -0400)]
Minor

11 years agoMake default_language threadsafe
Behdad Esfahbod [Wed, 8 Aug 2012 19:23:48 +0000 (15:23 -0400)]
Make default_language threadsafe

11 years agoMinor
Behdad Esfahbod [Wed, 8 Aug 2012 19:23:45 +0000 (15:23 -0400)]
Minor

11 years agoMinor
Behdad Esfahbod [Wed, 8 Aug 2012 18:59:09 +0000 (14:59 -0400)]
Minor

11 years agoAdjust a couple source checks
Behdad Esfahbod [Wed, 8 Aug 2012 18:48:41 +0000 (14:48 -0400)]
Adjust a couple source checks

11 years agoMinor renaming
Behdad Esfahbod [Wed, 8 Aug 2012 18:33:37 +0000 (14:33 -0400)]
Minor renaming

11 years agoFix cast
Behdad Esfahbod [Wed, 8 Aug 2012 18:26:36 +0000 (14:26 -0400)]
Fix cast

https://bugs.freedesktop.org/show_bug.cgi?id=53233

11 years ago[OT] Implement fallback positioning
Behdad Esfahbod [Wed, 8 Aug 2012 05:20:45 +0000 (01:20 -0400)]
[OT] Implement fallback positioning

Implemented for Arabic, Hebrew, and generic marks.
Activated if no GPOS table present.

11 years ago[hb-old] Fix warnings
Behdad Esfahbod [Wed, 8 Aug 2012 03:44:47 +0000 (23:44 -0400)]
[hb-old] Fix warnings

11 years ago[OT] Start adding fallback positioning
Behdad Esfahbod [Wed, 8 Aug 2012 02:41:38 +0000 (22:41 -0400)]
[OT] Start adding fallback positioning

Used when there is no GPOS.

11 years agoMinor
Behdad Esfahbod [Wed, 8 Aug 2012 02:32:23 +0000 (22:32 -0400)]
Minor

11 years ago[GSUB] Generalize would_apply()
Behdad Esfahbod [Wed, 8 Aug 2012 02:25:24 +0000 (22:25 -0400)]
[GSUB] Generalize would_apply()

Fixes logic also, where before we were always matching if glyphs_len==1
and a ligature started with the glyph.

11 years agoAdd hb_font_glyph_from/to_string
Behdad Esfahbod [Wed, 8 Aug 2012 02:13:25 +0000 (22:13 -0400)]
Add hb_font_glyph_from/to_string

11 years agoMinor
Behdad Esfahbod [Wed, 8 Aug 2012 01:44:25 +0000 (21:44 -0400)]
Minor

11 years ago[OT] Apply 'rclt' feature in horizontal mode
Behdad Esfahbod [Wed, 8 Aug 2012 01:12:49 +0000 (21:12 -0400)]
[OT] Apply 'rclt' feature in horizontal mode

'rclt' is "Required Contextual Forms" being proposed by Microsoft.
It's like 'calt', but supposedly always on.  We apply 'calt' anyway,
and now apply this too.

11 years agoFix warnings
Behdad Esfahbod [Tue, 7 Aug 2012 20:57:48 +0000 (16:57 -0400)]
Fix warnings

11 years agoMore refactoring
Behdad Esfahbod [Tue, 7 Aug 2012 20:57:02 +0000 (16:57 -0400)]
More refactoring

11 years agoMinor refactoring
Behdad Esfahbod [Tue, 7 Aug 2012 20:51:48 +0000 (16:51 -0400)]
Minor refactoring

11 years agoAdd Hebrew presentation forms shaping
Behdad Esfahbod [Tue, 7 Aug 2012 20:45:27 +0000 (16:45 -0400)]
Add Hebrew presentation forms shaping

Lifted from https://bugzilla.mozilla.org/show_bug.cgi?id=728866

11 years ago[Graphite] Minor
Behdad Esfahbod [Tue, 7 Aug 2012 18:11:16 +0000 (14:11 -0400)]
[Graphite] Minor

11 years agoRemove enum trailing comma
Behdad Esfahbod [Tue, 7 Aug 2012 17:01:12 +0000 (13:01 -0400)]
Remove enum trailing comma

...again.

11 years agoMinor
Behdad Esfahbod [Tue, 7 Aug 2012 03:06:04 +0000 (23:06 -0400)]
Minor

11 years ago[util] Fix leaks
Behdad Esfahbod [Tue, 7 Aug 2012 02:42:47 +0000 (19:42 -0700)]
[util] Fix leaks

11 years ago[Graphite] Fix graphite2 backend with RTL text
Behdad Esfahbod [Tue, 7 Aug 2012 02:35:04 +0000 (19:35 -0700)]
[Graphite] Fix graphite2 backend with RTL text

Patch from Martin Hosken.

11 years ago[Graphite] Port graphite2 backend to new shaper infrastructure
Behdad Esfahbod [Tue, 7 Aug 2012 02:25:39 +0000 (19:25 -0700)]
[Graphite] Port graphite2 backend to new shaper infrastructure

11 years agoRemove unnecessary lifecycle bits
Behdad Esfahbod [Tue, 7 Aug 2012 00:07:19 +0000 (17:07 -0700)]
Remove unnecessary lifecycle bits

We already set recount to INVALID when destroying.
This block was not necessary.

11 years agoFix compiler warnings
Behdad Esfahbod [Mon, 6 Aug 2012 18:44:10 +0000 (11:44 -0700)]
Fix compiler warnings

11 years ago[Indic] Minor, move 'blwf' after 'half'
Behdad Esfahbod [Mon, 6 Aug 2012 04:16:26 +0000 (21:16 -0700)]
[Indic] Minor, move 'blwf' after 'half'

We don't apply them together anyway.  Should not make any difference
right now.

11 years agoSpeed up hb_set_digest_lowest_bits_t calcs
Behdad Esfahbod [Sun, 5 Aug 2012 01:04:57 +0000 (18:04 -0700)]
Speed up hb_set_digest_lowest_bits_t calcs

11 years agoSpeed up hb_set_digest_common_bits_t calcs
Behdad Esfahbod [Sun, 5 Aug 2012 00:42:28 +0000 (17:42 -0700)]
Speed up hb_set_digest_common_bits_t calcs

11 years agoEnlarge glyph_name buffer
Behdad Esfahbod [Sun, 5 Aug 2012 00:08:38 +0000 (17:08 -0700)]
Enlarge glyph_name buffer

Lohit Devanagari has a glyph named:
u0924_u094D.half_u0930_u094D.blwf.vatu

11 years agoRewrite ARRAY_LENGTH as a template function
Behdad Esfahbod [Sat, 4 Aug 2012 23:43:18 +0000 (16:43 -0700)]
Rewrite ARRAY_LENGTH as a template function

Such it wouldn't apply to pointers accidentally.

11 years ago[Indic] Fix consonant position font lookup logic
Behdad Esfahbod [Sat, 4 Aug 2012 01:54:54 +0000 (18:54 -0700)]
[Indic] Fix consonant position font lookup logic

Oops.  I broken this badly and the test suite did not notice.  That
worries me.  Have to investigate.

11 years agoMinor
Behdad Esfahbod [Sat, 4 Aug 2012 01:45:05 +0000 (18:45 -0700)]
Minor

11 years agoFix leak
Behdad Esfahbod [Sat, 4 Aug 2012 01:21:13 +0000 (18:21 -0700)]
Fix leak

11 years ago[OT] Use general-category, not GDEF class, to decide to zero mark advances
Behdad Esfahbod [Sat, 4 Aug 2012 00:40:07 +0000 (17:40 -0700)]
[OT] Use general-category, not GDEF class, to decide to zero mark advances

At this point, the GDEF glyph synthesis looks pointless.  Not that I
have many fonts without GDEF lying around.

As for mark advance zeroing when GPOS not available, that also is being
replaced by proper fallback mark positioning soon.

11 years agoDn't use gint
Behdad Esfahbod [Sat, 4 Aug 2012 00:23:40 +0000 (17:23 -0700)]
Dn't use gint

11 years ago[Indic] Add per-script configuration tables
Behdad Esfahbod [Thu, 2 Aug 2012 18:21:40 +0000 (14:21 -0400)]
[Indic] Add per-script configuration tables

This concludes the Indic shape_plan work.  May do for Arabic also...

11 years ago[Indic] Move more stuff to the shape_plan
Behdad Esfahbod [Thu, 2 Aug 2012 16:21:44 +0000 (12:21 -0400)]
[Indic] Move more stuff to the shape_plan

Almost done.  Need to add per-script static tables.

11 years ago[Indic] Move more repeated work into shape_plan
Behdad Esfahbod [Thu, 2 Aug 2012 15:03:39 +0000 (11:03 -0400)]
[Indic] Move more repeated work into shape_plan

11 years ago[OT] Add per-complex-shaper shape_plan data
Behdad Esfahbod [Thu, 2 Aug 2012 14:46:34 +0000 (10:46 -0400)]
[OT] Add per-complex-shaper shape_plan data

Hookup some Indic data to it.  More to come.

11 years ago[OT] Pipe shape_plan down to pause_callbacks
Behdad Esfahbod [Thu, 2 Aug 2012 14:07:58 +0000 (10:07 -0400)]
[OT] Pipe shape_plan down to pause_callbacks

11 years agoMore massaging
Behdad Esfahbod [Thu, 2 Aug 2012 13:44:18 +0000 (09:44 -0400)]
More massaging

11 years ago[OT] Port complex_shaper to planner/plan
Behdad Esfahbod [Thu, 2 Aug 2012 13:38:28 +0000 (09:38 -0400)]
[OT] Port complex_shaper to planner/plan

11 years ago[OT] Minor refactoring
Behdad Esfahbod [Thu, 2 Aug 2012 13:24:35 +0000 (09:24 -0400)]
[OT] Minor refactoring

11 years ago[Indic] Move consonant-position-setting into initial_reordering()
Behdad Esfahbod [Thu, 2 Aug 2012 12:42:11 +0000 (08:42 -0400)]
[Indic] Move consonant-position-setting into initial_reordering()

11 years ago[GSUB] Wire the font, not just the face, down to substitute()
Behdad Esfahbod [Thu, 2 Aug 2012 12:36:40 +0000 (08:36 -0400)]
[GSUB] Wire the font, not just the face, down to substitute()

We need the font for glyph lookup during GSUB pauses in Indic shaper.
Could perhaps be avoided, but at this point, we don't mean to support
separate substitute()/position() entry points (anymore), so there is
no point in not providing the font to GSUB.

11 years ago[OT] Hide some API
Behdad Esfahbod [Thu, 2 Aug 2012 12:11:14 +0000 (08:11 -0400)]
[OT] Hide some API

It was impossible to meaningfully use them from the outside these days.

11 years agoMinor
Behdad Esfahbod [Thu, 2 Aug 2012 12:08:04 +0000 (08:08 -0400)]
Minor

11 years ago[Indic] More refactoring of consonant position peeking in the font
Behdad Esfahbod [Thu, 2 Aug 2012 11:53:18 +0000 (07:53 -0400)]
[Indic] More refactoring of consonant position peeking in the font

To be moved to initial_reordering next...

11 years ago[Indic] Refactor
Behdad Esfahbod [Thu, 2 Aug 2012 11:37:46 +0000 (07:37 -0400)]
[Indic] Refactor

Move all the logic that needs to eventually move into the indic table
into hb-ot-shape-complex-indic-private.hh.

11 years ago[Indic] Rename
Behdad Esfahbod [Thu, 2 Aug 2012 11:13:55 +0000 (07:13 -0400)]
[Indic] Rename

11 years ago[Indic] Streamline feature would_apply()
Behdad Esfahbod [Thu, 2 Aug 2012 09:27:46 +0000 (05:27 -0400)]
[Indic] Streamline feature would_apply()

Comes with some 10% speedup for Devanagari even!

11 years ago[Indic] Minor
Behdad Esfahbod [Thu, 2 Aug 2012 09:01:11 +0000 (05:01 -0400)]
[Indic] Minor

11 years ago[GSUB/GPOS] Check array size before accessing digests
Behdad Esfahbod [Thu, 2 Aug 2012 08:00:31 +0000 (04:00 -0400)]
[GSUB/GPOS] Check array size before accessing digests

11 years agoUse Coverage digests in would_apply
Behdad Esfahbod [Thu, 2 Aug 2012 07:51:51 +0000 (03:51 -0400)]
Use Coverage digests in would_apply

11 years agoMinor
Behdad Esfahbod [Thu, 2 Aug 2012 07:45:53 +0000 (03:45 -0400)]
Minor

11 years agoUse wider set digests on 64-bit archs
Behdad Esfahbod [Thu, 2 Aug 2012 02:17:48 +0000 (22:17 -0400)]
Use wider set digests on 64-bit archs

11 years ago[GSUB/GPOS] Remove unused get_coverage() methods
Behdad Esfahbod [Thu, 2 Aug 2012 01:56:35 +0000 (21:56 -0400)]
[GSUB/GPOS] Remove unused get_coverage() methods

11 years ago[GSUB/GPOS] Use Coverage digests as gatekeeper
Behdad Esfahbod [Thu, 2 Aug 2012 01:46:36 +0000 (21:46 -0400)]
[GSUB/GPOS] Use Coverage digests as gatekeeper

Gives me a good 10% speedup for the Devanagari test case.  Less so
for less lookup-intensive tests.

For the Devanagari test case, the false positive rate of the GSUB digest
is 4%.

11 years ago[GSUB/GPOS] Add add_coverage()
Behdad Esfahbod [Thu, 2 Aug 2012 01:18:54 +0000 (21:18 -0400)]
[GSUB/GPOS] Add add_coverage()

11 years agoAdd hb_set_digest_t
Behdad Esfahbod [Thu, 2 Aug 2012 01:06:27 +0000 (21:06 -0400)]
Add hb_set_digest_t

Implement two set digests, and one that combines the two.

11 years ago[OT] Templatize Coverage::add_coverage()
Behdad Esfahbod [Thu, 2 Aug 2012 01:05:57 +0000 (21:05 -0400)]
[OT] Templatize Coverage::add_coverage()

11 years agoInline font getters
Behdad Esfahbod [Wed, 1 Aug 2012 23:03:46 +0000 (19:03 -0400)]
Inline font getters

11 years agoUse a lookup table for modified_combining_class
Behdad Esfahbod [Wed, 1 Aug 2012 22:07:42 +0000 (18:07 -0400)]
Use a lookup table for modified_combining_class

11 years agoInline Unicode callbacks internally
Behdad Esfahbod [Wed, 1 Aug 2012 21:13:10 +0000 (17:13 -0400)]
Inline Unicode callbacks internally

11 years agoMove unicode accessors around
Behdad Esfahbod [Wed, 1 Aug 2012 21:01:59 +0000 (17:01 -0400)]
Move unicode accessors around