diff options
author | Linus Nielsen Feltzing <linus@haxx.se> | 2006-05-06 06:37:23 +0000 |
---|---|---|
committer | Linus Nielsen Feltzing <linus@haxx.se> | 2006-05-06 06:37:23 +0000 |
commit | 33bd2180107848d3ac9af0411cd9d5cd44dbe697 (patch) | |
tree | 3450b4884057073c95165fa5d29fd651e6aeec91 /firmware/drivers/lcd-2bit-horz.c | |
parent | b4efbdcdbb14132e474a74f16ea13f06bd219104 (diff) | |
download | rockbox-33bd2180107848d3ac9af0411cd9d5cd44dbe697.tar.gz rockbox-33bd2180107848d3ac9af0411cd9d5cd44dbe697.zip |
Patch #5182 by Liberman Shachar - Vertical screen scroll bug fix (inverse bar crop in vertical scroll)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9881 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/drivers/lcd-2bit-horz.c')
-rw-r--r-- | firmware/drivers/lcd-2bit-horz.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/firmware/drivers/lcd-2bit-horz.c b/firmware/drivers/lcd-2bit-horz.c index abe608f6b6..14bf952bb2 100644 --- a/firmware/drivers/lcd-2bit-horz.c +++ b/firmware/drivers/lcd-2bit-horz.c | |||
@@ -747,7 +747,7 @@ void lcd_puts_offset(int x, int y, const unsigned char *str, int offset) | |||
747 | void lcd_puts_style_offset(int x, int y, const unsigned char *str, | 747 | void lcd_puts_style_offset(int x, int y, const unsigned char *str, |
748 | int style, int offset) | 748 | int style, int offset) |
749 | { | 749 | { |
750 | int xpos,ypos,w,h; | 750 | int xpos,ypos,w,h,xrect; |
751 | int lastmode = drawmode; | 751 | int lastmode = drawmode; |
752 | 752 | ||
753 | /* make sure scrolling is turned off on the line we are updating */ | 753 | /* make sure scrolling is turned off on the line we are updating */ |
@@ -763,7 +763,8 @@ void lcd_puts_style_offset(int x, int y, const unsigned char *str, | |||
763 | (DRMODE_SOLID|DRMODE_INVERSEVID) : DRMODE_SOLID; | 763 | (DRMODE_SOLID|DRMODE_INVERSEVID) : DRMODE_SOLID; |
764 | lcd_putsxyofs(xpos, ypos, offset, str); | 764 | lcd_putsxyofs(xpos, ypos, offset, str); |
765 | drawmode ^= DRMODE_INVERSEVID; | 765 | drawmode ^= DRMODE_INVERSEVID; |
766 | lcd_fillrect(xpos + w - offset, ypos, LCD_WIDTH - (xpos + w - offset), h); | 766 | xrect = xpos + MAX(w - offset, 0); |
767 | lcd_fillrect(xrect, ypos, LCD_WIDTH - xrect, h); | ||
767 | drawmode = lastmode; | 768 | drawmode = lastmode; |
768 | } | 769 | } |
769 | 770 | ||