diff options
Diffstat (limited to 'firmware/drivers/lcd-h100-remote.c')
-rw-r--r-- | firmware/drivers/lcd-h100-remote.c | 21 |
1 files changed, 6 insertions, 15 deletions
diff --git a/firmware/drivers/lcd-h100-remote.c b/firmware/drivers/lcd-h100-remote.c index 3be907a574..5d6e0441a2 100644 --- a/firmware/drivers/lcd-h100-remote.c +++ b/firmware/drivers/lcd-h100-remote.c | |||
@@ -1167,14 +1167,11 @@ void lcd_remote_puts_style_offset(int x, int y, const unsigned char *str, int st | |||
1167 | lcd_remote_getstringsize(str, &w, &h); | 1167 | lcd_remote_getstringsize(str, &w, &h); |
1168 | xpos = xmargin + x*w / utf8length((char *)str); | 1168 | xpos = xmargin + x*w / utf8length((char *)str); |
1169 | ypos = ymargin + y*h; | 1169 | ypos = ymargin + y*h; |
1170 | drawmode = (style & STYLE_INVERT) ? | ||
1171 | (DRMODE_SOLID|DRMODE_INVERSEVID) : DRMODE_SOLID; | ||
1170 | lcd_remote_putsxyofs(xpos, ypos, offset, str); | 1172 | lcd_remote_putsxyofs(xpos, ypos, offset, str); |
1171 | drawmode = (DRMODE_SOLID|DRMODE_INVERSEVID); | 1173 | drawmode ^= DRMODE_INVERSEVID; |
1172 | lcd_remote_fillrect(xpos + w, ypos, LCD_REMOTE_WIDTH - (xpos + w), h); | 1174 | lcd_remote_fillrect(xpos + w, ypos, LCD_REMOTE_WIDTH - (xpos + w), h); |
1173 | if (style & STYLE_INVERT) | ||
1174 | { | ||
1175 | drawmode = DRMODE_COMPLEMENT; | ||
1176 | lcd_remote_fillrect(xpos, ypos, LCD_REMOTE_WIDTH - xpos, h); | ||
1177 | } | ||
1178 | drawmode = lastmode; | 1175 | drawmode = lastmode; |
1179 | } | 1176 | } |
1180 | 1177 | ||
@@ -1354,15 +1351,9 @@ static void scroll_thread(void) | |||
1354 | } | 1351 | } |
1355 | 1352 | ||
1356 | lastmode = drawmode; | 1353 | lastmode = drawmode; |
1357 | drawmode = (DRMODE_SOLID|DRMODE_INVERSEVID); | 1354 | drawmode = s->invert ? |
1358 | lcd_remote_fillrect(xpos, ypos, LCD_REMOTE_WIDTH - xpos, pf->height); | 1355 | (DRMODE_SOLID|DRMODE_INVERSEVID) : DRMODE_SOLID; |
1359 | drawmode = DRMODE_SOLID; | 1356 | lcd_remote_putsxyofs(xpos, ypos, s->offset, s->line); |
1360 | lcd_remote_putsxyofs(xpos, ypos, s->offset, (unsigned char *)s->line); | ||
1361 | if (s->invert) | ||
1362 | { | ||
1363 | drawmode = DRMODE_COMPLEMENT; | ||
1364 | lcd_remote_fillrect(xpos, ypos, LCD_REMOTE_WIDTH - xpos, pf->height); | ||
1365 | } | ||
1366 | drawmode = lastmode; | 1357 | drawmode = lastmode; |
1367 | lcd_remote_update_rect(xpos, ypos, LCD_REMOTE_WIDTH - xpos, pf->height); | 1358 | lcd_remote_update_rect(xpos, ypos, LCD_REMOTE_WIDTH - xpos, pf->height); |
1368 | } | 1359 | } |