summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Levin <al.le@rockbox.org>2011-01-21 17:16:45 +0000
committerAlexander Levin <al.le@rockbox.org>2011-01-21 17:16:45 +0000
commit52c678945063436da28a9801ce4a739ad0473579 (patch)
tree9fd17721a736408fd709f7850c45da975d1b501c
parenta6debb65fa33f3638e3bec99be15e4f551fdc32b (diff)
downloadrockbox-52c678945063436da28a9801ce4a739ad0473579.tar.gz
rockbox-52c678945063436da28a9801ce4a739ad0473579.zip
Add a delay between text scroll rounds when scrolling forward similarly to how it's done when scrolling bidirectionally (FS#11892)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29104 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/drivers/lcd-bitmap-common.c6
-rw-r--r--firmware/drivers/lcd-charcell.c6
2 files changed, 8 insertions, 4 deletions
diff --git a/firmware/drivers/lcd-bitmap-common.c b/firmware/drivers/lcd-bitmap-common.c
index 8e3b52c246..fa18f9fa1f 100644
--- a/firmware/drivers/lcd-bitmap-common.c
+++ b/firmware/drivers/lcd-bitmap-common.c
@@ -470,8 +470,10 @@ void LCDFN(scroll_fn)(void)
470 } 470 }
471 else { 471 else {
472 /* scroll forward the whole time */ 472 /* scroll forward the whole time */
473 if (s->offset >= s->width) 473 if (s->offset >= s->width) {
474 s->offset %= s->width; 474 s->offset = 0;
475 s->start_tick = current_tick + LCDFN(scroll_info).delay * 2;
476 }
475 } 477 }
476 LCDFN(putsxyofs_style)(xpos, ypos, s->line, s->style, s->width, 478 LCDFN(putsxyofs_style)(xpos, ypos, s->line, s->style, s->width,
477 pf->height, s->offset); 479 pf->height, s->offset);
diff --git a/firmware/drivers/lcd-charcell.c b/firmware/drivers/lcd-charcell.c
index aa12ef16c0..e5b52d48a9 100644
--- a/firmware/drivers/lcd-charcell.c
+++ b/firmware/drivers/lcd-charcell.c
@@ -605,8 +605,10 @@ void lcd_scroll_fn(void)
605 } 605 }
606 else /* scroll forward the whole time */ 606 else /* scroll forward the whole time */
607 { 607 {
608 if (s->offset >= s->len) 608 if (s->offset >= s->len) {
609 s->offset -= s->len; 609 s->offset = 0;
610 s->start_tick = current_tick + lcd_scroll_info.delay * 2;
611 }
610 } 612 }
611 613
612 lcd_putsxyofs(xpos, ypos, s->offset, s->line); 614 lcd_putsxyofs(xpos, ypos, s->offset, s->line);