Revision: 201007 RCL_3
authorDremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Fri, 12 Mar 2010 15:42:40 +0200
branchRCL_3
changeset 14 24062c24fe38
parent 9 8871b09be73b
child 15 2a26698d78ba
Revision: 201007 Kit: 201008
group/bld.inf
phone_plat/phone_application_commands_api/inc/phoneappcommands.hrh
phoneapp/phoneui/group/commonphoneapp_icons_scalable.mk
phoneapp/phoneui/group/iconlist.txt
phoneapp/phoneui/srcdata/callhandlingui.rss
phoneapp/phoneuicontrol/bwins/phoneuicontrolu.def
phoneapp/phoneuicontrol/eabi/phoneuicontrolu.def
phoneapp/phoneuicontrol/inc/cphonestate.h
phoneapp/phoneuicontrol/inc/cphonestateincall.h
phoneapp/phoneuicontrol/inc/cphonestatestartup.h
phoneapp/phoneuicontrol/src/cphonebtaadisconnecthandler.cpp
phoneapp/phoneuicontrol/src/cphonecbamanager.cpp
phoneapp/phoneuicontrol/src/cphonestate.cpp
phoneapp/phoneuicontrol/src/cphonestatecallsetup.cpp
phoneapp/phoneuicontrol/src/cphonestateidle.cpp
phoneapp/phoneuicontrol/src/cphonestateincall.cpp
phoneapp/phoneuicontrol/src/cphonestateincoming.cpp
phoneapp/phoneuicontrol/src/cphonestatestartup.cpp
phoneapp/phoneuicontrol/src/cphonesystemeventhandler.cpp
phoneapp/phoneuistates/bwins/phoneuistatesu.def
phoneapp/phoneuistates/eabi/phoneuistatesu.def
phoneapp/phoneuistates/group/phoneuistates.mmp
phoneapp/phoneuistates/inc/cphonecallsetupandwaiting.h
phoneapp/phoneuistates/inc/cphoneconferenceandwaitingandcallsetup.h
phoneapp/phoneuistates/inc/cphonesingleandcallsetupandwaiting.h
phoneapp/phoneuistates/inc/cphonestartupsimlockui.h
phoneapp/phoneuistates/inc/cphonestatemachinegsm.h
phoneapp/phoneuistates/src/cphonealerting.cpp
phoneapp/phoneuistates/src/cphonecallsetupandwaiting.cpp
phoneapp/phoneuistates/src/cphoneconference.cpp
phoneapp/phoneuistates/src/cphoneconferenceandcallsetup.cpp
phoneapp/phoneuistates/src/cphoneconferenceandsingleandwaiting.cpp
phoneapp/phoneuistates/src/cphoneconferenceandwaiting.cpp
phoneapp/phoneuistates/src/cphoneconferenceandwaitingandcallsetup.cpp
phoneapp/phoneuistates/src/cphoneemergency.cpp
phoneapp/phoneuistates/src/cphoneincoming.cpp
phoneapp/phoneuistates/src/cphonesingleandalerting.cpp
phoneapp/phoneuistates/src/cphonesingleandcallsetupandwaiting.cpp
phoneapp/phoneuistates/src/cphonesingleandwaiting.cpp
phoneapp/phoneuistates/src/cphonesinglecall.cpp
phoneapp/phoneuistates/src/cphonestartupsimlockui.cpp
phoneapp/phoneuistates/src/cphonestatemachinegsm.cpp
phoneapp/phoneuistates/src/cphonetwosingles.cpp
phoneapp/phoneuistates/src/cphonetwosinglesandwaiting.cpp
phoneapp/phoneuiutils/inc/phoneconstants.h
phoneapp/phoneuiutils/inc/phoneloggerviewcommands.h
phoneapp/phoneuiutils/inc/phonerssbase.h
phoneapp/phoneuiutils/src/cphoneresourceresolverbase.cpp
phoneapp/phoneuiutils/src/phoneloggerviewcommands.cpp
phoneapp/phoneuiutils/src/phoneloggerviewcommands.st
phoneapp/phoneuiview/group/phoneuiview.mmp
phoneapp/phoneuiview/inc/cphonedialercontroller.h
phoneapp/phoneuiview/inc/cphonemenucontroller.h
phoneapp/phoneuiview/inc/cphoneviewcontroller.h
phoneapp/phoneuiview/inc/phoneviewcommanddefinitions.h
phoneapp/phoneuiview/src/cphonebuttonscontroller.cpp
phoneapp/phoneuiview/src/cphonedialercontroller.cpp
phoneapp/phoneuiview/src/cphonedialerview.cpp
phoneapp/phoneuiview/src/cphoneeasydialingcontroller.cpp
phoneapp/phoneuiview/src/cphonemenucontroller.cpp
phoneapp/phoneuiview/src/cphoneviewcontroller.cpp
phoneengine/audiohandling/data/defaultbeep.rss
phoneengine/audiohandling/group/audiohandling.mmp
phoneengine/audiohandling/src/cpeaudioinbandtoneplayer.cpp
phoneengine/callhandling/inc/cpecallhandling.h
phoneengine/callhandling/src/cpecallhandling.cpp
phoneengine/phonemodel/conf/s60telephony.confml
phoneengine/phonemodel/src/cpemessagehandler.cpp
phoneengine/phonemodel/src/cpephonemodel.cpp
phoneuis/dialer/group/iconlist.txt
phoneuis/dialer/inc/cdialerkeypadbutton.h
phoneuis/dialer/inc/cdialerkeypadcontainer.h
phoneuis/dialer/inc/cdialerkeypadlabelmanager.h
phoneuis/dialer/src/cdialer.cpp
phoneuis/dialer/src/cdialerkeypadbutton.cpp
phoneuis/dialer/src/cdialerkeypadcontainer.cpp
phoneuis/dialer/src/cdialernumberentry.cpp
phoneuis/easydialing/inc/dialingextensioninterface.h
phoneuis/easydialing/inc/easydialingcontactdatamanager.h
phoneuis/easydialing/inc/easydialinglistboxdata.h
phoneuis/easydialing/inc/easydialingplugin.h
phoneuis/easydialing/inc/easydialingutils.h
phoneuis/easydialing/inc/mcontactdatamanagerobserver.h
phoneuis/easydialing/src/easydialingcontactdatamanager.cpp
phoneuis/easydialing/src/easydialinglistboxdata.cpp
phoneuis/easydialing/src/easydialingplugin.cpp
phoneuis/easydialing/src/easydialingutils.cpp
--- a/group/bld.inf	Fri Feb 19 22:50:26 2010 +0200
+++ b/group/bld.inf	Fri Mar 12 15:42:40 2010 +0200
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2006 - 2010 Nokia Corporation and/or its subsidiary(-ies). 
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -16,10 +16,10 @@
 */
 
 
+#include "../phoneuis/group/bld.inf"
 #include "../phoneapp/group/bld.inf"
 #include "../phoneengine/group/bld.inf"
 #include "../phonesettings/group/bld.inf"
-#include "../phoneuis/group/bld.inf"
 #include "../phone_plat/group/bld.inf"
 #include "../phoneplugins/group/bld.inf"
 
--- a/phone_plat/phone_application_commands_api/inc/phoneappcommands.hrh	Fri Feb 19 22:50:26 2010 +0200
+++ b/phone_plat/phone_application_commands_api/inc/phoneappcommands.hrh	Fri Mar 12 15:42:40 2010 +0200
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2002-2008 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2002-2010 Nokia Corporation and/or its subsidiary(-ies). 
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -151,6 +151,9 @@
     EPhoneInCallCmdSecondaryCamera,
     EPhoneInCallCmdActivatEPhonebook, // NOT IN MENU!
 
+    // Video sharing
+    EPhoneInCallCmdShareLiveVideo,
+
     EPhoneInCallCmdConferenceHold, // JMK
     EPhoneInCallCmdConferenceUnhold, // JMK
     EPhoneInCallCmdNewCallFind,
--- a/phoneapp/phoneui/group/commonphoneapp_icons_scalable.mk	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneui/group/commonphoneapp_icons_scalable.mk	Fri Mar 12 15:42:40 2010 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies).
+# Copyright (c) 2004-2010 Nokia Corporation and/or its subsidiary(-ies).
 # All rights reserved.
 # This component and the accompanying materials are made available
 # under the terms of "Eclipse Public License v1.0"
@@ -75,6 +75,7 @@
 		/c8,8 qgn_indi_button_unmute_mic.svg \
 		/c8,8 qgn_indi_button_video_to_voice.svg \
 		/c8,8 qgn_indi_button_voice_to_video.svg \
+		/c8,8 qgn_indi_button_video_share.svg \
 		/c8,8 qgn_indi_button_answer.svg \
 		/c8,8 qgn_indi_button_reject.svg \
 		/c8,8 qgn_indi_tb_call.svg \
--- a/phoneapp/phoneui/group/iconlist.txt	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneui/group/iconlist.txt	Fri Mar 12 15:42:40 2010 +0200
@@ -16,6 +16,7 @@
 -c8,8 qgn_indi_button_unmute_mic
 -c8,8 qgn_indi_button_video_to_voice
 -c8,8 qgn_indi_button_voice_to_video
+-c8,8 qgn_indi_button_video_share
 -c8,8 qgn_indi_button_answer
 -c8,8 qgn_indi_button_reject
 -c8,8 qgn_indi_dialer_call_send
--- a/phoneapp/phoneui/srcdata/callhandlingui.rss	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneui/srcdata/callhandlingui.rss	Fri Mar 12 15:42:40 2010 +0200
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2002-2010 Nokia Corporation and/or its subsidiary(-ies). 
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -568,6 +568,33 @@
         };    
     }      
      
+// -----------------------------------------------------------------------------
+//
+//    r_phoneui_video_share_button
+//    Video share button
+//
+// -----------------------------------------------------------------------------
+//
+RESOURCE BUBBLE_TOUCH_PANE_BUTTON r_phoneui_video_share_button
+    {
+    commands =
+        {
+        EPhoneInCallCmdShareLiveVideo
+        };
+    button = AVKON_BUTTON
+        {
+        states =
+            {
+            AVKON_BUTTON_STATE
+                {
+                txt = qtn_incal_button_share_video\
+                      <0x0001>\
+                      qtn_incal_button_share_video_landscape;
+                }
+            };
+        };
+    }
+
 // ----------------------------------------------------------------
 //   
 //    r_phoneui_incall_buttons
@@ -587,7 +614,7 @@
         // r_phoneui_voice_to_video_toggle_button
         };
     }
-    
+
 // ----------------------------------------------------------------
 //   
 //    r_phoneui_two_singles_buttons
@@ -608,7 +635,27 @@
         // r_phoneui_end_all_calls_button
         };
     }    
-    
+
+// ----------------------------------------------------------------
+//
+//    r_phoneui_incall_video_share_buttons
+//    Touch buttons shown in incall situation.
+//
+// ----------------------------------------------------------------
+//
+RESOURCE BUBBLE_TOUCH_PANE r_phoneui_incall_video_share_buttons
+    {
+    buttons =
+        {
+        r_phoneui_video_share_button,
+        r_phoneui_end_call_button
+        
+        // ALTERNATIVE BUTTONS FOR REPLACE, TOTAL MAX.4 BUTTONS
+        // r_phoneui_go_to_idle_button
+        // r_phoneui_voice_to_video_toggle_button
+        };
+    }
+
 // ----------------------------------------------------------------
 //   
 //    r_phoneui_conference_buttons
