279 __LOGMETHODSTARTEND( PhoneUIVoIPExtension, |
270 __LOGMETHODSTARTEND( PhoneUIVoIPExtension, |
280 "CPhoneVccHandler::RemoveHandoverNoteL()"); |
271 "CPhoneVccHandler::RemoveHandoverNoteL()"); |
281 |
272 |
282 if ( iVccHoReady && !iHandoverNoteTimer ) |
273 if ( iVccHoReady && !iHandoverNoteTimer ) |
283 { |
274 { |
284 iViewCommandHandle.ExecuteCommandL( EPhoneViewRemoveGlobalNote ); |
275 iViewCommandHandle.ExecuteCommandL( EPhoneViewRemoveGlobalNote ); |
285 if ( iHOFailure ) |
|
286 { |
|
287 iHOFailure = EFalse; |
|
288 CPhoneState* phoneState = |
|
289 static_cast< CPhoneState* >( iStateMachine.State() ); |
|
290 phoneState->SendGlobalInfoNoteL( EPhoneVoIPHandoverFail ); |
|
291 |
|
292 } |
|
293 } |
276 } |
294 } |
277 } |
295 |
278 |
296 // ----------------------------------------------------------- |
279 // ----------------------------------------------------------- |
297 // CPhoneVccHandler::HandoverInProgressNoteL |
280 // CPhoneVccHandler::HandoverInProgressNoteL |
298 // ----------------------------------------------------------- |
281 // ----------------------------------------------------------- |
299 // |
282 // |
300 void CPhoneVccHandler::HandoverInProgressNoteL( TInt aCommand ) |
283 void CPhoneVccHandler::HandoverInProgressNoteL( TInt aCommand ) |
301 { |
284 { |
302 __LOGMETHODSTARTEND( PhoneUIVoIPExtension, |
285 TPhoneCmdParamGlobalNote globalNoteParam; |
303 "CPhoneVccHandler::HandoverInProgressNoteL()"); |
|
304 |
|
305 TPhoneCmdParamGlobalNote globalNoteParam; |
|
306 |
286 |
307 // Check notification tone user setting |
287 // Check notification tone user setting |
308 TInt tone = GetHoNotifToneModeL(); |
288 TInt tone = GetHoNotifToneModeL(); |
309 |
289 |
310 __PHONELOG1( EBasic, EPhoneControl, |
290 // if ( tone == 1 ) |
311 "CPhoneVccHandler::HandoverInProgressNoteL - tone: %d", tone ); |
291 // { |
312 |
292 // globalNoteParam.SetTone( EAvkonSIDConfirmationTone ); |
313 if ( tone == 1 ) |
293 // } |
314 { |
294 // else |
315 globalNoteParam.SetTone( EAvkonSIDDefaultSound ); |
295 // { |
316 } |
296 // globalNoteParam.SetTone( EAvkonSIDNoSound ); |
317 else |
297 // } |
318 { |
298 |
319 globalNoteParam.SetTone( EAvkonSIDNoSound ); |
299 globalNoteParam.SetType( EPhoneNotificationDialog ); |
320 } |
|
321 |
|
322 globalNoteParam.SetType( EAknGlobalWaitNote ); |
|
323 globalNoteParam.SetSoftkeys( R_AVKON_SOFTKEYS_EMPTY ); |
300 globalNoteParam.SetSoftkeys( R_AVKON_SOFTKEYS_EMPTY ); |
324 globalNoteParam.SetTextResourceId( |
301 globalNoteParam.SetTextResourceId( |
325 CPhoneMainResourceResolver::Instance()-> |
302 CPhoneMainResourceResolver::Instance()-> |
326 ResolveResourceID( aCommand ) ); |
303 ResolveResourceID( aCommand ) ); |
327 |
304 |
335 // CPhoneVccHandler::VccPropertyChangedL |
312 // CPhoneVccHandler::VccPropertyChangedL |
336 // Gets called when PS key is changed |
313 // Gets called when PS key is changed |
337 // ----------------------------------------------------------------------------- |
314 // ----------------------------------------------------------------------------- |
338 // |
315 // |
339 void CPhoneVccHandler::VccPropertyChangedL( const TUint aKeyId, |
316 void CPhoneVccHandler::VccPropertyChangedL( const TUint aKeyId, |
340 const TInt aValue ) |
317 const TInt aValue ) |
341 { |
318 { |
342 __LOGMETHODSTARTEND( PhoneUIVoIPExtension, |
319 __LOGMETHODSTARTEND( PhoneUIVoIPExtension, |
343 "CPhoneVccHandler::VccPropertyChangedL() "); |
320 "CPhoneVccHandler::VccPropertyChangedL() "); |
344 |
321 |
345 __PHONELOG1( EBasic, EPhoneControl, |
322 __PHONELOG1( EBasic, EPhoneControl, |
346 "CPhoneVccHandler::VccPropertyChangedL - key: %d", aValue ); |
323 "CPhoneVccHandler::VccPropertyChangedL - key: %d", aValue ); |
347 |
324 |
348 if( aKeyId == KVccPropKeyHoRequest ) |
325 |
|
326 if( aKeyId == KVccPropKeyHoStatus ) |
349 { |
327 { |
350 switch( aValue ) |
328 switch( aValue ) |
351 { |
329 { |
352 case EVccAutomaticStartPsToCsHoRequest: |
330 case EVccCsToPsHoFailure: |
353 { |
331 case EVccPsToCsHoFailure: |
354 __PHONELOG( EBasic, PhoneUIVoIPExtension, |
332 { |
355 "CPhoneVccHandler::VccPropertyChangedL VccPropertyChangedL -- EVccAutomaticStartPsToCsHoRequest" ); |
333 __PHONELOG( EBasic, PhoneUIVoIPExtension, |
356 // Do not show if already started since the wait note is |
|
357 // already visible |
|
358 if ( iVccHoReady && !iHandoverNoteTimer ) |
|
359 { |
|
360 iVccHoReady = EFalse; |
|
361 HandoverInProgressNoteL( EPhoneVoIPWaitHandoverFromWlan ); |
|
362 } |
|
363 } |
|
364 break; |
|
365 case EVccAutomaticStartCsToPsHoRequest: |
|
366 { |
|
367 __PHONELOG( EBasic, PhoneUIVoIPExtension, |
|
368 "CPhoneVccHandler::VccPropertyChangedL VccPropertyChangedL -- EVccAutomaticStartCsToPsHoRequest" ); |
|
369 // Do not show if already started since the wait note is |
|
370 // already visible |
|
371 if ( iVccHoReady && !iHandoverNoteTimer ) |
|
372 { |
|
373 iVccHoReady = EFalse; |
|
374 HandoverInProgressNoteL( EPhoneVoIPWaitHandoverFromGsm ); |
|
375 } |
|
376 } |
|
377 break; |
|
378 default: |
|
379 // none |
|
380 break; |
|
381 } |
|
382 } |
|
383 |
|
384 if( aKeyId == KVccPropKeyHoStatus ) |
|
385 { |
|
386 switch( aValue ) |
|
387 { |
|
388 case EVccCsToPsHoFailure: |
|
389 case EVccPsToCsHoFailure: |
|
390 { |
|
391 __PHONELOG( EBasic, PhoneUIVoIPExtension, |
|
392 "CPhoneVccHandler::VccPropertyChangedL VccPropertyChangedL -- HO fail" ); |
334 "CPhoneVccHandler::VccPropertyChangedL VccPropertyChangedL -- HO fail" ); |
393 // Remove handover note if handover is in progress |
335 // Remove handover note if handover is in progress |
394 if( !iVccHoReady ) |
336 if( !iVccHoReady ) |
395 { |
337 { |
396 iVccHoReady = ETrue; |
338 iVccHoReady = ETrue; |
397 iHOFailure = ETrue; |
339 CPhoneState* phoneState = |
398 if ( !iHandoverNoteTimer ) |
340 static_cast< CPhoneState* >( iStateMachine.State() ); |
399 { |
341 CancelHandoverNoteTimerL(); |
400 RemoveHandoverNoteL(); |
342 phoneState->SendGlobalInfoNoteL( EPhoneVoIPHandoverFail ); |
401 } |
343 } |
402 } |
|
403 } |
344 } |
404 break; |
345 break; |
405 case EVccCsToPsHoSuccessful: |
346 case EVccCsToPsHoSuccessful: |
406 case EVccPsToCsHoSuccessful: |
347 case EVccPsToCsHoSuccessful: |
407 { |
348 { |
408 __PHONELOG( EBasic, PhoneUIVoIPExtension, |
349 __PHONELOG( EBasic, PhoneUIVoIPExtension, |
409 "CPhoneVccHandler::VccPropertyChangedL VccPropertyChangedL -- HO Success" ); |
350 "CPhoneVccHandler::VccPropertyChangedL VccPropertyChangedL -- HO Success" ); |
410 iVccHoReady = ETrue; |
351 iVccHoReady = ETrue; |
411 RemoveHandoverNoteL(); |
352 RemoveHandoverNoteL(); |
412 } |
353 } |
413 break; |
354 break; |
414 case EVccCsToPsHoStarted: |
355 case EVccCsToPsHoStarted: |
415 { |
356 { |
416 __PHONELOG( EBasic, PhoneUIVoIPExtension, |
357 __PHONELOG( EBasic, PhoneUIVoIPExtension, |
417 "CPhoneVccHandler::VccPropertyChangedL VccPropertyChangedL -- CsToPsHoStarted" ); |
358 "CPhoneVccHandler::VccPropertyChangedL VccPropertyChangedL -- CsToPsHoStarted" ); |
418 // Do not show if already started since the wait note is |
359 // Do not show if manually started since the wait note is |
419 // already visible |
360 // already visible |
420 if ( iVccHoReady && !iHandoverNoteTimer ) |
361 if ( iVccHoReady ) |
421 { |
362 { |
422 iVccHoReady = EFalse; |
363 iVccHoReady = EFalse; |
423 HandoverInProgressNoteL( EPhoneVoIPWaitHandoverFromGsm ); |
364 HandoverInProgressNoteL( EPhoneVoIPWaitHandoverFromGsm ); |
424 } |
365 } |
425 } |
366 } |
426 break; |
367 break; |
427 case EVccPsToCsHoStarted: |
368 case EVccPsToCsHoStarted: |
428 { |
369 { |
429 __PHONELOG( EBasic, PhoneUIVoIPExtension, |
370 __PHONELOG( EBasic, PhoneUIVoIPExtension, |
430 "CPhoneVccHandler::VccPropertyChangedL VccPropertyChangedL -- PsToCsHoStarted" ); |
371 "CPhoneVccHandler::VccPropertyChangedL VccPropertyChangedL -- PsToCsHoStarted" ); |
431 // Do not show if already started since the wait note is |
372 // Do not show if manually started since the wait note is |
432 // already visible |
373 // already visible |
433 if ( iVccHoReady && !iHandoverNoteTimer ) |
374 if ( iVccHoReady ) |
434 { |
375 { |
435 iVccHoReady = EFalse; |
376 iVccHoReady = EFalse; |
436 HandoverInProgressNoteL( EPhoneVoIPWaitHandoverFromWlan); |
377 HandoverInProgressNoteL( EPhoneVoIPWaitHandoverFromWlan); |
437 } |
378 } |
438 } |
379 } |
519 iVccHoAllowedToWlan = ETrue; |
452 iVccHoAllowedToWlan = ETrue; |
520 iVccUnavailable = EFalse; |
453 iVccUnavailable = EFalse; |
521 break; |
454 break; |
522 } |
455 } |
523 |
456 |
524 default: |
457 default: |
525 |
458 |
526 __PHONELOG( EBasic, PhoneUIVoIPExtension, |
459 __PHONELOG( EBasic, PhoneUIVoIPExtension, |
527 "CPhoneVccHandler::VccPropertyChangedL VccPropertyChangedL -- default" ); |
460 "CPhoneVccHandler::VccPropertyChangedL VccPropertyChangedL -- default" ); |
528 break; |
461 break; |
529 } |
462 } |
530 } |
463 } |
531 } |
464 } |
532 // --------------------------------------------------------------------------- |
465 // --------------------------------------------------------------------------- |
533 // Gets HO notification tone setting value |
466 // Gets HO notification tone setting value |
534 // --------------------------------------------------------------------------- |
467 // --------------------------------------------------------------------------- |
535 // |
468 // |
536 TInt CPhoneVccHandler::GetHoNotifToneModeL() |
469 TInt CPhoneVccHandler::GetHoNotifToneModeL() |
537 { |
470 { |
538 __LOGMETHODSTARTEND( PhoneUIVoIPExtension, |
|
539 "CPhoneVccHandler::GetHoNotifToneModeL() "); |
|
540 |
|
541 // Find out VCC service id |
471 // Find out VCC service id |
542 CSPProperty* property = CSPProperty::NewLC(); |
472 CSPProperty* property = CSPProperty::NewLC(); |
543 |
473 |
544 CSPSettings* settings = CSPSettings::NewLC(); |
474 CSPSettings* settings = CSPSettings::NewLC(); |
545 |
475 |