Invoice status bar currencies not displayed correctly for Hebrew

When Gnucash is run in Hebrew which is a RTL language, on the invoice
pages the status bar currencies are not displayed correctly...

To fix this, when creating the displayed monetary amount insert a BiDi
ltr isolate uni-character at the start of the string.
This commit is contained in:
Robert Fewell 2022-03-07 11:06:21 +00:00
parent 9987928638
commit 6fa3c9e5d9

View File

@ -1715,10 +1715,14 @@ static void
gnc_invoice_reset_total_label (GtkLabel *label, gnc_numeric amt, gnc_commodity *com)
{
char string[256];
gchar *bidi_string;
amt = gnc_numeric_convert (amt, gnc_commodity_get_fraction(com), GNC_HOW_RND_ROUND_HALF_UP);
xaccSPrintAmount (string, amt, gnc_commodity_print_info (com, TRUE));
gtk_label_set_text (label, string);
bidi_string = gnc_wrap_text_with_bidi_ltr_isolate (string);
gtk_label_set_text (label, bidi_string);
g_free (bidi_string);
}
static void