Merge pull request #1439 from ebraminio/tracking

[aat] Expose hb_aat_layout_has_tracking API
diff --git a/docs/harfbuzz-sections.txt b/docs/harfbuzz-sections.txt
index 6322431..fd7682e 100644
--- a/docs/harfbuzz-sections.txt
+++ b/docs/harfbuzz-sections.txt
@@ -7,13 +7,14 @@
 <FILE>hb-aat-layout</FILE>
 HB_AAT_LAYOUT_NO_SELECTOR_INDEX
 hb_aat_layout_feature_type_t
-hb_aat_layout_get_feature_types
-hb_aat_layout_feature_type_get_name_id
 hb_aat_layout_feature_selector_t
 hb_aat_layout_feature_selector_info_t
+hb_aat_layout_feature_type_get_name_id
 hb_aat_layout_feature_type_get_selector_infos
-hb_aat_layout_has_substitution
+hb_aat_layout_get_feature_types
 hb_aat_layout_has_positioning
+hb_aat_layout_has_substitution
+hb_aat_layout_has_tracking
 </SECTION>
 
 <SECTION>
diff --git a/src/hb-aat-layout.cc b/src/hb-aat-layout.cc
index 837dcba..e39df0e 100644
--- a/src/hb-aat-layout.cc
+++ b/src/hb-aat-layout.cc
@@ -296,7 +296,14 @@
 }
 
 
-bool
+/*
+ * hb_aat_layout_has_tracking:
+ * @face:
+ *
+ * Returns:
+ * Since: REPLACEME
+ */
+hb_bool_t
 hb_aat_layout_has_tracking (hb_face_t *face)
 {
   return face->table.trak->has_data ();
diff --git a/src/hb-aat-layout.h b/src/hb-aat-layout.h
index f574509..760aaae 100644
--- a/src/hb-aat-layout.h
+++ b/src/hb-aat-layout.h
@@ -473,6 +473,14 @@
 hb_aat_layout_has_positioning (hb_face_t *face);
 
 
+/*
+ * trak
+ */
+
+HB_EXTERN hb_bool_t
+hb_aat_layout_has_tracking (hb_face_t *face);
+
+
 HB_END_DECLS
 
 #endif /* HB_AAT_LAYOUT_H */
diff --git a/src/hb-aat-layout.hh b/src/hb-aat-layout.hh
index cbb9454..56a4818 100644
--- a/src/hb-aat-layout.hh
+++ b/src/hb-aat-layout.hh
@@ -72,9 +72,6 @@
 			hb_font_t *font,
 			hb_buffer_t *buffer);
 
-HB_INTERNAL bool
-hb_aat_layout_has_tracking (hb_face_t *face);
-
 HB_INTERNAL void
 hb_aat_layout_track (const hb_ot_shape_plan_t *plan,
 		     hb_font_t *font,
diff --git a/test/api/fonts/aat-morx.ttf b/test/api/fonts/aat-morx.ttf
new file mode 100644
index 0000000..5827ec5
--- /dev/null
+++ b/test/api/fonts/aat-morx.ttf
Binary files differ
diff --git a/test/api/fonts/aat-trak.ttf b/test/api/fonts/aat-trak.ttf
new file mode 100644
index 0000000..07ae3af
--- /dev/null
+++ b/test/api/fonts/aat-trak.ttf
Binary files differ
diff --git a/test/api/test-aat-layout.c b/test/api/test-aat-layout.c
index 358fac8..8cfebb1 100644
--- a/test/api/test-aat-layout.c
+++ b/test/api/test-aat-layout.c
@@ -101,6 +101,18 @@
   g_assert_cmpuint (0, ==, count);
 }
 
+static void
+test_aat_has (void)
+{
+  hb_face_t *morx = hb_test_open_font_file ("fonts/aat-morx.ttf");
+  g_assert (hb_aat_layout_has_substitution (morx));
+  hb_face_destroy (morx);
+
+  hb_face_t *trak = hb_test_open_font_file ("fonts/aat-trak.ttf");
+  g_assert (hb_aat_layout_has_tracking (trak));
+  hb_face_destroy (trak);
+}
+
 int
 main (int argc, char **argv)
 {
@@ -108,6 +120,7 @@
 
   hb_test_add (test_aat_get_feature_types);
   hb_test_add (test_aat_get_feature_selectors);
+  hb_test_add (test_aat_has);
 
   face = hb_test_open_font_file ("fonts/aat-feat.ttf");
   sbix = hb_test_open_font_file ("fonts/chromacheck-sbix.ttf");