summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ui/text.c4
-rw-r--r--src/ui/text_simple.c7
2 files changed, 6 insertions, 5 deletions
diff --git a/src/ui/text.c b/src/ui/text.c
index 977cac9c..4a4b3776 100644
--- a/src/ui/text.c
+++ b/src/ui/text.c
@@ -1871,7 +1871,7 @@ iInt2 tryAdvance_Text(int fontId, iRangecc text, int width, const char **endPos)
1871} 1871}
1872 1872
1873iInt2 tryAdvanceNoWrap_Text(int fontId, iRangecc text, int width, const char **endPos) { 1873iInt2 tryAdvanceNoWrap_Text(int fontId, iRangecc text, int width, const char **endPos) {
1874 if (width <= 1) { 1874 if (width && width <= 1) {
1875 *endPos = text.start; 1875 *endPos = text.start;
1876 return zero_I2(); 1876 return zero_I2();
1877 } 1877 }
@@ -2070,7 +2070,7 @@ iTextMetrics draw_WrapText(iWrapText *d, int fontId, iInt2 pos, int color) {
2070 const int width = d->mode == word_WrapTextMode 2070 const int width = d->mode == word_WrapTextMode
2071 ? tryAdvance_Text(fontId, text, d->maxWidth, &endPos).x 2071 ? tryAdvance_Text(fontId, text, d->maxWidth, &endPos).x
2072 : tryAdvanceNoWrap_Text(fontId, text, d->maxWidth, &endPos).x; 2072 : tryAdvanceNoWrap_Text(fontId, text, d->maxWidth, &endPos).x;
2073 notify_WrapText_(d, endPos, (iTextAttrib){ .colorId = color }, 0, width); 2073 notify_WrapText_(d, endPos, (iTextAttrib){ .fgColorId = color }, 0, width);
2074 drawRange_Text(fontId, pos, color, (iRangecc){ text.start, endPos }); 2074 drawRange_Text(fontId, pos, color, (iRangecc){ text.start, endPos });
2075 text.start = endPos; 2075 text.start = endPos;
2076 pos.y += lineHeight_Text(fontId); 2076 pos.y += lineHeight_Text(fontId);
diff --git a/src/ui/text_simple.c b/src/ui/text_simple.c
index 81fb94a5..8560c138 100644
--- a/src/ui/text_simple.c
+++ b/src/ui/text_simple.c
@@ -61,7 +61,7 @@ static iRect runSimple_Font_(iFont *d, const iRunArgs *args) {
61 and other non-complex LTR scripts. Composed glyphs are not supported (must rely on text 61 and other non-complex LTR scripts. Composed glyphs are not supported (must rely on text
62 being in a pre-composed form). This algorithm is used if HarfBuzz is not available. */ 62 being in a pre-composed form). This algorithm is used if HarfBuzz is not available. */
63 const iInt2 orig = args->pos; 63 const iInt2 orig = args->pos;
64 iTextAttrib attrib = { .colorId = args->color }; 64 iTextAttrib attrib = { .fgColorId = args->color };
65 iRect bounds = { orig, init_I2(0, d->height) }; 65 iRect bounds = { orig, init_I2(0, d->height) };
66 float xpos = orig.x; 66 float xpos = orig.x;
67 float xposMax = xpos; 67 float xposMax = xpos;
@@ -118,8 +118,9 @@ static iRect runSimple_Font_(iFont *d, const iRunArgs *args) {
118 if (match_RegExp(activeText_->ansiEscape, chPos, args->text.end - chPos, &m)) { 118 if (match_RegExp(activeText_->ansiEscape, chPos, args->text.end - chPos, &m)) {
119 if (mode & draw_RunMode && ~mode & permanentColorFlag_RunMode) { 119 if (mode & draw_RunMode && ~mode & permanentColorFlag_RunMode) {
120 /* Change the color. */ 120 /* Change the color. */
121 const iColor clr = 121 iColor clr;
122 ansiForeground_Color(capturedRange_RegExpMatch(&m, 1), tmParagraph_ColorId); 122 ansiColors_Color(capturedRange_RegExpMatch(&m, 1), tmParagraph_ColorId,
123 none_ColorId, &clr, NULL);
123 SDL_SetTextureColorMod(activeText_->cache, clr.r, clr.g, clr.b); 124 SDL_SetTextureColorMod(activeText_->cache, clr.r, clr.g, clr.b);
124 if (args->mode & fillBackground_RunMode) { 125 if (args->mode & fillBackground_RunMode) {
125 SDL_SetRenderDrawColor(activeText_->render, clr.r, clr.g, clr.b, 0); 126 SDL_SetRenderDrawColor(activeText_->render, clr.r, clr.g, clr.b, 0);