2579 { |
2579 { |
2580 SetDefaultViewL( *view ); |
2580 SetDefaultViewL( *view ); |
2581 } |
2581 } |
2582 else |
2582 else |
2583 { |
2583 { |
2584 TFMRadioRegionSetting region = iRadioEngine->GetRegionL(); |
2584 TFMRadioRegionSetting region = iRadioEngine->GetRegionL(); |
|
2585 TBool mute = EFalse; |
2585 |
2586 |
2586 if ( iOfflineQueryDialogActivated || |
2587 if ( iOfflineQueryDialogActivated || |
2587 iConnectHeadsetQuery || |
2588 iConnectHeadsetQuery || |
2588 region == EFMRadioRegionNone ) |
2589 region == EFMRadioRegionNone ) |
2589 { |
2590 { |
2590 iPendingViewId = view->Id(); |
2591 iPendingViewId = view->Id(); |
2591 } |
2592 } |
2592 else |
2593 else |
2593 { |
2594 { |
2594 iChannelListView->CancelMoveL(); |
2595 iChannelListView->CancelMoveL(); |
|
2596 if ( iCurrentRadioState == EFMRadioStateBusyScanLocalStations ) |
|
2597 { |
|
2598 mute = ETrue; |
|
2599 } |
2595 ActivateLocalViewL( view->Id() ); |
2600 ActivateLocalViewL( view->Id() ); |
2596 } |
2601 } |
2597 TApaTask task( iCoeEnv->WsSession() ); |
2602 TApaTask task( iCoeEnv->WsSession() ); |
2598 task.SetWgId( iCoeEnv->RootWin().Identifier() ); |
2603 task.SetWgId( iCoeEnv->RootWin().Identifier() ); |
2599 task.BringToForeground(); |
2604 task.BringToForeground(); |
|
2605 if ( mute ) |
|
2606 { |
|
2607 // unmute if the scanning was ongoing |
|
2608 iRadioEngine->SetMuteOn( EFalse ); |
|
2609 // just to make sure the mute status is up to date |
|
2610 HandleVolumeChangedCallback(); |
|
2611 } |
2600 } |
2612 } |
2601 } |
2613 } |
2602 } |
2614 } |
2603 } |
2615 } |
2604 else |
2616 else |