--- a/phoneapp/phoneuicontrol/bwins/phoneuicontrolu.def	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuicontrol/bwins/phoneuicontrolu.def	Fri Mar 12 15:42:40 2010 +0200
@@ -60,118 +60,118 @@
 	?CompleteSatRequestL@CPhoneState@@IAEXH@Z @ 59 NONAME ; void CPhoneState::CompleteSatRequestL(int)
 	?NewL@CPhoneStateStartup@@SAPAV1@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 60 NONAME ; class CPhoneStateStartup * CPhoneStateStartup::NewL(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
 	?LaunchNewCallQueryL@CPhoneStateInCall@@IAEXXZ @ 61 NONAME ; void CPhoneStateInCall::LaunchNewCallQueryL(void)
-	?NeedToSendToBackgroundL@CPhoneState@@IBEHXZ @ 62 NONAME ; int CPhoneState::NeedToSendToBackgroundL(void) const
-	?SetCallHeaderTextsForCallComingInL@CPhoneState@@IAEXHHPAVTPhoneCmdParamCallHeaderData@@@Z @ 63 NONAME ; void CPhoneState::SetCallHeaderTextsForCallComingInL(int, int, class TPhoneCmdParamCallHeaderData *)
-	?IsSimOk@CPhoneState@@QAEHXZ @ 64 NONAME ; int CPhoneState::IsSimOk(void)
-	?ClearNumberEntryContentCache@CPhoneState@@IAEXXZ @ 65 NONAME ; void CPhoneState::ClearNumberEntryContentCache(void)
-	?HandleCommandL@CPhoneStateIdle@@UAEHH@Z @ 66 NONAME ; int CPhoneStateIdle::HandleCommandL(int)
-	?ViewCommandHandle@CPhoneStateHandle@@QAEPAVMPhoneViewCommandHandle@@XZ @ 67 NONAME ; class MPhoneViewCommandHandle * CPhoneStateHandle::ViewCommandHandle(void)
-	?DialMultimediaCallL@CPhoneStateIdle@@IAEXXZ @ 68 NONAME ; void CPhoneStateIdle::DialMultimediaCallL(void)
-	?DisconnectOutgoingCallL@CPhoneStateInCall@@IAEXXZ @ 69 NONAME ; void CPhoneStateInCall::DisconnectOutgoingCallL(void)
-	?IsKeyLockOn@CPhoneState@@MBEHXZ @ 70 NONAME ; int CPhoneState::IsKeyLockOn(void) const
-	??1CPhoneStateInCall@@UAE@XZ @ 71 NONAME ; CPhoneStateInCall::~CPhoneStateInCall(void)
-	?CustomizedDialerMenuResourceIdL@CPhoneState@@IAEHXZ @ 72 NONAME ; int CPhoneState::CustomizedDialerMenuResourceIdL(void)
-	?ShowReconnectQueryL@CPhoneReconnectQuery@@QAEXH@Z @ 73 NONAME ; void CPhoneReconnectQuery::ShowReconnectQueryL(int)
-	?UpdateSilenceButtonDimming@CPhoneState@@IAEXXZ @ 74 NONAME ; void CPhoneState::UpdateSilenceButtonDimming(void)
-	?SetNumberEntryVisibilityL@CPhoneState@@IAEXH@Z @ 75 NONAME ; void CPhoneState::SetNumberEntryVisibilityL(int)
-	?HandleError@CPhoneUIController@@UAEXABUTPEErrorInfo@@@Z @ 76 NONAME ; void CPhoneUIController::HandleError(struct TPEErrorInfo const &)
-	?ConstructL@CPhoneStateInCall@@MAEXXZ @ 77 NONAME ; void CPhoneStateInCall::ConstructL(void)
-	?OnlyHashInNumberEntryL@CPhoneStateIdle@@MAEXXZ @ 78 NONAME ; void CPhoneStateIdle::OnlyHashInNumberEntryL(void)
-	?IsVideoCallRingingL@CPhoneStateInCall@@MAEHXZ @ 79 NONAME ; int CPhoneStateInCall::IsVideoCallRingingL(void)
-	?HandlePhoneForegroundEventL@CPhoneStateIdle@@UAEXXZ @ 80 NONAME ; void CPhoneStateIdle::HandlePhoneForegroundEventL(void)
-	?HandleHoldSwitchL@CPhoneState@@QAEXXZ @ 81 NONAME ; void CPhoneState::HandleHoldSwitchL(void)
-	?CloseDtmfQueryL@CPhoneStateInCall@@IAEXXZ @ 82 NONAME ; void CPhoneStateInCall::CloseDtmfQueryL(void)
-	?DynInitMenuBarL@CPhoneState@@UAEXHPAVCEikMenuBar@@@Z @ 83 NONAME ; void CPhoneState::DynInitMenuBarL(int, class CEikMenuBar *)
-	?HandleDtmfKeyToneL@CPhoneStateStartup@@EAEXABUTKeyEvent@@W4TEventCode@@@Z @ 84 NONAME ; void CPhoneStateStartup::HandleDtmfKeyToneL(struct TKeyEvent const &, enum TEventCode)
-	?HandleNumberEntryEdited@CPhoneState@@MAEXXZ @ 85 NONAME ; void CPhoneState::HandleNumberEntryEdited(void)
-	?ShowTextQueryL@CPhoneState@@IAEXHHHPAVTDes16@@H@Z @ 86 NONAME ; void CPhoneState::ShowTextQueryL(int, int, int, class TDes16 *, int)
-	?DialMultimediaCallL@CPhoneState@@IAEXXZ @ 87 NONAME ; void CPhoneState::DialMultimediaCallL(void)
-	?NewL@CPhoneUIController@@SAPAV1@PAVMPhoneViewCommandHandle@@@Z @ 88 NONAME ; class CPhoneUIController * CPhoneUIController::NewL(class MPhoneViewCommandHandle *)
-	?HandleCreateNumberEntryL@CPhoneStateStartup@@EAEXABUTKeyEvent@@W4TEventCode@@@Z @ 89 NONAME ; void CPhoneStateStartup::HandleCreateNumberEntryL(struct TKeyEvent const &, enum TEventCode)
-	?CheckDisableHWKeysAndCallUIL@CPhoneState@@QAEXXZ @ 90 NONAME ; void CPhoneState::CheckDisableHWKeysAndCallUIL(void)
-	?IsMenuBarVisibleL@CPhoneState@@UBEHXZ @ 91 NONAME ; int CPhoneState::IsMenuBarVisibleL(void) const
-	?HandleErrorL@CPhoneState@@UAEXABUTPEErrorInfo@@@Z @ 92 NONAME ; void CPhoneState::HandleErrorL(struct TPEErrorInfo const &)
-	?HandleCommandL@CPhoneStateCallSetup@@UAEHH@Z @ 93 NONAME ; int CPhoneStateCallSetup::HandleCommandL(int)
-	?HandleAudioOutputChangedL@CPhoneState@@IAEXXZ @ 94 NONAME ; void CPhoneState::HandleAudioOutputChangedL(void)
-	??1CPhoneUIController@@UAE@XZ @ 95 NONAME ; CPhoneUIController::~CPhoneUIController(void)
-	?HandleKeyEventL@CPhoneState@@UAEXABUTKeyEvent@@W4TEventCode@@@Z @ 96 NONAME ; void CPhoneState::HandleKeyEventL(struct TKeyEvent const &, enum TEventCode)
-	?UpdateIncomingContextMenuL@CPhoneState@@MAEXH@Z @ 97 NONAME ; void CPhoneState::UpdateIncomingContextMenuL(int)
-	?OpenMenuBarL@CPhoneStateInCall@@MAEXXZ @ 98 NONAME ; void CPhoneStateInCall::OpenMenuBarL(void)
-	?UpdateIncomingCbaL@CPhoneCbaManager@@QAEXH@Z @ 99 NONAME ; void CPhoneCbaManager::UpdateIncomingCbaL(int)
-	?SetTouchPaneButtonDisabled@CPhoneState@@IAEXH@Z @ 100 NONAME ; void CPhoneState::SetTouchPaneButtonDisabled(int)
-	?ConstructL@CPhoneStateIncoming@@MAEXXZ @ 101 NONAME ; void CPhoneStateIncoming::ConstructL(void)
-	?CreatePhoneEngineL@CPhoneStateMachine@@UAEPAVMPEPhoneModel@@AAVMEngineMonitor@@@Z @ 102 NONAME ; class MPEPhoneModel * CPhoneStateMachine::CreatePhoneEngineL(class MEngineMonitor &)
-	?SetTouchPaneButtons@CPhoneState@@IAEXH@Z @ 103 NONAME ; void CPhoneState::SetTouchPaneButtons(int)
-	?HandleIdleForegroundEventL@CPhoneStateStartup@@UAEXXZ @ 104 NONAME ; void CPhoneStateStartup::HandleIdleForegroundEventL(void)
-	?CallFromNumberEntryL@CPhoneState@@IAEXXZ @ 105 NONAME ; void CPhoneState::CallFromNumberEntryL(void)
-	?UpdateCbaL@CPhoneCbaManager@@QAEXH@Z @ 106 NONAME ; void CPhoneCbaManager::UpdateCbaL(int)
-	?IsVideoCall@CPhoneState@@IAEHH@Z @ 107 NONAME ; int CPhoneState::IsVideoCall(int)
-	?IsSwivelClosed@CPhoneState@@QBEHXZ @ 108 NONAME ; int CPhoneState::IsSwivelClosed(void) const
-	?CloseCustomizedDialerL@CPhoneState@@QAEXXZ @ 109 NONAME ; void CPhoneState::CloseCustomizedDialerL(void)
-	?HandlePhoneForegroundEventL@CPhoneUIController@@UAEXXZ @ 110 NONAME ; void CPhoneUIController::HandlePhoneForegroundEventL(void)
-	?CheckIfRestoreNEContentAfterDtmfDialer@CPhoneState@@IAEXXZ @ 111 NONAME ; void CPhoneState::CheckIfRestoreNEContentAfterDtmfDialer(void)
-	?UpdateInCallContextMenuL@CPhoneState@@UAEXXZ @ 112 NONAME ; void CPhoneState::UpdateInCallContextMenuL(void)
-	?HandleNumericKeyEventL@CPhoneState@@MAEXABUTKeyEvent@@W4TEventCode@@@Z @ 113 NONAME ; void CPhoneState::HandleNumericKeyEventL(struct TKeyEvent const &, enum TEventCode)
-	?SetToolbarDimming@CPhoneState@@IAEXH@Z @ 114 NONAME ; void CPhoneState::SetToolbarDimming(int)
-	?SendGlobalErrorNoteL@CPhoneState@@QAEXH@Z @ 115 NONAME ; void CPhoneState::SendGlobalErrorNoteL(int)
-	?IsAutoLockOn@CPhoneState@@UBEHXZ @ 116 NONAME ; int CPhoneState::IsAutoLockOn(void) const
-	?UpdateCbaL@CPhoneStateCallSetup@@MAEXH@Z @ 117 NONAME ; void CPhoneStateCallSetup::UpdateCbaL(int)
-	?RestoreNumberEntryContentL@CPhoneState@@IAEXXZ @ 118 NONAME ; void CPhoneState::RestoreNumberEntryContentL(void)
-	?HandleKeyEventL@CPhoneStateIdle@@UAEXABUTKeyEvent@@W4TEventCode@@@Z @ 119 NONAME ; void CPhoneStateIdle::HandleKeyEventL(struct TKeyEvent const &, enum TEventCode)
-	?IsNumberEntryContentStored@CPhoneState@@IAEHXZ @ 120 NONAME ; int CPhoneState::IsNumberEntryContentStored(void)
-	?IsVideoCallActiveL@CPhoneStateInCall@@MAEHXZ @ 121 NONAME ; int CPhoneStateInCall::IsVideoCallActiveL(void)
-	?HandlePhoneStartupL@CPhoneStateStartup@@UAEXXZ @ 122 NONAME ; void CPhoneStateStartup::HandlePhoneStartupL(void)
-	?DialVoiceCallL@CPhoneState@@IAEXXZ @ 123 NONAME ; void CPhoneState::DialVoiceCallL(void)
-	?EndUiUpdate@CPhoneState@@IAEXXZ @ 124 NONAME ; void CPhoneState::EndUiUpdate(void)
-	?HandleKeyPressDurationL@CPhoneStateIncoming@@UAEXW4TKeyCode@@VTTimeIntervalMicroSeconds@@@Z @ 125 NONAME ; void CPhoneStateIncoming::HandleKeyPressDurationL(enum TKeyCode, class TTimeIntervalMicroSeconds)
-	?UpdateInCallCbaL@CPhoneStateInCall@@MAEXXZ @ 126 NONAME ; void CPhoneStateInCall::UpdateInCallCbaL(void)
-	?EndTransEffect@CPhoneState@@QAEXXZ @ 127 NONAME ; void CPhoneState::EndTransEffect(void)
-	?HandleEnvironmentChangeL@CPhoneState@@UAEXH@Z @ 128 NONAME ; void CPhoneState::HandleEnvironmentChangeL(int)
-	?HandleKeyMessageL@CPhoneStateInCall@@UAEXW4TPhoneKeyEventMessages@MPhoneKeyEvents@@W4TKeyCode@@@Z @ 129 NONAME ; void CPhoneStateInCall::HandleKeyMessageL(enum MPhoneKeyEvents::TPhoneKeyEventMessages, enum TKeyCode)
-	?SetRingingTonePlaybackL@CPhoneState@@IAEXH@Z @ 130 NONAME ; void CPhoneState::SetRingingTonePlaybackL(int)
-	?ProcessCommandL@CPhoneState@@UAEHH@Z @ 131 NONAME ; int CPhoneState::ProcessCommandL(int)
-	?BeginUiUpdateLC@CPhoneState@@IAEXXZ @ 132 NONAME ; void CPhoneState::BeginUiUpdateLC(void)
-	?DecreaseAudioVolumeL@CPhoneState@@IAEXXZ @ 133 NONAME ; void CPhoneState::DecreaseAudioVolumeL(void)
-	?PhoneEngineInfo@CPhoneStateMachine@@UAEPAVMPEEngineInfo@@XZ @ 134 NONAME ; class MPEEngineInfo * CPhoneStateMachine::PhoneEngineInfo(void)
-	?CreateNumberEntryL@CPhoneStateInCall@@IAEXXZ @ 135 NONAME ; void CPhoneStateInCall::CreateNumberEntryL(void)
-	?HandleSystemEventL@CPhoneUIController@@UAEXABVTWsEvent@@@Z @ 136 NONAME ; void CPhoneUIController::HandleSystemEventL(class TWsEvent const &)
-	?DynInitMenuPaneL@CPhoneUIController@@UAEXHPAVCEikMenuPane@@@Z @ 137 NONAME ; void CPhoneUIController::DynInitMenuPaneL(int, class CEikMenuPane *)
-	??0CPhoneStateStartup@@IAE@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 138 NONAME ; CPhoneStateStartup::CPhoneStateStartup(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
-	?GetRemoteInfoDataL@CPhoneState@@IAEXHAAVTDes16@@@Z @ 139 NONAME ; void CPhoneState::GetRemoteInfoDataL(int, class TDes16 &)
-	?SetDivertIndication@CPhoneState@@UAEXH@Z @ 140 NONAME ; void CPhoneState::SetDivertIndication(int)
-	?UpdateCbaL@CPhoneStateInCall@@MAEXH@Z @ 141 NONAME ; void CPhoneStateInCall::UpdateCbaL(int)
-	?SetCallId@CPhoneStateMachine@@UAEXH@Z @ 142 NONAME ; void CPhoneStateMachine::SetCallId(int)
-	?ProcessCommandL@CPhoneUIController@@UAEHH@Z @ 143 NONAME ; int CPhoneUIController::ProcessCommandL(int)
-	?DisplayHeaderForCallComingInL@CPhoneState@@IAEXHH@Z @ 144 NONAME ; void CPhoneState::DisplayHeaderForCallComingInL(int, int)
-	??0CPhoneStateIdle@@IAE@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 145 NONAME ; CPhoneStateIdle::CPhoneStateIdle(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
-	?SendPhoneEngineMessage@CPhoneStateMachine@@UAEXH@Z @ 146 NONAME ; void CPhoneStateMachine::SendPhoneEngineMessage(int)
-	??0CPhoneStateCallSetup@@IAE@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 147 NONAME ; CPhoneStateCallSetup::CPhoneStateCallSetup(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
-	??0CPhoneState@@QAE@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 148 NONAME ; CPhoneState::CPhoneState(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
-	?HandleDtmfKeyToneL@CPhoneState@@UAEXABUTKeyEvent@@W4TEventCode@@@Z @ 149 NONAME ; void CPhoneState::HandleDtmfKeyToneL(struct TKeyEvent const &, enum TEventCode)
-	?HandleKeyMessageL@CPhoneStateIdle@@UAEXW4TPhoneKeyEventMessages@MPhoneKeyEvents@@W4TKeyCode@@@Z @ 150 NONAME ; void CPhoneStateIdle::HandleKeyMessageL(enum MPhoneKeyEvents::TPhoneKeyEventMessages, enum TKeyCode)
-	?HandleForegroundEventL@CPhoneUIController@@UAEXH@Z @ 151 NONAME ; void CPhoneUIController::HandleForegroundEventL(int)
-	?HandleSendCommandL@CPhoneStateIdle@@MAEXXZ @ 152 NONAME ; void CPhoneStateIdle::HandleSendCommandL(void)
-	?HandleCommandL@CPhoneUIController@@UAEHH@Z @ 153 NONAME ; int CPhoneUIController::HandleCommandL(int)
-	?HandleCreateNumberEntryL@CPhoneState@@UAEXABUTKeyEvent@@W4TEventCode@@@Z @ 154 NONAME ; void CPhoneState::HandleCreateNumberEntryL(struct TKeyEvent const &, enum TEventCode)
-	?DisableHWKeysL@CPhoneState@@QAEXXZ @ 155 NONAME ; void CPhoneState::DisableHWKeysL(void)
-	?DisplayHeaderForOutgoingCallL@CPhoneState@@IAEXH@Z @ 156 NONAME ; void CPhoneState::DisplayHeaderForOutgoingCallL(int)
-	?GetBlockedKeyList@CPhoneState@@UBEABV?$RArray@H@@XZ @ 157 NONAME ; class RArray<int> const & CPhoneState::GetBlockedKeyList(void) const
-	?HandlePhoneEngineMessageL@CPhoneStateInCall@@UAEXHH@Z @ 158 NONAME ; void CPhoneStateInCall::HandlePhoneEngineMessageL(int, int)
-	?IsSpeedDialNumber@CPhoneStateIdle@@IBEHABVTDesC16@@@Z @ 159 NONAME ; int CPhoneStateIdle::IsSpeedDialNumber(class TDesC16 const &) const
-	?IsNumberEntryUsedL@CPhoneState@@UAEHXZ @ 160 NONAME ; int CPhoneState::IsNumberEntryUsedL(void)
-	?PhoneStorage@CPhoneStateMachine@@UAEPAVMPhoneStorage@@XZ @ 161 NONAME ; class MPhoneStorage * CPhoneStateMachine::PhoneStorage(void)
-	??1CPhoneState@@UAE@XZ @ 162 NONAME ; CPhoneState::~CPhoneState(void)
-	?HandleCreateNumberEntryL@CPhoneStateCallSetup@@MAEXABUTKeyEvent@@W4TEventCode@@@Z @ 163 NONAME ; void CPhoneStateCallSetup::HandleCreateNumberEntryL(struct TKeyEvent const &, enum TEventCode)
-	?HandlePhoneEngineMessageL@CPhoneStateCallSetup@@UAEXHH@Z @ 164 NONAME ; void CPhoneStateCallSetup::HandlePhoneEngineMessageL(int, int)
-	?HandlePhoneFocusLostEventL@CPhoneState@@UAEXXZ @ 165 NONAME ; void CPhoneState::HandlePhoneFocusLostEventL(void)
-	??1CPhoneStateMachine@@UAE@XZ @ 166 NONAME ; CPhoneStateMachine::~CPhoneStateMachine(void)
-	?HandleIdleForegroundEventL@CPhoneState@@UAEXXZ @ 167 NONAME ; void CPhoneState::HandleIdleForegroundEventL(void)
-	?DynInitMenuPaneL@CPhoneState@@UAEXHPAVCEikMenuPane@@@Z @ 168 NONAME ; void CPhoneState::DynInitMenuPaneL(int, class CEikMenuPane *)
-	?IsDTMFEditorVisibleL@CPhoneState@@IBEHXZ @ 169 NONAME ; int CPhoneState::IsDTMFEditorVisibleL(void) const
-	?ConstructL@CPhoneStateCallSetup@@MAEXXZ @ 170 NONAME ; void CPhoneStateCallSetup::ConstructL(void)
-	?BeginTransEffectLC@CPhoneState@@QAEXW4TStateTransEffectType@@@Z @ 171 NONAME ; void CPhoneState::BeginTransEffectLC(enum TStateTransEffectType)
-	?HandleMessage@CPhoneUIController@@UAEXHH@Z @ 172 NONAME ; void CPhoneUIController::HandleMessage(int, int)
-	?HandleSystemEventL@CPhoneState@@UAEXABVTWsEvent@@@Z @ 173 NONAME ; void CPhoneState::HandleSystemEventL(class TWsEvent const &)
+	?SetCallHeaderTextsForCallComingInL@CPhoneState@@IAEXHHPAVTPhoneCmdParamCallHeaderData@@@Z @ 62 NONAME ; void CPhoneState::SetCallHeaderTextsForCallComingInL(int, int, class TPhoneCmdParamCallHeaderData *)
+	?IsSimOk@CPhoneState@@QAEHXZ @ 63 NONAME ; int CPhoneState::IsSimOk(void)
+	?ClearNumberEntryContentCache@CPhoneState@@IAEXXZ @ 64 NONAME ; void CPhoneState::ClearNumberEntryContentCache(void)
+	?HandleCommandL@CPhoneStateIdle@@UAEHH@Z @ 65 NONAME ; int CPhoneStateIdle::HandleCommandL(int)
+	?ViewCommandHandle@CPhoneStateHandle@@QAEPAVMPhoneViewCommandHandle@@XZ @ 66 NONAME ; class MPhoneViewCommandHandle * CPhoneStateHandle::ViewCommandHandle(void)
+	?DialMultimediaCallL@CPhoneStateIdle@@IAEXXZ @ 67 NONAME ; void CPhoneStateIdle::DialMultimediaCallL(void)
+	?DisconnectOutgoingCallL@CPhoneStateInCall@@IAEXXZ @ 68 NONAME ; void CPhoneStateInCall::DisconnectOutgoingCallL(void)
+	?IsKeyLockOn@CPhoneState@@MBEHXZ @ 69 NONAME ; int CPhoneState::IsKeyLockOn(void) const
+	??1CPhoneStateInCall@@UAE@XZ @ 70 NONAME ; CPhoneStateInCall::~CPhoneStateInCall(void)
+	?CustomizedDialerMenuResourceIdL@CPhoneState@@IAEHXZ @ 71 NONAME ; int CPhoneState::CustomizedDialerMenuResourceIdL(void)
+	?ShowReconnectQueryL@CPhoneReconnectQuery@@QAEXH@Z @ 72 NONAME ; void CPhoneReconnectQuery::ShowReconnectQueryL(int)
+	?UpdateSilenceButtonDimming@CPhoneState@@IAEXXZ @ 73 NONAME ; void CPhoneState::UpdateSilenceButtonDimming(void)
+	?SetNumberEntryVisibilityL@CPhoneState@@IAEXH@Z @ 74 NONAME ; void CPhoneState::SetNumberEntryVisibilityL(int)
+	?HandleError@CPhoneUIController@@UAEXABUTPEErrorInfo@@@Z @ 75 NONAME ; void CPhoneUIController::HandleError(struct TPEErrorInfo const &)
+	?ConstructL@CPhoneStateInCall@@MAEXXZ @ 76 NONAME ; void CPhoneStateInCall::ConstructL(void)
+	?OnlyHashInNumberEntryL@CPhoneStateIdle@@MAEXXZ @ 77 NONAME ; void CPhoneStateIdle::OnlyHashInNumberEntryL(void)
+	?IsVideoCallRingingL@CPhoneStateInCall@@MAEHXZ @ 78 NONAME ; int CPhoneStateInCall::IsVideoCallRingingL(void)
+	?HandlePhoneForegroundEventL@CPhoneStateIdle@@UAEXXZ @ 79 NONAME ; void CPhoneStateIdle::HandlePhoneForegroundEventL(void)
+	?HandleHoldSwitchL@CPhoneState@@QAEXXZ @ 80 NONAME ; void CPhoneState::HandleHoldSwitchL(void)
+	?CloseDtmfQueryL@CPhoneStateInCall@@IAEXXZ @ 81 NONAME ; void CPhoneStateInCall::CloseDtmfQueryL(void)
+	?DynInitMenuBarL@CPhoneState@@UAEXHPAVCEikMenuBar@@@Z @ 82 NONAME ; void CPhoneState::DynInitMenuBarL(int, class CEikMenuBar *)
+	?HandleDtmfKeyToneL@CPhoneStateStartup@@EAEXABUTKeyEvent@@W4TEventCode@@@Z @ 83 NONAME ; void CPhoneStateStartup::HandleDtmfKeyToneL(struct TKeyEvent const &, enum TEventCode)
+	?HandleNumberEntryEdited@CPhoneState@@MAEXXZ @ 84 NONAME ; void CPhoneState::HandleNumberEntryEdited(void)
+	?ShowTextQueryL@CPhoneState@@IAEXHHHPAVTDes16@@H@Z @ 85 NONAME ; void CPhoneState::ShowTextQueryL(int, int, int, class TDes16 *, int)
+	?DialMultimediaCallL@CPhoneState@@IAEXXZ @ 86 NONAME ; void CPhoneState::DialMultimediaCallL(void)
+	?NewL@CPhoneUIController@@SAPAV1@PAVMPhoneViewCommandHandle@@@Z @ 87 NONAME ; class CPhoneUIController * CPhoneUIController::NewL(class MPhoneViewCommandHandle *)
+	?HandleCreateNumberEntryL@CPhoneStateStartup@@EAEXABUTKeyEvent@@W4TEventCode@@@Z @ 88 NONAME ; void CPhoneStateStartup::HandleCreateNumberEntryL(struct TKeyEvent const &, enum TEventCode)
+	?CheckDisableHWKeysAndCallUIL@CPhoneState@@QAEXXZ @ 89 NONAME ; void CPhoneState::CheckDisableHWKeysAndCallUIL(void)
+	?IsMenuBarVisibleL@CPhoneState@@UBEHXZ @ 90 NONAME ; int CPhoneState::IsMenuBarVisibleL(void) const
+	?HandleErrorL@CPhoneState@@UAEXABUTPEErrorInfo@@@Z @ 91 NONAME ; void CPhoneState::HandleErrorL(struct TPEErrorInfo const &)
+	?HandleCommandL@CPhoneStateCallSetup@@UAEHH@Z @ 92 NONAME ; int CPhoneStateCallSetup::HandleCommandL(int)
+	?HandleAudioOutputChangedL@CPhoneState@@IAEXXZ @ 93 NONAME ; void CPhoneState::HandleAudioOutputChangedL(void)
+	??1CPhoneUIController@@UAE@XZ @ 94 NONAME ; CPhoneUIController::~CPhoneUIController(void)
+	?HandleKeyEventL@CPhoneState@@UAEXABUTKeyEvent@@W4TEventCode@@@Z @ 95 NONAME ; void CPhoneState::HandleKeyEventL(struct TKeyEvent const &, enum TEventCode)
+	?UpdateIncomingContextMenuL@CPhoneState@@MAEXH@Z @ 96 NONAME ; void CPhoneState::UpdateIncomingContextMenuL(int)
+	?OpenMenuBarL@CPhoneStateInCall@@MAEXXZ @ 97 NONAME ; void CPhoneStateInCall::OpenMenuBarL(void)
+	?UpdateIncomingCbaL@CPhoneCbaManager@@QAEXH@Z @ 98 NONAME ; void CPhoneCbaManager::UpdateIncomingCbaL(int)
+	?SetTouchPaneButtonDisabled@CPhoneState@@IAEXH@Z @ 99 NONAME ; void CPhoneState::SetTouchPaneButtonDisabled(int)
+	?ConstructL@CPhoneStateIncoming@@MAEXXZ @ 100 NONAME ; void CPhoneStateIncoming::ConstructL(void)
+	?CreatePhoneEngineL@CPhoneStateMachine@@UAEPAVMPEPhoneModel@@AAVMEngineMonitor@@@Z @ 101 NONAME ; class MPEPhoneModel * CPhoneStateMachine::CreatePhoneEngineL(class MEngineMonitor &)
+	?SetTouchPaneButtons@CPhoneState@@IAEXH@Z @ 102 NONAME ; void CPhoneState::SetTouchPaneButtons(int)
+	?HandleIdleForegroundEventL@CPhoneStateStartup@@UAEXXZ @ 103 NONAME ; void CPhoneStateStartup::HandleIdleForegroundEventL(void)
+	?CallFromNumberEntryL@CPhoneState@@IAEXXZ @ 104 NONAME ; void CPhoneState::CallFromNumberEntryL(void)
+	?UpdateCbaL@CPhoneCbaManager@@QAEXH@Z @ 105 NONAME ; void CPhoneCbaManager::UpdateCbaL(int)
+	?IsVideoCall@CPhoneState@@IAEHH@Z @ 106 NONAME ; int CPhoneState::IsVideoCall(int)
+	?IsSwivelClosed@CPhoneState@@QBEHXZ @ 107 NONAME ; int CPhoneState::IsSwivelClosed(void) const
+	?CloseCustomizedDialerL@CPhoneState@@QAEXXZ @ 108 NONAME ; void CPhoneState::CloseCustomizedDialerL(void)
+	?HandlePhoneForegroundEventL@CPhoneUIController@@UAEXXZ @ 109 NONAME ; void CPhoneUIController::HandlePhoneForegroundEventL(void)
+	?CheckIfRestoreNEContentAfterDtmfDialer@CPhoneState@@IAEXXZ @ 110 NONAME ; void CPhoneState::CheckIfRestoreNEContentAfterDtmfDialer(void)
+	?UpdateInCallContextMenuL@CPhoneState@@UAEXXZ @ 111 NONAME ; void CPhoneState::UpdateInCallContextMenuL(void)
+	?HandleNumericKeyEventL@CPhoneState@@MAEXABUTKeyEvent@@W4TEventCode@@@Z @ 112 NONAME ; void CPhoneState::HandleNumericKeyEventL(struct TKeyEvent const &, enum TEventCode)
+	?SetToolbarDimming@CPhoneState@@IAEXH@Z @ 113 NONAME ; void CPhoneState::SetToolbarDimming(int)
+	?SendGlobalErrorNoteL@CPhoneState@@QAEXH@Z @ 114 NONAME ; void CPhoneState::SendGlobalErrorNoteL(int)
+	?IsAutoLockOn@CPhoneState@@UBEHXZ @ 115 NONAME ; int CPhoneState::IsAutoLockOn(void) const
+	?UpdateCbaL@CPhoneStateCallSetup@@MAEXH@Z @ 116 NONAME ; void CPhoneStateCallSetup::UpdateCbaL(int)
+	?RestoreNumberEntryContentL@CPhoneState@@IAEXXZ @ 117 NONAME ; void CPhoneState::RestoreNumberEntryContentL(void)
+	?HandleKeyEventL@CPhoneStateIdle@@UAEXABUTKeyEvent@@W4TEventCode@@@Z @ 118 NONAME ; void CPhoneStateIdle::HandleKeyEventL(struct TKeyEvent const &, enum TEventCode)
+	?IsNumberEntryContentStored@CPhoneState@@IAEHXZ @ 119 NONAME ; int CPhoneState::IsNumberEntryContentStored(void)
+	?IsVideoCallActiveL@CPhoneStateInCall@@MAEHXZ @ 120 NONAME ; int CPhoneStateInCall::IsVideoCallActiveL(void)
+	?HandlePhoneStartupL@CPhoneStateStartup@@UAEXXZ @ 121 NONAME ; void CPhoneStateStartup::HandlePhoneStartupL(void)
+	?DialVoiceCallL@CPhoneState@@IAEXXZ @ 122 NONAME ; void CPhoneState::DialVoiceCallL(void)
+	?EndUiUpdate@CPhoneState@@IAEXXZ @ 123 NONAME ; void CPhoneState::EndUiUpdate(void)
+	?HandleKeyPressDurationL@CPhoneStateIncoming@@UAEXW4TKeyCode@@VTTimeIntervalMicroSeconds@@@Z @ 124 NONAME ; void CPhoneStateIncoming::HandleKeyPressDurationL(enum TKeyCode, class TTimeIntervalMicroSeconds)
+	?UpdateInCallCbaL@CPhoneStateInCall@@MAEXXZ @ 125 NONAME ; void CPhoneStateInCall::UpdateInCallCbaL(void)
+	?EndTransEffect@CPhoneState@@QAEXXZ @ 126 NONAME ; void CPhoneState::EndTransEffect(void)
+	?HandleEnvironmentChangeL@CPhoneState@@UAEXH@Z @ 127 NONAME ; void CPhoneState::HandleEnvironmentChangeL(int)
+	?HandleKeyMessageL@CPhoneStateInCall@@UAEXW4TPhoneKeyEventMessages@MPhoneKeyEvents@@W4TKeyCode@@@Z @ 128 NONAME ; void CPhoneStateInCall::HandleKeyMessageL(enum MPhoneKeyEvents::TPhoneKeyEventMessages, enum TKeyCode)
+	?SetRingingTonePlaybackL@CPhoneState@@IAEXH@Z @ 129 NONAME ; void CPhoneState::SetRingingTonePlaybackL(int)
+	?ProcessCommandL@CPhoneState@@UAEHH@Z @ 130 NONAME ; int CPhoneState::ProcessCommandL(int)
+	?BeginUiUpdateLC@CPhoneState@@IAEXXZ @ 131 NONAME ; void CPhoneState::BeginUiUpdateLC(void)
+	?DecreaseAudioVolumeL@CPhoneState@@IAEXXZ @ 132 NONAME ; void CPhoneState::DecreaseAudioVolumeL(void)
+	?PhoneEngineInfo@CPhoneStateMachine@@UAEPAVMPEEngineInfo@@XZ @ 133 NONAME ; class MPEEngineInfo * CPhoneStateMachine::PhoneEngineInfo(void)
+	?CreateNumberEntryL@CPhoneStateInCall@@IAEXXZ @ 134 NONAME ; void CPhoneStateInCall::CreateNumberEntryL(void)
+	?HandleSystemEventL@CPhoneUIController@@UAEXABVTWsEvent@@@Z @ 135 NONAME ; void CPhoneUIController::HandleSystemEventL(class TWsEvent const &)
+	?DynInitMenuPaneL@CPhoneUIController@@UAEXHPAVCEikMenuPane@@@Z @ 136 NONAME ; void CPhoneUIController::DynInitMenuPaneL(int, class CEikMenuPane *)
+	??0CPhoneStateStartup@@IAE@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 137 NONAME ; CPhoneStateStartup::CPhoneStateStartup(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
+	?GetRemoteInfoDataL@CPhoneState@@IAEXHAAVTDes16@@@Z @ 138 NONAME ; void CPhoneState::GetRemoteInfoDataL(int, class TDes16 &)
+	?SetDivertIndication@CPhoneState@@UAEXH@Z @ 139 NONAME ; void CPhoneState::SetDivertIndication(int)
+	?UpdateCbaL@CPhoneStateInCall@@MAEXH@Z @ 140 NONAME ; void CPhoneStateInCall::UpdateCbaL(int)
+	?SetCallId@CPhoneStateMachine@@UAEXH@Z @ 141 NONAME ; void CPhoneStateMachine::SetCallId(int)
+	?ProcessCommandL@CPhoneUIController@@UAEHH@Z @ 142 NONAME ; int CPhoneUIController::ProcessCommandL(int)
+	?DisplayHeaderForCallComingInL@CPhoneState@@IAEXHH@Z @ 143 NONAME ; void CPhoneState::DisplayHeaderForCallComingInL(int, int)
+	??0CPhoneStateIdle@@IAE@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 144 NONAME ; CPhoneStateIdle::CPhoneStateIdle(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
+	?SendPhoneEngineMessage@CPhoneStateMachine@@UAEXH@Z @ 145 NONAME ; void CPhoneStateMachine::SendPhoneEngineMessage(int)
+	??0CPhoneStateCallSetup@@IAE@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 146 NONAME ; CPhoneStateCallSetup::CPhoneStateCallSetup(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
+	??0CPhoneState@@QAE@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 147 NONAME ; CPhoneState::CPhoneState(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
+	?HandleDtmfKeyToneL@CPhoneState@@UAEXABUTKeyEvent@@W4TEventCode@@@Z @ 148 NONAME ; void CPhoneState::HandleDtmfKeyToneL(struct TKeyEvent const &, enum TEventCode)
+	?HandleKeyMessageL@CPhoneStateIdle@@UAEXW4TPhoneKeyEventMessages@MPhoneKeyEvents@@W4TKeyCode@@@Z @ 149 NONAME ; void CPhoneStateIdle::HandleKeyMessageL(enum MPhoneKeyEvents::TPhoneKeyEventMessages, enum TKeyCode)
+	?HandleForegroundEventL@CPhoneUIController@@UAEXH@Z @ 150 NONAME ; void CPhoneUIController::HandleForegroundEventL(int)
+	?HandleSendCommandL@CPhoneStateIdle@@MAEXXZ @ 151 NONAME ; void CPhoneStateIdle::HandleSendCommandL(void)
+	?HandleCommandL@CPhoneUIController@@UAEHH@Z @ 152 NONAME ; int CPhoneUIController::HandleCommandL(int)
+	?HandleCreateNumberEntryL@CPhoneState@@UAEXABUTKeyEvent@@W4TEventCode@@@Z @ 153 NONAME ; void CPhoneState::HandleCreateNumberEntryL(struct TKeyEvent const &, enum TEventCode)
+	?DisableHWKeysL@CPhoneState@@QAEXXZ @ 154 NONAME ; void CPhoneState::DisableHWKeysL(void)
+	?DisplayHeaderForOutgoingCallL@CPhoneState@@IAEXH@Z @ 155 NONAME ; void CPhoneState::DisplayHeaderForOutgoingCallL(int)
+	?GetBlockedKeyList@CPhoneState@@UBEABV?$RArray@H@@XZ @ 156 NONAME ; class RArray<int> const & CPhoneState::GetBlockedKeyList(void) const
+	?HandlePhoneEngineMessageL@CPhoneStateInCall@@UAEXHH@Z @ 157 NONAME ; void CPhoneStateInCall::HandlePhoneEngineMessageL(int, int)
+	?IsSpeedDialNumber@CPhoneStateIdle@@IBEHABVTDesC16@@@Z @ 158 NONAME ; int CPhoneStateIdle::IsSpeedDialNumber(class TDesC16 const &) const
+	?IsNumberEntryUsedL@CPhoneState@@UAEHXZ @ 159 NONAME ; int CPhoneState::IsNumberEntryUsedL(void)
+	?PhoneStorage@CPhoneStateMachine@@UAEPAVMPhoneStorage@@XZ @ 160 NONAME ; class MPhoneStorage * CPhoneStateMachine::PhoneStorage(void)
+	??1CPhoneState@@UAE@XZ @ 161 NONAME ; CPhoneState::~CPhoneState(void)
+	?HandleCreateNumberEntryL@CPhoneStateCallSetup@@MAEXABUTKeyEvent@@W4TEventCode@@@Z @ 162 NONAME ; void CPhoneStateCallSetup::HandleCreateNumberEntryL(struct TKeyEvent const &, enum TEventCode)
+	?HandlePhoneEngineMessageL@CPhoneStateCallSetup@@UAEXHH@Z @ 163 NONAME ; void CPhoneStateCallSetup::HandlePhoneEngineMessageL(int, int)
+	?HandlePhoneFocusLostEventL@CPhoneState@@UAEXXZ @ 164 NONAME ; void CPhoneState::HandlePhoneFocusLostEventL(void)
+	??1CPhoneStateMachine@@UAE@XZ @ 165 NONAME ; CPhoneStateMachine::~CPhoneStateMachine(void)
+	?HandleIdleForegroundEventL@CPhoneState@@UAEXXZ @ 166 NONAME ; void CPhoneState::HandleIdleForegroundEventL(void)
+	?DynInitMenuPaneL@CPhoneState@@UAEXHPAVCEikMenuPane@@@Z @ 167 NONAME ; void CPhoneState::DynInitMenuPaneL(int, class CEikMenuPane *)
+	?IsDTMFEditorVisibleL@CPhoneState@@IBEHXZ @ 168 NONAME ; int CPhoneState::IsDTMFEditorVisibleL(void) const
+	?ConstructL@CPhoneStateCallSetup@@MAEXXZ @ 169 NONAME ; void CPhoneStateCallSetup::ConstructL(void)
+	?BeginTransEffectLC@CPhoneState@@QAEXW4TStateTransEffectType@@@Z @ 170 NONAME ; void CPhoneState::BeginTransEffectLC(enum TStateTransEffectType)
+	?HandleMessage@CPhoneUIController@@UAEXHH@Z @ 171 NONAME ; void CPhoneUIController::HandleMessage(int, int)
+	?HandleSystemEventL@CPhoneState@@UAEXABVTWsEvent@@@Z @ 172 NONAME ; void CPhoneState::HandleSystemEventL(class TWsEvent const &)
+	?NeedToReturnToForegroundAppL@CPhoneState@@IBEHXZ @ 173 NONAME ; int CPhoneState::NeedToReturnToForegroundAppL(void) const
 	?DisplayCallSetupL@CPhoneStateIdle@@IAEXH@Z @ 174 NONAME ; void CPhoneStateIdle::DisplayCallSetupL(int)
 	?ConstructL@CPhoneStateStartup@@MAEXXZ @ 175 NONAME ; void CPhoneStateStartup::ConstructL(void)
 	?HandleKeyMessageL@CPhoneStateStartup@@UAEXW4TPhoneKeyEventMessages@MPhoneKeyEvents@@W4TKeyCode@@@Z @ 176 NONAME ; void CPhoneStateStartup::HandleKeyMessageL(enum MPhoneKeyEvents::TPhoneKeyEventMessages, enum TKeyCode)
@@ -218,19 +218,21 @@
 	?DisplayIncomingCallL@CPhoneStateIdle@@IAEXH@Z @ 217 NONAME ; void CPhoneStateIdle::DisplayIncomingCallL(int)
 	?HandleRemConCommandL@CPhoneState@@UAEHW4TRemConCoreApiOperationId@@W4TRemConCoreApiButtonAction@@@Z @ 218 NONAME ; int CPhoneState::HandleRemConCommandL(enum TRemConCoreApiOperationId, enum TRemConCoreApiButtonAction)
 	??1CPhoneStateIdle@@UAE@XZ @ 219 NONAME ; CPhoneStateIdle::~CPhoneStateIdle(void)
-	?PhoneNumberFromEntryLC@CPhoneState@@IAEPAVHBufC16@@XZ @ 220 NONAME ; class HBufC16 * CPhoneState::PhoneNumberFromEntryLC(void)
-	?BaseConstructL@CPhoneState@@QAEXXZ @ 221 NONAME ; void CPhoneState::BaseConstructL(void)
-	?HandlePhoneStartupL@CPhoneUIController@@UAEXXZ @ 222 NONAME ; void CPhoneUIController::HandlePhoneStartupL(void)
-	?SpeedDialL@CPhoneStateIdle@@IAEXABIW4TDialInitiationMethod@1@@Z @ 223 NONAME ; void CPhoneStateIdle::SpeedDialL(unsigned int const &, enum CPhoneStateIdle::TDialInitiationMethod)
-	?SetTouchPaneButtonEnabled@CPhoneState@@IAEXH@Z @ 224 NONAME ; void CPhoneState::SetTouchPaneButtonEnabled(int)
-	?SetPhoneEngine@CPhoneStateMachine@@UAEXPAVMPEPhoneModel@@@Z @ 225 NONAME ; void CPhoneStateMachine::SetPhoneEngine(class MPEPhoneModel *)
-	?SpeedDialCanceledL@CPhoneStateIdle@@IAEXABI@Z @ 226 NONAME ; void CPhoneStateIdle::SpeedDialCanceledL(unsigned int const &)
-	?CloseDTMFEditorL@CPhoneState@@IAEXXZ @ 227 NONAME ; void CPhoneState::CloseDTMFEditorL(void)
-	?SetTouchPaneVisible@CPhoneState@@IAEXH@Z @ 228 NONAME ; void CPhoneState::SetTouchPaneVisible(int)
-	?HandlePhoneFocusLostEventL@CPhoneUIController@@UAEXXZ @ 229 NONAME ; void CPhoneUIController::HandlePhoneFocusLostEventL(void)
-	?HandleKeyLockEnabled@CPhoneStateIncoming@@UAEXH@Z @ 230 NONAME ; void CPhoneStateIncoming::HandleKeyLockEnabled(int)
-	??0CPhoneStateMachine@@IAE@PAVMPhoneViewCommandHandle@@@Z @ 231 NONAME ; CPhoneStateMachine::CPhoneStateMachine(class MPhoneViewCommandHandle *)
-	??1CPhoneStateStartup@@UAE@XZ @ 232 NONAME ; CPhoneStateStartup::~CPhoneStateStartup(void)
-	?HandleKeyMessageL@CPhoneState@@UAEXW4TPhoneKeyEventMessages@MPhoneKeyEvents@@W4TKeyCode@@@Z @ 233 NONAME ; void CPhoneState::HandleKeyMessageL(enum MPhoneKeyEvents::TPhoneKeyEventMessages, enum TKeyCode)
-	?IsDialingExtensionInFocusL@CPhoneState@@QBEHXZ @ 234 NONAME ; int CPhoneState::IsDialingExtensionInFocusL(void) const
+	?IsDialingExtensionInFocusL@CPhoneState@@QBEHXZ @ 220 NONAME ; int CPhoneState::IsDialingExtensionInFocusL(void) const
+	?PhoneNumberFromEntryLC@CPhoneState@@IAEPAVHBufC16@@XZ @ 221 NONAME ; class HBufC16 * CPhoneState::PhoneNumberFromEntryLC(void)
+	?BaseConstructL@CPhoneState@@QAEXXZ @ 222 NONAME ; void CPhoneState::BaseConstructL(void)
+	?HandlePhoneStartupL@CPhoneUIController@@UAEXXZ @ 223 NONAME ; void CPhoneUIController::HandlePhoneStartupL(void)
+	?SpeedDialL@CPhoneStateIdle@@IAEXABIW4TDialInitiationMethod@1@@Z @ 224 NONAME ; void CPhoneStateIdle::SpeedDialL(unsigned int const &, enum CPhoneStateIdle::TDialInitiationMethod)
+	?SetTouchPaneButtonEnabled@CPhoneState@@IAEXH@Z @ 225 NONAME ; void CPhoneState::SetTouchPaneButtonEnabled(int)
+	?SetPhoneEngine@CPhoneStateMachine@@UAEXPAVMPEPhoneModel@@@Z @ 226 NONAME ; void CPhoneStateMachine::SetPhoneEngine(class MPEPhoneModel *)
+	?SpeedDialCanceledL@CPhoneStateIdle@@IAEXABI@Z @ 227 NONAME ; void CPhoneStateIdle::SpeedDialCanceledL(unsigned int const &)
+	?CloseDTMFEditorL@CPhoneState@@IAEXXZ @ 228 NONAME ; void CPhoneState::CloseDTMFEditorL(void)
+	?SetTouchPaneVisible@CPhoneState@@IAEXH@Z @ 229 NONAME ; void CPhoneState::SetTouchPaneVisible(int)
+	?HandlePhoneFocusLostEventL@CPhoneUIController@@UAEXXZ @ 230 NONAME ; void CPhoneUIController::HandlePhoneFocusLostEventL(void)
+	?HandleKeyLockEnabled@CPhoneStateIncoming@@UAEXH@Z @ 231 NONAME ; void CPhoneStateIncoming::HandleKeyLockEnabled(int)
+	??0CPhoneStateMachine@@IAE@PAVMPhoneViewCommandHandle@@@Z @ 232 NONAME ; CPhoneStateMachine::CPhoneStateMachine(class MPhoneViewCommandHandle *)
+	??1CPhoneStateStartup@@UAE@XZ @ 233 NONAME ; CPhoneStateStartup::~CPhoneStateStartup(void)
+	?HandleKeyMessageL@CPhoneState@@UAEXW4TPhoneKeyEventMessages@MPhoneKeyEvents@@W4TKeyCode@@@Z @ 234 NONAME ; void CPhoneState::HandleKeyMessageL(enum MPhoneKeyEvents::TPhoneKeyEventMessages, enum TKeyCode)
+	?HandlePEConstructionReadyL@CPhoneStateStartup@@QAEXH@Z @ 235 NONAME ; void CPhoneStateStartup::HandlePEConstructionReadyL(int)
+	?HandlePropertyChangedL@CPhoneStateInCall@@EAEXABVTUid@@IH@Z @ 236 NONAME ; void CPhoneStateInCall::HandlePropertyChangedL(class TUid const &, unsigned int, int)
 
--- a/phoneapp/phoneuicontrol/eabi/phoneuicontrolu.def	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuicontrol/eabi/phoneuicontrolu.def	Fri Mar 12 15:42:40 2010 +0200
@@ -28,445 +28,448 @@
 	_ZN11CPhoneState17IsAnyQueryActiveLEv @ 27 NONAME
 	_ZN11CPhoneState17SetCallHeaderTypeEN14CBubbleManager19TPhoneCallTypeFlagsE @ 28 NONAME
 	_ZN11CPhoneState17SetHandsfreeModeLEi @ 29 NONAME
-	_ZN11CPhoneState18BeginTransEffectLCE21TStateTransEffectType @ 30 NONAME
-	_ZN11CPhoneState18DisplayIdleScreenLEv @ 31 NONAME
-	_ZN11CPhoneState18GetRemoteInfoDataLEiR6TDes16 @ 32 NONAME
-	_ZN11CPhoneState18HandleDtmfKeyToneLERK9TKeyEvent10TEventCode @ 33 NONAME
-	_ZN11CPhoneState18HandleSystemEventLERK8TWsEvent @ 34 NONAME
-	_ZN11CPhoneState18IsNumberEntryUsedLEv @ 35 NONAME
-	_ZN11CPhoneState19CompleteSatRequestLEi @ 36 NONAME
-	_ZN11CPhoneState19DialMultimediaCallLEv @ 37 NONAME
-	_ZN11CPhoneState19HandleCenRepChangeLERK4TUidj @ 38 NONAME
-	_ZN11CPhoneState19HandlePhoneStartupLEv @ 39 NONAME
-	_ZN11CPhoneState19SendGlobalInfoNoteLEi @ 40 NONAME
-	_ZN11CPhoneState19SetBTHandsfreeModeLEi @ 41 NONAME
-	_ZN11CPhoneState19SetDivertIndicationEi @ 42 NONAME
-	_ZN11CPhoneState19SetTouchPaneButtonsEi @ 43 NONAME
-	_ZN11CPhoneState19SetTouchPaneVisibleEi @ 44 NONAME
-	_ZN11CPhoneState19ShowNumberBusyNoteLEv @ 45 NONAME
-	_ZN11CPhoneState20CallFromNumberEntryLEv @ 46 NONAME
-	_ZN11CPhoneState20DecreaseAudioVolumeLEv @ 47 NONAME
-	_ZN11CPhoneState20HandleDisconnectingLEi @ 48 NONAME
-	_ZN11CPhoneState20HandleKeyLockEnabledEi @ 49 NONAME
-	_ZN11CPhoneState20HandleRemConCommandLE25TRemConCoreApiOperationId26TRemConCoreApiButtonAction @ 50 NONAME
-	_ZN11CPhoneState20IncreaseAudioVolumeLEv @ 51 NONAME
-	_ZN11CPhoneState20SendGlobalErrorNoteLEi @ 52 NONAME
-	_ZN11CPhoneState21IsNumberEntryVisibleLEv @ 53 NONAME
-	_ZN11CPhoneState21UpdateRemoteInfoDataLEi @ 54 NONAME
-	_ZN11CPhoneState22CloseCustomizedDialerLEv @ 55 NONAME
-	_ZN11CPhoneState22DeleteTouchPaneButtonsEv @ 56 NONAME
-	_ZN11CPhoneState22HandleForegroundEventLEi @ 57 NONAME
-	_ZN11CPhoneState22HandleNumericKeyEventLERK9TKeyEvent10TEventCode @ 58 NONAME
-	_ZN11CPhoneState22HandlePropertyChangedLERK4TUidji @ 59 NONAME
-	_ZN11CPhoneState22OnlyHashInNumberEntryLEv @ 60 NONAME
-	_ZN11CPhoneState22PhoneNumberFromEntryLCEv @ 61 NONAME
-	_ZN11CPhoneState22SendGlobalWarningNoteLEi @ 62 NONAME
-	_ZN11CPhoneState22StartShowSecurityNoteLEv @ 63 NONAME
-	_ZN11CPhoneState23HandleAudioMuteChangedLEv @ 64 NONAME
-	_ZN11CPhoneState23HandleKeyPressDurationLE8TKeyCode25TTimeIntervalMicroSeconds @ 65 NONAME
-	_ZN11CPhoneState23HandleNumberEntryEditedEv @ 66 NONAME
-	_ZN11CPhoneState23SetRingingTonePlaybackLEi @ 67 NONAME
-	_ZN11CPhoneState23UpdateSingleActiveCallLEi @ 68 NONAME
-	_ZN11CPhoneState24HandleCreateNumberEntryLERK9TKeyEvent10TEventCode @ 69 NONAME
-	_ZN11CPhoneState24HandleEnvironmentChangeLEi @ 70 NONAME
-	_ZN11CPhoneState24StartAlsLineChangeTimerLEv @ 71 NONAME
-	_ZN11CPhoneState24StoreNumberEntryContentLEv @ 72 NONAME
-	_ZN11CPhoneState24UpdateInCallContextMenuLEv @ 73 NONAME
-	_ZN11CPhoneState25HandleAudioOutputChangedLEv @ 74 NONAME
-	_ZN11CPhoneState25HandleNumberEntryClearedLEv @ 75 NONAME
-	_ZN11CPhoneState25HandlePhoneEngineMessageLEii @ 76 NONAME
-	_ZN11CPhoneState25SetNumberEntryVisibilityLEi @ 77 NONAME
-	_ZN11CPhoneState25SetTouchPaneButtonEnabledEi @ 78 NONAME
-	_ZN11CPhoneState26HandleIdleForegroundEventLEv @ 79 NONAME
-	_ZN11CPhoneState26HandlePhoneFocusLostEventLEv @ 80 NONAME
-	_ZN11CPhoneState26IsNumberEntryContentStoredEv @ 81 NONAME
-	_ZN11CPhoneState26RestoreNumberEntryContentLEv @ 82 NONAME
-	_ZN11CPhoneState26SetTouchPaneButtonDisabledEi @ 83 NONAME
-	_ZN11CPhoneState26UpdateIncomingContextMenuLEi @ 84 NONAME
-	_ZN11CPhoneState26UpdateSilenceButtonDimmingEv @ 85 NONAME
-	_ZN11CPhoneState27DisplayCallTerminationNoteLEv @ 86 NONAME
-	_ZN11CPhoneState27HandlePhoneForegroundEventLEv @ 87 NONAME
-	_ZN11CPhoneState27RetainPreviousKeylockStateLEv @ 88 NONAME
-	_ZN11CPhoneState28CheckDisableHWKeysAndCallUILEv @ 89 NONAME
-	_ZN11CPhoneState28ClearNumberEntryContentCacheEv @ 90 NONAME
-	_ZN11CPhoneState28SetupIdleScreenInBackgroundLEv @ 91 NONAME
-	_ZN11CPhoneState29DisplayHeaderForCallComingInLEii @ 92 NONAME
-	_ZN11CPhoneState29DisplayHeaderForOutgoingCallLEi @ 93 NONAME
-	_ZN11CPhoneState30CheckIfShowCallTerminationNoteEv @ 94 NONAME
-	_ZN11CPhoneState30CustomizedDialerCbaResourceIdLEv @ 95 NONAME
-	_ZN11CPhoneState31CustomizedDialerMenuResourceIdLEv @ 96 NONAME
-	_ZN11CPhoneState34CaptureKeysDuringCallNotificationLEi @ 97 NONAME
-	_ZN11CPhoneState34SetCallHeaderTextsForCallComingInLEiiP28TPhoneCmdParamCallHeaderData @ 98 NONAME
-	_ZN11CPhoneState35IsAlphanumericSupportedAndCharInputERK9TKeyEvent @ 99 NONAME
-	_ZN11CPhoneState38CheckIfRestoreNEContentAfterDtmfDialerEv @ 100 NONAME
-	_ZN11CPhoneState43IsSimStateNotPresentWithSecurityModeEnabledEv @ 101 NONAME
-	_ZN11CPhoneState7IsSimOkEv @ 102 NONAME
-	_ZN11CPhoneState9ShowNoteLEi @ 103 NONAME
-	_ZN11CPhoneStateC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 104 NONAME
-	_ZN11CPhoneStateC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 105 NONAME
-	_ZN11CPhoneStateD0Ev @ 106 NONAME
-	_ZN11CPhoneStateD1Ev @ 107 NONAME
-	_ZN11CPhoneStateD2Ev @ 108 NONAME
-	_ZN15CPhoneStateIdle10ConstructLEv @ 109 NONAME
-	_ZN15CPhoneStateIdle10SpeedDialLERKjNS_21TDialInitiationMethodE @ 110 NONAME
-	_ZN15CPhoneStateIdle14DialVoiceCallLEv @ 111 NONAME
-	_ZN15CPhoneStateIdle14HandleCommandLEi @ 112 NONAME
-	_ZN15CPhoneStateIdle14HandleDialingLEi @ 113 NONAME
-	_ZN15CPhoneStateIdle15HandleKeyEventLERK9TKeyEvent10TEventCode @ 114 NONAME
-	_ZN15CPhoneStateIdle15ProcessCommandLEi @ 115 NONAME
-	_ZN15CPhoneStateIdle17DisplayCallSetupLEi @ 116 NONAME
-	_ZN15CPhoneStateIdle17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 117 NONAME
-	_ZN15CPhoneStateIdle18HandleSendCommandLEv @ 118 NONAME
-	_ZN15CPhoneStateIdle18SpeedDialCanceledLERKj @ 119 NONAME
-	_ZN15CPhoneStateIdle19DialMultimediaCallLEv @ 120 NONAME
-	_ZN15CPhoneStateIdle20DisplayIncomingCallLEi @ 121 NONAME
-	_ZN15CPhoneStateIdle20HandleRemConCommandLE25TRemConCoreApiOperationId26TRemConCoreApiButtonAction @ 122 NONAME
-	_ZN15CPhoneStateIdle22OnlyHashInNumberEntryLEv @ 123 NONAME
-	_ZN15CPhoneStateIdle25HandleNumberEntryClearedLEv @ 124 NONAME
-	_ZN15CPhoneStateIdle25HandleNumberLongKeyPressLEv @ 125 NONAME
-	_ZN15CPhoneStateIdle25HandlePhoneEngineMessageLEii @ 126 NONAME
-	_ZN15CPhoneStateIdle26HandleIdleForegroundEventLEv @ 127 NONAME
-	_ZN15CPhoneStateIdle26HandlePhoneFocusLostEventLEv @ 128 NONAME
-	_ZN15CPhoneStateIdle27HandlePhoneForegroundEventLEv @ 129 NONAME
-	_ZN15CPhoneStateIdle5DialLERK7TDesC1616TPhoneNumberTypeNS_21TDialInitiationMethodE @ 130 NONAME
-	_ZN15CPhoneStateIdleC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 131 NONAME
-	_ZN15CPhoneStateIdleC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 132 NONAME
-	_ZN15CPhoneStateIdleD0Ev @ 133 NONAME
-	_ZN15CPhoneStateIdleD1Ev @ 134 NONAME
-	_ZN15CPhoneStateIdleD2Ev @ 135 NONAME
-	_ZN16CPhoneCbaManager10UpdateCbaLEi @ 136 NONAME
-	_ZN16CPhoneCbaManager18UpdateIncomingCbaLEi @ 137 NONAME
-	_ZN16CPhoneCbaManager7SetCbaLEi @ 138 NONAME
-	_ZN17CPhoneStateHandle17ViewCommandHandleEv @ 139 NONAME
-	_ZN17CPhoneStateHandle8InstanceEv @ 140 NONAME
-	_ZN17CPhoneStateInCall10ConstructLEv @ 141 NONAME
-	_ZN17CPhoneStateInCall10UpdateCbaLEi @ 142 NONAME
-	_ZN17CPhoneStateInCall11HandleIdleLEi @ 143 NONAME
-	_ZN17CPhoneStateInCall12OpenMenuBarLEv @ 144 NONAME
-	_ZN17CPhoneStateInCall14HandleCommandLEi @ 145 NONAME
-	_ZN17CPhoneStateInCall15CloseDtmfQueryLEv @ 146 NONAME
-	_ZN17CPhoneStateInCall15GetRingingCallLEv @ 147 NONAME
-	_ZN17CPhoneStateInCall16UpdateInCallCbaLEv @ 148 NONAME
-	_ZN17CPhoneStateInCall17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 149 NONAME
-	_ZN17CPhoneStateInCall18CallFetchedNumberLERK7TDesC16 @ 150 NONAME
-	_ZN17CPhoneStateInCall18CreateNumberEntryLEv @ 151 NONAME
-	_ZN17CPhoneStateInCall18IsVideoCallActiveLEv @ 152 NONAME
-	_ZN17CPhoneStateInCall19IsVideoCallRingingLEv @ 153 NONAME
-	_ZN17CPhoneStateInCall19LaunchNewCallQueryLEv @ 154 NONAME
-	_ZN17CPhoneStateInCall23DisconnectOutgoingCallLEv @ 155 NONAME
-	_ZN17CPhoneStateInCall25HandleNumberEntryClearedLEv @ 156 NONAME
-	_ZN17CPhoneStateInCall25HandlePhoneEngineMessageLEii @ 157 NONAME
-	_ZN17CPhoneStateInCall34PhoneNumberAvailableInPhoneEngineLEi @ 158 NONAME
-	_ZN17CPhoneStateInCallC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 159 NONAME
-	_ZN17CPhoneStateInCallC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 160 NONAME
-	_ZN17CPhoneStateInCallD0Ev @ 161 NONAME
-	_ZN17CPhoneStateInCallD1Ev @ 162 NONAME
-	_ZN17CPhoneStateInCallD2Ev @ 163 NONAME
-	_ZN18CPhoneStateMachine11ChangeStateEi @ 164 NONAME
-	_ZN18CPhoneStateMachine11PhoneEngineEv @ 165 NONAME
-	_ZN18CPhoneStateMachine12PhoneStorageEv @ 166 NONAME
-	_ZN18CPhoneStateMachine14SetPhoneEngineEP13MPEPhoneModel @ 167 NONAME
-	_ZN18CPhoneStateMachine15PhoneEngineInfoEv @ 168 NONAME
-	_ZN18CPhoneStateMachine18CreatePhoneEngineLER14MEngineMonitor @ 169 NONAME
-	_ZN18CPhoneStateMachine22SendPhoneEngineMessageEi @ 170 NONAME
-	_ZN18CPhoneStateMachine5StateEv @ 171 NONAME
-	_ZN18CPhoneStateMachine9SetCallIdEi @ 172 NONAME
-	_ZN18CPhoneStateMachineC1EP23MPhoneViewCommandHandle @ 173 NONAME
-	_ZN18CPhoneStateMachineC2EP23MPhoneViewCommandHandle @ 174 NONAME
-	_ZN18CPhoneStateMachineD0Ev @ 175 NONAME
-	_ZN18CPhoneStateMachineD1Ev @ 176 NONAME
-	_ZN18CPhoneStateMachineD2Ev @ 177 NONAME
-	_ZN18CPhoneStateStartup10ConstructLEv @ 178 NONAME
-	_ZN18CPhoneStateStartup15HandleKeyEventLERK9TKeyEvent10TEventCode @ 179 NONAME
-	_ZN18CPhoneStateStartup17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 180 NONAME
-	_ZN18CPhoneStateStartup18HandleDtmfKeyToneLERK9TKeyEvent10TEventCode @ 181 NONAME
-	_ZN18CPhoneStateStartup19HandlePhoneStartupLEv @ 182 NONAME
-	_ZN18CPhoneStateStartup24HandleCreateNumberEntryLERK9TKeyEvent10TEventCode @ 183 NONAME
-	_ZN18CPhoneStateStartup25HandlePhoneEngineMessageLEii @ 184 NONAME
-	_ZN18CPhoneStateStartup26HandleIdleForegroundEventLEv @ 185 NONAME
-	_ZN18CPhoneStateStartup4NewLEP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 186 NONAME
-	_ZN18CPhoneStateStartupC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 187 NONAME
-	_ZN18CPhoneStateStartupC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 188 NONAME
-	_ZN18CPhoneStateStartupD0Ev @ 189 NONAME
-	_ZN18CPhoneStateStartupD1Ev @ 190 NONAME
-	_ZN18CPhoneStateStartupD2Ev @ 191 NONAME
-	_ZN18CPhoneUIController11HandleErrorERK12TPEErrorInfo @ 192 NONAME
-	_ZN18CPhoneUIController13HandleMessageEii @ 193 NONAME
-	_ZN18CPhoneUIController14HandleCommandLEi @ 194 NONAME
-	_ZN18CPhoneUIController15DynInitMenuBarLEiP11CEikMenuBar @ 195 NONAME
-	_ZN18CPhoneUIController15HandleKeyEventLERK9TKeyEvent10TEventCode @ 196 NONAME
-	_ZN18CPhoneUIController15ProcessCommandLEi @ 197 NONAME
-	_ZN18CPhoneUIController16DynInitMenuPaneLEiP12CEikMenuPane @ 198 NONAME
-	_ZN18CPhoneUIController18HandleSystemEventLERK8TWsEvent @ 199 NONAME
-	_ZN18CPhoneUIController19HandlePhoneStartupLEv @ 200 NONAME
-	_ZN18CPhoneUIController20HandleKeyLockEnabledEi @ 201 NONAME
-	_ZN18CPhoneUIController22HandleForegroundEventLEi @ 202 NONAME
-	_ZN18CPhoneUIController24HandleEnvironmentChangeLEi @ 203 NONAME
-	_ZN18CPhoneUIController26HandleIdleForegroundEventLEv @ 204 NONAME
-	_ZN18CPhoneUIController26HandlePhoneFocusLostEventLEv @ 205 NONAME
-	_ZN18CPhoneUIController27HandlePhoneForegroundEventLEv @ 206 NONAME
-	_ZN18CPhoneUIController4NewLEP23MPhoneViewCommandHandle @ 207 NONAME
-	_ZN18CPhoneUIControllerD0Ev @ 208 NONAME
-	_ZN18CPhoneUIControllerD1Ev @ 209 NONAME
-	_ZN18CPhoneUIControllerD2Ev @ 210 NONAME
-	_ZN19CPhoneStateIncoming10ConstructLEv @ 211 NONAME
-	_ZN19CPhoneStateIncoming14HandleCommandLEi @ 212 NONAME
-	_ZN19CPhoneStateIncoming15HandleKeyEventLERK9TKeyEvent10TEventCode @ 213 NONAME
-	_ZN19CPhoneStateIncoming16DynInitMenuPaneLEiP12CEikMenuPane @ 214 NONAME
-	_ZN19CPhoneStateIncoming17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 215 NONAME
-	_ZN19CPhoneStateIncoming20HandleKeyLockEnabledEi @ 216 NONAME
-	_ZN19CPhoneStateIncoming23HandleAudioPlayStoppedLEv @ 217 NONAME
-	_ZN19CPhoneStateIncoming23HandleKeyPressDurationLE8TKeyCode25TTimeIntervalMicroSeconds @ 218 NONAME
-	_ZN19CPhoneStateIncoming25HandleNumberEntryClearedLEv @ 219 NONAME
-	_ZN19CPhoneStateIncoming25HandlePhoneEngineMessageLEii @ 220 NONAME
-	_ZN19CPhoneStateIncomingC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 221 NONAME
-	_ZN19CPhoneStateIncomingC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 222 NONAME
-	_ZN19CPhoneStateIncomingD0Ev @ 223 NONAME
-	_ZN19CPhoneStateIncomingD1Ev @ 224 NONAME
-	_ZN19CPhoneStateIncomingD2Ev @ 225 NONAME
-	_ZN20CPhoneReconnectQuery19ShowReconnectQueryLEi @ 226 NONAME
-	_ZN20CPhoneReconnectQuery9InstanceLEv @ 227 NONAME
-	_ZN20CPhoneStateCallSetup10ConstructLEv @ 228 NONAME
-	_ZN20CPhoneStateCallSetup10UpdateCbaLEi @ 229 NONAME
-	_ZN20CPhoneStateCallSetup12OpenMenuBarLEv @ 230 NONAME
-	_ZN20CPhoneStateCallSetup14HandleCommandLEi @ 231 NONAME
-	_ZN20CPhoneStateCallSetup15HandleKeyEventLERK9TKeyEvent10TEventCode @ 232 NONAME
-	_ZN20CPhoneStateCallSetup16UpdateInCallCbaLEv @ 233 NONAME
-	_ZN20CPhoneStateCallSetup17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 234 NONAME
-	_ZN20CPhoneStateCallSetup24HandleCreateNumberEntryLERK9TKeyEvent10TEventCode @ 235 NONAME
-	_ZN20CPhoneStateCallSetup25HandleNumberEntryClearedLEv @ 236 NONAME
-	_ZN20CPhoneStateCallSetup25HandlePhoneEngineMessageLEii @ 237 NONAME
-	_ZN20CPhoneStateCallSetupC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 238 NONAME
-	_ZN20CPhoneStateCallSetupC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 239 NONAME
-	_ZN20CPhoneStateCallSetupD0Ev @ 240 NONAME
-	_ZN20CPhoneStateCallSetupD1Ev @ 241 NONAME
-	_ZN20CPhoneStateCallSetupD2Ev @ 242 NONAME
-	_ZNK11CPhoneState11IsKeyLockOnEv @ 243 NONAME
-	_ZNK11CPhoneState12IsAutoLockOnEv @ 244 NONAME
-	_ZNK11CPhoneState14IsSwivelClosedEv @ 245 NONAME
-	_ZNK11CPhoneState17GetBlockedKeyListEv @ 246 NONAME
-	_ZNK11CPhoneState17IsMenuBarVisibleLEv @ 247 NONAME
-	_ZNK11CPhoneState18TopAppIsDisplayedLEv @ 248 NONAME
-	_ZNK11CPhoneState20IsDTMFEditorVisibleLEv @ 249 NONAME
-	_ZNK11CPhoneState23NeedToSendToBackgroundLEv @ 250 NONAME
-	_ZNK11CPhoneState25IsOnScreenDialerSupportedEv @ 251 NONAME
-	_ZNK11CPhoneState26IsCustomizedDialerVisibleLEv @ 252 NONAME
-	_ZNK11CPhoneState8SimStateEv @ 253 NONAME
-	_ZNK15CPhoneStateIdle17IsSpeedDialNumberERK7TDesC16 @ 254 NONAME
-	_ZTI11CPhoneState @ 255 NONAME
-	_ZTI15CPhoneStateIdle @ 256 NONAME
-	_ZTI17CPhoneStateHandle @ 257 NONAME
-	_ZTI17CPhoneStateInCall @ 258 NONAME
-	_ZTI18CPhoneStateMachine @ 259 NONAME
-	_ZTI18CPhoneStateStartup @ 260 NONAME
-	_ZTI18CPhoneUIController @ 261 NONAME
-	_ZTI19CPhoneStateIncoming @ 262 NONAME
-	_ZTI20CPhoneReconnectQuery @ 263 NONAME
-	_ZTI20CPhoneStateCallSetup @ 264 NONAME
-	_ZTI23CPhoneDtmfWaitCharTimer @ 265 NONAME
-	_ZTI23CPhoneKeyEventForwarder @ 266 NONAME
-	_ZTI24CPhoneSystemEventHandler @ 267 NONAME
-	_ZTI26CPhoneRemoteControlHandler @ 268 NONAME
-	_ZTI27CPhoneBtaaDisconnectHandler @ 269 NONAME
-	_ZTV11CPhoneState @ 270 NONAME
-	_ZTV15CPhoneStateIdle @ 271 NONAME
-	_ZTV17CPhoneStateHandle @ 272 NONAME
-	_ZTV17CPhoneStateInCall @ 273 NONAME
-	_ZTV18CPhoneStateMachine @ 274 NONAME
-	_ZTV18CPhoneStateStartup @ 275 NONAME
-	_ZTV18CPhoneUIController @ 276 NONAME
-	_ZTV19CPhoneStateIncoming @ 277 NONAME
-	_ZTV20CPhoneReconnectQuery @ 278 NONAME
-	_ZTV20CPhoneStateCallSetup @ 279 NONAME
-	_ZTV23CPhoneDtmfWaitCharTimer @ 280 NONAME
-	_ZTV23CPhoneKeyEventForwarder @ 281 NONAME
-	_ZTV24CPhoneSystemEventHandler @ 282 NONAME
-	_ZTV26CPhoneRemoteControlHandler @ 283 NONAME
-	_ZTV27CPhoneBtaaDisconnectHandler @ 284 NONAME
-	_ZThn12_N11CPhoneState15DynInitMenuBarLEiP11CEikMenuBar @ 285 NONAME
-	_ZThn12_N11CPhoneState16DynInitMenuPaneLEiP12CEikMenuPane @ 286 NONAME
-	_ZThn12_N11CPhoneState18HandleSystemEventLERK8TWsEvent @ 287 NONAME
-	_ZThn12_N11CPhoneState19HandleCenRepChangeLERK4TUidj @ 288 NONAME
-	_ZThn12_N11CPhoneState19HandlePhoneStartupLEv @ 289 NONAME
-	_ZThn12_N11CPhoneState20HandleKeyLockEnabledEi @ 290 NONAME
-	_ZThn12_N11CPhoneState22HandleForegroundEventLEi @ 291 NONAME
-	_ZThn12_N11CPhoneState22HandlePropertyChangedLERK4TUidji @ 292 NONAME
-	_ZThn12_N11CPhoneState24HandleEnvironmentChangeLEi @ 293 NONAME
-	_ZThn12_N11CPhoneState26HandleIdleForegroundEventLEv @ 294 NONAME
-	_ZThn12_N11CPhoneState26HandlePhoneFocusLostEventLEv @ 295 NONAME
-	_ZThn12_N11CPhoneState27HandlePhoneForegroundEventLEv @ 296 NONAME
-	_ZThn12_N11CPhoneStateD0Ev @ 297 NONAME
-	_ZThn12_N11CPhoneStateD1Ev @ 298 NONAME
-	_ZThn12_N15CPhoneStateIdle26HandleIdleForegroundEventLEv @ 299 NONAME
-	_ZThn12_N15CPhoneStateIdle26HandlePhoneFocusLostEventLEv @ 300 NONAME
-	_ZThn12_N15CPhoneStateIdle27HandlePhoneForegroundEventLEv @ 301 NONAME
-	_ZThn12_N15CPhoneStateIdleD0Ev @ 302 NONAME
-	_ZThn12_N15CPhoneStateIdleD1Ev @ 303 NONAME
-	_ZThn12_N17CPhoneStateInCallD0Ev @ 304 NONAME
-	_ZThn12_N17CPhoneStateInCallD1Ev @ 305 NONAME
-	_ZThn12_N18CPhoneStateStartup19HandlePhoneStartupLEv @ 306 NONAME
-	_ZThn12_N18CPhoneStateStartup26HandleIdleForegroundEventLEv @ 307 NONAME
-	_ZThn12_N18CPhoneStateStartupD0Ev @ 308 NONAME
-	_ZThn12_N18CPhoneStateStartupD1Ev @ 309 NONAME
-	_ZThn12_N18CPhoneUIController15DynInitMenuBarLEiP11CEikMenuBar @ 310 NONAME
-	_ZThn12_N18CPhoneUIController16DynInitMenuPaneLEiP12CEikMenuPane @ 311 NONAME
-	_ZThn12_N18CPhoneUIController18HandleSystemEventLERK8TWsEvent @ 312 NONAME
-	_ZThn12_N18CPhoneUIController19HandlePhoneStartupLEv @ 313 NONAME
-	_ZThn12_N18CPhoneUIController20HandleKeyLockEnabledEi @ 314 NONAME
-	_ZThn12_N18CPhoneUIController22HandleForegroundEventLEi @ 315 NONAME
-	_ZThn12_N18CPhoneUIController24HandleEnvironmentChangeLEi @ 316 NONAME
-	_ZThn12_N18CPhoneUIController26HandleIdleForegroundEventLEv @ 317 NONAME
-	_ZThn12_N18CPhoneUIController26HandlePhoneFocusLostEventLEv @ 318 NONAME
-	_ZThn12_N18CPhoneUIController27HandlePhoneForegroundEventLEv @ 319 NONAME
-	_ZThn12_N18CPhoneUIControllerD0Ev @ 320 NONAME
-	_ZThn12_N18CPhoneUIControllerD1Ev @ 321 NONAME
-	_ZThn12_N19CPhoneStateIncoming16DynInitMenuPaneLEiP12CEikMenuPane @ 322 NONAME
-	_ZThn12_N19CPhoneStateIncoming20HandleKeyLockEnabledEi @ 323 NONAME
-	_ZThn12_N19CPhoneStateIncomingD0Ev @ 324 NONAME
-	_ZThn12_N19CPhoneStateIncomingD1Ev @ 325 NONAME
-	_ZThn12_N20CPhoneStateCallSetupD0Ev @ 326 NONAME
-	_ZThn12_N20CPhoneStateCallSetupD1Ev @ 327 NONAME
-	_ZThn16_N11CPhoneState14HandleCommandLEi @ 328 NONAME
-	_ZThn16_N11CPhoneState15ProcessCommandLEi @ 329 NONAME
-	_ZThn16_N11CPhoneStateD0Ev @ 330 NONAME
-	_ZThn16_N11CPhoneStateD1Ev @ 331 NONAME
-	_ZThn16_N15CPhoneStateIdle14HandleCommandLEi @ 332 NONAME
-	_ZThn16_N15CPhoneStateIdle15ProcessCommandLEi @ 333 NONAME
-	_ZThn16_N15CPhoneStateIdleD0Ev @ 334 NONAME
-	_ZThn16_N15CPhoneStateIdleD1Ev @ 335 NONAME
-	_ZThn16_N17CPhoneStateInCall14HandleCommandLEi @ 336 NONAME
-	_ZThn16_N17CPhoneStateInCallD0Ev @ 337 NONAME
-	_ZThn16_N17CPhoneStateInCallD1Ev @ 338 NONAME
-	_ZThn16_N18CPhoneStateStartupD0Ev @ 339 NONAME
-	_ZThn16_N18CPhoneStateStartupD1Ev @ 340 NONAME
-	_ZThn16_N18CPhoneUIController14HandleCommandLEi @ 341 NONAME
-	_ZThn16_N18CPhoneUIController15ProcessCommandLEi @ 342 NONAME
-	_ZThn16_N18CPhoneUIControllerD0Ev @ 343 NONAME
-	_ZThn16_N18CPhoneUIControllerD1Ev @ 344 NONAME
-	_ZThn16_N19CPhoneStateIncoming14HandleCommandLEi @ 345 NONAME
-	_ZThn16_N19CPhoneStateIncomingD0Ev @ 346 NONAME
-	_ZThn16_N19CPhoneStateIncomingD1Ev @ 347 NONAME
-	_ZThn16_N20CPhoneStateCallSetup14HandleCommandLEi @ 348 NONAME
-	_ZThn16_N20CPhoneStateCallSetupD0Ev @ 349 NONAME
-	_ZThn16_N20CPhoneStateCallSetupD1Ev @ 350 NONAME
-	_ZThn20_N11CPhoneState20HandleRemConCommandLE25TRemConCoreApiOperationId26TRemConCoreApiButtonAction @ 351 NONAME
-	_ZThn20_N11CPhoneStateD0Ev @ 352 NONAME
-	_ZThn20_N11CPhoneStateD1Ev @ 353 NONAME
-	_ZThn20_N15CPhoneStateIdle20HandleRemConCommandLE25TRemConCoreApiOperationId26TRemConCoreApiButtonAction @ 354 NONAME
-	_ZThn20_N15CPhoneStateIdleD0Ev @ 355 NONAME
-	_ZThn20_N15CPhoneStateIdleD1Ev @ 356 NONAME
-	_ZThn20_N17CPhoneStateInCallD0Ev @ 357 NONAME
-	_ZThn20_N17CPhoneStateInCallD1Ev @ 358 NONAME
-	_ZThn20_N18CPhoneStateStartupD0Ev @ 359 NONAME
-	_ZThn20_N18CPhoneStateStartupD1Ev @ 360 NONAME
-	_ZThn20_N19CPhoneStateIncomingD0Ev @ 361 NONAME
-	_ZThn20_N19CPhoneStateIncomingD1Ev @ 362 NONAME
-	_ZThn20_N20CPhoneStateCallSetupD0Ev @ 363 NONAME
-	_ZThn20_N20CPhoneStateCallSetupD1Ev @ 364 NONAME
-	_ZThn24_N11CPhoneState19SetDivertIndicationEi @ 365 NONAME
-	_ZThn24_N11CPhoneStateD0Ev @ 366 NONAME
-	_ZThn24_N11CPhoneStateD1Ev @ 367 NONAME
-	_ZThn24_N15CPhoneStateIdleD0Ev @ 368 NONAME
-	_ZThn24_N15CPhoneStateIdleD1Ev @ 369 NONAME
-	_ZThn24_N17CPhoneStateInCallD0Ev @ 370 NONAME
-	_ZThn24_N17CPhoneStateInCallD1Ev @ 371 NONAME
-	_ZThn24_N18CPhoneStateStartupD0Ev @ 372 NONAME
-	_ZThn24_N18CPhoneStateStartupD1Ev @ 373 NONAME
-	_ZThn24_N19CPhoneStateIncomingD0Ev @ 374 NONAME
-	_ZThn24_N19CPhoneStateIncomingD1Ev @ 375 NONAME
-	_ZThn24_N20CPhoneStateCallSetupD0Ev @ 376 NONAME
-	_ZThn24_N20CPhoneStateCallSetupD1Ev @ 377 NONAME
-	_ZThn28_NK11CPhoneState17GetBlockedKeyListEv @ 378 NONAME
-	_ZThn32_N11CPhoneState25HandleNumberEntryClearedLEv @ 379 NONAME
-	_ZThn32_N15CPhoneStateIdle25HandleNumberEntryClearedLEv @ 380 NONAME
-	_ZThn32_N17CPhoneStateInCall25HandleNumberEntryClearedLEv @ 381 NONAME
-	_ZThn32_N19CPhoneStateIncoming25HandleNumberEntryClearedLEv @ 382 NONAME
-	_ZThn32_N20CPhoneStateCallSetup25HandleNumberEntryClearedLEv @ 383 NONAME
-	_ZThn36_N11CPhoneState23HandleNumberEntryEditedEv @ 384 NONAME
-	_ZThn36_N11CPhoneStateD0Ev @ 385 NONAME
-	_ZThn36_N11CPhoneStateD1Ev @ 386 NONAME
-	_ZThn36_N15CPhoneStateIdleD0Ev @ 387 NONAME
-	_ZThn36_N15CPhoneStateIdleD1Ev @ 388 NONAME
-	_ZThn36_N17CPhoneStateInCallD0Ev @ 389 NONAME
-	_ZThn36_N17CPhoneStateInCallD1Ev @ 390 NONAME
-	_ZThn36_N18CPhoneStateStartupD0Ev @ 391 NONAME
-	_ZThn36_N18CPhoneStateStartupD1Ev @ 392 NONAME
-	_ZThn36_N19CPhoneStateIncomingD0Ev @ 393 NONAME
-	_ZThn36_N19CPhoneStateIncomingD1Ev @ 394 NONAME
-	_ZThn36_N20CPhoneStateCallSetupD0Ev @ 395 NONAME
-	_ZThn36_N20CPhoneStateCallSetupD1Ev @ 396 NONAME
-	_ZThn40_NK11CPhoneState11IsKeyLockOnEv @ 397 NONAME
-	_ZThn40_NK11CPhoneState12IsAutoLockOnEv @ 398 NONAME
-	_ZThn4_N11CPhoneState12HandleErrorLERK12TPEErrorInfo @ 399 NONAME
-	_ZThn4_N11CPhoneState25HandlePhoneEngineMessageLEii @ 400 NONAME
-	_ZThn4_N11CPhoneStateD0Ev @ 401 NONAME
-	_ZThn4_N11CPhoneStateD1Ev @ 402 NONAME
-	_ZThn4_N15CPhoneStateIdle25HandlePhoneEngineMessageLEii @ 403 NONAME
-	_ZThn4_N15CPhoneStateIdleD0Ev @ 404 NONAME
-	_ZThn4_N15CPhoneStateIdleD1Ev @ 405 NONAME
-	_ZThn4_N17CPhoneStateInCall25HandlePhoneEngineMessageLEii @ 406 NONAME
-	_ZThn4_N17CPhoneStateInCallD0Ev @ 407 NONAME
-	_ZThn4_N17CPhoneStateInCallD1Ev @ 408 NONAME
-	_ZThn4_N18CPhoneStateMachine11ChangeStateEi @ 409 NONAME
-	_ZThn4_N18CPhoneStateMachine11PhoneEngineEv @ 410 NONAME
-	_ZThn4_N18CPhoneStateMachine12PhoneStorageEv @ 411 NONAME
-	_ZThn4_N18CPhoneStateMachine14SetPhoneEngineEP13MPEPhoneModel @ 412 NONAME
-	_ZThn4_N18CPhoneStateMachine15PhoneEngineInfoEv @ 413 NONAME
-	_ZThn4_N18CPhoneStateMachine18CreatePhoneEngineLER14MEngineMonitor @ 414 NONAME
-	_ZThn4_N18CPhoneStateMachine22SendPhoneEngineMessageEi @ 415 NONAME
-	_ZThn4_N18CPhoneStateMachine5StateEv @ 416 NONAME
-	_ZThn4_N18CPhoneStateMachine9SetCallIdEi @ 417 NONAME
-	_ZThn4_N18CPhoneStateMachineD0Ev @ 418 NONAME
-	_ZThn4_N18CPhoneStateMachineD1Ev @ 419 NONAME
-	_ZThn4_N18CPhoneStateStartup25HandlePhoneEngineMessageLEii @ 420 NONAME
-	_ZThn4_N18CPhoneStateStartupD0Ev @ 421 NONAME
-	_ZThn4_N18CPhoneStateStartupD1Ev @ 422 NONAME
-	_ZThn4_N18CPhoneUIController11HandleErrorERK12TPEErrorInfo @ 423 NONAME
-	_ZThn4_N18CPhoneUIController13HandleMessageEii @ 424 NONAME
-	_ZThn4_N19CPhoneStateIncoming25HandlePhoneEngineMessageLEii @ 425 NONAME
-	_ZThn4_N19CPhoneStateIncomingD0Ev @ 426 NONAME
-	_ZThn4_N19CPhoneStateIncomingD1Ev @ 427 NONAME
-	_ZThn4_N20CPhoneStateCallSetup25HandlePhoneEngineMessageLEii @ 428 NONAME
-	_ZThn4_N20CPhoneStateCallSetupD0Ev @ 429 NONAME
-	_ZThn4_N20CPhoneStateCallSetupD1Ev @ 430 NONAME
-	_ZThn8_N11CPhoneState14IsNoteVisibleLEv @ 431 NONAME
-	_ZThn8_N11CPhoneState15HandleKeyEventLERK9TKeyEvent10TEventCode @ 432 NONAME
-	_ZThn8_N11CPhoneState15HandleLongHashLEv @ 433 NONAME
-	_ZThn8_N11CPhoneState17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 434 NONAME
-	_ZThn8_N11CPhoneState18HandleDtmfKeyToneLERK9TKeyEvent10TEventCode @ 435 NONAME
-	_ZThn8_N11CPhoneState23HandleKeyPressDurationLE8TKeyCode25TTimeIntervalMicroSeconds @ 436 NONAME
-	_ZThn8_N11CPhoneState24HandleCreateNumberEntryLERK9TKeyEvent10TEventCode @ 437 NONAME
-	_ZThn8_N11CPhoneState35IsAlphanumericSupportedAndCharInputERK9TKeyEvent @ 438 NONAME
-	_ZThn8_N11CPhoneStateD0Ev @ 439 NONAME
-	_ZThn8_N11CPhoneStateD1Ev @ 440 NONAME
-	_ZThn8_N15CPhoneStateIdle15HandleKeyEventLERK9TKeyEvent10TEventCode @ 441 NONAME
-	_ZThn8_N15CPhoneStateIdle17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 442 NONAME
-	_ZThn8_N15CPhoneStateIdleD0Ev @ 443 NONAME
-	_ZThn8_N15CPhoneStateIdleD1Ev @ 444 NONAME
-	_ZThn8_N17CPhoneStateInCall17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 445 NONAME
-	_ZThn8_N17CPhoneStateInCallD0Ev @ 446 NONAME
-	_ZThn8_N17CPhoneStateInCallD1Ev @ 447 NONAME
-	_ZThn8_N18CPhoneStateStartup15HandleKeyEventLERK9TKeyEvent10TEventCode @ 448 NONAME
-	_ZThn8_N18CPhoneStateStartup17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 449 NONAME
-	_ZThn8_N18CPhoneStateStartup18HandleDtmfKeyToneLERK9TKeyEvent10TEventCode @ 450 NONAME
-	_ZThn8_N18CPhoneStateStartup24HandleCreateNumberEntryLERK9TKeyEvent10TEventCode @ 451 NONAME
-	_ZThn8_N18CPhoneStateStartupD0Ev @ 452 NONAME
-	_ZThn8_N18CPhoneStateStartupD1Ev @ 453 NONAME
-	_ZThn8_N18CPhoneUIController15HandleKeyEventLERK9TKeyEvent10TEventCode @ 454 NONAME
-	_ZThn8_N18CPhoneUIControllerD0Ev @ 455 NONAME
-	_ZThn8_N18CPhoneUIControllerD1Ev @ 456 NONAME
-	_ZThn8_N19CPhoneStateIncoming15HandleKeyEventLERK9TKeyEvent10TEventCode @ 457 NONAME
-	_ZThn8_N19CPhoneStateIncoming17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 458 NONAME
-	_ZThn8_N19CPhoneStateIncoming23HandleKeyPressDurationLE8TKeyCode25TTimeIntervalMicroSeconds @ 459 NONAME
-	_ZThn8_N19CPhoneStateIncomingD0Ev @ 460 NONAME
-	_ZThn8_N19CPhoneStateIncomingD1Ev @ 461 NONAME
-	_ZThn8_N20CPhoneStateCallSetup15HandleKeyEventLERK9TKeyEvent10TEventCode @ 462 NONAME
-	_ZThn8_N20CPhoneStateCallSetup17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 463 NONAME
-	_ZThn8_N20CPhoneStateCallSetup24HandleCreateNumberEntryLERK9TKeyEvent10TEventCode @ 464 NONAME
-	_ZThn8_N20CPhoneStateCallSetupD0Ev @ 465 NONAME
-	_ZThn8_N20CPhoneStateCallSetupD1Ev @ 466 NONAME
-	_ZThn8_NK11CPhoneState17IsMenuBarVisibleLEv @ 467 NONAME
-	_ZN11CPhoneState17SetToolbarDimmingEi @ 468 NONAME
-	_ZN11CPhoneState34SetToolbarButtonLoudspeakerEnabledEv @ 469 NONAME
-	_ZNK11CPhoneState26IsDialingExtensionInFocusLEv @ 470 NONAME
+	_ZN11CPhoneState17SetToolbarDimmingEi @ 30 NONAME
+	_ZN11CPhoneState18BeginTransEffectLCE21TStateTransEffectType @ 31 NONAME
+	_ZN11CPhoneState18DisplayIdleScreenLEv @ 32 NONAME
+	_ZN11CPhoneState18GetRemoteInfoDataLEiR6TDes16 @ 33 NONAME
+	_ZN11CPhoneState18HandleDtmfKeyToneLERK9TKeyEvent10TEventCode @ 34 NONAME
+	_ZN11CPhoneState18HandleSystemEventLERK8TWsEvent @ 35 NONAME
+	_ZN11CPhoneState18IsNumberEntryUsedLEv @ 36 NONAME
+	_ZN11CPhoneState19CompleteSatRequestLEi @ 37 NONAME
+	_ZN11CPhoneState19DialMultimediaCallLEv @ 38 NONAME
+	_ZN11CPhoneState19HandleCenRepChangeLERK4TUidj @ 39 NONAME
+	_ZN11CPhoneState19HandlePhoneStartupLEv @ 40 NONAME
+	_ZN11CPhoneState19SendGlobalInfoNoteLEi @ 41 NONAME
+	_ZN11CPhoneState19SetBTHandsfreeModeLEi @ 42 NONAME
+	_ZN11CPhoneState19SetDivertIndicationEi @ 43 NONAME
+	_ZN11CPhoneState19SetTouchPaneButtonsEi @ 44 NONAME
+	_ZN11CPhoneState19SetTouchPaneVisibleEi @ 45 NONAME
+	_ZN11CPhoneState19ShowNumberBusyNoteLEv @ 46 NONAME
+	_ZN11CPhoneState20CallFromNumberEntryLEv @ 47 NONAME
+	_ZN11CPhoneState20DecreaseAudioVolumeLEv @ 48 NONAME
+	_ZN11CPhoneState20HandleDisconnectingLEi @ 49 NONAME
+	_ZN11CPhoneState20HandleKeyLockEnabledEi @ 50 NONAME
+	_ZN11CPhoneState20HandleRemConCommandLE25TRemConCoreApiOperationId26TRemConCoreApiButtonAction @ 51 NONAME
+	_ZN11CPhoneState20IncreaseAudioVolumeLEv @ 52 NONAME
+	_ZN11CPhoneState20SendGlobalErrorNoteLEi @ 53 NONAME
+	_ZN11CPhoneState21IsNumberEntryVisibleLEv @ 54 NONAME
+	_ZN11CPhoneState21UpdateRemoteInfoDataLEi @ 55 NONAME
+	_ZN11CPhoneState22CloseCustomizedDialerLEv @ 56 NONAME
+	_ZN11CPhoneState22DeleteTouchPaneButtonsEv @ 57 NONAME
+	_ZN11CPhoneState22HandleForegroundEventLEi @ 58 NONAME
+	_ZN11CPhoneState22HandleNumericKeyEventLERK9TKeyEvent10TEventCode @ 59 NONAME
+	_ZN11CPhoneState22HandlePropertyChangedLERK4TUidji @ 60 NONAME
+	_ZN11CPhoneState22OnlyHashInNumberEntryLEv @ 61 NONAME
+	_ZN11CPhoneState22PhoneNumberFromEntryLCEv @ 62 NONAME
+	_ZN11CPhoneState22SendGlobalWarningNoteLEi @ 63 NONAME
+	_ZN11CPhoneState22StartShowSecurityNoteLEv @ 64 NONAME
+	_ZN11CPhoneState23HandleAudioMuteChangedLEv @ 65 NONAME
+	_ZN11CPhoneState23HandleKeyPressDurationLE8TKeyCode25TTimeIntervalMicroSeconds @ 66 NONAME
+	_ZN11CPhoneState23HandleNumberEntryEditedEv @ 67 NONAME
+	_ZN11CPhoneState23SetRingingTonePlaybackLEi @ 68 NONAME
+	_ZN11CPhoneState23UpdateSingleActiveCallLEi @ 69 NONAME
+	_ZN11CPhoneState24HandleCreateNumberEntryLERK9TKeyEvent10TEventCode @ 70 NONAME
+	_ZN11CPhoneState24HandleEnvironmentChangeLEi @ 71 NONAME
+	_ZN11CPhoneState24StartAlsLineChangeTimerLEv @ 72 NONAME
+	_ZN11CPhoneState24StoreNumberEntryContentLEv @ 73 NONAME
+	_ZN11CPhoneState24UpdateInCallContextMenuLEv @ 74 NONAME
+	_ZN11CPhoneState25HandleAudioOutputChangedLEv @ 75 NONAME
+	_ZN11CPhoneState25HandleNumberEntryClearedLEv @ 76 NONAME
+	_ZN11CPhoneState25HandlePhoneEngineMessageLEii @ 77 NONAME
+	_ZN11CPhoneState25SetNumberEntryVisibilityLEi @ 78 NONAME
+	_ZN11CPhoneState25SetTouchPaneButtonEnabledEi @ 79 NONAME
+	_ZN11CPhoneState26HandleIdleForegroundEventLEv @ 80 NONAME
+	_ZN11CPhoneState26HandlePhoneFocusLostEventLEv @ 81 NONAME
+	_ZN11CPhoneState26IsNumberEntryContentStoredEv @ 82 NONAME
+	_ZN11CPhoneState26RestoreNumberEntryContentLEv @ 83 NONAME
+	_ZN11CPhoneState26SetTouchPaneButtonDisabledEi @ 84 NONAME
+	_ZN11CPhoneState26UpdateIncomingContextMenuLEi @ 85 NONAME
+	_ZN11CPhoneState26UpdateSilenceButtonDimmingEv @ 86 NONAME
+	_ZN11CPhoneState27DisplayCallTerminationNoteLEv @ 87 NONAME
+	_ZN11CPhoneState27HandlePhoneForegroundEventLEv @ 88 NONAME
+	_ZN11CPhoneState27RetainPreviousKeylockStateLEv @ 89 NONAME
+	_ZN11CPhoneState28CheckDisableHWKeysAndCallUILEv @ 90 NONAME
+	_ZN11CPhoneState28ClearNumberEntryContentCacheEv @ 91 NONAME
+	_ZN11CPhoneState28SetupIdleScreenInBackgroundLEv @ 92 NONAME
+	_ZN11CPhoneState29DisplayHeaderForCallComingInLEii @ 93 NONAME
+	_ZN11CPhoneState29DisplayHeaderForOutgoingCallLEi @ 94 NONAME
+	_ZN11CPhoneState30CheckIfShowCallTerminationNoteEv @ 95 NONAME
+	_ZN11CPhoneState30CustomizedDialerCbaResourceIdLEv @ 96 NONAME
+	_ZN11CPhoneState31CustomizedDialerMenuResourceIdLEv @ 97 NONAME
+	_ZN11CPhoneState34CaptureKeysDuringCallNotificationLEi @ 98 NONAME
+	_ZN11CPhoneState34SetCallHeaderTextsForCallComingInLEiiP28TPhoneCmdParamCallHeaderData @ 99 NONAME
+	_ZN11CPhoneState34SetToolbarButtonLoudspeakerEnabledEv @ 100 NONAME
+	_ZN11CPhoneState35IsAlphanumericSupportedAndCharInputERK9TKeyEvent @ 101 NONAME
+	_ZN11CPhoneState38CheckIfRestoreNEContentAfterDtmfDialerEv @ 102 NONAME
+	_ZN11CPhoneState43IsSimStateNotPresentWithSecurityModeEnabledEv @ 103 NONAME
+	_ZN11CPhoneState7IsSimOkEv @ 104 NONAME
+	_ZN11CPhoneState9ShowNoteLEi @ 105 NONAME
+	_ZN11CPhoneStateC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 106 NONAME
+	_ZN11CPhoneStateC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 107 NONAME
+	_ZN11CPhoneStateD0Ev @ 108 NONAME
+	_ZN11CPhoneStateD1Ev @ 109 NONAME
+	_ZN11CPhoneStateD2Ev @ 110 NONAME
+	_ZN15CPhoneStateIdle10ConstructLEv @ 111 NONAME
+	_ZN15CPhoneStateIdle10SpeedDialLERKjNS_21TDialInitiationMethodE @ 112 NONAME
+	_ZN15CPhoneStateIdle14DialVoiceCallLEv @ 113 NONAME
+	_ZN15CPhoneStateIdle14HandleCommandLEi @ 114 NONAME
+	_ZN15CPhoneStateIdle14HandleDialingLEi @ 115 NONAME
+	_ZN15CPhoneStateIdle15HandleKeyEventLERK9TKeyEvent10TEventCode @ 116 NONAME
+	_ZN15CPhoneStateIdle15ProcessCommandLEi @ 117 NONAME
+	_ZN15CPhoneStateIdle17DisplayCallSetupLEi @ 118 NONAME
+	_ZN15CPhoneStateIdle17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 119 NONAME
+	_ZN15CPhoneStateIdle18HandleSendCommandLEv @ 120 NONAME
+	_ZN15CPhoneStateIdle18SpeedDialCanceledLERKj @ 121 NONAME
+	_ZN15CPhoneStateIdle19DialMultimediaCallLEv @ 122 NONAME
+	_ZN15CPhoneStateIdle20DisplayIncomingCallLEi @ 123 NONAME
+	_ZN15CPhoneStateIdle20HandleRemConCommandLE25TRemConCoreApiOperationId26TRemConCoreApiButtonAction @ 124 NONAME
+	_ZN15CPhoneStateIdle22OnlyHashInNumberEntryLEv @ 125 NONAME
+	_ZN15CPhoneStateIdle25HandleNumberEntryClearedLEv @ 126 NONAME
+	_ZN15CPhoneStateIdle25HandleNumberLongKeyPressLEv @ 127 NONAME
+	_ZN15CPhoneStateIdle25HandlePhoneEngineMessageLEii @ 128 NONAME
+	_ZN15CPhoneStateIdle26HandleIdleForegroundEventLEv @ 129 NONAME
+	_ZN15CPhoneStateIdle26HandlePhoneFocusLostEventLEv @ 130 NONAME
+	_ZN15CPhoneStateIdle27HandlePhoneForegroundEventLEv @ 131 NONAME
+	_ZN15CPhoneStateIdle5DialLERK7TDesC1616TPhoneNumberTypeNS_21TDialInitiationMethodE @ 132 NONAME
+	_ZN15CPhoneStateIdleC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 133 NONAME
+	_ZN15CPhoneStateIdleC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 134 NONAME
+	_ZN15CPhoneStateIdleD0Ev @ 135 NONAME
+	_ZN15CPhoneStateIdleD1Ev @ 136 NONAME
+	_ZN15CPhoneStateIdleD2Ev @ 137 NONAME
+	_ZN16CPhoneCbaManager10UpdateCbaLEi @ 138 NONAME
+	_ZN16CPhoneCbaManager18UpdateIncomingCbaLEi @ 139 NONAME
+	_ZN16CPhoneCbaManager7SetCbaLEi @ 140 NONAME
+	_ZN17CPhoneStateHandle17ViewCommandHandleEv @ 141 NONAME
+	_ZN17CPhoneStateHandle8InstanceEv @ 142 NONAME
+	_ZN17CPhoneStateInCall10ConstructLEv @ 143 NONAME
+	_ZN17CPhoneStateInCall10UpdateCbaLEi @ 144 NONAME
+	_ZN17CPhoneStateInCall11HandleIdleLEi @ 145 NONAME
+	_ZN17CPhoneStateInCall12OpenMenuBarLEv @ 146 NONAME
+	_ZN17CPhoneStateInCall14HandleCommandLEi @ 147 NONAME
+	_ZN17CPhoneStateInCall15CloseDtmfQueryLEv @ 148 NONAME
+	_ZN17CPhoneStateInCall15GetRingingCallLEv @ 149 NONAME
+	_ZN17CPhoneStateInCall16UpdateInCallCbaLEv @ 150 NONAME
+	_ZN17CPhoneStateInCall17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 151 NONAME
+	_ZN17CPhoneStateInCall18CallFetchedNumberLERK7TDesC16 @ 152 NONAME
+	_ZN17CPhoneStateInCall18CreateNumberEntryLEv @ 153 NONAME
+	_ZN17CPhoneStateInCall18IsVideoCallActiveLEv @ 154 NONAME
+	_ZN17CPhoneStateInCall19IsVideoCallRingingLEv @ 155 NONAME
+	_ZN17CPhoneStateInCall19LaunchNewCallQueryLEv @ 156 NONAME
+	_ZN17CPhoneStateInCall23DisconnectOutgoingCallLEv @ 157 NONAME
+	_ZN17CPhoneStateInCall25HandleNumberEntryClearedLEv @ 158 NONAME
+	_ZN17CPhoneStateInCall25HandlePhoneEngineMessageLEii @ 159 NONAME
+	_ZN17CPhoneStateInCall34PhoneNumberAvailableInPhoneEngineLEi @ 160 NONAME
+	_ZN17CPhoneStateInCallC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 161 NONAME
+	_ZN17CPhoneStateInCallC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 162 NONAME
+	_ZN17CPhoneStateInCallD0Ev @ 163 NONAME
+	_ZN17CPhoneStateInCallD1Ev @ 164 NONAME
+	_ZN17CPhoneStateInCallD2Ev @ 165 NONAME
+	_ZN18CPhoneStateMachine11ChangeStateEi @ 166 NONAME
+	_ZN18CPhoneStateMachine11PhoneEngineEv @ 167 NONAME
+	_ZN18CPhoneStateMachine12PhoneStorageEv @ 168 NONAME
+	_ZN18CPhoneStateMachine14SetPhoneEngineEP13MPEPhoneModel @ 169 NONAME
+	_ZN18CPhoneStateMachine15PhoneEngineInfoEv @ 170 NONAME
+	_ZN18CPhoneStateMachine18CreatePhoneEngineLER14MEngineMonitor @ 171 NONAME
+	_ZN18CPhoneStateMachine22SendPhoneEngineMessageEi @ 172 NONAME
+	_ZN18CPhoneStateMachine5StateEv @ 173 NONAME
+	_ZN18CPhoneStateMachine9SetCallIdEi @ 174 NONAME
+	_ZN18CPhoneStateMachineC1EP23MPhoneViewCommandHandle @ 175 NONAME
+	_ZN18CPhoneStateMachineC2EP23MPhoneViewCommandHandle @ 176 NONAME
+	_ZN18CPhoneStateMachineD0Ev @ 177 NONAME
+	_ZN18CPhoneStateMachineD1Ev @ 178 NONAME
+	_ZN18CPhoneStateMachineD2Ev @ 179 NONAME
+	_ZN18CPhoneStateStartup10ConstructLEv @ 180 NONAME
+	_ZN18CPhoneStateStartup15HandleKeyEventLERK9TKeyEvent10TEventCode @ 181 NONAME
+	_ZN18CPhoneStateStartup17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 182 NONAME
+	_ZN18CPhoneStateStartup18HandleDtmfKeyToneLERK9TKeyEvent10TEventCode @ 183 NONAME
+	_ZN18CPhoneStateStartup19HandlePhoneStartupLEv @ 184 NONAME
+	_ZN18CPhoneStateStartup24HandleCreateNumberEntryLERK9TKeyEvent10TEventCode @ 185 NONAME
+	_ZN18CPhoneStateStartup25HandlePhoneEngineMessageLEii @ 186 NONAME
+	_ZN18CPhoneStateStartup26HandleIdleForegroundEventLEv @ 187 NONAME
+	_ZN18CPhoneStateStartup4NewLEP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 188 NONAME
+	_ZN18CPhoneStateStartupC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 189 NONAME
+	_ZN18CPhoneStateStartupC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 190 NONAME
+	_ZN18CPhoneStateStartupD0Ev @ 191 NONAME
+	_ZN18CPhoneStateStartupD1Ev @ 192 NONAME
+	_ZN18CPhoneStateStartupD2Ev @ 193 NONAME
+	_ZN18CPhoneUIController11HandleErrorERK12TPEErrorInfo @ 194 NONAME
+	_ZN18CPhoneUIController13HandleMessageEii @ 195 NONAME
+	_ZN18CPhoneUIController14HandleCommandLEi @ 196 NONAME
+	_ZN18CPhoneUIController15DynInitMenuBarLEiP11CEikMenuBar @ 197 NONAME
+	_ZN18CPhoneUIController15HandleKeyEventLERK9TKeyEvent10TEventCode @ 198 NONAME
+	_ZN18CPhoneUIController15ProcessCommandLEi @ 199 NONAME
+	_ZN18CPhoneUIController16DynInitMenuPaneLEiP12CEikMenuPane @ 200 NONAME
+	_ZN18CPhoneUIController18HandleSystemEventLERK8TWsEvent @ 201 NONAME
+	_ZN18CPhoneUIController19HandlePhoneStartupLEv @ 202 NONAME
+	_ZN18CPhoneUIController20HandleKeyLockEnabledEi @ 203 NONAME
+	_ZN18CPhoneUIController22HandleForegroundEventLEi @ 204 NONAME
+	_ZN18CPhoneUIController24HandleEnvironmentChangeLEi @ 205 NONAME
+	_ZN18CPhoneUIController26HandleIdleForegroundEventLEv @ 206 NONAME
+	_ZN18CPhoneUIController26HandlePhoneFocusLostEventLEv @ 207 NONAME
+	_ZN18CPhoneUIController27HandlePhoneForegroundEventLEv @ 208 NONAME
+	_ZN18CPhoneUIController4NewLEP23MPhoneViewCommandHandle @ 209 NONAME
+	_ZN18CPhoneUIControllerD0Ev @ 210 NONAME
+	_ZN18CPhoneUIControllerD1Ev @ 211 NONAME
+	_ZN18CPhoneUIControllerD2Ev @ 212 NONAME
+	_ZN19CPhoneStateIncoming10ConstructLEv @ 213 NONAME
+	_ZN19CPhoneStateIncoming14HandleCommandLEi @ 214 NONAME
+	_ZN19CPhoneStateIncoming15HandleKeyEventLERK9TKeyEvent10TEventCode @ 215 NONAME
+	_ZN19CPhoneStateIncoming16DynInitMenuPaneLEiP12CEikMenuPane @ 216 NONAME
+	_ZN19CPhoneStateIncoming17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 217 NONAME
+	_ZN19CPhoneStateIncoming20HandleKeyLockEnabledEi @ 218 NONAME
+	_ZN19CPhoneStateIncoming23HandleAudioPlayStoppedLEv @ 219 NONAME
+	_ZN19CPhoneStateIncoming23HandleKeyPressDurationLE8TKeyCode25TTimeIntervalMicroSeconds @ 220 NONAME
+	_ZN19CPhoneStateIncoming25HandleNumberEntryClearedLEv @ 221 NONAME
+	_ZN19CPhoneStateIncoming25HandlePhoneEngineMessageLEii @ 222 NONAME
+	_ZN19CPhoneStateIncomingC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 223 NONAME
+	_ZN19CPhoneStateIncomingC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 224 NONAME
+	_ZN19CPhoneStateIncomingD0Ev @ 225 NONAME
+	_ZN19CPhoneStateIncomingD1Ev @ 226 NONAME
+	_ZN19CPhoneStateIncomingD2Ev @ 227 NONAME
+	_ZN20CPhoneReconnectQuery19ShowReconnectQueryLEi @ 228 NONAME
+	_ZN20CPhoneReconnectQuery9InstanceLEv @ 229 NONAME
+	_ZN20CPhoneStateCallSetup10ConstructLEv @ 230 NONAME
+	_ZN20CPhoneStateCallSetup10UpdateCbaLEi @ 231 NONAME
+	_ZN20CPhoneStateCallSetup12OpenMenuBarLEv @ 232 NONAME
+	_ZN20CPhoneStateCallSetup14HandleCommandLEi @ 233 NONAME
+	_ZN20CPhoneStateCallSetup15HandleKeyEventLERK9TKeyEvent10TEventCode @ 234 NONAME
+	_ZN20CPhoneStateCallSetup16UpdateInCallCbaLEv @ 235 NONAME
+	_ZN20CPhoneStateCallSetup17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 236 NONAME
+	_ZN20CPhoneStateCallSetup24HandleCreateNumberEntryLERK9TKeyEvent10TEventCode @ 237 NONAME
+	_ZN20CPhoneStateCallSetup25HandleNumberEntryClearedLEv @ 238 NONAME
+	_ZN20CPhoneStateCallSetup25HandlePhoneEngineMessageLEii @ 239 NONAME
+	_ZN20CPhoneStateCallSetupC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 240 NONAME
+	_ZN20CPhoneStateCallSetupC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 241 NONAME
+	_ZN20CPhoneStateCallSetupD0Ev @ 242 NONAME
+	_ZN20CPhoneStateCallSetupD1Ev @ 243 NONAME
+	_ZN20CPhoneStateCallSetupD2Ev @ 244 NONAME
+	_ZNK11CPhoneState11IsKeyLockOnEv @ 245 NONAME
+	_ZNK11CPhoneState12IsAutoLockOnEv @ 246 NONAME
+	_ZNK11CPhoneState14IsSwivelClosedEv @ 247 NONAME
+	_ZNK11CPhoneState17GetBlockedKeyListEv @ 248 NONAME
+	_ZNK11CPhoneState17IsMenuBarVisibleLEv @ 249 NONAME
+	_ZNK11CPhoneState18TopAppIsDisplayedLEv @ 250 NONAME
+	_ZNK11CPhoneState20IsDTMFEditorVisibleLEv @ 251 NONAME
+	_ZNK11CPhoneState25IsOnScreenDialerSupportedEv @ 252 NONAME
+	_ZNK11CPhoneState26IsCustomizedDialerVisibleLEv @ 253 NONAME
+	_ZNK11CPhoneState26IsDialingExtensionInFocusLEv @ 254 NONAME
+	_ZNK11CPhoneState28NeedToReturnToForegroundAppLEv @ 255 NONAME
+	_ZNK11CPhoneState8SimStateEv @ 256 NONAME
+	_ZNK15CPhoneStateIdle17IsSpeedDialNumberERK7TDesC16 @ 257 NONAME
+	_ZTI11CPhoneState @ 258 NONAME
+	_ZTI15CPhoneStateIdle @ 259 NONAME
+	_ZTI17CPhoneStateHandle @ 260 NONAME
+	_ZTI17CPhoneStateInCall @ 261 NONAME
+	_ZTI18CPhoneStateMachine @ 262 NONAME
+	_ZTI18CPhoneStateStartup @ 263 NONAME
+	_ZTI18CPhoneUIController @ 264 NONAME
+	_ZTI19CPhoneStateIncoming @ 265 NONAME
+	_ZTI20CPhoneReconnectQuery @ 266 NONAME
+	_ZTI20CPhoneStateCallSetup @ 267 NONAME
+	_ZTI23CPhoneDtmfWaitCharTimer @ 268 NONAME
+	_ZTI23CPhoneKeyEventForwarder @ 269 NONAME
+	_ZTI24CPhoneSystemEventHandler @ 270 NONAME
+	_ZTI26CPhoneRemoteControlHandler @ 271 NONAME
+	_ZTI27CPhoneBtaaDisconnectHandler @ 272 NONAME
+	_ZTV11CPhoneState @ 273 NONAME
+	_ZTV15CPhoneStateIdle @ 274 NONAME
+	_ZTV17CPhoneStateHandle @ 275 NONAME
+	_ZTV17CPhoneStateInCall @ 276 NONAME
+	_ZTV18CPhoneStateMachine @ 277 NONAME
+	_ZTV18CPhoneStateStartup @ 278 NONAME
+	_ZTV18CPhoneUIController @ 279 NONAME
+	_ZTV19CPhoneStateIncoming @ 280 NONAME
+	_ZTV20CPhoneReconnectQuery @ 281 NONAME
+	_ZTV20CPhoneStateCallSetup @ 282 NONAME
+	_ZTV23CPhoneDtmfWaitCharTimer @ 283 NONAME
+	_ZTV23CPhoneKeyEventForwarder @ 284 NONAME
+	_ZTV24CPhoneSystemEventHandler @ 285 NONAME
+	_ZTV26CPhoneRemoteControlHandler @ 286 NONAME
+	_ZTV27CPhoneBtaaDisconnectHandler @ 287 NONAME
+	_ZThn12_N11CPhoneState15DynInitMenuBarLEiP11CEikMenuBar @ 288 NONAME
+	_ZThn12_N11CPhoneState16DynInitMenuPaneLEiP12CEikMenuPane @ 289 NONAME
+	_ZThn12_N11CPhoneState18HandleSystemEventLERK8TWsEvent @ 290 NONAME
+	_ZThn12_N11CPhoneState19HandleCenRepChangeLERK4TUidj @ 291 NONAME
+	_ZThn12_N11CPhoneState19HandlePhoneStartupLEv @ 292 NONAME
+	_ZThn12_N11CPhoneState20HandleKeyLockEnabledEi @ 293 NONAME
+	_ZThn12_N11CPhoneState22HandleForegroundEventLEi @ 294 NONAME
+	_ZThn12_N11CPhoneState22HandlePropertyChangedLERK4TUidji @ 295 NONAME
+	_ZThn12_N11CPhoneState24HandleEnvironmentChangeLEi @ 296 NONAME
+	_ZThn12_N11CPhoneState26HandleIdleForegroundEventLEv @ 297 NONAME
+	_ZThn12_N11CPhoneState26HandlePhoneFocusLostEventLEv @ 298 NONAME
+	_ZThn12_N11CPhoneState27HandlePhoneForegroundEventLEv @ 299 NONAME
+	_ZThn12_N11CPhoneStateD0Ev @ 300 NONAME
+	_ZThn12_N11CPhoneStateD1Ev @ 301 NONAME
+	_ZThn12_N15CPhoneStateIdle26HandleIdleForegroundEventLEv @ 302 NONAME
+	_ZThn12_N15CPhoneStateIdle26HandlePhoneFocusLostEventLEv @ 303 NONAME
+	_ZThn12_N15CPhoneStateIdle27HandlePhoneForegroundEventLEv @ 304 NONAME
+	_ZThn12_N15CPhoneStateIdleD0Ev @ 305 NONAME
+	_ZThn12_N15CPhoneStateIdleD1Ev @ 306 NONAME
+	_ZThn12_N17CPhoneStateInCallD0Ev @ 307 NONAME
+	_ZThn12_N17CPhoneStateInCallD1Ev @ 308 NONAME
+	_ZThn12_N18CPhoneStateStartup19HandlePhoneStartupLEv @ 309 NONAME
+	_ZThn12_N18CPhoneStateStartup26HandleIdleForegroundEventLEv @ 310 NONAME
+	_ZThn12_N18CPhoneStateStartupD0Ev @ 311 NONAME
+	_ZThn12_N18CPhoneStateStartupD1Ev @ 312 NONAME
+	_ZThn12_N18CPhoneUIController15DynInitMenuBarLEiP11CEikMenuBar @ 313 NONAME
+	_ZThn12_N18CPhoneUIController16DynInitMenuPaneLEiP12CEikMenuPane @ 314 NONAME
+	_ZThn12_N18CPhoneUIController18HandleSystemEventLERK8TWsEvent @ 315 NONAME
+	_ZThn12_N18CPhoneUIController19HandlePhoneStartupLEv @ 316 NONAME
+	_ZThn12_N18CPhoneUIController20HandleKeyLockEnabledEi @ 317 NONAME
+	_ZThn12_N18CPhoneUIController22HandleForegroundEventLEi @ 318 NONAME
+	_ZThn12_N18CPhoneUIController24HandleEnvironmentChangeLEi @ 319 NONAME
+	_ZThn12_N18CPhoneUIController26HandleIdleForegroundEventLEv @ 320 NONAME
+	_ZThn12_N18CPhoneUIController26HandlePhoneFocusLostEventLEv @ 321 NONAME
+	_ZThn12_N18CPhoneUIController27HandlePhoneForegroundEventLEv @ 322 NONAME
+	_ZThn12_N18CPhoneUIControllerD0Ev @ 323 NONAME
+	_ZThn12_N18CPhoneUIControllerD1Ev @ 324 NONAME
+	_ZThn12_N19CPhoneStateIncoming16DynInitMenuPaneLEiP12CEikMenuPane @ 325 NONAME
+	_ZThn12_N19CPhoneStateIncoming20HandleKeyLockEnabledEi @ 326 NONAME
+	_ZThn12_N19CPhoneStateIncomingD0Ev @ 327 NONAME
+	_ZThn12_N19CPhoneStateIncomingD1Ev @ 328 NONAME
+	_ZThn12_N20CPhoneStateCallSetupD0Ev @ 329 NONAME
+	_ZThn12_N20CPhoneStateCallSetupD1Ev @ 330 NONAME
+	_ZThn16_N11CPhoneState14HandleCommandLEi @ 331 NONAME
+	_ZThn16_N11CPhoneState15ProcessCommandLEi @ 332 NONAME
+	_ZThn16_N11CPhoneStateD0Ev @ 333 NONAME
+	_ZThn16_N11CPhoneStateD1Ev @ 334 NONAME
+	_ZThn16_N15CPhoneStateIdle14HandleCommandLEi @ 335 NONAME
+	_ZThn16_N15CPhoneStateIdle15ProcessCommandLEi @ 336 NONAME
+	_ZThn16_N15CPhoneStateIdleD0Ev @ 337 NONAME
+	_ZThn16_N15CPhoneStateIdleD1Ev @ 338 NONAME
+	_ZThn16_N17CPhoneStateInCall14HandleCommandLEi @ 339 NONAME
+	_ZThn16_N17CPhoneStateInCallD0Ev @ 340 NONAME
+	_ZThn16_N17CPhoneStateInCallD1Ev @ 341 NONAME
+	_ZThn16_N18CPhoneStateStartupD0Ev @ 342 NONAME
+	_ZThn16_N18CPhoneStateStartupD1Ev @ 343 NONAME
+	_ZThn16_N18CPhoneUIController14HandleCommandLEi @ 344 NONAME
+	_ZThn16_N18CPhoneUIController15ProcessCommandLEi @ 345 NONAME
+	_ZThn16_N18CPhoneUIControllerD0Ev @ 346 NONAME
+	_ZThn16_N18CPhoneUIControllerD1Ev @ 347 NONAME
+	_ZThn16_N19CPhoneStateIncoming14HandleCommandLEi @ 348 NONAME
+	_ZThn16_N19CPhoneStateIncomingD0Ev @ 349 NONAME
+	_ZThn16_N19CPhoneStateIncomingD1Ev @ 350 NONAME
+	_ZThn16_N20CPhoneStateCallSetup14HandleCommandLEi @ 351 NONAME
+	_ZThn16_N20CPhoneStateCallSetupD0Ev @ 352 NONAME
+	_ZThn16_N20CPhoneStateCallSetupD1Ev @ 353 NONAME
+	_ZThn20_N11CPhoneState20HandleRemConCommandLE25TRemConCoreApiOperationId26TRemConCoreApiButtonAction @ 354 NONAME
+	_ZThn20_N11CPhoneStateD0Ev @ 355 NONAME
+	_ZThn20_N11CPhoneStateD1Ev @ 356 NONAME
+	_ZThn20_N15CPhoneStateIdle20HandleRemConCommandLE25TRemConCoreApiOperationId26TRemConCoreApiButtonAction @ 357 NONAME
+	_ZThn20_N15CPhoneStateIdleD0Ev @ 358 NONAME
+	_ZThn20_N15CPhoneStateIdleD1Ev @ 359 NONAME
+	_ZThn20_N17CPhoneStateInCallD0Ev @ 360 NONAME
+	_ZThn20_N17CPhoneStateInCallD1Ev @ 361 NONAME
+	_ZThn20_N18CPhoneStateStartupD0Ev @ 362 NONAME
+	_ZThn20_N18CPhoneStateStartupD1Ev @ 363 NONAME
+	_ZThn20_N19CPhoneStateIncomingD0Ev @ 364 NONAME
+	_ZThn20_N19CPhoneStateIncomingD1Ev @ 365 NONAME
+	_ZThn20_N20CPhoneStateCallSetupD0Ev @ 366 NONAME
+	_ZThn20_N20CPhoneStateCallSetupD1Ev @ 367 NONAME
+	_ZThn24_N11CPhoneState19SetDivertIndicationEi @ 368 NONAME
+	_ZThn24_N11CPhoneStateD0Ev @ 369 NONAME
+	_ZThn24_N11CPhoneStateD1Ev @ 370 NONAME
+	_ZThn24_N15CPhoneStateIdleD0Ev @ 371 NONAME
+	_ZThn24_N15CPhoneStateIdleD1Ev @ 372 NONAME
+	_ZThn24_N17CPhoneStateInCallD0Ev @ 373 NONAME
+	_ZThn24_N17CPhoneStateInCallD1Ev @ 374 NONAME
+	_ZThn24_N18CPhoneStateStartupD0Ev @ 375 NONAME
+	_ZThn24_N18CPhoneStateStartupD1Ev @ 376 NONAME
+	_ZThn24_N19CPhoneStateIncomingD0Ev @ 377 NONAME
+	_ZThn24_N19CPhoneStateIncomingD1Ev @ 378 NONAME
+	_ZThn24_N20CPhoneStateCallSetupD0Ev @ 379 NONAME
+	_ZThn24_N20CPhoneStateCallSetupD1Ev @ 380 NONAME
+	_ZThn28_NK11CPhoneState17GetBlockedKeyListEv @ 381 NONAME
+	_ZThn32_N11CPhoneState25HandleNumberEntryClearedLEv @ 382 NONAME
+	_ZThn32_N15CPhoneStateIdle25HandleNumberEntryClearedLEv @ 383 NONAME
+	_ZThn32_N17CPhoneStateInCall25HandleNumberEntryClearedLEv @ 384 NONAME
+	_ZThn32_N19CPhoneStateIncoming25HandleNumberEntryClearedLEv @ 385 NONAME
+	_ZThn32_N20CPhoneStateCallSetup25HandleNumberEntryClearedLEv @ 386 NONAME
+	_ZThn36_N11CPhoneState23HandleNumberEntryEditedEv @ 387 NONAME
+	_ZThn36_N11CPhoneStateD0Ev @ 388 NONAME
+	_ZThn36_N11CPhoneStateD1Ev @ 389 NONAME
+	_ZThn36_N15CPhoneStateIdleD0Ev @ 390 NONAME
+	_ZThn36_N15CPhoneStateIdleD1Ev @ 391 NONAME
+	_ZThn36_N17CPhoneStateInCallD0Ev @ 392 NONAME
+	_ZThn36_N17CPhoneStateInCallD1Ev @ 393 NONAME
+	_ZThn36_N18CPhoneStateStartupD0Ev @ 394 NONAME
+	_ZThn36_N18CPhoneStateStartupD1Ev @ 395 NONAME
+	_ZThn36_N19CPhoneStateIncomingD0Ev @ 396 NONAME
+	_ZThn36_N19CPhoneStateIncomingD1Ev @ 397 NONAME
+	_ZThn36_N20CPhoneStateCallSetupD0Ev @ 398 NONAME
+	_ZThn36_N20CPhoneStateCallSetupD1Ev @ 399 NONAME
+	_ZThn40_NK11CPhoneState11IsKeyLockOnEv @ 400 NONAME
+	_ZThn40_NK11CPhoneState12IsAutoLockOnEv @ 401 NONAME
+	_ZThn4_N11CPhoneState12HandleErrorLERK12TPEErrorInfo @ 402 NONAME
+	_ZThn4_N11CPhoneState25HandlePhoneEngineMessageLEii @ 403 NONAME
+	_ZThn4_N11CPhoneStateD0Ev @ 404 NONAME
+	_ZThn4_N11CPhoneStateD1Ev @ 405 NONAME
+	_ZThn4_N15CPhoneStateIdle25HandlePhoneEngineMessageLEii @ 406 NONAME
+	_ZThn4_N15CPhoneStateIdleD0Ev @ 407 NONAME
+	_ZThn4_N15CPhoneStateIdleD1Ev @ 408 NONAME
+	_ZThn4_N17CPhoneStateInCall25HandlePhoneEngineMessageLEii @ 409 NONAME
+	_ZThn4_N17CPhoneStateInCallD0Ev @ 410 NONAME
+	_ZThn4_N17CPhoneStateInCallD1Ev @ 411 NONAME
+	_ZThn4_N18CPhoneStateMachine11ChangeStateEi @ 412 NONAME
+	_ZThn4_N18CPhoneStateMachine11PhoneEngineEv @ 413 NONAME
+	_ZThn4_N18CPhoneStateMachine12PhoneStorageEv @ 414 NONAME
+	_ZThn4_N18CPhoneStateMachine14SetPhoneEngineEP13MPEPhoneModel @ 415 NONAME
+	_ZThn4_N18CPhoneStateMachine15PhoneEngineInfoEv @ 416 NONAME
+	_ZThn4_N18CPhoneStateMachine18CreatePhoneEngineLER14MEngineMonitor @ 417 NONAME
+	_ZThn4_N18CPhoneStateMachine22SendPhoneEngineMessageEi @ 418 NONAME
+	_ZThn4_N18CPhoneStateMachine5StateEv @ 419 NONAME
+	_ZThn4_N18CPhoneStateMachine9SetCallIdEi @ 420 NONAME
+	_ZThn4_N18CPhoneStateMachineD0Ev @ 421 NONAME
+	_ZThn4_N18CPhoneStateMachineD1Ev @ 422 NONAME
+	_ZThn4_N18CPhoneStateStartup25HandlePhoneEngineMessageLEii @ 423 NONAME
+	_ZThn4_N18CPhoneStateStartupD0Ev @ 424 NONAME
+	_ZThn4_N18CPhoneStateStartupD1Ev @ 425 NONAME
+	_ZThn4_N18CPhoneUIController11HandleErrorERK12TPEErrorInfo @ 426 NONAME
+	_ZThn4_N18CPhoneUIController13HandleMessageEii @ 427 NONAME
+	_ZThn4_N19CPhoneStateIncoming25HandlePhoneEngineMessageLEii @ 428 NONAME
+	_ZThn4_N19CPhoneStateIncomingD0Ev @ 429 NONAME
+	_ZThn4_N19CPhoneStateIncomingD1Ev @ 430 NONAME
+	_ZThn4_N20CPhoneStateCallSetup25HandlePhoneEngineMessageLEii @ 431 NONAME
+	_ZThn4_N20CPhoneStateCallSetupD0Ev @ 432 NONAME
+	_ZThn4_N20CPhoneStateCallSetupD1Ev @ 433 NONAME
+	_ZThn8_N11CPhoneState14IsNoteVisibleLEv @ 434 NONAME
+	_ZThn8_N11CPhoneState15HandleKeyEventLERK9TKeyEvent10TEventCode @ 435 NONAME
+	_ZThn8_N11CPhoneState15HandleLongHashLEv @ 436 NONAME
+	_ZThn8_N11CPhoneState17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 437 NONAME
+	_ZThn8_N11CPhoneState18HandleDtmfKeyToneLERK9TKeyEvent10TEventCode @ 438 NONAME
+	_ZThn8_N11CPhoneState23HandleKeyPressDurationLE8TKeyCode25TTimeIntervalMicroSeconds @ 439 NONAME
+	_ZThn8_N11CPhoneState24HandleCreateNumberEntryLERK9TKeyEvent10TEventCode @ 440 NONAME
+	_ZThn8_N11CPhoneState35IsAlphanumericSupportedAndCharInputERK9TKeyEvent @ 441 NONAME
+	_ZThn8_N11CPhoneStateD0Ev @ 442 NONAME
+	_ZThn8_N11CPhoneStateD1Ev @ 443 NONAME
+	_ZThn8_N15CPhoneStateIdle15HandleKeyEventLERK9TKeyEvent10TEventCode @ 444 NONAME
+	_ZThn8_N15CPhoneStateIdle17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 445 NONAME
+	_ZThn8_N15CPhoneStateIdleD0Ev @ 446 NONAME
+	_ZThn8_N15CPhoneStateIdleD1Ev @ 447 NONAME
+	_ZThn8_N17CPhoneStateInCall17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 448 NONAME
+	_ZThn8_N17CPhoneStateInCallD0Ev @ 449 NONAME
+	_ZThn8_N17CPhoneStateInCallD1Ev @ 450 NONAME
+	_ZThn8_N18CPhoneStateStartup15HandleKeyEventLERK9TKeyEvent10TEventCode @ 451 NONAME
+	_ZThn8_N18CPhoneStateStartup17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 452 NONAME
+	_ZThn8_N18CPhoneStateStartup18HandleDtmfKeyToneLERK9TKeyEvent10TEventCode @ 453 NONAME
+	_ZThn8_N18CPhoneStateStartup24HandleCreateNumberEntryLERK9TKeyEvent10TEventCode @ 454 NONAME
+	_ZThn8_N18CPhoneStateStartupD0Ev @ 455 NONAME
+	_ZThn8_N18CPhoneStateStartupD1Ev @ 456 NONAME
+	_ZThn8_N18CPhoneUIController15HandleKeyEventLERK9TKeyEvent10TEventCode @ 457 NONAME
+	_ZThn8_N18CPhoneUIControllerD0Ev @ 458 NONAME
+	_ZThn8_N18CPhoneUIControllerD1Ev @ 459 NONAME
+	_ZThn8_N19CPhoneStateIncoming15HandleKeyEventLERK9TKeyEvent10TEventCode @ 460 NONAME
+	_ZThn8_N19CPhoneStateIncoming17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 461 NONAME
+	_ZThn8_N19CPhoneStateIncoming23HandleKeyPressDurationLE8TKeyCode25TTimeIntervalMicroSeconds @ 462 NONAME
+	_ZThn8_N19CPhoneStateIncomingD0Ev @ 463 NONAME
+	_ZThn8_N19CPhoneStateIncomingD1Ev @ 464 NONAME
+	_ZThn8_N20CPhoneStateCallSetup15HandleKeyEventLERK9TKeyEvent10TEventCode @ 465 NONAME
+	_ZThn8_N20CPhoneStateCallSetup17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 466 NONAME
+	_ZThn8_N20CPhoneStateCallSetup24HandleCreateNumberEntryLERK9TKeyEvent10TEventCode @ 467 NONAME
+	_ZThn8_N20CPhoneStateCallSetupD0Ev @ 468 NONAME
+	_ZThn8_N20CPhoneStateCallSetupD1Ev @ 469 NONAME
+	_ZThn8_NK11CPhoneState17IsMenuBarVisibleLEv @ 470 NONAME
+	_ZN18CPhoneStateStartup26HandlePEConstructionReadyLEi @ 471 NONAME
+	_ZN17CPhoneStateInCall22HandlePropertyChangedLERK4TUidji @ 472 NONAME
+	_ZThn12_N17CPhoneStateInCall22HandlePropertyChangedLERK4TUidji @ 473 NONAME
 
--- a/phoneapp/phoneuicontrol/inc/cphonestate.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuicontrol/inc/cphonestate.h	Fri Mar 12 15:42:40 2010 +0200
@@ -552,7 +552,7 @@
         * @return boolean value indicating that application needs to be
         *  sent to the background
         */
-        IMPORT_C TBool NeedToSendToBackgroundL() const;
+        IMPORT_C TBool NeedToReturnToForegroundAppL() const;
 
         /**
         * Check if the top application is currently displayed in the foreground
--- a/phoneapp/phoneuicontrol/inc/cphonestateincall.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuicontrol/inc/cphonestateincall.h	Fri Mar 12 15:42:40 2010 +0200
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2005-2010 Nokia Corporation and/or its subsidiary(-ies). 
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -283,6 +283,18 @@
         */
         void HandleVoiceKeyPressL( TPhoneKeyEventMessages aMessage );
         
+        // From CPhoneState
+        /**
+         * This function is called when there is property value change.
+         * @param aCategory Category of the property
+         * @param aKey      Property key that is changed
+         * @param aValue    New property value
+         */
+        IMPORT_C virtual void HandlePropertyChangedL(
+            const TUid& aCategory,
+            const TUint aKey,
+            const TInt aValue );
+
     private:
     
     	/**
--- a/phoneapp/phoneuicontrol/inc/cphonestatestartup.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuicontrol/inc/cphonestatestartup.h	Fri Mar 12 15:42:40 2010 +0200
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). 
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -54,7 +54,7 @@
         * @param aMessage Message from Phone Engine
         * @param aCallId Call id the message concerns
         */
-        IMPORT_C void HandlePhoneEngineMessageL(
+        IMPORT_C virtual void HandlePhoneEngineMessageL(
             const TInt aMessage, 
             TInt aCallId );       
             
@@ -72,6 +72,11 @@
         IMPORT_C virtual void HandlePhoneStartupL();
 
         /**
+        * A message handling function for message EPEMessagePEConstructionReady.
+        * @param aCallId: the call id of the call
+        */
+        IMPORT_C void HandlePEConstructionReadyL( TInt aCallId );
+        /**
          * Indicates when the Idle app is in the foreground.
          */
         IMPORT_C virtual void HandleIdleForegroundEventL();
@@ -106,11 +111,6 @@
         IMPORT_C void HandleDtmfKeyToneL( const TKeyEvent& aKeyEvent,
                 TEventCode aEventCode );
         
-        /**
-        * A message handling function for message EPEMessagePEConstructionReady.
-        * @param aCallId: the call id of the call
-        */
-        void HandlePEConstructionReadyL( TInt aCallId );
         
         /**
         * Starts to shows note.
@@ -129,10 +129,10 @@
         // Provides phone engine startup status
         TBool iPEReady;
 
-    private: // Data
 
         // Provides phone application startup status
         TBool iPhoneReady;
+    private: // Data
         
         // Ownded: idle object to create note.
         CIdle* iCreateNote;
--- a/phoneapp/phoneuicontrol/src/cphonebtaadisconnecthandler.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuicontrol/src/cphonebtaadisconnecthandler.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -97,11 +97,12 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneBtaaDisconnectHandler::Cancel()");
     TRAP_IGNORE( iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveQuery ) );
-    DeleteAll();
-    if ( !iOldMuted && iStateMachine->PhoneEngineInfo()->AudioMute() )
+    if ( !iOldMuted && iStateMachine->PhoneEngineInfo()->AudioMute() &&
+    	ELaunchQuery == iState )
         {
         TRAP_IGNORE ( SetMuteL( EFalse ) );
         }
+	DeleteAll();
     iOldMuted = EFalse;
     }
 
--- a/phoneapp/phoneuicontrol/src/cphonecbamanager.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuicontrol/src/cphonecbamanager.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -131,7 +131,7 @@
         }
 
     // Is numberentry visible
-    else if ( iState->IsNumberEntryUsedL() )
+    else if ( iState->IsNumberEntryUsedL() && iState->IsNumberEntryVisibleL() )
         {
         if ( iState->IsAutoLockOn() || !(iState->IsSimOk()) )
             {
--- a/phoneapp/phoneuicontrol/src/cphonestate.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuicontrol/src/cphonestate.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -1480,13 +1480,13 @@
     }
 
 // -----------------------------------------------------------
-// CPhoneState::NeedToSendToBackgroundL
+// CPhoneState::NeedToReturnToForegroundAppL
 // -----------------------------------------------------------
 //
-EXPORT_C TBool CPhoneState::NeedToSendToBackgroundL() const
+EXPORT_C TBool CPhoneState::NeedToReturnToForegroundAppL() const
     {
     return iViewCommandHandle->HandleCommandL(
-        EPhoneViewGetNeedToSendToBackgroundStatus ) ==
+        EPhoneViewGetNeedToReturnToForegroundAppStatus ) ==
         EPhoneViewResponseSuccess;
     }
 
@@ -1717,7 +1717,7 @@
                 // Show the number entry if it exists
                 SetNumberEntryVisibilityL(ETrue);
                 }
-            else if ( NeedToSendToBackgroundL() )
+            else if ( NeedToReturnToForegroundAppL() )
                 {
                 // Continue displaying current app but set up the
                 // idle screen in the background
@@ -2275,22 +2275,16 @@
         iViewCommandHandle->ExecuteCommandL( EPhoneViewSetVideoCallFlag, &booleanParam );
         }
 
-    // Go to background if necessary
-    if ( NeedToSendToBackgroundL() ||  IsAutoLockOn() )
+    // Check if application and number entry was open before incoming call. If so give control to number entry 
+	// to prevent flickering
+    if ( NeedToReturnToForegroundAppL() ||  IsAutoLockOn() )
         {
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
         // If number entry is used set control and visibility.
         if ( IsNumberEntryUsedL() )
            {
            iViewCommandHandle->ExecuteCommandL( EPhoneViewSetControlAndVisibility );
            }
         }
-    // If there is no need to send back ground and number entry is used then
-    // we must show number entry.
-    else if ( !NeedToSendToBackgroundL() && IsNumberEntryUsedL() )
-        {
-        SetNumberEntryVisibilityL(ETrue);
-        }
     }
 
 // -----------------------------------------------------------
--- a/phoneapp/phoneuicontrol/src/cphonestatecallsetup.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuicontrol/src/cphonestatecallsetup.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -566,13 +566,8 @@
 //
 void CPhoneStateCallSetup::HandleConnectedL( TInt aCallId )
     {
-    __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateCallSetup::HandleConnectedL()");
-    // Keep Phone in the foreground
-    TPhoneCmdParamBoolean booleanParam;
-    booleanParam.SetBoolean( EFalse );
-    iViewCommandHandle->ExecuteCommandL( 
-        EPhoneViewSetNeedToSendToBackgroundStatus, &booleanParam );
-        
+    __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateCallSetup::HandleConnectedL()");        
+
     // Close menu bar, if it is displayed
     iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarClose );
     
@@ -631,7 +626,7 @@
         // Show the number entry if it exists
         SetNumberEntryVisibilityL(ETrue);    
         }    
-    else if ( NeedToSendToBackgroundL() )
+    else if ( NeedToReturnToForegroundAppL() )
         {
         __PHONELOG( EBasic,EPhoneControl,"CPhoneStateCallSetup::elseif1");
         // Continue displaying current app but set up the 
--- a/phoneapp/phoneuicontrol/src/cphonestateidle.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuicontrol/src/cphonestateidle.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -358,7 +358,7 @@
                     // Show the number entry if it exists
                     SetNumberEntryVisibilityL(ETrue);    
                     }    
-                else if ( NeedToSendToBackgroundL() )
+                else if ( NeedToReturnToForegroundAppL() )
                     {
                     // Continue displaying current app but set up the 
                     // idle screen in the background
@@ -763,12 +763,12 @@
     // Capture keys when there is an incoming call
     CaptureKeysDuringCallNotificationL( ETrue );
 
-    // Indicate that the Phone needs to be sent to the background if
-    // an application other than the top application is in the foreground
+    // Indicate that the Foreground application needs to be sent to the foreground 
+    // after call is ended.
     TPhoneCmdParamBoolean booleanParam;
     booleanParam.SetBoolean( !TopAppIsDisplayedL() );
     iViewCommandHandle->ExecuteCommandL( 
-        EPhoneViewSetNeedToSendToBackgroundStatus,
+        EPhoneViewSetNeedToReturnToForegroundAppStatus,
         &booleanParam );
 
     // Bring Phone app in the foreground
@@ -806,15 +806,6 @@
 
     // Capture keys when the phone is dialling
     CaptureKeysDuringCallNotificationL( ETrue );
-
-    // Indicate that the Phone needs to be sent to the background if
-    // an application other than the top application is in the foreground
-    TPhoneCmdParamBoolean booleanParam;
-    booleanParam.SetBoolean( !TopAppIsDisplayedL() );
-    
-    iViewCommandHandle->ExecuteCommandL( 
-        EPhoneViewSetNeedToSendToBackgroundStatus,
-        &booleanParam );
     
     // Bring Phone app in the foreground
     TPhoneCmdParamInteger uidParam;
--- a/phoneapp/phoneuicontrol/src/cphonestateincall.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuicontrol/src/cphonestateincall.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2005-2010 Nokia Corporation and/or its subsidiary(-ies). 
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -26,6 +26,7 @@
 #include <videotelcontrolmediatorapi.h>
 #include <MediatorDomainUIDs.h>
 #include <bldvariant.hrh>
+#include <coreapplicationuisdomainpskeys.h>
 
 #include "cphonestateincall.h"
 #include "tphonecmdparamboolean.h"
@@ -76,10 +77,7 @@
 //
 EXPORT_C CPhoneStateInCall::~CPhoneStateInCall()
     {
-    if( iDtmfWaitCharTimer )
-        {
-        delete iDtmfWaitCharTimer;            
-        }
+    delete iDtmfWaitCharTimer;            
     }
 
 // -----------------------------------------------------------
@@ -306,30 +304,43 @@
     SetDefaultFlagsL();
     if ( IsNumberEntryUsedL() )
         {
-        // Show the number entry if it exists and update cba's.
-        SetNumberEntryVisibilityL( ETrue );
-        
-        // Close dtmf dialer when call is disconnected.
-        if ( IsDTMFEditorVisibleL() )
-            {      
-            CloseDTMFEditorL();
+        if ( NeedToReturnToForegroundAppL() )
+            {
+            // Return phone to the background if menu application is needed to foreground.
+            iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
+    
+            iViewCommandHandle->ExecuteCommandL( EPhoneViewSetControlAndVisibility );
+    
+            // Set Number Entry CBA
+            iCbaManager->SetCbaL( EPhoneNumberAcqCBA );
+            }
+        else
+            {
+            // Show the number entry if it exists and update cba's.
+            SetNumberEntryVisibilityL( ETrue );
             
-            // Display idle screen and update CBA's
-            DisplayIdleScreenL();
+            // Close dtmf dialer when call is disconnected.
+            if ( IsDTMFEditorVisibleL() )
+                {      
+                CloseDTMFEditorL();
+                
+                // Display idle screen and update CBA's
+                DisplayIdleScreenL();
+                }
+            else if ( iOnScreenDialer && IsCustomizedDialerVisibleL() )
+                {            
+                CloseCustomizedDialerL();
+                // Display idle screen and update CBA's
+                DisplayIdleScreenL();
+                } 
             }
-        else if ( iOnScreenDialer && IsCustomizedDialerVisibleL() )
-            {            
-            CloseCustomizedDialerL();
-            // Display idle screen and update CBA's
-            DisplayIdleScreenL();
-            }          
         }
     else
         {
         // Close menu bar, if it is displayed
         iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarClose );
         
-        if ( !TopAppIsDisplayedL() || IsAutoLockOn() )
+        if ( !TopAppIsDisplayedL() || IsAutoLockOn() || NeedToReturnToForegroundAppL() )
             {        
             // Continue displaying current app but set up the 
             // idle screen in the background
@@ -369,11 +380,11 @@
 EXPORT_C void CPhoneStateInCall::UpdateCbaL( TInt aResource )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateInCall::UpdateCbaL() ");
-    if ( iOnScreenDialer && IsDTMFEditorVisibleL() )
+    if ( iOnScreenDialer && IsNumberEntryVisibleL() && IsDTMFEditorVisibleL() )
         {
         iCbaManager->SetCbaL( EPhoneDtmfDialerCBA );        
         }
-    else if ( iOnScreenDialer && IsCustomizedDialerVisibleL() )
+    else if ( iOnScreenDialer && IsNumberEntryVisibleL() && IsCustomizedDialerVisibleL() )
         {
         iCbaManager->SetCbaL( CustomizedDialerCbaResourceIdL() );
         }
@@ -817,6 +828,10 @@
             commandStatus = CPhoneState::HandleCommandL( aCommand );        
             break;
  
+        case EPhoneInCallCmdShareLiveVideo:
+            iViewCommandHandle->ExecuteCommandL( EPhoneViewLaunchMultimediaSharing );
+            break;
+
        default:
             commandStatus = CPhoneState::HandleCommandL( aCommand );
             break;
@@ -1291,7 +1306,7 @@
     }
 
 // -----------------------------------------------------------------------------
-// CPhoneStateInCall::LockKeysL
+// CPhoneStateInCall::LockKeypadL
 // -----------------------------------------------------------------------------
 //
 void CPhoneStateInCall::LockKeypadL()
@@ -1600,4 +1615,30 @@
         &queryDialogParam );    
     }
   
+// -----------------------------------------------------------------------------
+// CPhoneStateInCall::HandlePropertyChangedL
+// from CPhoneState
+// -----------------------------------------------------------------------------
+//  
+EXPORT_C void CPhoneStateInCall::HandlePropertyChangedL(
+        const TUid& aCategory, const TUint aKey, const TInt aValue)
+    {
+    if ( aCategory == KPSUidCoreApplicationUIs &&
+         aKey == KCoreAppUIsVideoSharingIndicator )
+        {
+        if ( aValue == ECoreAppUIsVideoSharingIndicatorOn )
+            {
+            SetTouchPaneButtons( EPhoneIncallVideoShareButtons );
+            }
+        else
+            {
+            SetTouchPaneButtons( EPhoneIncallButtons );
+            }
+        }
+    else
+        {
+        CPhoneState::HandlePropertyChangedL( aCategory, aKey, aValue );
+        }
+    }
+
 // End of File
--- a/phoneapp/phoneuicontrol/src/cphonestateincoming.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuicontrol/src/cphonestateincoming.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -380,14 +380,6 @@
     // Stop tone playing, if necessary
     iViewCommandHandle->ExecuteCommandL( EPhoneViewStopRingTone );
     
-    if( IsVideoCall( aCallId ) && !IsAutoLockOn() )
-        {
-        // For keeping video call on top
-        TPhoneCmdParamBoolean booleanParam;
-        booleanParam.SetBoolean( EFalse );
-        iViewCommandHandle->ExecuteCommandL(
-            EPhoneViewSetNeedToSendToBackgroundStatus, &booleanParam );
-        }
     
     BeginTransEffectLC( ENumberEntryOpen );
 
@@ -485,7 +477,7 @@
     
      if ( IsNumberEntryUsedL() )
         {
-        if ( NeedToSendToBackgroundL() )
+        if ( NeedToReturnToForegroundAppL() )
             {
             // Return phone to the background if send to background is needed.
             iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
@@ -501,7 +493,7 @@
             SetNumberEntryVisibilityL(ETrue);
             }
         }
-    else if ( NeedToSendToBackgroundL() ||
+    else if ( NeedToReturnToForegroundAppL() ||
         SoftRejectMessageEditorIsDisplayedL() )
         {
         // Continue displaying current app but set up the
--- a/phoneapp/phoneuicontrol/src/cphonestatestartup.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuicontrol/src/cphonestatestartup.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2005-2007 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2005-2010 Nokia Corporation and/or its subsidiary(-ies). 
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -134,7 +134,7 @@
 // CPhoneStateStartup::HandlePEConstructionReadyL
 // -----------------------------------------------------------
 //
-void CPhoneStateStartup::HandlePEConstructionReadyL( TInt /*aCallId*/ )
+EXPORT_C void CPhoneStateStartup::HandlePEConstructionReadyL( TInt /*aCallId*/ )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateStartup::HandlePEConstructionReadyL() ");
     // Indicate that phone engine construction is ready
--- a/phoneapp/phoneuicontrol/src/cphonesystemeventhandler.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuicontrol/src/cphonesystemeventhandler.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2005-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -22,6 +22,9 @@
 #include <UikonInternalPSKeys.h>
 #include <startupdomainpskeys.h>
 #include <hwrmdomainpskeys.h>
+#include <oem/SimLockUiKeys.h>
+#include <featmgr.h>
+#include <coreapplicationuisdomainpskeys.h>
 
 #include "cphonesystemeventhandler.h"
 #include "mphonestate.h"
@@ -97,6 +100,24 @@
             KHWRMGripStatus,
             this );
         }
+    
+    if ( FeatureManager::FeatureSupported( KFeatureIdFfSimlockUi ) )
+       {
+        //Set up notifications for Sim Lock Dialogs values.
+        CPhonePubSubProxy::Instance()->NotifyChangeL(
+            KSimLockProperty,
+            ESimLockActiveStatus,
+            this );
+       }
+
+    if ( FeatureManager::FeatureSupported( KFeatureIdFfEntryPointForVideoShare ) )
+        {
+        // Set up notifications for Video Share (un)availability
+        CPhonePubSubProxy::Instance()->NotifyChangeL(
+            KPSUidCoreApplicationUIs,
+            KCoreAppUIsVideoSharingIndicator,
+            this );
+        }
     }
 
 // ---------------------------------------------------------
--- a/phoneapp/phoneuistates/bwins/phoneuistatesu.def	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/bwins/phoneuistatesu.def	Fri Mar 12 15:42:40 2010 +0200
@@ -64,4 +64,10 @@
 	?HandleConnectedConferenceL@CPhoneTwoSingles@@MAEXH@Z @ 63 NONAME ; void CPhoneTwoSingles::HandleConnectedConferenceL(int)
 	?HandleErrorL@CPhoneConferenceAndSingleAndWaiting@@UAEXABUTPEErrorInfo@@@Z @ 64 NONAME ; void CPhoneConferenceAndSingleAndWaiting::HandleErrorL(struct TPEErrorInfo const &)
 	?HandleErrorL@CPhoneConferenceAndWaiting@@UAEXABUTPEErrorInfo@@@Z @ 65 NONAME ; void CPhoneConferenceAndWaiting::HandleErrorL(struct TPEErrorInfo const &)
+	?HandleErrorL@CPhoneSingleAndCallSetupAndWaiting@@UAEXABUTPEErrorInfo@@@Z @ 66 NONAME ; void CPhoneSingleAndCallSetupAndWaiting::HandleErrorL(struct TPEErrorInfo const &)
+	?HandleErrorL@CPhoneCallSetupAndWaiting@@UAEXABUTPEErrorInfo@@@Z @ 67 NONAME ; void CPhoneCallSetupAndWaiting::HandleErrorL(struct TPEErrorInfo const &)
+	?HandleErrorL@CPhoneConferenceAndWaitingAndCallSetup@@UAEXABUTPEErrorInfo@@@Z @ 68 NONAME ; void CPhoneConferenceAndWaitingAndCallSetup::HandleErrorL(struct TPEErrorInfo const &)
+	?HandlePhoneEngineMessageL@CPhoneStartupSimlockUi@@UAEXHH@Z @ 69 NONAME ; void CPhoneStartupSimlockUi::HandlePhoneEngineMessageL(int, int)
+	?HandlePhoneStartupL@CPhoneStartupSimlockUi@@EAEXXZ @ 70 NONAME ; void CPhoneStartupSimlockUi::HandlePhoneStartupL(void)
+	?HandlePropertyChangedL@CPhoneStartupSimlockUi@@EAEXABVTUid@@IH@Z @ 71 NONAME ; void CPhoneStartupSimlockUi::HandlePropertyChangedL(class TUid const &, unsigned int, int)
 
--- a/phoneapp/phoneuistates/eabi/phoneuistatesu.def	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/eabi/phoneuistatesu.def	Fri Mar 12 15:42:40 2010 +0200
@@ -259,4 +259,18 @@
 	_ZN35CPhoneConferenceAndSingleAndWaiting12HandleErrorLERK12TPEErrorInfo @ 258 NONAME
 	_ZThn4_N26CPhoneConferenceAndWaiting12HandleErrorLERK12TPEErrorInfo @ 259 NONAME
 	_ZThn4_N35CPhoneConferenceAndSingleAndWaiting12HandleErrorLERK12TPEErrorInfo @ 260 NONAME
+	_ZN25CPhoneCallSetupAndWaiting12HandleErrorLERK12TPEErrorInfo @ 261 NONAME
+	_ZN34CPhoneSingleAndCallSetupAndWaiting12HandleErrorLERK12TPEErrorInfo @ 262 NONAME
+	_ZN38CPhoneConferenceAndWaitingAndCallSetup12HandleErrorLERK12TPEErrorInfo @ 263 NONAME
+	_ZThn4_N25CPhoneCallSetupAndWaiting12HandleErrorLERK12TPEErrorInfo @ 264 NONAME
+	_ZThn4_N34CPhoneSingleAndCallSetupAndWaiting12HandleErrorLERK12TPEErrorInfo @ 265 NONAME
+	_ZThn4_N38CPhoneConferenceAndWaitingAndCallSetup12HandleErrorLERK12TPEErrorInfo @ 266 NONAME
+	_ZN22CPhoneStartupSimlockUi19HandlePhoneStartupLEv @ 267 NONAME
+	_ZN22CPhoneStartupSimlockUi22HandlePropertyChangedLERK4TUidji @ 268 NONAME
+	_ZN22CPhoneStartupSimlockUi25HandlePhoneEngineMessageLEii @ 269 NONAME
+	_ZTI22CPhoneStartupSimlockUi @ 270 NONAME
+	_ZTV22CPhoneStartupSimlockUi @ 271 NONAME
+	_ZThn12_N22CPhoneStartupSimlockUi19HandlePhoneStartupLEv @ 272 NONAME
+	_ZThn12_N22CPhoneStartupSimlockUi22HandlePropertyChangedLERK4TUidji @ 273 NONAME
+	_ZThn4_N22CPhoneStartupSimlockUi25HandlePhoneEngineMessageLEii @ 274 NONAME
 
--- a/phoneapp/phoneuistates/group/phoneuistates.mmp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/group/phoneuistates.mmp	Fri Mar 12 15:42:40 2010 +0200
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). 
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -62,7 +62,7 @@
 SOURCE          cphonetwosingles.cpp
 SOURCE          cphonetwosinglesandwaiting.cpp
 SOURCE          cphoneuistatemachinefactorygsm.cpp
-
+SOURCE          cphonestartupsimlockui.cpp 
 /* Languages */
 LANG SC
 
--- a/phoneapp/phoneuistates/inc/cphonecallsetupandwaiting.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/inc/cphonecallsetupandwaiting.h	Fri Mar 12 15:42:40 2010 +0200
@@ -60,6 +60,14 @@
             const TInt aMessage, 
             TInt aCallId );       
         
+        /**
+        * HandleError
+        * Implements error handling framework
+        * @param aErrorInfo: the error info
+        */
+        IMPORT_C virtual void HandleErrorL( 
+            const TPEErrorInfo& aErrorInfo ); 
+
     protected:
 
         /**
--- a/phoneapp/phoneuistates/inc/cphoneconferenceandwaitingandcallsetup.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/inc/cphoneconferenceandwaitingandcallsetup.h	Fri Mar 12 15:42:40 2010 +0200
@@ -64,6 +64,13 @@
             TPhoneKeyEventMessages aMessage,
             TKeyCode aCode );
      
+        /**
+        * HandleError
+        * Implements error handling framework
+        * @param aErrorInfo: the error info
+        */
+        IMPORT_C virtual void HandleErrorL( 
+            const TPEErrorInfo& aErrorInfo ); 
 
     protected:
 
--- a/phoneapp/phoneuistates/inc/cphonesingleandcallsetupandwaiting.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/inc/cphonesingleandcallsetupandwaiting.h	Fri Mar 12 15:42:40 2010 +0200
@@ -64,7 +64,14 @@
             TPhoneKeyEventMessages aMessage,
             TKeyCode aCode );
 
-            
+        /**
+        * HandleError
+        * Implements error handling framework
+        * @param aErrorInfo: the error info
+        */
+        IMPORT_C virtual void HandleErrorL( 
+            const TPEErrorInfo& aErrorInfo ); 
+
     protected:
 
         /**
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneapp/phoneuistates/inc/cphonestartupsimlockui.h	Fri Mar 12 15:42:40 2010 +0200
@@ -0,0 +1,110 @@
+/*
+* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+*     GSM-specific single call state implementation.
+*
+*/
+#ifndef CPHONESTARTUPSIMLOCKUI_H
+#define CPHONESTARTUPSIMLOCKUI_H
+
+// INCLUDES
+#include "cphonestatestartup.h"
+
+// FORWARD DECLARATIONS
+
+// CLASS DECLARATION
+/**
+ *  GSM-specific start up state implementation.
+ */
+class CPhoneStartupSimlockUi : public CPhoneStateStartup
+    {
+public:
+
+    /**
+     * Destructor.
+     */
+    virtual ~CPhoneStartupSimlockUi();
+
+    /**
+     * Creates the Start up state class
+     * @param aStateMachine: a state machine
+     * @param aViewCommandHandle: handle to the PhoneUIView
+     * @param aPEReady: true if Phone Engine already started
+     * @return an instance of class CPhoneEmergency
+     */
+    static CPhoneStartupSimlockUi* NewL( MPhoneStateMachine* aStateMachine,
+            MPhoneViewCommandHandle* aViewCommandHandle, TBool aPEReady );
+
+     /**
+     * A message handling function for Phone Engine messages
+     * @param aMessage Message from Phone Engine
+     * @param aCallId Call id the message concerns
+     */
+     IMPORT_C void HandlePhoneEngineMessageL(
+         const TInt aMessage, 
+         TInt aCallId );       
+
+private:
+
+    /**
+     * By default EPOC constructor is private.
+     */
+    CPhoneStartupSimlockUi( MPhoneStateMachine* aStateMachine,
+            MPhoneViewCommandHandle* aViewCommandHandle, TBool aPEReady );
+
+    /**
+     * ConstructL()
+     */
+    void ConstructL();
+
+    /**
+     * SimLock Observer.
+     * Determines  if the SimLock mode should be entered
+     */
+    void EnterSimLockModeL();
+
+    /**
+     * SimLock Observer.
+     * Takes care of the SimLock Exit Scenario
+     */
+    void ExitSimLockModeL();
+
+    // From MPhonePubSubObserver
+    /**
+     * This function is called when there is property value change.
+     * @param aCategory Category of the property
+     * @param aKey Property key that is changed
+     * @param aValue New property value
+     */
+    IMPORT_C virtual void HandlePropertyChangedL( const TUid& aCategory,
+            const TUint aKey, const TInt aValue );   
+
+    /**
+     * Handles startup of the phone application 
+     */
+    IMPORT_C virtual void HandlePhoneStartupL();
+
+
+private:
+       
+    //To check if Simlock is active
+    TBool iSimLockActive;
+    
+    // Ownded: idle object to create note.
+    CIdle* iCreateNote;
+
+    };
+
+#endif // CPHONESTARTUPSIMLOCK_H
+// End of File
--- a/phoneapp/phoneuistates/inc/cphonestatemachinegsm.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/inc/cphonestatemachinegsm.h	Fri Mar 12 15:42:40 2010 +0200
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). 
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -76,6 +76,10 @@
         // Phone customization
         MPhoneCustomization* iCustomization;
         
+    private:
+    	
+        TBool IsSimlockStartupStateCreated()const;
+        
  	private: // Data
  	
 		// Is emergency object instantiated - needed to prevent multiple instantiation
--- a/phoneapp/phoneuistates/src/cphonealerting.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/src/cphonealerting.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -243,11 +243,6 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates,
         "CPhoneAlerting::HandleConnectedL()");
-    // Keep Phone in the foreground
-    TPhoneCmdParamBoolean booleanParam;
-    booleanParam.SetBoolean( EFalse );
-    iViewCommandHandle->ExecuteCommandL(
-        EPhoneViewSetNeedToSendToBackgroundStatus, &booleanParam );
 
     // Close menu bar, if it is displayed
     iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarClose );
