diff options
author | Peter D'Hoye <peter.dhoye@gmail.com> | 2008-06-29 08:05:00 +0000 |
---|---|---|
committer | Peter D'Hoye <peter.dhoye@gmail.com> | 2008-06-29 08:05:00 +0000 |
commit | 05cb42164b64f482bfdbcdb68f171bc10f8f5df6 (patch) | |
tree | 32bfdaa2d9d9551a20045dc982feef0388123244 /apps/recorder | |
parent | 1ed2e514da489527606aafe71ca03258fd6bde06 (diff) | |
download | rockbox-05cb42164b64f482bfdbcdb68f171bc10f8f5df6.tar.gz rockbox-05cb42164b64f482bfdbcdb68f171bc10f8f5df6.zip |
Fix FS #9128: invalidate the peakmeter scales when switching between playback and recording. This causes them to be recalculated so they show up correctly when playback and recording use different viewport sizes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17869 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/recorder')
-rw-r--r-- | apps/recorder/peakmeter.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/apps/recorder/peakmeter.c b/apps/recorder/peakmeter.c index be7fa38284..29be704f0c 100644 --- a/apps/recorder/peakmeter.c +++ b/apps/recorder/peakmeter.c | |||
@@ -535,6 +535,7 @@ void pm_reset_clipcount(void) | |||
535 | */ | 535 | */ |
536 | void peak_meter_playback(bool playback) | 536 | void peak_meter_playback(bool playback) |
537 | { | 537 | { |
538 | int i; | ||
538 | #ifdef SIMULATOR | 539 | #ifdef SIMULATOR |
539 | (void)playback; | 540 | (void)playback; |
540 | #elif CONFIG_CODEC == SWCODEC | 541 | #elif CONFIG_CODEC == SWCODEC |
@@ -548,6 +549,11 @@ void peak_meter_playback(bool playback) | |||
548 | pm_src_right = MAS_REG_QPEAK_R; | 549 | pm_src_right = MAS_REG_QPEAK_R; |
549 | } | 550 | } |
550 | #endif | 551 | #endif |
552 | /* reset the scales just in case recording and playback | ||
553 | use different viewport sizes. Normally we should be checking viewport | ||
554 | sizes every time but this will do for now */ | ||
555 | FOR_NB_SCREENS(i) | ||
556 | scales[i].db_scale_valid = false; | ||
551 | } | 557 | } |
552 | 558 | ||
553 | #ifdef HAVE_RECORDING | 559 | #ifdef HAVE_RECORDING |
@@ -1075,7 +1081,7 @@ static void peak_meter_draw(struct screen *display, struct meter_scales *scales, | |||
1075 | display->drawpixel(x + scales->db_scale_lcd_coord[i], | 1081 | display->drawpixel(x + scales->db_scale_lcd_coord[i], |
1076 | y + height / 2 - 1); | 1082 | y + height / 2 - 1); |
1077 | } | 1083 | } |
1078 | 1084 | ||
1079 | #ifdef HAVE_RECORDING | 1085 | #ifdef HAVE_RECORDING |
1080 | 1086 | ||
1081 | #ifdef HAVE_BACKLIGHT | 1087 | #ifdef HAVE_BACKLIGHT |