summaryrefslogtreecommitdiff
path: root/src/font.h
diff options
context:
space:
mode:
authorK. Handa <handa@gnu.org>2016-01-02 16:36:21 +0900
committerK. Handa <handa@gnu.org>2016-01-26 22:58:07 +0900
commit4a3db0f72955815c41114129129424c3b31ea3eb (patch)
tree77c468bfdaaa6485274337263e5e4d3245545eaa /src/font.h
parent60902756b0d794b16b9c1c67c4c40a3ac04d1c1b (diff)
downloademacs-4a3db0f72955815c41114129129424c3b31ea3eb.tar.gz
support rendering of wider range of combinging characters by ftfont backend
* lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend supports rendering of combining characters, call font-shape-gstring. * src/font.c (Ffont_get): Handle `combining-capability' property. (syms_of_font): New symbol ":combining-capability'. * src/font.h (struct font_driver): New member combining_capability. * src/ftfont.c: Include "category.h". (ftfont_driver): Initialize combining_capability to ftfont_combining_capability. (ftfont_shape_by_flt): If OTF is null, try to find a suitable FLT in advance. (ftfont_combining_capability): New function. (cherry picked from commit 536f48e9a2251b9e654ea974bd90ff2f40218753)
Diffstat (limited to 'src/font.h')
-rw-r--r--src/font.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/font.h b/src/font.h
index ba208e3c27d..36fe51ad319 100644
--- a/src/font.h
+++ b/src/font.h
@@ -757,6 +757,12 @@ struct font_driver
bool (*cached_font_ok) (struct frame *f,
Lisp_Object font_object,
Lisp_Object entity);
+
+ /* Optional
+
+ Return non-nil if the driver support rendering of combining
+ characters for FONT according to Unicode combining class. */
+ Lisp_Object (*combining_capability) (struct font *font);
};