profile/ivi/org.tizen.video-player.git
13 years ago[API] Use ISO 15924 tags for hb_script_t
Behdad Esfahbod [Tue, 19 Apr 2011 03:40:21 +0000 (23:40 -0400)]
[API] Use ISO 15924 tags for hb_script_t

This simplifies the code, reduces static data, and makes the design
more extensible to future additions of new scripts.

13 years agoChange buffer default properties to invalid
Behdad Esfahbod [Fri, 15 Apr 2011 23:26:24 +0000 (19:26 -0400)]
Change buffer default properties to invalid

This includes HB_DIRECTION_INVALID and HB_SCRIPT_INVALID.

The INVALID will cause a "guess whatever from the text" in hb_shape().
While it's not ideal, it works better than the previous defaults at
least (HB_DIRECTION_LTR and HB_SCRIPT_COMMON).

13 years agoMove enum types to hb-common.h
Behdad Esfahbod [Fri, 15 Apr 2011 23:16:54 +0000 (19:16 -0400)]
Move enum types to hb-common.h

13 years ago[TODO] Add new item
Behdad Esfahbod [Fri, 15 Apr 2011 23:16:34 +0000 (19:16 -0400)]
[TODO] Add new item

13 years agoMark internal buffer variables private
Behdad Esfahbod [Fri, 15 Apr 2011 23:12:01 +0000 (19:12 -0400)]
Mark internal buffer variables private

13 years agoAdd hb_script_from_string()
Behdad Esfahbod [Fri, 15 Apr 2011 23:07:10 +0000 (19:07 -0400)]
Add hb_script_from_string()

13 years agoRemove hb_buffer_clear_positions(), add hb_ot_layout_position_start()
Behdad Esfahbod [Fri, 15 Apr 2011 22:59:56 +0000 (18:59 -0400)]
Remove hb_buffer_clear_positions(), add hb_ot_layout_position_start()

13 years ago[API] Remove hb_buffer_clear()
Behdad Esfahbod [Fri, 15 Apr 2011 22:35:08 +0000 (18:35 -0400)]
[API] Remove hb_buffer_clear()

One should use hb_buffer_reset() really.

13 years ago[TODO] Remove done items
Behdad Esfahbod [Fri, 15 Apr 2011 22:34:55 +0000 (18:34 -0400)]
[TODO] Remove done items

13 years agoCosmetic
Behdad Esfahbod [Fri, 15 Apr 2011 18:41:04 +0000 (14:41 -0400)]
Cosmetic

13 years ago[TODO] Remove done items
Behdad Esfahbod [Fri, 15 Apr 2011 16:40:40 +0000 (12:40 -0400)]
[TODO] Remove done items

13 years agoMake hb_language_t typesafe
Behdad Esfahbod [Fri, 15 Apr 2011 16:32:06 +0000 (12:32 -0400)]
Make hb_language_t typesafe

13 years ago[test] Add more TODO items
Behdad Esfahbod [Fri, 15 Apr 2011 15:45:14 +0000 (11:45 -0400)]
[test] Add more TODO items

13 years agoAdd hb_buffer_reset() and hb_buffer_set_length()
Behdad Esfahbod [Wed, 13 Apr 2011 19:49:06 +0000 (15:49 -0400)]
Add hb_buffer_reset() and hb_buffer_set_length()

13 years agoMinor
Behdad Esfahbod [Wed, 13 Apr 2011 19:02:40 +0000 (15:02 -0400)]
Minor

13 years ago[test] Add todo items
Behdad Esfahbod [Wed, 13 Apr 2011 05:35:58 +0000 (01:35 -0400)]
[test] Add todo items

13 years ago[TODO] Add item re script iso15924 functions
Behdad Esfahbod [Wed, 13 Apr 2011 05:11:19 +0000 (01:11 -0400)]
[TODO] Add item re script iso15924 functions

13 years ago[test] Test hb-buffer.h
Behdad Esfahbod [Wed, 13 Apr 2011 05:09:09 +0000 (01:09 -0400)]
[test] Test hb-buffer.h

13 years ago[TODO] Add item re hb_buffer_reset()
Behdad Esfahbod [Wed, 13 Apr 2011 05:07:42 +0000 (01:07 -0400)]
[TODO] Add item re hb_buffer_reset()