--- a/phoneapp/phoneuistates/src/cphonecallsetupandwaiting.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/src/cphonecallsetupandwaiting.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -121,6 +121,28 @@
     }
 
 // -----------------------------------------------------------
+// CPhoneCallSetupAndWaiting::HandleErrorL
+// -----------------------------------------------------------
+//
+EXPORT_C void CPhoneCallSetupAndWaiting::HandleErrorL( 
+        const TPEErrorInfo& aErrorInfo )
+    {
+    __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneCallSetupAndWaiting::HandleErrorL()");
+    
+    if( aErrorInfo.iErrorCode == ECCPErrorCCUserAlertingNoAnswer )
+        {
+        // Should not shown "No Answer" note
+        __PHONELOG1( EBasic, EPhoneUIStates,
+       "PhoneUIStates: CPhoneCallSetupAndWaiting::HandleErrorL - aErrorInfo.iErrorCode =%d ",
+            aErrorInfo.iErrorCode);
+        }
+    else
+        {
+        CPhoneState::HandleErrorL( aErrorInfo );
+        }
+    }
+
+// -----------------------------------------------------------
 // CPhoneCallSetupAndWaiting::OpenMenuBarL
 // -----------------------------------------------------------
 //
--- a/phoneapp/phoneuistates/src/cphoneconference.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/src/cphoneconference.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -704,18 +704,31 @@
 
     if ( IsNumberEntryUsedL() )
         {
-        // Show the number entry if it exists
-        SetNumberEntryVisibilityL(ETrue);
+        if ( NeedToReturnToForegroundAppL() )
+            {
+            // Return phone to the background if menu application is needed to foreground.
+            iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
+    
+            iViewCommandHandle->ExecuteCommandL( EPhoneViewSetControlAndVisibility );
+    
+            // Set Number Entry CBA
+            iCbaManager->SetCbaL( EPhoneNumberAcqCBA );
+            }
+        else
+            {
+            // Show the number entry if it exists
+            SetNumberEntryVisibilityL(ETrue);
         
-        // Close dtmf dialer when call is disconnected.
-        if ( iOnScreenDialer && IsDTMFEditorVisibleL() )
-            {            
-            CloseDTMFEditorL();
-            // Display idle screen and update CBAs
-            DisplayIdleScreenL();
-            }        
-        }
-    else if ( !TopAppIsDisplayedL() )
+            // Close dtmf dialer when call is disconnected.
+            if ( iOnScreenDialer && IsDTMFEditorVisibleL() )
+                {            
+                CloseDTMFEditorL();
+                // Display idle screen and update CBAs
+                DisplayIdleScreenL();
+                }
+            }
+        }  
+    else if ( !TopAppIsDisplayedL() || NeedToReturnToForegroundAppL() )
         {
         // Close menu bar, if it is displayed
         iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarClose );
