--- a/fmradio/fmradio/src/fmradioappui.cpp Wed Mar 31 21:31:32 2010 +0300
+++ b/fmradio/fmradio/src/fmradioappui.cpp Wed Apr 14 15:57:41 2010 +0300
@@ -1493,8 +1493,12 @@
{
case EEventFocusLost:
{
- // being sent to background, so if tuning cancel first then handle event
- CancelSeek();
+ // being sent to background, cancel any seek expect local stations scan
+ if ( iCurrentRadioState == EFMRadioStateBusySeek )
+ {
+ iRadioEngine->CancelScan();
+ HandleStopSeekCallback();
+ }
CAknViewAppUi::HandleWsEventL( aEvent, aDestination );
break;
}
@@ -1646,6 +1650,20 @@
( aControl == iActiveVolumePopupControl ) )
{
TInt volumeControlLevel = iActiveVolumePopupControl->Value();
+
+ if ( iRadioEngine->IsMuteOn() && volumeControlLevel == 1 )
+ {
+ // Volume has been muted and volume is changed from
+ // popup. Restore volume to the previous level.
+ volumeControlLevel = iRadioEngine->GetVolume();
+ volumeControlLevel++;
+ if ( volumeControlLevel > KFMRadioMaxVolumeLevel )
+ {
+ volumeControlLevel = KFMRadioMaxVolumeLevel;
+ }
+ iActiveVolumePopupControl->SetValue( volumeControlLevel );
+ }
+
// Set mute
if ( volumeControlLevel == KFMRadioMinVolumeLevel )
{