13 years ago[TODO] Add item re hb_buffer_resize()
Behdad Esfahbod [Wed, 13 Apr 2011 05:06:02 +0000 (01:06 -0400)]
[TODO] Add item re hb_buffer_resize()

13 years ago[TODO] Add API item
Behdad Esfahbod [Wed, 13 Apr 2011 04:06:23 +0000 (00:06 -0400)]
[TODO] Add API item

13 years agoMinor
Behdad Esfahbod [Mon, 11 Apr 2011 23:47:33 +0000 (19:47 -0400)]
Minor

13 years ago[test] Actually hook up hb_script_t tests
Behdad Esfahbod [Mon, 11 Apr 2011 23:43:51 +0000 (19:43 -0400)]
[test] Actually hook up hb_script_t tests

I really shall find a way to automate the test enumeration.  Otherwise
it's too easy to add a test and wrongly hook it up.  Did it twice today.

13 years agoFold hb-language.[ch] into hb-common.[ch]
Behdad Esfahbod [Mon, 11 Apr 2011 21:55:58 +0000 (17:55 -0400)]
Fold hb-language.[ch] into hb-common.[ch]

13 years ago[test] Test hb_language_t
Behdad Esfahbod [Mon, 11 Apr 2011 21:49:33 +0000 (17:49 -0400)]
[test] Test hb_language_t

13 years agoMake hb_language_from_string("") return NULL language
Behdad Esfahbod [Mon, 11 Apr 2011 21:49:10 +0000 (17:49 -0400)]
Make hb_language_from_string("") return NULL language

13 years ago[teset] Test hb_script_t
Behdad Esfahbod [Mon, 11 Apr 2011 20:17:02 +0000 (16:17 -0400)]
[teset] Test hb_script_t

13 years agoRename hb_category_t to hb_unicode_general_category_t
Behdad Esfahbod [Mon, 11 Apr 2011 19:47:40 +0000 (15:47 -0400)]
Rename hb_category_t to hb_unicode_general_category_t

13 years agoMake HB_TAG_CHAR4 private
Behdad Esfahbod [Mon, 11 Apr 2011 18:58:28 +0000 (14:58 -0400)]
Make HB_TAG_CHAR4 private

It's just sugar.

13 years agoMake hb_tag_from_string(NULL) return HB_TAG_NONE
Behdad Esfahbod [Mon, 11 Apr 2011 17:27:30 +0000 (13:27 -0400)]
Make hb_tag_from_string(NULL) return HB_TAG_NONE

13 years agoBuild fix
Behdad Esfahbod [Mon, 11 Apr 2011 17:27:21 +0000 (13:27 -0400)]
Build fix

13 years agoMove macros around
Behdad Esfahbod [Mon, 11 Apr 2011 17:16:08 +0000 (13:16 -0400)]
Move macros around

13 years agoRename HB_TAG_STR() to HB_TAG_CHAR4()
Behdad Esfahbod [Mon, 11 Apr 2011 17:12:37 +0000 (13:12 -0400)]
Rename HB_TAG_STR() to HB_TAG_CHAR4()

The problem with HB_TAG_STR() was that it expected a string of size 4
exactly, and unlike hb_tag_from_string() it doesn't pad the tag with
space characters.  So, the new name is more appropriate.

13 years agoAdd an in-tree test suite
Behdad Esfahbod [Mon, 11 Apr 2011 16:46:49 +0000 (12:46 -0400)]
Add an in-tree test suite

Uses the glib testing framework.  Wrote unit tests for hb-common.h
types.

13 years agoAdd few more paratheses to the HB_TAG macro
Behdad Esfahbod [Mon, 11 Apr 2011 16:29:52 +0000 (12:29 -0400)]
Add few more paratheses to the HB_TAG macro

Never hurts.

13 years agoA few more ASSERTs
Behdad Esfahbod [Mon, 11 Apr 2011 16:29:31 +0000 (12:29 -0400)]
A few more ASSERTs

13 years agoRemove warning message from public header file
Behdad Esfahbod [Mon, 11 Apr 2011 15:49:08 +0000 (11:49 -0400)]
Remove warning message from public header file

