| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright © 2010,2012 Google, Inc. | 2 * Copyright © 2010,2012 Google, Inc. |
| 3 * | 3 * |
| 4 * This is part of HarfBuzz, a text shaping library. | 4 * This is part of HarfBuzz, a text shaping library. |
| 5 * | 5 * |
| 6 * Permission is hereby granted, without written agreement and without | 6 * Permission is hereby granted, without written agreement and without |
| 7 * license or royalty fees, to use, copy, modify, and distribute this | 7 * license or royalty fees, to use, copy, modify, and distribute this |
| 8 * software and its documentation for any purpose, provided that the | 8 * software and its documentation for any purpose, provided that the |
| 9 * above copyright notice and the following two paragraphs appear in | 9 * above copyright notice and the following two paragraphs appear in |
| 10 * all copies of this software. | 10 * all copies of this software. |
| (...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 192 map->add_feature (arabic_features[i], 1, i < 4 ? F_HAS_FALLBACK : F_NONE); /
* The first four features have fallback. */ | 192 map->add_feature (arabic_features[i], 1, i < 4 ? F_HAS_FALLBACK : F_NONE); /
* The first four features have fallback. */ |
| 193 | 193 |
| 194 map->add_gsub_pause (NULL); | 194 map->add_gsub_pause (NULL); |
| 195 | 195 |
| 196 map->add_feature (HB_TAG('r','l','i','g'), 1, F_GLOBAL|F_HAS_FALLBACK); | 196 map->add_feature (HB_TAG('r','l','i','g'), 1, F_GLOBAL|F_HAS_FALLBACK); |
| 197 map->add_gsub_pause (arabic_fallback_shape); | 197 map->add_gsub_pause (arabic_fallback_shape); |
| 198 | 198 |
| 199 map->add_global_bool_feature (HB_TAG('c','a','l','t')); | 199 map->add_global_bool_feature (HB_TAG('c','a','l','t')); |
| 200 map->add_gsub_pause (NULL); | 200 map->add_gsub_pause (NULL); |
| 201 | 201 |
| 202 map->add_global_bool_feature (HB_TAG('c','s','w','h')); | |
| 203 map->add_global_bool_feature (HB_TAG('m','s','e','t')); | 202 map->add_global_bool_feature (HB_TAG('m','s','e','t')); |
| 204 } | 203 } |
| 205 | 204 |
| 206 #include "hb-ot-shape-complex-arabic-fallback.hh" | 205 #include "hb-ot-shape-complex-arabic-fallback.hh" |
| 207 | 206 |
| 208 struct arabic_shape_plan_t | 207 struct arabic_shape_plan_t |
| 209 { | 208 { |
| 210 ASSERT_POD (); | 209 ASSERT_POD (); |
| 211 | 210 |
| 212 /* The "+ 1" in the next array is to accommodate for the "NONE" command, | 211 /* The "+ 1" in the next array is to accommodate for the "NONE" command, |
| (...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 359 | 358 |
| 360 | 359 |
| 361 const hb_ot_complex_shaper_t _hb_ot_complex_shaper_arabic = | 360 const hb_ot_complex_shaper_t _hb_ot_complex_shaper_arabic = |
| 362 { | 361 { |
| 363 "arabic", | 362 "arabic", |
| 364 collect_features_arabic, | 363 collect_features_arabic, |
| 365 NULL, /* override_features */ | 364 NULL, /* override_features */ |
| 366 data_create_arabic, | 365 data_create_arabic, |
| 367 data_destroy_arabic, | 366 data_destroy_arabic, |
| 368 NULL, /* preprocess_text_arabic */ | 367 NULL, /* preprocess_text_arabic */ |
| 369 NULL, /* normalization_preference */ | 368 HB_OT_SHAPE_NORMALIZATION_MODE_DEFAULT, |
| 370 NULL, /* decompose */ | 369 NULL, /* decompose */ |
| 371 NULL, /* compose */ | 370 NULL, /* compose */ |
| 372 setup_masks_arabic, | 371 setup_masks_arabic, |
| 373 HB_OT_SHAPE_ZERO_WIDTH_MARKS_BY_GDEF_LATE, | 372 HB_OT_SHAPE_ZERO_WIDTH_MARKS_BY_GDEF_LATE, |
| 374 true, /* fallback_position */ | 373 true, /* fallback_position */ |
| 375 }; | 374 }; |
| OLD | NEW |