Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBastien Montagne <montagne29@wanadoo.fr>2019-07-29 15:10:54 +0300
committerBastien Montagne <montagne29@wanadoo.fr>2019-07-29 15:11:35 +0300
commit3b6c75dc318223a7e559805ed9802c46c73f2f28 (patch)
treeef5de922cfbfcacb8e69ed7fd0290b53ccce2784 /source/blender/blenfont
parentb83a1b62c7db4e11c96b65cb68b2a88eeab7fcbc (diff)
Fix T67620: Font preview translations malfunction in Blender 2.8
We cannot reliably use translations API from non-main threads. Now storing translated strings in a static cache, with basic mechanism to update it on language change. Reviewers: brecht, campbellbarton Differential Revision: https://developer.blender.org/D5350
Diffstat (limited to 'source/blender/blenfont')
-rw-r--r--source/blender/blenfont/BLF_api.h1
-rw-r--r--source/blender/blenfont/intern/blf_thumbs.c3
2 files changed, 3 insertions, 1 deletions
diff --git a/source/blender/blenfont/BLF_api.h b/source/blender/blenfont/BLF_api.h
index 448bb0d621a..bf0aa96df84 100644
--- a/source/blender/blenfont/BLF_api.h
+++ b/source/blender/blenfont/BLF_api.h
@@ -223,6 +223,7 @@ void BLF_dir_free(char **dirs, int count) ATTR_NONNULL();
/* blf_thumbs.c */
void BLF_thumb_preview(const char *filename,
const char **draw_str,
+ const char **i18n_draw_str,
const unsigned char draw_str_lines,
const float font_color[4],
const int font_size,
diff --git a/source/blender/blenfont/intern/blf_thumbs.c b/source/blender/blenfont/intern/blf_thumbs.c
index 802f97fc5f5..d6710b91539 100644
--- a/source/blender/blenfont/intern/blf_thumbs.c
+++ b/source/blender/blenfont/intern/blf_thumbs.c
@@ -50,6 +50,7 @@
*/
void BLF_thumb_preview(const char *filename,
const char **draw_str,
+ const char **i18n_draw_str,
const unsigned char draw_str_lines,
const float font_color[4],
const int font_size,
@@ -90,7 +91,7 @@ void BLF_thumb_preview(const char *filename,
blf_draw_buffer__start(font);
for (i = 0; i < draw_str_lines; i++) {
- const char *draw_str_i18n = BLT_translate_do(BLT_I18NCONTEXT_DEFAULT, draw_str[i]);
+ const char *draw_str_i18n = i18n_draw_str[i] != NULL ? i18n_draw_str[i] : draw_str[i];
const size_t draw_str_i18n_len = strlen(draw_str_i18n);
int draw_str_i18n_nbr = 0;