@@ -752,11 +765,7 @@
     // Close menu bar, if it is displayed
     iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarClose );
  
-    if ( IsNumberEntryUsedL() )
-        {
-        // Show the number entry if it exists
-        SetNumberEntryVisibilityL(ETrue);
-        }
+
     SetTouchPaneButtons( EPhoneIncallButtons );    
   
     // Go to single state
@@ -775,11 +784,6 @@
     // Close menu bar, if it is displayed
     iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarClose );
 
-    if ( IsNumberEntryUsedL() )
-        {
-        // Show the number entry if it exists
-        SetNumberEntryVisibilityL(ETrue);
-        }
         
     SetTouchPaneButtons( EPhoneTwoSinglesButtons );        
     
@@ -930,6 +934,14 @@
         {
         SetNumberEntryVisibilityL( EFalse );    
         }
+    
+    // Indicate that the menu application on foreground needs to be sent back to the foreground 
+    // after call is ended.
+    TPhoneCmdParamBoolean booleanParam;
+    booleanParam.SetBoolean( !TopAppIsDisplayedL() );
+    iViewCommandHandle->ExecuteCommandL( 
+        EPhoneViewSetNeedToReturnToForegroundAppStatus,
+        &booleanParam );
  
     TPhoneCmdParamBoolean dialerParam;
     dialerParam.SetBoolean( ETrue );
@@ -970,25 +982,15 @@
     // Close menu bar, if it is displayed
     iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarClose );
 
-    // Cannot delete active note, e.g. New call query, 
-    // but show waiting note with or without caller name
-    if ( IsAnyQueryActiveL() ||  
-        ( !aCommandParam.Boolean() && iOnScreenDialer ) )
-        {
-        CallWaitingNoteL( aCallId );        
-        }
-    else
-        {
-        // Remove any phone dialogs if they are displayed
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
-        }
+    // Remove any phone dialogs if they are displayed
+    iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
 
     // Indicate that the Phone needs to be sent to the background if
     // an application other than the top application is in the foreground
     TPhoneCmdParamBoolean booleanParam;
     booleanParam.SetBoolean( !TopAppIsDisplayedL() );
     iViewCommandHandle->ExecuteCommandL( 
-        EPhoneViewSetNeedToSendToBackgroundStatus,
+        EPhoneViewSetNeedToReturnToForegroundAppStatus,
         &booleanParam );
 
     // Bring Phone app in the foreground
--- a/phoneapp/phoneuistates/src/cphoneconferenceandcallsetup.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/src/cphoneconferenceandcallsetup.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -295,13 +295,7 @@
     
     // Close menu bar, if it is displayed
     iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarClose );
-    
-    // Keep Phone in the foreground
-    TPhoneCmdParamBoolean booleanParam;
-    booleanParam.SetBoolean( EFalse );
-    iViewCommandHandle->ExecuteCommandL( 
-        EPhoneViewSetNeedToSendToBackgroundStatus, &booleanParam );
-    
+ 
     BeginUiUpdateLC();
         
     // Show bubble
--- a/phoneapp/phoneuistates/src/cphoneconferenceandsingleandwaiting.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/src/cphoneconferenceandsingleandwaiting.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -204,7 +204,7 @@
         
     // Effect is shown when dialer exist.
     TBool effectStarted ( EFalse );
-    if ( !NeedToSendToBackgroundL() )
+    if ( !NeedToReturnToForegroundAppL() )
         {
         BeginTransEffectLC( ENumberEntryOpen );
         effectStarted = ETrue; 
@@ -330,7 +330,7 @@
 
     if ( IsNumberEntryUsedL() )
         {
-        if ( NeedToSendToBackgroundL() )
+        if ( NeedToReturnToForegroundAppL() ) 
             {
             // Return phone to the background if send to background is needed.
             iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
@@ -348,9 +348,9 @@
     else
         {
         UpdateCbaL( EPhoneCallHandlingNewCallSwapCBA );
-        // If numberentry is not open just check NeedToSendToBackgroundL and 
+        // If numberentry is not open just check NeedToReturnToForegroundAppL and 
         // sendbackround if needed.
-        if ( NeedToSendToBackgroundL() )
+        if ( NeedToReturnToForegroundAppL() ) 
             {
             // Return phone to the background if send to background is needed.
             iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
--- a/phoneapp/phoneuistates/src/cphoneconferenceandwaiting.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/src/cphoneconferenceandwaiting.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -228,6 +228,13 @@
         resourceId = EPhoneConfCallParticipantsMenubar;    
         }        
     
+    TPhoneCmdParamBoolean booleanParam;
+    const TBool videoWaiting = IsVideoCallRingingL();
+    booleanParam.SetBoolean( videoWaiting );
+    iViewCommandHandle->ExecuteCommandL( EPhoneViewSetConferenceAndWaitingVideo,
+        &booleanParam );
+    
+    
     TPhoneCmdParamInteger integerParam;
     integerParam.SetInteger( 
                 CPhoneMainResourceResolver::Instance()->
@@ -290,7 +297,7 @@
     
     // Effect is shown when dialer exist.
     TBool effectStarted ( EFalse );
-    if ( !NeedToSendToBackgroundL() )
+    if ( !NeedToReturnToForegroundAppL() )
         {
         BeginTransEffectLC( ENumberEntryOpen );
         effectStarted = ETrue; 
@@ -314,31 +321,16 @@
     
     if ( IsNumberEntryUsedL() )
         {
-        if ( NeedToSendToBackgroundL() )
+        if ( NeedToReturnToForegroundAppL() )
             {
-            // Return phone to the background if send to background is needed.
-            iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
-            
             iViewCommandHandle->ExecuteCommandL( EPhoneViewSetControlAndVisibility );
             
             UpdateCbaL( EPhoneCallHandlingInCallCBA );
             }
-        else
-            {
-            // Show the number entry if it exists.
-            SetNumberEntryVisibilityL(ETrue);
-            }
         }
     else
         {
         UpdateCbaL( EPhoneCallHandlingNewCallSwapCBA );
-        // If numberentry is not open just check NeedToSendToBackgroundL and 
-        // sendbackround if needed.
-        if ( NeedToSendToBackgroundL() )
-            {
-            // Return phone to the background if send to background is needed.
-            iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
-            }
         }
     SetTouchPaneButtons( EPhoneConferenceAndSingleButtons );
     SetTouchPaneButtonDisabled( EPhoneInCallCmdPrivate );
@@ -374,7 +366,7 @@
         {
         // Effect is shown when dialer exist.
         TBool effectStarted ( EFalse );
-        if ( !NeedToSendToBackgroundL() )
+        if ( !NeedToReturnToForegroundAppL() )
             {
             BeginTransEffectLC( ENumberEntryOpen );
             effectStarted = ETrue;
@@ -391,27 +383,22 @@
             
         if ( IsNumberEntryUsedL() )
             {
-            if ( NeedToSendToBackgroundL() )
+            if ( NeedToReturnToForegroundAppL() ) 
                 {
-                // Return phone to the background if send to background is needed.
+                // Return phone to the background if menu application is needed to foreground.
                 iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
  
                 iViewCommandHandle->ExecuteCommandL( EPhoneViewSetControlAndVisibility );
                 
                 UpdateCbaL( EPhoneCallHandlingInCallCBA );
                 }
-            else
-                {
-                // Show the number entry if it exists.
-                SetNumberEntryVisibilityL(ETrue);
-                }
             }
         else
             {
             UpdateCbaL( EPhoneCallHandlingInCallCBA );
-            // If numberentry is not open just check NeedToSendToBackgroundL and 
+            // If numberentry is not open just check NeedToReturnToForegroundAppL and 
             // sendbackround if needed.
-            if ( NeedToSendToBackgroundL() )
+            if ( NeedToReturnToForegroundAppL() )
                 {
                 // Return phone to the background if send to background is needed.
                 iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
--- a/phoneapp/phoneuistates/src/cphoneconferenceandwaitingandcallsetup.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/src/cphoneconferenceandwaitingandcallsetup.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -209,6 +209,28 @@
     }
 
 // -----------------------------------------------------------
+// CPhoneConferenceAndWaitingAndCallSetup::HandleErrorL
+// -----------------------------------------------------------
+//
+EXPORT_C void CPhoneConferenceAndWaitingAndCallSetup::HandleErrorL( 
+        const TPEErrorInfo& aErrorInfo )
+    {
+    __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneConferenceAndWaitingAndCallSetup::HandleErrorL()");
+    
+    if( aErrorInfo.iErrorCode == ECCPErrorCCUserAlertingNoAnswer )
+        {
+        // Should not shown "No Answer" note
+        __PHONELOG1( EBasic, EPhoneUIStates,
+       "PhoneUIStates: CPhoneConferenceAndWaitingAndCallSetup::HandleErrorL - aErrorInfo.iErrorCode =%d ",
+            aErrorInfo.iErrorCode);
+        }
+    else
+        {
+        CPhoneState::HandleErrorL( aErrorInfo );
+        }
+    }
+
+// -----------------------------------------------------------
 // CPhoneConferenceAndWaitingAndCallSetup::OpenMenuBarL
 // -----------------------------------------------------------
 //
--- a/phoneapp/phoneuistates/src/cphoneemergency.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/src/cphoneemergency.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -355,7 +355,7 @@
         TPhoneCmdParamBoolean booleanParam;
         booleanParam.SetBoolean( !TopAppIsDisplayedL() );
         iViewCommandHandle->ExecuteCommandL(
-            EPhoneViewSetNeedToSendToBackgroundStatus,
+                EPhoneViewSetNeedToReturnToForegroundAppStatus,
             &booleanParam );
 
         // Bring Phone app in the foreground
@@ -420,12 +420,6 @@
         CaptureKeysDuringCallNotificationL( EFalse );
         }
 
-    // Keep Phone in the foreground
-    TPhoneCmdParamBoolean booleanParam;
-    booleanParam.SetBoolean( EFalse );
-    iViewCommandHandle->ExecuteCommandL(
-        EPhoneViewSetNeedToSendToBackgroundStatus, &booleanParam );
-
     // Remove emergency connecting note
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNote );
 
--- a/phoneapp/phoneuistates/src/cphoneincoming.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/src/cphoneincoming.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -275,25 +275,15 @@
     // Close menu bar, if it is displayed
     iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarClose );
 
-    // Cannot delete active note, e.g. New call query, 
-    // but show waiting note with or without caller name
-    if ( IsAnyQueryActiveL() || 
-        ( aCommandParam.Boolean() && iOnScreenDialer ) )
-        {
-        CallWaitingNoteL( aCallId );        
-        }
-    else
-        {
-        // Remove any phone dialogs if they are displayed
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
-        }
+    // Remove any phone dialogs if they are displayed
+    iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
     
     // Indicate that the Phone needs to be sent to the background if
     // an application other than the top application is in the foreground
     TPhoneCmdParamBoolean booleanParam;
     booleanParam.SetBoolean( !TopAppIsDisplayedL() );
     iViewCommandHandle->ExecuteCommandL( 
-        EPhoneViewSetNeedToSendToBackgroundStatus,
+            EPhoneViewSetNeedToReturnToForegroundAppStatus,
         &booleanParam );
 
     // Bring Phone app in the foreground
--- a/phoneapp/phoneuistates/src/cphonesingleandalerting.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/src/cphonesingleandalerting.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -192,13 +192,7 @@
         EPhoneViewGetCallIdByState, &callStateData );
         
     if( callStateData.CallId() == aCallId )
-        {    
-        // Keep Phone in the foreground
-        TPhoneCmdParamBoolean booleanParam;
-        booleanParam.SetBoolean( EFalse );
-        iViewCommandHandle->ExecuteCommandL( 
-            EPhoneViewSetNeedToSendToBackgroundStatus, &booleanParam );
-        
+        {        
         // Close menu bar, if it is displayed
         iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarClose );
 
--- a/phoneapp/phoneuistates/src/cphonesingleandcallsetupandwaiting.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/src/cphonesingleandcallsetupandwaiting.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -268,6 +268,28 @@
     }
 
 // -----------------------------------------------------------
+// CPhoneSingleAndCallSetupAndWaiting::HandleErrorL
+// -----------------------------------------------------------
+//
+EXPORT_C void CPhoneSingleAndCallSetupAndWaiting::HandleErrorL( 
+        const TPEErrorInfo& aErrorInfo )
+    {
+    __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneSingleAndCallSetupAndWaiting::HandleErrorL()");
+    
+    if( aErrorInfo.iErrorCode == ECCPErrorCCUserAlertingNoAnswer )
+        {
+        // Should not shown "No Answer" note
+        __PHONELOG1( EBasic, EPhoneUIStates,
+       "PhoneUIStates: CPhoneSingleAndCallSetupAndWaiting::HandleErrorL - aErrorInfo.iErrorCode =%d ",
+            aErrorInfo.iErrorCode);
+        }
+    else
+        {
+        CPhoneState::HandleErrorL( aErrorInfo );
+        }
+    }
+
+// -----------------------------------------------------------
 // CPhoneSingleAndCallSetupAndWaiting::OpenMenuBarL
 // -----------------------------------------------------------
 //
@@ -435,12 +457,7 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneSingleAndCallSetupAndWaiting::HandleConnectedL()");
-    // Keep Phone in the foreground
-    TPhoneCmdParamBoolean booleanParam;
-    booleanParam.SetBoolean( EFalse );
-    iViewCommandHandle->ExecuteCommandL( 
-        EPhoneViewSetNeedToSendToBackgroundStatus, &booleanParam );
-    
+  
     // Close menu bar, if it is displayed
     iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarClose );
 
--- a/phoneapp/phoneuistates/src/cphonesingleandwaiting.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/src/cphonesingleandwaiting.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -452,7 +452,7 @@
         {
         // Effect is shown when dialer exist.
         TBool effectStarted ( EFalse );
-        if ( !NeedToSendToBackgroundL() )
+        if ( !NeedToReturnToForegroundAppL() )
             {
             BeginTransEffectLC( ENumberEntryOpen );
             effectStarted = ETrue;
@@ -466,7 +466,7 @@
         // Idle message came for waiting call
         if ( IsNumberEntryUsedL() )
             {
-            if ( NeedToSendToBackgroundL() )
+            if ( NeedToReturnToForegroundAppL() )
                 {
                 // Return phone to the background if send to background is needed.
                 iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
@@ -484,9 +484,9 @@
         else
             {
             UpdateCbaL( EPhoneCallHandlingInCallCBA );
-            // If numberentry is not open just check NeedToSendToBackgroundL and
+            // If numberentry is not open just check NeedToReturnToForegroundAppL and
             // sendbackround if needed.
-            if ( NeedToSendToBackgroundL() )
+            if ( NeedToReturnToForegroundAppL() )
                 {
                 // Return phone to the background if send to background is needed.
                 iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
@@ -622,7 +622,7 @@
 
     // Effect is shown when dialer exist.
     TBool effectStarted ( EFalse );
-    if ( !NeedToSendToBackgroundL() )
+    if ( !NeedToReturnToForegroundAppL() )
         {
         BeginTransEffectLC( ENumberEntryOpen );
         effectStarted = ETrue;
@@ -645,13 +645,20 @@
     holdFlag.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
 
+    // Close dtmf dialer if exist.
+    if ( iOnScreenDialer && IsDTMFEditorVisibleL() )
+        {
+        CloseDTMFEditorL();
+        }
+    else if ( iOnScreenDialer && IsCustomizedDialerVisibleL() )
+        {
+        CloseCustomizedDialerL();
+        }
+     
     if ( IsNumberEntryUsedL() )
         {
-        if ( NeedToSendToBackgroundL() )
+        if ( NeedToReturnToForegroundAppL() )
             {
-            // Return phone to the background if send to background is needed.
-            iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
-
             iViewCommandHandle->ExecuteCommandL( EPhoneViewSetControlAndVisibility );
 
             UpdateCbaL( EPhoneCallHandlingInCallCBA );
@@ -666,24 +673,6 @@
         {
         // Set Two singles softkeys
         UpdateCbaL( EPhoneCallHandlingNewCallSwapCBA );
-
-        // If numberentry is not open just check NeedToSendToBackgroundL and
-        // sendbackround if needed.
-        if ( NeedToSendToBackgroundL() )
-            {
-            // Return phone to the background if send to background is needed.
-            iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
-            }
-        }
-
-    // Close dtmf dialer if exist.
-    if ( iOnScreenDialer && IsDTMFEditorVisibleL() )
-        {
-        CloseDTMFEditorL();
-        }
-    else if ( iOnScreenDialer && IsCustomizedDialerVisibleL() )
-        {
-        CloseCustomizedDialerL();
         }
 
     SetTouchPaneButtons( EPhoneTwoSinglesButtons );
@@ -824,19 +813,6 @@
 void CPhoneSingleAndWaiting::HandleDisconnectingL( TInt aCallId )
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneSingleAndWaiting::HandleDisconnectingL( ) ");
-    
-    if( ( iSingleCallId == aCallId ) && IsVideoCall( aCallId ) )
-        {
-        __PHONELOG( EBasic, EPhoneControl, 
-            "CPhoneSingleAndWaiting::HandleDisconnectingL EPhoneViewSetNeedToSendToBackgroundStatus" );
-        
-        // Keep phone on the foreground
-        TPhoneCmdParamBoolean booleanParam;
-        booleanParam.SetBoolean( EFalse );
-        iViewCommandHandle->ExecuteCommandL(
-            EPhoneViewSetNeedToSendToBackgroundStatus,
-            &booleanParam );
-        }
     }
 
 // End of File
--- a/phoneapp/phoneuistates/src/cphonesinglecall.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/src/cphonesinglecall.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -570,25 +570,15 @@
     // Close menu bar, if it is displayed
     iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarClose );
 
-    // Cannot delete active note, e.g. New call query, 
-    // but show waiting note with or without caller name
-    if ( IsAnyQueryActiveL() || 
-        ( !aCommandParam.Boolean() && iOnScreenDialer ) )
-        {
-        CallWaitingNoteL( aCallId );        
-        }
-    else
-        {
-        // Remove any phone dialogs if they are displayed
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
-        }
+    // Remove any phone dialogs if they are displayed
+    iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
     
     // Indicate that the Phone needs to be sent to the background if
     // an application other than the top application is in the foreground
     TPhoneCmdParamBoolean booleanParam;
     booleanParam.SetBoolean( !TopAppIsDisplayedL() );
     iViewCommandHandle->ExecuteCommandL( 
-        EPhoneViewSetNeedToSendToBackgroundStatus,
+        EPhoneViewSetNeedToReturnToForegroundAppStatus,
         &booleanParam );
 
     // Bring Phone app in the foreground
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneapp/phoneuistates/src/cphonestartupsimlockui.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -0,0 +1,209 @@
+/*
+ * Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). 
+ * All rights reserved.
+ * This component and the accompanying materials are made available
+ * under the terms of "Eclipse Public License v1.0"
+ * which accompanies this distribution, and is available
+ * at the URL "http://www.eclipse.org/legal/epl-v10.html".
+ *
+ * Initial Contributors:
+ * Nokia Corporation - initial contribution.
+ *
+ * Contributors:
+ *
+ * Description: Implementation of CPhoneStartup class.
+ *
+ */
+
+// INCLUDES
+#include "phonerssbase.h"
+#include "phonelogger.h"
+#include "cphonestartupsimlockui.h"
+#include "tphonecmdparamappinfo.h"
+#include "TPhoneCmdParamBoolean.h"
+#include "phoneconstants.h"
+#include "cphonestatestartup.h"
+#include "phonestatedefinitions.h"
+#include "mphonestatemachine.h"
+#include "tphonecmdparamkeycapture.h"
+#include "tphonecmdparamboolean.h"
+#include "cphonepubsubproxy.h"
+#include "phoneconstants.h"
+#include <startupdomainpskeys.h>
+#include <oem/simlockuikeys.h>
+
+
+// ================= MEMBER FUNCTIONS =======================
+
+// C++ default constructor can NOT contain any code, that
+// might leave.
+//
+
+CPhoneStartupSimlockUi::CPhoneStartupSimlockUi(
+        MPhoneStateMachine* aStateMachine,
+        MPhoneViewCommandHandle* aViewCommandHandle, TBool aPEReady ) :
+CPhoneStateStartup( aStateMachine, aViewCommandHandle, NULL ), iSimLockActive (EFalse)
+    {
+    iPEReady = aPEReady;
+    }
+
+// -----------------------------------------------------------
+// CPhoneStartupSimlockUi::~CPhoneStartupSimlockUi()
+// Destructor
+// (other items were commented in a header).
+// -----------------------------------------------------------
+
+CPhoneStartupSimlockUi::~CPhoneStartupSimlockUi()
+    {
+    }
+
+// -----------------------------------------------------------
+// CPhoneStartupSimlockUi::ConstructL()
+// Constructor
+// (other items were commented in a header).
+// -----------------------------------------------------------
+//
+void CPhoneStartupSimlockUi::ConstructL()
+    {
+    __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneStartupSimlockUi::ConstructL()" );
+
+    CPhoneStateStartup::ConstructL();
+    iSimLockActive = ETrue;
+    EnterSimLockModeL();
+
+    }
+
+// -----------------------------------------------------------
+// CPhoneStartupSimlockUi::NewL()
+// Constructor
+// (other items were commented in a header).
+// -----------------------------------------------------------
+//
+CPhoneStartupSimlockUi* CPhoneStartupSimlockUi::NewL(
+        MPhoneStateMachine* aStateMachine,
+        MPhoneViewCommandHandle* aViewCommandHandle, TBool aPEReady )
+
+    {
+    __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneStartupSimlockUi::NewL()");
+    
+    CPhoneStartupSimlockUi* self = new (ELeave) CPhoneStartupSimlockUi(
+            aStateMachine, aViewCommandHandle, aPEReady );
+
+    CleanupStack::PushL( self );
+    self->ConstructL();
+    CleanupStack::Pop( self );
+
+    return self;
+
+    }
+
+// -----------------------------------------------------------
+// CPhoneStateStartup::HandlePhoneEngineMessageL
+// -----------------------------------------------------------
+//
+EXPORT_C void CPhoneStartupSimlockUi::HandlePhoneEngineMessageL( 
+    const TInt aMessage, 
+    TInt aCallId )
+    {
+    __LOGMETHODSTARTEND( EPhoneControl, "CPhoneStartupSimlockUi::HandlePhoneEngineMessageL() " );
+    switch ( aMessage )
+        {
+        case MEngineMonitor::EPEMessagePEConstructionReady:
+
+            // phone start is now possible
+            if ( !iSimLockActive )
+                {
+                CPhoneStateStartup::HandlePhoneEngineMessageL( aMessage, aCallId );
+                }
+            else
+                {
+                iPEReady = ETrue;
+                }
+            break;
+            
+        default:
+        	CPhoneStateStartup::HandlePhoneEngineMessageL( aMessage, aCallId );
+            break;
+        }
+    }
+
+// -----------------------------------------------------------
+// CPhoneStartupSimlockUi::HandlePhoneStartupL
+// -----------------------------------------------------------
+//
+EXPORT_C void CPhoneStartupSimlockUi::HandlePhoneStartupL()
+    {
+    __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStartupSimlockUi::HandlePhoneStartupL() ");
+
+    if( !iSimLockActive )
+        {
+        CPhoneStateStartup::HandlePhoneStartupL();
+        }
+    else
+        {
+        // set the flag in base class
+        iPhoneReady = ETrue;
+        }        
+    }
+
+// -----------------------------------------------------------
+// CPhoneStartupSimlockUi::HandlePropertyChangedL
+// -----------------------------------------------------------
+//
+EXPORT_C void CPhoneStartupSimlockUi::HandlePropertyChangedL(
+        const TUid& aCategory, const TUint aKey, const TInt aValue )
+    {
+    __LOGMETHODSTARTEND( EPhoneUIStates,"CPhoneStartupSimlockUi::HandlePropertyChangedL( ) " );
+
+    if ( aCategory == KSimLockProperty )
+        {
+        if ( aKey == ESimLockActiveStatus )
+            {
+            if ( aValue == KSimLockStatusDone )
+                {
+                // No longer in Sim Lock mode
+                ExitSimLockModeL();
+                }
+            }
+        }
+    else
+        {
+        CPhoneState::HandlePropertyChangedL( aCategory, aKey, aValue );
+        }
+    }
+
+// -----------------------------------------------------------------------------
+// CPhoneStartupSimlockUi::EnterSimLockModeL
+// -----------------------------------------------------------------------------
+//
+void CPhoneStartupSimlockUi::EnterSimLockModeL()
+    {
+    __LOGMETHODSTARTEND( EPhoneUIStates,"CPhoneStartupSimlockUi::EnterSimLockModeL( ) " );
+
+    TPhoneCmdParamAppInfo appInfoParam;
+    appInfoParam.SetAppUid( KSimLockUIApplicationUid );
+    iViewCommandHandle->ExecuteCommandL( EPhoneViewActivateApp, &appInfoParam );
+
+    }
+// -----------------------------------------------------------------------------
+// CPhoneStartupSimlockUi::ExitSimLockModeL
+// -----------------------------------------------------------------------------
+//
+void CPhoneStartupSimlockUi::ExitSimLockModeL()
+    {
+    __LOGMETHODSTARTEND( EPhoneUIStates,"CPhoneStartupSimlockUi::ExitSimLockModeL( ) " );
+    iSimLockActive = EFalse;
+	
+	if ( iPhoneReady )
+		{
+		CPhoneStateStartup::HandlePhoneStartupL();
+    	}
+	else if ( iPEReady )
+		{
+		CPhoneStateStartup::HandlePEConstructionReadyL( 0 );
+		}
+
+	//if iPhoneReady or iPEReady is EFalse, we should just wait.
+    }
+
+// End of File
--- a/phoneapp/phoneuistates/src/cphonestatemachinegsm.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/src/cphonestatemachinegsm.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). 
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -40,8 +40,13 @@
 #include "cphoneemergency.h"
 #include "cphoneconferenceandwaitingandcallsetup.h"
 #include "cphoneidle.h"
+#include "cphonestartup.h"
 #include "cphoneincoming.h"
-#include "cphonestartup.h"
+#include "cphonestartupsimlockui.h"
+#include "cphonepubsubproxy.h"
+#include <startupdomainpskeys.h>
+#include "phoneconstants.h"
+#include <featmgr.h>
 
 // ================= MEMBER FUNCTIONS =======================
 
@@ -262,9 +267,20 @@
                 break;
 
             case EPhoneStateStartup:
-                TRAP( err, iState = 
-          			CPhoneStartup::NewL( this, iViewCommandHandle, 
-          			iOldStateId == EPhoneStateEmergency ) );
+            	
+                if( IsSimlockStartupStateCreated() )
+                    {
+                    TRAP( err, iState =
+                        CPhoneStartupSimlockUi::NewL( this, iViewCommandHandle,
+                            iOldStateId == EPhoneStateEmergency ) );
+                    }
+                else
+                    {
+                    TRAP( err, iState =
+                        CPhoneStartup::NewL( this, iViewCommandHandle,
+                            iOldStateId == EPhoneStateEmergency ) );
+                    }
+
                 __ASSERT_ALWAYS( KErrNone == err, User::Invariant() );
                 madeStateTransition = ETrue;
                 break;
@@ -284,6 +300,28 @@
     return iState;
     }
 
+
+// -----------------------------------------------------------
+// CPhoneStateMachineGSM::IsSimlockStartupStateCreated
+// -----------------------------------------------------------
+//
+TBool CPhoneStateMachineGSM::IsSimlockStartupStateCreated() const
+    {
+    if ( FeatureManager::FeatureSupported( KFeatureIdFfSimlockUi ) )
+        {
+        TInt securityStatus =
+                CPhonePubSubProxy::Instance()->Value(
+                        KPSUidStartup, KStartupSimSecurityStatus );
+        if ( securityStatus == ESimUnaccepted )
+            {
+            return ETrue;
+            }
+        }
+
+    return EFalse;
+    }
+
+
 // -----------------------------------------------------------
 // CPhoneStateMachineGSM::NewL()
 // Constructor
--- a/phoneapp/phoneuistates/src/cphonetwosingles.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/src/cphonetwosingles.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -200,20 +200,12 @@
     switch( activeCallCount.Integer() )
         {
         case EOneActiveCall:
-            {   
-            if ( IsNumberEntryUsedL() )
-                {
-                // Show the number entry if it exists
-                SetNumberEntryVisibilityL(ETrue);
-                }
-            else
-                {
-                // Close menu bar if number entry is not open.
-                iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarClose );
+            {
+            // Close menu bar if number entry is not open.
+            iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarClose );
                 
-                // Set incall CBAs
-                UpdateCbaL( EPhoneCallHandlingInCallCBA );                
-                }
+            // Set incall CBAs
+            UpdateCbaL( EPhoneCallHandlingInCallCBA );                
             
             TPhoneCmdParamCallStateData callStateData;  
             callStateData.SetCallState( EPEStateHeld );
@@ -445,25 +437,15 @@
     // Close menu bar, if it is displayed
     iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarClose );
 
-    // Cannot delete active note, e.g. New call query, 
-    // but show waiting note with or without caller name
-    if ( IsAnyQueryActiveL() ||  
-        ( !aCommandParam.Boolean() && iOnScreenDialer ) )
-        {
-        CallWaitingNoteL( aCallId );        
-        }
-    else
-        {
-        // Remove any phone dialogs if they are displayed
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
-        }
+    // Remove any phone dialogs if they are displayed
+    iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
 
     // Indicate that the Phone needs to be sent to the background if
     // an application other than the top application is in the foreground
     TPhoneCmdParamBoolean booleanParam;
     booleanParam.SetBoolean( !TopAppIsDisplayedL() );
     iViewCommandHandle->ExecuteCommandL( 
-        EPhoneViewSetNeedToSendToBackgroundStatus,
+        EPhoneViewSetNeedToReturnToForegroundAppStatus,
         &booleanParam );
 
     // Bring Phone app in the foreground
--- a/phoneapp/phoneuistates/src/cphonetwosinglesandwaiting.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuistates/src/cphonetwosinglesandwaiting.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -238,7 +238,7 @@
     // Effect is shown when dialer exist.
     
     TBool effectStarted ( EFalse );
-    if ( !NeedToSendToBackgroundL())
+    if ( !NeedToReturnToForegroundAppL() )
         {
         BeginTransEffectLC( ENumberEntryOpen );
         effectStarted = ETrue;   
@@ -282,9 +282,9 @@
     if ( IsNumberEntryUsedL() )
         {
         // Go to background if necessary
-        if ( NeedToSendToBackgroundL() )
+        if ( NeedToReturnToForegroundAppL() )
             {
-            // Return phone to the background if send to background is needed.
+            // Return phone to the background if menu application is needed to foreground.
             iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
 
             iViewCommandHandle->ExecuteCommandL( EPhoneViewSetControlAndVisibility );
@@ -302,9 +302,9 @@
         // Set Two singles softkeys
         UpdateCbaL( EPhoneCallHandlingNewCallSwapCBA );
 	    
-        // If numberentry is not open just check NeedToSendToBackgroundL and 
+        // If numberentry is not open just check NeedToReturnToForegroundAppL and 
         // sendbackround if needed.
-        if ( NeedToSendToBackgroundL() )
+        if ( NeedToReturnToForegroundAppL() )
             {
             // Return phone to the background if send to background is needed.
             iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
@@ -398,7 +398,8 @@
     TPhoneCmdParamBoolean booleanParam;
     booleanParam.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( 
-        EPhoneViewSetNeedToSendToBackgroundStatus, &booleanParam );
+         EPhoneViewSetNeedToReturnToForegroundAppStatus,
+         &booleanParam );
         
     EndUiUpdate();
     // Go to Conference And Waiting state
--- a/phoneapp/phoneuiutils/inc/phoneconstants.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuiutils/inc/phoneconstants.h	Fri Mar 12 15:42:40 2010 +0200
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2005-2007 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2005-2010 Nokia Corporation and/or its subsidiary(-ies). 
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -63,6 +63,9 @@
 const TUid KPhoneUidLogStm = { 0x01002982 };        // Id for stm for Log application
 _LIT8( KPhoneStmLoadMagicString, "outside" );       // Message for activating view of an application
 
+// SimLock Ui UID to launch the SimLock App
+const TUid KSimLockUIApplicationUid= {0x2000B0FA};
+
 // Used in CPhoneKeyEventHandler
 // Seconds in microseconds
 const TInt KPhoneSecondInMicroseconds = 1000000;
--- a/phoneapp/phoneuiutils/inc/phoneloggerviewcommands.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuiutils/inc/phoneloggerviewcommands.h	Fri Mar 12 15:42:40 2010 +0200
@@ -1,21 +1,23 @@
 /*
-* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+* ============================================================================
+*  Name     : phoneloggerviewcommands.h
+*  Part of  : PhoneUI / phoneuiutils.dll
+*
+*  Description:
+*     Macro definition file for logging.
+*  Version:
 *
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*     Macro definition file for logging.
-*
+*  Copyright © 2007 Nokia Corporation.
+*  This material, including documentation and any related 
+*  computer programs, is protected by copyright controlled by 
+*  Nokia Corporation. All rights are reserved. Copying, 
+*  including reproducing, storing,  adapting or translating, any 
+*  or all of this material requires the prior written consent of 
+*  Nokia Corporation. This material also contains confidential 
+*  information which may not be disclosed to others without the 
+*  prior written consent of Nokia Corporation.
+* ============================================================================
 */
-
 // Autogenerated from phoneloggerviewcommands.st by the stringtable tool - Do not edit
 
 #ifndef STRINGTABLE_PhoneLoggerviewCommands
@@ -433,6 +435,10 @@
 		EPhoneViewGetEasyDialingMenuId,
 		/** EPhoneViewGetEasyDialingCbaId */
 		EPhoneViewGetEasyDialingCbaId,
+		/** EPhoneViewGetNeedToReturnToForegroundAppStatus */
+		EPhoneViewGetNeedToReturnToForegroundAppStatus,
+		/** EPhoneViewSetNeedToReturnToForegroundAppStatus */
+		EPhoneViewSetNeedToReturnToForegroundAppStatus,
 		/** , // Don't remove this, this should always be the last in list. */
 		EPhoneAmountOfCommands
 		};
--- a/phoneapp/phoneuiutils/inc/phonerssbase.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuiutils/inc/phonerssbase.h	Fri Mar 12 15:42:40 2010 +0200
@@ -370,6 +370,7 @@
 
     // Touch buttons
     EPhoneIncallButtons,
+    EPhoneIncallVideoShareButtons,
     EPhoneTwoSinglesButtons,
     EPhoneConferenceButtons,
     EPhoneParticipantListButtons,
--- a/phoneapp/phoneuiutils/src/cphoneresourceresolverbase.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuiutils/src/cphoneresourceresolverbase.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -1374,6 +1374,10 @@
             retVal = R_PHONEUI_INCALL_BUTTONS;
             break;
 
+        case EPhoneIncallVideoShareButtons:
+            retVal = R_PHONEUI_INCALL_VIDEO_SHARE_BUTTONS;
+            break;
+
         case EPhoneTwoSinglesButtons:
             retVal = R_PHONEUI_TWO_SINGLES_BUTTONS;
             break;
--- a/phoneapp/phoneuiutils/src/phoneloggerviewcommands.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuiutils/src/phoneloggerviewcommands.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -1,21 +1,23 @@
 /*
-* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+* ============================================================================
+*  Name     : phoneloggerviewcommands.cpp
+*  Part of  : PhoneUI / phoneuiutils.dll
+*
+*  Description:
+*     Macro definition file for logging.
+*  Version:
 *
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*     Macro definition file for logging.
-*
+*  Copyright © 2007 Nokia Corporation.
+*  This material, including documentation and any related 
+*  computer programs, is protected by copyright controlled by 
+*  Nokia Corporation. All rights are reserved. Copying, 
+*  including reproducing, storing,  adapting or translating, any 
+*  or all of this material requires the prior written consent of 
+*  Nokia Corporation. This material also contains confidential 
+*  information which may not be disclosed to others without the 
+*  prior written consent of Nokia Corporation.
+* ============================================================================
 */
-
 // Autogenerated from phoneloggerviewcommands.st by the stringtable tool - Do not edit
 #include <e32std.h>
 #include <stringpool.h>
@@ -226,7 +228,9 @@
 _STLIT8(K199, "EPhoneViewGetInvalidCsPhoneNumberFlag");
 _STLIT8(K200, "EPhoneViewGetEasyDialingMenuId");
 _STLIT8(K201, "EPhoneViewGetEasyDialingCbaId");
-_STLIT8(K202, ", // Don't remove this, this should always be the last in list.");
+_STLIT8(K202, "EPhoneViewGetNeedToReturnToForegroundAppStatus");
+_STLIT8(K203, "EPhoneViewSetNeedToReturnToForegroundAppStatus");
+_STLIT8(K204, ", // Don't remove this, this should always be the last in list.");
 
 // Intermediate
 const void * const KStringPointers[] =
@@ -432,8 +436,10 @@
 	(const void*)&K199,
 	(const void*)&K200,
 	(const void*)&K201,
-	(const void*)&K202
+	(const void*)&K202,
+	(const void*)&K203,
+	(const void*)&K204
 	};
 
-const TStringTable PhoneLoggerviewCommands::Table = {202, KStringPointers, EFalse};
+const TStringTable PhoneLoggerviewCommands::Table = {204, KStringPointers, EFalse};
 
--- a/phoneapp/phoneuiutils/src/phoneloggerviewcommands.st	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuiutils/src/phoneloggerviewcommands.st	Fri Mar 12 15:42:40 2010 +0200
@@ -201,4 +201,6 @@
 EPhoneViewGetInvalidCsPhoneNumberFlag EPhoneViewGetInvalidCsPhoneNumberFlag
 EPhoneViewGetEasyDialingMenuId EPhoneViewGetEasyDialingMenuId
 EPhoneViewGetEasyDialingCbaId EPhoneViewGetEasyDialingCbaId
+EPhoneViewGetNeedToReturnToForegroundAppStatus EPhoneViewGetNeedToReturnToForegroundAppStatus
+EPhoneViewSetNeedToReturnToForegroundAppStatus EPhoneViewSetNeedToReturnToForegroundAppStatus
 EPhoneAmountOfCommands, // Don't remove this, this should always be the last in list.
--- a/phoneapp/phoneuiview/group/phoneuiview.mmp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuiview/group/phoneuiview.mmp	Fri Mar 12 15:42:40 2010 +0200
@@ -165,4 +165,6 @@
 LIBRARY         platformenv.lib // PathInfo
 
 LIBRARY         phonemediatorcenter.lib
-LIBRARY         serviceprovidersettings.lib
\ No newline at end of file
+LIBRARY         serviceprovidersettings.lib
+
+LIBRARY         musmanagerclient.lib
--- a/phoneapp/phoneuiview/inc/cphonedialercontroller.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuiview/inc/cphonedialercontroller.h	Fri Mar 12 15:42:40 2010 +0200
@@ -164,6 +164,14 @@
     TBool EmergencyCallActive() const;
     
     /**
+     * Check if Easy Dialing contact listbox is in focus.
+     * @return  ETrue   if contact list is in focus
+     *          EFalse  otherwise (may be also because there's no ED
+     *                  present in the device)
+     */
+    TBool EasyDialingFocused() const;
+    
+    /**
      * Create button data object from given source data.
      * @param   aSourceData Defines, where the data should be loaded.
      * @param   aSkin       Skin instance. Ownership not transferred.
--- a/phoneapp/phoneuiview/inc/cphonemenucontroller.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuiview/inc/cphonemenucontroller.h	Fri Mar 12 15:42:40 2010 +0200
@@ -70,6 +70,8 @@
         
         void GetConferenceAndSingleFlag( TPhoneCommandParam* aCommandParam );
         
+        void SetConferenceAndWaitingVideoFlag( TBool aIsConfAndWaitingVideo );
+        
         void SetSoftRejectFlag( TPhoneCommandParam* aCommandParam );
         
         void GetSoftRejectFlag( TPhoneCommandParam* aCommandParam );
@@ -166,6 +168,7 @@
         TBool iMuteFlag;
         TBool iHoldFlag;
         TBool iConferenceAndSingleFlag;
+        TBool iConferenceAndWaitingVideoFlag;
         TBool iSoftRejectFlag;
         TBool iServiceCodeFlag;
         TBool iWiredAccFlag;
--- a/phoneapp/phoneuiview/inc/cphoneviewcontroller.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuiview/inc/cphoneviewcontroller.h	Fri Mar 12 15:42:40 2010 +0200
@@ -267,7 +267,7 @@
         * background after being brought to the foreground using
         * BringToForeground()
         */
-        TBool NeedToSendToBackground();
+        TBool GetNeedToReturnToForegroundAppAfterCall() const;
 
         /**
         * Gets the blocking dialogs status
@@ -277,7 +277,7 @@
         /**
         * Sets the required background status of the application
         */
-        void SetNeedToSendToBackground( TPhoneCommandParam* aCommandParam );
+        void SetNeedToReturnToForegroundAppAfterCall( TPhoneCommandParam* aCommandParam );
 
         /**
         * Sends application to background.
@@ -339,6 +339,11 @@
         void ActivateAppViewConventionalL( TPhoneCommandParam* aCommandParam );
 
         /**
+        * Launches multimedia sharing (live video sharing)
+        */
+        static void LaunchMultimediaSharingL();
+
+        /**
         * Launches application.
         */
         void LaunchApplicationL();
@@ -765,6 +770,10 @@
         TInt iPrevious;
 
         TBool iPriotityChanged;
+        
+        // Boolean flag. ETrue if the application needs to return
+        // to the foreground after call ended
+        TBool iNeedToReturnToForegroundAppAfterCall;
     };
 
 #endif // CPHONEVIEWCONTROLLER_H
--- a/phoneapp/phoneuiview/inc/phoneviewcommanddefinitions.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuiview/inc/phoneviewcommanddefinitions.h	Fri Mar 12 15:42:40 2010 +0200
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2002-2008 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2002-2010 Nokia Corporation and/or its subsidiary(-ies). 
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -233,6 +233,10 @@
     EPhoneViewGetInvalidCsPhoneNumberFlag,
     EPhoneViewGetEasyDialingMenuId,
     EPhoneViewGetEasyDialingCbaId,
+    EPhoneViewGetNeedToReturnToForegroundAppStatus,
+    EPhoneViewSetNeedToReturnToForegroundAppStatus,
+    EPhoneViewSetConferenceAndWaitingVideo,
+    EPhoneViewLaunchMultimediaSharing,
 
     EPhoneAmountOfCommands, // Don't remove this, this should always be the last in list.
 };
--- a/phoneapp/phoneuiview/src/cphonebuttonscontroller.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuiview/src/cphonebuttonscontroller.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies). 
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -854,6 +854,13 @@
             maskIndex = EMbmPhoneuiQgn_indi_button_silence_mask;
             break;
             }  
+        case EPhoneInCallCmdShareLiveVideo:
+            {
+            skinId = KAknsIIDQgnIndiButtonVideoShare;
+            fileIndex = EMbmPhoneuiQgn_indi_button_video_share;
+            maskIndex = EMbmPhoneuiQgn_indi_button_video_share_mask;
+            break;
+            }            
 
         default:
             return NULL; 
--- a/phoneapp/phoneuiview/src/cphonedialercontroller.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuiview/src/cphonedialercontroller.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -43,9 +43,9 @@
 /** States for Call button. */
 enum TCallButtonState
     {
-    ECallButtonCallStateIndex = 0,
-    ECallButtonLogStateIndex,
-    ECallButtonSendStateIndex
+    ECallButtonCallState = 0,
+    ECallButtonLogState,
+    ECallButtonSendState
     };
 static const CPhoneDialerController::TLocalButtonData KCallButtonDataTable[] =
     {
@@ -75,8 +75,8 @@
 /** States for Phonebook button */
 enum TPhonebookButtonState
     {
-    EPhonebookButtonContactsIndex = 0,
-    EPhonebookButtonAddContactIndex
+    EPhonebookButtonContactsState = 0,
+    EPhonebookButtonAddContactState
     };
 static const CPhoneDialerController::TLocalButtonData KPhonebookButtonDataTable[] =
     {
@@ -100,7 +100,7 @@
 /** States for Clear button */
 enum TClearButtonState
     {
-    EClearButtonClearIndex = 0
+    EClearButtonClearState = 0
     };
 static const CPhoneDialerController::TLocalButtonData KClearButtonDataTable[] =
     {
@@ -301,32 +301,27 @@
 //
 EXPORT_C TInt CPhoneDialerController::ButtonState( TButtonIndex aIndex ) const
     {
-    TInt state = 0;
+    TInt state( KErrNotFound );
     // Figure out correct state for each key
     switch ( aIndex )
         {
         case ECallButton:
             {
-            state = ECallButtonCallStateIndex;
             if ( !iNumberAvailable )
                 {
-                state = ECallButtonLogStateIndex;
+                // Show "Recent calls" when no number available
+                state = ECallButtonLogState;
                 }
-            else if ( iServiceCodeFlag )
+            else if ( iServiceCodeFlag && !EasyDialingFocused() )
                 {
-                // Set "Send" state unless Easy dialing is focused
-                TBool edFocused = EFalse;
-                if ( iEasyDialingController )
-                    {
-                    TInt commandResponse( EPhoneViewResponseFailed );
-                    TRAP_IGNORE( commandResponse = iEasyDialingController->HandleCommandL(
-                            EPhoneViewGetEasyDialingInFocusStatus) );
-                    edFocused = ( commandResponse == EPhoneViewResponseSuccess );
-                    }
-                if ( !edFocused )
-                    {
-                    state = ECallButtonSendStateIndex;
-                    }
+                // Show "Send" if service code entered and contact list
+                // is not focused.
+                state = ECallButtonSendState;
+                }
+            else
+                {
+                // Show "Call" in all other cases
+                state = ECallButtonCallState;
                 }
             }
             break;
@@ -334,17 +329,17 @@
             {
             if ( !iNumberAvailable )
                 {
-                state = EPhonebookButtonContactsIndex;
+                state = EPhonebookButtonContactsState;
                 }
             else
                 {
-                state = EPhonebookButtonAddContactIndex;
+                state = EPhonebookButtonAddContactState;
                 }
             }
             break;
         case EClearButton:
             {
-            state = EClearButtonClearIndex;
+            state = EClearButtonClearState;
             }
             break;
         default:
@@ -411,6 +406,23 @@
     }
 
 // ---------------------------------------------------------------------------
+// EasyDialingFocused
+// ---------------------------------------------------------------------------
+//
+TBool CPhoneDialerController::EasyDialingFocused() const
+    {
+    TBool edFocused = EFalse;
+    if ( iEasyDialingController )
+        {
+        TInt commandResponse( EPhoneViewResponseFailed );
+        TRAP_IGNORE( commandResponse = iEasyDialingController->HandleCommandL(
+                EPhoneViewGetEasyDialingInFocusStatus) );
+        edFocused = ( commandResponse == EPhoneViewResponseSuccess );
+        }
+    return edFocused;
+    }
+
+// ---------------------------------------------------------------------------
 // CreateButtonDataL
 // ---------------------------------------------------------------------------
 //
--- a/phoneapp/phoneuiview/src/cphonedialerview.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuiview/src/cphonedialerview.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -326,10 +326,7 @@
             }
         else
             {
-            if ( iControlRect != iControl->Rect() )
-                {
-                iControl->SetRect( iControlRect );
-                }
+            iControl->SetRect( iControlRect );
             } 
         }
     }
--- a/phoneapp/phoneuiview/src/cphoneeasydialingcontroller.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuiview/src/cphoneeasydialingcontroller.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -22,6 +22,7 @@
 #include "tphonecmdparaminteger.h"
 #include "tphonecmdparamdynmenu.h"
 #include "dialingextensioninterface.h"
+#include "easydialingcommands.hrh"
 
 // ======== MEMBER FUNCTIONS ========
 
--- a/phoneapp/phoneuiview/src/cphonemenucontroller.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuiview/src/cphonemenucontroller.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -227,6 +227,12 @@
         {
         switch( menuItemArray[ i ] )
             {
+            case EPhoneInCallCmdAnswer:
+                if ( iConferenceAndWaitingVideoFlag )
+                    {
+                    menuPane->DeleteMenuItem( menuItemArray[ i ] );
+                    }
+                break;
             case EPhoneInCallCmdDialer:
                 if ( !onScreenDialer )
                     {
@@ -681,6 +687,16 @@
     }
 
 // ---------------------------------------------------------
+// CPhoneMenuController::SetConferenceAndWaitingVideoFlag
+// ---------------------------------------------------------
+//
+void CPhoneMenuController::SetConferenceAndWaitingVideoFlag( TBool aIsConfAndWaitingVideo )
+    {
+    __LOGMETHODSTARTEND( EPhoneUIView, "CPhoneMenuController::SetConferenceAndWaitingVideoFlag" );
+    iConferenceAndWaitingVideoFlag = aIsConfAndWaitingVideo;
+    }
+
+// ---------------------------------------------------------
 // CPhoneMenuController::SetSoftRejectFlag
 // ---------------------------------------------------------
 //
--- a/phoneapp/phoneuiview/src/cphoneviewcontroller.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneapp/phoneuiview/src/cphoneviewcontroller.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -73,6 +73,7 @@
 #include "tphonecmdparampointer.h"
 #include "dialer.hrh"
 #include "phoneui.hrh"
+#include "musmanager.h"
 #include <apgtask.h>
 #include <apgwgnam.h>
 #include <apacmdln.h>
@@ -133,6 +134,7 @@
 #include <gslauncher.h> // Call Settings launch.
 
 #include <dialingextensioninterface.h>
+#include <easydialingcommands.hrh>
 
 // Kastor effect IDs, aknskincontent/101f84b9.sel
 const TInt KTouchDialerOpenEffect  = 1505;
@@ -148,7 +150,7 @@
 //
 CPhoneViewController::CPhoneViewController() :
     iEikEnv( *CEikonEnv::Static() ),
-    iNeedToSendToBackground( EFalse ),
+    iNeedToReturnToForegroundAppAfterCall( EFalse ),
     iHelpCommand( KINCAL_HLP_CALL_HANDLING ),
     iBlockingDialogIsDisplayed( EFalse ),
     iIdleUid( KErrNotFound ),
@@ -637,6 +639,12 @@
             }
             break;
 
+        case EPhoneViewLaunchMultimediaSharing:
+            {
+            LaunchMultimediaSharingL();
+            }
+            break;
+
         default:
             __PHONELOG( EBasic, EPhonePhoneapp,
                 "CPhoneViewController::ExecuteCommandL -> UnKnownMessage !");
@@ -835,8 +843,8 @@
             }
             break;
 
-        case EPhoneViewSetNeedToSendToBackgroundStatus:
-            SetNeedToSendToBackground( aCommandParam );
+        case EPhoneViewSetNeedToReturnToForegroundAppStatus:
+            SetNeedToReturnToForegroundAppAfterCall( aCommandParam );
             break;
 
        case EPhoneViewSetBlockingDialogStatus:
@@ -1192,7 +1200,13 @@
                 iEasyDialingController->ExecuteCommandL( aCmdId, aCommandParam );
                 }
             break;
-
+        case EPhoneViewSetConferenceAndWaitingVideo:
+            {
+            TPhoneCmdParamBoolean*  booleanParam =
+                            static_cast<TPhoneCmdParamBoolean*>( aCommandParam );
+            iMenuController->SetConferenceAndWaitingVideoFlag( booleanParam->Boolean() );
+			}
+            break;
         default:
             __PHONELOG( EBasic, EPhonePhoneapp,
              "CPhoneViewController::ExecuteCommandL -> UnKnownMessage !!! " );
@@ -1466,9 +1480,10 @@
             break;
             }
         case EPhoneViewGetSingleItemFetchType:
+            {
             static_cast<TPhoneCmdParamInteger*>( aCommandParam )->SetInteger( SingleItemFetchType() );
             break;
-
+            }
         case EPhoneViewSetPhoneCustomization:
             {
             TPhoneCmdParamPointer* pointerParam =
@@ -1573,8 +1588,8 @@
                 EPhoneViewResponseFailed;
             break;
 
-        case EPhoneViewGetNeedToSendToBackgroundStatus:
-            viewResponse = NeedToSendToBackground() ?
+        case EPhoneViewGetNeedToReturnToForegroundAppStatus:
+            viewResponse = GetNeedToReturnToForegroundAppAfterCall() ?
                 EPhoneViewResponseSuccess :
                 EPhoneViewResponseFailed;
             break;
@@ -1737,7 +1752,7 @@
             // If dialer was not active and needtosendback is false
             // then check if dialer view is to be opened.
             if ( !iDialerActive &&
-                 !iNeedToSendToBackground &&
+                 !iNeedToReturnToForegroundAppAfterCall &&
                  iPhoneView->PhoneAppViewToDialer() )
                 {
                 SetControltoDialerL();
@@ -2189,8 +2204,8 @@
 //
 void CPhoneViewController::NumberEntryStateChanged( TBool aEntryHasText )
     {
+    iMenuController->SetNumberEntryEmptyFlag( !aEntryHasText );
     iBubbleWrapper->HandleNumberEntryChanged();
-    iMenuController->SetNumberEntryEmptyFlag( !aEntryHasText );
     ExecuteCommandL( EPhoneViewUpdateToolbar );
     }
 
@@ -2225,31 +2240,6 @@
     }
 
 // ---------------------------------------------------------------------------
-// CPhoneViewController::SetNeedToSendToBackground
-// ---------------------------------------------------------------------------
-//
-void CPhoneViewController::SetNeedToSendToBackground(
-    TPhoneCommandParam* aCommandParam )
-    {
-    TPhoneCmdParamBoolean* booleanParam = static_cast<TPhoneCmdParamBoolean*>(
-        aCommandParam );
-
-    iNeedToSendToBackground = booleanParam->Boolean();
-    __PHONELOG1( EBasic, EPhoneUIView,
-        "CPhoneViewController::SetNeedToSendToBackground(%d)",
-        iNeedToSendToBackground );
-    }
-
-// ---------------------------------------------------------------------------
-// CPhoneViewController::NeedToSendToBackground
-// ---------------------------------------------------------------------------
-//
-TBool CPhoneViewController::NeedToSendToBackground()
-    {
-    return iNeedToSendToBackground;
-    }
-
-// ---------------------------------------------------------------------------
 // CPhoneViewController::SendToBackgroundL
 // ---------------------------------------------------------------------------
 //
@@ -2301,7 +2291,7 @@
         }
 
     // Clear the send to background flag
-    iNeedToSendToBackground = EFalse;
+    iNeedToReturnToForegroundAppAfterCall = EFalse;
     }
 
 // ---------------------------------------------------------------------------
@@ -2593,6 +2583,17 @@
     }
 
 // ---------------------------------------------------------------------------
+// CPhoneViewController::LaunchMultimediaSharingL (static)
+// ---------------------------------------------------------------------------
+//
+void CPhoneViewController::LaunchMultimediaSharingL()
+    {
+    CMusManager* manager = CMusManager::NewLC();
+    manager->StartApplicationL( MultimediaSharing::EMusLiveVideo );
+    CleanupStack::PopAndDestroy( manager );
+    }
+
+// ---------------------------------------------------------------------------
 // CPhoneViewController::LaunchApplicationL
 // ---------------------------------------------------------------------------
 //
@@ -3030,15 +3031,13 @@
     // Indicate that the contact operation is blocking key
     // events from the Phone
     iBlockingDialogIsDisplayed = ETrue;
-    TBool numberAssigned;
-    TRAPD( err,
-        numberAssigned = AssignSpeedDialLocationL(
-        locationParam->Integer()))
+    TBool numberAssigned = EFalse;
+    TRAP_IGNORE( numberAssigned = AssignSpeedDialLocationL(locationParam->Integer()) );
 
     // Reset the flag
     iBlockingDialogIsDisplayed = EFalse;
 
-    return err ? EFalse : numberAssigned;
+    return numberAssigned;
     }
 
 // ---------------------------------------------------------------------------
@@ -3702,7 +3701,8 @@
             {
             SwapEmptyIndicatorPaneInSecureStateL( EFalse );
 
-            iStatusPane->NaviPane().Pop();
+            //  do Pop for navipane
+            iAudioController->DeactivateVolumeControl();
 
             if ( !Layout_Meta_Data::IsLandscapeOrientation() )
                 {
@@ -3856,12 +3856,12 @@
     __PHONELOG1( EBasic, EPhoneUIView,
         "CPhoneViewController::SetControltoCallHandlingL iDialerActive (%d)", iDialerActive );
 
-    // If securitymode or emergency call not show toolbar
+    // Do not show toolbar if securitymode or emergency call active
     if ( !iPhoneView->IsSecurityMode() && 
-     !iIncallIndicator->IsEmergencyCall() )
-     {
-         iToolbarController->ShowToolbar();
-     }
+         !iIncallIndicator->IsEmergencyCall() )
+        {
+        iToolbarController->ShowToolbar();
+        }
     if ( iDialerActive )
         {
         iDialerActive = EFalse;
@@ -4020,4 +4020,29 @@
     return ret;
     }
 
+// ---------------------------------------------------------------------------
+// CPhoneViewController::SetNeedToReturnToForegroundAppAfterCall
+// ---------------------------------------------------------------------------
+//
+void CPhoneViewController::SetNeedToReturnToForegroundAppAfterCall(
+    TPhoneCommandParam* aCommandParam )
+    {
+    TPhoneCmdParamBoolean* booleanParam = static_cast<TPhoneCmdParamBoolean*>(
+        aCommandParam );
+
+    iNeedToReturnToForegroundAppAfterCall = booleanParam->Boolean();
+    __PHONELOG1( EBasic, EPhoneUIView,
+        "CPhoneViewController::SetNeedToReturnToForegroundAppAfterCall(%d)",
+        iNeedToReturnToForegroundAppAfterCall );
+    }
+
+// ---------------------------------------------------------------------------
+// CPhoneViewController::GetNeedToReturnToForegroundAppAfterCall
+// ---------------------------------------------------------------------------
+//
+TBool CPhoneViewController::GetNeedToReturnToForegroundAppAfterCall() const
+    {
+    return iNeedToReturnToForegroundAppAfterCall;
+    }
+
 // End of File
--- a/phoneengine/audiohandling/data/defaultbeep.rss	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneengine/audiohandling/data/defaultbeep.rss	Fri Mar 12 15:42:40 2010 +0200
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2006-2010 Nokia Corporation and/or its subsidiary(-ies). 
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -231,6 +231,33 @@
 	// 11 = OPCODE_END
 	}
 
+RESOURCE VAR_ARRAY r_net_call_waiting_alternative_tone
+        {
+        sequence={0,17,10,83,20,64,10,83,20,64,125,64,125,64,100,83,20,64,10,83,20,11};
+        // 0  = OPCODE_SEQUENCE_START
+	// 17 = OPCODE_DURATION_UNIT
+	// 10 = duration unit => tone duration is 10ms * tone_tick
+	// 83-64=19=AUD_TONE_NETWORK_DUAL_FREQ_2 = 440Hz
+	// 20 = tone_tick = 200ms
+	// 64-64 = 0 = AUD_TONE_FREQ_OFF         = 0Hz
+	// 10 = tone_tick = 100ms
+	// 83-64=19=AUD_TONE_NETWORK_DUAL_FREQ_2 = 440Hz
+	// 20 = tone_tick = 200ms
+	// 64-64 = 0 = AUD_TONE_FREQ_OFF         = 0Hz
+	// 125 = tone_tick = 1250ms
+	// 64-64 = 0 = AUD_TONE_FREQ_OFF         = 0Hz
+	// 125 = tone_tick = 1250ms
+	// 64-64 = 0 = AUD_TONE_FREQ_OFF         = 0Hz
+	// 100 = tone_tick = 1000ms
+	// 83-64=19=AUD_TONE_NETWORK_DUAL_FREQ_2 = 440Hz
+	// 20 = tone_tick = 200ms
+	// 64-64 = 0 = AUD_TONE_FREQ_OFF         = 0Hz
+	// 10 = tone_tick = 100ms
+	// 83-64=19=AUD_TONE_NETWORK_DUAL_FREQ_2 = 440Hz
+	// 20 = tone_tick = 200ms
+	// 11 = OPCODE_END
+        }
+
 RESOURCE VAR_ARRAY r_data_call_tone
 	{
 	sequence={0,17,6,2,252,10,8,5,8,84,3,89,3,6,10,247,64,50,7,11};
--- a/phoneengine/audiohandling/group/audiohandling.mmp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneengine/audiohandling/group/audiohandling.mmp	Fri Mar 12 15:42:40 2010 +0200
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2004-2007 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2004-2010 Nokia Corporation and/or its subsidiary(-ies). 
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -62,5 +62,6 @@
 LIBRARY         flogger.lib
 LIBRARY         mediaclientaudio.lib
 LIBRARY         mmfdevsound.lib
+LIBRARY         featmgr.lib
 
 LANG            SC
\ No newline at end of file
--- a/phoneengine/audiohandling/src/cpeaudioinbandtoneplayer.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneengine/audiohandling/src/cpeaudioinbandtoneplayer.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2002-2004 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2002-2010 Nokia Corporation and/or its subsidiary(-ies). 
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -27,6 +27,7 @@
 #include    <barsread.h>
 #include    <data_caging_path_literals.hrh> 
 #include    <defaultbeep.rsg>           
+#include    <featmgr.h>
 #include    <pepanic.pan>
 #include    <talogger.h>    
 
@@ -147,7 +148,18 @@
     HBufC8* resourceSpecial = resourceFile.AllocReadL( R_NET_SPECIAL_INFORMATION );
     HBufC8* resourceRadioPath = resourceFile.AllocReadL( R_NET_RADIO_NOT_AVAILABLE );
     HBufC8* resourceRingGoing = resourceFile.AllocReadL( R_NET_RING_GOING );
-    HBufC8* resourceCallWaiting = resourceFile.AllocReadL( R_NET_CALL_WAITING );
+    
+    HBufC8* resourceCallWaiting;
+    
+    if ( FeatureManager::FeatureSupported( KFeatureIdFfAlternativeCallWaitingTone ) )
+        {
+        resourceCallWaiting = resourceFile.AllocReadL( R_NET_CALL_WAITING_ALTERNATIVE_TONE );
+        }
+    else
+        {
+        resourceCallWaiting = resourceFile.AllocReadL( R_NET_CALL_WAITING );
+        }  
+        
     HBufC8* dataCallTone = resourceFile.AllocReadL( R_DATA_CALL_TONE );
     HBufC8* noSoundSequence = resourceFile.AllocReadL( R_NO_SOUND_SEQUENCE );
     HBufC8* beepSequence = resourceFile.AllocReadL( R_BEEP_SEQUENCE );
--- a/phoneengine/callhandling/inc/cpecallhandling.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneengine/callhandling/inc/cpecallhandling.h	Fri Mar 12 15:42:40 2010 +0200
@@ -662,8 +662,9 @@
          * different from dialled number.
          * @param aCallid.
          * @param aCall reference to call object
+         * @return Updating Colp number was necessary.
          */
-        void SetColpNumber( TInt aCallId, const MCCECall& aCall ) const;
+        TBool UpdateColpNumber( TInt aCallId, const MCCECall& aCall ) const;
 
     protected:
         // Phone model instance which owns this object.
--- a/phoneengine/callhandling/src/cpecallhandling.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneengine/callhandling/src/cpecallhandling.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -443,20 +443,20 @@
             {
             TEFLOGSTRING( KTAMESINT, "CALL CPECallHandling::SendMessage -> EPEMessageRemotePartyInfoChanged");
             // HO cases call type can changes
-            CPESingleCall* connectedCall;
-            connectedCall = iCallArrayOwner->CallPointerByState( EPEStateConnected );
-            
-            if( connectedCall )
+            CPESingleCall* call;
+            call = static_cast<CPESingleCall*>( iCallArrayOwner->CallByCallId( aCallId ) );
+                                 
+            if ( EPEStateConnected == call->GetCallState() )
                 {
-                MCCECall& call = connectedCall->Call();
-                CCPCall::TCallType callType = call.Parameters().CallType();
+                MCCECall& connectedCall = call->Call();
+                CCPCall::TCallType callType = connectedCall.Parameters().CallType();
                 
                 if ( callType == CCPCall::ECallTypePS ) 
                     {
                     TEFLOGSTRING( KTAMESINT, 
                         "CALL CPECallHandling::SendMessage -> EPEMessageRemotePartyInfoChanged->update call type to PS");
                     iModel.DataStore()->SetCallType( EPECallTypeVoIP, aCallId ); 
-                    iModel.DataStore()->SetServiceIdCommand( connectedCall->Call().Parameters().ServiceId() );
+                    iModel.DataStore()->SetServiceIdCommand( call->Call().Parameters().ServiceId() );
                     iCallOpenParams->SetCallType( CCPCall::ECallTypePS); 
                     }
                 else if ( callType == CCPCall::ECallTypeCSVoice )
@@ -465,13 +465,17 @@
                         "CALL CPECallHandling::SendMessage -> EPEMessageRemotePartyInfoChanged->update call type to CS");
                     iCallOpenParams->SetCallType( CCPCall::ECallTypeCSVoice );
                     iModel.DataStore()->SetServiceIdCommand( 1 );
-                    iModel.DataStore()->SetCallType( EPECallTypeCSVoice, aCallId );  
-                    SetColpNumber( aCallId, call );
+                    iModel.DataStore()->SetCallType( EPECallTypeCSVoice, aCallId ); 
+                    
+                    if ( UpdateColpNumber( aCallId, connectedCall ))
+                        {
+                        iModel.SendMessage( MEngineMonitor::EPEMessageColpNumberAvailable, aCallId );
+                        }
                     }
                 
-                iModel.DataStore()->SetRemotePartyName( call.RemotePartyName(), aCallId );                
-                iModel.DataStore()->SetRemotePhoneNumber( call.RemoteParty(), aCallId );
-                iModel.DataStore()->SetCallIndex(call.CallIndex(), aCallId );
+                iModel.DataStore()->SetRemotePartyName( connectedCall.RemotePartyName(), aCallId );                
+                iModel.DataStore()->SetRemotePhoneNumber( connectedCall.RemoteParty().Left( KPEPhoneNumberMaxLength ), aCallId );
+                iModel.DataStore()->SetCallIndex(connectedCall.CallIndex(), aCallId );
                 }
             break;
             }
@@ -484,7 +488,7 @@
                 {
                 MCCECall& call = callData->Call();
                 iModel.DataStore()->SetRemotePartyName( call.RemotePartyName(), aCallId );
-                iModel.DataStore()->SetRemotePhoneNumber( call.RemoteParty(), aCallId );
+                iModel.DataStore()->SetRemotePhoneNumber( call.RemoteParty().Left( KPEPhoneNumberMaxLength ), aCallId );
                 iModel.DataStore()->SetCallIndex(call.CallIndex(), aCallId );
                 }
             break;
@@ -833,7 +837,7 @@
 
     else if ( CallIdCheck::IsConference( aCallId ) )
         {
-        ReleaseConference();
+        errorCode = ReleaseConference();
         }
     return errorCode;
     }
@@ -2372,13 +2376,19 @@
     else
         {
         CPESingleCall* callData = iCallArrayOwner->CallPointerByState( EPEStateHeld );
-        // Check that no actice and held call, if waiting call gets idle
-        CPESingleCall* connectedCallData = iCallArrayOwner->CallPointerByState( EPEStateConnected );
-        if( callData && ( iModel.DataStore()->ResumeHeldCall( callData->GetCallId() ) )
-                    && !connectedCallData )
+        if ( callData )
             {
-            TEFLOGSTRING( KTAINT, "CALL CPECallHandling::HandleAutoResume single" );
-            callData->Resume();
+            // Checks to be done in case waiting call gets idle state:
+            // Check that no active and held calls case
+            // Check that no dialling/connecting and held calls case
+            if ( iModel.DataStore()->ResumeHeldCall( callData->GetCallId() ) &&
+                 !IsCallInState( EPEStateConnected ) &&
+                 !IsCallInState( EPEStateConnecting ) &&
+                 !IsCallInState( EPEStateDialing ) )
+                {
+                TEFLOGSTRING( KTAINT, "CALL CPECallHandling::HandleAutoResume single" );
+                callData->Resume();
+                }
             }
         }
     }
@@ -2426,37 +2436,51 @@
     }
 
 // -----------------------------------------------------------------------------
-// CPECallHandling::SetColpNumber
+// CPECallHandling::UpdateColpNumber
 // -----------------------------------------------------------------------------
 //
-void CPECallHandling::SetColpNumber( TInt aCallId, const MCCECall& aCall ) const
+TBool CPECallHandling::UpdateColpNumber( TInt aCallId, const MCCECall& aCall ) const
     {
-    TEFLOGSTRING( KTAINT, "CALL CPECallHandling::SetColpNumber" );
+    TEFLOGSTRING( KTAINT, "CALL CPECallHandling::UpdateColpNumber" );
     
+    TBool updateDone( EFalse );
     TInt errorCode( KErrNone );
     TInt value( KPEMatchDefault );
-    TPEMatcher matcher;    
+    TPEMatcher matcher;       
+    TPEPhoneNumber remoteNumber;
+    
+    MPEDataStore* dataStore = iModel.DataStore();
     
-    const TPEPhoneNumber& origRemoteNumber = iModel.DataStore()->RemotePhoneNumber( aCallId );    
-    const TPEPhoneNumber& remoteNumber = aCall.RemoteParty();
+    if ( dataStore->RemoteColpNumber( aCallId ).Length() )
+        {
+        remoteNumber = dataStore->RemoteColpNumber( aCallId );
+        }
+    else
+        {
+        remoteNumber = dataStore->RemotePhoneNumber( aCallId );
+        }    
+        
+    const TPEPhoneNumber& updatedNumber = aCall.RemoteParty();
     
     errorCode = iRepository->Get( KTelMatchDigits, value );
-
     if ( !errorCode == KErrNone )
         {
         TEFLOGSTRING( KTAOBJECT, "Reading KTelMatchDigits failed, use default value for matching");
-        }    
+        } 
     
     //check if remote number is different from dialled number
-    if ( !matcher.numbersMatch( origRemoteNumber, remoteNumber, value ) )
+    if ( !matcher.numbersMatch( remoteNumber, updatedNumber, value ) )
         {
         //set COLP number        
-        iModel.DataStore()->SetRemoteColpNumber( remoteNumber, aCallId );
+        dataStore->SetRemoteColpNumber( updatedNumber, aCallId );
         
         TEFLOGSTRING3( KTAMESINT, 
-                "CPECallHandling::SetColpNumber, colp number: '%S', call id: %d", 
-                &remoteNumber, aCallId );
-        }        
+                "CPECallHandling::UpdateColpNumber, colp number: '%S', call id: %d", 
+                &updatedNumber, aCallId );
+        updateDone = ETrue;
+        }  
+    
+    return updateDone;
     }
         
 // -----------------------------------------------------------------------------
Binary file phoneengine/phonemodel/conf/s60telephony.confml has changed
--- a/phoneengine/phonemodel/src/cpemessagehandler.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneengine/phonemodel/src/cpemessagehandler.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -2886,11 +2886,7 @@
 void CPEMessageHandler::HandleRemotePartyInfoChanged( const TInt aCallId )
     {        
     UpdateRemotePartyInfo(); 
-    
-    if ( iDataStore.RemoteColpNumber( aCallId ).Length() )
-        {
-        iModel.SendMessage( MEngineMonitor::EPEMessageColpNumberAvailable, aCallId );
-        }
+        
     }
 
 
--- a/phoneengine/phonemodel/src/cpephonemodel.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneengine/phonemodel/src/cpephonemodel.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -1225,24 +1225,41 @@
     TEFLOGSTRING( KTAOBJECT, "CPEPhoneModel::DelayMessageSending" );
         
     TBool sendingDelayed( EFalse );
-    
-    if ( MEngineMonitor::EPEMessageInitiatedEmergencyCall == aMessage )
+        
+    switch ( aMessage )
         {
-        iEngineInfo->SetIsSwitchToOperationOngoing( EFalse );
-        if ( iCallStackCutter )
+        case MEngineMonitor::EPEMessageInitiatedEmergencyCall:
             {
-            delete iCallStackCutter;
-            iCallStackCutter = NULL;
+            iEngineInfo->SetIsSwitchToOperationOngoing( EFalse );  
+            sendingDelayed = ETrue;            
+            }
+            break;
+        case MEngineMonitor::EPEMessageColpNumberAvailable:
+            {              
+            sendingDelayed = ETrue;            
             }
-        TRAPD( err, iCallStackCutter = CIdle::NewL( CActive::EPriorityHigh ) );
-        if ( !err )
-            {
-            iCallBackMessage = aMessage; 
-            iCallBackCallId  = aCallId;
-            iCallStackCutter->Start( TCallBack( CallBackMessageSend , this ) );
-            }
-        sendingDelayed = ETrue;        
+            break;
+        default:
+            // Other messages cause no action.
+            break;
         }
+    
+        if ( sendingDelayed )
+            {        
+            if ( iCallStackCutter )
+                {
+                delete iCallStackCutter;
+                iCallStackCutter = NULL;
+                }
+            TRAPD( err, iCallStackCutter = CIdle::NewL( CActive::EPriorityHigh ) );
+            if ( !err )
+                {
+                iCallBackMessage = aMessage; 
+                iCallBackCallId  = aCallId;
+                iCallStackCutter->Start( TCallBack( CallBackMessageSend , this ) );
+                }
+            }                
+        
     return sendingDelayed;
     }
 
--- a/phoneuis/dialer/group/iconlist.txt	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneuis/dialer/group/iconlist.txt	Fri Mar 12 15:42:40 2010 +0200
@@ -1,1 +1,2 @@
 -c8,8  qgn_indi_dialer_voicemail
+-c8,8  qgn_indi_dialer_internet
--- a/phoneuis/dialer/inc/cdialerkeypadbutton.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneuis/dialer/inc/cdialerkeypadbutton.h	Fri Mar 12 15:42:40 2010 +0200
@@ -141,6 +141,7 @@
         void GetTextColors( TRgb& aPenColor, TRgb& aBrushColor ) const; 
         void MapDialerIconToSkinIcon( TInt aDialerIcon, 
                                       TAknsItemID& aItemId ) const; 
+        void SetIconLayout( const TRect& aRect );
         
     private: // constructors    
         
--- a/phoneuis/dialer/inc/cdialerkeypadcontainer.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneuis/dialer/inc/cdialerkeypadcontainer.h	Fri Mar 12 15:42:40 2010 +0200
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2007 - 2010 Nokia Corporation and/or its subsidiary(-ies). 
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -177,21 +177,16 @@
          * Keypad buttons.
          * Owned.
          */
-        RPointerArray<CDialerKeyPadButton> iButtons;  
+        RPointerArray<CDialerKeyPadButton> iButtons;
         
         /**
-         * Number of buttons.
+         * True, when EEventStateChanged event reported. 
          */
-        TInt iButtonCount;
-         
-        /**
-         * True, when EEventStateChanged event reported. 
-         */        
         TBool iButtonPressedDown;
         
         /**
          * Stores last pointer event. 
-         */        
+         */
         TPointerEvent iPointerEvent;
         
         /**
--- a/phoneuis/dialer/inc/cdialerkeypadlabelmanager.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneuis/dialer/inc/cdialerkeypadlabelmanager.h	Fri Mar 12 15:42:40 2010 +0200
@@ -21,10 +21,12 @@
 // INCLUDES
 #include <e32std.h>
 #include <e32base.h>
+#include <badesca.h>
 #include "cdialercenrepwrapper.h"
 
 
 // FORWARD DECLARATIONS
+class CCoeEnv;
 class CPtiEngine;
 class CEnvironmentChangeNotifier;
 
--- a/phoneuis/dialer/src/cdialer.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneuis/dialer/src/cdialer.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -32,6 +32,7 @@
 #include <bautils.h>                        // for BaflUtils
 #include <aknedsts.h>
 #include <dialingextensioninterface.h>
+#include <easydialingcommands.hrh>
 #include <dialer.rsg>
 
 #include "cdialer.h"
@@ -306,7 +307,7 @@
 TInt CDialer::ChangeEditorMode( TBool aDefaultMode )
     {
     TInt ret( KErrNotSupported );
-    ret = iNumberEntry->ChangeEditorMode( aDefaultMode );        
+    ret = iNumberEntry->ChangeEditorMode( aDefaultMode );
     return ret;
     }
     
--- a/phoneuis/dialer/src/cdialerkeypadbutton.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneuis/dialer/src/cdialerkeypadbutton.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -36,7 +36,20 @@
 #include "cdialerkeypadbutton.h"
 
 _LIT( KDialerMifFileName, "dialer.mif" );
-static const TInt KIconMarginPercent = 5;
+
+// Keypad icon size relative to height of button.
+static const TInt KIconSizePercent = 40;
+
+// Keypad icon size used when key has already two lines
+// of text, and the icon needs to be squeezed into smaller space.
+static const TInt KSmallIconSizePercent = 30;
+
+// Horizontal icon margin relative to button width. 
+static const TInt KIconMarginXPercent = 10;
+
+// Vertical icon margin relative to button height. 
+static const TInt KIconMarginYPercent = 5;
+
 static const TInt KCent = 100;
 
 // ---------------------------------------------------------------------------
@@ -202,49 +215,22 @@
             {
             iPrimaryAlphaLayout.LayoutText( buttonRect, 
                 AknLayoutScalable_Apps::cell_dia3_key_num_pane_t2( iVariety ) );
-            }
-
-        // Icon layout
-        iconLayout.LayoutRect( buttonRect, 
-            AknLayoutScalable_Apps::cell_dialer2_keypad_pane_g2( 1 ) );
-        iIconRect = iconLayout.Rect();
-
-        // Icon doesn't fit to location set in the layout if key has any alpha label.
-        // In that case, move the icon to upper-right corner.
-        if ( iPrimaryAlphaLabel.Length() || iSecondaryAlphaLabel.Length() )
-            {
-            TSize iconSize = iIconRect.Size();
-            TInt xMargin = buttonRect.Width() * KIconMarginPercent / KCent;
-            TInt yMargin = buttonRect.Height() * KIconMarginPercent / KCent;
-            TPoint iconPos( buttonRect.iBr.iX - iconSize.iWidth - xMargin, 
-                            buttonRect.iTl.iY + yMargin );
-            iIconRect.SetRect( iconPos, iconSize );
-            }
+            }   
         }
     else if ( iOperationMode == EModeDialer )
         {
         // Number layout
         iNumberLayout.LayoutText( buttonRect, 
             AknLayoutScalable_Apps::cell_dialer2_keypad_pane_t1() );
-    
-        // Icon layout
-        iconLayout.LayoutRect( buttonRect,
-            AknLayoutScalable_Apps::cell_dialer2_keypad_pane_g2( 1 ) );
-        iIconRect = iconLayout.Rect();
         }
     else // video mode layout
         {
         // Number layout
         iNumberLayout.LayoutText( buttonRect, 
-            AknLayoutScalable_Apps::cell_video_dialer_keypad_pane_t1() );
-        
-        // Icon layout
-        iconLayout.LayoutRect( buttonRect, 
-            AknLayoutScalable_Apps::cell_video_dialer_keypad_pane_g2( 2 ) );
-        iIconRect = iconLayout.Rect();
+            AknLayoutScalable_Apps::cell_video_dialer_keypad_pane_t1() );        
         }
 
-    SetIconSize( iIconRect.Size() );
+    SetIconLayout( buttonRect );
     }
 
 // -----------------------------------------------------------------------------
@@ -371,7 +357,9 @@
 TInt CDialerKeyPadButton::KeyCode() const
     {
     return iKeyCode;
-    }    
+    }
+
+
 // ---------------------------------------------------------------------------
 // 
 // ---------------------------------------------------------------------------
@@ -389,6 +377,44 @@
         }
     }   
 
+
+// ---------------------------------------------------------------------------
+// 
+// ---------------------------------------------------------------------------
+//
+void CDialerKeyPadButton::SetIconLayout( const TRect& aRect )
+    {
+    // Calculate icon size and placement.
+    TInt iconSize = aRect.Height() * KIconSizePercent / KCent;             
+    TInt xMargin = aRect.Width() * KIconMarginXPercent / KCent;
+    TInt yMargin = aRect.Height() * KIconMarginYPercent / KCent;
+    
+    // Adapt icon size and vertical margin. If the button has 
+    // already two lines of text, use smaller icon size
+    if ( iOperationMode == EModeEasyDialing && iSecondaryAlphaLabel.Length() ) 
+        {
+        iconSize = aRect.Height() * KSmallIconSizePercent / KCent;
+        yMargin = 0;
+        }
+    
+    if ( AknLayoutUtils::LayoutMirrored() ) 
+        {
+        iIconRect.SetRect( aRect.iTl.iX + xMargin,
+                aRect.iTl.iY + yMargin, 
+                aRect.iTl.iX + xMargin + iconSize, 
+                aRect.iTl.iY + iconSize + yMargin );       
+        }
+    else 
+        {
+        iIconRect.SetRect( aRect.iBr.iX - iconSize - xMargin,
+                aRect.iTl.iY + yMargin, 
+                aRect.iBr.iX - xMargin, 
+                aRect.iTl.iY + iconSize + yMargin );        
+        }
+    SetIconSize( iIconRect.Size() );
+    }
+
+
 // ---------------------------------------------------------------------------
 // Update icon when skin is changed
 // ---------------------------------------------------------------------------
--- a/phoneuis/dialer/src/cdialerkeypadcontainer.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneuis/dialer/src/cdialerkeypadcontainer.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -78,7 +78,8 @@
           '9', '9' },
         { KDialerNoIcon, KDialerNoIcon,  
           EStdKeyNkpAsterisk, '*'  },
-        { KDialerNoIcon, KDialerNoIcon,  
+        { EMbmDialerQgn_indi_dialer_internet, 
+          EMbmDialerQgn_indi_dialer_internet_mask,  
           '0', '0' },
         { KDialerNoIcon, KDialerNoIcon,      
           EStdKeyHash, '#' }
@@ -126,19 +127,14 @@
     TDialerOperationMode aOperatingMode )
     : CDialerContainerBase ( 
         const_cast<CCoeControl&>(aContainer) ),
-      iOperatingMode( aOperatingMode ),
-      iButtonCount( KNumberOfButtons )
+      iOperatingMode( aOperatingMode )
     {
     }
     
 // Destructor
 CDialerKeyPadContainer::~CDialerKeyPadContainer()
     {
-    for ( TInt i = 0; i < iButtonCount; i++ )
-        {   
-        delete iButtons[i];
-        }
-    iButtons.Close();
+    iButtons.ResetAndDestroy();
     iCoeEnv->RemoveForegroundObserver( *this );
     delete iKeyLabelManager;
     }
@@ -422,7 +418,7 @@
             }
         
         __ASSERT_ALWAYS( tappedButton, 
-        _L("CDialerKeyPadContainer::HandleControlEventL, invalid button handle"));
+        _L("CDialerKeyPadContainer::HandleControlEventL, invalid button handle")); // TODO: This is meaningless statement, use either Panic or make this only comment.
         
         // Send key event to phone.
         TKeyEvent keyEvent;
--- a/phoneuis/dialer/src/cdialernumberentry.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneuis/dialer/src/cdialernumberentry.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -214,7 +214,7 @@
 void CDialerNumberEntry::SetTextToNumberEntry( const TDesC& aDesC )
     {
     DIALER_PRINT("numberentry::SetTextToNumberEntry<");
-        	
+    
     iEditor->SetText( aDesC );   
     
     if ( iEasyDialer && iOperationMode == EModeEasyDialing )
@@ -283,7 +283,7 @@
 TBool CDialerNumberEntry::HandleCommandL( TDialerCommandId aCommand)
     {
     DIALER_PRINTF("numberentry::HandleCommandL<:", aCommand); 
-    	
+    
     TBool handled( ETrue );
     switch ( aCommand )
         {
@@ -298,7 +298,7 @@
             }
             break;
         }
-        
+    
     DIALER_PRINT("numberentry::HandleCommandL>");         
     return handled;
     }
@@ -653,7 +653,7 @@
 void CDialerNumberEntry::StartVirtualKeyBoard( )
     {
     // To change focus to VKB, if not called VKB will not come visible
-    CEikonEnv::Static()->SyncNotifyFocusObserversOfChangeInFocus();
+    iEikonEnv->SyncNotifyFocusObserversOfChangeInFocus();
     iEditor->OpenVKB();
     }
   
@@ -801,6 +801,7 @@
     }
     
     
+// -----------------------------------------------------------------------------
 // CDialerNumberEntry::MakeVisible( TBool aVisible )
 // -----------------------------------------------------------------------------
 //	
--- a/phoneuis/easydialing/inc/dialingextensioninterface.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneuis/easydialing/inc/dialingextensioninterface.h	Fri Mar 12 15:42:40 2010 +0200
@@ -18,8 +18,6 @@
 #ifndef __CDIALEREXTENSIONINTERFACE_H
 #define __CDIALEREXTENSIONINTERFACE_H
 
-#include <easydialingcommands.hrh>
-
 #include <ecom/ecom.h>
 #include <coecntrl.h>
 #include <eikmenup.h>
@@ -170,7 +168,8 @@
 
     
     /**
-     * Gets the resource id of plugin's menu bar resource.
+     * Handle a command. Supported command IDs are defined in header
+     * easydialingcommands.hrh.
      * 
      * @param   aCommand   Command id.
      * @return  ETrue if command was handled, EFalse otherwise.
--- a/phoneuis/easydialing/inc/easydialingcontactdatamanager.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneuis/easydialing/inc/easydialingcontactdatamanager.h	Fri Mar 12 15:42:40 2010 +0200
@@ -24,8 +24,8 @@
 #include <MVPbkContactStoreObserver.h>
 #include <MVPbkOperationObserver.h>
 #include <MVPbkContactViewBase.h>
-#include <CPbkContactEngine.h>  // for TPbkNameOrder
 #include <TPbk2ImageManagerParams.h>
+#include <MPbkGlobalSetting.h> // For name order setting
 #include "easydialingcontactdata.h"
 
 // FORWARD DECLARATIONS
@@ -46,11 +46,22 @@
         public MVPbkSingleContactOperationObserver,
         public MVPbkContactStoreObserver,
         public MVPbkOperationErrorObserver,
-        public MVPbkOperationResultObserver<MVPbkContactViewBase*>
+        public MVPbkOperationResultObserver<MVPbkContactViewBase*>,
+        public MPbkGlobalSettingObserver
         
     {
 public:
-    
+        
+    /**
+     * Contact name display order 
+     */
+    enum TNameOrder
+        {
+        EFirstnameLastname,
+        ELastnameFirstname
+        };
+        
+public:
     
     /**
     * Constructor.
@@ -180,11 +191,15 @@
     * @param aNameOrder Name ordering to be used
     * @return the newly created string (added to cleanupstack)
     */
-    HBufC* FavContactStringLC( TInt aIndex, CPbkContactEngine::TPbkNameOrder aNameOrder );
+    HBufC* FavContactStringLC( TInt aIndex, TNameOrder aNameOrder );
+    
+    /**
+     * @return Contact name display order
+     */
+    TNameOrder NameOrder();
 
 public:
     
-    
     /**
      * From MPbk2ImageGetObserver.
      */
@@ -196,8 +211,14 @@
      */
     void Pbk2ImageGetFailed(MPbk2ImageOperation& aOperation, TInt aError);
 
+public:
+    
+    /**
+     * From MPbkGlobalSettingObserver.
+     */
+    void SettingChangedL( MPbkGlobalSetting::TPbkGlobalSetting aKey );
+    
 private: 
-
     
     /**
      * From MVPbkSingleContactOperationObserver.
@@ -317,6 +338,12 @@
         
     /** Virtual phonebook operation handle for getting favourites. Owned. */
     MVPbkContactOperationBase* iFavsOperation;
+    
+    /** Phonebook settings interface. */
+    MPbkGlobalSetting* iPbkSettings;
+    
+    /** Contact name display order. */
+    TNameOrder iNameOrder;
     };
 
 #endif //__EASYDIALINGTHUMBNAILMANAGER_H__
--- a/phoneuis/easydialing/inc/easydialinglistboxdata.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneuis/easydialing/inc/easydialinglistboxdata.h	Fri Mar 12 15:42:40 2010 +0200
@@ -175,13 +175,11 @@
      * before drawing.
      * @param   aGc Graphics context.
      * @param   aNameRectUnMirrored Name rect, where fav star is contained
-     * @param   aTextWidth The width of the name
      * @param   aEffectiveRect The whole listbox item rect. Used for mirroring.
      */
     void DrawFavouriteIcon(
             CWindowGc& aGc, 
             TRect aNameRectUnMirrored,
-            TInt aTextWidth,
             TRect aEffectiveRect) const;
     
 private:
--- a/phoneuis/easydialing/inc/easydialingplugin.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneuis/easydialing/inc/easydialingplugin.h	Fri Mar 12 15:42:40 2010 +0200
@@ -28,9 +28,9 @@
 #include "measydialingcenreplistenerobserver.h"
 #include "mcontactdatamanagerobserver.h"
 #include "medcontactorobserver.h"
+#include "easydialingcontactdatamanager.h"  // for TNameOrder
 
 // Phonebook engine API
-#include <CPbkContactEngine.h>
 #include <MVPbkContactStoreListObserver.h>
 
 // ListBox Observer API
@@ -250,6 +250,11 @@
     void AllContactDataLoaded();
     
     /**
+    * From MContactDataManagerObserver.
+    */
+    void NameOrderChanged();
+    
+    /**
     * From MEDContactorObserver.
     */
     void InformContactorEvent( MEDContactorObserver::TEvent aEvent );
@@ -279,6 +284,8 @@
 
     void InitPredictiveContactSearchL();
         
+    void SetSortOrderL( CEasyDialingContactDataManager::TNameOrder aNameOrder );
+    
     /**
     * From MPsResultsObserver.
     */
@@ -350,7 +357,8 @@
     /**
      * Creates string with first name, last name and company name.
      */
-    HBufC* CreateContactStringLC( CPsClientData* aResult, CPbkContactEngine::TPbkNameOrder aNameOrder );
+    HBufC* CreateContactStringLC( CPsClientData* aResult,
+            CEasyDialingContactDataManager::TNameOrder aNameOrder );
     
     /** Possible actions launched by this plugin. */
     enum TEasyDialingAction
@@ -465,7 +473,6 @@
     
     /** Action to be launched next asynchronously. */
     TEasyDialingAction iActionToBeLaunched;
-       
 };
 
 
--- a/phoneuis/easydialing/inc/easydialingutils.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneuis/easydialing/inc/easydialingutils.h	Fri Mar 12 15:42:40 2010 +0200
@@ -18,7 +18,7 @@
 #ifndef __EASYDIALINGUTILS_H__
 #define __EASYDIALINGUTILS_H__
 
-#include <CPbkContactEngine.h>  // for TPbkNameOrder
+#include "easydialingcontactdatamanager.h"  // for TNameOrder
 
 class EasyDialingUtils
     {
@@ -37,7 +37,7 @@
             const TDesC& aFirstName,
             const TDesC& aLastName,
             const TDesC& aCompanyName,
-            CPbkContactEngine::TPbkNameOrder aNameOrder );
+            CEasyDialingContactDataManager::TNameOrder aNameOrder );
     };
 
 #endif //__EASYDIALINGUTILS_H__
--- a/phoneuis/easydialing/inc/mcontactdatamanagerobserver.h	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneuis/easydialing/inc/mcontactdatamanagerobserver.h	Fri Mar 12 15:42:40 2010 +0200
@@ -26,6 +26,8 @@
     {
 public:
     virtual void AllContactDataLoaded() = 0;
+    
+    virtual void NameOrderChanged() = 0;
     };
 
 #endif //__MCONTACTDATAMANAGEROBSERVER_H__
--- a/phoneuis/easydialing/src/easydialingcontactdatamanager.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneuis/easydialing/src/easydialingcontactdatamanager.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -42,6 +42,8 @@
 #include <MVPbkStoreContact.h>
 #include <centralrepository.h>
 
+#include <PbkGlobalSettingFactory.h>
+
 #include "easydialingcontactdata.h"
 #include "easydialingcontactdatamanager.h"
 #include "easydialingutils.h"
@@ -78,6 +80,12 @@
         {
         iContactStore->Close( *this);
         }
+    
+    if ( iPbkSettings )
+        {
+        iPbkSettings->Close();
+        }
+    delete iPbkSettings;
     }
 
 // ---------------------------------------------------------------------------
@@ -104,6 +112,20 @@
     CleanupStack::PushL( cenrep );
     User::LeaveIfError( cenrep->Get( KEasyDialingContactThumbnails, iContactThumbnailSetting ) );
     CleanupStack::PopAndDestroy( cenrep );
+    
+    iPbkSettings = PbkGlobalSettingFactory::CreatePersistentSettingL();
+    iPbkSettings->ConnectL( MPbkGlobalSetting::EGeneralSettingCategory );
+    
+    /*
+    * Phonebook name ordering flag, integer value, possible values:
+    * 0: name order Lastname Firstname
+    * 1: name order Firstname Lastname
+    * 2: name order undefined
+    */
+    TInt nameOrderSetting;
+    iPbkSettings->Get( MPbkGlobalSetting::ENameOrdering, nameOrderSetting );
+    iNameOrder = ( nameOrderSetting == 0 ? ELastnameFirstname : EFirstnameLastname );
+    iPbkSettings->RegisterObserverL( this );
     }
 
 // ---------------------------------------------------------------------------
@@ -254,7 +276,7 @@
 // CEasyDialingContactDataManager::FavContactStringLC
 // ---------------------------------------------------------------------------
 //
-HBufC* CEasyDialingContactDataManager::FavContactStringLC( TInt aIndex, CPbkContactEngine::TPbkNameOrder aNameOrder )
+HBufC* CEasyDialingContactDataManager::FavContactStringLC( TInt aIndex, TNameOrder aNameOrder )
     {
     const MVPbkBaseContactFieldCollection& fields = iFavsView->ContactAtL( aIndex ).Fields();
     TPtrC firstName;
@@ -295,6 +317,15 @@
     }
 
 // ---------------------------------------------------------------------------
+// CEasyDialingContactDataManager::NameOrder
+// ---------------------------------------------------------------------------
+//
+CEasyDialingContactDataManager::TNameOrder CEasyDialingContactDataManager::NameOrder()
+    {
+    return iNameOrder;
+    }
+
+// ---------------------------------------------------------------------------
 // CEasyDialingContactDataManager::InitReady
 // ---------------------------------------------------------------------------
 //
@@ -394,6 +425,25 @@
     }
 
 // ---------------------------------------------------------------------------
+// CEasyDialingContactDataManager::SettingChangedL
+// From MPbkGlobalSettingObserver
+// ---------------------------------------------------------------------------
+//
+void CEasyDialingContactDataManager::SettingChangedL( MPbkGlobalSetting::TPbkGlobalSetting aKey )
+    {
+    if ( aKey == MPbkGlobalSetting::ENameOrdering )
+        {
+        TInt nameOrderSetting;
+        iPbkSettings->Get( MPbkGlobalSetting::ENameOrdering, nameOrderSetting );
+        iNameOrder = ( nameOrderSetting == 0 ? ELastnameFirstname : EFirstnameLastname );
+        if ( iObserver )
+            {
+            iObserver->NameOrderChanged();
+            }
+        }
+    }
+
+// ---------------------------------------------------------------------------
 // CEasyDialingContactDataManager::DoHandleImageGetCompleteL
 // ---------------------------------------------------------------------------
 //
--- a/phoneuis/easydialing/src/easydialinglistboxdata.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneuis/easydialing/src/easydialinglistboxdata.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -94,6 +94,9 @@
 // is an extra space in highlight boundary to make the text look less crowded.
 const TInt KMatchingTextMarginInPixels = 3;
 
+// KFavoriteIconSizePercent is size of favorite icon relative to text height.
+const TInt KFavoriteIconSizePercent = 65;
+
 // KMatchingTextMarginInPixels is the absolute pixel value for rounding used in highlight 
 // rectangle.
 const TInt KHighligthRectangleRoundingYInPixels = 4;
@@ -135,7 +138,7 @@
         const CFont* aCompanyNameFont, 
         TBool aIsCurrentItem,
         TBool aThumbnailsShown );
-static TRect FavouriteIconBoundingBox( const TRect& aContactNameBoundingBox, TInt aTextWidth );
+static TRect FavouriteIconBoundingBox( const TRect& aContactNameBoundingBox );
 static TRect MirrorLayoutBoundingBox(const TRect& aSourceRect, TRect& aBoundingBoxRect);
 static TInt BaseLineOffset( const TRect& aTextBoundingBox, const CFont* aFont );
 static TBool ContainsRightToLeftText( const TDesC& aDesc );
@@ -477,7 +480,7 @@
     if ( !err && fav )
         {
         // Draws the Favourite Icon
-        DrawFavouriteIcon( aGc, nameRectUnMirrored, textWidth, aItemRect );
+        DrawFavouriteIcon( aGc, nameRectUnMirrored, aItemRect );
         }
     
     if ( transApi )
@@ -556,14 +559,13 @@
 void CEasyDialingListBoxData::DrawFavouriteIcon(
         CWindowGc& aGc, 
          TRect aNameRectUnMirrored,
-         TInt aTextWidth,
          TRect aEffectiveRect) const
     {
     CFbsBitmap* favouriteIcon;
     CFbsBitmap* favouriteIconMask;
     TRect favouriteIconBoundingBox;
 
-    favouriteIconBoundingBox = FavouriteIconBoundingBox( aNameRectUnMirrored, aTextWidth );
+    favouriteIconBoundingBox = FavouriteIconBoundingBox( aNameRectUnMirrored );
 
     if ( AknLayoutUtils::LayoutMirrored() )
         {
@@ -855,18 +857,21 @@
 // -----------------------------------------------------------------------------
 // FavouriteIconBoundingBox
 // Calculates the area to which the favourite icon is drawn.
-// Because favourite icon is drawn in the same line with contact name,
-// this function takes contact name bounding box as the parameter, not
-// the whole item rect. 
+// Favourite icon is drawn right beside contact name bounding box.
 // -----------------------------------------------------------------------------
 //
-static TRect FavouriteIconBoundingBox( const TRect& aContactNameBoundingBox, TInt aTextWidth )
+static TRect FavouriteIconBoundingBox( const TRect& aContactNameBoundingBox )
     {
-    return TRect(
-            aContactNameBoundingBox.iTl.iX + aTextWidth,
+    // Favourite icons place is right beside contact name bounding box.
+    // Contact name bounding box is calculated so that there is room for the icon.
+    TInt shrinkMargin = ( KCent - KFavoriteIconSizePercent ) * aContactNameBoundingBox.Height() / ( 2 * KCent );
+    TRect rect(
+            aContactNameBoundingBox.iBr.iX,
             aContactNameBoundingBox.iTl.iY,
-            aContactNameBoundingBox.iTl.iX + aTextWidth + aContactNameBoundingBox.Height(),
+            aContactNameBoundingBox.iBr.iX + aContactNameBoundingBox.Height(),
             aContactNameBoundingBox.iBr.iY);
+    rect.Shrink( shrinkMargin, shrinkMargin );
+    return rect;
     }
 
 
--- a/phoneuis/easydialing/src/easydialingplugin.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneuis/easydialing/src/easydialingplugin.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -24,6 +24,7 @@
 #include "easydialingcenreplistener.h"
 #include "easydialingcontactdatamanager.h"
 #include "easydialingutils.h"
+#include "easydialingcommands.hrh"
 #include <easydialingpluginresources.rsg>
 
 // AVKON and drawing header files
@@ -183,6 +184,10 @@
     // Set contact store observer to listen to contact store events.
     iContactManager->ContactStoresL().OpenAllL( *this );
     
+    iContactDataManager = new (ELeave) CEasyDialingContactDataManager(iContactManager);
+    iContactDataManager->ConstructL();
+    iContactDataManager->SetObserver(this);
+
     PERF_MEASURE_START
 
     InitPredictiveContactSearchL();
@@ -206,10 +211,6 @@
     iContactLauncher = static_cast<MCCAConnectionExt*>( any );
     
     iCenrepListener = CEasyDialingCenrepListener::NewL(this);
-    
-    iContactDataManager = new (ELeave) CEasyDialingContactDataManager(iContactManager);
-    iContactDataManager->ConstructL();
-    iContactDataManager->SetObserver(this);
    
     iContactorService = CEDContactorService::NewL( this );
 
@@ -388,6 +389,8 @@
         contact_fields.Append(R_VPBK_FIELD_TYPE_COMPANYNAME);
         }
 
+    SetSortOrderL( iContactDataManager->NameOrder() );
+
     // Create and fill ps settings object.
     CPsSettings* ps_settings = CPsSettings::NewL();
     CleanupStack::PushL(ps_settings);
@@ -407,6 +410,32 @@
     }
 
 // -----------------------------------------------------------------------------
+// GetContactFields
+// -----------------------------------------------------------------------------
+//
+void CEasyDialingPlugin::SetSortOrderL( CEasyDialingContactDataManager::TNameOrder aNameOrder )
+    {
+    RArray<TInt> fields;
+    CleanupClosePushL( fields );
+    if ( aNameOrder == CEasyDialingContactDataManager::EFirstnameLastname )
+        {
+        fields.Append(R_VPBK_FIELD_TYPE_FIRSTNAME);
+        fields.Append(R_VPBK_FIELD_TYPE_LASTNAME);
+        }
+    else
+        {
+        fields.Append(R_VPBK_FIELD_TYPE_LASTNAME);
+        fields.Append(R_VPBK_FIELD_TYPE_FIRSTNAME);
+        }
+    if ( iCompanyNamePCSIndex != KErrNotFound )
+        {
+        fields.Append(R_VPBK_FIELD_TYPE_COMPANYNAME);
+        }
+    iPredictiveContactSearchHandler->ChangeSortOrderL( *iContactDataStores[0], fields );
+    CleanupStack::PopAndDestroy(); //fields
+    }
+
+// -----------------------------------------------------------------------------
 // OfferKeyEventL
 // Check the received keypad event and performs user
 // actions related to it.
@@ -752,6 +781,19 @@
     }
 
 // -----------------------------------------------------------------------------
+// NameOrderChanged
+// From MContactDataManagerObserver
+// -----------------------------------------------------------------------------
+//
+void CEasyDialingPlugin::NameOrderChanged()
+    {
+    if ( iPredictiveContactSearchHandler )
+        {
+        TRAP_IGNORE( SetSortOrderL( iContactDataManager->NameOrder() ) );
+        }
+    }
+
+// -----------------------------------------------------------------------------
 // InformContactorEvent
 // From MEDContactorObserver
 // -----------------------------------------------------------------------------
@@ -805,7 +847,7 @@
         {
         return;
         }
-    
+   
     iDiscardCompletingSearches = EFalse;
     iNewSearchNeeded = EFalse;
     
@@ -968,10 +1010,7 @@
     if ( numberOfPCSMatches > 0 )
         {
         // retrieve the name order before adding
-        CPbkContactEngine* pbkEngine = CPbkContactEngine::NewL();
-        CleanupStack::PushL( pbkEngine );
-        CPbkContactEngine::TPbkNameOrder nameOrder = pbkEngine->NameDisplayOrderL();
-        CleanupStack::PopAndDestroy( pbkEngine );
+        CEasyDialingContactDataManager::TNameOrder nameOrder = iContactDataManager->NameOrder();
 
         // map results to old contact match data
         for( TInt i = 0; i < numberOfPCSMatches; i++ )
@@ -995,7 +1034,7 @@
 
         TInt numberOfFavs( iContactDataManager->NumberOfFavsL() );
         TBuf<KBufferMaxLen> results;
-        for ( TInt i = 0; i < numberOfFavs; i++ )
+        for ( TInt i = numberOfFavs - 1; i >= 0; i-- )
             {
             // check if this fav matches the search
             HBufC* favContactString = iContactDataManager->FavContactStringLC( i, nameOrder );
@@ -1169,7 +1208,8 @@
 //
 // -----------------------------------------------------------------------------
 //
-HBufC* CEasyDialingPlugin::CreateContactStringLC( CPsClientData* aResult, CPbkContactEngine::TPbkNameOrder aNameOrder )
+HBufC* CEasyDialingPlugin::CreateContactStringLC( CPsClientData* aResult,
+        CEasyDialingContactDataManager::TNameOrder aNameOrder )
     {
     TPtr firstName = aResult->Data( iFirstNamePCSIndex )->Des();
     TPtr lastName = aResult->Data( iLastNamePCSIndex )->Des();
@@ -1441,7 +1481,7 @@
             
             // Not only Number Entry is removed but also closes down number selection popup in case it happens to be open.
             iContactorService->CancelService();
-			ret = ETrue;
+            ret = ETrue;
             break;
             
         default:
@@ -1607,7 +1647,9 @@
             return;
         }
 
-    CEDContactorService::TCSParameter param( selector, *contact8, 0, *fullName );
+    CEDContactorService::TCSParameter param( selector, *contact8, 
+                                             CEDContactorService::TCSParameter::EEnableDefaults, 
+                                             *fullName );
 
     iContactorService->ExecuteServiceL( param );
 
--- a/phoneuis/easydialing/src/easydialingutils.cpp	Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneuis/easydialing/src/easydialingutils.cpp	Fri Mar 12 15:42:40 2010 +0200
@@ -32,7 +32,7 @@
         const TDesC& aFirstName,
         const TDesC& aLastName,
         const TDesC& aCompanyName,
-        CPbkContactEngine::TPbkNameOrder aNameOrder )
+        CEasyDialingContactDataManager::TNameOrder aNameOrder )
     {
     // first strip control chars from the names
     HBufC* firstName = aFirstName.AllocLC();
@@ -68,7 +68,7 @@
     // If there are both first and last name, the name string is composed of them both.
     else 
         {
-        if( aNameOrder == CPbkContactEngine::EPbkNameOrderFirstNameLastName )
+        if( aNameOrder == CEasyDialingContactDataManager::EFirstnameLastname )
             {
             ptr.Copy( *firstName );
             ptr.Append( KNameSeparatorChar );