summaryrefslogtreecommitdiff
path: root/firmware/drivers/lcd-recorder.c
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/drivers/lcd-recorder.c')
-rw-r--r--firmware/drivers/lcd-recorder.c19
1 files changed, 5 insertions, 14 deletions
diff --git a/firmware/drivers/lcd-recorder.c b/firmware/drivers/lcd-recorder.c
index b7bcd02cec..f69bf21fd5 100644
--- a/firmware/drivers/lcd-recorder.c
+++ b/firmware/drivers/lcd-recorder.c
@@ -950,14 +950,11 @@ void lcd_puts_style_offset(int x, int y, const unsigned char *str,
950 lcd_getstringsize(str, &w, &h); 950 lcd_getstringsize(str, &w, &h);
951 xpos = xmargin + x*w / utf8length(str); 951 xpos = xmargin + x*w / utf8length(str);
952 ypos = ymargin + y*h; 952 ypos = ymargin + y*h;
953 drawmode = (style & STYLE_INVERT) ?
954 (DRMODE_SOLID|DRMODE_INVERSEVID) : DRMODE_SOLID;
953 lcd_putsxyofs(xpos, ypos, offset, str); 955 lcd_putsxyofs(xpos, ypos, offset, str);
954 drawmode = (DRMODE_SOLID|DRMODE_INVERSEVID); 956 drawmode ^= DRMODE_INVERSEVID;
955 lcd_fillrect(xpos + w, ypos, LCD_WIDTH - (xpos + w), h); 957 lcd_fillrect(xpos + w, ypos, LCD_WIDTH - (xpos + w), h);
956 if (style & STYLE_INVERT)
957 {
958 drawmode = DRMODE_COMPLEMENT;
959 lcd_fillrect(xpos, ypos, LCD_WIDTH - xpos, h);
960 }
961 drawmode = lastmode; 958 drawmode = lastmode;
962} 959}
963 960
@@ -1127,15 +1124,9 @@ static void scroll_thread(void)
1127 } 1124 }
1128 1125
1129 lastmode = drawmode; 1126 lastmode = drawmode;
1130 drawmode = (DRMODE_SOLID|DRMODE_INVERSEVID); 1127 drawmode = s->invert ?
1131 lcd_fillrect(xpos, ypos, LCD_WIDTH - xpos, pf->height); 1128 (DRMODE_SOLID|DRMODE_INVERSEVID) : DRMODE_SOLID;
1132 drawmode = DRMODE_SOLID;
1133 lcd_putsxyofs(xpos, ypos, s->offset, s->line); 1129 lcd_putsxyofs(xpos, ypos, s->offset, s->line);
1134 if (s->invert)
1135 {
1136 drawmode = DRMODE_COMPLEMENT;
1137 lcd_fillrect(xpos, ypos, LCD_WIDTH - xpos, pf->height);
1138 }
1139 drawmode = lastmode; 1130 drawmode = lastmode;
1140 lcd_update_rect(xpos, ypos, LCD_WIDTH - xpos, pf->height); 1131 lcd_update_rect(xpos, ypos, LCD_WIDTH - xpos, pf->height);
1141 } 1132 }