summaryrefslogtreecommitdiffstats
path: root/apps/recorder/peakmeter.c
diff options
context:
space:
mode:
authorPeter D'Hoye <peter.dhoye@gmail.com>2008-06-29 08:05:00 +0000
committerPeter D'Hoye <peter.dhoye@gmail.com>2008-06-29 08:05:00 +0000
commit05cb42164b64f482bfdbcdb68f171bc10f8f5df6 (patch)
tree32bfdaa2d9d9551a20045dc982feef0388123244 /apps/recorder/peakmeter.c
parent1ed2e514da489527606aafe71ca03258fd6bde06 (diff)
downloadrockbox-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/peakmeter.c')
-rw-r--r--apps/recorder/peakmeter.c8
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)
*/
void peak_meter_playback(bool playback)
{
+ int i;
#ifdef SIMULATOR
(void)playback;
#elif CONFIG_CODEC == SWCODEC
@@ -548,6 +549,11 @@ void peak_meter_playback(bool playback)
pm_src_right = MAS_REG_QPEAK_R;
}
#endif
+ /* reset the scales just in case recording and playback
+ use different viewport sizes. Normally we should be checking viewport
+ sizes every time but this will do for now */
+ FOR_NB_SCREENS(i)
+ scales[i].db_scale_valid = false;
}
#ifdef HAVE_RECORDING
@@ -1075,7 +1081,7 @@ static void peak_meter_draw(struct screen *display, struct meter_scales *scales,
display->drawpixel(x + scales->db_scale_lcd_coord[i],
y + height / 2 - 1);
}
-
+
#ifdef HAVE_RECORDING
#ifdef HAVE_BACKLIGHT