230 // |
206 // |
231 void CPhoneTwoSingles::HandleConnectedL( TInt aCallId ) |
207 void CPhoneTwoSingles::HandleConnectedL( TInt aCallId ) |
232 { |
208 { |
233 __LOGMETHODSTARTEND( EPhoneUIStates, |
209 __LOGMETHODSTARTEND( EPhoneUIStates, |
234 "CPhoneTwoSingles::HandleConnectedL()"); |
210 "CPhoneTwoSingles::HandleConnectedL()"); |
235 |
211 iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId ); |
236 TPhoneCmdParamCallHeaderData callHeaderParam; |
212 UpdateUiCommands(); |
237 callHeaderParam.SetCallState( EPEStateConnected ); |
|
238 iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, |
|
239 &callHeaderParam ); |
|
240 |
|
241 SetTouchPaneButtons( EPhoneIncallButtons ); |
|
242 } |
213 } |
243 |
214 |
244 // ----------------------------------------------------------- |
215 // ----------------------------------------------------------- |
245 // CPhoneTwoSingles::HandleHeldL |
216 // CPhoneTwoSingles::HandleHeldL |
246 // ----------------------------------------------------------- |
217 // ----------------------------------------------------------- |
247 // |
218 // |
248 void CPhoneTwoSingles::HandleHeldL( TInt aCallId ) |
219 void CPhoneTwoSingles::HandleHeldL( TInt aCallId ) |
249 { |
220 { |
250 __LOGMETHODSTARTEND( EPhoneUIStates, |
221 __LOGMETHODSTARTEND( EPhoneUIStates, |
251 "CPhoneTwoSingles::HandleHeldL()"); |
222 "CPhoneTwoSingles::HandleHeldL()"); |
252 TPhoneCmdParamCallHeaderData callHeaderParam; |
223 iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId ); |
253 callHeaderParam.SetCallState( EPEStateHeld ); |
224 UpdateUiCommands(); |
254 |
|
255 TBuf<KPhoneCallHeaderLabelMaxLength> labelText( KNullDesC ); |
|
256 TInt callLabelId = CPhoneMainResourceResolver::Instance()-> |
|
257 ResolveResourceID( EPhoneCallOnHold ); |
|
258 |
|
259 StringLoader::Load( |
|
260 labelText, |
|
261 callLabelId, |
|
262 CCoeEnv::Static() ); |
|
263 callHeaderParam.SetLabelText( labelText ); |
|
264 |
|
265 iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, |
|
266 &callHeaderParam ); |
|
267 |
|
268 SetTouchPaneButtons( EPhoneIncallButtons ); |
|
269 } |
225 } |
270 |
226 |
271 // ----------------------------------------------------------- |
227 // ----------------------------------------------------------- |
272 // CPhoneTwoSingles::HandleNumberEntryClearedL() |
228 // CPhoneTwoSingles::HandleNumberEntryClearedL() |
273 // ----------------------------------------------------------- |
229 // ----------------------------------------------------------- |
274 // |
230 // |
275 EXPORT_C void CPhoneTwoSingles::HandleNumberEntryClearedL() |
231 EXPORT_C void CPhoneTwoSingles::HandleNumberEntryClearedL() |
276 { |
232 { |
277 __LOGMETHODSTARTEND( EPhoneUIStates, |
233 __LOGMETHODSTARTEND( EPhoneUIStates, |
278 "CPhoneTwoSingles::HandleNumberEntryClearedL()"); |
234 "CPhoneTwoSingles::HandleNumberEntryClearedL()"); |
279 UpdateCbaL( EPhoneCallHandlingNewCallSwapCBA ); |
235 UpdateUiCommands(); |
280 } |
236 } |
281 |
237 |
282 // ----------------------------------------------------------- |
238 // ----------------------------------------------------------- |
283 // CPhoneTwoSingles::HandleConnectedConferenceL |
239 // CPhoneTwoSingles::HandleConnectedConferenceL |
284 // ----------------------------------------------------------- |
240 // ----------------------------------------------------------- |
285 // |
241 // |
286 EXPORT_C void CPhoneTwoSingles::HandleConnectedConferenceL( TInt aCallId ) |
242 EXPORT_C void CPhoneTwoSingles::HandleConnectedConferenceL( TInt aCallId ) |
287 { |
243 { |
288 __LOGMETHODSTARTEND( EPhoneUIStates, |
244 __LOGMETHODSTARTEND( EPhoneUIStates, |
289 "CPhoneTwoSingles::HandleConnectedConferenceL()"); |
245 "CPhoneTwoSingles::HandleConnectedConferenceL()"); |
290 TPhoneCmdParamCallHeaderData callHeaderParam; |
|
291 |
|
292 TInt callLabelId; |
|
293 TBuf<KPhoneCallHeaderLabelMaxLength> conferenceText( KNullDesC ); |
|
294 callLabelId = CPhoneMainResourceResolver::Instance()-> |
|
295 ResolveResourceID( EPhoneCLIConferenceCall ); |
|
296 |
|
297 StringLoader::Load( |
|
298 conferenceText, |
|
299 callLabelId, |
|
300 CCoeEnv::Static() ); |
|
301 callHeaderParam.SetCLIText( conferenceText, TPhoneCmdParamCallHeaderData::ERight ); |
|
302 |
|
303 callHeaderParam.SetCallState(EPEStateConnectedConference); |
|
304 BeginUiUpdateLC(); |
246 BeginUiUpdateLC(); |
305 |
247 iViewCommandHandle->ExecuteCommandL( EPhoneViewCreateConference, aCallId ); |
306 callHeaderParam.SetCiphering( |
248 UpdateUiCommands(); |
307 iStateMachine->PhoneEngineInfo()->IsSecureCall( aCallId ) ); |
|
308 |
|
309 callHeaderParam.SetCipheringIndicatorAllowed( |
|
310 iStateMachine->PhoneEngineInfo()->SecureSpecified() ); |
|
311 |
|
312 // Service identifier must be given so that service specific settings |
|
313 // can be taken into account at phoneuiview. |
|
314 callHeaderParam.SetServiceId( |
|
315 iStateMachine->PhoneEngineInfo()->ServiceId( aCallId ) ); |
|
316 |
|
317 iViewCommandHandle->ExecuteCommandL( EPhoneViewCreateConference, aCallId, |
|
318 &callHeaderParam ); |
|
319 |
|
320 TPhoneCmdParamBoolean holdFlag; |
|
321 holdFlag.SetBoolean( EFalse ); |
|
322 iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag ); |
|
323 |
|
324 SetTouchPaneButtons( EPhoneConferenceButtons ); |
|
325 EndUiUpdate(); |
249 EndUiUpdate(); |
326 |
|
327 UpdateCbaL( EPhoneCallHandlingInCallCBA ); |
|
328 iStateMachine->ChangeState( EPhoneStateConference ); |
250 iStateMachine->ChangeState( EPhoneStateConference ); |
329 } |
251 } |
330 |
252 |
331 // ----------------------------------------------------------- |
253 // ----------------------------------------------------------- |
332 // CPhoneTwoSingles::HandleIncomingL |
254 // CPhoneTwoSingles::HandleIncomingL |
333 // ----------------------------------------------------------- |
255 // ----------------------------------------------------------- |
334 // |
256 // |
335 void CPhoneTwoSingles::HandleIncomingL( TInt aCallId ) |
257 void CPhoneTwoSingles::HandleIncomingL( TInt aCallId ) |
336 { |
258 { |
337 __LOGMETHODSTARTEND( EPhoneUIStates, |
259 __LOGMETHODSTARTEND( EPhoneUIStates, |
338 "CPhoneTwoSingles::HandleIncomingL()"); |
260 "CPhoneTwoSingles::HandleIncomingL()"); |
339 BeginUiUpdateLC(); |
261 DisplayCallHeaderL( aCallId, ECheckIfNEUsedBeforeSettingVisibilityFalse ); |
340 |
|
341 // Get allow waiting call header param value. |
|
342 TPhoneCmdParamBoolean dialerParam; |
|
343 dialerParam.SetBoolean( ETrue ); |
|
344 AllowShowingOfWaitingCallHeaderL( dialerParam ); |
|
345 |
|
346 // Close fast swap window if it's displayed |
|
347 CEikonEnv::Static()->DismissTaskList(); |
|
348 |
|
349 DisplayIncomingCallL( aCallId, dialerParam ); |
|
350 CheckDisableHWKeysAndCallUIL(); |
|
351 SetTouchPaneButtons( EPhoneWaitingCallButtons ); |
|
352 EndUiUpdate(); |
|
353 |
|
354 iCbaManager->SetCbaL( EPhoneCallHandlingIncomingRejectCBA ); |
|
355 iStateMachine->ChangeState( EPhoneStateTwoSinglesAndWaiting ); |
262 iStateMachine->ChangeState( EPhoneStateTwoSinglesAndWaiting ); |
356 } |
263 } |
357 |
264 |
358 // ----------------------------------------------------------- |
|
359 // CPhoneTwoSingles::DisplayIncomingCallL |
|
360 // ----------------------------------------------------------- |
|
361 // |
|
362 void CPhoneTwoSingles::DisplayIncomingCallL( |
|
363 TInt aCallId, |
|
364 const TPhoneCmdParamBoolean aCommandParam ) |
|
365 { |
|
366 __LOGMETHODSTARTEND( EPhoneUIStates, |
|
367 "CPhoneTwoSingles::DisplayIncomingCallL()"); |
|
368 // Cannot delete active note, e.g. New call query, |
|
369 // but show waiting note with or without caller name |
|
370 if ( IsAnyQueryActiveL() || !aCommandParam.Boolean() ) |
|
371 { |
|
372 CallWaitingNoteL( aCallId ); |
|
373 } |
|
374 else |
|
375 { |
|
376 iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs ); |
|
377 } |
|
378 |
|
379 // Indicate that the Phone needs to be sent to the background if |
|
380 // an application other than the top application is in the foreground |
|
381 TPhoneCmdParamBoolean booleanParam; |
|
382 booleanParam.SetBoolean( !TopAppIsDisplayedL() ); |
|
383 iViewCommandHandle->ExecuteCommandL( |
|
384 EPhoneViewSetNeedToSendToBackgroundStatus, |
|
385 &booleanParam ); |
|
386 |
|
387 TPhoneCmdParamInteger uidParam; |
|
388 uidParam.SetInteger( KUidPhoneApplication.iUid ); |
|
389 iViewCommandHandle->ExecuteCommandL( EPhoneViewBringAppToForeground, |
|
390 &uidParam ); |
|
391 iViewCommandHandle->ExecuteCommandL( EPhoneViewSetTopApplication, |
|
392 &uidParam ); |
|
393 |
|
394 CPhoneState::DisplayHeaderForCallComingInL( aCallId, ETrue ); //waiting call |
|
395 } |
|
396 |
|
397 // ----------------------------------------------------------- |
|
398 // CPhoneTwoSingles::UpdateInCallCbaL |
|
399 // ----------------------------------------------------------- |
|
400 // |
|
401 EXPORT_C void CPhoneTwoSingles::UpdateInCallCbaL() |
|
402 { |
|
403 __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneTwoSingles::UpdateInCallCbaL() "); |
|
404 UpdateCbaL( EPhoneCallHandlingNewCallSwapCBA ); |
|
405 } |
|
406 |
|
407 // End of File |
265 // End of File |