Skip to content
Snippets Groups Projects
Commit 65efd6bc authored by schneider's avatar schneider
Browse files

Merge branch 'display_multiline_fix' into 'master'

fix(gfx): Break line before char is printed

See merge request !149
parents d29f8f95 73876f4b
No related branches found
No related tags found
No related merge requests found
......@@ -86,17 +86,25 @@ void gfx_puts(
Color fg,
Color bg
) {
// iterate over the string
while (*str) {
gfx_putchar(font, r, x, y, *str, fg, bg);
str++;
x += font->Width;
if (x >= r->width) {
// if the current position plus the width of the next character
// would bring us outside of the display ...
if ((x + font->Width) > r->width) {
// ... we move down a line before printing the character
x = 0;
y += font->Height;
}
// if the line is outside the display we return
if (y >= r->height)
return;
// now print the character
gfx_putchar(font, r, x, y, *str, fg, bg);
str++;
// move along on the x axis to get the position of the next character
x += font->Width;
}
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment