| 4571 non_neutral_iter = next_iter = iter = *start; |
4571 non_neutral_iter = next_iter = iter = *start; |
| 4572 gtk_text_iter_forward_char(&next_iter); |
4572 gtk_text_iter_forward_char(&next_iter); |
| 4573 |
4573 |
| 4574 /* Bi-directional text support */ |
4574 /* Bi-directional text support */ |
| 4575 /* Get to the first non-neutral character */ |
4575 /* Get to the first non-neutral character */ |
| |
4576 #ifdef HAVE_PANGO14 |
| 4576 while ((PANGO_DIRECTION_NEUTRAL == pango_unichar_direction(gtk_text_iter_get_char(&non_neutral_iter))) |
4577 while ((PANGO_DIRECTION_NEUTRAL == pango_unichar_direction(gtk_text_iter_get_char(&non_neutral_iter))) |
| 4577 && gtk_text_iter_forward_char(&non_neutral_iter)); |
4578 && gtk_text_iter_forward_char(&non_neutral_iter)); |
| 4578 if (PANGO_DIRECTION_RTL == pango_unichar_direction(gtk_text_iter_get_char(&non_neutral_iter))) { |
4579 if (PANGO_DIRECTION_RTL == pango_unichar_direction(gtk_text_iter_get_char(&non_neutral_iter))) { |
| 4579 is_rtl_message = TRUE; |
4580 is_rtl_message = TRUE; |
| 4580 g_string_append(str, "<SPAN style=\"direction:rtl;text-align:right;\">"); |
4581 g_string_append(str, "<SPAN style=\"direction:rtl;text-align:right;\">"); |
| 4581 } |
4582 } |
| |
4583 #endif |
| 4582 |
4584 |
| 4583 /* First add the tags that are already in progress (we don't care about non-printing tags)*/ |
4585 /* First add the tags that are already in progress (we don't care about non-printing tags)*/ |
| 4584 tags = gtk_text_iter_get_tags(start); |
4586 tags = gtk_text_iter_get_tags(start); |
| 4585 |
4587 |
| 4586 for (sl = tags; sl; sl = sl->next) { |
4588 for (sl = tags; sl; sl = sl->next) { |