100 __LOGMETHODSTARTEND( EPhoneUIStates, |
100 __LOGMETHODSTARTEND( EPhoneUIStates, |
101 "CPhoneSingleAndAlerting::HandlePhoneEngineMessageL()"); |
101 "CPhoneSingleAndAlerting::HandlePhoneEngineMessageL()"); |
102 switch ( aMessage ) |
102 switch ( aMessage ) |
103 { |
103 { |
104 case MEngineMonitor::EPEMessageConnected: |
104 case MEngineMonitor::EPEMessageConnected: |
|
105 { |
105 HandleConnectedL( aCallId ); |
106 HandleConnectedL( aCallId ); |
106 break; |
107 break; |
107 |
108 } |
108 case MEngineMonitor::EPEMessageIdle: |
109 case MEngineMonitor::EPEMessageIdle: |
|
110 { |
109 HandleIdleL( aCallId ); |
111 HandleIdleL( aCallId ); |
110 break; |
112 } |
111 |
113 break; |
|
114 |
112 default: |
115 default: |
|
116 { |
113 CPhoneAlerting::HandlePhoneEngineMessageL( aMessage, aCallId ); |
117 CPhoneAlerting::HandlePhoneEngineMessageL( aMessage, aCallId ); |
|
118 } |
114 break; |
119 break; |
115 } |
120 } |
116 } |
121 } |
117 |
122 |
118 // -------------------------------------------------------------- |
123 // -------------------------------------------------------------- |
185 callStateData.SetCallState( EPEStateConnecting ); |
190 callStateData.SetCallState( EPEStateConnecting ); |
186 iViewCommandHandle->HandleCommandL( |
191 iViewCommandHandle->HandleCommandL( |
187 EPhoneViewGetCallIdByState, &callStateData ); |
192 EPhoneViewGetCallIdByState, &callStateData ); |
188 |
193 |
189 if( callStateData.CallId() == aCallId ) |
194 if( callStateData.CallId() == aCallId ) |
190 { |
195 { |
191 // Keep Phone in the foreground |
196 // Close menu bar, if it is displayed |
192 TPhoneCmdParamBoolean booleanParam; |
197 iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarClose ); |
193 booleanParam.SetBoolean( EFalse ); |
|
194 iViewCommandHandle->ExecuteCommandL( |
|
195 EPhoneViewSetNeedToSendToBackgroundStatus, &booleanParam ); |
|
196 |
198 |
197 CPhoneState::BeginUiUpdateLC(); |
199 CPhoneState::BeginUiUpdateLC(); |
198 |
200 |
199 // Show bubble |
201 // Show bubble |
200 TPhoneCmdParamCallHeaderData callHeaderParam; |
202 TPhoneCmdParamCallHeaderData callHeaderParam; |
201 callHeaderParam.SetCallState( EPEStateConnected ); |
203 callHeaderParam.SetCallState( EPEStateConnected ); |
202 iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, |
204 iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, |
203 &callHeaderParam ); |
205 &callHeaderParam ); |
204 |
206 |
205 CPhoneState::SetTouchPaneButtons( EPhoneTwoSinglesButtons ); |
207 SetTouchPaneButtons( EPhoneTwoSinglesButtons ); |
206 CPhoneState::EndUiUpdate(); |
208 EndUiUpdate(); |
207 |
209 |
208 // Set Hold flag to view |
210 // Set Hold flag to view |
209 TPhoneCmdParamBoolean holdFlag; |
211 TPhoneCmdParamBoolean holdFlag; |
210 holdFlag.SetBoolean( EFalse ); |
212 holdFlag.SetBoolean( EFalse ); |
211 iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag ); |
213 iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag ); |
212 |
214 |
213 |
215 |
214 // Set Two singles softkeys |
216 // Set Two singles softkeys |
215 UpdateCbaL( EPhoneCallHandlingNewCallSwapCBA ); |
217 UpdateCbaL( EPhoneCallHandlingNewCallSwapCBA ); |
216 |
218 |
217 // Go to two singles state |
219 // Go to two singles state |
218 iStateMachine->ChangeState( EPhoneStateTwoSingles ); |
220 iStateMachine->ChangeState( EPhoneStateTwoSingles ); |
219 } |
221 } |
220 else |
222 else |
242 BeginUiUpdateLC(); |
244 BeginUiUpdateLC(); |
243 |
245 |
244 // Remove call |
246 // Remove call |
245 iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId ); |
247 iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId ); |
246 |
248 |
|
249 // Close menu bar, if it is displayed |
|
250 iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarClose ); |
|
251 |
247 if ( !TopAppIsDisplayedL() ) |
252 if ( !TopAppIsDisplayedL() ) |
248 { |
253 { |
249 // Continue displaying current app but set up the |
254 // Continue displaying current app but set up the |
250 // idle screen in the background |
255 // idle screen in the background |
251 SetupIdleScreenInBackgroundL(); |
256 SetupIdleScreenInBackgroundL(); |
275 |
280 |
276 EndUiUpdate(); |
281 EndUiUpdate(); |
277 } |
282 } |
278 |
283 |
279 // ----------------------------------------------------------- |
284 // ----------------------------------------------------------- |
|
285 // CPhoneSingleAndAlerting::OpenMenuBarL |
|
286 // ----------------------------------------------------------- |
|
287 // |
|
288 void CPhoneSingleAndAlerting::OpenMenuBarL() |
|
289 { |
|
290 __LOGMETHODSTARTEND( EPhoneUIStates, |
|
291 "CPhoneSingleAndAlerting::OpenMenuBarL()"); |
|
292 TInt resourceId; |
|
293 |
|
294 if ( IsNumberEntryVisibleL() ) |
|
295 { |
|
296 resourceId = EPhoneAlertingAndHeldCallMenuBarWithNumberEntry; |
|
297 } |
|
298 else |
|
299 { |
|
300 resourceId = EPhoneAlertingAndHeldCallMenuBar; |
|
301 } |
|
302 |
|
303 TPhoneCmdParamInteger integerParam; |
|
304 integerParam.SetInteger( |
|
305 CPhoneMainResourceResolver::Instance()-> |
|
306 ResolveResourceID( resourceId ) ); |
|
307 iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarOpen, |
|
308 &integerParam ); |
|
309 } |
|
310 |
|
311 // ----------------------------------------------------------- |
280 // CPhoneSingleAndAlerting::UpdateInCallCbaL |
312 // CPhoneSingleAndAlerting::UpdateInCallCbaL |
281 // ----------------------------------------------------------- |
313 // ----------------------------------------------------------- |
282 // |
314 // |
283 void CPhoneSingleAndAlerting::UpdateInCallCbaL() |
315 void CPhoneSingleAndAlerting::UpdateInCallCbaL() |
284 { |
316 { |
285 __LOGMETHODSTARTEND(EPhoneControl, "CPhoneSingleAndAlerting::UpdateInCallCbaL() "); |
317 __LOGMETHODSTARTEND(EPhoneControl, "CPhoneSingleAndAlerting::UpdateInCallCbaL() "); |
286 UpdateCbaL( EPhoneCallHandlingInCallCBA ); |
318 UpdateCbaL( EPhoneCallHandlingInCallCBA ); |
287 } |
319 } |
288 |
320 |
289 |
321 |
290 // End of File |
322 // End of File |