Since we now assert thos in hb-private.h, the int types cannot be wrong.
(Except for when someone else includes hb-common.h in a very broken
configuration, but that's not our problem!)

Plus, we don't use inline in the public headers, so remove that too.

13 years agoAssert int types
Behdad Esfahbod [Mon, 11 Apr 2011 15:47:14 +0000 (11:47 -0400)]
Assert int types

13 years agoAdd test directory
Behdad Esfahbod [Thu, 7 Apr 2011 20:05:07 +0000 (16:05 -0400)]
Add test directory

13 years agoUpdate TODO items
Behdad Esfahbod [Thu, 7 Apr 2011 19:53:26 +0000 (15:53 -0400)]
Update TODO items

13 years agoDisable 'cswh' by default except for Arabic shaper
Behdad Esfahbod [Wed, 6 Apr 2011 18:04:56 +0000 (14:04 -0400)]
Disable 'cswh' by default except for Arabic shaper

That better matches OpenType spec.  Note that we enable it for all
Arabic-shaper scripts.  Ie. we enable it by default for Syriac too,
but the SyriacOT spec does not require it.  I think this is a more
useful compromise than special-casing for Arabic script alone.

13 years ago[hb-view] setlocale (LC_ALL, "")
Behdad Esfahbod [Mon, 4 Apr 2011 19:36:51 +0000 (15:36 -0400)]
[hb-view] setlocale (LC_ALL, "")

For now we don't use anything from the locale, but we should default
to using $LANG, etc, if --language is not specified.  Right?

13 years ago[hb-view] Rewrite --features parsing, with range support
Behdad Esfahbod [Mon, 4 Apr 2011 18:50:09 +0000 (14:50 -0400)]
[hb-view] Rewrite --features parsing, with range support

The --features parsing handles errors now.  More importantly, it
allos limiting individual features to specific byte ranges.  The
format is Python-esque.  Here is how it all works:

  Syntax: Value: Start: End:

Setting value:
  "kern" 1 0 ∞ # Turn feature on
  "+kern" 1 0 ∞ # Turn feature off
  "-kern" 0 0 ∞ # Turn feature off
  "kern=0" 0 0 ∞ # Turn feature off
  "kern=1" 1 0 ∞ # Turn feature on
  "kern=2" 2 0 ∞ # Choose 2nd alternate

Setting index:
  "kern[]" 1 0 ∞ # Turn feature on
  "kern[:]" 1 0 ∞ # Turn feature on
  "kern[5:]" 1 5 ∞ # Turn feature on, partial
  "kern[:5]" 1 0 5 # Turn feature on, partial
  "kern[3:5]" 1 3 5 # Turn feature on, range
  "kern[3]" 1 3 3+1 # Turn feature on, single char

Mixing it all:

  "kern[3:5]=0" 1 3 5 # Turn feature off for range

13 years ago[hb-view] Use cached hb-ft face creation
Behdad Esfahbod [Mon, 4 Apr 2011 18:49:50 +0000 (14:49 -0400)]
[hb-view] Use cached hb-ft face creation

Avoids recreating the face the second time we call draw().

13 years ago[hb-view] Add --debug
Behdad Esfahbod [Mon, 4 Apr 2011 18:45:28 +0000 (14:45 -0400)]
[hb-view] Add --debug

Frees all allocated memory before exiting.  Useful for valgrind run.

13 years ago[hb-view] Support --features
Behdad Esfahbod [Fri, 1 Apr 2011 19:48:43 +0000 (15:48 -0400)]
[hb-view] Support --features

Accepts values like:

  --features="-mkmk,aalt=2,calt=1,+cswh"

A minus sign means "=0", a plus sign means "=1".  Default is "=1".
A minus sign overrides an explicit value.

13 years agoSort options for clarity
Behdad Esfahbod [Fri, 1 Apr 2011 18:19:10 +0000 (14:19 -0400)]
Sort options for clarity

13 years agoAdd script to/from ISO 15924 tag support
Behdad Esfahbod [Wed, 16 Mar 2011 20:36:32 +0000 (17:36 -0300)]
Add script to/from ISO 15924 tag support

Also adds --script support to hb-view.

If a script tag is not known to us, we pass the ISO 15924 tag around.
Right now, the OT layer ignores that, but we can fix it to blindly
convert that to an OT script tag.

13 years agoLet hb_shape() guess script and direction...
Behdad Esfahbod [Wed, 16 Mar 2011 17:53:32 +0000 (14:53 -0300)]
Let hb_shape() guess script and direction...

- Rename HB_SCRIPT_INVALID_CODE to HB_SCRIPT_INVALID

- Add HB_DIRECTION_INVALID

- Make hb_script_get_horizontal_direction() public

- Make hb_shape() guess script from buffer text (first non-common
  non-inherit script) if buffer script is set to HB_SCRIPT_INVALID (this
  is NOT the default.)

- Make hb_shape() guess direction from buffer script if buffer direction
is set to HB_DIRECTION_INVALID (this is NOT the default.)

- Make hb-view.c set INVALID script and direction on the buffer.

The above changes are meant to make hb-view fairly useful for uni-script
uni-direction text.  The guessing behavior however is NOT the default of
hb_shape() and must be asked for explicitly.  This is intended, because
the guess is not a suitable substitute to full-fledged bidi and script
segmentation.  It's just a testing tool.

13 years ago[hb-view] Handle write_to_png errors
Behdad Esfahbod [Wed, 2 Mar 2011 06:01:03 +0000 (01:01 -0500)]
[hb-view] Handle write_to_png errors

13 years ago[hb-view] Link with -lm
Behdad Esfahbod [Wed, 2 Mar 2011 04:18:09 +0000 (23:18 -0500)]
[hb-view] Link with -lm

13 years agoFix possible overflow
Behdad Esfahbod [Mon, 28 Feb 2011 18:13:52 +0000 (10:13 -0800)]
Fix possible overflow

13 years agoDefault background color shall either be white or transparent
Behdad Esfahbod [Wed, 23 Feb 2011 17:47:56 +0000 (12:47 -0500)]
Default background color shall either be white or transparent

Definitely not black!

13 years agoAdd initial hb-view tool
Behdad Esfahbod [Tue, 22 Feb 2011 23:06:19 +0000 (18:06 -0500)]
Add initial hb-view tool

Currently doesn't handle script or direction.

13 years agoFix #pragma message for MSVC.
Bradley Grainger [Tue, 15 Feb 2011 23:37:29 +0000 (18:37 -0500)]
Fix #pragma message for MSVC.

__LOC__ was renamed to _HB__LOC__ in cd7555 but the corresponding
change wasn't made in hb-private.h.

13 years agoFix language extension matching
Behdad Esfahbod [Mon, 10 Jan 2011 12:45:41 +0000 (07:45 -0500)]
Fix language extension matching

13 years agoDon't use the m4/ dir
Behdad Esfahbod [Mon, 10 Jan 2011 07:27:49 +0000 (02:27 -0500)]
Don't use the m4/ dir

We just require people to have libtool, pkg-config, etc installed
when running autogen.sh

13 years agoFix 'make distcheck'
Behdad Esfahbod [Mon, 10 Jan 2011 03:29:14 +0000 (22:29 -0500)]
Fix 'make distcheck'

13 years agoBug 31174 - Update autotools configuration
Javier Jardón [Mon, 10 Jan 2011 03:18:53 +0000 (22:18 -0500)]
Bug 31174 - Update autotools configuration

13 years agoFix ChanContext backtrack matching with GPOS
Behdad Esfahbod [Thu, 6 Jan 2011 19:58:52 +0000 (14:58 -0500)]
Fix ChanContext backtrack matching with GPOS

Reported on mailing list by Keith Stribley and Khaled Hosny.

13 years agoRemove unused realloc
Behdad Esfahbod [Thu, 6 Jan 2011 19:44:14 +0000 (14:44 -0500)]
Remove unused realloc

We always allocate and grow str and pos together.

13 years agoFix ICU detection
Behdad Esfahbod [Thu, 6 Jan 2011 19:16:59 +0000 (14:16 -0500)]
Fix ICU detection

13 years agoRemove Graphite backend
Behdad Esfahbod [Mon, 27 Dec 2010 01:52:40 +0000 (20:52 -0500)]
Remove Graphite backend

It was unmaintained and the code has to be replaced to use the new
grphite-ng code base.

13 years agoDocs
Behdad Esfahbod [Wed, 22 Dec 2010 06:39:29 +0000 (01:39 -0500)]
Docs

13 years agoBug 32274 - classic mongolian shaper
Behdad Esfahbod [Tue, 21 Dec 2010 23:36:25 +0000 (18:36 -0500)]
Bug 32274 - classic mongolian shaper

Add support for classic Mongolian script to the Arabic shaper.

Still work to be done around U+180E MONGOLIAN VOWEL SEPARATOR as it
should not be included in the final glyph stream the same way that
ZWNJ, etc should not appear in the final glyph stream.

But the joining part should be done.

There remains the question of how should the U+18A9 MONGOLIAN LETTER ALI
GALI DAGALGA be handled as it has General Category NSM but a letter
nonetheless.  For now, our generic logic makes this a joining T instead
of joining D as other Mongolian letters are.

13 years agoReroute Mandaic shaping through the Arabic shaper
Behdad Esfahbod [Tue, 21 Dec 2010 19:19:32 +0000 (14:19 -0500)]
Reroute Mandaic shaping through the Arabic shaper

We added Mandaic joining data to the Arabic shaper a while ago, but
were not actually using the Arabic shaper for Mandaic.  Fixed.

13 years agoAnnotate the Arabic joining table with block information
Behdad Esfahbod [Tue, 21 Dec 2010 19:18:24 +0000 (14:18 -0500)]
Annotate the Arabic joining table with block information

13 years agoRename remaining metrics uses to extents
Behdad Esfahbod [Sat, 18 Dec 2010 01:15:05 +0000 (20:15 -0500)]
Rename remaining metrics uses to extents

13 years agoRename TableDirectory to TableRecord as per OpenType 1.6
Behdad Esfahbod [Wed, 15 Dec 2010 04:51:29 +0000 (23:51 -0500)]
Rename TableDirectory to TableRecord as per OpenType 1.6

13 years agoUpdate 'head' table to OpenType 1.6
Behdad Esfahbod [Mon, 13 Dec 2010 20:54:56 +0000 (15:54 -0500)]
Update 'head' table to OpenType 1.6

13 years agoDisallow ligature substitutions replacing one glyph
Behdad Esfahbod [Mon, 13 Dec 2010 19:22:35 +0000 (14:22 -0500)]
Disallow ligature substitutions replacing one glyph

13 years agoMozilla Bug 618592 - freeze on typekit
Behdad Esfahbod [Mon, 13 Dec 2010 19:13:35 +0000 (14:13 -0500)]
Mozilla Bug 618592 - freeze on typekit

Fix apply_lookup() for zero-input broken fonts.

13 years agoRename original_direction to target_direction
Behdad Esfahbod [Tue, 7 Dec 2010 21:22:02 +0000 (16:22 -0500)]
Rename original_direction to target_direction

13 years agoFix arabic shaping of LTR text
Behdad Esfahbod [Tue, 7 Dec 2010 21:20:42 +0000 (16:20 -0500)]
Fix arabic shaping of LTR text

We should ensure-direction before doing any complex work.  The only
exception is mirroring that needs to see the original / final direction,
not the native.  Handle that.

13 years agoBug 31965 - some GNU/Linux distributions lack icu.pc but have icu-config
Behdad Esfahbod [Tue, 30 Nov 2010 05:57:15 +0000 (00:57 -0500)]
Bug 31965 - some GNU/Linux distributions lack icu.pc but have icu-config

Patch from suzuki toshiya.

13 years agoAdjust pyx files to reflect change from int to hb_var_int_t
Behdad Esfahbod [Mon, 29 Nov 2010 00:39:47 +0000 (19:39 -0500)]
Adjust pyx files to reflect change from int to hb_var_int_t

Patch from Thomas Hunger.

13 years agoFix failing checks
Behdad Esfahbod [Mon, 22 Nov 2010 16:30:32 +0000 (11:30 -0500)]
Fix failing checks

13 years agoRemove email address from Copyright headers
Behdad Esfahbod [Mon, 22 Nov 2010 16:03:18 +0000 (11:03 -0500)]
Remove email address from Copyright headers

13 years agoClarify copyright notice
Behdad Esfahbod [Thu, 18 Nov 2010 18:58:32 +0000 (13:58 -0500)]
Clarify copyright notice

13 years agoMove generated table to its own file
Behdad Esfahbod [Wed, 17 Nov 2010 21:58:21 +0000 (16:58 -0500)]
Move generated table to its own file

13 years agoUpdate Arabic joining table to include Mandaic
Behdad Esfahbod [Wed, 17 Nov 2010 21:52:58 +0000 (16:52 -0500)]
Update Arabic joining table to include Mandaic

Mandaic was added to Unicode 6.0, but the joining data was not updated.
Draft ArabicShaping.txt from 6.1 includes the joining data for Mandaic.
Use that.

13 years agoAdd OpenType script tags for Unicode 5.2 and Unicode 6.0 scripts
Behdad Esfahbod [Wed, 17 Nov 2010 19:49:40 +0000 (14:49 -0500)]
Add OpenType script tags for Unicode 5.2 and Unicode 6.0 scripts

Based on tags proposed by Microsoft for inclusion in OpenType.

13 years agoAdd Unicode 6.0 scripts
Behdad Esfahbod [Wed, 17 Nov 2010 19:35:34 +0000 (14:35 -0500)]
Add Unicode 6.0 scripts

13 years agoChange HB_SCRIPT_MEITEI_MAYEK to HB_SCRIPT_MEETEI_MAYEK
Behdad Esfahbod [Wed, 17 Nov 2010 19:25:44 +0000 (14:25 -0500)]
Change HB_SCRIPT_MEITEI_MAYEK to HB_SCRIPT_MEETEI_MAYEK

The new name matches the Unicode name.  Reported by Jonathan Kew.

13 years agoAdd TODO item
Behdad Esfahbod [Wed, 17 Nov 2010 18:08:47 +0000 (13:08 -0500)]
Add TODO item

13 years agoAdd XXX marks
Behdad Esfahbod [Wed, 17 Nov 2010 17:57:23 +0000 (12:57 -0500)]
Add XXX marks

14 years agoAdd TODO item
Behdad Esfahbod [Fri, 5 Nov 2010 14:51:37 +0000 (10:51 -0400)]
Add TODO item

14 years agoSave general category and combining class in the buffer for reuse
Behdad Esfahbod [Wed, 3 Nov 2010 20:37:24 +0000 (16:37 -0400)]
Save general category and combining class in the buffer for reuse

14 years agoMore "unreached code" warning fixes
Behdad Esfahbod [Wed, 3 Nov 2010 19:50:36 +0000 (15:50 -0400)]
More "unreached code" warning fixes

Ugly :(.

14 years agoAdd comment
Behdad Esfahbod [Wed, 3 Nov 2010 19:47:12 +0000 (15:47 -0400)]
Add comment

14 years agoPedantic
Behdad Esfahbod [Wed, 3 Nov 2010 19:40:07 +0000 (15:40 -0400)]
Pedantic

14 years agoMinor code shuffling
Behdad Esfahbod [Wed, 3 Nov 2010 19:28:56 +0000 (15:28 -0400)]
Minor code shuffling

14 years agoFix a few more "unreachable code" warnings
Behdad Esfahbod [Wed, 3 Nov 2010 19:11:04 +0000 (15:11 -0400)]
Fix a few more "unreachable code" warnings

14 years agoRemove another couple lines of dead code
Behdad Esfahbod [Wed, 3 Nov 2010 16:46:58 +0000 (12:46 -0400)]
Remove another couple lines of dead code

14 years agoFix unreachable-code warning
Behdad Esfahbod [Wed, 3 Nov 2010 15:50:21 +0000 (11:50 -0400)]
Fix unreachable-code warning

14 years agoMove things around some more
Behdad Esfahbod [Thu, 28 Oct 2010 03:18:51 +0000 (23:18 -0400)]
Move things around some more

14 years agoMove buffer var allocation local
Behdad Esfahbod [Thu, 28 Oct 2010 03:09:10 +0000 (23:09 -0400)]
Move buffer var allocation local

14 years agoMove code around
Behdad Esfahbod [Thu, 28 Oct 2010 02:48:31 +0000 (22:48 -0400)]
Move code around

14 years agoMove some more code around
Behdad Esfahbod [Thu, 28 Oct 2010 02:37:59 +0000 (22:37 -0400)]
Move some more code around

14 years agoSimplify mark skipping logic
Behdad Esfahbod [Thu, 28 Oct 2010 02:11:32 +0000 (22:11 -0400)]
Simplify mark skipping logic