From c23ce62829d98c2dc78f1fd8a8810cefd0f10402 Mon Sep 17 00:00:00 2001 From: Thomas Martitz Date: Wed, 15 Jan 2014 13:37:40 +0100 Subject: fonts: Do not unload completely on USB. The font engine can now perform cache lookups even if the font file is closed, if the font was disabled with the new font_disable_all() function. It is highly probable that the lookup succeeds but in the cache-miss case a blank, full-width glyph will be returned. Change-Id: I3c97e747d2a0ba30c7b495c6118c9f029d265b56 --- firmware/include/font_cache.h | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'firmware/include/font_cache.h') diff --git a/firmware/include/font_cache.h b/firmware/include/font_cache.h index a4c959e..1809720 100644 --- a/firmware/include/font_cache.h +++ b/firmware/include/font_cache.h @@ -17,8 +17,10 @@ * KIND, either express or implied. * ****************************************************************************/ + #ifndef _FONT_CACHE_H_ #define _FONT_CACHE_H_ +#include #include "lru.h" /******************************************************************************* @@ -45,10 +47,16 @@ struct font_cache_entry /* Create an auto sized font cache from buf */ void font_cache_create( struct font_cache* fcache, void* buf, int buf_size, int bitmap_bytes_size); -/* Get font cache entry */ + +/* Get font cache entry for the given char_code + * + * cache_only: true if only a cache lookup should be performed and loading on miss should be avoided + * + * Note: With cache_only this can return NULL, which otherwise never happens */ struct font_cache_entry* font_cache_get( struct font_cache* fcache, unsigned short char_code, + bool cache_only, void (*callback) (struct font_cache_entry* p, void *callback_data), void *callback_data); -- cgit v1.1