Revision: 201035
authorDremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Fri, 17 Sep 2010 08:29:19 +0300
changeset 72 c76a0b1755b9
parent 64 6aaf0276100e
child 77 2be0b271d017
Revision: 201035 Kit: 201037
package_definition.xml
package_map.xml
phone_plat/phone_application_commands_api/inc/phoneappcommands.hrh
phoneapp/phonemediatorcenter/group/phonemediatorcenter.mmp
phoneapp/phonemediatorcenter/src/cphonemediatorcommandlistener.cpp
phoneapp/phoneui2/inc/phoneuihousehold_p.h
phoneapp/phoneui2/src/phoneuihousehold_p.cpp
phoneapp/phoneuicontrol/bwins/phoneuicontrolu.def
phoneapp/phoneuicontrol/eabi/phoneuicontrolu.def
phoneapp/phoneuicontrol/group/phoneuicontrol.mmp
phoneapp/phoneuicontrol/inc/cphonecallheadermanager.h
phoneapp/phoneuicontrol/inc/cphonecbamanager.h
phoneapp/phoneuicontrol/inc/cphonereconnectquery.h
phoneapp/phoneuicontrol/inc/cphonestate.h
phoneapp/phoneuicontrol/inc/cphonestatecallsetup.h
phoneapp/phoneuicontrol/inc/cphonestateidle.h
phoneapp/phoneuicontrol/inc/cphonestateincall.h
phoneapp/phoneuicontrol/inc/cphonestateincoming.h
phoneapp/phoneuicontrol/inc/cphonesystemeventhandler.h
phoneapp/phoneuicontrol/inc/cphoneuicontroller.h
phoneapp/phoneuicontrol/inc/mphonecallheadermanagerutility.h
phoneapp/phoneuicontrol/inc/mphonekeyevents.h
phoneapp/phoneuicontrol/inc/mphonesystemeventhandler.h
phoneapp/phoneuicontrol/inc/mphonesystemevents.h
phoneapp/phoneuicontrol/inc/tphonecallheaderparam.h
phoneapp/phoneuicontrol/src/cphoneaccessorybthandler.cpp
phoneapp/phoneuicontrol/src/cphonecallheadermanager.cpp
phoneapp/phoneuicontrol/src/cphonecbamanager.cpp
phoneapp/phoneuicontrol/src/cphonenumberentrymanager.cpp
phoneapp/phoneuicontrol/src/cphonereconnectquery.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/phoneuicontrol/src/cphoneuicontroller.cpp
phoneapp/phoneuicontrol/src/tphonecallheaderparam.cpp
phoneapp/phoneuiqtviewadapter/bwins/phoneuiqtviewadapteru.def
phoneapp/phoneuiqtviewadapter/eabi/phoneuiqtviewadapteru.def
phoneapp/phoneuiqtviewadapter/inc/phoneapplauncher.h
phoneapp/phoneuiqtviewadapter/inc/phoneglobalnotes.h
phoneapp/phoneuiqtviewadapter/inc/phonenotecontroller.h
phoneapp/phoneuiqtviewadapter/inc/phoneuicommandcontroller.h
phoneapp/phoneuiqtviewadapter/inc/phoneuiqtbuttonscontroller.h
phoneapp/phoneuiqtviewadapter/inc/phoneuiqtviewadapter.h
phoneapp/phoneuiqtviewadapter/inc/phoneviewcommanddefinitions.h
phoneapp/phoneuiqtviewadapter/phoneuiqtviewadapter.pri
phoneapp/phoneuiqtviewadapter/src/phoneapplauncher.cpp
phoneapp/phoneuiqtviewadapter/src/phoneglobalnotes.cpp
phoneapp/phoneuiqtviewadapter/src/phoneindicatorcontroller.cpp
phoneapp/phoneuiqtviewadapter/src/phonenotecontroller.cpp
phoneapp/phoneuiqtviewadapter/src/phoneresourceadapter.cpp
phoneapp/phoneuiqtviewadapter/src/phoneuicommandcontroller.cpp
phoneapp/phoneuiqtviewadapter/src/phoneuiqtviewadapter.cpp
phoneapp/phoneuiqtviewadapter/src/phonevisibilityhandler.cpp
phoneapp/phoneuiqtviewadapter/tsrc/ut_phonenotecontroller/unit_tests.cpp
phoneapp/phoneuiqtviewadapter/tsrc/ut_phonenotecontroller/ut_phonenotecontroller.pro
phoneapp/phoneuiqtviewadapter/tsrc/ut_phoneresourceadapter/unit_tests.cpp
phoneapp/phoneuiqtviewadapter/tsrc/ut_phoneuiqtviewadapter/phoneapplauncher_stub.cpp
phoneapp/phoneuiqtviewadapter/tsrc/ut_phoneuiqtviewadapter/phonenotecontroller_stub.cpp
phoneapp/phoneuiqtviewadapter/tsrc/ut_phoneuiqtviewadapter/phonevisibilityhandler_stub.cpp
phoneapp/phoneuiqtviewadapter/tsrc/ut_phoneuiqtviewadapter/unit_tests.cpp
phoneapp/phoneuiqtviewadapter/tsrc/ut_phoneuiqtviewadapter/ut_phoneuiqtviewadapter.pro
phoneapp/phoneuiqtviewadapter/tsrc/ut_phonevisibilityhandler/unit_tests.cpp
phoneapp/phoneuistates/group/phoneuistates.mmp
phoneapp/phoneuistates/inc/cphoneemergency.h
phoneapp/phoneuistates/inc/cphoneerrormessageshandler.h
phoneapp/phoneuistates/inc/cphoneidle.h
phoneapp/phoneuistates/inc/cphoneincoming.h
phoneapp/phoneuistates/inc/cphonesinglecall.h
phoneapp/phoneuistates/src/cphonealerting.cpp
phoneapp/phoneuistates/src/cphonecallsetup.cpp
phoneapp/phoneuistates/src/cphonecallsetupandwaiting.cpp
phoneapp/phoneuistates/src/cphoneconference.cpp
phoneapp/phoneuistates/src/cphoneconferenceandcallsetup.cpp
phoneapp/phoneuistates/src/cphoneconferenceandsingle.cpp
phoneapp/phoneuistates/src/cphoneconferenceandsingleandwaiting.cpp
phoneapp/phoneuistates/src/cphoneconferenceandwaiting.cpp
phoneapp/phoneuistates/src/cphoneconferenceandwaitingandcallsetup.cpp
phoneapp/phoneuistates/src/cphoneemergency.cpp
phoneapp/phoneuistates/src/cphoneerrormessageshandler.cpp
phoneapp/phoneuistates/src/cphonegeneralgsmmessageshandler.cpp
phoneapp/phoneuistates/src/cphonegsmincall.cpp
phoneapp/phoneuistates/src/cphoneidle.cpp
phoneapp/phoneuistates/src/cphoneincoming.cpp
phoneapp/phoneuistates/src/cphonesingleandalerting.cpp
phoneapp/phoneuistates/src/cphonesingleandcallsetup.cpp
phoneapp/phoneuistates/src/cphonesingleandcallsetupandwaiting.cpp
phoneapp/phoneuistates/src/cphonesingleandwaiting.cpp
phoneapp/phoneuistates/src/cphonesinglecall.cpp
phoneapp/phoneuistates/src/cphonetwosingles.cpp
phoneapp/phoneuistates/src/cphonetwosinglesandwaiting.cpp
phoneapp/phoneuiutils/group/phoneuiutils.mmp
phoneapp/phoneuiutils/inc/cphoneresourceresolverbase.h
phoneapp/phoneuiutils/inc/phoneconstants.h
phoneapp/phoneuiutils/inc/phoneresourceids.h
phoneapp/phoneuiutils/inc/tphonecmdparammessageeditor.h
phoneapp/phoneuiutils/inc/tphonecmdparamreconnectquery.h
phoneapp/phoneuiutils/inc/tphonecmdparamsingleitemfetch.h
phoneapp/phoneuiutils/src/cphoneresourceresolverbase.cpp
phoneapp/phoneuiutils/src/tphonecmdparamcallheaderdata.cpp
phoneapp/phoneuiutils/src/tphonecmdparammessageeditor.cpp
phoneapp/phoneuiutils/src/tphonecmdparamreconnectquery.cpp
phoneapp/phoneuiutils/src/tphonecmdparamsingleitemfetch.cpp
phoneapp/phoneuivoipextension/group/phoneuivoipextension.mmp
phoneapp/phoneuivoipextension/inc/cphonestateincomingvoip.h
phoneapp/phoneuivoipextension/inc/cphonestateutilsvoip.h
phoneapp/phoneuivoipextension/inc/cphoneviewcustomizationvoip.h
phoneapp/phoneuivoipextension/inc/tphonetouchpanewrapper.h
phoneapp/phoneuivoipextension/src/cphoneextensionhandler.cpp
phoneapp/phoneuivoipextension/src/cphonestateincomingvoip.cpp
phoneapp/phoneuivoipextension/src/cphonestatesinglevoip.cpp
phoneapp/phoneuivoipextension/src/cphonestateutilsvoip.cpp
phoneapp/phoneuivoipextension/src/cphoneviewcustomizationvoip.cpp
phoneapp/phoneuivoipextension/src/tphonetouchpanewrapper.cpp
phoneengine/callhandling/inc/cpesinglecall.h
phoneengine/callhandling/src/cpecallhandling.cpp
phoneengine/callhandling/src/cpesinglecall.cpp
phoneengine/contacthandling2/inc/cpecontactmatch.h
phoneengine/contacthandling2/src/cpecontactmatch.cpp
phoneengine/networkhandlingstarter/inc/cnetworklistener.h
phoneengine/networkhandlingstarter/inc/networkhandlingstarterlogging.h
phoneengine/networkhandlingstarter/networkhandlingstarter.pro
phoneengine/networkhandlingstarter/src/cnetworklistener.cpp
phoneengine/phonecntfinder2/inc/cphcntmatch2.h
phoneengine/phonecntfinder2/inc/mphcntmatch.h
phoneengine/phonecntfinder2/phonecntfinder2.pro
phoneengine/phonecntfinder2/src/cphcntmatch2.cpp
phoneengine/phonecntfinder2/tsrc/u_cphcntmatch2/u_cphcntmatch2.cpp
phoneengine/phonemodel/inc/cpeparsersshandler.h
phoneengine/phonemodel/inc/talogger.h
phoneengine/phonemodel/phonemodel.pro
phoneengine/phonemodel/rom/phonengengine.iby
phoneengine/phonemodel/src/cpeparsersshandler.cpp
phoneengine/phonemodel/tsrc/run_auto_tests_qt.bat
phoneengine/phonemodel/tsrc/ut_penetworkhandler/bld.inf
phoneengine/phonemodel/tsrc/ut_penetworkhandler/ctcerr.txt
phoneengine/phonemodel/tsrc/ut_penetworkhandler/ut_penetworkhandler.rss
phoneengine/phonemodel/tsrc/ut_penetworkhandler/ut_penetworkhandler_installer.pkg
phoneengine/phonemodel/tsrc/ut_penetworkhandler/ut_penetworkhandler_reg.rss
phoneengine/phonemodel/tsrc/ut_penetworkhandler/ut_penetworkhandler_stub.pkg
phoneengine/phoneservices/src/dtmfservice.cpp
phoneengine/phoneservices/tsrc/ut_phoneservices/ut_phoneservices.pro
phoneplugins/csplugin/inc/cspaudiohandler.h
phoneplugins/csplugin/inc/cspaudiohandlerbase.h
phoneplugins/csplugin/inc/cspcall.h
phoneplugins/csplugin/inc/cspcalladdedhandler.h
phoneplugins/csplugin/inc/csppanic.pan
phoneplugins/csplugin/inc/csprovider.h
phoneplugins/csplugin/inc/mcspaudiohandlerobserver.h
phoneplugins/csplugin/inc/mcspaudiostreamobserver.h
phoneplugins/csplugin/inc/mcsptestcallprovider.h
phoneplugins/csplugin/inc/mcsptimerobserver.h
phoneplugins/csplugin/inc/mtmshandlerobserver.h
phoneplugins/csplugin/inc/tmshandler.h
phoneplugins/csplugin/src/cspaudiohandler.cpp
phoneplugins/csplugin/src/cspcall.cpp
phoneplugins/csplugin/src/cspcalladdedhandler.cpp
phoneplugins/csplugin/src/cspeteldtmfmonitor.cpp
phoneplugins/csplugin/src/csprovider.cpp
phoneplugins/csplugin/src/csptimer.cpp
phoneplugins/csplugin/src/tmshandler.cpp
phoneplugins/dialerwidgetplugin/dialerwidgetplugin.pro
phoneplugins/dialerwidgetplugin/src/dialerwidget.cpp
phoneplugins/infowidgetplugin/infowidgetplugin.pro
phoneplugins/infowidgetplugin/infowidgetplugin.qrc
phoneplugins/phoneindicatorplugin/src/phoneindicatorservicesendertask.cpp
phonesettings/cpphonesettingsplugins/barringplugin/inc/cpbarringplugingroup.h
phonesettings/cpphonesettingsplugins/barringplugin/src/cpbarringplugingroup.cpp
phonesettings/cpphonesettingsplugins/callsplugin/src/cpcallsplugingroup.cpp
phonesettings/cpphonesettingsplugins/cpnetworkplugin/src/cpnetworkpluginform.cpp
phonesettings/cpphonesettingsplugins/cpnetworkplugin/src/cpnetworkpluginform.h
phonesettings/cpphonesettingsplugins/cpnetworkplugin/src/cpnetworkstatus.cpp
phonesettings/cpphonesettingsplugins/cpnetworkplugin/src/cpnetworkstatus.h
phonesettings/cpphonesettingsplugins/cpnetworkplugin/tsrc/ut_cpnetworkstatus/ut_cpnetworkstatus.cpp
phonesettings/cpphonesettingsplugins/cpnetworkplugin/tsrc/ut_cpnetworkstatus/ut_cpnetworkstatus.pro
phonesettings/cpphonesettingsplugins/cptelephonyutils/bwins/cptelephonyutilsu.def
phonesettings/cpphonesettingsplugins/cptelephonyutils/eabi/cptelephonyutilsu.def
phonesettings/cpphonesettingsplugins/cptelephonyutils/inc/cpplugincommon.h
phonesettings/cpphonesettingsplugins/cptelephonyutils/src/cpplugincommon.cpp
phonesettings/cpphonesettingsplugins/cptelephonyutils/src/cpplugincommon_s.cpp
phonesettings/cpphonesettingsplugins/cptelephonyutils/tsrc/ut_cpplugincommon/ut_cpplugincommon.cpp
phonesettings/cpphonesettingsplugins/cptelephonyutils/tsrc/ut_cpplugincommon/ut_cpplugincommon.h
phonesettings/cpphonesettingsplugins/divertplugin/divertplugin.pro
phonesettings/cpphonesettingsplugins/divertplugin/src/cpdivertplugingroup.cpp
phonesettings/cpphonesettingsplugins/divertplugin/src/cpdivertplugingroup.h
phonesettings/cpphonesettingsplugins/divertplugin/src/cpdivertquery.cpp
phonesettings/cpphonesettingsplugins/divertplugin/src/cpdivertquery.h
phonesettings/cpphonesettingsplugins/divertplugin/tsrc/ut_cpdivertplugin/ut_cpdivertplugin.cpp
phonesettings/cpphonesettingsplugins/divertplugin/tsrc/ut_cpdivertplugin/ut_cpdivertplugin.pro
phonesettings/cpphonesettingsplugins/tsrc/mocks/mock_cpplugincommon.cpp
phoneuis/bubblemanager2/bubblecore/src/bubbleexpandedhandler.cpp
phoneuis/bubblemanager2/bubblecore/src/bubbleheadingwidget.cpp
phoneuis/bubblemanager2/bubblecore/src/bubbleheadingwidget.h
phoneuis/bubblemanager2/bubblecore/src/bubbleimagewidget.cpp
phoneuis/bubblemanager2/bubblecore/src/bubbleimagewidget.h
phoneuis/bubblemanager2/bubblecore/xml/bubble_layout_1.docml
phoneuis/bubblemanager2/bubblecore/xml/bubble_layout_2.docml
phoneuis/bubblemanager2/bubblecore/xml/bubble_layout_3.docml
phoneuis/bubblemanager2/bubblecore/xml/bubble_layout_4.docml
phoneuis/bubblemanager2/tsrc/bubbletest2/bubbletestview.cpp
phoneuis/bubblemanager2/tsrc/bubbletest2/bubbletestview.h
phoneuis/bubblemanager2/tsrc/bubbletest2/tdriver/tc_bubblemanager2.rb
phoneuis/bubblemanager2/tsrc/unit/ut_bubbleheadingwidget/ut_bubbleheadingwidget.cpp
phoneuis/bubblemanager2/tsrc/unit/ut_bubbleimagewidget/ut_bubbleimagewidget.cpp
phoneuis/ussdeditor/rom/ussdeditor.iby
phoneuis/ussdeditor/rom/ussdeditor.pkg
phoneuis/ussdeditor/rom/ussdeditor_stub.pkg
phoneuis/ussdeditor/rom/ussdeditor_stub.sis
phoneuis/ussdeditor/src/ussdeditorquery.cpp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/package_definition.xml	Fri Sep 17 08:29:19 2010 +0300
@@ -0,0 +1,157 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<SystemDefinition schema="3.0.0" xmlns:qt="http://www.nokia.com/qt">
+ <package id="phone" name="Phone Apps" levels="engine plugin ui app">
+  <collection id="phoneapp" name="Phone Application" level="app">
+   <component id="blacklist" filter="s60" name="Phone Blacklist Clearing" class="plugin">
+    <unit bldFile="phoneapp/blacklist/group"/>
+   </component>
+   <component id="phoneringingtoneplayer" filter="s60" name="Phone Ringingtone Player" introduced="^4">
+    <unit bldFile="phoneapp/phoneringingtoneplayer/group"/>
+   </component>
+   <component id="phoneuicontrol" filter="s60" name="Phone UI Control">
+    <unit bldFile="phoneapp/phoneuicontrol/group"/>
+   </component>
+   <component id="phoneuistates" filter="s60" name="Phone UI States">
+    <unit bldFile="phoneapp/phoneuistates/group"/>
+   </component>
+   <component id="phoneuiutils" filter="s60" name="Phone UI Utils">
+    <unit bldFile="phoneapp/phoneuiutils/group"/>
+   </component>   
+   <component id="silenceactionplugin" filter="s60" name="Silence Action Plugin" class="plugin">
+    <unit bldFile="phoneapp/silenceactionplugin/group"/>
+   </component>
+   <component id="phonemediatorcenter" filter="s60" name="Phone Mediator Center">
+    <unit bldFile="phoneapp/phonemediatorcenter/group"/>
+   </component>
+   <component id="phoneuiview2" filter="s60" name="Phone UI View">
+    <unit bldFile="phoneapp/phoneuiview2" qt:proFile="phoneuiview2.pro"/>
+   </component>
+   <component id="phoneuiqtviewadapter" filter="s60" name="Phone UI Qt View Adapter" introduced="^4" class="plugin">
+    <unit bldFile="phoneapp/phoneuiqtviewadapter" qt:proFile="phoneuiqtviewadapter.pro"/>
+   </component>
+   <component id="phonestringloader" filter="s60" name="Phone String Loader" introduced="^4">
+    <unit bldFile="phoneapp/phonestringloader" qt:proFile="phonestringloader.pro"/>
+   </component>
+   <component id="phoneui2" filter="s60" name="Phone UI">
+    <unit bldFile="phoneapp/phoneui2" qt:proFile="phoneui2.pro"/>
+   </component>
+  </collection>
+  <collection id="phoneengine" name="Phone Engine" level="engine">
+   <component id="phonecntfinder2" filter="s60" name="Phone Contact Finder">
+    <unit bldFile="phoneengine/phonecntfinder2" qt:proFile="phonecntfinder2.pro"/>
+   </component>
+   <component id="audiohandling" filter="s60" name="Phone Audio Handling">
+    <unit bldFile="phoneengine/audiohandling/group"/>
+   </component>
+   <component id="callhandling" filter="s60" name="Call Handling">
+    <unit bldFile="phoneengine/callhandling/group"/>
+   </component>
+   <component id="contacthandling2" filter="s60" name="Phone Contact Handling">
+    <unit bldFile="phoneengine/contacthandling2/group"/>
+   </component>
+   <component id="loghandling" filter="s60" name="Phone Log Handling">
+    <unit bldFile="phoneengine/loghandling/group"/>
+   </component>
+   <component id="engineinfo" filter="s60" name="Phone Engine Info">
+    <unit bldFile="phoneengine/engineinfo/group"/>
+   </component>
+   <component id="phonemodel" filter="s60" name="Phone Model">
+    <unit bldFile="phoneengine/phonemodel" qt:proFile="phonemodel.pro"/>
+   </component>
+   <component id="servicehandling" filter="s60" name="Phone Service Handling">
+    <unit bldFile="phoneengine/servicehandling/group"/>
+   </component>
+   <component id="phoneservices" filter="s60" name="Phone Server" introduced="^4">
+    <unit bldFile="phoneengine/phoneservices" qt:proFile="phoneservices.pro"/>
+   </component>
+   <component id="networkhandlingstarter" filter="s60" name="Network Handling Starter" introduced="^4">
+    <unit bldFile="phoneengine/networkhandlingstarter" qt:proFile="networkhandlingstarter.pro"/>
+   </component>
+  </collection>
+  <collection id="phoneuis" name="Phone UIs" level="ui">
+   <component id="bubblemanager2" filter="s60" name="Phone Bubble Manager">
+    <unit bldFile="phoneuis/bubblemanager2" qt:proFile="bubblemanager2.pro"/>
+   </component>
+   <component id="telephonydevicemode" filter="s60" name="Telephony Device Mode">
+    <unit bldFile="phoneuis/telephonydevicemode/group"/>
+   </component>
+   <component id="ussdeditor" filter="s60" name="USSD Editor" introduced="^4">
+    <unit bldFile="phoneuis/ussdeditor" qt:proFile="ussdeditor.pro"/>
+   </component>
+  </collection>
+  <collection id="phone_plat" name="Phone Apps Platform Interfaces" level="app">
+   <component id="3d_ringing_tone_enabler_api" name="3D Ringing Tone Enabler API" class="api" filter="s60">
+    <meta rel="Api" href="phone_plat/3d_ringing_tone_enabler_api/3d_ringing_tone_enabler_api.metaxml"/>
+    <unit bldFile="phone_plat/3d_ringing_tone_enabler_api/group"/>
+   </component>
+   <component id="telephony_comms_information_api" name="Telephony Comms Information API" class="api" filter="s60">
+    <meta rel="Api" href="phone_plat/telephony_comms_information_api/telephony_comms_information_api.metaxml"/>
+    <unit bldFile="phone_plat/telephony_comms_information_api/group"/>
+   </component>
+   <component id="telephony_information_api" name="Telephony Information API" class="api" filter="s60">
+    <meta rel="Api" href="phone_plat/telephony_information_api/telephony_information_api.metaxml"/>
+    <unit bldFile="phone_plat/telephony_information_api/group"/>
+   </component>
+   <component id="telephony_device_mode_api" name="Telephony Device Mode API" class="api" filter="s60">
+    <meta rel="Api" href="phone_plat/telephony_device_mode_api/telephony_device_mode_api.metaxml"/>
+    <unit bldFile="phone_plat/telephony_device_mode_api/group"/>
+   </component>
+   <component id="telephony_menu_extension_api" name="Telephony Menu Extension API" class="api" filter="s60"  introduced="^4">
+    <meta rel="Api" href="phone_plat/telephony_menu_extension_api/telephony_menu_extension_api.metaxml"/>
+    <unit bldFile="phone_plat/telephony_menu_extension_api/group"/>
+   </component>   
+   <component id="telephony_remote_party_information_api" name="Telephony Remote Party Information API" class="api" filter="s60">
+    <meta rel="Api" href="phone_plat/telephony_remote_party_information_api/telephony_remote_party_information_api.metaxml"/>
+    <unit bldFile="phone_plat/telephony_remote_party_information_api/group"/>
+   </component>
+   <component id="telephony_video_mailbox_settings_api" name="Telephony Video Mailbox Settings API" class="api" filter="s60">
+    <meta rel="Api" href="phone_plat/telephony_video_mailbox_settings_api/telephony_video_mailbox_settings_api.metaxml"/>
+    <unit bldFile="phone_plat/telephony_video_mailbox_settings_api/group"/>
+   </component>
+   <component id="telephony_microphone_mute_status_api" name="Telephony Microphone Mute Status API" class="api" filter="s60">
+    <meta rel="Api" href="phone_plat/telephony_microphone_mute_status_api/telephony_microphone_mute_status_api.metaxml"/>
+    <unit bldFile="phone_plat/telephony_microphone_mute_status_api/group"/>
+   </component>
+   <component id="telephony_logging_extension_api" name="Telephony Logging Extension API" class="api" filter="s60">
+    <unit bldFile="phone_plat/telephony_logging_extension_api/group"/>
+   </component>
+   <component id="telephony_matching_extension_api" name="Telephony Matching Extension API" class="api" filter="s60">
+    <unit bldFile="phone_plat/telephony_matching_extension_api/group"/>
+   </component>
+   <component id="phone_application_commands_api" name="Phone Application Commands API" class="api" filter="s60">
+    <unit bldFile="phone_plat/phone_application_commands_api/group"/>
+   </component>
+   <component id="phone_application_voip_commands_api" name="Phone Application VOIP Commands API" class="api" filter="s60">
+    <unit bldFile="phone_plat/phone_application_voip_commands_api/group"/>
+   </component>
+   <component id="phone_telephony_mediator_api" name="Telephony Mediator API" class="api" filter="s60">
+    <unit bldFile="phone_plat/telephony_mediator_api/group"/>
+   </component>
+   <component id="video_telephony_mediator_api" name="Video Telephony Mediator API" class="api" filter="s60">
+    <unit bldFile="phone_plat/video_telephony_mediator_api/group"/>
+   </component>
+   <component id="video_telephony_control_mediator_api" name="Video Telephony Control Mediator API" class="api" filter="s60" introduced="^4">
+    <unit bldFile="phone_plat/video_telephony_control_mediator_api/group"/>
+   </component>
+  </collection>
+  <collection id="phoneplugins" name="Phone Plugins" level="plugin">
+   <component id="csplugin" filter="s60" name="Circuit Switched Plugin" class="plugin" introduced="^4">
+    <unit bldFile="phoneplugins/csplugin/group"/>
+   </component>
+   <component id="phoneindicatorplugin" filter="s60" name="Phone Indicator Plugin" class="plugin" introduced="^4">
+    <unit bldFile="phoneplugins/phoneindicatorplugin" qt:proFile="phoneindicatorplugin.pro"/>
+   </component>
+   <component id="dialerwidgetplugin" filter="s60" name="Dialer Widget Plugin" class="plugin" introduced="^4">
+    <unit bldFile="phoneplugins/dialerwidgetplugin" qt:proFile="dialerwidgetplugin.pro"/>
+   </component>
+   <component id="infowidgetplugin" filter="s60" name="Info Widget Plugin" class="plugin" introduced="^4">
+    <unit bldFile="phoneplugins/infowidgetplugin" qt:proFile="infowidgetplugin.pro"/>
+   </component>
+  </collection>
+  <collection id="phonesettings" name="Phone Settings" level="plugin">
+   <component id="cpphonesettingsplugins" filter="s60" name="Control Panel Phone Settings Plugins" class="plugin" introduced="^4">
+    <unit bldFile="phonesettings/cpphonesettingsplugins" qt:proFile="cpphonesettingsplugins.pro"/>
+   </component>
+  </collection>
+ </package>
+</SystemDefinition>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/package_map.xml	Fri Sep 17 08:29:19 2010 +0300
@@ -0,0 +1,1 @@
+<PackageMap root="sf" layer="app"/>
--- a/phone_plat/phone_application_commands_api/inc/phoneappcommands.hrh	Thu Sep 02 20:26:16 2010 +0300
+++ b/phone_plat/phone_application_commands_api/inc/phoneappcommands.hrh	Fri Sep 17 08:29:19 2010 +0300
@@ -217,11 +217,8 @@
     EPhoneIsCustomizedDialerVisible,
 
     EPhoneCmdVideoCallOutOfMemory,
+    EPhoneCmdUpdateUiControls,
 
-// <-- QT PHONE START -->
-    EPhoneCmdUpdateUiControls,
-// <-- QT PHONE END -->
-   
     EPhoneCmdLast
     };
     
--- a/phoneapp/phonemediatorcenter/group/phonemediatorcenter.mmp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phonemediatorcenter/group/phonemediatorcenter.mmp	Fri Sep 17 08:29:19 2010 +0300
@@ -22,10 +22,7 @@
 #include <platform_paths.hrh>
 
 // Capability assignment.
-// <-- QT PHONE START --> 
 CAPABILITY CAP_GENERAL_DLL
-//CAPABILITY CAP_APPLICATION MultiMediaDD PowerMgmt NetworkControl DRM DiskAdmin
-// <-- QT PHONE END --> 
 
 // Assign Vendor ID.
 VENDORID VID_DEFAULT
@@ -51,10 +48,7 @@
 
 USERINCLUDE     ../inc
 USERINCLUDE     ../../phoneuicontrol/inc
-// <-- QT PHONE START --> 
 USERINCLUDE     ../../phoneuiqtviewadapter/inc
-//USERINCLUDE     ../../phoneuiview/inc
-// <-- QT PHONE END --> 
 USERINCLUDE     ../../phoneuiutils/inc
 USERINCLUDE     ../../phoneui2/srcdata // phoneui.pan
 
@@ -66,9 +60,6 @@
 LIBRARY         euser.lib
 LIBRARY         phoneuicontrol.lib
 LIBRARY         phoneuiutils.lib
-// <-- QT PHONE START --> 
-//LIBRARY         phoneuiview.lib
-// <-- QT PHONE END --> 
 
 // CCoeStatic
 LIBRARY         cone.lib
--- a/phoneapp/phonemediatorcenter/src/cphonemediatorcommandlistener.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phonemediatorcenter/src/cphonemediatorcommandlistener.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -33,7 +33,6 @@
 #include "pevirtualengine.h"
 #include "mpeengineinfo.h"
 #include "mediatorcommandstotelephonyapi.h"
-#include "cphonereconnectquery.h"
 
 // ================= MEMBER FUNCTIONS =======================
 
@@ -168,20 +167,14 @@
 
     // Video Telephony Commands
     MediatorService::TCommand newCommand;
-    newCommand.iCommandId = EVtCmdFallback;
+    newCommand.iCommandId = EVtCmdLowMemory;
     newCommand.iVersion = TVersion( KVideoTelToPhoneCmdVersionMajor, 
         KVideoTelToPhoneCmdVersionMinor, KVideoTelToPhoneCmdVersionBuild );
     caps.Set( ECapabilityNetworkControl );
     newCommand.iCaps = caps;
     newCommand.iTimeout = KPhoneUiMediatorIfTimeout;    
     iVideoTelCommands.Append( newCommand );
-
-    newCommand.iCommandId = EVtCmdSwitchToVoice;
-    iVideoTelCommands.Append( newCommand );
     
-    newCommand.iCommandId = EVtCmdLowMemory;
-    iVideoTelCommands.Append( newCommand );
-
     // Register Video Telephony Commands
     TInt error = iCommandResponder->RegisterCommand( KMediatorTelephonyDomain, 
                                                      KCatVideoTelToPhoneCommands, 
@@ -334,15 +327,6 @@
     
     switch( aCommandId )
         {
-        case EVtCmdFallback:
-            iMenuAndCbaHandler->HandleCommandL( EPhoneInCallCmdEndThisActiveCall );
-            CPhoneReconnectQuery::InstanceL()->ShowReconnectQueryL( ETrue );
-            break;
-            
-        case EVtCmdSwitchToVoice:
-            iMenuAndCbaHandler->HandleCommandL( EPhoneCmdYesSwitchToVoice );
-            break;
-            
         case EVtCmdLowMemory:
             iMenuAndCbaHandler->HandleCommandL( EPhoneCmdVideoCallOutOfMemory );
             break;
--- a/phoneapp/phoneui2/inc/phoneuihousehold_p.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneui2/inc/phoneuihousehold_p.h	Fri Sep 17 08:29:19 2010 +0300
@@ -99,9 +99,6 @@
 
     //Boolean flag. ETrue iff we have reached light idle
     TBool iLightIdleReached;
-        
-    //Indicates whether onscreen dialer is defined
-    TBool iOnScreenDialer;
 
     CPhoneUIController* iPhoneUIController;
     
--- a/phoneapp/phoneui2/src/phoneuihousehold_p.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneui2/src/phoneuihousehold_p.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -41,9 +41,8 @@
 #include "hbinstance.h"
 
 PhoneUiHouseHoldPrivate::PhoneUiHouseHoldPrivate(HbMainWindow &window) :
-    iAppsReady (0), iStartupSignalRecoveryId (0), iLightIdleReached (EFalse),
-    iOnScreenDialer (EFalse), iPhoneUIController (0),
-    m_window (window)
+    iAppsReady (0), iStartupSignalRecoveryId (0), iLightIdleReached (EFalse), 
+    iPhoneUIController (0), m_window (window)
 {
     PHONE_DEBUG("phoneui - Start phoneapp");
     
@@ -332,11 +331,6 @@
 
     // Update the Apps ready flag
     iAppsReady += EPhoneStartedUp;
-    
-    if ( FeatureManager::FeatureSupported( KFeatureIdOnScreenDialer ) )     
-        {
-        iOnScreenDialer = ETrue;
-        }
 
      HbMainWindow *main = hbInstance->allMainWindows().at(0);
     RWindow *win = static_cast<RWindow *>(main->effectiveWinId()->DrawableWindow());
--- a/phoneapp/phoneuicontrol/bwins/phoneuicontrolu.def	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/bwins/phoneuicontrolu.def	Fri Sep 17 08:29:19 2010 +0300
@@ -6,197 +6,182 @@
 	?HandleKeyMessageL@CPhoneStateCallSetup@@UAEXW4TPhoneKeyEventMessages@MPhoneKeyEvents@@W4TKeyCode@@@Z @ 5 NONAME ; void CPhoneStateCallSetup::HandleKeyMessageL(enum MPhoneKeyEvents::TPhoneKeyEventMessages, enum TKeyCode)
 	?CallFetchedNumberL@CPhoneStateInCall@@MAEXABVTDesC16@@@Z @ 6 NONAME ; void CPhoneStateInCall::CallFetchedNumberL(class TDesC16 const &)
 	?SetCbaL@CPhoneCbaManager@@QAEXH@Z @ 7 NONAME ; void CPhoneCbaManager::SetCbaL(int)
-	?InstanceL@CPhoneReconnectQuery@@SAPAV1@XZ @ 8 NONAME ; class CPhoneReconnectQuery * CPhoneReconnectQuery::InstanceL(void)
-	?HandlePhoneStartupL@CPhoneState@@UAEXXZ @ 9 NONAME ; void CPhoneState::HandlePhoneStartupL(void)
-	?HandlePhoneFocusLostEventL@CPhoneStateIdle@@UAEXXZ @ 10 NONAME ; void CPhoneStateIdle::HandlePhoneFocusLostEventL(void)
-	?HandleIdleL@CPhoneStateInCall@@IAEXH@Z @ 11 NONAME ; void CPhoneStateInCall::HandleIdleL(int)
-	?ShowQueryL@CPhoneState@@IAEXH@Z @ 12 NONAME ; void CPhoneState::ShowQueryL(int)
-	?DisplayCallTerminationNoteL@CPhoneState@@IAEXXZ @ 13 NONAME ; void CPhoneState::DisplayCallTerminationNoteL(void)
-	??0CPhoneStateInCall@@IAE@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 14 NONAME ; CPhoneStateInCall::CPhoneStateInCall(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
-	?PhoneEngine@CPhoneStateMachine@@UAEPAVMPEPhoneModel@@XZ @ 15 NONAME ; class MPEPhoneModel * CPhoneStateMachine::PhoneEngine(void)
-	??1CPhoneStateCallSetup@@UAE@XZ @ 16 NONAME ; CPhoneStateCallSetup::~CPhoneStateCallSetup(void)
-	?HandleEnvironmentChangeL@CPhoneUIController@@UAEXH@Z @ 17 NONAME ; void CPhoneUIController::HandleEnvironmentChangeL(int)
-	?SetToolbarButtonLoudspeakerEnabled@CPhoneState@@IAEXXZ @ 18 NONAME ; void CPhoneState::SetToolbarButtonLoudspeakerEnabled(void)
-	?Instance@CPhoneStateHandle@@SAPAV1@XZ @ 19 NONAME ; class CPhoneStateHandle * CPhoneStateHandle::Instance(void)
-	?HandleNumberEntryClearedL@CPhoneStateIdle@@MAEXXZ @ 20 NONAME ; void CPhoneStateIdle::HandleNumberEntryClearedL(void)
-	?HandleCommandL@CPhoneState@@UAEHH@Z @ 21 NONAME ; int CPhoneState::HandleCommandL(int)
-	?StartAlsLineChangeTimerL@CPhoneState@@IAEXXZ @ 22 NONAME ; void CPhoneState::StartAlsLineChangeTimerL(void)
-	?IsNumberEntryVisibleL@CPhoneState@@QAEHXZ @ 23 NONAME ; int CPhoneState::IsNumberEntryVisibleL(void)
-	?DialL@CPhoneStateIdle@@MAEXABVTDesC16@@W4TPhoneNumberType@1@W4TDialInitiationMethod@1@@Z @ 24 NONAME ; void CPhoneStateIdle::DialL(class TDesC16 const &, enum CPhoneStateIdle::TPhoneNumberType, enum CPhoneStateIdle::TDialInitiationMethod)
-	?RetainPreviousKeylockStateL@CPhoneState@@QAEXXZ @ 25 NONAME ; void CPhoneState::RetainPreviousKeylockStateL(void)
-	?HandlePhoneEngineMessageL@CPhoneStateIdle@@UAEXHH@Z @ 26 NONAME ; void CPhoneStateIdle::HandlePhoneEngineMessageL(int, int)
-	?HandleDialingL@CPhoneStateIdle@@MAEXH@Z @ 27 NONAME ; void CPhoneStateIdle::HandleDialingL(int)
-	?CaptureKeysDuringCallNotificationL@CPhoneState@@IAEXH@Z @ 28 NONAME ; void CPhoneState::CaptureKeysDuringCallNotificationL(int)
-	?HandleKeyPressDurationL@CPhoneState@@UAEXW4TKeyCode@@VTTimeIntervalMicroSeconds@@@Z @ 29 NONAME ; void CPhoneState::HandleKeyPressDurationL(enum TKeyCode, class TTimeIntervalMicroSeconds)
-	?ChangeState@CPhoneStateMachine@@UAEXH@Z @ 30 NONAME ; void CPhoneStateMachine::ChangeState(int)
-	?IsSimStateNotPresentWithSecurityModeEnabled@CPhoneState@@IAEHXZ @ 31 NONAME ; int CPhoneState::IsSimStateNotPresentWithSecurityModeEnabled(void)
-	?HandlePhoneEngineMessageL@CPhoneState@@UAEXHH@Z @ 32 NONAME ; void CPhoneState::HandlePhoneEngineMessageL(int, int)
-	?HandleNumberEntryClearedL@CPhoneStateIncoming@@UAEXXZ @ 33 NONAME ; void CPhoneStateIncoming::HandleNumberEntryClearedL(void)
-	?HandleKeyEventL@CPhoneUIController@@UAE?AW4TKeyResponse@@ABUTKeyEvent@@W4TEventCode@@@Z @ 34 NONAME ; enum TKeyResponse CPhoneUIController::HandleKeyEventL(struct TKeyEvent const &, enum TEventCode)
-	?HandleRemConCommandL@CPhoneStateIdle@@MAEHW4TRemConCoreApiOperationId@@W4TRemConCoreApiButtonAction@@@Z @ 35 NONAME ; int CPhoneStateIdle::HandleRemConCommandL(enum TRemConCoreApiOperationId, enum TRemConCoreApiButtonAction)
-	?HandleAudioPlayStoppedL@CPhoneStateIncoming@@MAEXXZ @ 36 NONAME ; void CPhoneStateIncoming::HandleAudioPlayStoppedL(void)
-	?HandleCenRepChangeL@CPhoneState@@UAEXABVTUid@@I@Z @ 37 NONAME ; void CPhoneState::HandleCenRepChangeL(class TUid const &, unsigned int)
-	?HandleLongHashL@CPhoneState@@UAEXXZ @ 38 NONAME ; void CPhoneState::HandleLongHashL(void)
-	?ShowNumberBusyNoteL@CPhoneState@@IAEXXZ @ 39 NONAME ; void CPhoneState::ShowNumberBusyNoteL(void)
-	?DisconnectCallL@CPhoneState@@IAEHXZ @ 40 NONAME ; int CPhoneState::DisconnectCallL(void)
-	?HandleNumberEntryClearedL@CPhoneStateCallSetup@@MAEXXZ @ 41 NONAME ; void CPhoneStateCallSetup::HandleNumberEntryClearedL(void)
-	?HandleIdleForegroundEventL@CPhoneStateIdle@@UAEXXZ @ 42 NONAME ; void CPhoneStateIdle::HandleIdleForegroundEventL(void)
-	?HandleDisconnectingL@CPhoneState@@IAEXH@Z @ 43 NONAME ; void CPhoneState::HandleDisconnectingL(int)
-	?HandleAudioMuteChangedL@CPhoneState@@IAEXXZ @ 44 NONAME ; void CPhoneState::HandleAudioMuteChangedL(void)
-	?HandleKeyLockEnabled@CPhoneState@@UAEXH@Z @ 45 NONAME ; void CPhoneState::HandleKeyLockEnabled(int)
-	?HandleCommandL@CPhoneStateIncoming@@UAEHH@Z @ 46 NONAME ; int CPhoneStateIncoming::HandleCommandL(int)
-	?UpdateSingleActiveCallL@CPhoneState@@IAEXH@Z @ 47 NONAME ; void CPhoneState::UpdateSingleActiveCallL(int)
-	?IsOnScreenDialerSupported@CPhoneState@@IBEHXZ @ 48 NONAME ; int CPhoneState::IsOnScreenDialerSupported(void) const
-	?SimState@CPhoneState@@IBE?AW4TPESimState@@XZ @ 49 NONAME ; enum TPESimState CPhoneState::SimState(void) const
-	?HandleKeyEventL@CPhoneStateCallSetup@@UAEXABUTKeyEvent@@W4TEventCode@@@Z @ 50 NONAME ; void CPhoneStateCallSetup::HandleKeyEventL(struct TKeyEvent const &, enum TEventCode)
-	?SetupIdleScreenInBackgroundL@CPhoneState@@IAEXXZ @ 51 NONAME ; void CPhoneState::SetupIdleScreenInBackgroundL(void)
-	?CompleteSatRequestL@CPhoneState@@IAEXH@Z @ 52 NONAME ; void CPhoneState::CompleteSatRequestL(int)
-	?NewL@CPhoneStateStartup@@SAPAV1@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 53 NONAME ; class CPhoneStateStartup * CPhoneStateStartup::NewL(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
-	?NeedToSendToBackgroundL@CPhoneState@@IBEHXZ @ 54 NONAME ; int CPhoneState::NeedToSendToBackgroundL(void) const
-	?SetCallHeaderTextsForCallComingInL@CPhoneState@@IAEXHHPAVTPhoneCmdParamCallHeaderData@@@Z @ 55 NONAME ; void CPhoneState::SetCallHeaderTextsForCallComingInL(int, int, class TPhoneCmdParamCallHeaderData *)
-	?IsSimOk@CPhoneState@@QAEHXZ @ 56 NONAME ; int CPhoneState::IsSimOk(void)
-	?ClearNumberEntryContentCache@CPhoneState@@IAEXXZ @ 57 NONAME ; void CPhoneState::ClearNumberEntryContentCache(void)
-	?HandleCommandL@CPhoneStateIdle@@UAEHH@Z @ 58 NONAME ; int CPhoneStateIdle::HandleCommandL(int)
-	?ViewCommandHandle@CPhoneStateHandle@@QAEPAVMPhoneViewCommandHandle@@XZ @ 59 NONAME ; class MPhoneViewCommandHandle * CPhoneStateHandle::ViewCommandHandle(void)
-	?DialMultimediaCallL@CPhoneStateIdle@@IAEXXZ @ 60 NONAME ; void CPhoneStateIdle::DialMultimediaCallL(void)
-	?DisconnectOutgoingCallL@CPhoneStateInCall@@IAEXXZ @ 61 NONAME ; void CPhoneStateInCall::DisconnectOutgoingCallL(void)
-	?IsKeyLockOn@CPhoneState@@MBEHXZ @ 62 NONAME ; int CPhoneState::IsKeyLockOn(void) const
-	??1CPhoneStateInCall@@UAE@XZ @ 63 NONAME ; CPhoneStateInCall::~CPhoneStateInCall(void)
-	?ShowReconnectQueryL@CPhoneReconnectQuery@@QAEXH@Z @ 64 NONAME ; void CPhoneReconnectQuery::ShowReconnectQueryL(int)
-	?SetNumberEntryVisibilityL@CPhoneState@@IAEXH@Z @ 65 NONAME ; void CPhoneState::SetNumberEntryVisibilityL(int)
-	?HandleError@CPhoneUIController@@UAEXABUTPEErrorInfo@@@Z @ 66 NONAME ; void CPhoneUIController::HandleError(struct TPEErrorInfo const &)
-	?ConstructL@CPhoneStateInCall@@MAEXXZ @ 67 NONAME ; void CPhoneStateInCall::ConstructL(void)
-	?OnlyHashInNumberEntryL@CPhoneStateIdle@@MAEXXZ @ 68 NONAME ; void CPhoneStateIdle::OnlyHashInNumberEntryL(void)
-	?IsVideoCallRingingL@CPhoneStateInCall@@MAEHXZ @ 69 NONAME ; int CPhoneStateInCall::IsVideoCallRingingL(void)
-	?HandlePhoneForegroundEventL@CPhoneStateIdle@@UAEXXZ @ 70 NONAME ; void CPhoneStateIdle::HandlePhoneForegroundEventL(void)
-	?HandleHoldSwitchL@CPhoneState@@QAEXXZ @ 71 NONAME ; void CPhoneState::HandleHoldSwitchL(void)
-	?CloseDtmfQueryL@CPhoneStateInCall@@IAEXXZ @ 72 NONAME ; void CPhoneStateInCall::CloseDtmfQueryL(void)
-	?HandleDtmfKeyToneL@CPhoneStateStartup@@EAEXABUTKeyEvent@@W4TEventCode@@@Z @ 73 NONAME ; void CPhoneStateStartup::HandleDtmfKeyToneL(struct TKeyEvent const &, enum TEventCode)
-	?ShowTextQueryL@CPhoneState@@IAEXHHHPAVTDes16@@H@Z @ 74 NONAME ; void CPhoneState::ShowTextQueryL(int, int, int, class TDes16 *, int)
-	?DialMultimediaCallL@CPhoneState@@IAEXXZ @ 75 NONAME ; void CPhoneState::DialMultimediaCallL(void)
-	?NewL@CPhoneUIController@@SAPAV1@PAVMPhoneViewCommandHandle@@@Z @ 76 NONAME ; class CPhoneUIController * CPhoneUIController::NewL(class MPhoneViewCommandHandle *)
-	?CheckDisableHWKeysAndCallUIL@CPhoneState@@QAEXXZ @ 77 NONAME ; void CPhoneState::CheckDisableHWKeysAndCallUIL(void)
-	?HandleErrorL@CPhoneState@@UAEXABUTPEErrorInfo@@@Z @ 78 NONAME ; void CPhoneState::HandleErrorL(struct TPEErrorInfo const &)
-	?HandleCommandL@CPhoneStateCallSetup@@UAEHH@Z @ 79 NONAME ; int CPhoneStateCallSetup::HandleCommandL(int)
-	??1CPhoneUIController@@UAE@XZ @ 80 NONAME ; CPhoneUIController::~CPhoneUIController(void)
-	?HandleAudioOutputChangedL@CPhoneState@@IAEXXZ @ 81 NONAME ; void CPhoneState::HandleAudioOutputChangedL(void)
-	?HandleKeyEventL@CPhoneState@@UAEXABUTKeyEvent@@W4TEventCode@@@Z @ 82 NONAME ; void CPhoneState::HandleKeyEventL(struct TKeyEvent const &, enum TEventCode)
-	?UpdateIncomingCbaL@CPhoneCbaManager@@QAEXH@Z @ 83 NONAME ; void CPhoneCbaManager::UpdateIncomingCbaL(int)
-	?SendGlobalErrorNoteL@CPhoneState@@QAEXHH@Z @ 84 NONAME ; void CPhoneState::SendGlobalErrorNoteL(int, int)
-	?ConstructL@CPhoneStateIncoming@@MAEXXZ @ 85 NONAME ; void CPhoneStateIncoming::ConstructL(void)
-	?CreatePhoneEngineL@CPhoneStateMachine@@UAEPAVMPEPhoneModel@@AAVMEngineMonitor@@@Z @ 86 NONAME ; class MPEPhoneModel * CPhoneStateMachine::CreatePhoneEngineL(class MEngineMonitor &)
-	?SetTouchPaneButtons@CPhoneState@@IAEXH@Z @ 87 NONAME ; void CPhoneState::SetTouchPaneButtons(int)
-	?HandleIdleForegroundEventL@CPhoneStateStartup@@UAEXXZ @ 88 NONAME ; void CPhoneStateStartup::HandleIdleForegroundEventL(void)
-	?CallFromNumberEntryL@CPhoneState@@IAEXXZ @ 89 NONAME ; void CPhoneState::CallFromNumberEntryL(void)
-	?UpdateCbaL@CPhoneCbaManager@@QAEXH@Z @ 90 NONAME ; void CPhoneCbaManager::UpdateCbaL(int)
-	?IsVideoCall@CPhoneState@@IAEHH@Z @ 91 NONAME ; int CPhoneState::IsVideoCall(int)
-	?IsSwivelClosed@CPhoneState@@QBEHXZ @ 92 NONAME ; int CPhoneState::IsSwivelClosed(void) const
-	?HandlePhoneForegroundEventL@CPhoneUIController@@UAEXXZ @ 93 NONAME ; void CPhoneUIController::HandlePhoneForegroundEventL(void)
-	?CheckIfRestoreNEContentAfterDtmfDialer@CPhoneState@@IAEXXZ @ 94 NONAME ; void CPhoneState::CheckIfRestoreNEContentAfterDtmfDialer(void)
-	?HandleNumericKeyEventL@CPhoneState@@MAEXABUTKeyEvent@@W4TEventCode@@@Z @ 95 NONAME ; void CPhoneState::HandleNumericKeyEventL(struct TKeyEvent const &, enum TEventCode)
-	?IsAutoLockOn@CPhoneState@@UBEHXZ @ 96 NONAME ; int CPhoneState::IsAutoLockOn(void) const
-	?UpdateCbaL@CPhoneStateCallSetup@@MAEXH@Z @ 97 NONAME ; void CPhoneStateCallSetup::UpdateCbaL(int)
-	?HandleKeyEventL@CPhoneStateIdle@@UAEXABUTKeyEvent@@W4TEventCode@@@Z @ 98 NONAME ; void CPhoneStateIdle::HandleKeyEventL(struct TKeyEvent const &, enum TEventCode)
-	?SendGlobalWarningNoteL@CPhoneState@@IAEXHH@Z @ 99 NONAME ; void CPhoneState::SendGlobalWarningNoteL(int, int)
-	?IsNumberEntryContentStored@CPhoneState@@IAEHXZ @ 100 NONAME ; int CPhoneState::IsNumberEntryContentStored(void)
-	?IsVideoCallActiveL@CPhoneStateInCall@@MAEHXZ @ 101 NONAME ; int CPhoneStateInCall::IsVideoCallActiveL(void)
-	?DialVoiceCallL@CPhoneState@@IAEXXZ @ 102 NONAME ; void CPhoneState::DialVoiceCallL(void)
-	?HandlePhoneStartupL@CPhoneStateStartup@@UAEXXZ @ 103 NONAME ; void CPhoneStateStartup::HandlePhoneStartupL(void)
-	?StateMachine@CPhoneStateHandle@@QAEPAVMPhoneStateMachine@@XZ @ 104 NONAME ; class MPhoneStateMachine * CPhoneStateHandle::StateMachine(void)
-	?EndUiUpdate@CPhoneState@@IAEXXZ @ 105 NONAME ; void CPhoneState::EndUiUpdate(void)
-	?HandleKeyPressDurationL@CPhoneStateIncoming@@UAEXW4TKeyCode@@VTTimeIntervalMicroSeconds@@@Z @ 106 NONAME ; void CPhoneStateIncoming::HandleKeyPressDurationL(enum TKeyCode, class TTimeIntervalMicroSeconds)
-	?UpdateInCallCbaL@CPhoneStateInCall@@MAEXXZ @ 107 NONAME ; void CPhoneStateInCall::UpdateInCallCbaL(void)
-	?HandleEnvironmentChangeL@CPhoneState@@UAEXH@Z @ 108 NONAME ; void CPhoneState::HandleEnvironmentChangeL(int)
-	?HandleKeyMessageL@CPhoneStateInCall@@UAEXW4TPhoneKeyEventMessages@MPhoneKeyEvents@@W4TKeyCode@@@Z @ 109 NONAME ; void CPhoneStateInCall::HandleKeyMessageL(enum MPhoneKeyEvents::TPhoneKeyEventMessages, enum TKeyCode)
-	?SetRingingTonePlaybackL@CPhoneState@@IAEXH@Z @ 110 NONAME ; void CPhoneState::SetRingingTonePlaybackL(int)
-	?ProcessCommandL@CPhoneState@@UAEHH@Z @ 111 NONAME ; int CPhoneState::ProcessCommandL(int)
-	?BeginUiUpdateLC@CPhoneState@@IAEXXZ @ 112 NONAME ; void CPhoneState::BeginUiUpdateLC(void)
-	?DecreaseAudioVolumeL@CPhoneState@@IAEXXZ @ 113 NONAME ; void CPhoneState::DecreaseAudioVolumeL(void)
-	?PhoneEngineInfo@CPhoneStateMachine@@UAEPAVMPEEngineInfo@@XZ @ 114 NONAME ; class MPEEngineInfo * CPhoneStateMachine::PhoneEngineInfo(void)
-	?HandleSystemEventL@CPhoneUIController@@UAEXABVTWsEvent@@@Z @ 115 NONAME ; void CPhoneUIController::HandleSystemEventL(class TWsEvent const &)
-	??0CPhoneStateStartup@@IAE@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 116 NONAME ; CPhoneStateStartup::CPhoneStateStartup(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
-	?GetRemoteInfoDataL@CPhoneState@@IAEXHAAVTDes16@@@Z @ 117 NONAME ; void CPhoneState::GetRemoteInfoDataL(int, class TDes16 &)
-	?SetDivertIndication@CPhoneState@@UAEXH@Z @ 118 NONAME ; void CPhoneState::SetDivertIndication(int)
-	?UpdateCbaL@CPhoneStateInCall@@MAEXH@Z @ 119 NONAME ; void CPhoneStateInCall::UpdateCbaL(int)
-	?SetCallId@CPhoneStateMachine@@UAEXH@Z @ 120 NONAME ; void CPhoneStateMachine::SetCallId(int)
-	?ProcessCommandL@CPhoneUIController@@UAEHH@Z @ 121 NONAME ; int CPhoneUIController::ProcessCommandL(int)
-	?DisplayHeaderForCallComingInL@CPhoneState@@IAEXHH@Z @ 122 NONAME ; void CPhoneState::DisplayHeaderForCallComingInL(int, int)
-	??0CPhoneStateIdle@@IAE@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 123 NONAME ; CPhoneStateIdle::CPhoneStateIdle(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
-	?SendPhoneEngineMessage@CPhoneStateMachine@@UAEXH@Z @ 124 NONAME ; void CPhoneStateMachine::SendPhoneEngineMessage(int)
-	??0CPhoneStateCallSetup@@IAE@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 125 NONAME ; CPhoneStateCallSetup::CPhoneStateCallSetup(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
-	??0CPhoneState@@QAE@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 126 NONAME ; CPhoneState::CPhoneState(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
-	?HandleDtmfKeyToneL@CPhoneState@@UAEXABUTKeyEvent@@W4TEventCode@@@Z @ 127 NONAME ; void CPhoneState::HandleDtmfKeyToneL(struct TKeyEvent const &, enum TEventCode)
-	?HandleKeyMessageL@CPhoneStateIdle@@UAEXW4TPhoneKeyEventMessages@MPhoneKeyEvents@@W4TKeyCode@@@Z @ 128 NONAME ; void CPhoneStateIdle::HandleKeyMessageL(enum MPhoneKeyEvents::TPhoneKeyEventMessages, enum TKeyCode)
-	?HandleForegroundEventL@CPhoneUIController@@UAEXH@Z @ 129 NONAME ; void CPhoneUIController::HandleForegroundEventL(int)
-	?HandleCommandL@CPhoneUIController@@UAEHH@Z @ 130 NONAME ; int CPhoneUIController::HandleCommandL(int)
-	?HandleSendCommandL@CPhoneStateIdle@@MAEXXZ @ 131 NONAME ; void CPhoneStateIdle::HandleSendCommandL(void)
-	?DisableHWKeysL@CPhoneState@@QAEXXZ @ 132 NONAME ; void CPhoneState::DisableHWKeysL(void)
-	?DisplayHeaderForOutgoingCallL@CPhoneState@@IAEXH@Z @ 133 NONAME ; void CPhoneState::DisplayHeaderForOutgoingCallL(int)
-	?GetBlockedKeyList@CPhoneState@@UBEABV?$RArray@H@@XZ @ 134 NONAME ; class RArray<int> const & CPhoneState::GetBlockedKeyList(void) const
-	?HandlePhoneEngineMessageL@CPhoneStateInCall@@UAEXHH@Z @ 135 NONAME ; void CPhoneStateInCall::HandlePhoneEngineMessageL(int, int)
-	?IsNumberEntryUsedL@CPhoneState@@UAEHXZ @ 136 NONAME ; int CPhoneState::IsNumberEntryUsedL(void)
-	?PhoneStorage@CPhoneStateMachine@@UAEPAVMPhoneStorage@@XZ @ 137 NONAME ; class MPhoneStorage * CPhoneStateMachine::PhoneStorage(void)
-	??1CPhoneState@@UAE@XZ @ 138 NONAME ; CPhoneState::~CPhoneState(void)
-	?HandlePhoneEngineMessageL@CPhoneStateCallSetup@@UAEXHH@Z @ 139 NONAME ; void CPhoneStateCallSetup::HandlePhoneEngineMessageL(int, int)
-	?HandlePhoneFocusLostEventL@CPhoneState@@UAEXXZ @ 140 NONAME ; void CPhoneState::HandlePhoneFocusLostEventL(void)
-	??1CPhoneStateMachine@@UAE@XZ @ 141 NONAME ; CPhoneStateMachine::~CPhoneStateMachine(void)
-	?HandleIdleForegroundEventL@CPhoneState@@UAEXXZ @ 142 NONAME ; void CPhoneState::HandleIdleForegroundEventL(void)
-	?ConstructL@CPhoneStateCallSetup@@MAEXXZ @ 143 NONAME ; void CPhoneStateCallSetup::ConstructL(void)
-	?HandleMessage@CPhoneUIController@@UAEXHH@Z @ 144 NONAME ; void CPhoneUIController::HandleMessage(int, int)
-	?HandleSystemEventL@CPhoneState@@UAEXABVTWsEvent@@@Z @ 145 NONAME ; void CPhoneState::HandleSystemEventL(class TWsEvent const &)
-	?DisplayCallSetupL@CPhoneStateIdle@@IAEXH@Z @ 146 NONAME ; void CPhoneStateIdle::DisplayCallSetupL(int)
-	?ConstructL@CPhoneStateStartup@@MAEXXZ @ 147 NONAME ; void CPhoneStateStartup::ConstructL(void)
-	?HandleKeyMessageL@CPhoneStateStartup@@UAEXW4TPhoneKeyEventMessages@MPhoneKeyEvents@@W4TKeyCode@@@Z @ 148 NONAME ; void CPhoneStateStartup::HandleKeyMessageL(enum MPhoneKeyEvents::TPhoneKeyEventMessages, enum TKeyCode)
-	?ShowNoteL@CPhoneState@@IAEXH@Z @ 149 NONAME ; void CPhoneState::ShowNoteL(int)
-	?HandlePropertyChangedL@CPhoneState@@UAEXABVTUid@@IH@Z @ 150 NONAME ; void CPhoneState::HandlePropertyChangedL(class TUid const &, unsigned int, int)
-	?IsAnyQueryActiveL@CPhoneState@@QAEHXZ @ 151 NONAME ; int CPhoneState::IsAnyQueryActiveL(void)
-	?State@CPhoneStateMachine@@UAEPAVMPhoneState@@XZ @ 152 NONAME ; class MPhoneState * CPhoneStateMachine::State(void)
-	?SetHandsfreeModeL@CPhoneState@@IAEXH@Z @ 153 NONAME ; void CPhoneState::SetHandsfreeModeL(int)
-	?IsCustomizedDialerVisibleL@CPhoneState@@QBEHXZ @ 154 NONAME ; int CPhoneState::IsCustomizedDialerVisibleL(void) const
-	?UpdateInCallCbaL@CPhoneStateCallSetup@@MAEXXZ @ 155 NONAME ; void CPhoneStateCallSetup::UpdateInCallCbaL(void)
-	?HandleNumberEntryClearedL@CPhoneStateInCall@@MAEXXZ @ 156 NONAME ; void CPhoneStateInCall::HandleNumberEntryClearedL(void)
-	??0CPhoneStateIncoming@@IAE@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 157 NONAME ; CPhoneStateIncoming::CPhoneStateIncoming(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
-	?SendGlobalInfoNoteL@CPhoneState@@QAEXHH@Z @ 158 NONAME ; void CPhoneState::SendGlobalInfoNoteL(int, int)
-	??1CPhoneStateIncoming@@UAE@XZ @ 159 NONAME ; CPhoneStateIncoming::~CPhoneStateIncoming(void)
-	?HandleKeyLockEnabled@CPhoneUIController@@UAEXH@Z @ 160 NONAME ; void CPhoneUIController::HandleKeyLockEnabled(int)
-	?DisableCallUIL@CPhoneState@@QAEXXZ @ 161 NONAME ; void CPhoneState::DisableCallUIL(void)
-	?DeleteTouchPaneButtons@CPhoneState@@IAEXXZ @ 162 NONAME ; void CPhoneState::DeleteTouchPaneButtons(void)
-	?ProcessCommandL@CPhoneStateIdle@@UAEHH@Z @ 163 NONAME ; int CPhoneStateIdle::ProcessCommandL(int)
-	?IsAlphanumericSupportedAndCharInput@CPhoneState@@MAEHABUTKeyEvent@@@Z @ 164 NONAME ; int CPhoneState::IsAlphanumericSupportedAndCharInput(struct TKeyEvent const &)
-	?HandlePhoneEngineMessageL@CPhoneStateStartup@@UAEXHH@Z @ 165 NONAME ; void CPhoneStateStartup::HandlePhoneEngineMessageL(int, int)
-	?HandleKeyEventL@CPhoneStateIncoming@@UAEXABUTKeyEvent@@W4TEventCode@@@Z @ 166 NONAME ; void CPhoneStateIncoming::HandleKeyEventL(struct TKeyEvent const &, enum TEventCode)
-	?HandleKeyEventL@CPhoneStateStartup@@UAEXABUTKeyEvent@@W4TEventCode@@@Z @ 167 NONAME ; void CPhoneStateStartup::HandleKeyEventL(struct TKeyEvent const &, enum TEventCode)
-	?HandleNumberEntryClearedL@CPhoneState@@MAEXXZ @ 168 NONAME ; void CPhoneState::HandleNumberEntryClearedL(void)
-	?OnlyHashInNumberEntryL@CPhoneState@@MAEXXZ @ 169 NONAME ; void CPhoneState::OnlyHashInNumberEntryL(void)
-	?IncreaseAudioVolumeL@CPhoneState@@IAEXXZ @ 170 NONAME ; void CPhoneState::IncreaseAudioVolumeL(void)
-	?ConstructL@CPhoneStateIdle@@MAEXXZ @ 171 NONAME ; void CPhoneStateIdle::ConstructL(void)
-	?CheckIfShowCallTerminationNote@CPhoneState@@MAEHXZ @ 172 NONAME ; int CPhoneState::CheckIfShowCallTerminationNote(void)
-	?DisplayIdleScreenL@CPhoneState@@IAEXXZ @ 173 NONAME ; void CPhoneState::DisplayIdleScreenL(void)
-	?StartShowSecurityNoteL@CPhoneState@@IAEXXZ @ 174 NONAME ; void CPhoneState::StartShowSecurityNoteL(void)
-	?StoreNumberEntryContentL@CPhoneState@@IAEXXZ @ 175 NONAME ; void CPhoneState::StoreNumberEntryContentL(void)
-	?SetBTHandsfreeModeL@CPhoneState@@IAEXH@Z @ 176 NONAME ; void CPhoneState::SetBTHandsfreeModeL(int)
-	?HandlePhoneEngineMessageL@CPhoneStateIncoming@@UAEXHH@Z @ 177 NONAME ; void CPhoneStateIncoming::HandlePhoneEngineMessageL(int, int)
-	?SetDefaultFlagsL@CPhoneState@@IAEXXZ @ 178 NONAME ; void CPhoneState::SetDefaultFlagsL(void)
-	?HandleCommandL@CPhoneStateInCall@@UAEHH@Z @ 179 NONAME ; int CPhoneStateInCall::HandleCommandL(int)
-	?DialVoiceCallL@CPhoneStateIdle@@IAEXXZ @ 180 NONAME ; void CPhoneStateIdle::DialVoiceCallL(void)
-	?UpdateRemoteInfoDataL@CPhoneState@@IAEXH@Z @ 181 NONAME ; void CPhoneState::UpdateRemoteInfoDataL(int)
-	?GetRingingCallL@CPhoneStateInCall@@MAEHXZ @ 182 NONAME ; int CPhoneStateInCall::GetRingingCallL(void)
-	?HandleIdleForegroundEventL@CPhoneUIController@@UAEXXZ @ 183 NONAME ; void CPhoneUIController::HandleIdleForegroundEventL(void)
-	?SetBackButtonActive@CPhoneState@@IAEXH@Z @ 184 NONAME ; void CPhoneState::SetBackButtonActive(int)
-	?HandlePhoneForegroundEventL@CPhoneState@@UAEXXZ @ 185 NONAME ; void CPhoneState::HandlePhoneForegroundEventL(void)
-	?HandleForegroundEventL@CPhoneState@@UAEXH@Z @ 186 NONAME ; void CPhoneState::HandleForegroundEventL(int)
-	?DisplayIncomingCallL@CPhoneStateIdle@@IAEXH@Z @ 187 NONAME ; void CPhoneStateIdle::DisplayIncomingCallL(int)
-	??1CPhoneStateIdle@@UAE@XZ @ 188 NONAME ; CPhoneStateIdle::~CPhoneStateIdle(void)
-	?HandleRemConCommandL@CPhoneState@@UAEHW4TRemConCoreApiOperationId@@W4TRemConCoreApiButtonAction@@@Z @ 189 NONAME ; int CPhoneState::HandleRemConCommandL(enum TRemConCoreApiOperationId, enum TRemConCoreApiButtonAction)
-	?PhoneNumberFromEntryLC@CPhoneState@@IAEPAVHBufC16@@XZ @ 190 NONAME ; class HBufC16 * CPhoneState::PhoneNumberFromEntryLC(void)
-	?BaseConstructL@CPhoneState@@QAEXXZ @ 191 NONAME ; void CPhoneState::BaseConstructL(void)
-	?HandlePhoneStartupL@CPhoneUIController@@UAEXXZ @ 192 NONAME ; void CPhoneUIController::HandlePhoneStartupL(void)
-	?SetCallHeaderType@CPhoneState@@IAEXH@Z @ 193 NONAME ; void CPhoneState::SetCallHeaderType(int)
-	?SetPhoneEngine@CPhoneStateMachine@@UAEXPAVMPEPhoneModel@@@Z @ 194 NONAME ; void CPhoneStateMachine::SetPhoneEngine(class MPEPhoneModel *)
-	?HandleKeyLockEnabled@CPhoneStateIncoming@@UAEXH@Z @ 195 NONAME ; void CPhoneStateIncoming::HandleKeyLockEnabled(int)
-	?HandlePhoneFocusLostEventL@CPhoneUIController@@UAEXXZ @ 196 NONAME ; void CPhoneUIController::HandlePhoneFocusLostEventL(void)
-	??0CPhoneStateMachine@@IAE@PAVMPhoneViewCommandHandle@@@Z @ 197 NONAME ; CPhoneStateMachine::CPhoneStateMachine(class MPhoneViewCommandHandle *)
-	??1CPhoneStateStartup@@UAE@XZ @ 198 NONAME ; CPhoneStateStartup::~CPhoneStateStartup(void)
-	?HandleKeyMessageL@CPhoneState@@UAEXW4TPhoneKeyEventMessages@MPhoneKeyEvents@@W4TKeyCode@@@Z @ 199 NONAME ; void CPhoneState::HandleKeyMessageL(enum MPhoneKeyEvents::TPhoneKeyEventMessages, enum TKeyCode)
-	?OpenSoftRejectMessageEditorL@CPhoneState@@MAEXXZ @ 200 NONAME ; void CPhoneState::OpenSoftRejectMessageEditorL(void)
+	?HandlePhoneStartupL@CPhoneState@@UAEXXZ @ 8 NONAME ; void CPhoneState::HandlePhoneStartupL(void)
+	?HandlePhoneFocusLostEventL@CPhoneStateIdle@@UAEXXZ @ 9 NONAME ; void CPhoneStateIdle::HandlePhoneFocusLostEventL(void)
+	?HandleIdleL@CPhoneStateInCall@@IAEXH@Z @ 10 NONAME ; void CPhoneStateInCall::HandleIdleL(int)
+	?ShowQueryL@CPhoneState@@IAEXH@Z @ 11 NONAME ; void CPhoneState::ShowQueryL(int)
+	?DisplayCallTerminationNoteL@CPhoneState@@IAEXXZ @ 12 NONAME ; void CPhoneState::DisplayCallTerminationNoteL(void)
+	??0CPhoneStateInCall@@IAE@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 13 NONAME ; CPhoneStateInCall::CPhoneStateInCall(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
+	?PhoneEngine@CPhoneStateMachine@@UAEPAVMPEPhoneModel@@XZ @ 14 NONAME ; class MPEPhoneModel * CPhoneStateMachine::PhoneEngine(void)
+	??1CPhoneStateCallSetup@@UAE@XZ @ 15 NONAME ; CPhoneStateCallSetup::~CPhoneStateCallSetup(void)
+	?SetToolbarButtonLoudspeakerEnabled@CPhoneState@@IAEXXZ @ 16 NONAME ; void CPhoneState::SetToolbarButtonLoudspeakerEnabled(void)
+	?Instance@CPhoneStateHandle@@SAPAV1@XZ @ 17 NONAME ; class CPhoneStateHandle * CPhoneStateHandle::Instance(void)
+	?HandleNumberEntryClearedL@CPhoneStateIdle@@MAEXXZ @ 18 NONAME ; void CPhoneStateIdle::HandleNumberEntryClearedL(void)
+	?HandleCommandL@CPhoneState@@UAEHH@Z @ 19 NONAME ; int CPhoneState::HandleCommandL(int)
+	?IsNumberEntryVisibleL@CPhoneState@@QAEHXZ @ 20 NONAME ; int CPhoneState::IsNumberEntryVisibleL(void)
+	?DialL@CPhoneStateIdle@@MAEXABVTDesC16@@W4TPhoneNumberType@1@W4TDialInitiationMethod@1@@Z @ 21 NONAME ; void CPhoneStateIdle::DialL(class TDesC16 const &, enum CPhoneStateIdle::TPhoneNumberType, enum CPhoneStateIdle::TDialInitiationMethod)
+	?RetainPreviousKeylockStateL@CPhoneState@@QAEXXZ @ 22 NONAME ; void CPhoneState::RetainPreviousKeylockStateL(void)
+	?HandlePhoneEngineMessageL@CPhoneStateIdle@@UAEXHH@Z @ 23 NONAME ; void CPhoneStateIdle::HandlePhoneEngineMessageL(int, int)
+	?HandleDialingL@CPhoneStateIdle@@MAEXH@Z @ 24 NONAME ; void CPhoneStateIdle::HandleDialingL(int)
+	?ChangeState@CPhoneStateMachine@@UAEXH@Z @ 25 NONAME ; void CPhoneStateMachine::ChangeState(int)
+	?IsSimStateNotPresentWithSecurityModeEnabled@CPhoneState@@IAEHXZ @ 26 NONAME ; int CPhoneState::IsSimStateNotPresentWithSecurityModeEnabled(void)
+	?HandlePhoneEngineMessageL@CPhoneState@@UAEXHH@Z @ 27 NONAME ; void CPhoneState::HandlePhoneEngineMessageL(int, int)
+	?HandleNumberEntryClearedL@CPhoneStateIncoming@@UAEXXZ @ 28 NONAME ; void CPhoneStateIncoming::HandleNumberEntryClearedL(void)
+	?HandleKeyEventL@CPhoneUIController@@UAE?AW4TKeyResponse@@ABUTKeyEvent@@W4TEventCode@@@Z @ 29 NONAME ; enum TKeyResponse CPhoneUIController::HandleKeyEventL(struct TKeyEvent const &, enum TEventCode)
+	?HandleRemConCommandL@CPhoneStateIdle@@MAEHW4TRemConCoreApiOperationId@@W4TRemConCoreApiButtonAction@@@Z @ 30 NONAME ; int CPhoneStateIdle::HandleRemConCommandL(enum TRemConCoreApiOperationId, enum TRemConCoreApiButtonAction)
+	?HandleAudioPlayStoppedL@CPhoneStateIncoming@@MAEXXZ @ 31 NONAME ; void CPhoneStateIncoming::HandleAudioPlayStoppedL(void)
+	?HandleCenRepChangeL@CPhoneState@@UAEXABVTUid@@I@Z @ 32 NONAME ; void CPhoneState::HandleCenRepChangeL(class TUid const &, unsigned int)
+	?ShowNumberBusyNoteL@CPhoneState@@IAEXXZ @ 33 NONAME ; void CPhoneState::ShowNumberBusyNoteL(void)
+	?DisconnectCallL@CPhoneState@@IAEHXZ @ 34 NONAME ; int CPhoneState::DisconnectCallL(void)
+	?HandleNumberEntryClearedL@CPhoneStateCallSetup@@MAEXXZ @ 35 NONAME ; void CPhoneStateCallSetup::HandleNumberEntryClearedL(void)
+	?HandleIdleForegroundEventL@CPhoneStateIdle@@UAEXXZ @ 36 NONAME ; void CPhoneStateIdle::HandleIdleForegroundEventL(void)
+	?HandleDisconnectingL@CPhoneState@@IAEXH@Z @ 37 NONAME ; void CPhoneState::HandleDisconnectingL(int)
+	?HandleAudioMuteChangedL@CPhoneState@@IAEXXZ @ 38 NONAME ; void CPhoneState::HandleAudioMuteChangedL(void)
+	?HandleKeyLockEnabled@CPhoneState@@UAEXH@Z @ 39 NONAME ; void CPhoneState::HandleKeyLockEnabled(int)
+	?HandleCommandL@CPhoneStateIncoming@@UAEHH@Z @ 40 NONAME ; int CPhoneStateIncoming::HandleCommandL(int)
+	?UpdateSingleActiveCallL@CPhoneState@@IAEXH@Z @ 41 NONAME ; void CPhoneState::UpdateSingleActiveCallL(int)
+	?SimState@CPhoneState@@IBE?AW4TPESimState@@XZ @ 42 NONAME ; enum TPESimState CPhoneState::SimState(void) const
+	?HandleKeyEventL@CPhoneStateCallSetup@@UAEXABUTKeyEvent@@W4TEventCode@@@Z @ 43 NONAME ; void CPhoneStateCallSetup::HandleKeyEventL(struct TKeyEvent const &, enum TEventCode)
+	?SetupIdleScreenInBackgroundL@CPhoneState@@IAEXXZ @ 44 NONAME ; void CPhoneState::SetupIdleScreenInBackgroundL(void)
+	?CompleteSatRequestL@CPhoneState@@IAEXH@Z @ 45 NONAME ; void CPhoneState::CompleteSatRequestL(int)
+	?NewL@CPhoneStateStartup@@SAPAV1@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 46 NONAME ; class CPhoneStateStartup * CPhoneStateStartup::NewL(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
+	?NeedToSendToBackgroundL@CPhoneState@@IBEHXZ @ 47 NONAME ; int CPhoneState::NeedToSendToBackgroundL(void) const
+	?SetCallHeaderTextsForCallComingInL@CPhoneState@@IAEXHHPAVTPhoneCmdParamCallHeaderData@@@Z @ 48 NONAME ; void CPhoneState::SetCallHeaderTextsForCallComingInL(int, int, class TPhoneCmdParamCallHeaderData *)
+	?IsSimOk@CPhoneState@@QAEHXZ @ 49 NONAME ; int CPhoneState::IsSimOk(void)
+	?ClearNumberEntryContentCache@CPhoneState@@IAEXXZ @ 50 NONAME ; void CPhoneState::ClearNumberEntryContentCache(void)
+	?HandleCommandL@CPhoneStateIdle@@UAEHH@Z @ 51 NONAME ; int CPhoneStateIdle::HandleCommandL(int)
+	?ViewCommandHandle@CPhoneStateHandle@@QAEPAVMPhoneViewCommandHandle@@XZ @ 52 NONAME ; class MPhoneViewCommandHandle * CPhoneStateHandle::ViewCommandHandle(void)
+	?DialMultimediaCallL@CPhoneStateIdle@@IAEXXZ @ 53 NONAME ; void CPhoneStateIdle::DialMultimediaCallL(void)
+	?DisconnectOutgoingCallL@CPhoneStateInCall@@IAEXXZ @ 54 NONAME ; void CPhoneStateInCall::DisconnectOutgoingCallL(void)
+	?IsKeyLockOn@CPhoneState@@MBEHXZ @ 55 NONAME ; int CPhoneState::IsKeyLockOn(void) const
+	??1CPhoneStateInCall@@UAE@XZ @ 56 NONAME ; CPhoneStateInCall::~CPhoneStateInCall(void)
+	?SetNumberEntryVisibilityL@CPhoneState@@IAEXH@Z @ 57 NONAME ; void CPhoneState::SetNumberEntryVisibilityL(int)
+	?HandleError@CPhoneUIController@@UAEXABUTPEErrorInfo@@@Z @ 58 NONAME ; void CPhoneUIController::HandleError(struct TPEErrorInfo const &)
+	?ConstructL@CPhoneStateInCall@@MAEXXZ @ 59 NONAME ; void CPhoneStateInCall::ConstructL(void)
+	?IsVideoCallRingingL@CPhoneStateInCall@@MAEHXZ @ 60 NONAME ; int CPhoneStateInCall::IsVideoCallRingingL(void)
+	?HandlePhoneForegroundEventL@CPhoneStateIdle@@UAEXXZ @ 61 NONAME ; void CPhoneStateIdle::HandlePhoneForegroundEventL(void)
+	?HandleHoldSwitchL@CPhoneState@@QAEXXZ @ 62 NONAME ; void CPhoneState::HandleHoldSwitchL(void)
+	?HandleDtmfKeyToneL@CPhoneStateStartup@@EAEXABUTKeyEvent@@W4TEventCode@@@Z @ 63 NONAME ; void CPhoneStateStartup::HandleDtmfKeyToneL(struct TKeyEvent const &, enum TEventCode)
+	?ShowTextQueryL@CPhoneState@@IAEXHHHPAVTDes16@@H@Z @ 64 NONAME ; void CPhoneState::ShowTextQueryL(int, int, int, class TDes16 *, int)
+	?DialMultimediaCallL@CPhoneState@@IAEXXZ @ 65 NONAME ; void CPhoneState::DialMultimediaCallL(void)
+	?NewL@CPhoneUIController@@SAPAV1@PAVMPhoneViewCommandHandle@@@Z @ 66 NONAME ; class CPhoneUIController * CPhoneUIController::NewL(class MPhoneViewCommandHandle *)
+	?CheckDisableHWKeysAndCallUIL@CPhoneState@@QAEXXZ @ 67 NONAME ; void CPhoneState::CheckDisableHWKeysAndCallUIL(void)
+	?HandleErrorL@CPhoneState@@UAEXABUTPEErrorInfo@@@Z @ 68 NONAME ; void CPhoneState::HandleErrorL(struct TPEErrorInfo const &)
+	?HandleCommandL@CPhoneStateCallSetup@@UAEHH@Z @ 69 NONAME ; int CPhoneStateCallSetup::HandleCommandL(int)
+	??1CPhoneUIController@@UAE@XZ @ 70 NONAME ; CPhoneUIController::~CPhoneUIController(void)
+	?HandleAudioOutputChangedL@CPhoneState@@IAEXXZ @ 71 NONAME ; void CPhoneState::HandleAudioOutputChangedL(void)
+	?HandleKeyEventL@CPhoneState@@UAEXABUTKeyEvent@@W4TEventCode@@@Z @ 72 NONAME ; void CPhoneState::HandleKeyEventL(struct TKeyEvent const &, enum TEventCode)
+	?UpdateIncomingCbaL@CPhoneCbaManager@@QAEXH@Z @ 73 NONAME ; void CPhoneCbaManager::UpdateIncomingCbaL(int)
+	?SendGlobalErrorNoteL@CPhoneState@@QAEXHH@Z @ 74 NONAME ; void CPhoneState::SendGlobalErrorNoteL(int, int)
+	?CreatePhoneEngineL@CPhoneStateMachine@@UAEPAVMPEPhoneModel@@AAVMEngineMonitor@@@Z @ 75 NONAME ; class MPEPhoneModel * CPhoneStateMachine::CreatePhoneEngineL(class MEngineMonitor &)
+	?ConstructL@CPhoneStateIncoming@@MAEXXZ @ 76 NONAME ; void CPhoneStateIncoming::ConstructL(void)
+	?SetTouchPaneButtons@CPhoneState@@IAEXH@Z @ 77 NONAME ; void CPhoneState::SetTouchPaneButtons(int)
+	?HandleIdleForegroundEventL@CPhoneStateStartup@@UAEXXZ @ 78 NONAME ; void CPhoneStateStartup::HandleIdleForegroundEventL(void)
+	?CallFromNumberEntryL@CPhoneState@@IAEXXZ @ 79 NONAME ; void CPhoneState::CallFromNumberEntryL(void)
+	?UpdateCbaL@CPhoneCbaManager@@QAEXH@Z @ 80 NONAME ; void CPhoneCbaManager::UpdateCbaL(int)
+	?IsVideoCall@CPhoneState@@IAEHH@Z @ 81 NONAME ; int CPhoneState::IsVideoCall(int)
+	?IsSwivelClosed@CPhoneState@@QBEHXZ @ 82 NONAME ; int CPhoneState::IsSwivelClosed(void) const
+	?HandlePhoneForegroundEventL@CPhoneUIController@@UAEXXZ @ 83 NONAME ; void CPhoneUIController::HandlePhoneForegroundEventL(void)
+	?IsAutoLockOn@CPhoneState@@UBEHXZ @ 84 NONAME ; int CPhoneState::IsAutoLockOn(void) const
+	?UpdateCbaL@CPhoneStateCallSetup@@MAEXH@Z @ 85 NONAME ; void CPhoneStateCallSetup::UpdateCbaL(int)
+	?HandleKeyEventL@CPhoneStateIdle@@UAEXABUTKeyEvent@@W4TEventCode@@@Z @ 86 NONAME ; void CPhoneStateIdle::HandleKeyEventL(struct TKeyEvent const &, enum TEventCode)
+	?SendGlobalWarningNoteL@CPhoneState@@IAEXHH@Z @ 87 NONAME ; void CPhoneState::SendGlobalWarningNoteL(int, int)
+	?IsNumberEntryContentStored@CPhoneState@@IAEHXZ @ 88 NONAME ; int CPhoneState::IsNumberEntryContentStored(void)
+	?IsVideoCallActiveL@CPhoneStateInCall@@MAEHXZ @ 89 NONAME ; int CPhoneStateInCall::IsVideoCallActiveL(void)
+	?DialVoiceCallL@CPhoneState@@IAEXXZ @ 90 NONAME ; void CPhoneState::DialVoiceCallL(void)
+	?HandlePhoneStartupL@CPhoneStateStartup@@UAEXXZ @ 91 NONAME ; void CPhoneStateStartup::HandlePhoneStartupL(void)
+	?StateMachine@CPhoneStateHandle@@QAEPAVMPhoneStateMachine@@XZ @ 92 NONAME ; class MPhoneStateMachine * CPhoneStateHandle::StateMachine(void)
+	?EndUiUpdate@CPhoneState@@IAEXXZ @ 93 NONAME ; void CPhoneState::EndUiUpdate(void)
+	?UpdateInCallCbaL@CPhoneStateInCall@@MAEXXZ @ 94 NONAME ; void CPhoneStateInCall::UpdateInCallCbaL(void)
+	?HandleKeyMessageL@CPhoneStateInCall@@UAEXW4TPhoneKeyEventMessages@MPhoneKeyEvents@@W4TKeyCode@@@Z @ 95 NONAME ; void CPhoneStateInCall::HandleKeyMessageL(enum MPhoneKeyEvents::TPhoneKeyEventMessages, enum TKeyCode)
+	?SetRingingTonePlaybackL@CPhoneState@@IAEXH@Z @ 96 NONAME ; void CPhoneState::SetRingingTonePlaybackL(int)
+	?ProcessCommandL@CPhoneState@@UAEHH@Z @ 97 NONAME ; int CPhoneState::ProcessCommandL(int)
+	?BeginUiUpdateLC@CPhoneState@@IAEXXZ @ 98 NONAME ; void CPhoneState::BeginUiUpdateLC(void)
+	?DecreaseAudioVolumeL@CPhoneState@@IAEXXZ @ 99 NONAME ; void CPhoneState::DecreaseAudioVolumeL(void)
+	?PhoneEngineInfo@CPhoneStateMachine@@UAEPAVMPEEngineInfo@@XZ @ 100 NONAME ; class MPEEngineInfo * CPhoneStateMachine::PhoneEngineInfo(void)
+	?HandleSystemEventL@CPhoneUIController@@UAEXABVTWsEvent@@@Z @ 101 NONAME ; void CPhoneUIController::HandleSystemEventL(class TWsEvent const &)
+	??0CPhoneStateStartup@@IAE@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 102 NONAME ; CPhoneStateStartup::CPhoneStateStartup(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
+	?GetRemoteInfoDataL@CPhoneState@@IAEXHAAVTDes16@@@Z @ 103 NONAME ; void CPhoneState::GetRemoteInfoDataL(int, class TDes16 &)
+	?SetDivertIndication@CPhoneState@@UAEXH@Z @ 104 NONAME ; void CPhoneState::SetDivertIndication(int)
+	?UpdateCbaL@CPhoneStateInCall@@MAEXH@Z @ 105 NONAME ; void CPhoneStateInCall::UpdateCbaL(int)
+	?SetCallId@CPhoneStateMachine@@UAEXH@Z @ 106 NONAME ; void CPhoneStateMachine::SetCallId(int)
+	?ProcessCommandL@CPhoneUIController@@UAEHH@Z @ 107 NONAME ; int CPhoneUIController::ProcessCommandL(int)
+	?DisplayHeaderForCallComingInL@CPhoneState@@IAEXHH@Z @ 108 NONAME ; void CPhoneState::DisplayHeaderForCallComingInL(int, int)
+	??0CPhoneStateIdle@@IAE@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 109 NONAME ; CPhoneStateIdle::CPhoneStateIdle(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
+	?SendPhoneEngineMessage@CPhoneStateMachine@@UAEXH@Z @ 110 NONAME ; void CPhoneStateMachine::SendPhoneEngineMessage(int)
+	??0CPhoneStateCallSetup@@IAE@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 111 NONAME ; CPhoneStateCallSetup::CPhoneStateCallSetup(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
+	??0CPhoneState@@QAE@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 112 NONAME ; CPhoneState::CPhoneState(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
+	?HandleDtmfKeyToneL@CPhoneState@@UAEXABUTKeyEvent@@W4TEventCode@@@Z @ 113 NONAME ; void CPhoneState::HandleDtmfKeyToneL(struct TKeyEvent const &, enum TEventCode)
+	?HandleKeyMessageL@CPhoneStateIdle@@UAEXW4TPhoneKeyEventMessages@MPhoneKeyEvents@@W4TKeyCode@@@Z @ 114 NONAME ; void CPhoneStateIdle::HandleKeyMessageL(enum MPhoneKeyEvents::TPhoneKeyEventMessages, enum TKeyCode)
+	?HandleForegroundEventL@CPhoneUIController@@UAEXH@Z @ 115 NONAME ; void CPhoneUIController::HandleForegroundEventL(int)
+	?HandleCommandL@CPhoneUIController@@UAEHH@Z @ 116 NONAME ; int CPhoneUIController::HandleCommandL(int)
+	?HandleSendCommandL@CPhoneStateIdle@@MAEXXZ @ 117 NONAME ; void CPhoneStateIdle::HandleSendCommandL(void)
+	?DisableHWKeysL@CPhoneState@@QAEXXZ @ 118 NONAME ; void CPhoneState::DisableHWKeysL(void)
+	?DisplayHeaderForOutgoingCallL@CPhoneState@@IAEXH@Z @ 119 NONAME ; void CPhoneState::DisplayHeaderForOutgoingCallL(int)
+	?GetBlockedKeyList@CPhoneState@@UBEABV?$RArray@H@@XZ @ 120 NONAME ; class RArray<int> const & CPhoneState::GetBlockedKeyList(void) const
+	?HandlePhoneEngineMessageL@CPhoneStateInCall@@UAEXHH@Z @ 121 NONAME ; void CPhoneStateInCall::HandlePhoneEngineMessageL(int, int)
+	?IsNumberEntryUsedL@CPhoneState@@UAEHXZ @ 122 NONAME ; int CPhoneState::IsNumberEntryUsedL(void)
+	?PhoneStorage@CPhoneStateMachine@@UAEPAVMPhoneStorage@@XZ @ 123 NONAME ; class MPhoneStorage * CPhoneStateMachine::PhoneStorage(void)
+	??1CPhoneState@@UAE@XZ @ 124 NONAME ; CPhoneState::~CPhoneState(void)
+	?HandlePhoneEngineMessageL@CPhoneStateCallSetup@@UAEXHH@Z @ 125 NONAME ; void CPhoneStateCallSetup::HandlePhoneEngineMessageL(int, int)
+	?HandlePhoneFocusLostEventL@CPhoneState@@UAEXXZ @ 126 NONAME ; void CPhoneState::HandlePhoneFocusLostEventL(void)
+	??1CPhoneStateMachine@@UAE@XZ @ 127 NONAME ; CPhoneStateMachine::~CPhoneStateMachine(void)
+	?HandleIdleForegroundEventL@CPhoneState@@UAEXXZ @ 128 NONAME ; void CPhoneState::HandleIdleForegroundEventL(void)
+	?ConstructL@CPhoneStateCallSetup@@MAEXXZ @ 129 NONAME ; void CPhoneStateCallSetup::ConstructL(void)
+	?HandleMessage@CPhoneUIController@@UAEXHH@Z @ 130 NONAME ; void CPhoneUIController::HandleMessage(int, int)
+	?HandleSystemEventL@CPhoneState@@UAEXABVTWsEvent@@@Z @ 131 NONAME ; void CPhoneState::HandleSystemEventL(class TWsEvent const &)
+	?DisplayCallSetupL@CPhoneStateIdle@@IAEXH@Z @ 132 NONAME ; void CPhoneStateIdle::DisplayCallSetupL(int)
+	?ConstructL@CPhoneStateStartup@@MAEXXZ @ 133 NONAME ; void CPhoneStateStartup::ConstructL(void)
+	?HandleKeyMessageL@CPhoneStateStartup@@UAEXW4TPhoneKeyEventMessages@MPhoneKeyEvents@@W4TKeyCode@@@Z @ 134 NONAME ; void CPhoneStateStartup::HandleKeyMessageL(enum MPhoneKeyEvents::TPhoneKeyEventMessages, enum TKeyCode)
+	?ShowNoteL@CPhoneState@@IAEXH@Z @ 135 NONAME ; void CPhoneState::ShowNoteL(int)
+	?HandlePropertyChangedL@CPhoneState@@UAEXABVTUid@@IH@Z @ 136 NONAME ; void CPhoneState::HandlePropertyChangedL(class TUid const &, unsigned int, int)
+	?IsAnyQueryActiveL@CPhoneState@@QAEHXZ @ 137 NONAME ; int CPhoneState::IsAnyQueryActiveL(void)
+	?State@CPhoneStateMachine@@UAEPAVMPhoneState@@XZ @ 138 NONAME ; class MPhoneState * CPhoneStateMachine::State(void)
+	?SetHandsfreeModeL@CPhoneState@@IAEXH@Z @ 139 NONAME ; void CPhoneState::SetHandsfreeModeL(int)
+	?IsCustomizedDialerVisibleL@CPhoneState@@QBEHXZ @ 140 NONAME ; int CPhoneState::IsCustomizedDialerVisibleL(void) const
+	?UpdateInCallCbaL@CPhoneStateCallSetup@@MAEXXZ @ 141 NONAME ; void CPhoneStateCallSetup::UpdateInCallCbaL(void)
+	?HandleNumberEntryClearedL@CPhoneStateInCall@@MAEXXZ @ 142 NONAME ; void CPhoneStateInCall::HandleNumberEntryClearedL(void)
+	??0CPhoneStateIncoming@@IAE@PAVMPhoneStateMachine@@PAVMPhoneViewCommandHandle@@PAVMPhoneCustomization@@@Z @ 143 NONAME ; CPhoneStateIncoming::CPhoneStateIncoming(class MPhoneStateMachine *, class MPhoneViewCommandHandle *, class MPhoneCustomization *)
+	?SendGlobalInfoNoteL@CPhoneState@@QAEXHH@Z @ 144 NONAME ; void CPhoneState::SendGlobalInfoNoteL(int, int)
+	??1CPhoneStateIncoming@@UAE@XZ @ 145 NONAME ; CPhoneStateIncoming::~CPhoneStateIncoming(void)
+	?HandleKeyLockEnabled@CPhoneUIController@@UAEXH@Z @ 146 NONAME ; void CPhoneUIController::HandleKeyLockEnabled(int)
+	?DisableCallUIL@CPhoneState@@QAEXXZ @ 147 NONAME ; void CPhoneState::DisableCallUIL(void)
+	?DeleteTouchPaneButtons@CPhoneState@@IAEXXZ @ 148 NONAME ; void CPhoneState::DeleteTouchPaneButtons(void)
+	?ProcessCommandL@CPhoneStateIdle@@UAEHH@Z @ 149 NONAME ; int CPhoneStateIdle::ProcessCommandL(int)
+	?HandlePhoneEngineMessageL@CPhoneStateStartup@@UAEXHH@Z @ 150 NONAME ; void CPhoneStateStartup::HandlePhoneEngineMessageL(int, int)
+	?IsAlphanumericSupportedAndCharInput@CPhoneState@@MAEHABUTKeyEvent@@@Z @ 151 NONAME ; int CPhoneState::IsAlphanumericSupportedAndCharInput(struct TKeyEvent const &)
+	?HandleKeyEventL@CPhoneStateIncoming@@UAEXABUTKeyEvent@@W4TEventCode@@@Z @ 152 NONAME ; void CPhoneStateIncoming::HandleKeyEventL(struct TKeyEvent const &, enum TEventCode)
+	?HandleKeyEventL@CPhoneStateStartup@@UAEXABUTKeyEvent@@W4TEventCode@@@Z @ 153 NONAME ; void CPhoneStateStartup::HandleKeyEventL(struct TKeyEvent const &, enum TEventCode)
+	?HandleNumberEntryClearedL@CPhoneState@@MAEXXZ @ 154 NONAME ; void CPhoneState::HandleNumberEntryClearedL(void)
+	?IncreaseAudioVolumeL@CPhoneState@@IAEXXZ @ 155 NONAME ; void CPhoneState::IncreaseAudioVolumeL(void)
+	?ConstructL@CPhoneStateIdle@@MAEXXZ @ 156 NONAME ; void CPhoneStateIdle::ConstructL(void)
+	?CheckIfShowCallTerminationNote@CPhoneState@@MAEHXZ @ 157 NONAME ; int CPhoneState::CheckIfShowCallTerminationNote(void)
+	?DisplayIdleScreenL@CPhoneState@@IAEXXZ @ 158 NONAME ; void CPhoneState::DisplayIdleScreenL(void)
+	?StartShowSecurityNoteL@CPhoneState@@IAEXXZ @ 159 NONAME ; void CPhoneState::StartShowSecurityNoteL(void)
+	?StoreNumberEntryContentL@CPhoneState@@IAEXXZ @ 160 NONAME ; void CPhoneState::StoreNumberEntryContentL(void)
+	?SetBTHandsfreeModeL@CPhoneState@@IAEXH@Z @ 161 NONAME ; void CPhoneState::SetBTHandsfreeModeL(int)
+	?HandlePhoneEngineMessageL@CPhoneStateIncoming@@UAEXHH@Z @ 162 NONAME ; void CPhoneStateIncoming::HandlePhoneEngineMessageL(int, int)
+	?SetDefaultFlagsL@CPhoneState@@IAEXXZ @ 163 NONAME ; void CPhoneState::SetDefaultFlagsL(void)
+	?HandleCommandL@CPhoneStateInCall@@UAEHH@Z @ 164 NONAME ; int CPhoneStateInCall::HandleCommandL(int)
+	?DialVoiceCallL@CPhoneStateIdle@@IAEXXZ @ 165 NONAME ; void CPhoneStateIdle::DialVoiceCallL(void)
+	?UpdateRemoteInfoDataL@CPhoneState@@IAEXH@Z @ 166 NONAME ; void CPhoneState::UpdateRemoteInfoDataL(int)
+	?GetRingingCallL@CPhoneStateInCall@@MAEHXZ @ 167 NONAME ; int CPhoneStateInCall::GetRingingCallL(void)
+	?HandleIdleForegroundEventL@CPhoneUIController@@UAEXXZ @ 168 NONAME ; void CPhoneUIController::HandleIdleForegroundEventL(void)
+	?SetBackButtonActive@CPhoneState@@IAEXH@Z @ 169 NONAME ; void CPhoneState::SetBackButtonActive(int)
+	?HandlePhoneForegroundEventL@CPhoneState@@UAEXXZ @ 170 NONAME ; void CPhoneState::HandlePhoneForegroundEventL(void)
+	?HandleForegroundEventL@CPhoneState@@UAEXH@Z @ 171 NONAME ; void CPhoneState::HandleForegroundEventL(int)
+	?DisplayIncomingCallL@CPhoneStateIdle@@IAEXH@Z @ 172 NONAME ; void CPhoneStateIdle::DisplayIncomingCallL(int)
+	??1CPhoneStateIdle@@UAE@XZ @ 173 NONAME ; CPhoneStateIdle::~CPhoneStateIdle(void)
+	?HandleRemConCommandL@CPhoneState@@UAEHW4TRemConCoreApiOperationId@@W4TRemConCoreApiButtonAction@@@Z @ 174 NONAME ; int CPhoneState::HandleRemConCommandL(enum TRemConCoreApiOperationId, enum TRemConCoreApiButtonAction)
+	?PhoneNumberFromEntryLC@CPhoneState@@IAEPAVHBufC16@@XZ @ 175 NONAME ; class HBufC16 * CPhoneState::PhoneNumberFromEntryLC(void)
+	?BaseConstructL@CPhoneState@@QAEXXZ @ 176 NONAME ; void CPhoneState::BaseConstructL(void)
+	?HandlePhoneStartupL@CPhoneUIController@@UAEXXZ @ 177 NONAME ; void CPhoneUIController::HandlePhoneStartupL(void)
+	?SetCallHeaderType@CPhoneState@@IAEXH@Z @ 178 NONAME ; void CPhoneState::SetCallHeaderType(int)
+	?SetPhoneEngine@CPhoneStateMachine@@UAEXPAVMPEPhoneModel@@@Z @ 179 NONAME ; void CPhoneStateMachine::SetPhoneEngine(class MPEPhoneModel *)
+	?HandleKeyLockEnabled@CPhoneStateIncoming@@UAEXH@Z @ 180 NONAME ; void CPhoneStateIncoming::HandleKeyLockEnabled(int)
+	?HandlePhoneFocusLostEventL@CPhoneUIController@@UAEXXZ @ 181 NONAME ; void CPhoneUIController::HandlePhoneFocusLostEventL(void)
+	??0CPhoneStateMachine@@IAE@PAVMPhoneViewCommandHandle@@@Z @ 182 NONAME ; CPhoneStateMachine::CPhoneStateMachine(class MPhoneViewCommandHandle *)
+	??1CPhoneStateStartup@@UAE@XZ @ 183 NONAME ; CPhoneStateStartup::~CPhoneStateStartup(void)
+	?HandleKeyMessageL@CPhoneState@@UAEXW4TPhoneKeyEventMessages@MPhoneKeyEvents@@W4TKeyCode@@@Z @ 184 NONAME ; void CPhoneState::HandleKeyMessageL(enum MPhoneKeyEvents::TPhoneKeyEventMessages, enum TKeyCode)
+	?OpenSoftRejectMessageEditorL@CPhoneState@@MAEXXZ @ 185 NONAME ; void CPhoneState::OpenSoftRejectMessageEditorL(void)
 
--- a/phoneapp/phoneuicontrol/eabi/phoneuicontrolu.def	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/eabi/phoneuicontrolu.def	Fri Sep 17 08:29:19 2010 +0300
@@ -13,401 +13,379 @@
 	_ZN11CPhoneState15BeginUiUpdateLCEv @ 12 NONAME
 	_ZN11CPhoneState15DisconnectCallLEv @ 13 NONAME
 	_ZN11CPhoneState15HandleKeyEventLERK9TKeyEvent10TEventCode @ 14 NONAME
-	_ZN11CPhoneState15HandleLongHashLEv @ 15 NONAME
-	_ZN11CPhoneState15ProcessCommandLEi @ 16 NONAME
-	_ZN11CPhoneState16CallWaitingNoteLEi @ 17 NONAME
-	_ZN11CPhoneState16SetDefaultFlagsLEv @ 18 NONAME
-	_ZN11CPhoneState17HandleHoldSwitchLEv @ 19 NONAME
-	_ZN11CPhoneState17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 20 NONAME
-	_ZN11CPhoneState17IsAnyQueryActiveLEv @ 21 NONAME
-	_ZN11CPhoneState17SetCallHeaderTypeEi @ 22 NONAME
-	_ZN11CPhoneState17SetHandsfreeModeLEi @ 23 NONAME
-	_ZN11CPhoneState18DisplayIdleScreenLEv @ 24 NONAME
-	_ZN11CPhoneState18GetRemoteInfoDataLEiR6TDes16 @ 25 NONAME
-	_ZN11CPhoneState18HandleDtmfKeyToneLERK9TKeyEvent10TEventCode @ 26 NONAME
-	_ZN11CPhoneState18HandleSystemEventLERK8TWsEvent @ 27 NONAME
-	_ZN11CPhoneState18IsNumberEntryUsedLEv @ 28 NONAME
-	_ZN11CPhoneState19CompleteSatRequestLEi @ 29 NONAME
-	_ZN11CPhoneState19DialMultimediaCallLEv @ 30 NONAME
-	_ZN11CPhoneState19HandleCenRepChangeLERK4TUidj @ 31 NONAME
-	_ZN11CPhoneState19HandlePhoneStartupLEv @ 32 NONAME
-	_ZN11CPhoneState19SendGlobalInfoNoteLEii @ 33 NONAME
-	_ZN11CPhoneState19SetBTHandsfreeModeLEi @ 34 NONAME
-	_ZN11CPhoneState19SetBackButtonActiveEi @ 35 NONAME
-	_ZN11CPhoneState19SetDivertIndicationEi @ 36 NONAME
-	_ZN11CPhoneState19SetTouchPaneButtonsEi @ 37 NONAME
-	_ZN11CPhoneState19ShowNumberBusyNoteLEv @ 38 NONAME
-	_ZN11CPhoneState20CallFromNumberEntryLEv @ 39 NONAME
-	_ZN11CPhoneState20DecreaseAudioVolumeLEv @ 40 NONAME
-	_ZN11CPhoneState20HandleDisconnectingLEi @ 41 NONAME
-	_ZN11CPhoneState20HandleKeyLockEnabledEi @ 42 NONAME
-	_ZN11CPhoneState20HandleRemConCommandLE25TRemConCoreApiOperationId26TRemConCoreApiButtonAction @ 43 NONAME
-	_ZN11CPhoneState20IncreaseAudioVolumeLEv @ 44 NONAME
-	_ZN11CPhoneState20SendGlobalErrorNoteLEii @ 45 NONAME
-	_ZN11CPhoneState21IsNumberEntryVisibleLEv @ 46 NONAME
-	_ZN11CPhoneState21UpdateRemoteInfoDataLEi @ 47 NONAME
-	_ZN11CPhoneState22DeleteTouchPaneButtonsEv @ 48 NONAME
-	_ZN11CPhoneState22HandleForegroundEventLEi @ 49 NONAME
-	_ZN11CPhoneState22HandleNumericKeyEventLERK9TKeyEvent10TEventCode @ 50 NONAME
-	_ZN11CPhoneState22HandlePropertyChangedLERK4TUidji @ 51 NONAME
-	_ZN11CPhoneState22OnlyHashInNumberEntryLEv @ 52 NONAME
-	_ZN11CPhoneState22PhoneNumberFromEntryLCEv @ 53 NONAME
-	_ZN11CPhoneState22SendGlobalWarningNoteLEii @ 54 NONAME
-	_ZN11CPhoneState22StartShowSecurityNoteLEv @ 55 NONAME
-	_ZN11CPhoneState23HandleAudioMuteChangedLEv @ 56 NONAME
-	_ZN11CPhoneState23HandleKeyPressDurationLE8TKeyCode25TTimeIntervalMicroSeconds @ 57 NONAME
-	_ZN11CPhoneState23SetRingingTonePlaybackLEi @ 58 NONAME
-	_ZN11CPhoneState23UpdateSingleActiveCallLEi @ 59 NONAME
-	_ZN11CPhoneState24HandleEnvironmentChangeLEi @ 60 NONAME
-	_ZN11CPhoneState24StartAlsLineChangeTimerLEv @ 61 NONAME
-	_ZN11CPhoneState24StoreNumberEntryContentLEv @ 62 NONAME
-	_ZN11CPhoneState25HandleAudioOutputChangedLEv @ 63 NONAME
-	_ZN11CPhoneState25HandleNumberEntryClearedLEv @ 64 NONAME
-	_ZN11CPhoneState25HandlePhoneEngineMessageLEii @ 65 NONAME
-	_ZN11CPhoneState25SetNumberEntryVisibilityLEi @ 66 NONAME
-	_ZN11CPhoneState26HandleIdleForegroundEventLEv @ 67 NONAME
-	_ZN11CPhoneState26HandlePhoneFocusLostEventLEv @ 68 NONAME
-	_ZN11CPhoneState26IsNumberEntryContentStoredEv @ 69 NONAME
-	_ZN11CPhoneState27DisplayCallTerminationNoteLEv @ 70 NONAME
-	_ZN11CPhoneState27HandlePhoneForegroundEventLEv @ 71 NONAME
-	_ZN11CPhoneState27RetainPreviousKeylockStateLEv @ 72 NONAME
-	_ZN11CPhoneState28CheckDisableHWKeysAndCallUILEv @ 73 NONAME
-	_ZN11CPhoneState28ClearNumberEntryContentCacheEv @ 74 NONAME
-	_ZN11CPhoneState28OpenSoftRejectMessageEditorLEv @ 75 NONAME
-	_ZN11CPhoneState28SetupIdleScreenInBackgroundLEv @ 76 NONAME
-	_ZN11CPhoneState29DisplayHeaderForCallComingInLEii @ 77 NONAME
-	_ZN11CPhoneState29DisplayHeaderForOutgoingCallLEi @ 78 NONAME
-	_ZN11CPhoneState30CheckIfShowCallTerminationNoteEv @ 79 NONAME
-	_ZN11CPhoneState34CaptureKeysDuringCallNotificationLEi @ 80 NONAME
-	_ZN11CPhoneState34SetCallHeaderTextsForCallComingInLEiiP28TPhoneCmdParamCallHeaderData @ 81 NONAME
-	_ZN11CPhoneState34SetToolbarButtonLoudspeakerEnabledEv @ 82 NONAME
-	_ZN11CPhoneState35IsAlphanumericSupportedAndCharInputERK9TKeyEvent @ 83 NONAME
-	_ZN11CPhoneState38CheckIfRestoreNEContentAfterDtmfDialerEv @ 84 NONAME
-	_ZN11CPhoneState43IsSimStateNotPresentWithSecurityModeEnabledEv @ 85 NONAME
-	_ZN11CPhoneState7IsSimOkEv @ 86 NONAME
-	_ZN11CPhoneState9ShowNoteLEi @ 87 NONAME
-	_ZN11CPhoneStateC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 88 NONAME
-	_ZN11CPhoneStateC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 89 NONAME
-	_ZN11CPhoneStateD0Ev @ 90 NONAME
-	_ZN11CPhoneStateD1Ev @ 91 NONAME
-	_ZN11CPhoneStateD2Ev @ 92 NONAME
-	_ZN15CPhoneStateIdle10ConstructLEv @ 93 NONAME
-	_ZN15CPhoneStateIdle14DialVoiceCallLEv @ 94 NONAME
-	_ZN15CPhoneStateIdle14HandleCommandLEi @ 95 NONAME
-	_ZN15CPhoneStateIdle14HandleDialingLEi @ 96 NONAME
-	_ZN15CPhoneStateIdle15HandleKeyEventLERK9TKeyEvent10TEventCode @ 97 NONAME
-	_ZN15CPhoneStateIdle15ProcessCommandLEi @ 98 NONAME
-	_ZN15CPhoneStateIdle17DisplayCallSetupLEi @ 99 NONAME
-	_ZN15CPhoneStateIdle17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 100 NONAME
-	_ZN15CPhoneStateIdle18HandleSendCommandLEv @ 101 NONAME
-	_ZN15CPhoneStateIdle19DialMultimediaCallLEv @ 102 NONAME
-	_ZN15CPhoneStateIdle20DisplayIncomingCallLEi @ 103 NONAME
-	_ZN15CPhoneStateIdle20HandleRemConCommandLE25TRemConCoreApiOperationId26TRemConCoreApiButtonAction @ 104 NONAME
-	_ZN15CPhoneStateIdle22OnlyHashInNumberEntryLEv @ 105 NONAME
-	_ZN15CPhoneStateIdle25HandleNumberEntryClearedLEv @ 106 NONAME
-	_ZN15CPhoneStateIdle25HandlePhoneEngineMessageLEii @ 107 NONAME
-	_ZN15CPhoneStateIdle26HandleIdleForegroundEventLEv @ 108 NONAME
-	_ZN15CPhoneStateIdle26HandlePhoneFocusLostEventLEv @ 109 NONAME
-	_ZN15CPhoneStateIdle27HandlePhoneForegroundEventLEv @ 110 NONAME
-	_ZN15CPhoneStateIdle5DialLERK7TDesC16NS_16TPhoneNumberTypeENS_21TDialInitiationMethodE @ 111 NONAME
-	_ZN15CPhoneStateIdleC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 112 NONAME
-	_ZN15CPhoneStateIdleC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 113 NONAME
-	_ZN15CPhoneStateIdleD0Ev @ 114 NONAME
-	_ZN15CPhoneStateIdleD1Ev @ 115 NONAME
-	_ZN15CPhoneStateIdleD2Ev @ 116 NONAME
-	_ZN16CPhoneCbaManager10UpdateCbaLEi @ 117 NONAME
-	_ZN16CPhoneCbaManager18UpdateIncomingCbaLEi @ 118 NONAME
-	_ZN16CPhoneCbaManager7SetCbaLEi @ 119 NONAME
-	_ZN17CPhoneStateHandle12StateMachineEv @ 120 NONAME
-	_ZN17CPhoneStateHandle17ViewCommandHandleEv @ 121 NONAME
-	_ZN17CPhoneStateHandle8InstanceEv @ 122 NONAME
-	_ZN17CPhoneStateInCall10ConstructLEv @ 123 NONAME
-	_ZN17CPhoneStateInCall10UpdateCbaLEi @ 124 NONAME
-	_ZN17CPhoneStateInCall11HandleIdleLEi @ 125 NONAME
-	_ZN17CPhoneStateInCall14HandleCommandLEi @ 126 NONAME
-	_ZN17CPhoneStateInCall15CloseDtmfQueryLEv @ 127 NONAME
-	_ZN17CPhoneStateInCall15GetRingingCallLEv @ 128 NONAME
-	_ZN17CPhoneStateInCall16UpdateInCallCbaLEv @ 129 NONAME
-	_ZN17CPhoneStateInCall17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 130 NONAME
-	_ZN17CPhoneStateInCall18CallFetchedNumberLERK7TDesC16 @ 131 NONAME
-	_ZN17CPhoneStateInCall18IsVideoCallActiveLEv @ 132 NONAME
-	_ZN17CPhoneStateInCall19IsVideoCallRingingLEv @ 133 NONAME
-	_ZN17CPhoneStateInCall23DisconnectOutgoingCallLEv @ 134 NONAME
-	_ZN17CPhoneStateInCall25HandleNumberEntryClearedLEv @ 135 NONAME
-	_ZN17CPhoneStateInCall25HandlePhoneEngineMessageLEii @ 136 NONAME
-	_ZN17CPhoneStateInCallC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 137 NONAME
-	_ZN17CPhoneStateInCallC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 138 NONAME
-	_ZN17CPhoneStateInCallD0Ev @ 139 NONAME
-	_ZN17CPhoneStateInCallD1Ev @ 140 NONAME
-	_ZN17CPhoneStateInCallD2Ev @ 141 NONAME
-	_ZN18CPhoneStateMachine11ChangeStateEi @ 142 NONAME
-	_ZN18CPhoneStateMachine11PhoneEngineEv @ 143 NONAME
-	_ZN18CPhoneStateMachine12PhoneStorageEv @ 144 NONAME
-	_ZN18CPhoneStateMachine14SetPhoneEngineEP13MPEPhoneModel @ 145 NONAME
-	_ZN18CPhoneStateMachine15PhoneEngineInfoEv @ 146 NONAME
-	_ZN18CPhoneStateMachine18CreatePhoneEngineLER14MEngineMonitor @ 147 NONAME
-	_ZN18CPhoneStateMachine22SendPhoneEngineMessageEi @ 148 NONAME
-	_ZN18CPhoneStateMachine5StateEv @ 149 NONAME
-	_ZN18CPhoneStateMachine9SetCallIdEi @ 150 NONAME
-	_ZN18CPhoneStateMachineC1EP23MPhoneViewCommandHandle @ 151 NONAME
-	_ZN18CPhoneStateMachineC2EP23MPhoneViewCommandHandle @ 152 NONAME
-	_ZN18CPhoneStateMachineD0Ev @ 153 NONAME
-	_ZN18CPhoneStateMachineD1Ev @ 154 NONAME
-	_ZN18CPhoneStateMachineD2Ev @ 155 NONAME
-	_ZN18CPhoneStateStartup10ConstructLEv @ 156 NONAME
-	_ZN18CPhoneStateStartup15HandleKeyEventLERK9TKeyEvent10TEventCode @ 157 NONAME
-	_ZN18CPhoneStateStartup17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 158 NONAME
-	_ZN18CPhoneStateStartup18HandleDtmfKeyToneLERK9TKeyEvent10TEventCode @ 159 NONAME
-	_ZN18CPhoneStateStartup19HandlePhoneStartupLEv @ 160 NONAME
-	_ZN18CPhoneStateStartup25HandlePhoneEngineMessageLEii @ 161 NONAME
-	_ZN18CPhoneStateStartup26HandleIdleForegroundEventLEv @ 162 NONAME
-	_ZN18CPhoneStateStartup4NewLEP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 163 NONAME
-	_ZN18CPhoneStateStartupC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 164 NONAME
-	_ZN18CPhoneStateStartupC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 165 NONAME
-	_ZN18CPhoneStateStartupD0Ev @ 166 NONAME
-	_ZN18CPhoneStateStartupD1Ev @ 167 NONAME
-	_ZN18CPhoneStateStartupD2Ev @ 168 NONAME
-	_ZN18CPhoneUIController11HandleErrorERK12TPEErrorInfo @ 169 NONAME
-	_ZN18CPhoneUIController13HandleMessageEii @ 170 NONAME
-	_ZN18CPhoneUIController14HandleCommandLEi @ 171 NONAME
-	_ZN18CPhoneUIController15HandleKeyEventLERK9TKeyEvent10TEventCode @ 172 NONAME
-	_ZN18CPhoneUIController15ProcessCommandLEi @ 173 NONAME
-	_ZN18CPhoneUIController18HandleSystemEventLERK8TWsEvent @ 174 NONAME
-	_ZN18CPhoneUIController19HandlePhoneStartupLEv @ 175 NONAME
-	_ZN18CPhoneUIController20HandleKeyLockEnabledEi @ 176 NONAME
-	_ZN18CPhoneUIController22HandleForegroundEventLEi @ 177 NONAME
-	_ZN18CPhoneUIController24HandleEnvironmentChangeLEi @ 178 NONAME
-	_ZN18CPhoneUIController26HandleIdleForegroundEventLEv @ 179 NONAME
-	_ZN18CPhoneUIController26HandlePhoneFocusLostEventLEv @ 180 NONAME
-	_ZN18CPhoneUIController27HandlePhoneForegroundEventLEv @ 181 NONAME
-	_ZN18CPhoneUIController4NewLEP23MPhoneViewCommandHandle @ 182 NONAME
-	_ZN18CPhoneUIControllerD0Ev @ 183 NONAME
-	_ZN18CPhoneUIControllerD1Ev @ 184 NONAME
-	_ZN18CPhoneUIControllerD2Ev @ 185 NONAME
-	_ZN19CPhoneStateIncoming10ConstructLEv @ 186 NONAME
-	_ZN19CPhoneStateIncoming14HandleCommandLEi @ 187 NONAME
-	_ZN19CPhoneStateIncoming15HandleKeyEventLERK9TKeyEvent10TEventCode @ 188 NONAME
-	_ZN19CPhoneStateIncoming17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 189 NONAME
-	_ZN19CPhoneStateIncoming20HandleKeyLockEnabledEi @ 190 NONAME
-	_ZN19CPhoneStateIncoming23HandleAudioPlayStoppedLEv @ 191 NONAME
-	_ZN19CPhoneStateIncoming23HandleKeyPressDurationLE8TKeyCode25TTimeIntervalMicroSeconds @ 192 NONAME
-	_ZN19CPhoneStateIncoming25HandleNumberEntryClearedLEv @ 193 NONAME
-	_ZN19CPhoneStateIncoming25HandlePhoneEngineMessageLEii @ 194 NONAME
-	_ZN19CPhoneStateIncomingC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 195 NONAME
-	_ZN19CPhoneStateIncomingC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 196 NONAME
-	_ZN19CPhoneStateIncomingD0Ev @ 197 NONAME
-	_ZN19CPhoneStateIncomingD1Ev @ 198 NONAME
-	_ZN19CPhoneStateIncomingD2Ev @ 199 NONAME
-	_ZN20CPhoneReconnectQuery19ShowReconnectQueryLEi @ 200 NONAME
-	_ZN20CPhoneReconnectQuery9InstanceLEv @ 201 NONAME
-	_ZN20CPhoneStateCallSetup10ConstructLEv @ 202 NONAME
-	_ZN20CPhoneStateCallSetup10UpdateCbaLEi @ 203 NONAME
-	_ZN20CPhoneStateCallSetup14HandleCommandLEi @ 204 NONAME
-	_ZN20CPhoneStateCallSetup15HandleKeyEventLERK9TKeyEvent10TEventCode @ 205 NONAME
-	_ZN20CPhoneStateCallSetup16UpdateInCallCbaLEv @ 206 NONAME
-	_ZN20CPhoneStateCallSetup17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 207 NONAME
-	_ZN20CPhoneStateCallSetup25HandleNumberEntryClearedLEv @ 208 NONAME
-	_ZN20CPhoneStateCallSetup25HandlePhoneEngineMessageLEii @ 209 NONAME
-	_ZN20CPhoneStateCallSetupC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 210 NONAME
-	_ZN20CPhoneStateCallSetupC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 211 NONAME
-	_ZN20CPhoneStateCallSetupD0Ev @ 212 NONAME
-	_ZN20CPhoneStateCallSetupD1Ev @ 213 NONAME
-	_ZN20CPhoneStateCallSetupD2Ev @ 214 NONAME
-	_ZNK11CPhoneState11IsKeyLockOnEv @ 215 NONAME
-	_ZNK11CPhoneState12IsAutoLockOnEv @ 216 NONAME
-	_ZNK11CPhoneState14IsSwivelClosedEv @ 217 NONAME
-	_ZNK11CPhoneState17GetBlockedKeyListEv @ 218 NONAME
-	_ZNK11CPhoneState18TopAppIsDisplayedLEv @ 219 NONAME
-	_ZNK11CPhoneState23NeedToSendToBackgroundLEv @ 220 NONAME
-	_ZNK11CPhoneState25IsOnScreenDialerSupportedEv @ 221 NONAME
-	_ZNK11CPhoneState26IsCustomizedDialerVisibleLEv @ 222 NONAME
-	_ZNK11CPhoneState8SimStateEv @ 223 NONAME
-	_ZTI11CPhoneState @ 224 NONAME
-	_ZTI15CPhoneStateIdle @ 225 NONAME
-	_ZTI17CPhoneStateHandle @ 226 NONAME
-	_ZTI17CPhoneStateInCall @ 227 NONAME
-	_ZTI18CPhoneStateMachine @ 228 NONAME
-	_ZTI18CPhoneStateStartup @ 229 NONAME
-	_ZTI18CPhoneUIController @ 230 NONAME
-	_ZTI19CPhoneStateIncoming @ 231 NONAME
-	_ZTI20CPhoneReconnectQuery @ 232 NONAME
-	_ZTI20CPhoneStateCallSetup @ 233 NONAME
-	_ZTI23CPhoneDtmfWaitCharTimer @ 234 NONAME
-	_ZTI24CPhoneSystemEventHandler @ 235 NONAME
-	_ZTI26CPhoneRemoteControlHandler @ 236 NONAME
-	_ZTI27CPhoneBtaaDisconnectHandler @ 237 NONAME
-	_ZTV11CPhoneState @ 238 NONAME
-	_ZTV15CPhoneStateIdle @ 239 NONAME
-	_ZTV17CPhoneStateHandle @ 240 NONAME
-	_ZTV17CPhoneStateInCall @ 241 NONAME
-	_ZTV18CPhoneStateMachine @ 242 NONAME
-	_ZTV18CPhoneStateStartup @ 243 NONAME
-	_ZTV18CPhoneUIController @ 244 NONAME
-	_ZTV19CPhoneStateIncoming @ 245 NONAME
-	_ZTV20CPhoneReconnectQuery @ 246 NONAME
-	_ZTV20CPhoneStateCallSetup @ 247 NONAME
-	_ZTV23CPhoneDtmfWaitCharTimer @ 248 NONAME
-	_ZTV24CPhoneSystemEventHandler @ 249 NONAME
-	_ZTV26CPhoneRemoteControlHandler @ 250 NONAME
-	_ZTV27CPhoneBtaaDisconnectHandler @ 251 NONAME
-	_ZThn12_N11CPhoneState18HandleSystemEventLERK8TWsEvent @ 252 NONAME
-	_ZThn12_N11CPhoneState19HandleCenRepChangeLERK4TUidj @ 253 NONAME
-	_ZThn12_N11CPhoneState19HandlePhoneStartupLEv @ 254 NONAME
-	_ZThn12_N11CPhoneState20HandleKeyLockEnabledEi @ 255 NONAME
-	_ZThn12_N11CPhoneState22HandleForegroundEventLEi @ 256 NONAME
-	_ZThn12_N11CPhoneState22HandlePropertyChangedLERK4TUidji @ 257 NONAME
-	_ZThn12_N11CPhoneState24HandleEnvironmentChangeLEi @ 258 NONAME
-	_ZThn12_N11CPhoneState26HandleIdleForegroundEventLEv @ 259 NONAME
-	_ZThn12_N11CPhoneState26HandlePhoneFocusLostEventLEv @ 260 NONAME
-	_ZThn12_N11CPhoneState27HandlePhoneForegroundEventLEv @ 261 NONAME
-	_ZThn12_N11CPhoneStateD0Ev @ 262 NONAME
-	_ZThn12_N11CPhoneStateD1Ev @ 263 NONAME
-	_ZThn12_N15CPhoneStateIdle26HandleIdleForegroundEventLEv @ 264 NONAME
-	_ZThn12_N15CPhoneStateIdle26HandlePhoneFocusLostEventLEv @ 265 NONAME
-	_ZThn12_N15CPhoneStateIdle27HandlePhoneForegroundEventLEv @ 266 NONAME
-	_ZThn12_N15CPhoneStateIdleD0Ev @ 267 NONAME
-	_ZThn12_N15CPhoneStateIdleD1Ev @ 268 NONAME
-	_ZThn12_N17CPhoneStateInCallD0Ev @ 269 NONAME
-	_ZThn12_N17CPhoneStateInCallD1Ev @ 270 NONAME
-	_ZThn12_N18CPhoneStateStartup19HandlePhoneStartupLEv @ 271 NONAME
-	_ZThn12_N18CPhoneStateStartup26HandleIdleForegroundEventLEv @ 272 NONAME
-	_ZThn12_N18CPhoneStateStartupD0Ev @ 273 NONAME
-	_ZThn12_N18CPhoneStateStartupD1Ev @ 274 NONAME
-	_ZThn12_N18CPhoneUIController18HandleSystemEventLERK8TWsEvent @ 275 NONAME
-	_ZThn12_N18CPhoneUIController19HandlePhoneStartupLEv @ 276 NONAME
-	_ZThn12_N18CPhoneUIController20HandleKeyLockEnabledEi @ 277 NONAME
-	_ZThn12_N18CPhoneUIController22HandleForegroundEventLEi @ 278 NONAME
-	_ZThn12_N18CPhoneUIController24HandleEnvironmentChangeLEi @ 279 NONAME
-	_ZThn12_N18CPhoneUIController26HandleIdleForegroundEventLEv @ 280 NONAME
-	_ZThn12_N18CPhoneUIController26HandlePhoneFocusLostEventLEv @ 281 NONAME
-	_ZThn12_N18CPhoneUIController27HandlePhoneForegroundEventLEv @ 282 NONAME
-	_ZThn12_N18CPhoneUIControllerD0Ev @ 283 NONAME
-	_ZThn12_N18CPhoneUIControllerD1Ev @ 284 NONAME
-	_ZThn12_N19CPhoneStateIncoming20HandleKeyLockEnabledEi @ 285 NONAME
-	_ZThn12_N19CPhoneStateIncomingD0Ev @ 286 NONAME
-	_ZThn12_N19CPhoneStateIncomingD1Ev @ 287 NONAME
-	_ZThn12_N20CPhoneStateCallSetupD0Ev @ 288 NONAME
-	_ZThn12_N20CPhoneStateCallSetupD1Ev @ 289 NONAME
-	_ZThn16_N11CPhoneState14HandleCommandLEi @ 290 NONAME
-	_ZThn16_N11CPhoneState15ProcessCommandLEi @ 291 NONAME
-	_ZThn16_N11CPhoneStateD0Ev @ 292 NONAME
-	_ZThn16_N11CPhoneStateD1Ev @ 293 NONAME
-	_ZThn16_N15CPhoneStateIdle14HandleCommandLEi @ 294 NONAME
-	_ZThn16_N15CPhoneStateIdle15ProcessCommandLEi @ 295 NONAME
-	_ZThn16_N15CPhoneStateIdleD0Ev @ 296 NONAME
-	_ZThn16_N15CPhoneStateIdleD1Ev @ 297 NONAME
-	_ZThn16_N17CPhoneStateInCall14HandleCommandLEi @ 298 NONAME
-	_ZThn16_N17CPhoneStateInCallD0Ev @ 299 NONAME
-	_ZThn16_N17CPhoneStateInCallD1Ev @ 300 NONAME
-	_ZThn16_N18CPhoneStateStartupD0Ev @ 301 NONAME
-	_ZThn16_N18CPhoneStateStartupD1Ev @ 302 NONAME
-	_ZThn16_N18CPhoneUIController14HandleCommandLEi @ 303 NONAME
-	_ZThn16_N18CPhoneUIController15ProcessCommandLEi @ 304 NONAME
-	_ZThn16_N18CPhoneUIControllerD0Ev @ 305 NONAME
-	_ZThn16_N18CPhoneUIControllerD1Ev @ 306 NONAME
-	_ZThn16_N19CPhoneStateIncoming14HandleCommandLEi @ 307 NONAME
-	_ZThn16_N19CPhoneStateIncomingD0Ev @ 308 NONAME
-	_ZThn16_N19CPhoneStateIncomingD1Ev @ 309 NONAME
-	_ZThn16_N20CPhoneStateCallSetup14HandleCommandLEi @ 310 NONAME
-	_ZThn16_N20CPhoneStateCallSetupD0Ev @ 311 NONAME
-	_ZThn16_N20CPhoneStateCallSetupD1Ev @ 312 NONAME
-	_ZThn20_N11CPhoneState20HandleRemConCommandLE25TRemConCoreApiOperationId26TRemConCoreApiButtonAction @ 313 NONAME
-	_ZThn20_N11CPhoneStateD0Ev @ 314 NONAME
-	_ZThn20_N11CPhoneStateD1Ev @ 315 NONAME
-	_ZThn20_N15CPhoneStateIdle20HandleRemConCommandLE25TRemConCoreApiOperationId26TRemConCoreApiButtonAction @ 316 NONAME
-	_ZThn20_N15CPhoneStateIdleD0Ev @ 317 NONAME
-	_ZThn20_N15CPhoneStateIdleD1Ev @ 318 NONAME
-	_ZThn20_N17CPhoneStateInCallD0Ev @ 319 NONAME
-	_ZThn20_N17CPhoneStateInCallD1Ev @ 320 NONAME
-	_ZThn20_N18CPhoneStateStartupD0Ev @ 321 NONAME
-	_ZThn20_N18CPhoneStateStartupD1Ev @ 322 NONAME
-	_ZThn20_N19CPhoneStateIncomingD0Ev @ 323 NONAME
-	_ZThn20_N19CPhoneStateIncomingD1Ev @ 324 NONAME
-	_ZThn20_N20CPhoneStateCallSetupD0Ev @ 325 NONAME
-	_ZThn20_N20CPhoneStateCallSetupD1Ev @ 326 NONAME
-	_ZThn24_N11CPhoneState19SetDivertIndicationEi @ 327 NONAME
-	_ZThn24_N11CPhoneStateD0Ev @ 328 NONAME
-	_ZThn24_N11CPhoneStateD1Ev @ 329 NONAME
-	_ZThn24_N15CPhoneStateIdleD0Ev @ 330 NONAME
-	_ZThn24_N15CPhoneStateIdleD1Ev @ 331 NONAME
-	_ZThn24_N17CPhoneStateInCallD0Ev @ 332 NONAME
-	_ZThn24_N17CPhoneStateInCallD1Ev @ 333 NONAME
-	_ZThn24_N18CPhoneStateStartupD0Ev @ 334 NONAME
-	_ZThn24_N18CPhoneStateStartupD1Ev @ 335 NONAME
-	_ZThn24_N19CPhoneStateIncomingD0Ev @ 336 NONAME
-	_ZThn24_N19CPhoneStateIncomingD1Ev @ 337 NONAME
-	_ZThn24_N20CPhoneStateCallSetupD0Ev @ 338 NONAME
-	_ZThn24_N20CPhoneStateCallSetupD1Ev @ 339 NONAME
-	_ZThn28_NK11CPhoneState17GetBlockedKeyListEv @ 340 NONAME
-	_ZThn32_N11CPhoneState25HandleNumberEntryClearedLEv @ 341 NONAME
-	_ZThn32_N15CPhoneStateIdle25HandleNumberEntryClearedLEv @ 342 NONAME
-	_ZThn32_N17CPhoneStateInCall25HandleNumberEntryClearedLEv @ 343 NONAME
-	_ZThn32_N19CPhoneStateIncoming25HandleNumberEntryClearedLEv @ 344 NONAME
-	_ZThn32_N20CPhoneStateCallSetup25HandleNumberEntryClearedLEv @ 345 NONAME
-	_ZThn36_NK11CPhoneState11IsKeyLockOnEv @ 346 NONAME
-	_ZThn36_NK11CPhoneState12IsAutoLockOnEv @ 347 NONAME
-	_ZThn4_N11CPhoneState12HandleErrorLERK12TPEErrorInfo @ 348 NONAME
-	_ZThn4_N11CPhoneState25HandlePhoneEngineMessageLEii @ 349 NONAME
-	_ZThn4_N11CPhoneStateD0Ev @ 350 NONAME
-	_ZThn4_N11CPhoneStateD1Ev @ 351 NONAME
-	_ZThn4_N15CPhoneStateIdle25HandlePhoneEngineMessageLEii @ 352 NONAME
-	_ZThn4_N15CPhoneStateIdleD0Ev @ 353 NONAME
-	_ZThn4_N15CPhoneStateIdleD1Ev @ 354 NONAME
-	_ZThn4_N17CPhoneStateInCall25HandlePhoneEngineMessageLEii @ 355 NONAME
-	_ZThn4_N17CPhoneStateInCallD0Ev @ 356 NONAME
-	_ZThn4_N17CPhoneStateInCallD1Ev @ 357 NONAME
-	_ZThn4_N18CPhoneStateMachine11ChangeStateEi @ 358 NONAME
-	_ZThn4_N18CPhoneStateMachine11PhoneEngineEv @ 359 NONAME
-	_ZThn4_N18CPhoneStateMachine12PhoneStorageEv @ 360 NONAME
-	_ZThn4_N18CPhoneStateMachine14SetPhoneEngineEP13MPEPhoneModel @ 361 NONAME
-	_ZThn4_N18CPhoneStateMachine15PhoneEngineInfoEv @ 362 NONAME
-	_ZThn4_N18CPhoneStateMachine18CreatePhoneEngineLER14MEngineMonitor @ 363 NONAME
-	_ZThn4_N18CPhoneStateMachine22SendPhoneEngineMessageEi @ 364 NONAME
-	_ZThn4_N18CPhoneStateMachine5StateEv @ 365 NONAME
-	_ZThn4_N18CPhoneStateMachine9SetCallIdEi @ 366 NONAME
-	_ZThn4_N18CPhoneStateMachineD0Ev @ 367 NONAME
-	_ZThn4_N18CPhoneStateMachineD1Ev @ 368 NONAME
-	_ZThn4_N18CPhoneStateStartup25HandlePhoneEngineMessageLEii @ 369 NONAME
-	_ZThn4_N18CPhoneStateStartupD0Ev @ 370 NONAME
-	_ZThn4_N18CPhoneStateStartupD1Ev @ 371 NONAME
-	_ZThn4_N18CPhoneUIController11HandleErrorERK12TPEErrorInfo @ 372 NONAME
-	_ZThn4_N18CPhoneUIController13HandleMessageEii @ 373 NONAME
-	_ZThn4_N19CPhoneStateIncoming25HandlePhoneEngineMessageLEii @ 374 NONAME
-	_ZThn4_N19CPhoneStateIncomingD0Ev @ 375 NONAME
-	_ZThn4_N19CPhoneStateIncomingD1Ev @ 376 NONAME
-	_ZThn4_N20CPhoneStateCallSetup25HandlePhoneEngineMessageLEii @ 377 NONAME
-	_ZThn4_N20CPhoneStateCallSetupD0Ev @ 378 NONAME
-	_ZThn4_N20CPhoneStateCallSetupD1Ev @ 379 NONAME
-	_ZThn8_N11CPhoneState15HandleKeyEventLERK9TKeyEvent10TEventCode @ 380 NONAME
-	_ZThn8_N11CPhoneState15HandleLongHashLEv @ 381 NONAME
-	_ZThn8_N11CPhoneState17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 382 NONAME
-	_ZThn8_N11CPhoneState18HandleDtmfKeyToneLERK9TKeyEvent10TEventCode @ 383 NONAME
-	_ZThn8_N11CPhoneState23HandleKeyPressDurationLE8TKeyCode25TTimeIntervalMicroSeconds @ 384 NONAME
-	_ZThn8_N11CPhoneState35IsAlphanumericSupportedAndCharInputERK9TKeyEvent @ 385 NONAME
-	_ZThn8_N11CPhoneStateD0Ev @ 386 NONAME
-	_ZThn8_N11CPhoneStateD1Ev @ 387 NONAME
-	_ZThn8_N15CPhoneStateIdle15HandleKeyEventLERK9TKeyEvent10TEventCode @ 388 NONAME
-	_ZThn8_N15CPhoneStateIdle17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 389 NONAME
-	_ZThn8_N15CPhoneStateIdleD0Ev @ 390 NONAME
-	_ZThn8_N15CPhoneStateIdleD1Ev @ 391 NONAME
-	_ZThn8_N17CPhoneStateInCall17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 392 NONAME
-	_ZThn8_N17CPhoneStateInCallD0Ev @ 393 NONAME
-	_ZThn8_N17CPhoneStateInCallD1Ev @ 394 NONAME
-	_ZThn8_N18CPhoneStateStartup15HandleKeyEventLERK9TKeyEvent10TEventCode @ 395 NONAME
-	_ZThn8_N18CPhoneStateStartup17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 396 NONAME
-	_ZThn8_N18CPhoneStateStartup18HandleDtmfKeyToneLERK9TKeyEvent10TEventCode @ 397 NONAME
-	_ZThn8_N18CPhoneStateStartupD0Ev @ 398 NONAME
-	_ZThn8_N18CPhoneStateStartupD1Ev @ 399 NONAME
-	_ZThn8_N18CPhoneUIController15HandleKeyEventLERK9TKeyEvent10TEventCode @ 400 NONAME
-	_ZThn8_N18CPhoneUIControllerD0Ev @ 401 NONAME
-	_ZThn8_N18CPhoneUIControllerD1Ev @ 402 NONAME
-	_ZThn8_N19CPhoneStateIncoming15HandleKeyEventLERK9TKeyEvent10TEventCode @ 403 NONAME
-	_ZThn8_N19CPhoneStateIncoming17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 404 NONAME
-	_ZThn8_N19CPhoneStateIncoming23HandleKeyPressDurationLE8TKeyCode25TTimeIntervalMicroSeconds @ 405 NONAME
-	_ZThn8_N19CPhoneStateIncomingD0Ev @ 406 NONAME
-	_ZThn8_N19CPhoneStateIncomingD1Ev @ 407 NONAME
-	_ZThn8_N20CPhoneStateCallSetup15HandleKeyEventLERK9TKeyEvent10TEventCode @ 408 NONAME
-	_ZThn8_N20CPhoneStateCallSetup17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 409 NONAME
-	_ZThn8_N20CPhoneStateCallSetupD0Ev @ 410 NONAME
-	_ZThn8_N20CPhoneStateCallSetupD1Ev @ 411 NONAME
+	_ZN11CPhoneState15ProcessCommandLEi @ 15 NONAME
+	_ZN11CPhoneState16CallWaitingNoteLEi @ 16 NONAME
+	_ZN11CPhoneState16SetDefaultFlagsLEv @ 17 NONAME
+	_ZN11CPhoneState17HandleHoldSwitchLEv @ 18 NONAME
+	_ZN11CPhoneState17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 19 NONAME
+	_ZN11CPhoneState17IsAnyQueryActiveLEv @ 20 NONAME
+	_ZN11CPhoneState17SetCallHeaderTypeEi @ 21 NONAME
+	_ZN11CPhoneState17SetHandsfreeModeLEi @ 22 NONAME
+	_ZN11CPhoneState18DisplayIdleScreenLEv @ 23 NONAME
+	_ZN11CPhoneState18GetRemoteInfoDataLEiR6TDes16 @ 24 NONAME
+	_ZN11CPhoneState18HandleDtmfKeyToneLERK9TKeyEvent10TEventCode @ 25 NONAME
+	_ZN11CPhoneState18HandleSystemEventLERK8TWsEvent @ 26 NONAME
+	_ZN11CPhoneState18IsNumberEntryUsedLEv @ 27 NONAME
+	_ZN11CPhoneState19CompleteSatRequestLEi @ 28 NONAME
+	_ZN11CPhoneState19DialMultimediaCallLEv @ 29 NONAME
+	_ZN11CPhoneState19HandleCenRepChangeLERK4TUidj @ 30 NONAME
+	_ZN11CPhoneState19HandlePhoneStartupLEv @ 31 NONAME
+	_ZN11CPhoneState19SendGlobalInfoNoteLEii @ 32 NONAME
+	_ZN11CPhoneState19SetBTHandsfreeModeLEi @ 33 NONAME
+	_ZN11CPhoneState19SetBackButtonActiveEi @ 34 NONAME
+	_ZN11CPhoneState19SetDivertIndicationEi @ 35 NONAME
+	_ZN11CPhoneState19SetTouchPaneButtonsEi @ 36 NONAME
+	_ZN11CPhoneState19ShowNumberBusyNoteLEv @ 37 NONAME
+	_ZN11CPhoneState20CallFromNumberEntryLEv @ 38 NONAME
+	_ZN11CPhoneState20DecreaseAudioVolumeLEv @ 39 NONAME
+	_ZN11CPhoneState20HandleDisconnectingLEi @ 40 NONAME
+	_ZN11CPhoneState20HandleKeyLockEnabledEi @ 41 NONAME
+	_ZN11CPhoneState20HandleRemConCommandLE25TRemConCoreApiOperationId26TRemConCoreApiButtonAction @ 42 NONAME
+	_ZN11CPhoneState20IncreaseAudioVolumeLEv @ 43 NONAME
+	_ZN11CPhoneState20SendGlobalErrorNoteLEii @ 44 NONAME
+	_ZN11CPhoneState21IsNumberEntryVisibleLEv @ 45 NONAME
+	_ZN11CPhoneState21UpdateRemoteInfoDataLEi @ 46 NONAME
+	_ZN11CPhoneState22DeleteTouchPaneButtonsEv @ 47 NONAME
+	_ZN11CPhoneState22HandleForegroundEventLEi @ 48 NONAME
+	_ZN11CPhoneState22HandlePropertyChangedLERK4TUidji @ 49 NONAME
+	_ZN11CPhoneState22PhoneNumberFromEntryLCEv @ 50 NONAME
+	_ZN11CPhoneState22SendGlobalWarningNoteLEii @ 51 NONAME
+	_ZN11CPhoneState22StartShowSecurityNoteLEv @ 52 NONAME
+	_ZN11CPhoneState23HandleAudioMuteChangedLEv @ 53 NONAME
+	_ZN11CPhoneState23SetRingingTonePlaybackLEi @ 54 NONAME
+	_ZN11CPhoneState23UpdateSingleActiveCallLEi @ 55 NONAME
+	_ZN11CPhoneState24StoreNumberEntryContentLEv @ 56 NONAME
+	_ZN11CPhoneState25HandleAudioOutputChangedLEv @ 57 NONAME
+	_ZN11CPhoneState25HandleNumberEntryClearedLEv @ 58 NONAME
+	_ZN11CPhoneState25HandlePhoneEngineMessageLEii @ 59 NONAME
+	_ZN11CPhoneState25SetNumberEntryVisibilityLEi @ 60 NONAME
+	_ZN11CPhoneState26HandleIdleForegroundEventLEv @ 61 NONAME
+	_ZN11CPhoneState26HandlePhoneFocusLostEventLEv @ 62 NONAME
+	_ZN11CPhoneState26IsNumberEntryContentStoredEv @ 63 NONAME
+	_ZN11CPhoneState27DisplayCallTerminationNoteLEv @ 64 NONAME
+	_ZN11CPhoneState27HandlePhoneForegroundEventLEv @ 65 NONAME
+	_ZN11CPhoneState27RetainPreviousKeylockStateLEv @ 66 NONAME
+	_ZN11CPhoneState28CheckDisableHWKeysAndCallUILEv @ 67 NONAME
+	_ZN11CPhoneState28ClearNumberEntryContentCacheEv @ 68 NONAME
+	_ZN11CPhoneState28OpenSoftRejectMessageEditorLEv @ 69 NONAME
+	_ZN11CPhoneState28SetupIdleScreenInBackgroundLEv @ 70 NONAME
+	_ZN11CPhoneState29DisplayHeaderForCallComingInLEii @ 71 NONAME
+	_ZN11CPhoneState29DisplayHeaderForOutgoingCallLEi @ 72 NONAME
+	_ZN11CPhoneState30CheckIfShowCallTerminationNoteEv @ 73 NONAME
+	_ZN11CPhoneState34SetCallHeaderTextsForCallComingInLEiiP28TPhoneCmdParamCallHeaderData @ 74 NONAME
+	_ZN11CPhoneState34SetToolbarButtonLoudspeakerEnabledEv @ 75 NONAME
+	_ZN11CPhoneState35IsAlphanumericSupportedAndCharInputERK9TKeyEvent @ 76 NONAME
+	_ZN11CPhoneState43IsSimStateNotPresentWithSecurityModeEnabledEv @ 77 NONAME
+	_ZN11CPhoneState7IsSimOkEv @ 78 NONAME
+	_ZN11CPhoneState9ShowNoteLEi @ 79 NONAME
+	_ZN11CPhoneStateC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 80 NONAME
+	_ZN11CPhoneStateC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 81 NONAME
+	_ZN11CPhoneStateD0Ev @ 82 NONAME
+	_ZN11CPhoneStateD1Ev @ 83 NONAME
+	_ZN11CPhoneStateD2Ev @ 84 NONAME
+	_ZN15CPhoneStateIdle10ConstructLEv @ 85 NONAME
+	_ZN15CPhoneStateIdle14DialVoiceCallLEv @ 86 NONAME
+	_ZN15CPhoneStateIdle14HandleCommandLEi @ 87 NONAME
+	_ZN15CPhoneStateIdle14HandleDialingLEi @ 88 NONAME
+	_ZN15CPhoneStateIdle15HandleKeyEventLERK9TKeyEvent10TEventCode @ 89 NONAME
+	_ZN15CPhoneStateIdle15ProcessCommandLEi @ 90 NONAME
+	_ZN15CPhoneStateIdle17DisplayCallSetupLEi @ 91 NONAME
+	_ZN15CPhoneStateIdle17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 92 NONAME
+	_ZN15CPhoneStateIdle18HandleSendCommandLEv @ 93 NONAME
+	_ZN15CPhoneStateIdle19DialMultimediaCallLEv @ 94 NONAME
+	_ZN15CPhoneStateIdle20DisplayIncomingCallLEi @ 95 NONAME
+	_ZN15CPhoneStateIdle20HandleRemConCommandLE25TRemConCoreApiOperationId26TRemConCoreApiButtonAction @ 96 NONAME
+	_ZN15CPhoneStateIdle25HandleNumberEntryClearedLEv @ 97 NONAME
+	_ZN15CPhoneStateIdle25HandlePhoneEngineMessageLEii @ 98 NONAME
+	_ZN15CPhoneStateIdle26HandleIdleForegroundEventLEv @ 99 NONAME
+	_ZN15CPhoneStateIdle26HandlePhoneFocusLostEventLEv @ 100 NONAME
+	_ZN15CPhoneStateIdle27HandlePhoneForegroundEventLEv @ 101 NONAME
+	_ZN15CPhoneStateIdle5DialLERK7TDesC16NS_16TPhoneNumberTypeENS_21TDialInitiationMethodE @ 102 NONAME
+	_ZN15CPhoneStateIdleC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 103 NONAME
+	_ZN15CPhoneStateIdleC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 104 NONAME
+	_ZN15CPhoneStateIdleD0Ev @ 105 NONAME
+	_ZN15CPhoneStateIdleD1Ev @ 106 NONAME
+	_ZN15CPhoneStateIdleD2Ev @ 107 NONAME
+	_ZN16CPhoneCbaManager10UpdateCbaLEi @ 108 NONAME
+	_ZN16CPhoneCbaManager18UpdateIncomingCbaLEi @ 109 NONAME
+	_ZN16CPhoneCbaManager7SetCbaLEi @ 110 NONAME
+	_ZN17CPhoneStateHandle12StateMachineEv @ 111 NONAME
+	_ZN17CPhoneStateHandle17ViewCommandHandleEv @ 112 NONAME
+	_ZN17CPhoneStateHandle8InstanceEv @ 113 NONAME
+	_ZN17CPhoneStateInCall10ConstructLEv @ 114 NONAME
+	_ZN17CPhoneStateInCall10UpdateCbaLEi @ 115 NONAME
+	_ZN17CPhoneStateInCall11HandleIdleLEi @ 116 NONAME
+	_ZN17CPhoneStateInCall14HandleCommandLEi @ 117 NONAME
+	_ZN17CPhoneStateInCall15GetRingingCallLEv @ 118 NONAME
+	_ZN17CPhoneStateInCall16UpdateInCallCbaLEv @ 119 NONAME
+	_ZN17CPhoneStateInCall17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 120 NONAME
+	_ZN17CPhoneStateInCall18CallFetchedNumberLERK7TDesC16 @ 121 NONAME
+	_ZN17CPhoneStateInCall18IsVideoCallActiveLEv @ 122 NONAME
+	_ZN17CPhoneStateInCall19IsVideoCallRingingLEv @ 123 NONAME
+	_ZN17CPhoneStateInCall23DisconnectOutgoingCallLEv @ 124 NONAME
+	_ZN17CPhoneStateInCall25HandleNumberEntryClearedLEv @ 125 NONAME
+	_ZN17CPhoneStateInCall25HandlePhoneEngineMessageLEii @ 126 NONAME
+	_ZN17CPhoneStateInCallC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 127 NONAME
+	_ZN17CPhoneStateInCallC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 128 NONAME
+	_ZN17CPhoneStateInCallD0Ev @ 129 NONAME
+	_ZN17CPhoneStateInCallD1Ev @ 130 NONAME
+	_ZN17CPhoneStateInCallD2Ev @ 131 NONAME
+	_ZN18CPhoneStateMachine11ChangeStateEi @ 132 NONAME
+	_ZN18CPhoneStateMachine11PhoneEngineEv @ 133 NONAME
+	_ZN18CPhoneStateMachine12PhoneStorageEv @ 134 NONAME
+	_ZN18CPhoneStateMachine14SetPhoneEngineEP13MPEPhoneModel @ 135 NONAME
+	_ZN18CPhoneStateMachine15PhoneEngineInfoEv @ 136 NONAME
+	_ZN18CPhoneStateMachine18CreatePhoneEngineLER14MEngineMonitor @ 137 NONAME
+	_ZN18CPhoneStateMachine22SendPhoneEngineMessageEi @ 138 NONAME
+	_ZN18CPhoneStateMachine5StateEv @ 139 NONAME
+	_ZN18CPhoneStateMachine9SetCallIdEi @ 140 NONAME
+	_ZN18CPhoneStateMachineC1EP23MPhoneViewCommandHandle @ 141 NONAME
+	_ZN18CPhoneStateMachineC2EP23MPhoneViewCommandHandle @ 142 NONAME
+	_ZN18CPhoneStateMachineD0Ev @ 143 NONAME
+	_ZN18CPhoneStateMachineD1Ev @ 144 NONAME
+	_ZN18CPhoneStateMachineD2Ev @ 145 NONAME
+	_ZN18CPhoneStateStartup10ConstructLEv @ 146 NONAME
+	_ZN18CPhoneStateStartup15HandleKeyEventLERK9TKeyEvent10TEventCode @ 147 NONAME
+	_ZN18CPhoneStateStartup17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 148 NONAME
+	_ZN18CPhoneStateStartup18HandleDtmfKeyToneLERK9TKeyEvent10TEventCode @ 149 NONAME
+	_ZN18CPhoneStateStartup19HandlePhoneStartupLEv @ 150 NONAME
+	_ZN18CPhoneStateStartup25HandlePhoneEngineMessageLEii @ 151 NONAME
+	_ZN18CPhoneStateStartup26HandleIdleForegroundEventLEv @ 152 NONAME
+	_ZN18CPhoneStateStartup4NewLEP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 153 NONAME
+	_ZN18CPhoneStateStartupC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 154 NONAME
+	_ZN18CPhoneStateStartupC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 155 NONAME
+	_ZN18CPhoneStateStartupD0Ev @ 156 NONAME
+	_ZN18CPhoneStateStartupD1Ev @ 157 NONAME
+	_ZN18CPhoneStateStartupD2Ev @ 158 NONAME
+	_ZN18CPhoneUIController11HandleErrorERK12TPEErrorInfo @ 159 NONAME
+	_ZN18CPhoneUIController13HandleMessageEii @ 160 NONAME
+	_ZN18CPhoneUIController14HandleCommandLEi @ 161 NONAME
+	_ZN18CPhoneUIController15HandleKeyEventLERK9TKeyEvent10TEventCode @ 162 NONAME
+	_ZN18CPhoneUIController15ProcessCommandLEi @ 163 NONAME
+	_ZN18CPhoneUIController18HandleSystemEventLERK8TWsEvent @ 164 NONAME
+	_ZN18CPhoneUIController19HandlePhoneStartupLEv @ 165 NONAME
+	_ZN18CPhoneUIController20HandleKeyLockEnabledEi @ 166 NONAME
+	_ZN18CPhoneUIController22HandleForegroundEventLEi @ 167 NONAME
+	_ZN18CPhoneUIController26HandleIdleForegroundEventLEv @ 168 NONAME
+	_ZN18CPhoneUIController26HandlePhoneFocusLostEventLEv @ 169 NONAME
+	_ZN18CPhoneUIController27HandlePhoneForegroundEventLEv @ 170 NONAME
+	_ZN18CPhoneUIController4NewLEP23MPhoneViewCommandHandle @ 171 NONAME
+	_ZN18CPhoneUIControllerD0Ev @ 172 NONAME
+	_ZN18CPhoneUIControllerD1Ev @ 173 NONAME
+	_ZN18CPhoneUIControllerD2Ev @ 174 NONAME
+	_ZN19CPhoneStateIncoming10ConstructLEv @ 175 NONAME
+	_ZN19CPhoneStateIncoming14HandleCommandLEi @ 176 NONAME
+	_ZN19CPhoneStateIncoming15HandleKeyEventLERK9TKeyEvent10TEventCode @ 177 NONAME
+	_ZN19CPhoneStateIncoming17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 178 NONAME
+	_ZN19CPhoneStateIncoming20HandleKeyLockEnabledEi @ 179 NONAME
+	_ZN19CPhoneStateIncoming23HandleAudioPlayStoppedLEv @ 180 NONAME
+	_ZN19CPhoneStateIncoming25HandleNumberEntryClearedLEv @ 181 NONAME
+	_ZN19CPhoneStateIncoming25HandlePhoneEngineMessageLEii @ 182 NONAME
+	_ZN19CPhoneStateIncomingC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 183 NONAME
+	_ZN19CPhoneStateIncomingC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 184 NONAME
+	_ZN19CPhoneStateIncomingD0Ev @ 185 NONAME
+	_ZN19CPhoneStateIncomingD1Ev @ 186 NONAME
+	_ZN19CPhoneStateIncomingD2Ev @ 187 NONAME
+	_ZN20CPhoneStateCallSetup10ConstructLEv @ 188 NONAME
+	_ZN20CPhoneStateCallSetup10UpdateCbaLEi @ 189 NONAME
+	_ZN20CPhoneStateCallSetup14HandleCommandLEi @ 190 NONAME
+	_ZN20CPhoneStateCallSetup15HandleKeyEventLERK9TKeyEvent10TEventCode @ 191 NONAME
+	_ZN20CPhoneStateCallSetup16UpdateInCallCbaLEv @ 192 NONAME
+	_ZN20CPhoneStateCallSetup17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 193 NONAME
+	_ZN20CPhoneStateCallSetup25HandleNumberEntryClearedLEv @ 194 NONAME
+	_ZN20CPhoneStateCallSetup25HandlePhoneEngineMessageLEii @ 195 NONAME
+	_ZN20CPhoneStateCallSetupC1EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 196 NONAME
+	_ZN20CPhoneStateCallSetupC2EP18MPhoneStateMachineP23MPhoneViewCommandHandleP19MPhoneCustomization @ 197 NONAME
+	_ZN20CPhoneStateCallSetupD0Ev @ 198 NONAME
+	_ZN20CPhoneStateCallSetupD1Ev @ 199 NONAME
+	_ZN20CPhoneStateCallSetupD2Ev @ 200 NONAME
+	_ZNK11CPhoneState11IsKeyLockOnEv @ 201 NONAME
+	_ZNK11CPhoneState12IsAutoLockOnEv @ 202 NONAME
+	_ZNK11CPhoneState14IsSwivelClosedEv @ 203 NONAME
+	_ZNK11CPhoneState17GetBlockedKeyListEv @ 204 NONAME
+	_ZNK11CPhoneState18TopAppIsDisplayedLEv @ 205 NONAME
+	_ZNK11CPhoneState23NeedToSendToBackgroundLEv @ 206 NONAME
+	_ZNK11CPhoneState26IsCustomizedDialerVisibleLEv @ 207 NONAME
+	_ZNK11CPhoneState8SimStateEv @ 208 NONAME
+	_ZTI11CPhoneState @ 209 NONAME
+	_ZTI15CPhoneStateIdle @ 210 NONAME
+	_ZTI17CPhoneStateHandle @ 211 NONAME
+	_ZTI17CPhoneStateInCall @ 212 NONAME
+	_ZTI18CPhoneStateMachine @ 213 NONAME
+	_ZTI18CPhoneStateStartup @ 214 NONAME
+	_ZTI18CPhoneUIController @ 215 NONAME
+	_ZTI19CPhoneStateIncoming @ 216 NONAME
+	_ZTI20CPhoneStateCallSetup @ 217 NONAME
+	_ZTI23CPhoneDtmfWaitCharTimer @ 218 NONAME
+	_ZTI24CPhoneSystemEventHandler @ 219 NONAME
+	_ZTI26CPhoneRemoteControlHandler @ 220 NONAME
+	_ZTI27CPhoneBtaaDisconnectHandler @ 221 NONAME
+	_ZTV11CPhoneState @ 222 NONAME
+	_ZTV15CPhoneStateIdle @ 223 NONAME
+	_ZTV17CPhoneStateHandle @ 224 NONAME
+	_ZTV17CPhoneStateInCall @ 225 NONAME
+	_ZTV18CPhoneStateMachine @ 226 NONAME
+	_ZTV18CPhoneStateStartup @ 227 NONAME
+	_ZTV18CPhoneUIController @ 228 NONAME
+	_ZTV19CPhoneStateIncoming @ 229 NONAME
+	_ZTV20CPhoneStateCallSetup @ 230 NONAME
+	_ZTV23CPhoneDtmfWaitCharTimer @ 231 NONAME
+	_ZTV24CPhoneSystemEventHandler @ 232 NONAME
+	_ZTV26CPhoneRemoteControlHandler @ 233 NONAME
+	_ZTV27CPhoneBtaaDisconnectHandler @ 234 NONAME
+	_ZThn12_N11CPhoneState18HandleSystemEventLERK8TWsEvent @ 235 NONAME
+	_ZThn12_N11CPhoneState19HandleCenRepChangeLERK4TUidj @ 236 NONAME
+	_ZThn12_N11CPhoneState19HandlePhoneStartupLEv @ 237 NONAME
+	_ZThn12_N11CPhoneState20HandleKeyLockEnabledEi @ 238 NONAME
+	_ZThn12_N11CPhoneState22HandleForegroundEventLEi @ 239 NONAME
+	_ZThn12_N11CPhoneState22HandlePropertyChangedLERK4TUidji @ 240 NONAME
+	_ZThn12_N11CPhoneState26HandleIdleForegroundEventLEv @ 241 NONAME
+	_ZThn12_N11CPhoneState26HandlePhoneFocusLostEventLEv @ 242 NONAME
+	_ZThn12_N11CPhoneState27HandlePhoneForegroundEventLEv @ 243 NONAME
+	_ZThn12_N11CPhoneStateD0Ev @ 244 NONAME
+	_ZThn12_N11CPhoneStateD1Ev @ 245 NONAME
+	_ZThn12_N15CPhoneStateIdle26HandleIdleForegroundEventLEv @ 246 NONAME
+	_ZThn12_N15CPhoneStateIdle26HandlePhoneFocusLostEventLEv @ 247 NONAME
+	_ZThn12_N15CPhoneStateIdle27HandlePhoneForegroundEventLEv @ 248 NONAME
+	_ZThn12_N15CPhoneStateIdleD0Ev @ 249 NONAME
+	_ZThn12_N15CPhoneStateIdleD1Ev @ 250 NONAME
+	_ZThn12_N17CPhoneStateInCallD0Ev @ 251 NONAME
+	_ZThn12_N17CPhoneStateInCallD1Ev @ 252 NONAME
+	_ZThn12_N18CPhoneStateStartup19HandlePhoneStartupLEv @ 253 NONAME
+	_ZThn12_N18CPhoneStateStartup26HandleIdleForegroundEventLEv @ 254 NONAME
+	_ZThn12_N18CPhoneStateStartupD0Ev @ 255 NONAME
+	_ZThn12_N18CPhoneStateStartupD1Ev @ 256 NONAME
+	_ZThn12_N18CPhoneUIController18HandleSystemEventLERK8TWsEvent @ 257 NONAME
+	_ZThn12_N18CPhoneUIController19HandlePhoneStartupLEv @ 258 NONAME
+	_ZThn12_N18CPhoneUIController20HandleKeyLockEnabledEi @ 259 NONAME
+	_ZThn12_N18CPhoneUIController22HandleForegroundEventLEi @ 260 NONAME
+	_ZThn12_N18CPhoneUIController26HandleIdleForegroundEventLEv @ 261 NONAME
+	_ZThn12_N18CPhoneUIController26HandlePhoneFocusLostEventLEv @ 262 NONAME
+	_ZThn12_N18CPhoneUIController27HandlePhoneForegroundEventLEv @ 263 NONAME
+	_ZThn12_N18CPhoneUIControllerD0Ev @ 264 NONAME
+	_ZThn12_N18CPhoneUIControllerD1Ev @ 265 NONAME
+	_ZThn12_N19CPhoneStateIncoming20HandleKeyLockEnabledEi @ 266 NONAME
+	_ZThn12_N19CPhoneStateIncomingD0Ev @ 267 NONAME
+	_ZThn12_N19CPhoneStateIncomingD1Ev @ 268 NONAME
+	_ZThn12_N20CPhoneStateCallSetupD0Ev @ 269 NONAME
+	_ZThn12_N20CPhoneStateCallSetupD1Ev @ 270 NONAME
+	_ZThn16_N11CPhoneState14HandleCommandLEi @ 271 NONAME
+	_ZThn16_N11CPhoneState15ProcessCommandLEi @ 272 NONAME
+	_ZThn16_N11CPhoneStateD0Ev @ 273 NONAME
+	_ZThn16_N11CPhoneStateD1Ev @ 274 NONAME
+	_ZThn16_N15CPhoneStateIdle14HandleCommandLEi @ 275 NONAME
+	_ZThn16_N15CPhoneStateIdle15ProcessCommandLEi @ 276 NONAME
+	_ZThn16_N15CPhoneStateIdleD0Ev @ 277 NONAME
+	_ZThn16_N15CPhoneStateIdleD1Ev @ 278 NONAME
+	_ZThn16_N17CPhoneStateInCall14HandleCommandLEi @ 279 NONAME
+	_ZThn16_N17CPhoneStateInCallD0Ev @ 280 NONAME
+	_ZThn16_N17CPhoneStateInCallD1Ev @ 281 NONAME
+	_ZThn16_N18CPhoneStateStartupD0Ev @ 282 NONAME
+	_ZThn16_N18CPhoneStateStartupD1Ev @ 283 NONAME
+	_ZThn16_N18CPhoneUIController14HandleCommandLEi @ 284 NONAME
+	_ZThn16_N18CPhoneUIController15ProcessCommandLEi @ 285 NONAME
+	_ZThn16_N18CPhoneUIControllerD0Ev @ 286 NONAME
+	_ZThn16_N18CPhoneUIControllerD1Ev @ 287 NONAME
+	_ZThn16_N19CPhoneStateIncoming14HandleCommandLEi @ 288 NONAME
+	_ZThn16_N19CPhoneStateIncomingD0Ev @ 289 NONAME
+	_ZThn16_N19CPhoneStateIncomingD1Ev @ 290 NONAME
+	_ZThn16_N20CPhoneStateCallSetup14HandleCommandLEi @ 291 NONAME
+	_ZThn16_N20CPhoneStateCallSetupD0Ev @ 292 NONAME
+	_ZThn16_N20CPhoneStateCallSetupD1Ev @ 293 NONAME
+	_ZThn20_N11CPhoneState20HandleRemConCommandLE25TRemConCoreApiOperationId26TRemConCoreApiButtonAction @ 294 NONAME
+	_ZThn20_N11CPhoneStateD0Ev @ 295 NONAME
+	_ZThn20_N11CPhoneStateD1Ev @ 296 NONAME
+	_ZThn20_N15CPhoneStateIdle20HandleRemConCommandLE25TRemConCoreApiOperationId26TRemConCoreApiButtonAction @ 297 NONAME
+	_ZThn20_N15CPhoneStateIdleD0Ev @ 298 NONAME
+	_ZThn20_N15CPhoneStateIdleD1Ev @ 299 NONAME
+	_ZThn20_N17CPhoneStateInCallD0Ev @ 300 NONAME
+	_ZThn20_N17CPhoneStateInCallD1Ev @ 301 NONAME
+	_ZThn20_N18CPhoneStateStartupD0Ev @ 302 NONAME
+	_ZThn20_N18CPhoneStateStartupD1Ev @ 303 NONAME
+	_ZThn20_N19CPhoneStateIncomingD0Ev @ 304 NONAME
+	_ZThn20_N19CPhoneStateIncomingD1Ev @ 305 NONAME
+	_ZThn20_N20CPhoneStateCallSetupD0Ev @ 306 NONAME
+	_ZThn20_N20CPhoneStateCallSetupD1Ev @ 307 NONAME
+	_ZThn24_N11CPhoneState19SetDivertIndicationEi @ 308 NONAME
+	_ZThn24_N11CPhoneStateD0Ev @ 309 NONAME
+	_ZThn24_N11CPhoneStateD1Ev @ 310 NONAME
+	_ZThn24_N15CPhoneStateIdleD0Ev @ 311 NONAME
+	_ZThn24_N15CPhoneStateIdleD1Ev @ 312 NONAME
+	_ZThn24_N17CPhoneStateInCallD0Ev @ 313 NONAME
+	_ZThn24_N17CPhoneStateInCallD1Ev @ 314 NONAME
+	_ZThn24_N18CPhoneStateStartupD0Ev @ 315 NONAME
+	_ZThn24_N18CPhoneStateStartupD1Ev @ 316 NONAME
+	_ZThn24_N19CPhoneStateIncomingD0Ev @ 317 NONAME
+	_ZThn24_N19CPhoneStateIncomingD1Ev @ 318 NONAME
+	_ZThn24_N20CPhoneStateCallSetupD0Ev @ 319 NONAME
+	_ZThn24_N20CPhoneStateCallSetupD1Ev @ 320 NONAME
+	_ZThn28_NK11CPhoneState17GetBlockedKeyListEv @ 321 NONAME
+	_ZThn32_N11CPhoneState25HandleNumberEntryClearedLEv @ 322 NONAME
+	_ZThn32_N15CPhoneStateIdle25HandleNumberEntryClearedLEv @ 323 NONAME
+	_ZThn32_N17CPhoneStateInCall25HandleNumberEntryClearedLEv @ 324 NONAME
+	_ZThn32_N19CPhoneStateIncoming25HandleNumberEntryClearedLEv @ 325 NONAME
+	_ZThn32_N20CPhoneStateCallSetup25HandleNumberEntryClearedLEv @ 326 NONAME
+	_ZThn36_NK11CPhoneState11IsKeyLockOnEv @ 327 NONAME
+	_ZThn36_NK11CPhoneState12IsAutoLockOnEv @ 328 NONAME
+	_ZThn4_N11CPhoneState12HandleErrorLERK12TPEErrorInfo @ 329 NONAME
+	_ZThn4_N11CPhoneState25HandlePhoneEngineMessageLEii @ 330 NONAME
+	_ZThn4_N11CPhoneStateD0Ev @ 331 NONAME
+	_ZThn4_N11CPhoneStateD1Ev @ 332 NONAME
+	_ZThn4_N15CPhoneStateIdle25HandlePhoneEngineMessageLEii @ 333 NONAME
+	_ZThn4_N15CPhoneStateIdleD0Ev @ 334 NONAME
+	_ZThn4_N15CPhoneStateIdleD1Ev @ 335 NONAME
+	_ZThn4_N17CPhoneStateInCall25HandlePhoneEngineMessageLEii @ 336 NONAME
+	_ZThn4_N17CPhoneStateInCallD0Ev @ 337 NONAME
+	_ZThn4_N17CPhoneStateInCallD1Ev @ 338 NONAME
+	_ZThn4_N18CPhoneStateMachine11ChangeStateEi @ 339 NONAME
+	_ZThn4_N18CPhoneStateMachine11PhoneEngineEv @ 340 NONAME
+	_ZThn4_N18CPhoneStateMachine12PhoneStorageEv @ 341 NONAME
+	_ZThn4_N18CPhoneStateMachine14SetPhoneEngineEP13MPEPhoneModel @ 342 NONAME
+	_ZThn4_N18CPhoneStateMachine15PhoneEngineInfoEv @ 343 NONAME
+	_ZThn4_N18CPhoneStateMachine18CreatePhoneEngineLER14MEngineMonitor @ 344 NONAME
+	_ZThn4_N18CPhoneStateMachine22SendPhoneEngineMessageEi @ 345 NONAME
+	_ZThn4_N18CPhoneStateMachine5StateEv @ 346 NONAME
+	_ZThn4_N18CPhoneStateMachine9SetCallIdEi @ 347 NONAME
+	_ZThn4_N18CPhoneStateMachineD0Ev @ 348 NONAME
+	_ZThn4_N18CPhoneStateMachineD1Ev @ 349 NONAME
+	_ZThn4_N18CPhoneStateStartup25HandlePhoneEngineMessageLEii @ 350 NONAME
+	_ZThn4_N18CPhoneStateStartupD0Ev @ 351 NONAME
+	_ZThn4_N18CPhoneStateStartupD1Ev @ 352 NONAME
+	_ZThn4_N18CPhoneUIController11HandleErrorERK12TPEErrorInfo @ 353 NONAME
+	_ZThn4_N18CPhoneUIController13HandleMessageEii @ 354 NONAME
+	_ZThn4_N19CPhoneStateIncoming25HandlePhoneEngineMessageLEii @ 355 NONAME
+	_ZThn4_N19CPhoneStateIncomingD0Ev @ 356 NONAME
+	_ZThn4_N19CPhoneStateIncomingD1Ev @ 357 NONAME
+	_ZThn4_N20CPhoneStateCallSetup25HandlePhoneEngineMessageLEii @ 358 NONAME
+	_ZThn4_N20CPhoneStateCallSetupD0Ev @ 359 NONAME
+	_ZThn4_N20CPhoneStateCallSetupD1Ev @ 360 NONAME
+	_ZThn8_N11CPhoneState15HandleKeyEventLERK9TKeyEvent10TEventCode @ 361 NONAME
+	_ZThn8_N11CPhoneState17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 362 NONAME
+	_ZThn8_N11CPhoneState18HandleDtmfKeyToneLERK9TKeyEvent10TEventCode @ 363 NONAME
+	_ZThn8_N11CPhoneState35IsAlphanumericSupportedAndCharInputERK9TKeyEvent @ 364 NONAME
+	_ZThn8_N11CPhoneStateD0Ev @ 365 NONAME
+	_ZThn8_N11CPhoneStateD1Ev @ 366 NONAME
+	_ZThn8_N15CPhoneStateIdle15HandleKeyEventLERK9TKeyEvent10TEventCode @ 367 NONAME
+	_ZThn8_N15CPhoneStateIdle17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 368 NONAME
+	_ZThn8_N15CPhoneStateIdleD0Ev @ 369 NONAME
+	_ZThn8_N15CPhoneStateIdleD1Ev @ 370 NONAME
+	_ZThn8_N17CPhoneStateInCall17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 371 NONAME
+	_ZThn8_N17CPhoneStateInCallD0Ev @ 372 NONAME
+	_ZThn8_N17CPhoneStateInCallD1Ev @ 373 NONAME
+	_ZThn8_N18CPhoneStateStartup15HandleKeyEventLERK9TKeyEvent10TEventCode @ 374 NONAME
+	_ZThn8_N18CPhoneStateStartup17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 375 NONAME
+	_ZThn8_N18CPhoneStateStartup18HandleDtmfKeyToneLERK9TKeyEvent10TEventCode @ 376 NONAME
+	_ZThn8_N18CPhoneStateStartupD0Ev @ 377 NONAME
+	_ZThn8_N18CPhoneStateStartupD1Ev @ 378 NONAME
+	_ZThn8_N18CPhoneUIController15HandleKeyEventLERK9TKeyEvent10TEventCode @ 379 NONAME
+	_ZThn8_N18CPhoneUIControllerD0Ev @ 380 NONAME
+	_ZThn8_N18CPhoneUIControllerD1Ev @ 381 NONAME
+	_ZThn8_N19CPhoneStateIncoming15HandleKeyEventLERK9TKeyEvent10TEventCode @ 382 NONAME
+	_ZThn8_N19CPhoneStateIncoming17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 383 NONAME
+	_ZThn8_N19CPhoneStateIncomingD0Ev @ 384 NONAME
+	_ZThn8_N19CPhoneStateIncomingD1Ev @ 385 NONAME
+	_ZThn8_N20CPhoneStateCallSetup15HandleKeyEventLERK9TKeyEvent10TEventCode @ 386 NONAME
+	_ZThn8_N20CPhoneStateCallSetup17HandleKeyMessageLEN15MPhoneKeyEvents22TPhoneKeyEventMessagesE8TKeyCode @ 387 NONAME
+	_ZThn8_N20CPhoneStateCallSetupD0Ev @ 388 NONAME
+	_ZThn8_N20CPhoneStateCallSetupD1Ev @ 389 NONAME
 
--- a/phoneapp/phoneuicontrol/group/phoneuicontrol.mmp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/group/phoneuicontrol.mmp	Fri Sep 17 08:29:19 2010 +0300
@@ -19,10 +19,7 @@
 #include <platform_paths.hrh>
 
 // Capability assignment.
-// <-- QT PHONE START --> 
 CAPABILITY CAP_GENERAL_DLL
-//CAPABILITY CAP_APPLICATION MultiMediaDD NetworkControl PowerMgmt DRM DiskAdmin
-// <-- QT PHONE END --> 
 
 // Assign Vendor ID.
 VENDORID VID_DEFAULT
@@ -31,14 +28,10 @@
 TARGETTYPE      dll
 UID             0x1000008d  0x101F4D0C
 
-//EXPORTUNFROZEN
-
 SOURCEPATH      ../src
 SOURCE          cphonebtaadisconnecthandler.cpp
 SOURCE          cphonedtmfwaitchartimer.cpp
 SOURCE          cphoneenginehandler.cpp
-
-SOURCE          cphonereconnectquery.cpp
 SOURCE          cphoneremotecontrolhandler.cpp
 SOURCE          cphonestate.cpp
 SOURCE          cphonestatecallsetup.cpp
@@ -61,10 +54,7 @@
 
 
 USERINCLUDE     ../inc
-// <-- QT PHONE START --> 
 USERINCLUDE     ../../phoneuiqtviewadapter/inc
-//USERINCLUDE     ../../phoneuiview/inc
-// <-- QT PHONE END --> 
 USERINCLUDE     ../../phoneuiutils/inc
 USERINCLUDE     ../../phoneui2/srcdata
 USERINCLUDE     ../../phoneuistates/inc
@@ -81,10 +71,7 @@
 LIBRARY         engineinfo.lib
 LIBRARY         ws32.lib 
 LIBRARY         fbscli.lib
-// <-- QT PHONE START --> 
 LIBRARY         phonestringloader.lib
-//LIBRARY         commonengine.lib //StringLoader 
-// <-- QT PHONE END --> 
 LIBRARY         featmgr.lib // FeatureManager
 LIBRARY         connmon.lib // RConnectionMonitor
 LIBRARY         avkon.lib // AknTextUtils
--- a/phoneapp/phoneuicontrol/inc/cphonecallheadermanager.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/inc/cphonecallheadermanager.h	Fri Sep 17 08:29:19 2010 +0300
@@ -132,13 +132,6 @@
                 TPhoneCmdParamCallHeaderData* aCallHeaderData );
         
     public:  // Functions from base class
-        
-        /**
-        * @see MPhoneBubbleManagerUtility.
-        */
-        void SetPhoneNumberAvailabilityL( 
-                const TInt aNumberLength,
-                const TBool aContactInfoAvailable );
 
         /**
         * @see MPhoneBubbleManagerUtility.
--- a/phoneapp/phoneuicontrol/inc/cphonecbamanager.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/inc/cphonecbamanager.h	Fri Sep 17 08:29:19 2010 +0300
@@ -82,6 +82,18 @@
         */
         void SetRingtoneSilencedStatus( const TBool aSilenceStatus );
         
+        /**
+        * Sets the soft reject status
+        * @param aSoftRejectStatus, new status
+        */
+        void SetSoftRejectStatus( TBool aSoftRejectStatus );
+        
+        /**
+        * Returns the soft reject status
+        * @return Soft reject status
+        */
+        TBool SoftRejectStatus();
+        
     private:
         
         /*
@@ -100,6 +112,11 @@
         * @return Resource id of CBA
         */
         TInt GetIncomingCallSilenceCBA( const TBool aSoftRejectActivated ); 
+
+        /**
+        * Sets soft reject flag
+        */
+        void SetSoftRejectDimmedFlag();
         
     private:
     
@@ -125,6 +142,8 @@
         // UpdateIncomingCbaL only
         TBool iRingtoneSilenced;
         
+        // Soft reject status flag
+        TBool iSoftRejectStatus;
     };
 
 
--- a/phoneapp/phoneuicontrol/inc/cphonereconnectquery.h	Thu Sep 02 20:26:16 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,123 +0,0 @@
-/*
-* Copyright (c) 2006-2009 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:
-*     Singleton class for implementing reconnect query.
-*
-*/
-
-
-#ifndef CPHONERECONNECTQUERY_H
-#define CPHONERECONNECTQUERY_H
-
-// INCLUDES
-#include <mcauireconnectqueryobserver.h>
-#include <coemain.h>
-#include "mphonetimer.h"
-
-// FORWARD DECLARATIONS
-class CPhoneTimer;
-
-// CLASS DECLARATION
-
-class CPhoneReconnectQuery : public CCoeStatic, public MPhoneTimer,
-    public MCaUiReconnectQueryObserver
-    {
-    public:
-
-        /**
-         * Returns an instance of this class. When called for the first
-         * time, a new instance is created and returned.  After that,
-         * calling InstanceL returns the same instance that was created
-         * earlier.
-         *
-         * @return A pointer to a CPhoneReconnectQuery object
-         */
-        IMPORT_C static CPhoneReconnectQuery* InstanceL();
-
-        /**
-        * Destructor.
-        */
-        virtual ~CPhoneReconnectQuery();
-
-        /**
-        * This function is called after on timeout.
-        */
-        void HandleTimeOutL();
-
-        /**
-        * Called when MCaUiReconnectQueryObserver has got a key press.
-        *
-        * @param aReconType The reconnect choice of the user.
-        */
-        virtual void OptionSelected( MCaUiReconnectQueryObserver::TCaUiReconType aOption );
-
-        /**
-        * Shows reconnect query.
-        * External DLL is loaded and request is delegated to
-        * the dll.
-        * @param aShowVideo - ETrue to show video option, otherwise EFalse
-        */
-        IMPORT_C void ShowReconnectQueryL( TBool aShowVideo );
-
-        /**
-        * Cancels reconnect query timer.
-        */
-        void CancelReconnectQueryTimer();
-
-        /**
-        * Fetches the information is reconnect query displayed on the
-        * screen or not.
-        * @return ETrue if being displayed otherwise EFalse.
-        */
-        TBool IsDisplayingQuery();
-
-
-    private:
-
-        /**
-         * Default constructor is private because we are using the
-         * singleton design pattern.
-         */
-        CPhoneReconnectQuery();
-
-        /**
-        * Shows number entry and sets number entry CBAs.
-        */
-        void ShowNumberEntryL();
-
-
-    private:
-
-        /**
-        * This timer delays reconnect query to give time to information note
-        */
-        CPhoneTimer* iReconQueryTimer;
-
-        /**
-        * If video call option is needed in reconnect query this is true
-        * otherwise false.
-        */
-        TBool iIncludeVideo;
-
-        /**
-        * ETrue if reconnect query is currently displayed on the screen.
-        * EFalse if not.
-        */
-        TBool iDisplayingQuery;
-
-    };
-
-#endif // CPHONERECONNECTQUERY_H
-
-// End of File
--- a/phoneapp/phoneuicontrol/inc/cphonestate.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/inc/cphonestate.h	Fri Sep 17 08:29:19 2010 +0300
@@ -32,7 +32,6 @@
 class MPhoneState;
 class MPhoneStateMachine;
 class CPhoneCallHeaderManager;
-class CPhoneTimer;
 class TPhoneCmdParamCallHeaderData;
 class MPhoneCustomization;
 class CPhoneNumberEntryManager;
@@ -112,15 +111,6 @@
             TEventCode aEventCode );
 
         /**
-        * Handles key press duration events from the key event handler
-        * @param aCode key event code
-        * @param aKeyPressDuration key press duration
-        */
-        IMPORT_C virtual void HandleKeyPressDurationL(
-            TKeyCode aCode,
-            TTimeIntervalMicroSeconds aKeyPressDuration );
-
-        /**
         * From CEikAppUi. For Idle indicator
         */
         IMPORT_C virtual void HandleSystemEventL(
@@ -151,13 +141,6 @@
         * Indicates when the keylock events
         */
         IMPORT_C virtual void HandleKeyLockEnabled( TBool aKeylockEnabled );
-        
-        /**
-        * Handle environment changes.
-        * @param aChanges environment changes which may be reported by
-        *  a change notifier through the RChangeNotifier interface.
-        */
-        IMPORT_C void HandleEnvironmentChangeL( const TInt aChanges );
 
         /**
         * Handles startup of the phone application
@@ -220,11 +203,6 @@
             const TBool aDivertIndication );
 
         /**
-        * Handles Long hash key press
-        */
-        IMPORT_C void HandleLongHashL();
-
-        /**
         * Checks whether customized dialer view is active,
         * @return ETrue if customized dialer is active
         */
@@ -461,14 +439,7 @@
             TInt aContentCbaResourceId,
             TDes* aDataText,
             TBool aSendKeyEnabled = EFalse );
-
-        /**
-        * Handle numeric key event
-        */
-        IMPORT_C virtual void HandleNumericKeyEventL(
-            const TKeyEvent& aKeyEvent,
-            TEventCode aEventCode );
-
+        
         /**
         * Check if the application needs to be sent to the background
         * @return boolean value indicating that application needs to be
@@ -483,12 +454,6 @@
         IMPORT_C TBool TopAppIsDisplayedL() const;
 
         /**
-        * Capture keys during call notifications (dialing, incoming, waiting)
-        * @param aCaptured ETrue if keys are to be captured
-        */
-        IMPORT_C void CaptureKeysDuringCallNotificationL( TBool aCaptured );
-
-        /**
         * Displays the call termination note, if required
         */
         IMPORT_C void DisplayCallTerminationNoteL();
@@ -527,14 +492,6 @@
         IMPORT_C TPESimState SimState() const;
 
         /**
-        * Starts ALS line change timer.
-        * This should be called after receiving long keypress
-        * which is 0.8 seconds. ALS line change timer ticks
-        * 2.2 seconds before callback is called.
-        */
-        IMPORT_C void StartAlsLineChangeTimerL();
-
-        /**
         * Start show security note
         * This should be called in startup and idle state
         * if sim state not ok
@@ -577,13 +534,6 @@
         IMPORT_C void SetCallHeaderType( TInt aCallHeaderType );
 
         /**
-        * Handles situation when hash key has been kept down long
-        * (long keypress) and the hash character is the only character
-        * in number entry.
-        */
-        IMPORT_C virtual void OnlyHashInNumberEntryL();
-
-        /**
         * Informs view that UI is being updated (call bubble or number editor).
         * EndUiUpdate() must be called when update is done.
         */
@@ -684,16 +634,6 @@
         IMPORT_C void ClearNumberEntryContentCache();
 
         /**
-        * Restores number entry content after dtmf dialer
-        */
-        IMPORT_C void CheckIfRestoreNEContentAfterDtmfDialer();
-
-        /**
-         * Checks if on screen dialer feature is supported.
-         */
-        IMPORT_C TBool IsOnScreenDialerSupported() const;
-
-        /**
          * Returns ETrue if alphanumeric characters are supported.
          * @param aKeyEvent Key event.
          * @return ETrue if alphanumeric chars are supported.
@@ -762,11 +702,6 @@
         void HandleChangedCallDurationL( TInt aCallId );
 
         /**
-        * Update profile display
-        */
-        void UpdateProfileDisplayL();
-
-        /**
         * Sends key down event to the phone engine
         * @param aKeyEvent a key event
         * @param aEventCode key event code
@@ -821,14 +756,6 @@
         TInt GetActiveCallIdL();
 
         /**
-        * Callback function for launching ALS line change dialog
-        * This is called when Als line change timer timeout is
-        * reached which means user has pushed the #-key long enough.
-        * @param aAny - not used
-        */
-        static TInt AlsLineChangeTimerCallbackL( TAny* aAny );
-
-        /**
         * Shows WLAN MAC address note
         */
         void ShowWlanMacAddressL();
@@ -886,11 +813,6 @@
          */
         void HandleSimStateChangedL();
 
-        /**
-         * Checks if key events are allowed to be redirected for further handling
-         */
-        TBool IsKeyEventFurtherProcessedL( const TKeyEvent& aKeyEvent ) const;
-
         /*
          * Checks is given key contains numeric charaters or if customization is used
          * alphanumeir letters
@@ -899,16 +821,6 @@
                 TEventCode aEventCode );
 
         /*
-         * Updates CBA using either customization or resource resolver
-         */
-        void CustomizeCbaForPhoneNumberL();
-
-        /*
-         * Checks if Touch dialer is on in DTMF mode.
-         */
-        TBool IsTouchDTmfDialerOn() const;
-
-        /*
          * Checks if keyevent is from dtmf key and sends it to phone-engine
          */
         void SendDtmfKeyEventL( const TKeyEvent& aKeyEvent,
@@ -951,9 +863,6 @@
 
     protected:
 
-        //Indicates whether onscreen dialer is defined
-        TBool iOnScreenDialer;
-
         /**
         * Customization of functionality according to e.g.
         * call type specific needs.
@@ -974,11 +883,6 @@
         // Bitmap redraw counter
         TInt iBitmapRedrawCounter;
 
-        /**
-        * Timer for ALS line change.
-        */
-        CPhoneTimer* iAlsLineChangeKeyPressTimer;
-
         // Internal variable for EikonEnv to avoid
         // use of static system calls
         CEikonEnv& iEnv;
--- a/phoneapp/phoneuicontrol/inc/cphonestatecallsetup.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/inc/cphonestatecallsetup.h	Fri Sep 17 08:29:19 2010 +0300
@@ -103,9 +103,8 @@
         /**
         * Upadated CBAs
         */
-        IMPORT_C virtual void UpdateCbaL( TInt aResource );    
+        IMPORT_C virtual void UpdateCbaL( TInt aResource );
         
-                
     private:
 
         /**
@@ -121,11 +120,6 @@
         void HandleIdleL( TInt aCallId );
 
         /**
-        * A message handling function for message EPEMessageRemoteTerminated
-        */
-        void HandleRemoteTerminatedL( TInt aCallId );
-        
-        /**
         * Handle EPEMessageAudioOutputChanged
         */
         void HandleAudioOutputChangedL();
@@ -157,14 +151,13 @@
         void PlayKeySpecificDTMF( const TUint aCode );
              
     private:
-                
+        
         /**
         * Special timer for preventing recursive calls
         * which would otherwise occur with multiple
         * wait characters in a DTMF string.
         */
         CPhoneDtmfWaitCharTimer* iDtmfWaitCharTimer;
-         
     };
 
 #endif // CPHONESTATECALLSETUP
--- a/phoneapp/phoneuicontrol/inc/cphonestateidle.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/inc/cphonestateidle.h	Fri Sep 17 08:29:19 2010 +0300
@@ -32,37 +32,36 @@
 */
 class CPhoneStateIdle : public CPhoneState
     {
-    public:  
+    public:
         
-    /** Dial initiation method. */
-    enum TDialInitiationMethod
-        {
-        /** Dial initiation method unknown. */
-        EDialMethodUnknown          = 0,
-        /** Dial is initiated by explicit call type selection from menu.*/
-        EDialMethodMenuSelection    = 1,
-        /** Dial is initiated by send command. */
-        EDialMethodSendCommand      = 2,
-        /** Dial is initiated by one key dialing. */
-        EDialMethodOneKeyDialing    = 3
-
-        };
+        /** Dial initiation method. */
+        enum TDialInitiationMethod
+            {
+            /** Dial initiation method unknown. */
+            EDialMethodUnknown          = 0,
+            /** Dial is initiated by explicit call type selection from menu.*/
+            EDialMethodMenuSelection    = 1,
+            /** Dial is initiated by send command. */
+            EDialMethodSendCommand      = 2,
+            /** Dial is initiated by one key dialing. */
+            EDialMethodOneKeyDialing    = 3
+            };
     
-    /**
-    * Phone number types
-    *
-    * EPhoneNumberTypeNotFound - phone number's type was not found
-    * EPhoneNumberTypeCS - CS call can be made to the phone number
-    * EPhoneNumberTypeVideo - video call can be made to the phone number
-    * EPhoneNumberTypeVoip - VoIP call can be made to the address.
-    */
-    enum TPhoneNumberType
-        {
-        EPhoneNumberTypeNotFound = -1,
-        EPhoneNumberTypeCS = 0,
-        EPhoneNumberTypeVideo,
-        EPhoneNumberTypeVoip
-        };
+        /**
+        * Phone number types
+        *
+        * EPhoneNumberTypeNotFound - phone number's type was not found
+        * EPhoneNumberTypeCS - CS call can be made to the phone number
+        * EPhoneNumberTypeVideo - video call can be made to the phone number
+        * EPhoneNumberTypeVoip - VoIP call can be made to the address.
+        */
+        enum TPhoneNumberType
+            {
+            EPhoneNumberTypeNotFound = -1,
+            EPhoneNumberTypeCS = 0,
+            EPhoneNumberTypeVideo,
+            EPhoneNumberTypeVoip
+            };
     
         /**
         * Destructor.
@@ -172,14 +171,7 @@
         * @param None
         */
         IMPORT_C void DialVoiceCallL();
-
-        /**
-        * Handles situation when hash key has been kept down long
-        * (long keypress) and the hash character is the only character
-        * in number entry.
-        */
-        IMPORT_C virtual void OnlyHashInNumberEntryL();
-
+        
         /**
         * A message handling function for EPEMessageDialling
         * @param aCallId: the call id of the call
@@ -228,19 +220,11 @@
         void HandleEndKeyPressL( TPhoneKeyEventMessages aMessage );
         
         /**
-        * Changes manner mode.
-        * Switches from any profile to the Silent profile or from the
-        * Silent profile to the General profile.
-        */
-        void ChangeMannerModeL();
-        
-        /**
         * Checks if MC/PCSuite restore ongoing.
         * @param none.
         * @return ETrue if ongoing.
         */
         TBool RestoreOngoing();
-        
 
         void HandleVoiceCallCommandL();
          
--- a/phoneapp/phoneuicontrol/inc/cphonestateincall.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/inc/cphonestateincall.h	Fri Sep 17 08:29:19 2010 +0300
@@ -128,13 +128,7 @@
         /**
         * Upadated CBAs
         */
-        IMPORT_C virtual void UpdateCbaL( TInt aResource );     
-
-        /**
-        * Close all dtmf dialogs
-        */
-        IMPORT_C void CloseDtmfQueryL();
-
+        IMPORT_C virtual void UpdateCbaL( TInt aResource );
     
     private: // New functions
 
--- a/phoneapp/phoneuicontrol/inc/cphonestateincoming.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/inc/cphonestateincoming.h	Fri Sep 17 08:29:19 2010 +0300
@@ -58,10 +58,6 @@
             const TKeyEvent& aKeyEvent,
             TEventCode aEventCode );
 
-        IMPORT_C virtual void HandleKeyPressDurationL(
-            TKeyCode aCode,
-            TTimeIntervalMicroSeconds aKeyPressDuration );
-
         /**
         * A message handling function for Phone Engine messages
         * @param aMessage Message from Phone Engine
--- a/phoneapp/phoneuicontrol/inc/cphonesystemeventhandler.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/inc/cphonesystemeventhandler.h	Fri Sep 17 08:29:19 2010 +0300
@@ -61,8 +61,6 @@
 
         void HandleIdleForegroundEventL();
 
-        void HandleEnvironmentChangeL( const TInt aChanges );
-
         void HandlePhoneStartupL();
         
         void HandlePhoneFocusLostEventL();
--- a/phoneapp/phoneuicontrol/inc/cphoneuicontroller.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/inc/cphoneuicontroller.h	Fri Sep 17 08:29:19 2010 +0300
@@ -111,13 +111,6 @@
         IMPORT_C virtual void HandleIdleForegroundEventL();
 
         /**
-        * Handle environment changes.
-        * @param aChanges environment changes which may be reported by
-        *  a change notifier through the RChangeNotifier interface.
-        */
-        IMPORT_C void HandleEnvironmentChangeL( const TInt aChanges );
-
-        /**
         * Handles startup of the phone application 
         */
         IMPORT_C void HandlePhoneStartupL();
--- a/phoneapp/phoneuicontrol/inc/mphonecallheadermanagerutility.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/inc/mphonecallheadermanagerutility.h	Fri Sep 17 08:29:19 2010 +0300
@@ -29,16 +29,6 @@
 class MPhoneCallHeaderManagerUtility
     {
     public:
-        
-        /**
-        * Concludes does the engine have information of the
-        * phone number. This information is then send to the view.
-        * @param aNumberLength - phone number's length
-        * @param aContactInfoAvailable - is contact's info available
-        */
-        virtual void SetPhoneNumberAvailabilityL(
-                const TInt aNumberLength,
-                const TBool aContactInfoAvailable ) = 0;
 
         /**
         * Loads strings for displaying in call header.
--- a/phoneapp/phoneuicontrol/inc/mphonekeyevents.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/inc/mphonekeyevents.h	Fri Sep 17 08:29:19 2010 +0300
@@ -63,12 +63,6 @@
             const TKeyEvent& aKeyEvent,
             TEventCode aEventCode ) = 0;
 
-        virtual void HandleKeyPressDurationL(
-            TKeyCode aCode,
-            TTimeIntervalMicroSeconds aKeyPressDuration ) = 0;
-            
-        virtual void HandleLongHashL() = 0;
-        
         virtual void HandleDtmfKeyToneL( const TKeyEvent& aKeyEvent,
                         TEventCode aEventCode ) = 0;
         
--- a/phoneapp/phoneuicontrol/inc/mphonesystemeventhandler.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/inc/mphonesystemeventhandler.h	Fri Sep 17 08:29:19 2010 +0300
@@ -64,13 +64,6 @@
         virtual void HandlePhoneFocusLostEventL() = 0;
 
         /**
-        * Handle environment changes.
-        * @param aChanges environment changes which may be reported by
-        *  a change notifier through the RChangeNotifier interface.
-        */
-        virtual void HandleEnvironmentChangeL( const TInt aChanges ) = 0;
-
-        /**
         * Handles startup of the phone application 
         */
         virtual void HandlePhoneStartupL() = 0;
--- a/phoneapp/phoneuicontrol/inc/mphonesystemevents.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/inc/mphonesystemevents.h	Fri Sep 17 08:29:19 2010 +0300
@@ -68,13 +68,6 @@
         * Indicates when the keylock events
         */
         virtual void HandleKeyLockEnabled( TBool aKeylockEnabled ) = 0;
-        
-        /**
-        * Handle environment changes.
-        * @param aChanges environment changes which may be reported by
-        *  a change notifier through the RChangeNotifier interface.
-        */
-        virtual void HandleEnvironmentChangeL( const TInt aChanges ) = 0;
 
         /**
         * Handles startup of the phone application 
--- a/phoneapp/phoneuicontrol/inc/tphonecallheaderparam.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/inc/tphonecallheaderparam.h	Fri Sep 17 08:29:19 2010 +0300
@@ -216,17 +216,7 @@
         */
         void SetCliParamatersL(
                 const TInt aCallId, 
-                TPhoneCmdParamCallHeaderData* aCallHeaderData );  
-        
-        /**
-        * Concludes does the engine have information of the
-        * phone number. This information is then send to the view.
-        * @param aNumberLength - phone number's length
-        * @param aContactInfoAvailable - is contact's info available
-        */
-        void SetPhoneNumberAvailabilityL( 
-                const TInt aNumberLength,
-                const TBool aContactInfoAvailable );
+                TPhoneCmdParamCallHeaderData* aCallHeaderData );
                 
     private:
         
--- a/phoneapp/phoneuicontrol/src/cphoneaccessorybthandler.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/src/cphoneaccessorybthandler.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -101,46 +101,33 @@
 void CPhoneAccessoryBTHandler::ShowBTAddressL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneAccessoryBTHandler::ShowBTAddressL( ) ");
-    if ( FeatureManager::FeatureSupported( KFeatureIdOnScreenDialer ))
-        {
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewClearNumberEntryContent );                      
-        }
-    else
-        {
-        // Remove number entry from screen
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );   
-        }
-     
-    // Get BT address
+    iViewCommandHandle->ExecuteCommandL( EPhoneViewClearNumberEntryContent );
+    
     TBuf<KPhoneBtAddressTextLength> addressBuffer;
-
-    CPhoneCenRepProxy::Instance()->GetString(             
+    CPhoneCenRepProxy::Instance()->GetString( 
         KCRUidBluetoothLocalDeviceAddress,
         KBTLocalDeviceAddress,
         addressBuffer );
-    
     // BT address was empty. BT is not turned on.
     if ( addressBuffer.Length() == 0 )
         {
-        __PHONELOG( EBasic, EPhoneControl, "CPhoneAccessoryBTHandler::ShowBTAddressL.NoAddress" );
+        __PHONELOG( EBasic, 
+                EPhoneControl, 
+                "CPhoneAccessoryBTHandler::ShowBTAddressL.NoAddress" );
         }
-
     // So we got the address. Now we need the localised text:
     HBufC* buf = StringLoader::LoadLC( 
         CPhoneMainResourceResolver::Instance()->
         ResolveResourceID( EPhonePhoneBtDevAddress ) , 
         addressBuffer );
-        
     TPhoneCmdParamNote noteParam;
     noteParam.SetType( EPhoneNoteCustom );
     noteParam.SetResourceId( CPhoneMainResourceResolver::Instance()->
         ResolveResourceID( EPhoneInformationWaitNote ) );
     noteParam.SetText( *buf );
-
-    // Display note
+    
     iViewCommandHandle->ExecuteCommandL( EPhoneViewShowNote, &noteParam );
-    
-    CleanupStack::PopAndDestroy( buf );               
+    CleanupStack::PopAndDestroy( buf );
     }    
 
 // -----------------------------------------------------------
@@ -152,21 +139,13 @@
 void CPhoneAccessoryBTHandler::ShowBTLoopbackL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneAccessoryBTHandler::ShowBTLoopbackL( ) ");
-    if ( FeatureManager::FeatureSupported( KFeatureIdOnScreenDialer ))
-        {
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewClearNumberEntryContent );                      
-        }
-    else
-        {
-        // Remove number entry from screen
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );   
-        }
+    iViewCommandHandle->ExecuteCommandL( EPhoneViewClearNumberEntryContent );
+    // Get current status of BT loopback
     TInt btLoopback( EBTDutOff );
-
-    // Get current status of BT loopback
-    TInt err = RProperty::Get( KPSUidBluetoothDutMode, KBTDutEnabled, 
-        btLoopback );
-
+    TInt err = RProperty::Get( 
+            KPSUidBluetoothDutMode, 
+            KBTDutEnabled, 
+            btLoopback );
     // If loopback was disabled enable it. According to current knowledge
     // disabling BT test loop is not possible. If error getting the value
     // assume that it is disabled.
@@ -181,15 +160,12 @@
             btLoopback = EBTDutOn;
             }
         }
-
+    // Get localised text according to setting status
     HBufC* btLoopbackString( NULL );
-
-    // Get localised text according to setting status
     btLoopbackString = StringLoader::LoadLC( 
         CPhoneMainResourceResolver::Instance()->
         ResolveResourceID( btLoopback == EBTDutOn ? 
         EPhoneBtLoopbackEnabled : EPhoneBtLoopbackDisabled ) );
-
     TPhoneCmdParamNote noteParam;
     noteParam.SetType( EPhoneNoteCustom );
     noteParam.SetResourceId( CPhoneMainResourceResolver::Instance()->
@@ -197,9 +173,7 @@
     noteParam.SetText( *btLoopbackString );
     noteParam.SetTone( CAknNoteDialog::EConfirmationTone );
 
-    // Display note
     iViewCommandHandle->ExecuteCommandL( EPhoneViewShowNote, &noteParam );
-
     CleanupStack::PopAndDestroy( btLoopbackString );
     }
 
@@ -214,12 +188,9 @@
     HBufC* buf = StringLoader::LoadLC( 
             CPhoneMainResourceResolver::Instance()->
             ResolveResourceID( EPhoneInfoBTAccActivated ) );
-    
     TPhoneCmdParamNote noteParam;
     noteParam.SetType( EPhoneNoteConfirmation );
     noteParam.SetText( *buf );
-
-    // Display note
     iViewCommandHandle->ExecuteCommandL( EPhoneViewShowNote, &noteParam );
     CleanupStack::PopAndDestroy( buf );
     }
@@ -232,26 +203,17 @@
         TBool aHandsfreeMode, TPEAudioOutput aAudioOutput )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneAccessoryBTHandler::DoSetHandsfreeModeL( ) ");
-    __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(), 
-        Panic( EPhoneCtrlInvariant ));
- 
-    TBool allowed;
+    __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(), Panic( EPhoneCtrlInvariant ));
+    TBool allowed(EFalse);
     // Only toggle the handsfree mode if there is no wired accessory connected
     if( iStateMachine->PhoneEngineInfo()->AudioOutput() != EPEWiredAudioAccessory )
         {
-        TBool showNote = aHandsfreeMode || 
-            !FeatureManager::FeatureSupported( KFeatureIdTouchCallHandling );
-
-        iStateMachine->PhoneEngineInfo()->SetAudioOutputCommand( 
-            aAudioOutput, showNote );
-        iStateMachine->SendPhoneEngineMessage( 
-            MPEPhoneModel::EPEMessageSetAudioOutput );
+        iStateMachine->PhoneEngineInfo()->
+                SetAudioOutputCommand( aAudioOutput, aHandsfreeMode );
+        iStateMachine->
+                SendPhoneEngineMessage( MPEPhoneModel::EPEMessageSetAudioOutput );
         allowed = ETrue; 
         }
-    else
-        {
-        allowed = EFalse;   
-        }
     return allowed;
     }
 
--- a/phoneapp/phoneuicontrol/src/cphonecallheadermanager.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/src/cphonecallheadermanager.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -172,7 +172,6 @@
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneCallHeaderManager::DisplayHeaderForCallComingInL() ");
     __ASSERT_DEBUG( iStateMachine.PhoneEngineInfo(), Panic( EPhoneCtrlInvariant ) );
     TPhoneCmdParamCallHeaderData callHeaderParam;
-    
     iCallHeaderParam->SetIncomingCallHeaderParamsL( 
             aCallId, 
             aWaitingCall, 
@@ -292,21 +291,7 @@
 void CPhoneCallHeaderManager::SetDivertIndication( const TBool aDivertIndication )
     {
     __LOGMETHODSTARTEND( EPhoneControl, "CPhoneCallHeaderManager::SetDivertIndication()");
-    iCallHeaderParam->SetDivertIndication( aDivertIndication );           
-    }
-
-// ---------------------------------------------------------------------------
-// CPhoneCallHeaderManager::SetPhoneNumberAvailabilityL
-// ---------------------------------------------------------------------------
-//
-void CPhoneCallHeaderManager::SetPhoneNumberAvailabilityL( 
-        const TInt /*aNumberLength*/,
-        const TBool /*aContactInfoAvailable*/ )
-    {
-    __LOGMETHODSTARTEND( 
-            EPhoneControl, 
-            "CPhoneCallHeaderManager::SetPhoneNumberAvailabilityL() ");
-     
+    iCallHeaderParam->SetDivertIndication( aDivertIndication );
     }
 
 // -----------------------------------------------------------
--- a/phoneapp/phoneuicontrol/src/cphonecbamanager.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/src/cphonecbamanager.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -52,7 +52,8 @@
          MPhoneStateMachine& aStateMachine )
    : iState ( aState ), 
      iViewCommandHandle ( aViewCommandHandle ),
-     iStateMachine ( aStateMachine )
+     iStateMachine ( aStateMachine ),
+     iSoftRejectStatus ( ETrue )
     {
     __LOGMETHODSTARTEND( EPhoneControl, "CPhoneCbaManager::CPhoneCbaManager() ");
     }
@@ -118,75 +119,23 @@
     btParam.SetBoolean( audioOutput == EPEBTAudioAccessory );        
     iViewCommandHandle.ExecuteCommand(EPhoneViewSetBlueToothFlag,&btParam);
 
+    SetSoftRejectDimmedFlag();
+    
     TPhoneCmdParamBoolean btAvailableParam;
     btAvailableParam.SetBoolean( btAvailable );        
     iViewCommandHandle.ExecuteCommand(
             EPhoneViewSetBluetoothAvailableFlag,&btAvailableParam);
-    
-    // Call setup cases
-    if ( EPhoneCallHandlingCallSetupCBA == aResource )
-        {
-        if ( !FeatureManager::FeatureSupported( KFeatureIdTouchCallHandling) )
-            {
-            if ( audioOutput == EPELoudspeaker )
-                {
-                resourceId = EPhoneCallHandlingCallSetupToHandsetCBA;
-                }
-            else if ( audioOutput == EPEHandset )
-                {
-                resourceId = EPhoneCallHandlingCallSetupToIhfCBA;
-                }
-            }
-        }
-
-    // Is numberentry visible
-    else if ( iState->IsNumberEntryUsedL() )
-        {
-        if ( iState->IsAutoLockOn() || !(iState->IsSimOk()) )
-            {
-            resourceId = EPhoneEmptyBackCBA;
-            }
-        else
-            {
-            TPhoneCmdParamInteger activeCallCount;
-            iViewCommandHandle.ExecuteCommandL(
-                    EPhoneViewGetCountOfActiveCalls, &activeCallCount );
-            
-            TPhoneCmdParamCallStateData callStateData;
-            callStateData.SetCallState( EPEStateRinging );
-            iViewCommandHandle.HandleCommandL(
-                    EPhoneViewGetCallIdByState, &callStateData );
-            
-            TInt incomingCall = callStateData.CallId();
-
-            if( activeCallCount.Integer() == ENoActiveCalls )
-                {
-                resourceId = EPhoneNumberAcqCBA;
-                }
-            else if ( activeCallCount.Integer() > ENoActiveCalls &&  
-                      incomingCall > KErrNotFound )
-                {
-                resourceId = EPhoneCallHandlingCallWaitingCBA;
-                }
-            else
-                {
-                resourceId = EPhoneInCallNumberAcqCBA;
-                }
-            }
-        }
 
     // Check is Audio muted
-    else if ( iStateMachine.PhoneEngineInfo()->AudioMute() )
+    if ( iStateMachine.PhoneEngineInfo()->AudioMute() )
         {
         resourceId = EPhoneCallHandlingInCallUnmuteCBA;
         }
-
     // Multicall swap
     else if ( EPhoneCallHandlingNewCallSwapCBA == aResource )
         {
         resourceId = EPhoneCallHandlingNewCallSwapCBA;
         }
-
     // Call waiting cases
     else if ( EPhoneCallHandlingCallWaitingCBA == aResource )
         {
@@ -206,13 +155,11 @@
                 }
             }
         }
-
     // Check is call in hold
     else if ( hold.Boolean() )
         {
         resourceId = EPhoneCallHandlingInCallUnholdCBA;
         }
-
     // Is BT accessory connected
     else if ( audioOutput == EPEBTAudioAccessory &&
               IsVoiceCallAlertingOrActiveL() &&
@@ -220,13 +167,11 @@
         {
         resourceId = EPhoneCallHandlingInCallHandsetCBA;
         }
-
     else if ( audioOutput == EPEWiredAudioAccessory ||
               coverHideSendEndKey || iState->IsSwivelClosed() )
         {
         resourceId = EPhoneCallHandlingInCallNoIhfCBA;
         }
-
     // Check BT availability
     else if ( audioOutput == EPELoudspeaker )
         {
@@ -243,7 +188,6 @@
         {
         resourceId = EPhoneCallHandlingInCallBtaaCBA;
         }
-
     SetCbaL( resourceId );
     }
 
@@ -254,7 +198,6 @@
 EXPORT_C void CPhoneCbaManager::UpdateIncomingCbaL( TInt aCallId )
     {
     __LOGMETHODSTARTEND(EPhoneControl,"CPhoneCbaManager::UpdateIncomingCbaL()" );
-
     const TBool coverHideSendEndKey =
         CPhoneCenRepProxy::Instance()->IsTelephonyFeatureSupported(
             KTelephonyLVFlagCoverHideSendEndKey );
@@ -267,14 +210,19 @@
               ( ringingType == EProfileRingingTypeBeepOnce ));
 
     // Update soft reject flag
-    TBool softRejectActivated( ETrue );
+    iSoftRejectStatus = ETrue;
     // VoIP calls do not support sms sending
     if ( iStateMachine.PhoneEngineInfo()->CallType( aCallId ) == EPECallTypeVoIP 
         || iStateMachine.PhoneEngineInfo()->RemotePhoneNumber( aCallId ).Length() == 0 )
         {
-        softRejectActivated = EFalse;
+        iSoftRejectStatus = EFalse;
         }
-
+    
+    TPhoneCmdParamBoolean dimSoftRejectParam;
+    dimSoftRejectParam.SetBoolean( !iSoftRejectStatus );        
+    iViewCommandHandle.ExecuteCommand(
+            EPhoneViewSetSoftRejectDimmed, &dimSoftRejectParam );
+    
     TInt incomingCbaResourceId;
 
     if ( iState->IsSwivelClosed() )
@@ -288,7 +236,6 @@
             incomingCbaResourceId = EPhoneCallHandlingIncomingSwivelClosedCBA;
             }
         }
-
     else if ( coverHideSendEndKey )
         {
         if ( callIsAlerting )
@@ -296,7 +243,7 @@
             // Set CBA to Options..Silence
             incomingCbaResourceId = EPhoneCallHandlingIncomingSliderCBA;
             }
-        else if ( softRejectActivated )
+        else if ( iSoftRejectStatus )
             {
             // Set CBA for soft reject
             incomingCbaResourceId = EPhoneCallHandlingIncomingSoftRejectSliderCBA;
@@ -307,14 +254,13 @@
             incomingCbaResourceId = EPhoneCallHandlingIncomingSilentSliderCBA;
             }
         }
-
     else
         {
         if ( callIsAlerting )
             {
-            incomingCbaResourceId = GetIncomingCallSilenceCBA( softRejectActivated );
+            incomingCbaResourceId = GetIncomingCallSilenceCBA( iSoftRejectStatus );
             }
-        else if ( softRejectActivated )
+        else if ( iSoftRejectStatus )
             {
             // Set CBA for soft reject
             incomingCbaResourceId = EPhoneCallHandlingIncomingSoftRejectCBA;
@@ -324,7 +270,6 @@
             incomingCbaResourceId = EPhoneCallHandlingIncomingRejectCBA;
             }
         }
-
     SetCbaL( incomingCbaResourceId );
     }
 
@@ -335,10 +280,14 @@
 EXPORT_C void CPhoneCbaManager::SetCbaL( TInt aResource )
     {
     __LOGMETHODSTARTEND(EPhoneControl,"CPhoneCbaManager::SetCbaL()" );
-
     __PHONELOG1( EBasic, EPhoneControl,
             "CPhoneCbaManager::SetCbaL : %d",aResource );
-
+    if ( EPhoneCallHandlingIncomingRejectCBA == aResource ||
+         EPhoneCallHandlingIncomingSoftRejectCBA == aResource )
+        {
+        SetSoftRejectDimmedFlag();
+        }
+    
     TPhoneCmdParamInteger integerParam;
     integerParam.SetInteger(
         CPhoneMainResourceResolver::Instance()->ResolveResourceID(
@@ -354,7 +303,6 @@
 void CPhoneCbaManager::UpdateCbaSwivelStateChangedL()
     {
     __LOGMETHODSTARTEND(EPhoneControl,"CPhoneCbaManager::UpdateCbaSwivelStateChangedL()" );
-
     TPhoneCmdParamCallStateData callStateData;
     callStateData.SetCallState( EPEStateRinging );
     iViewCommandHandle.HandleCommandL(
@@ -391,7 +339,6 @@
     __LOGMETHODSTARTEND( EPhoneControl,
         "CPhoneCbaManager::IsVoiceCallAlertingOrActiveL()" );
     TBool retVal = EFalse;
-
     // Fetch alerting call's id from view
     TPhoneCmdParamCallStateData callStateData;
     callStateData.SetCallState( EPEStateConnecting );
@@ -402,7 +349,6 @@
         {
         TPECallType type = iStateMachine.PhoneEngineInfo()->CallType(
             callStateData.CallId() );
-
         if ( EPECallTypeCSVoice == type || EPECallTypeVoIP == type )
             {
             retVal = ETrue;
@@ -415,7 +361,6 @@
         callStateData.SetCallState( EPEStateConnected );
         iViewCommandHandle.HandleCommandL(
             EPhoneViewGetCallIdByState, &callStateData );
-
         if ( callStateData.CallId() > KErrNotFound )
             {
             TPECallType type = iStateMachine.PhoneEngineInfo()->CallType(
@@ -447,6 +392,31 @@
     }
 
 // -----------------------------------------------------------
+// CPhoneCbaManager::SetSoftRejectStatus
+// -----------------------------------------------------------
+//
+void CPhoneCbaManager::SetSoftRejectStatus( TBool aSoftRejectStatus )
+    {
+    __LOGMETHODSTARTEND(EPhoneControl, "CPhoneCbaManager::SetSoftRejectStatus ()" );
+    // Set the internal TBool variable
+    iSoftRejectStatus = aSoftRejectStatus;
+    __PHONELOG1( 
+            EBasic, 
+            EPhoneControl, 
+            "CPhoneCbaManager::SetSoftRejectStatus - iSoftRejectStatus =%d", 
+            iSoftRejectStatus  );
+    }
+
+// -----------------------------------------------------------
+// CPhoneCbaManager::SoftRejectStatus
+// -----------------------------------------------------------
+//
+TBool CPhoneCbaManager::SoftRejectStatus()
+    {
+    return iSoftRejectStatus;
+    }
+
+// -----------------------------------------------------------
 // CPhoneCbaManager::GetIncomingCallSilenceCBA
 // -----------------------------------------------------------
 //
@@ -454,10 +424,35 @@
         const TBool /*aSoftRejectActivated*/ )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneCbaManager::GetIncomingCallSilenceCBA ()" );
-    TInt ret = EPhoneCallHandlingIncomingCBA;
-    return ret;
+    return EPhoneCallHandlingIncomingCBA;
     }
 
-// ======== LOCAL FUNCTIONS ========
+// -----------------------------------------------------------
+// CPhoneCbaManager::SetSoftRejectDimmedFlag
+// -----------------------------------------------------------
+//
+void CPhoneCbaManager::SetSoftRejectDimmedFlag()
+    {
+    __LOGMETHODSTARTEND(EPhoneControl, "CPhoneCbaManager::GetIncomingCallSilenceCBA ()" );
+    TPhoneCmdParamCallStateData callStateData;
+    callStateData.SetCallState( EPEStateRinging );
+    iViewCommandHandle.HandleCommandL(
+        EPhoneViewGetCallIdByState, &callStateData );
+    TPhoneCmdParamBoolean dimSoftRejectParam;
+    if ( callStateData.CallId() > KErrNotFound )
+        {
+        TBool privateNumber = iStateMachine.PhoneEngineInfo()->
+                RemotePhoneNumber( callStateData.CallId() ).Length() == 0;
+        
+        dimSoftRejectParam.SetBoolean( privateNumber || !iSoftRejectStatus );        
+        }
+    else
+        {
+        iSoftRejectStatus = ETrue;
+        dimSoftRejectParam.SetBoolean( EFalse );
+        }
+    iViewCommandHandle.ExecuteCommand(
+            EPhoneViewSetSoftRejectDimmed, &dimSoftRejectParam );
+    }
 
 
--- a/phoneapp/phoneuicontrol/src/cphonenumberentrymanager.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/src/cphonenumberentrymanager.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -231,9 +231,8 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneNumberEntryManager::IsValidAlphaNumericKey( ) ");
     TBool ret(EFalse);
-    const TBool numericKeyEntered( CPhoneKeys::IsNumericKey(
-          aKeyEvent, aEventCode ) );
-
+    const TBool numericKeyEntered( 
+            CPhoneKeys::IsNumericKey( aKeyEvent, aEventCode ) );
     // a numeric key (1,2,3,4,6,7,8,9,0,+,*,p,w )
     // or
     // a letter from fullscreen qwerty, miniqwerty or handwriting
@@ -243,7 +242,6 @@
         {
         ret= ETrue;
         }
-
     return ret;
     }
 
@@ -284,6 +282,3 @@
     iViewCommandHandle.ExecuteCommandL( EPhoneViewClearNumberEntryContent );
     }
 
-
-
-
--- a/phoneapp/phoneuicontrol/src/cphonereconnectquery.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,180 +0,0 @@
-/*
-* Copyright (c) 2006-2009 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: CPhoneReconnectQuery implementation.
-*
-*/
-
-
-// INCLUDE FILES
-#include <mpeengineinfo.h>
-#include "cphonereconnectquery.h"
-#include "phoneconstants.h"
-#include "phonelogger.h"
-#include "phonerssbase.h"
-#include "cphonetimer.h"
-#include "cphonestatehandle.h"
-#include "tphonecmdparamboolean.h"
-#include "tphonecmdparaminteger.h"
-#include "cphonemainresourceresolver.h"
-
-// ================= MEMBER FUNCTIONS =======================
-
-// -----------------------------------------------------------------------------
-// CPhoneReconnectQuery::CPhoneReconnectQuery
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// -----------------------------------------------------------------------------
-//
-CPhoneReconnectQuery::CPhoneReconnectQuery() : CCoeStatic( KUidReconnectQuerySingleton ),
-    iReconQueryTimer ( NULL ),
-    iIncludeVideo( EFalse )
-    {
-    }
-
-// Destructor
-CPhoneReconnectQuery::~CPhoneReconnectQuery()
-    {
-    CancelReconnectQueryTimer();
-    }
-
-// ---------------------------------------------------------
-// CPhoneReconnectQuery::InstanceL
-// (other items were commented in a header).
-// ---------------------------------------------------------
-//
-EXPORT_C CPhoneReconnectQuery* CPhoneReconnectQuery::InstanceL()
-    {
-    __LOGMETHODSTARTEND( EPhoneControl, "CPhoneReconnectQuery::InstanceL( ) ");
-    CPhoneReconnectQuery* instance = static_cast<CPhoneReconnectQuery*>(
-        CCoeEnv::Static( KUidReconnectQuerySingleton ) );
-    if ( !instance )
-        {
-        instance = new ( ELeave ) CPhoneReconnectQuery;
-        }
-    return instance;
-    }
-
-// ---------------------------------------------------------
-// CPhoneReconnectQuery::CancelReconnectQueryTimer
-// ---------------------------------------------------------
-//
-void CPhoneReconnectQuery::CancelReconnectQueryTimer()
-    {
-    __LOGMETHODSTARTEND( EPhoneControl, "CPhoneReconnectQuery::CancelReconnectQueryTimer( ) ");
-    if( iReconQueryTimer && iReconQueryTimer->IsActive() )
-        {
-        iReconQueryTimer->CancelTimer();
-        }
-    delete iReconQueryTimer;
-    iReconQueryTimer = NULL;
-    }
-
-// -----------------------------------------------------------
-// CPhoneReconnectQuery::ShowReconnectQueryL
-// -----------------------------------------------------------
-//
-EXPORT_C void CPhoneReconnectQuery::ShowReconnectQueryL( TBool aShowVideo )
-    {
-    __LOGMETHODSTARTEND( EPhoneControl, "CPhoneReconnectQuery::ShowReconnectQueryL( ) ");
-    iIncludeVideo = aShowVideo;
-    if( !iReconQueryTimer )
-        {
-        iReconQueryTimer = CPhoneTimer::NewL();
-        }
-
-    iReconQueryTimer->After( KInformationNoteDisplayTime, this );
-    }
-
-// -----------------------------------------------------------
-// CPhoneReconnectQuery::HandleTimeOutL
-// -----------------------------------------------------------
-//
-void CPhoneReconnectQuery::HandleTimeOutL()
-    {
-    __LOGMETHODSTARTEND( EPhoneControl, "CPhoneReconnectQuery::HandleTimeOutL( ) ");
-    }
-
-// -----------------------------------------------------------
-// CPhoneReconnectQuery::OptionSelected
-// -----------------------------------------------------------
-//
-void CPhoneReconnectQuery::OptionSelected(
-    MCaUiReconnectQueryObserver::TCaUiReconType aReconType )
-    {
-    __LOGMETHODSTARTEND( EPhoneControl,
-        "CPhoneReconnectQuery::HandleReconConfQueryResultL( ) ");
-    __PHONELOG1( EBasic, EPhoneControl,
-        "CPhoneReconnectQuery::HandleReconConfQueryResultL aReconType = %d",
-        aReconType );
-
-    iDisplayingQuery = EFalse;
-
-    switch( aReconType )
-        {
-        case ECallUiReconTypeVoice:
-            CPhoneStateHandle::Instance()->StateMachine()->PhoneEngine()
-                ->EngineInfo()->SetCallTypeCommand( EPECallTypeCSVoice );
-            CPhoneStateHandle::Instance()->StateMachine()->PhoneEngine()
-                ->HandleMessage( MPEPhoneModel::EPEMessageDial );
-            break;
-
-        case ECallUiReconTypeVideo:
-            CPhoneStateHandle::Instance()->StateMachine()->PhoneEngine()
-                ->EngineInfo()->SetCallTypeCommand( EPECallTypeVideo );
-            CPhoneStateHandle::Instance()->StateMachine()->PhoneEngine()
-                ->HandleMessage( MPEPhoneModel::EPEMessageDial );
-            break;
-
-        case ECallUiReconTypeMsg:
-            // CallUi launches message editor
-            break;
-
-        default:
-            // Do nothing
-            break;
-        }
-    }
-
-// -----------------------------------------------------------
-// CPhoneReconnectQuery::ShowNumberEntryL
-// -----------------------------------------------------------
-//
-void CPhoneReconnectQuery::ShowNumberEntryL()
-    {
-    __LOGMETHODSTARTEND( EPhoneControl, "CPhoneReconnectQuery::ShowNumberEntryL( ) ");
-    // Show number entry
-    TPhoneCmdParamBoolean booleanParam;
-    booleanParam.SetBoolean( ETrue );
-    CPhoneStateHandle::Instance()->ViewCommandHandle()->
-        ExecuteCommandL( EPhoneViewSetNumberEntryVisible, &booleanParam );
-
-    // Set Number Entry CBA
-    TPhoneCmdParamInteger integerParam;
-    integerParam.SetInteger( CPhoneMainResourceResolver::Instance()->
-        ResolveResourceID( EPhoneNumberAcqCBA ) );
-    CPhoneStateHandle::Instance()->ViewCommandHandle()->
-        ExecuteCommandL( EPhoneViewUpdateCba, &integerParam );
-    }
-
-// -----------------------------------------------------------
-// CPhoneReconnectQuery::IsDisplayingQuery
-// -----------------------------------------------------------
-//
-TBool CPhoneReconnectQuery::IsDisplayingQuery()
-    {
-    return iDisplayingQuery;
-    }
-
-
-// End of File
--- a/phoneapp/phoneuicontrol/src/cphonestate.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/src/cphonestate.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -88,7 +88,6 @@
 #include "phonelogger.h"
 #include "phonestatedefinitions.h"
 #include "cphonetimer.h"
-#include "cphonereconnectquery.h"
 #include "mphoneerrormessageshandler.h"
 #include "cphoneclearblacklist.h"
 #include "mphonecustomization.h"
@@ -122,10 +121,6 @@
     __ASSERT_ALWAYS(
         aStateMachine && aViewCommandHandle,
         Panic( EPhoneCtrlParameterNotInitialized ) );
-    if ( FeatureManager::FeatureSupported( KFeatureIdOnScreenDialer ) )
-        {
-        iOnScreenDialer = ETrue;
-        }
     }
 
 EXPORT_C void CPhoneState::BaseConstructL()
@@ -142,21 +137,12 @@
 
 EXPORT_C CPhoneState::~CPhoneState()
     {
-    if( iAlsLineChangeKeyPressTimer )
-        {
-        if( iAlsLineChangeKeyPressTimer->IsActive() )
-            {
-            iAlsLineChangeKeyPressTimer->CancelTimer();
-            }
-        delete iAlsLineChangeKeyPressTimer;
-        }
     delete iNumberEntryManager;
     delete iCallHeaderManager;
     delete iCbaManager;
     }
 
 // <-------------------------- PHONE ENGINE EVENTS --------------------------->
-
 // -----------------------------------------------------------
 // CPhoneState::HandlePhoneEngineMessageL
 // Default handling for Phone Engine messages
@@ -168,9 +154,7 @@
     TInt aCallId )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::HandlePhoneEngineMessageL() ");
-
     CPhoneAccessoryBTHandler* accessoryBtHandler;
-
     switch ( aMessage )
         {
         case MEngineMonitor::EPEMessageNetworkRegistrationStatusChange:
@@ -211,13 +195,7 @@
             break;
 
         case MEngineMonitor::EPEMessageCallWaiting:
-            // No need to send waiting notification for user.
-            //SendGlobalInfoNoteL( EPhoneWaitingText, ETrue );
-            break;
-
         case MEngineMonitor::EPEMessageProfileChanged:
-            {
-            }
             break;
 
         case MEngineMonitor::EPEMessageRemoteTerminated:
@@ -240,7 +218,6 @@
 
        case MEngineMonitor::EPEMessageCallSecureStatusChanged:
            HandleCallSecureStatusChangeL( aCallId );
-
            if ( iCustomization )
                {
                iCustomization->HandlePhoneEngineMessageL( aMessage,
@@ -250,23 +227,12 @@
 
         case MEngineMonitor::EPEMessageIssuingUSSDRequest:
             {
-             // Enable global notes
             TPhoneCmdParamBoolean globalNotifierParam;
             globalNotifierParam.SetBoolean( EFalse );
             iViewCommandHandle->ExecuteCommandL(
                 EPhoneViewSetGlobalNotifiersDisabled,
                 &globalNotifierParam );
-
-            if ( !IsOnScreenDialerSupported() && IsNumberEntryUsedL() )
-                {
-                // Remove number entry from screen
-                iViewCommandHandle->ExecuteCommandL(
-                    EPhoneViewRemoveNumberEntry );
-                }
-            else if ( IsOnScreenDialerSupported() )
-                {
-                NumberEntryClearL();
-                }
+            NumberEntryClearL();
             }
             break;
 
@@ -277,7 +243,6 @@
 
         // *#9990#
         case MEngineMonitor::EPEMessageShowBTLoopback:
-            // Stop playing DTMF tone
             iStateMachine->SendPhoneEngineMessage( MPEPhoneModel::EPEMessageEndDTMF );
             accessoryBtHandler = CPhoneAccessoryBTHandler::NewLC(
                 iViewCommandHandle, iStateMachine, this );
@@ -287,7 +252,6 @@
 
         // *#2820#
         case MEngineMonitor::EPEMessageShowBTDeviceAddress:
-            // Stop playing DTMF tone
             iStateMachine->SendPhoneEngineMessage( MPEPhoneModel::EPEMessageEndDTMF );
             accessoryBtHandler = CPhoneAccessoryBTHandler::NewLC(
                 iViewCommandHandle, iStateMachine, this );
@@ -297,38 +261,23 @@
 
         // *#7370#
         case MEngineMonitor::EPEMessageActivateRfsDeep:
-            // Stop playing DTMF tone
             iStateMachine->SendPhoneEngineMessage( MPEPhoneModel::EPEMessageEndDTMF );
-            // Launch RFS
             iViewCommandHandle->ExecuteCommandL( EPhoneViewLaunchRfsDeep );
-            if ( !IsOnScreenDialerSupported() )
-                {
-                // Do state-specific operation when number entry is cleared
-                HandleNumberEntryClearedL();
-                }
             break;
 
         // *#7780#
         case MEngineMonitor::EPEMessageActivateRfsNormal:
-            // Stop playing DTMF tone
             iStateMachine->SendPhoneEngineMessage( MPEPhoneModel::EPEMessageEndDTMF );
-            // Launch RFS
             iViewCommandHandle->ExecuteCommandL( EPhoneViewLaunchRfsNormal );
-            if ( !IsOnScreenDialerSupported() )
-                {
-                // Do state-specific operation when number entry is cleared
-                HandleNumberEntryClearedL();
-                }
             break;
+            
         // *#62209526#
         case MEngineMonitor::EPEMessageShowWlanMacAddress:
-            // Stop playing DTMF tone
             iStateMachine->SendPhoneEngineMessage( MPEPhoneModel::EPEMessageEndDTMF );
             ShowWlanMacAddressL();
             break;
 
         case MEngineMonitor::EPEMessageThumbnailLoadingCompleted:
-            // Update call buble
             UpdateRemoteInfoDataL( aCallId );
             break;
 
@@ -346,15 +295,12 @@
             break;
 
         default:
-
             TBool handled( EFalse );
-
             if ( iCustomization )
                 {
                 handled = iCustomization->HandlePhoneEngineMessageL(
                                 aMessage, aCallId );
                 }
-
             if ( EFalse == handled )
                 {
                 MPhoneMediatorMessage* mediatorMessage = CPhoneMediatorFactory::Instance()->MediatorMessage( aMessage, aCallId );
@@ -381,13 +327,11 @@
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::HandleAudioMuteChangedL() ");
     __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(),
         Panic( EPhoneCtrlInvariant ) );
-
     TPhoneCmdParamBoolean booleanParam;
     const TBool audioMute = iStateMachine->PhoneEngineInfo()->AudioMute();
     booleanParam.SetBoolean( audioMute );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewActivateMuteUIChanges,
         &booleanParam );
-    
     SetTouchPaneButtons(0);
     }
 
@@ -400,17 +344,12 @@
 EXPORT_C void CPhoneState::HandleAudioOutputChangedL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::HandleAudioOutputChangedL() ");
-    __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(),
-        Panic( EPhoneCtrlInvariant ) );
-
+    __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(), Panic( EPhoneCtrlInvariant ) );
     TPhoneCmdParamAudioOutput outputParam;
-
-    // Output
     const TPEAudioOutput audioOutput =
         iStateMachine->PhoneEngineInfo()->AudioOutput();
     outputParam.SetAudioOutput( audioOutput );
 
-    // view update
     iViewCommandHandle->ExecuteCommandL( EPhoneViewActivateAudioPathUIChanges,
         &outputParam );
 
@@ -420,10 +359,8 @@
     const TPEAudioOutput previousOutput =
         RouteParameters.iPreviousOutput;
 
-    // BT availability
     TBool btAvailable = iStateMachine->PhoneEngineInfo()->AudioOutputAvailable(
             EPEBTAudioAccessory );
-
     // Show note or BT disconnect handler
     if ( audioOutput != EPENotActive &&
          previousOutput == EPEBTAudioAccessory &&
@@ -463,9 +400,7 @@
     __LOGMETHODSTARTEND( EPhoneControl, "CPhoneState::HandleSimStateChangedL()" );
     CPhoneMainResourceResolver& resolver = *CPhoneMainResourceResolver::Instance();
     TPESimState simState = SimState();
-
     __PHONELOG2( EBasic, EPhoneControl, "SIM state was changed from %d to %d", iPreviousSimState, simState );
-
     switch ( simState )
         {
         case EPESimUsable: // Falls through.
@@ -478,15 +413,13 @@
                 RStarterSession starterSession;
                 User::LeaveIfError( starterSession.Connect() );
                 CleanupClosePushL( starterSession );
-
+                
                 HBufC* queryText = StringLoader::LoadLC( resolver.ResolveResourceID( EPhoneRebootRequired ) );
-
                 TPhoneCmdParamQuery queryParams;
                 queryParams.SetCommandParamId( TPhoneCommandParam::EPhoneParamRebootQuery );
                 queryParams.SetQueryPrompt( *queryText );
                 queryParams.SetDefaultCba( R_AVKON_SOFTKEYS_OK_EMPTY );
                 iViewCommandHandle->ExecuteCommandL( EPhoneViewShowQuery, &queryParams );
-
                 starterSession.Reset( RStarterSession::ESIMStatusChangeReset );
                 CleanupStack::PopAndDestroy( 2, &starterSession ); // queryText
                 }
@@ -499,17 +432,13 @@
                  iPreviousSimState == EPESimNotReady )
                 {
                 __PHONELOG( EBasic, EPhoneControl, "SIM card was removed" );
-
                 TPhoneCmdParamGlobalNote globalNoteParam;
                 globalNoteParam.SetType( EPhoneMessageBoxInformation );
-
                 globalNoteParam.SetTextResourceId(
                     CPhoneMainResourceResolver::Instance()->
                     ResolveResourceID( EPhoneSimRemoved ) );
-
                 iViewCommandHandle->ExecuteCommandL(
                     EPhoneViewShowGlobalNote, &globalNoteParam );
-
                 }
             // Show security note, if SIM not present and KFeatureIdFfSimlessOfflineSupport is disabled.
             else if ( !FeatureManager::FeatureSupported( KFeatureIdFfSimlessOfflineSupport ) &&
@@ -522,7 +451,6 @@
         default:
             break;
         }
-
     iPreviousSimState = simState;
     }
 
@@ -536,10 +464,8 @@
         TEventCode aEventCode )
     {
     TBool ret(EFalse);
-
     const TBool numericKeyEntered( CPhoneKeys::IsNumericKey(
           aKeyEvent, aEventCode ) );
-
     // a numeric key (1,2,3,4,6,7,8,9,0,+,*,p,w )
     // or
     // a letter from fullscreen qwerty, miniqwerty or handwriting
@@ -549,54 +475,10 @@
         {
         ret= ETrue;
         }
-
     return ret;
     }
 
 // -----------------------------------------------------------------------------
-// CPhoneState::CustomizeCBAForPhoneNumber
-//
-// -----------------------------------------------------------------------------
-//
-void CPhoneState::CustomizeCbaForPhoneNumberL()
-    {
-    if ( !FeatureManager::FeatureSupported( KFeatureIdTouchCallHandling ) &&
-         iCustomization &&
-         iCustomization->AllowAlphaNumericMode() )
-        {
-        // Get the number entry contents
-        HBufC* phoneNumber = PhoneNumberFromEntryLC();
-
-        TPhoneCmdParamInteger integerParam;
-
-        //only charaters from set { 0, .., 9, *, #, +, p, w, P, W } used
-        if ( CPhoneKeys::Validate( phoneNumber->Des()) )
-            {
-            integerParam.SetInteger( CPhoneMainResourceResolver::Instance()->
-                                    ResolveResourceID( EPhoneNumberAcqCBA ) );
-            }
-        //other characters
-        else
-            {
-            integerParam.SetInteger( iCustomization->CustomizeSoftKeys() );
-            }
-
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateCba, &integerParam );
-        CleanupStack::PopAndDestroy( phoneNumber );
-        }
-
-    }
-
-// -----------------------------------------------------------------------------
-// CPhoneState::IsTouchDTmfDialerOn
-// -----------------------------------------------------------------------------
-//
-TBool CPhoneState::IsTouchDTmfDialerOn() const
-    {
-    TBool status( EFalse );
-    return status;
-    }
-// -----------------------------------------------------------------------------
 // CPhoneState::SendDtmfKeyEventL
 // send dtmf event when,
 // -touch dtmf dialer is NOT visible
@@ -607,24 +489,13 @@
 void CPhoneState::SendDtmfKeyEventL( const TKeyEvent& aKeyEvent,
                TEventCode aEventCode  )
     {
-
-    if ( !IsTouchDTmfDialerOn()
-        && !IsAnyQueryActiveL() )
+    if ( !IsAnyQueryActiveL() )
         {
         // Send the key event to the phone engine.
         SendKeyEventL( aKeyEvent, aEventCode );
         }
     }
 
-// -----------------------------------------------------------------------------
-// CPhoneState::IsKeyEventFurtherProcessed
-// -----------------------------------------------------------------------------
-//
-TBool CPhoneState::IsKeyEventFurtherProcessedL( const TKeyEvent& /*aKeyEvent*/ ) const
-    {
-    return ETrue;
-    }
-
 // -----------------------------------------------------------
 // CPhoneState::HandleErrorL
 // Default handling for HandleError message
@@ -634,99 +505,16 @@
 EXPORT_C void CPhoneState::HandleErrorL( const TPEErrorInfo& aErrorInfo )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::HandleErrorL()");
-
     __PHONELOG1( EBasic, EPhoneControl,
             "PhoneUIControl: CPhoneState::HandleErrorL - aErrorInfo.iErrorCode =%d ",
             aErrorInfo.iErrorCode );
-
     __PHONELOG1( EBasic, EPhoneControl,
         "PhoneUIControl: CPhoneState::HandleErrorL - aErrorInfo.iCallId =%d ",
         aErrorInfo.iCallId );
-
-
     // Do the common error handling (display proper notes etc)
     CPhoneMainErrorMessagesHandler::Instance()->ShowErrorSpecificNoteL( aErrorInfo );
-
     switch( aErrorInfo.iErrorCode )
         {
-        case ECCPErrorCCUserAlertingNoAnswer:
-        case ECCPErrorCCResourceNotAvailable:
-            {
-            if( aErrorInfo.iCallId > KErrNotFound )
-                {
-                if ( iStateMachine->PhoneEngineInfo()->CallDirection(
-                        aErrorInfo.iCallId ) != RMobileCall::EMobileTerminated )
-                    {
-                    if( IsVideoCall( aErrorInfo.iCallId ) )
-                        {
-                        // Active MO video call lost 3G network.
-                        __PHONELOG1( EBasic, EPhoneControl,
-                        "PhoneUIControl: CPhoneState::HandleErrorL - ShowReconnectQueryL vid 1, callid%d ",
-                        aErrorInfo.iCallId );
-                        CPhoneReconnectQuery::InstanceL()->ShowReconnectQueryL( ETrue );
-                        }
-                    else
-                        {
-                         __PHONELOG1( EBasic, EPhoneControl,
-                            "PhoneUIControl: CPhoneState::HandleErrorL - No video call =%d ",
-                            aErrorInfo.iCallId );
-                        }
-                    }
-                }
-            }
-            break;
-
-            case ECCPErrorCCServiceNotAvailable:
-                {
-                if( IsVideoCall( aErrorInfo.iCallId ) )
-                    {
-                    CPhoneReconnectQuery::InstanceL()->ShowReconnectQueryL( EFalse );
-                    }
-                }
-                break;
-
-            case ECCPErrorBadRequest:
-                {
-                TPECallType callType =
-                    iStateMachine->PhoneEngineInfo()->CallTypeCommand();
-
-                if( callType == EPECallTypeVideo )
-                    {
-                        // Dialling MO video call cannot reach 3G network.
-                        __PHONELOG1( EBasic, EPhoneControl,
-                            "PhoneUIControl: CPhoneState::HandleErrorL - ShowReconnectQueryL vid 2, callid%d ",
-                            aErrorInfo.iCallId );
-                        CPhoneReconnectQuery::InstanceL()->ShowReconnectQueryL( ETrue );
-                    }
-                }
-                break;
-
-        case ECCPErrorVideoCallNotSupportedByNetwork:
-        case ECCPErrorVideoCallSetupFailed:
-        case ECCPErrorNotReached:
-           // If call id found and seems to be Video Call
-            if ( IsVideoCall( aErrorInfo.iCallId ) )
-                {
-                // Get active call count
-                TPhoneCmdParamInteger activeCallCount;
-                iViewCommandHandle->ExecuteCommandL(
-                    EPhoneViewGetCountOfActiveCalls, &activeCallCount );
-
-                if ( activeCallCount.Integer() == 0
-                     || iStateMachine->PhoneEngineInfo()->CallDirection(
-                        aErrorInfo.iCallId ) != RMobileCall::EMobileTerminated )
-                    {
-                    // Dialling MO video call attempted in 2G network or
-                    // dialing MO video to unvalid number
-                    // Reconnect query include video label if errorcode is unvalid number.
-                    __PHONELOG1( EBasic, EPhoneControl,
-                    "PhoneUIControl: CPhoneState::HandleErrorL - ShowReconnectQueryL vid 3, callid%d ",
-                    aErrorInfo.iCallId );
-                    CPhoneReconnectQuery::InstanceL()->ShowReconnectQueryL(
-                              ECCPErrorNotReached == aErrorInfo.iErrorCode );
-                    }
-                }
-            break;
 
         case ECCPErrorNoService:
             // No network -> hide volume popup
@@ -734,29 +522,12 @@
             break;
 
         case ECCPErrorSatControl:
-            {
-            // check, that there really was a call established before completing SAT request
-            if( aErrorInfo.iCallId != KPECallIdNotUsed )
-                {
-                }
-
-            // remove number entry
-            if ( !IsOnScreenDialerSupported() && IsNumberEntryUsedL() )
-                {
-                iViewCommandHandle->ExecuteCommandL(
-                    EPhoneViewRemoveNumberEntry );
-                }
-            else if ( IsOnScreenDialerSupported() )
-                {
-                NumberEntryClearL();
-                }
-            }
+            NumberEntryClearL();
             break;
 
         default:
             break;
         }
-
     // clear call blacklist if call failure occurs
     CPhoneClearBlacklist::Instance()->ClearBlackListOnNextKey();
     }
@@ -769,12 +540,9 @@
 void CPhoneState::HandleChangedCallDurationL( TInt aCallId )
     {
      __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::HandleChangedCallDurationL() ");
-    
     TInt ret = KErrNone;
     TInt isDisplayOn;
-    
     ret = HAL::Get( HALData::EDisplayState, isDisplayOn );
-    
     // Update only if the display is on or if HAL::Get returns an error, 
     // in which case display value cannot be trusted.
     if ( ret || isDisplayOn )
@@ -782,7 +550,6 @@
         // Get the call duration
         TTimeIntervalSeconds seconds =
             iStateMachine->PhoneEngineInfo()->CallDuration( aCallId );
-
         TPhoneCmdParamInteger time;
         time.SetInteger(seconds.Int());
         iViewCommandHandle->ExecuteCommandL(EPhoneViewUpdateCallHeaderCallDuration, aCallId, &time);
@@ -796,24 +563,11 @@
 void CPhoneState::HandleRemoteBusyL( TInt aCallId )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::HandleRemoteBusyL( ) ");
-
     TPEErrorInfo info;
     info.iCallId = aCallId;
     info.iErrorCode = ECCPErrorBusy;
     info.iErrorType = EPECcp;
     CPhoneMainErrorMessagesHandler::Instance()->ShowErrorSpecificNoteL( info );
-    
-    const TPECallType callType =
-        iStateMachine->PhoneEngineInfo()->CallTypeCommand();
-
-    if( callType == EPECallTypeVideo )
-        {
-         // Launch reconnect query including video call menu item
-         __PHONELOG1( EBasic, EPhoneControl,
-            "PhoneUIControl: CPhoneState::HandleRemoteBusyL - ShowReconnectQueryL vid 5, callid%d ",
-                aCallId );
-        CPhoneReconnectQuery::InstanceL()->ShowReconnectQueryL( ETrue );
-        }
     }
 
 // -----------------------------------------------------------
@@ -823,19 +577,17 @@
 EXPORT_C void CPhoneState::HandleDisconnectingL( TInt aCallId )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::HandleDisconnectingL( ) ");
-
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateDisconnecting );
-
     TBuf<KPhoneCallHeaderLabelMaxLength> labelText( KNullDesC );
     LoadResource( labelText, EPhoneInCallDisconnected );
-
     callHeaderParam.SetLabelText( labelText );
 
     iViewCommandHandle->ExecuteCommandL( EPhoneViewStopRingTone );
-
-    iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId,
-        &callHeaderParam );    
+    iViewCommandHandle->ExecuteCommandL( 
+            EPhoneViewUpdateBubble, 
+            aCallId,
+            &callHeaderParam );
 
     CPhoneClearBlacklist::Instance()->ClearBlackListOnNextKey();
     }
@@ -852,7 +604,6 @@
     }
 
 // <------------------------------- KEY EVENTS ------------------------------->
-
 // -----------------------------------------------------------
 // CPhoneState::HandleKeyMessageL( aMessage, aKeyCode )
 // -----------------------------------------------------------
@@ -873,13 +624,8 @@
     TEventCode aEventCode )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::HandleKeyEventL( ) ");
-    if ( ( IsNumberEntryVisibleL() ) || OnlySideVolumeKeySupported() )
-        {
-        // Handle numeric keys when key events are received in single state
-        HandleNumericKeyEventL( aKeyEvent, aEventCode );
-        }
-    else if ( aKeyEvent.iScanCode == EStdKeyUpArrow &&
-              aEventCode == EEventKey )
+    if ( aKeyEvent.iScanCode == EStdKeyUpArrow &&
+         aEventCode == EEventKey )
         {
         // Increace audio volume
         IncreaseAudioVolumeL();
@@ -890,11 +636,6 @@
         // Decreace audio volume
         DecreaseAudioVolumeL();
         }
-    else
-        {
-        // Handle numeric keys when key events are received in single state
-        HandleNumericKeyEventL( aKeyEvent, aEventCode );
-        }
     }
 
 // -----------------------------------------------------------
@@ -907,7 +648,7 @@
     TBool onlySideVolumeKeySupported(EFalse);
     if ( !CPhoneCenRepProxy::Instance()->
             IsTelephonyFeatureSupported( KTelephonyLVFlagScrollVolumeKeys ) &&
-         FeatureManager::FeatureSupported( KFeatureIdSideVolumeKeys ) )
+            FeatureManager::FeatureSupported( KFeatureIdSideVolumeKeys ) )
         {
         onlySideVolumeKeySupported = ETrue;
         }
@@ -917,40 +658,6 @@
     return onlySideVolumeKeySupported;
     }
 
-// -----------------------------------------------------------
-// CPhoneState::HandleKeyPressDurationL( aScanCode, aKeyPressDuration )
-// -----------------------------------------------------------
-//
-EXPORT_C void CPhoneState::HandleKeyPressDurationL(
-    TKeyCode aCode,
-    TTimeIntervalMicroSeconds /*aKeyPressDuration*/ )
-    {
-    __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::HandleKeyPressDurationL( ) ");
-
-    if( aCode == KPhoneDtmfHashCharacter )
-        {
-        if( iAlsLineChangeKeyPressTimer )
-            {
-            if( iAlsLineChangeKeyPressTimer->IsActive() )
-                {
-                iAlsLineChangeKeyPressTimer->Cancel();
-                }
-            }
-        }
-    }
-
-// -----------------------------------------------------------
-// CPhoneState::HandleNumericKeyEventL
-// -----------------------------------------------------------
-//
-EXPORT_C void CPhoneState::HandleNumericKeyEventL(
-    const TKeyEvent& /*aKeyEvent*/,
-    TEventCode /*aEventCode*/ )
-    {
-    __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::HandleNumericKeyEventL( ) ");
-
-    }
-
 // -----------------------------------------------------------------------------
 // CPhoneState::IsAnyQueryActiveL
 // -----------------------------------------------------------------------------
@@ -959,7 +666,6 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::IsAnyQueryActiveL( ) ");
     TBool isActive( EFalse );
-
     // If IsNoteDismissableL returns true then shown note is dismissable by key event
     // and then there is no actual query and IsAnyQueryActiveL returns false.
     if ( !IsNoteDismissableL() )
@@ -1021,13 +727,11 @@
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::SendKeyEventL( ) ");
     switch( aEventCode )
         {
-        // EEventKey
         case EEventKey:
             // Send the key press to the phone engine, if applicable
             SendKeyPressL( aKeyEvent, aEventCode );
             break;
 
-        // EEventKeyUp
         case EEventKeyUp:
             // Send a key up event for the last key code sent to
             // the phone engine
@@ -1055,11 +759,10 @@
     if ( dtmfToneKeyEntered ||
         aKeyEvent.iCode == EKeyBackspace )
         {
-        // Get the number entry contents, if it exists
+        // Get the number entry contents and store, if it exists
         if ( IsNumberEntryUsedL() )
             {
             HBufC* phoneNumber = PhoneNumberFromEntryLC();
-            // Save the phone number
             __PHONELOG1( EBasic, EPhoneControl, "SetPhoneNumber: %S ", phoneNumber );
             iStateMachine->PhoneEngineInfo()->SetPhoneNumber( *phoneNumber );
 
@@ -1073,23 +776,20 @@
             __PHONELOG1( EBasic, EPhoneControl,
                 "CPhoneState::SendKeyPressL(%S)",
                 &buffer );
-            TLex code( buffer );
 
             // Save the key code
+            TLex code( buffer );
             iStateMachine->PhoneEngineInfo()->SetKeyCode( code.Peek() );
 
             // Plays a DTMF tone if active call
             iStateMachine->SendPhoneEngineMessage(
                 MPEPhoneModel::EPEMessagePlayDTMF );
-            // remove the phone number from the cleanup stack
             CleanupStack::PopAndDestroy( phoneNumber );
             }
         }
     }
 
 // <------------------------------ SYSTEM EVENTS ----------------------------->
-
-
 // -----------------------------------------------------------
 // CPhoneState::HandleSystemEventL
 // -----------------------------------------------------------
@@ -1130,7 +830,6 @@
     {
     // Notify that this method is called always when Idle is brought to foreground
     // See implementation in CPhoneAppUI::HandleWsEventL
-
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::HandlePhoneFocusLostEventL( ) ");
     }
 // ---------------------------------------------------------
@@ -1144,22 +843,6 @@
     }
 
 // -----------------------------------------------------------
-// CPhoneState::HandleEnvironmentChangeL
-// -----------------------------------------------------------
-//
-EXPORT_C void CPhoneState::HandleEnvironmentChangeL( const TInt aChanges )
-    {
-    __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::HandleEnvironmentChangeL( ) ");
-    __PHONELOG1( EBasic, EPhoneControl, "CPhoneState::HandleEnvironmentChangeL - Changes:  %d ", aChanges );
-    // Update the profile display if required
-    if ( aChanges &
-        ( EChangesLocale | EChangesMidnightCrossover | EChangesSystemTime ) )
-        {
-        UpdateProfileDisplayL();
-        }
-    }
-
-// -----------------------------------------------------------
 // CPhoneState::HandlePhoneStartupL
 // -----------------------------------------------------------
 //
@@ -1178,24 +861,19 @@
     const TUint aKey,
     const TInt aValue )
     {
-
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::HandlePropertyChangedL( ) ");
-
     __PHONELOG1( EBasic, EPhoneControl,
             "CPhoneState::HandlePropertyChangedL - aCategory= %d", aCategory  );
     __PHONELOG1( EBasic, EPhoneControl,
             "CPhoneState::HandlePropertyChangedL - aKey= %d", aKey  );
     __PHONELOG1( EBasic, EPhoneControl,
             "CPhoneState::HandlePropertyChangedL - aValue= %d", aValue  );
-    if ( aCategory == KPSUidTelInformation
-              && SimState() == EPESimUsable )
+    if ( aCategory == KPSUidTelInformation && SimState() == EPESimUsable )
         {
-        // Telephony display event
         if ( aKey == KTelDisplayInfo )
             {
-            __PHONELOG( EBasic, EPhoneControl, "CPhoneState::HandlePropertyChangedL - telephony display info received" );
-            // Update the operator and profile display
-            UpdateProfileDisplayL();
+            __PHONELOG( EBasic, EPhoneControl, 
+                    "CPhoneState::HandlePropertyChangedL - telephony display info received" );
             }
         }
     else if ( aCategory == KPSUidStartup && aKey == KStartupSimSecurityStatus )
@@ -1248,7 +926,6 @@
     }
 
 // <---------------------------- MENU AND CBA EVENTS ------------------------->
-
 EXPORT_C TBool CPhoneState::HandleCommandL( TInt aCommand )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::HandleCommandL( ) ");
@@ -1256,53 +933,33 @@
     switch( aCommand )
         {
         case EPhoneEmergencyCmdExit:
-            {
-            }
-            // this should be bypasses?
         case EPhoneDialerCallHandling:
         case EPhoneCmdBack:
-            // Remove number entry from screen
             iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
             // Do state-specific behaviour if number entry is cleared
             HandleNumberEntryClearedL();
             break;
 
         case EPhoneDialerCmdTouchInput:
-            break;
-
         case EPhoneNumberAcqCmdSendMessage:
-            break;
-
         case EPhoneNumberAcqCmdSave:
-            break;
-
         case EPhoneNumberAcqCmdAddToName:
             break;
 
         case EPhoneNumberAcqCmdAddToContacts:
             {
-            if ( IsOnScreenDialerSupported() )
-                {
-                TPhoneCmdParamQuery queryDialogParam;
-                    queryDialogParam.SetQueryType( EPhoneContactsListQuery );
-                    queryDialogParam.SetQueryResourceId(
-                    CPhoneMainResourceResolver::Instance()->
-                    ResolveResourceID( EPhoneAddtoContactsListQuery )  );
-
-                 // Display dialog
-                iViewCommandHandle->ExecuteCommandL( EPhoneViewShowQuery,
-                    &queryDialogParam );
-                }
+            TPhoneCmdParamQuery queryDialogParam;
+                queryDialogParam.SetQueryType( EPhoneContactsListQuery );
+                queryDialogParam.SetQueryResourceId(
+                CPhoneMainResourceResolver::Instance()->
+                ResolveResourceID( EPhoneAddtoContactsListQuery ) );
+            iViewCommandHandle->ExecuteCommandL( EPhoneViewShowQuery,
+                &queryDialogParam );
             }
             break;
 
         case EPhoneCmdWaitNoteOk:
-            // Remove number entry from screen
             iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNote );
-            if ( !IsOnScreenDialerSupported() )
-                {
-                HandleNumberEntryClearedL();
-                }
             break;
 
         case EPhoneInCallCmdEndThisOutgoingCall:
@@ -1317,13 +974,6 @@
             else
                 {
                 SendGlobalErrorNoteL( EPhoneLineBlockingNote );
-                HandleNumberEntryClearedL(); // Set back CBAs
-                }
-            break;
-
-        case EPhoneCmdNoAlsLineChange:
-            if ( !IsOnScreenDialerSupported() )
-                {
                 HandleNumberEntryClearedL();
                 }
             break;
@@ -1347,27 +997,12 @@
                  aCommand == EPhoneInCallCmdBtHandsfree );
             break;
 
+        case EPhoneCmdNoAlsLineChange:
         case EPhoneInCallCmdActivatEPhonebook:
-            {
-            }
-            break;
-
         case EPhoneNumberAcqSecurityDialer:
-            {
-
-            }
-            break;
-
         case EPhoneDialerCmdContacts:
-            {
-            }
-            break;
-
         case EPhoneNumberAcqCmdToggleNeAlphaMode:
         case EPhoneNumberAcqCmdToggleNeNumericMode:
-            {
-
-            }
             break;
 
         case EPhoneCmdYesVideoFailedNoMemorySwitchToVoice:
@@ -1377,7 +1012,6 @@
         case EPhoneCmdNoVideoFailedNoMemorySwitchToVoice:
             if ( IsNumberEntryUsedL() )
                 {
-                // Show the number entry if it exists
                 SetNumberEntryVisibilityL(ETrue);
                 }
             else if ( NeedToSendToBackgroundL() )
@@ -1388,7 +1022,6 @@
                 }
             else
                 {
-                 // Display idle screen
                 DisplayIdleScreenL();
                 }
             break;
@@ -1407,7 +1040,6 @@
             break;
             
         case EPhoneCallComingCmdSoftReject:
-            // Open Soft reject message editor
             OpenSoftRejectMessageEditorL();
             break;
             
@@ -1416,31 +1048,16 @@
             break;
             
         default:
-
-            /*if ( IsOnScreenDialerSupported() )
-                {
-                // Offer command to view.
-                TPhoneViewResponseId resId =
-                            iViewCommandHandle->HandleCommandL( aCommand );
-
-                if( resId == EPhoneViewResponseFailed )
-                    {
-                    commandStatus = EFalse;
-                    }
-                }
-            else*/
-
-                {
-                commandStatus = EFalse;
-                }
+            {
+            commandStatus = EFalse;
+            }
             break;
         }
-
+    
     if( !commandStatus && iCustomization )
         {
         commandStatus = iCustomization->HandleCommandL( aCommand );
         }
-
     return commandStatus;
     }
 
@@ -1466,7 +1083,6 @@
     TRemConCoreApiButtonAction /*aButtonAct*/ )
     {
     TBool handled = EFalse;
-
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::MrccatoCommand() ");
     switch ( aOperationId )
         {
@@ -1498,7 +1114,6 @@
             // Other commands ignored.
             break;
         }
-
     return handled;
     }
 
@@ -1509,11 +1124,9 @@
 EXPORT_C void CPhoneState::DecreaseAudioVolumeL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::DecreaceAudioVolumeL( ) ");
-    __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(),
-        Panic( EPhoneCtrlInvariant ) );
-
+    __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(), Panic( EPhoneCtrlInvariant ) );
     TPEAudioOutput output( iStateMachine->PhoneEngineInfo()->AudioOutput() );
-     __PHONELOG1( EBasic, EPhoneControl, "CPhoneState::DecreaseAudioVolumeL - audio output =%d", output );
+    __PHONELOG1( EBasic, EPhoneControl, "CPhoneState::DecreaseAudioVolumeL - audio output =%d", output );
     if( output == EPETTY )
         {
         SendGlobalInfoNoteL( EPhoneNoteTTYNoAudioControl, ETrue );
@@ -1533,9 +1146,7 @@
 EXPORT_C void CPhoneState::IncreaseAudioVolumeL()
     {
      __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::IncreaceAudioVolumeL( ) ");
-    __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(),
-        Panic( EPhoneCtrlInvariant ) );
-
+    __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(), Panic( EPhoneCtrlInvariant ) );
     TPEAudioOutput output( iStateMachine->PhoneEngineInfo()->AudioOutput() );
      __PHONELOG1( EBasic, EPhoneControl, "CPhoneState::IncreaseAudioVolumeL - audio output =%d", output );
     if( output == EPETTY )
@@ -1558,9 +1169,7 @@
     {
      __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::ChangeAudioVolumeL( ) ");
      __PHONELOG1( EBasic, EPhoneControl, "CPhoneState::ChangeAudioVolumeL - set volume =%d", aLevel );
-
     TInt valueToControl = aLevel;
-
     // sets value between 1 -10
     if ( aLevel>=KPhoneVolumeMinValue && aLevel<=KPhoneVolumeMaxValue )
         {
@@ -1571,7 +1180,7 @@
             MPEPhoneModel::EPEMessageSetAudioVolume );
         }
         
-    if ( aUpdateControl )        
+    if ( aUpdateControl )
         {
         // Update the volume display.
         // Upper max (11) and under min (-1)
@@ -1585,7 +1194,6 @@
     }
 
 // <-------------------------- COMMON STATE FUNCTIONS ------------------------>
-
 // -----------------------------------------------------------
 // CPhoneState::DialMultimediaCallL
 // -----------------------------------------------------------
@@ -1606,10 +1214,7 @@
 EXPORT_C void CPhoneState::DialVoiceCallL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::DialVoiceCallL() ");
-    __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(),
-        Panic( EPhoneCtrlInvariant ) );
-
-    // Disable global notes
+    __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(), Panic( EPhoneCtrlInvariant ) );
     TPhoneCmdParamBoolean globalNotifierParam;
     globalNotifierParam.SetBoolean( ETrue );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
@@ -1628,28 +1233,25 @@
     TPhoneCmdParamInteger callIdParam;
     iViewCommandHandle->ExecuteCommandL( 
             EPhoneViewGetExpandedBubbleCallId, &callIdParam );
-
     TBool ret = EFalse;
     if( callIdParam.Integer() > KErrNotFound )
         {
-        // Release the call
         iStateMachine->SetCallId( callIdParam.Integer() );
-
         if( IsVideoCall( callIdParam.Integer() ) )
             {
             // Video call can be released only after we get response to VT Shutdown Command
-            CPhoneMediatorFactory::Instance()->Sender()->IssueCommand( KMediatorVideoTelephonyDomain,
-                                                                                 KCatPhoneToVideotelCommands,
-                                                                                 EVtCmdReleaseDataport,
-                                                                       TVersion( KPhoneToVideotelCmdVersionMajor,
-                                                                                 KPhoneToVideotelCmdVersionMinor,
-                                                                                 KPhoneToVideotelCmdVersionBuild ),
-                                                                       KNullDesC8,
-                                                                       CPhoneReleaseCommand::NewL( *iStateMachine ) );
+            CPhoneMediatorFactory::Instance()->Sender()->IssueCommand( 
+                    KMediatorVideoTelephonyDomain,
+                             KCatPhoneToVideotelCommands,
+                             EVtCmdReleaseDataport,
+                   TVersion( KPhoneToVideotelCmdVersionMajor,
+                             KPhoneToVideotelCmdVersionMinor,
+                             KPhoneToVideotelCmdVersionBuild ),
+                   KNullDesC8,
+                   CPhoneReleaseCommand::NewL( *iStateMachine ) );
             }
         else
             {
-            // Release the call
             iStateMachine->SendPhoneEngineMessage(
                 MPEPhoneModel::EPEMessageRelease );
             }
@@ -1660,7 +1262,6 @@
         __PHONELOG( EOnlyFatal, EPhoneControl,
             "CPhoneState::DisconnectCallL has negative call id!" );
         }
-
     return ret;
     }
 
@@ -1672,12 +1273,7 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::DisplayIdleScreenL( ) ");
 
-    // Don't remove reconnect query if it's shown
-    if( !CPhoneReconnectQuery::InstanceL()->IsDisplayingQuery() )
-        {
-        // Remove dialogs if necessary
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
-        }
+     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
 
     // Set Empty CBA
     iCbaManager->SetCbaL( EPhoneEmptyCBA );
@@ -1692,19 +1288,9 @@
 EXPORT_C void CPhoneState::SetupIdleScreenInBackgroundL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::SetupIdleScreenInBackgroundL( ) ");
-    // Don't remove reconnect query if it's shown
-    if( !CPhoneReconnectQuery::InstanceL()->IsDisplayingQuery() )
-        {
-        // Remove dialogs if necessary
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
-        }
-    // Return phone to the background
+    iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
-
-    // Set Idle app as the top app
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetIdleTopApplication );
-
-    // Set Empty CBA
     iCbaManager->SetCbaL( EPhoneEmptyCBA );
     }
 
@@ -1715,52 +1301,40 @@
 EXPORT_C void CPhoneState::CallFromNumberEntryL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::CallFromNumberEntryL( ) ");
-    __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(),
-        Panic( EPhoneCtrlInvariant ) );
-
-    if ( IsOnScreenDialerSupported() )
+    __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(), Panic( EPhoneCtrlInvariant ) );
+    if ( IsCustomizedDialerVisibleL() )
         {
-        if ( IsCustomizedDialerVisibleL() )
+        return;
+        }
+    else if( IsNumberEntryUsedL() )
+        {
+        // IS query on top of dialer
+        if ( IsAnyQueryActiveL() )
             {
             return;
             }
+        // Open recent calls list when the number entry is empty
+        TPhoneCmdParamInteger numberEntryCountParam;
+        iViewCommandHandle->ExecuteCommandL( EPhoneViewGetNumberEntryCount,
+        &numberEntryCountParam );
+        TInt neLength( numberEntryCountParam.Integer() );
+        TBool startLogs = neLength == 0 ? ETrue : EFalse;
 
-        else if( IsNumberEntryUsedL() )
+        if ( startLogs )
             {
-            // Query on top of dialer
-            if ( IsAnyQueryActiveL() )
-                {
-                return;
-                }
-            // Open recent calls list when the number entry is empty
-            TPhoneCmdParamInteger numberEntryCountParam;
-            iViewCommandHandle->ExecuteCommandL( EPhoneViewGetNumberEntryCount,
-            &numberEntryCountParam );
-            TInt neLength( numberEntryCountParam.Integer() );
-            TBool startLogs = neLength == 0 ? ETrue : EFalse;
-
-            if ( startLogs )
-                {
-                iViewCommandHandle->HandleCommandL(
-                EPhoneDialerCmdLog );
-                return;
-                }
+            iViewCommandHandle->HandleCommandL(
+            EPhoneDialerCmdLog );
+            return;
             }
         }
 
-    // Get the number entry contents
     HBufC* phoneNumber = PhoneNumberFromEntryLC();
-
-    // Call the number
     iStateMachine->PhoneEngineInfo()->SetPhoneNumber( *phoneNumber );
-
     if ( phoneNumber->Des().Length() < KPhoneValidPhoneNumberLength )
         {
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
-
         HandleNumberEntryClearedL();
         }
-
     CleanupStack::PopAndDestroy( phoneNumber );
 
     if ( !iCustomization ||
@@ -1816,19 +1390,12 @@
 EXPORT_C void CPhoneState::UpdateSingleActiveCallL( TInt aCallId )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::UpdateSingleActiveCallL( ) ");
-
-    // Stop capturing keys
-    CaptureKeysDuringCallNotificationL( EFalse );
-
     BeginUiUpdateLC();
-
-    // Update call state
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateConnected );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId,
         &callHeaderParam );
-
-    // Update remote info data
+    
     UpdateRemoteInfoDataL( aCallId );
 
     // Create call duration label if enabled
@@ -1842,57 +1409,18 @@
         {
         HandleChangedCallDurationL( aCallId );
         }
-
     EndUiUpdate();
 
-     // Go to current state implementation
     iCbaManager->UpdateInCallCbaL();
-
-    // Go to background if necessary
-    if ( NeedToSendToBackgroundL() ||  IsAutoLockOn() )
-        {
-        }
     // If there is no need to send back ground and number entry is used then
     // we must show number entry.
-    else if ( !NeedToSendToBackgroundL() && IsNumberEntryUsedL() )
+    if ( !NeedToSendToBackgroundL() && IsNumberEntryUsedL() && !IsAutoLockOn() )
         {
         SetNumberEntryVisibilityL(ETrue);
         }
     }
 
 // -----------------------------------------------------------
-// CPhoneState::CaptureKeysDuringCallNotificationL
-// -----------------------------------------------------------
-//
-EXPORT_C void CPhoneState::CaptureKeysDuringCallNotificationL(
-    TBool /*aCaptured*/ )
-    {
-    __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::CaptureKeysDuringCallNotificationL( ) ");
-    // Determine which view command to execute based on the capture status
-    /*const TInt viewCommandId = aCaptured ?
-        EPhoneViewStartCapturingKey :
-        EPhoneViewStopCapturingKey;
-
-    // Capture the App key
-    TPhoneCmdParamKeyCapture appKeyCaptureParam;
-    appKeyCaptureParam.SetKey( EStdKeyApplication0 );
-    appKeyCaptureParam.SetKeyCode( EKeyApplication0 );
-    appKeyCaptureParam.SetCaptureType( EPhoneKeyAllEvents );
-    iViewCommandHandle->ExecuteCommandL( viewCommandId, &appKeyCaptureParam );
-
-    // Capture the Camera key, if it exists
-    if ( FeatureManager::FeatureSupported( KFeatureIdCamera ) )
-        {
-        TPhoneCmdParamKeyCapture cameraKeyCaptureParam;
-        cameraKeyCaptureParam.SetKey( EStdKeyDevice7 );
-        cameraKeyCaptureParam.SetKeyCode( EKeyDevice7 );
-        cameraKeyCaptureParam.SetCaptureType( EPhoneKeyAllEvents );
-        iViewCommandHandle->ExecuteCommandL( viewCommandId,
-            &cameraKeyCaptureParam );
-        }*/
-    }
-
-// -----------------------------------------------------------
 // CPhoneState::IsWaitingCallL
 // -----------------------------------------------------------
 //
@@ -1920,18 +1448,14 @@
     {
     __LOGMETHODSTARTEND( EPhoneControl, "CPhoneState::UpdateRemoteInfoDataL() ");
     TPhoneCmdParamCallHeaderData callHeaderParam = UpdateCallHeaderInfoL( aCallId );
-
     if( iCustomization )
         {
         TBuf<KCntMaxTextFieldLength> inCallNumberText( KNullDesC );
-
         // to check if we have VoIP call in question and fix
         // parameters if needed
         iCustomization->ModifyCallHeaderTexts( aCallId, &callHeaderParam,
             inCallNumberText );
         }
-
-
     // Update the remote info data in the call header
     iViewCommandHandle->ExecuteCommandL(
         EPhoneViewUpdateCallHeaderRemoteInfoData,
@@ -1969,7 +1493,6 @@
 void CPhoneState::UpdateCbaSwivelStateChangedL()
     {
     __LOGMETHODSTARTEND(EPhoneControl,"CPhoneState::UpdateCbaSwivelStateChangedL()" );
-
     TPhoneCmdParamCallStateData callStateData;
     callStateData.SetCallState( EPEStateRinging );
     iViewCommandHandle->HandleCommandL(
@@ -2032,7 +1555,6 @@
     noteParam.SetType( EPhoneNotePermanent );
     noteParam.SetResourceId( CPhoneMainResourceResolver::Instance()->
         ResolveResourceID( aResourceId ) );
-
     iViewCommandHandle->ExecuteCommandL( EPhoneViewShowNote, &noteParam );
     }
 
@@ -2048,7 +1570,6 @@
     queryParam.SetQueryType( EPhoneQueryDialog );
     queryParam.SetQueryResourceId( CPhoneMainResourceResolver::Instance()->
         ResolveResourceID( aResourceId ) );
-
     iViewCommandHandle->ExecuteCommandL( EPhoneViewShowQuery, &queryParam );
     }
 
@@ -2075,8 +1596,6 @@
     queryDialogParam.SetContentCba( aContentCbaResourceId );
     queryDialogParam.SetDataText( aDataText );
     queryDialogParam.SetSendKeyEnabled( aSendKeyEnabled );
-
-    // Display dialog
     iViewCommandHandle->ExecuteCommandL( EPhoneViewShowQuery,
         &queryDialogParam );
     }
@@ -2144,7 +1663,6 @@
     if ( CPhonePubSubProxy::Instance()->Value(
             KPSUidUikon, KUikGlobalNotesAllowed ) == 1 )
         {
-        // Re-enable global notes
         TPhoneCmdParamBoolean globalNotifierParam;
         globalNotifierParam.SetBoolean( EFalse );
         iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
@@ -2157,7 +1675,6 @@
         globalNoteParam.SetTextResourceId(
             CPhoneMainResourceResolver::Instance()->
             ResolveResourceID( aResourceId ) );
-
         globalNoteParam.SetNotificationDialog( aNotificationDialog );
         
         iViewCommandHandle->ExecuteCommandL(
@@ -2178,7 +1695,6 @@
             KPSUidUikon, KUikGlobalNotesAllowed ) == 1 ||
             SimState() == EPESimReadable )
         {
-        // Re-enable global notes
         TPhoneCmdParamBoolean globalNotifierParam;
         globalNotifierParam.SetBoolean( EFalse );
         iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
@@ -2191,7 +1707,6 @@
         globalNoteParam.SetTextResourceId(
             CPhoneMainResourceResolver::Instance()->
             ResolveResourceID( aResourceId ) );
-  
         globalNoteParam.SetNotificationDialog( aNotificationDialog );
         
         iViewCommandHandle->ExecuteCommandL(
@@ -2211,7 +1726,6 @@
     if ( CPhonePubSubProxy::Instance()->Value(
             KPSUidUikon, KUikGlobalNotesAllowed ) == 1 )
         {
-        // Re-enable global notes
         TPhoneCmdParamBoolean globalNotifierParam;
         globalNotifierParam.SetBoolean( EFalse );
         iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
@@ -2265,16 +1779,6 @@
     }
 
 // <-------------------------- INTERNAL FUNCTIONS ------------------------>
-
-// -----------------------------------------------------------
-// CPhoneState::UpdateProfileDisplayL
-// -----------------------------------------------------------
-//
-void CPhoneState::UpdateProfileDisplayL()
-    {
-    }
-
-
 // -----------------------------------------------------------
 // CPhoneState::HandleInitiatedEmergencyCallL
 // Default handling for EPEMessageInitiatedEmergencyCallL message
@@ -2284,19 +1788,14 @@
 void CPhoneState::HandleInitiatedEmergencyCallL( TInt /*aCallId*/ )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::HandleInitiatedEmergencyCallL( ) ");
-
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
-
-    // Stop tone playing, if necessary
     iViewCommandHandle->ExecuteCommandL( EPhoneViewStopRingTone );
 
     // Reset Hold flag to view
     TPhoneCmdParamBoolean holdFlag;
     holdFlag.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
-
-    // Go to emergency call state
-    // No need update cba
+    
     iStateMachine->ChangeState( EPhoneStateEmergency );
     }
 
@@ -2307,17 +1806,17 @@
 void CPhoneState::HandleInitiatedEmergencyWhileActiveVideoL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::HandleInitiatedEmergencyWhileActiveVideoL( ) ");
-
-    // We have existing video call so need to release dataport before continuing
+    // We have existing video call so need to release dataport before continuings
     // emergency call. Otherwise we will face problems with dataport use later.
-    CPhoneMediatorFactory::Instance()->Sender()->IssueCommand( KMediatorVideoTelephonyDomain,
-                                                                     KCatPhoneToVideotelCommands,
-                                                                     EVtCmdReleaseDataport,
-                                                               TVersion( KPhoneToVideotelCmdVersionMajor,
-                                                                         KPhoneToVideotelCmdVersionMinor,
-                                                                         KPhoneToVideotelCmdVersionBuild ),
-                                                               KNullDesC8,
-                                                               CPhoneContinueEmergencyCallCommand::NewL( *iStateMachine ) );
+    CPhoneMediatorFactory::Instance()->Sender()->IssueCommand( 
+            KMediatorVideoTelephonyDomain,
+            KCatPhoneToVideotelCommands,
+            EVtCmdReleaseDataport,
+            TVersion( KPhoneToVideotelCmdVersionMajor,
+                    KPhoneToVideotelCmdVersionMinor,
+                    KPhoneToVideotelCmdVersionBuild ),
+            KNullDesC8,
+            CPhoneContinueEmergencyCallCommand::NewL( *iStateMachine ) );
     }
 
 // -----------------------------------------------------------
@@ -2327,21 +1826,16 @@
 void CPhoneState::HandleCallSecureStatusChangeL( TInt aCallId )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::HandleCallSecureStatusChangeL( ) ");
-
     TBool ciphering( ETrue );
     TBool secureSpecified( ETrue );
-
     if ( aCallId > KErrNotFound )
         {
         ciphering = iStateMachine->PhoneEngineInfo()->IsSecureCall( aCallId );
         secureSpecified = iStateMachine->PhoneEngineInfo()->SecureSpecified();
         }
-
     TPhoneCmdParamCallHeaderData callHeaderParam;
-
     callHeaderParam.SetCiphering( ciphering );
     callHeaderParam.SetCipheringIndicatorAllowed( secureSpecified );
-
     iViewCommandHandle->ExecuteCommandL(
         EPhoneViewCipheringInfoChange,
         aCallId,
@@ -2370,18 +1864,9 @@
 void CPhoneState::ChangeAlsLineL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::ChangeAlsLineL( ) ");
-
-    if ( !IsOnScreenDialerSupported() )
-        {
-        // Do state-specific operation when number entry is cleared
-        HandleNumberEntryClearedL();
-        }
-
     CCCECallParameters::TCCELineType currentLine;
     TSSSettingsAlsValue newLine( ESSSettingsAlsPrimary );
-
     currentLine = iStateMachine->PhoneEngineInfo()->ALSLine();
-
     if ( currentLine == CCCECallParameters::ECCELineTypePrimary )
         {
         newLine = ESSSettingsAlsAlternate;
@@ -2411,7 +1896,6 @@
 TInt CPhoneState::GetActiveCallIdL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::GetActiveCallId()( ) ");
-
     // Fetch active call's id from view
     TPhoneViewResponseId response;
     TPhoneCmdParamCallStateData callStateData;
@@ -2427,7 +1911,6 @@
         response = iViewCommandHandle->HandleCommandL(
             EPhoneViewGetCallIdByState, &callStateData );
         }
-
     return callStateData.CallId();
     }
 
@@ -2437,10 +1920,8 @@
 //
 EXPORT_C TPESimState CPhoneState::SimState() const
     {
-
     /*
     SIM states:
-
     EPESimStatusUninitialized = KPEStartupEnumerationFirstValue =100,
     EPESimUsable,       // The Sim card is fully usable.
     EPESimReadable,     // The SIM card is not fully usable, but the emergency number can be read.
@@ -2452,7 +1933,6 @@
     __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(),
         Panic( EPhoneCtrlInvariant ) );
     TPESimState simState = iStateMachine->PhoneEngineInfo()->SimState();
-
     __PHONELOG1( EBasic, EPhoneControl,
             "CPhoneState::SimState - value= %d", simState );
     return simState;
@@ -2464,7 +1944,6 @@
 //
 EXPORT_C TBool CPhoneState::IsSimOk()
     {
-
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::IsSimOk()");
     // Phone is interested on Sim state and sim security statuses
     // Check first Sim state status:
@@ -2514,15 +1993,13 @@
 EXPORT_C TBool CPhoneState::IsSimStateNotPresentWithSecurityModeEnabled()
     {
     TPhoneCmdParamBoolean isSecurityMode;
+    TBool retValue(EFalse);
     TRAP_IGNORE( iViewCommandHandle->ExecuteCommandL( EPhoneViewGetSecurityModeStatus, &isSecurityMode ) );
     if ( SimState() == EPESimNotPresent && isSecurityMode.Boolean() )
         {
-        return ETrue;
+        retValue = ETrue;
         }
-    else
-        {
-        return EFalse;
-        }
+    return retValue;
     }
 
 // ---------------------------------------------------------
@@ -2535,33 +2012,6 @@
     TRAP_IGNORE( CallheaderManagerL()->SetDivertIndication( aDivertIndication ) );
     }
 
-// ---------------------------------------------------------
-// CPhoneState::StartAlsLineChangeTimerL
-// ---------------------------------------------------------
-//
-EXPORT_C void CPhoneState::StartAlsLineChangeTimerL()
-    {
-    __LOGMETHODSTARTEND( EPhoneControl, "CPhoneState::StartAlsLineChangeTimerL()");
-    TBool alsLineAvailable = iStateMachine->PhoneEngineInfo()->ALSLineSupport();
-
-    if( alsLineAvailable )
-        {
-        if( !iAlsLineChangeKeyPressTimer )
-            {
-            iAlsLineChangeKeyPressTimer = CPhoneTimer::NewL();
-            }
-
-        iAlsLineChangeKeyPressTimer->After( KAlsLineChangeTimerValue,
-            TCallBack( AlsLineChangeTimerCallbackL, this ) );
-        }
-    else
-        {
-         // Don't bother launching the timer. ALS not supported.
-        __PHONELOG( EBasic, EPhoneControl,
-            "CPhoneState::StartAlsLineChangeTimerL - ALS not supported " );
-        }
-    }
-
 // -----------------------------------------------------------------------------
 // CPhoneState::StartShowSecurityNoteL
 // -----------------------------------------------------------------------------
@@ -2569,29 +2019,20 @@
 EXPORT_C void CPhoneState::StartShowSecurityNoteL()
     {
     __LOGMETHODSTARTEND( EPhoneControl, "CPhoneState::StartShowSecurityNoteL ");
-
-    // Set security mode on.
     TPhoneCmdParamBoolean securityMode;
     securityMode.SetBoolean( ETrue );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetSecurityMode, &securityMode );
-
-    // Remove number entry from screen
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
+    iCbaManager->UpdateCbaL( EPhoneEmptyCBA );
     
-    iCbaManager->UpdateCbaL( EPhoneEmptyCBA );
-
     TPhoneCmdParamInteger uidParam;
-    // Bring Phone app in the foreground
     uidParam.SetInteger( KUidPhoneApplication.iUid );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewBringAppToForeground,
         &uidParam );
-
-    // Set Phone as the top application
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetTopApplication,
         &uidParam );
 
     TInt resourceId ( KErrNone );
-
     if ( SimSecurityStatus() == ESimRejected )
         {
         resourceId = CPhoneMainResourceResolver::Instance()->
@@ -2613,21 +2054,15 @@
         {
         // Add it to the resource string
         HBufC* buf = StringLoader::LoadLC( resourceId );
-
         TPhoneCmdParamNote noteParam;
-
         noteParam.SetResourceId( CPhoneMainResourceResolver::Instance()->
            ResolveResourceID( EPhoneSecurityInformationNote ) );
-
         noteParam.SetText( *buf );
         noteParam.SetTone( CAknNoteDialog::EConfirmationTone );
         noteParam.SetType( EPhoneNoteSecurity );
         // Display note
         iViewCommandHandle->ExecuteCommandL( EPhoneViewShowNote, &noteParam );
-
         CleanupStack::PopAndDestroy( buf );
-           
-           
         // Capture the App key
         TPhoneCmdParamKeyCapture appKeyCaptureParam;
         appKeyCaptureParam.SetKey( EStdKeyApplication0 );
@@ -2639,64 +2074,19 @@
     }
 
 // ---------------------------------------------------------
-// CPhoneState::AlsLineChangeTimerCallbackL
-// ---------------------------------------------------------
-//
-TInt CPhoneState::AlsLineChangeTimerCallbackL( TAny* aAny )
-    {
-    __LOGMETHODSTARTEND( EPhoneControl, "CPhoneState::AlsLineChangeTimerCallbackL()");
-
-    // Send a key up event for stopping keypad tone
-    reinterpret_cast<CPhoneState*>( aAny )->
-        iStateMachine->SendPhoneEngineMessage(
-        MPEPhoneModel::EPEMessageEndDTMF );
-
-    if ( !( reinterpret_cast<CPhoneState*>( aAny )->
-            IsOnScreenDialerSupported() ) )
-        {
-        // If dialer is undefined remove the number entry.
-        reinterpret_cast<CPhoneState*>( aAny )->
-            iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
-        }
-    else
-        {
-        // If on screen dialer is in use just clear entry
-        // do not remove dialer.
-        reinterpret_cast<CPhoneState*>( aAny )->
-            NumberEntryClearL();
-        }
-
-    // Show the als line changing confirmation query
-    reinterpret_cast<CPhoneState*>( aAny )->
-        ShowQueryL( EPhoneAlsLineChangeConfirmationQuery );
-
-    return KErrNone;
-    }
-
-// ---------------------------------------------------------
 // CPhoneState::ShowWlanMacAddressL
 // ---------------------------------------------------------
 //
 void CPhoneState::ShowWlanMacAddressL()
     {
     __LOGMETHODSTARTEND( EPhoneControl, "CPhoneState::ShowWlanMacAddressL()");
-    if ( IsOnScreenDialerSupported() )
-        {
-        NumberEntryClearL();
-        }
-    else
-        {
-        // Remove number entry from screen
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
-        }
-
+    NumberEntryClearL();
     // Fetch WLAN MAC address
     TBuf8<KPhoneWlanMacAddressLength> address;
     RProperty::Get(
         KPSUidWlan,
         KPSWlanMacAddress,
         address );
-
     // Format fetched address
     TBuf<KPhoneWlanMacAddressLength> wlanMACAddress;
     for ( TInt i( 0 ); i < address.Length(); i++ )
@@ -2716,17 +2106,13 @@
     HBufC* wlanMacAddress = StringLoader::LoadLC(
         CPhoneMainResourceResolver::Instance()->
         ResolveResourceID( EPhoneWlanMacAddress ), wlanMACAddress );
-
     TPhoneCmdParamNote noteParam;
     noteParam.SetType( EPhoneNoteCustom );
     noteParam.SetResourceId( CPhoneMainResourceResolver::Instance()->
         ResolveResourceID( EPhoneInformationWaitNote ) );
     noteParam.SetText( *wlanMacAddress );
     noteParam.SetTone( CAknNoteDialog::EConfirmationTone );
-
-    // Display note
     iViewCommandHandle->ExecuteCommandL( EPhoneViewShowNote, &noteParam );
-
     CleanupStack::PopAndDestroy( wlanMacAddress );
     }
 
@@ -2739,34 +2125,27 @@
 void CPhoneState::HandleAudioAvailableOutputChangedL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::HandleAudioAvailableOutputChangedL() ");
-    __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(),
-        Panic( EPhoneCtrlInvariant ) );
-
+    __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(), Panic( EPhoneCtrlInvariant ) );
     TPhoneCmdParamAudioAvailability outputParam;
-
     // Output
     const TPEAudioOutput audioOutput =
         iStateMachine->PhoneEngineInfo()->AudioOutput();
-
     // BT availability
     TBool btAvailable = iStateMachine->PhoneEngineInfo()->AudioOutputAvailable(
             EPEBTAudioAccessory );
     outputParam.SetBTAccAvailable( btAvailable );
-
     // Wired availability
     TBool wiredAvailable = iStateMachine->PhoneEngineInfo()->AudioOutputAvailable(
             EPEWiredAudioAccessory );
     outputParam.SetWiredAccAvailable( wiredAvailable );
-
     // BTA disconnect handler check
     if( btAvailable )
         {
         CPhoneBtaaDisconnectHandler::InstanceL()->Cancel();
         }
-
-    // view update
-    iViewCommandHandle->ExecuteCommandL( EPhoneViewActivateAudioAvailabilityUIChanges,
-        &outputParam );
+    iViewCommandHandle->ExecuteCommandL( 
+            EPhoneViewActivateAudioAvailabilityUIChanges,
+            &outputParam );
     }
 
 
@@ -2777,27 +2156,21 @@
 TBool CPhoneState::IsAlsLineChangePossible()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::IsAlsLineChangePossible( ) ");
-
     TBool isAlsLineChangePossible( ETrue );
     TSSSettingsAlsBlockingValue AlsBlockingValue( ESSSettingsAlsBlockingNotSupported );
     TInt value( 0 );
-
     RSSSettings ssSettings;
     TInt retValue = ssSettings.Open();
-
     if ( retValue == KErrNone )
         {
         ssSettings.Get( ESSSettingsAlsBlocking, value );
         ssSettings.Close();
-
         AlsBlockingValue = static_cast< TSSSettingsAlsBlockingValue > ( value );
-
         if( AlsBlockingValue == ESSSettingsAlsAlternate )
             {
             isAlsLineChangePossible = EFalse;
             }
         }
-
     return isAlsLineChangePossible;
     }
 
@@ -2808,14 +2181,12 @@
 EXPORT_C void CPhoneState::ShowNumberBusyNoteL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::ShowNumberBusyNoteL( ) ");
-    // Re-enable global notes
     TPhoneCmdParamBoolean globalNotifierParam;
     globalNotifierParam.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
         &globalNotifierParam );
 
     TInt resource( EPhoneNumberBusy );
-
     if( iCustomization )
         {
         // Get customized text resource for busy note
@@ -2840,17 +2211,14 @@
 //
 EXPORT_C TBool CPhoneState::IsAutoLockOn() const
     {
-    // Check if phone is locked
     const TBool phoneIsLocked =
                 CPhonePubSubProxy::Instance()->Value(
                 KPSUidCoreApplicationUIs,
                 KCoreAppUIsAutolockStatus ) > EAutolockOff;
-
     __PHONELOG1( EBasic,
             EPhoneControl,
             "CPhoneState::IsAutoLockOn() Status: %d",
             phoneIsLocked );
-    
     return phoneIsLocked;
     }
 
@@ -2863,11 +2231,9 @@
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::IsKeyLockOn( ) ");
     TPhoneCmdParamBoolean keyLockStatus;
     keyLockStatus.SetBoolean( EFalse );
-
     iViewCommandHandle->ExecuteCommand(
             EPhoneViewGetKeyLockStatus,
             &keyLockStatus );
-
     __PHONELOG1( EBasic,
             EPhoneControl,
             "CPhoneState::IsKeyLockOn() Lock Status: %d",
@@ -2893,36 +2259,33 @@
 //
 EXPORT_C void CPhoneState::SetTouchPaneButtons( TInt /*aResourceId*/ )
     {
-    if ( FeatureManager::FeatureSupported( KFeatureIdTouchCallHandling ) )
-        {
-        TPhoneCmdParamBoolean muteParam;
-        muteParam.SetBoolean( iStateMachine->PhoneEngineInfo()->AudioMute() );
-        iViewCommandHandle->ExecuteCommand(EPhoneViewSetMuteFlag,&muteParam);
-        
-        const TPEAudioOutput audioOutput =
-            iStateMachine->PhoneEngineInfo()->AudioOutput();
+    TPhoneCmdParamBoolean muteParam;
+    muteParam.SetBoolean( iStateMachine->PhoneEngineInfo()->AudioMute() );
+    iViewCommandHandle->ExecuteCommand(EPhoneViewSetMuteFlag,&muteParam);
+    
+    const TPEAudioOutput audioOutput =
+        iStateMachine->PhoneEngineInfo()->AudioOutput();
+
+    TBool btAvailable = iStateMachine->PhoneEngineInfo()->AudioOutputAvailable(
+        EPEBTAudioAccessory );
+    
+    TPhoneCmdParamBoolean btParam;
+    btParam.SetBoolean( audioOutput == EPEBTAudioAccessory );        
+    iViewCommandHandle->ExecuteCommand(EPhoneViewSetBlueToothFlag,&btParam);
 
-        TBool btAvailable = iStateMachine->PhoneEngineInfo()->AudioOutputAvailable(
-            EPEBTAudioAccessory );
-        
-        TPhoneCmdParamBoolean btParam;
-        btParam.SetBoolean( audioOutput == EPEBTAudioAccessory );        
-        iViewCommandHandle->ExecuteCommand(EPhoneViewSetBlueToothFlag,&btParam);
+    TPhoneCmdParamBoolean btAvailableParam;
+    btAvailableParam.SetBoolean( btAvailable );        
+    iViewCommandHandle->ExecuteCommand(
+            EPhoneViewSetBluetoothAvailableFlag,&btAvailableParam);
+           
+    TBool emergency( EPEStateIdle != 
+        iStateMachine->PhoneEngineInfo()->CallState( KPEEmergencyCallId ) );
+    TPhoneCmdParamBoolean booleanParam;
+    booleanParam.SetBoolean( emergency );
 
-        TPhoneCmdParamBoolean btAvailableParam;
-        btAvailableParam.SetBoolean( btAvailable );        
-        iViewCommandHandle->ExecuteCommand(
-                EPhoneViewSetBluetoothAvailableFlag,&btAvailableParam);
-               
-        TBool emergency( EPEStateIdle != 
-            iStateMachine->PhoneEngineInfo()->CallState( KPEEmergencyCallId ) );
-        TPhoneCmdParamBoolean booleanParam;
-        booleanParam.SetBoolean( emergency );
-
-        TRAP_IGNORE( iViewCommandHandle->ExecuteCommandL(
-                     EPhoneViewSetTouchPaneButtons,
-                     &booleanParam ) );
-        }
+    TRAP_IGNORE( iViewCommandHandle->ExecuteCommandL(
+                 EPhoneViewSetTouchPaneButtons,
+                 &booleanParam ) );
     }
 
 // ---------------------------------------------------------
@@ -2931,23 +2294,10 @@
 //
 EXPORT_C void CPhoneState::DeleteTouchPaneButtons()
     {
-    if ( FeatureManager::FeatureSupported( KFeatureIdTouchCallHandling ) )
-        {
-        TPhoneCmdParamBoolean boolParam;
-        TRAP_IGNORE( iViewCommandHandle->ExecuteCommandL(
-                        EPhoneViewSetTouchPaneButtons,
-                        &boolParam ) );
-        }
-    }
-
-// ---------------------------------------------------------
-// CPhoneState::HandleLongHashL
-// ---------------------------------------------------------
-//
-EXPORT_C void CPhoneState::HandleLongHashL()
-    {
-    __LOGMETHODSTARTEND( EPhoneControl, "CPhoneState::HandleLongHashL() ");
-
+    TPhoneCmdParamBoolean boolParam;
+    TRAP_IGNORE( iViewCommandHandle->ExecuteCommandL(
+                    EPhoneViewSetTouchPaneButtons,
+                    &boolParam ) );
     }
 
 // -----------------------------------------------------------
@@ -2956,9 +2306,7 @@
 //
 EXPORT_C void CPhoneState::BeginUiUpdateLC()
     {
-
     iViewCommandHandle->ExecuteCommand( EPhoneViewBeginUpdate );
-
     TCleanupItem operation( UiUpdateCleanup, this );
     CleanupStack::PushL( operation );
     }
@@ -2986,12 +2334,10 @@
         KCRUidCommonTelephonySettings,
         KSettingsSummaryAfterCall,
         callSummaryActivated );
-
     if ( err == KErrNone && callSummaryActivated )
         {
           show = ETrue;
         }
-
     return show;
     }
 
@@ -3002,7 +2348,6 @@
 // keyEventForwarder to phoneEngine
 // -----------------------------------------------------------------------------
 //
-
 EXPORT_C void CPhoneState::HandleDtmfKeyToneL( const TKeyEvent& aKeyEvent,
                 TEventCode aEventCode )
     {
@@ -3027,31 +2372,20 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::SetDefaultFlagsL()");
     iViewCommandHandle->ExecuteCommandL( EPhoneViewHideNaviPaneAudioVolume );
+    iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateFSW );
 
     // Reset Hold flag to view
     TPhoneCmdParamBoolean holdFlag;
     holdFlag.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
-
-    // Update FSW
-    iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateFSW );
-
-    // Re-enable global notes
+    
     TPhoneCmdParamBoolean globalNotifierParam;
     globalNotifierParam.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
         &globalNotifierParam );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetEikonNotifiersDisabled,
         &globalNotifierParam );
-
-    // uncapture App and Camera keys if not security mode
-    TPhoneCmdParamBoolean isSecurityMode;
-    iViewCommandHandle->ExecuteCommandL( EPhoneViewGetSecurityModeStatus, &isSecurityMode );
-    if ( !isSecurityMode.Boolean() )
-        {
-        CaptureKeysDuringCallNotificationL( EFalse );
-        }
-
+    
     // Restore keylock if phone has been locked before call.
     if ( iStateMachine->PhoneStorage()->NeedToEnableKeylock() )
         {
@@ -3067,7 +2401,6 @@
 TInt CPhoneState::GetVolumeLevel()
     {
     TPhoneCmdParamInteger integerParam;
-
     iViewCommandHandle->ExecuteCommand( EPhoneViewGetAudioVolumeLevel,
                                         &integerParam );
     return integerParam.Integer();
@@ -3081,20 +2414,15 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl,
         "CPhoneState::ShowVideoCallOutOfMemoryNoteL()" );
-
-    // Re-enable global notes
     TPhoneCmdParamBoolean globalNotifierParam;
     globalNotifierParam.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
         &globalNotifierParam );
-
-    // Bring Phone app in the foreground
+    
     TPhoneCmdParamInteger uidParam;
     uidParam.SetInteger( KUidPhoneApplication.iUid );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewBringAppToForeground,
         &uidParam );
-
-    // Set Phone as the top application
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetTopApplication,
         &uidParam );
 
@@ -3115,7 +2443,6 @@
     {
     /*
     Sim security statuses:
-
     ESimSecurityStatusUninitialized = KStartupEnumerationFirstValue,
     ESimRejected,   // The PUK code has been entered incorrectly, so the card is rejected.
     ESimUnaccepted  // The SIM lock is on, so the card is unaccepted.
@@ -3132,9 +2459,7 @@
 EXPORT_C void CPhoneState::CallWaitingNoteL( TInt aCallId )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::CallWaitingNoteL()" );
-
     TBuf< KPhoneContactNameMaxLength > callText( KNullDesC );
-
     // Set CLI text for the call header
     const TBool contactInfoAvailable =
         iStateMachine->PhoneEngineInfo()->RemoteName( aCallId ).Length() ||
@@ -3142,15 +2467,13 @@
 
     __PHONELOG1( EBasic, EPhoneControl,
         "CPhoneState::CallWaitingNoteL - contactInfoAvailable(%d)", contactInfoAvailable );
-
     __PHONELOG1( EBasic, EPhoneControl,
         "CPhoneState::CallWaitingNoteL - remote name(%S)",
         &iStateMachine->PhoneEngineInfo()->RemoteName( aCallId ) );
-
     __PHONELOG1( EBasic, EPhoneControl,
         "CPhoneState::CallWaitingNoteL - company name(%S)",
         &iStateMachine->PhoneEngineInfo()->RemoteCompanyName( aCallId ) );
-
+    
     if ( contactInfoAvailable )
         {
         // Set Call Text flag to waiting note
@@ -3165,12 +2488,10 @@
         TPhoneCmdParamGlobalNote globalNoteParam;
         globalNoteParam.SetText( callText );
         globalNoteParam.SetType( EPhoneNotificationDialog );
-
         globalNoteParam.SetTextResourceId(
             CPhoneMainResourceResolver::Instance()->
             ResolveResourceID( EPhoneCallWaitingWithLabel ) );
         globalNoteParam.SetNotificationDialog( ETrue );
-        
         iViewCommandHandle->ExecuteCommandL(
                 EPhoneViewShowGlobalNote, &globalNoteParam );
         }
@@ -3186,16 +2507,14 @@
 //
 EXPORT_C void CPhoneState::SetRingingTonePlaybackL( TInt aCallId )
     {
-    __LOGMETHODSTARTEND(EPhoneControl,
-        "CPhoneState::SetRingingTonePlaybackL()" );
-
+    __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::SetRingingTonePlaybackL()" );
     TPhoneCmdParamRingTone ringToneParam;
     ringToneParam.SetVolume(
         iStateMachine->PhoneEngineInfo()->RingingVolume() );
 
     TArray< TContactItemId > alertGroups =
         iStateMachine->PhoneEngineInfo()->AlertForGroup();
-
+    
     TInt alertGroupCount = alertGroups.Count();
     TInt contactGroupCount =
         iStateMachine->PhoneEngineInfo()->ContactGroups( aCallId ).Count();
@@ -3271,9 +2590,7 @@
     if ( iStateMachine->PhoneEngineInfo()->CallerText( aCallId ).Length() > 0 )
         {
         ringToneParam.SetCallerTextStatus( ETrue );
-        }
-
-    // Play the ring tone
+        }    
     iViewCommandHandle->ExecuteCommandL( EPhoneViewPlayRingTone, &ringToneParam );
     }
 
@@ -3284,18 +2601,14 @@
 void CPhoneState::HandleCugInUseNoteL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::HandleCugInUseNoteL() ");
-
     TInt cugIndex( 0 );
-
     RSSSettings ssSettings;
     TInt retValue = ssSettings.Open();
-
     if ( retValue == KErrNone )
         {
         ssSettings.Get( ESSSettingsCug, cugIndex  );
         }
     ssSettings.Close();
-
     if ( cugIndex )
         {
         // Add it to the resource string
@@ -3303,14 +2616,11 @@
             CPhoneMainResourceResolver::Instance()->
             ResolveResourceID(
             EPhoneInfoCugInUse ), cugIndex );
-
         TPhoneCmdParamGlobalNote globalNoteParam;
         globalNoteParam.SetText( *buf );
         globalNoteParam.SetType( EPhoneMessageBoxInformation );
-   
         iViewCommandHandle->ExecuteCommandL(
                 EPhoneViewShowGlobalNote, &globalNoteParam );
-
         CleanupStack::PopAndDestroy( buf );
         }
     }
@@ -3332,24 +2642,6 @@
     return iCallHeaderManager;
     }
 
-// -----------------------------------------------------------
-// CPhoneState::CheckIfRestoreNEContentAfterDtmfDialer
-// -----------------------------------------------------------
-//
-EXPORT_C void CPhoneState::CheckIfRestoreNEContentAfterDtmfDialer()
-    {
-
-    }
-
-// -----------------------------------------------------------
-// CPhoneState::IsOnScreenDialerSupported
-// -----------------------------------------------------------
-//
-EXPORT_C TBool CPhoneState::IsOnScreenDialerSupported() const
-    {
-    return iOnScreenDialer;
-    }
-
 // ---------------------------------------------------------------------------
 // CPhoneState::LoadResource
 // ---------------------------------------------------------------------------
@@ -3497,17 +2789,6 @@
     return alphaNumericSupport;
     }
 
-// ---------------------------------------------------------
-// CPhoneState::OnlyHashInNumberEntryL
-// ---------------------------------------------------------
-//
-EXPORT_C void CPhoneState::OnlyHashInNumberEntryL()
-    {
-    __LOGMETHODSTARTEND( EPhoneControl, "CPhoneState::OnlyHashInNumberEntryL( ) ");
-    // 0.8 seconds has passed, start ALS line change timer
-    StartAlsLineChangeTimerL();
-    }
-
 // -----------------------------------------------------------
 // CPhoneState::NumberEntryClearL
 // -----------------------------------------------------------
@@ -3538,7 +2819,6 @@
     if( iStateMachine->PhoneStorage()->IsBlockedKeysListEmpty() )
         {
         __PHONELOG( EBasic, EPhoneControl, " CPhoneState::DisableHWKeysL HW Keys Disabled " );
-
         iStateMachine->PhoneStorage()->AppendBlockedKeysListL( EStdKeyNo );
         iStateMachine->PhoneStorage()->AppendBlockedKeysListL( EStdKeyYes );
         }
@@ -3551,12 +2831,10 @@
 EXPORT_C void CPhoneState::DisableCallUIL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::DisableCallUIL( ) ");
-
     // Set Call UI state to storage
     if( !iStateMachine->PhoneStorage()->IsScreenLocked() )
         {
         __PHONELOG( EBasic, EPhoneControl, " CPhoneState::DisableCallUIL CallUI Disabled " );
-
         // Show keys locked note
         TPhoneCmdParamNote noteParam;
         noteParam.SetType( EPhoneNoteUIDisabled );
@@ -3577,7 +2855,6 @@
         appKeyCaptureParam.SetKeyCode( EKeyDeviceF );
         appKeyCaptureParam.SetCaptureType( EPhoneKeyAllEvents );
         iViewCommandHandle->ExecuteCommandL( EPhoneViewStartCapturingKey, &appKeyCaptureParam );
-        
         // Set Call UI state to storage
         iStateMachine->PhoneStorage()->SetScreenLocked( ETrue );
         }
@@ -3590,11 +2867,9 @@
 EXPORT_C void CPhoneState::EnableCallUIL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneState::EnableCallUIL( ) ");
-
     if( iStateMachine->PhoneStorage()->IsScreenLocked() )
         {
         __PHONELOG( EBasic, EPhoneControl, " CPhoneState::EnableCallUIL CallUI Enabled " );
-
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNote );
         iViewCommandHandle->ExecuteCommandL( EPhoneViewDisableKeyLockWithoutNote );
 
@@ -3616,7 +2891,6 @@
 EXPORT_C void CPhoneState::CheckDisableHWKeysAndCallUIL()
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneState::CheckDisableHWKeysAndCallUIL( ) ");
-
     if( IsKeyLockOn() || IsAutoLockOn() )
         {
         // Disable HW keys if needed
@@ -3650,12 +2924,10 @@
         {
         if( iStateMachine->PhoneStorage()->IsBlockedKeysListEmpty() )
             {
-            // Disable HW Keys if needed
             DisableHWKeysL();
             }
         else
             {
-            // Reset blocked keys list
             iStateMachine->PhoneStorage()->ResetBlockedKeysList();
             }
         }
@@ -3666,20 +2938,15 @@
         {
         if( iStateMachine->PhoneStorage()->IsScreenLocked() )
             {
-            // Enable Call
             EnableCallUIL();
             }
         else
             {
-            // Set keylock enabled
             iViewCommandHandle->ExecuteCommandL( EPhoneViewEnableKeyLockWithoutNote );
-            // Disable Call
             DisableCallUIL();
             }
         }
-        
-        // Stop ringingtone
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewStopRingTone );
+    iViewCommandHandle->ExecuteCommandL( EPhoneViewStopRingTone );
     }
 
 // -----------------------------------------------------------
@@ -3711,7 +2978,6 @@
         {
         if( !aKeylockEnabled )
             {
-            // Keylock disabled
             // Reset blocked keys list
             iStateMachine->PhoneStorage()->ResetBlockedKeysList();
             }
@@ -3724,13 +2990,10 @@
 //
 EXPORT_C void CPhoneState::SetToolbarButtonLoudspeakerEnabled()
     {
-    if ( FeatureManager::FeatureSupported( KFeatureIdTouchCallHandling ) )
-        {
-        TPhoneCmdParamInteger integerParam;
-        integerParam.SetInteger( EPhoneInCallCmdActivateIhf );
-        TRAP_IGNORE( iViewCommandHandle->ExecuteCommandL(
-            EPhoneViewEnableToolbarButton, &integerParam ));
-        }
+    TPhoneCmdParamInteger integerParam;
+    integerParam.SetInteger( EPhoneInCallCmdActivateIhf );
+    TRAP_IGNORE( iViewCommandHandle->ExecuteCommandL(
+        EPhoneViewEnableToolbarButton, &integerParam ));
     }
 
 // ---------------------------------------------------------
@@ -3739,18 +3002,15 @@
 //
 EXPORT_C void CPhoneState::SetBackButtonActive( TBool aActive )
     {
-    if(IsAutoLockOn() && aActive) {
+    if( IsAutoLockOn() && aActive ) 
+        {
         // keep back button dimmed device lock case
         return;
-    }
-    
-    if ( FeatureManager::FeatureSupported( KFeatureIdTouchCallHandling ) )
-        {
-        TPhoneCmdParamBoolean booleanParam;
-        booleanParam.SetBoolean( aActive );
-        iViewCommandHandle->ExecuteCommand(
-            EPhoneViewBackButtonActive, &booleanParam );
         }
+    TPhoneCmdParamBoolean booleanParam;
+    booleanParam.SetBoolean( aActive );
+    iViewCommandHandle->ExecuteCommand(
+        EPhoneViewBackButtonActive, &booleanParam );
     }
 
 // -----------------------------------------------------------
@@ -3761,8 +3021,7 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl,
         "CPhoneState::OpenSoftRejectMessageEditorL ()" );
-
-    // Fetch incoming call's id from view
+    iCbaManager->SetSoftRejectStatus( EFalse );
     TPhoneCmdParamCallStateData callStateData;
     callStateData.SetCallState( EPEStateRinging );
     iViewCommandHandle->HandleCommandL(
@@ -3773,30 +3032,44 @@
     if( callStateData.CallId() > KErrNotFound  )
         {
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveQuery );
-        
         ringingCallId = callStateData.CallId();
         }
     
-    
     TPhoneCmdParamSfiData sfiDataParam;
-
     if (KErrNotFound != ringingCallId) 
         {
-        if ( iStateMachine->PhoneEngineInfo()->RemoteName( ringingCallId ).Length() )
+        if ( iStateMachine->PhoneEngineInfo()->
+                RemoteName( ringingCallId ).Length() )
             {
             // store both the name and the number
-            sfiDataParam.SetNumber( iStateMachine->PhoneEngineInfo()->RemotePhoneNumber( ringingCallId ) );
-            sfiDataParam.SetName( iStateMachine->PhoneEngineInfo()->RemoteName( ringingCallId ) );
+            sfiDataParam.SetNumber( 
+                    iStateMachine->PhoneEngineInfo()->RemotePhoneNumber( ringingCallId ) );
+            sfiDataParam.SetName( 
+                    iStateMachine->PhoneEngineInfo()->RemoteName( ringingCallId ) );
             }
         else
             {
             // store the number
-            sfiDataParam.SetNumber( iStateMachine->PhoneEngineInfo()->RemotePhoneNumber( ringingCallId ) );
+            sfiDataParam.SetNumber( 
+                    iStateMachine->PhoneEngineInfo()->RemotePhoneNumber( ringingCallId ) );
             }
         }
 
+    TPhoneCmdParamInteger activeCallCount;
     iViewCommandHandle->ExecuteCommandL(
-        EPhoneViewOpenSoftRejectEditor, &sfiDataParam );
+        EPhoneViewGetCountOfActiveCalls, &activeCallCount );
+
+    switch( activeCallCount.Integer() )
+        {
+        case EOneActiveCall:
+            iCbaManager->UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
+            break;
+        default:
+            iCbaManager->UpdateCbaL( EPhoneCallHandlingIncomingRejectCBA );
+            break;
+        }
+    iViewCommandHandle->ExecuteCommandL( 
+            EPhoneViewOpenSoftRejectEditor, &sfiDataParam );
     }
 
 //  End of File
--- a/phoneapp/phoneuicontrol/src/cphonestatecallsetup.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/src/cphonestatecallsetup.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -190,10 +190,7 @@
 //
 EXPORT_C void CPhoneStateCallSetup::HandleNumberEntryClearedL()
     {
-    __LOGMETHODSTARTEND(EPhoneControl,  
-        "CPhoneStateCallSetup::HandleNumberEntryClearedL()" );
-         
-    // Update call setup CBA when number entry is cleared
+    __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateCallSetup::HandleNumberEntryClearedL()" );
     UpdateInCallCbaL();
     }
 
@@ -222,16 +219,10 @@
 // -----------------------------------------------------------
 //
 EXPORT_C void CPhoneStateCallSetup::HandleKeyEventL( 
-    const TKeyEvent& aKeyEvent, 
-    TEventCode aEventCode )
+    const TKeyEvent& aKeyEvent, TEventCode aEventCode )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateCallSetup::HandleKeyEventL( ) ");
-   
-    if ( iOnScreenDialer && IsNumberEntryVisibleL() )
-        {
-        HandleNumericKeyEventL( aKeyEvent, aEventCode );
-        }
-    else
+    if ( !IsNumberEntryVisibleL() )
         {
         // Send the key events to the phone engine
         switch( aEventCode )
@@ -239,18 +230,15 @@
             case EEventKey:
                 {
                 PlayKeySpecificDTMF( aKeyEvent.iCode );
-                    
                 if ( aKeyEvent.iScanCode == EStdKeyUpArrow && 
                         !OnlySideVolumeKeySupported() )
                     {
-                    // Increace audio volume
-                    CPhoneState::IncreaseAudioVolumeL();            
+                    CPhoneState::IncreaseAudioVolumeL();
                     }
                 else if ( aKeyEvent.iScanCode == EStdKeyDownArrow && 
                         !OnlySideVolumeKeySupported() )
                     {
-                    // Decreace audio volume
-                    CPhoneState::DecreaseAudioVolumeL();     
+                    CPhoneState::DecreaseAudioVolumeL();
                     }
                 }
                 break;
@@ -284,8 +272,7 @@
     TLex code( buffer ); 
     // Send the key press to the phone engine, if applicable
     iStateMachine->PhoneEngineInfo()->SetKeyCode( code.Peek() );
-    iStateMachine->SendPhoneEngineMessage( 
-        MPEPhoneModel::EPEMessagePlayDTMF );
+    iStateMachine->SendPhoneEngineMessage( MPEPhoneModel::EPEMessagePlayDTMF );
     }
 
 // -----------------------------------------------------------
@@ -315,17 +302,15 @@
                     }
                 }
             else
-                {                
-                // handle end key
-                CPhoneState::DisconnectCallL();             
+                {
+                CPhoneState::DisconnectCallL();
                 }
             break;
-        
+            
         // Voice key
         case EKeyDevice6:
             if ( aMessage == EPhoneKeyShortPress )
                 {
-                // Toggle the handsfree mode
                 const TBool handsfreeMode = 
                     iStateMachine->PhoneEngineInfo()->AudioOutput() ==
                         EPELoudspeaker;
@@ -333,7 +318,6 @@
                 }
             else // aMessage == EPhoneKeyLongPress
                 {
-                // Display call in progress information note
                 CPhoneState::SendGlobalInfoNoteL( EPhoneCallInProgress, ETrue );
                 }
             break;
@@ -352,7 +336,6 @@
     TInt aCallId )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateCallSetup::HandlePhoneEngineMessageL()");
-
     switch ( aMessage )
         {
         case MEngineMonitor::EPEMessageConnected:
@@ -360,10 +343,6 @@
             break;
 
         case MEngineMonitor::EPEMessageRemoteTerminated:
-            if ( IsVideoCall( aCallId ) )
-                {
-                HandleRemoteTerminatedL( aCallId );
-                }
             break;
 
         case MEngineMonitor::EPEMessageIdle:
@@ -416,9 +395,7 @@
             ResolveResourceID( EPhoneSendingDtmfWaitNoteText ), 
         dtmfString );
     noteParam.SetText( *noteText );
-
     iViewCommandHandle->ExecuteCommandL( EPhoneViewShowNote, &noteParam );
-
     CleanupStack::PopAndDestroy( noteText );
     }
 
@@ -428,15 +405,13 @@
 //
 void CPhoneStateCallSetup::HandleStoppedDTMFL()
     {
-    __LOGMETHODSTARTEND(EPhoneControl,  
-        "CPhoneStateCallSetup::HandleStoppedDTMFL()" );
-    // Remove the Sending... note
+    __LOGMETHODSTARTEND(EPhoneControl, 
+            "CPhoneStateCallSetup::HandleStoppedDTMFL()" );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNote );
 
     // Fetch the remaining (unparsed) portion of the DTMF String 
     // from PhoneEngine
     TPEDtmfString dtmfString = iStateMachine->PhoneEngineInfo()->DtmfString();
-
     if ( dtmfString.Length() )
         {
         // Show the DTMF Wait Character confirmation query
@@ -452,10 +427,9 @@
                 EPhoneDtmfWaitCharacterConfirmationQueryText ), 
             dtmfString );
         queryParam.SetQueryPrompt( *queryPrompt );
-
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewShowQuery, 
-            &queryParam );
-
+        iViewCommandHandle->ExecuteCommandL( 
+                EPhoneViewShowQuery, 
+                &queryParam );
         CleanupStack::PopAndDestroy( queryPrompt );
         }
     else
@@ -468,7 +442,6 @@
         // Prompt for more characters by showing DTMF query with empty string
         HBufC* emptyString = HBufC::NewLC( KPhoneNumberEntryBufferSize );
         TPtr ptr( emptyString->Des() );
-
         CPhoneState::ShowTextQueryL( 
             CPhoneMainResourceResolver::Instance()->
                 ResolveResourceID( EPhoneDtmfNumberQuery ),
@@ -477,7 +450,6 @@
             CPhoneMainResourceResolver::Instance()->
                 ResolveResourceID( EPhoneSendDtmfNormalEditBoxCBA ),
             &ptr );
-
         CleanupStack::PopAndDestroy( emptyString );
         }
     }
@@ -488,9 +460,7 @@
 //
 void CPhoneStateCallSetup::CancelDTMFSendingL()
     {
-    __LOGMETHODSTARTEND(EPhoneControl,  
-        "CPhoneStateCallSetup::CancelDTMFSendingL()" );
-    // Remove the Sending... note
+    __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateCallSetup::CancelDTMFSendingL()" );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveDtmfNote );
     }
 
@@ -501,25 +471,15 @@
 void CPhoneStateCallSetup::HandleConnectedL( TInt aCallId )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateCallSetup::HandleConnectedL()");
-    // Keep Phone in the foreground
     TPhoneCmdParamBoolean booleanParam;
     booleanParam.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( 
         EPhoneViewSetNeedToSendToBackgroundStatus, &booleanParam );
-    
     BeginUiUpdateLC();
- 
-    // Update the single call
     CPhoneState::UpdateSingleActiveCallL( aCallId );
-            
-    // Update touch buttons
-    SetTouchPaneButtons( EPhoneIncallButtons );        
-
+    SetTouchPaneButtons( EPhoneIncallButtons );
     EndUiUpdate();
-    
-    // Go to single state
-    UpdateCbaL( EPhoneCallHandlingInCallCBA );    
-
+    UpdateCbaL( EPhoneCallHandlingInCallCBA );
     iStateMachine->ChangeState( EPhoneStateSingle );
     }
 
@@ -530,63 +490,32 @@
 void CPhoneStateCallSetup::HandleIdleL( TInt aCallId )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateCallSetup::HandleIdleL()");
+    HBufC *phoneNumber = HBufC::NewLC( KPhoneNumberEntryBufferSize );
+    TPtr ptr( phoneNumber->Des() );
+    TPhoneCmdParamString stringParam;
+    stringParam.SetString( &ptr );
     
     BeginUiUpdateLC ();
-    
-    // Disable the volume display
     iViewCommandHandle->ExecuteCommandL( EPhoneViewHideNaviPaneAudioVolume );
-
-    // Remove call 
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
     SetDefaultFlagsL();
-       
-    CheckIfRestoreNEContentAfterDtmfDialer();
-      
+    
     if ( IsNumberEntryUsedL() )
         {
-        // Show the number entry if it exists
-        SetNumberEntryVisibilityL(ETrue);    
+        iViewCommandHandle->ExecuteCommand(
+                EPhoneViewGetNumberFromEntry,
+                &stringParam );
+        iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
+        iViewCommandHandle->ExecuteCommandL( EPhoneViewLaunchLogs, &stringParam );
         }    
-    else if ( NeedToSendToBackgroundL() )
-        {
-        __PHONELOG( EBasic,EPhoneControl,"CPhoneStateCallSetup::elseif1");
-        // Continue displaying current app but set up the 
-        // idle screen in the background
-        SetupIdleScreenInBackgroundL();
-        }
     else
         {
-        __PHONELOG( EBasic,EPhoneControl,"CPhoneStateCallSetup::elseif2");
-         // Display idle screen
         DisplayIdleScreenL();
         }
-        
     EndUiUpdate();
-    // Go to idle state
-    // No need update cba
+    CleanupStack::PopAndDestroy( phoneNumber );
     iStateMachine->ChangeState( EPhoneStateIdle );
     }
-
-// -----------------------------------------------------------------------------
-// CPhoneStateCallSetup::HandleRemoteTerminatedL
-// -----------------------------------------------------------------------------
-//
-void CPhoneStateCallSetup::HandleRemoteTerminatedL( TInt /*aCallId*/ )
-    {
-    __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateCallSetup::HandleRemoteTerminatedL( ) ");
-
-    // Remove call header
-    /*iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
-    
-    TPhoneCmdParamBoolean globalNotifierParam;
-    globalNotifierParam.SetBoolean( EFalse );
-    iViewCommandHandle->ExecuteCommandL( 
-        EPhoneViewSetGlobalNotifiersDisabled, &globalNotifierParam );*/
-
-    // Video call not possible note is shown by 
-    // CPhoneErrorMessagesHandler::ShowErrorSpecificNoteL method,
-    // if error ECCPErrorCCResourceNotAvailable occured.
-    }    
     
 // -----------------------------------------------------------------------------
 // CPhoneStateCallSetup::HandleAudioOutputChangedL
@@ -595,7 +524,6 @@
 void CPhoneStateCallSetup::HandleAudioOutputChangedL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateCallSetup::HandleAudioOutputChangedL( ) ");
-       
     CPhoneState::HandleAudioOutputChangedL();
     // Update the call setup CBA
     UpdateInCallCbaL();
@@ -619,12 +547,9 @@
     TPtr ptr( content->Des() );
     dtmfSequence.SetString( &ptr );
     
-    if ( iOnScreenDialer )
-        {
-        iViewCommandHandle->ExecuteCommand(
-            EPhoneViewGetNumberFromEntry,
-            &dtmfSequence );  
-        }     
+    iViewCommandHandle->ExecuteCommand(
+        EPhoneViewGetNumberFromEntry,
+        &dtmfSequence );
 
     // Send the DTMF
     if ( ptr.Length() )
--- a/phoneapp/phoneuicontrol/src/cphonestateidle.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/src/cphonestateidle.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -50,8 +50,6 @@
 #include "phoneui.hrh"
 #include "phonerssbase.h"
 #include "cphonemainresourceresolver.h"
-#include "cphonecenrepproxy.h"
-#include "cphonepubsubproxy.h"
 #include "phonelogger.h"
 #include "phoneui.pan"
 #include "mphonecustomization.h"
@@ -96,11 +94,9 @@
     {
     CPhoneStateIdle* self = new (ELeave) CPhoneStateIdle( 
         aStateMachine, aViewCommandHandle, aPhoneCustomization );
-    
     CleanupStack::PushL( self );
     self->ConstructL();
     CleanupStack::Pop( self );
-    
     return self;
     }
 
@@ -113,21 +109,12 @@
     TEventCode aEventCode )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateIdle::HandleKeyEventL( ) ");
-    // Security mode check
-    TPhoneCmdParamBoolean isSecurityMode;      
-    iViewCommandHandle->ExecuteCommandL( EPhoneViewGetSecurityModeStatus, &isSecurityMode );  
-    // Number entry is blocked, if active Query
-    if ( !IsAnyQueryActiveL() )
-        {
-        // Handle numeric keys when key events are received in idle state
-        HandleNumericKeyEventL( aKeyEvent, aEventCode );  
-        }
-    else if ( isSecurityMode.Boolean() && CPhoneKeys::IsNumericKey( 
+    TPhoneCmdParamBoolean isSecurityMode;
+    iViewCommandHandle->ExecuteCommandL( EPhoneViewGetSecurityModeStatus, &isSecurityMode );
+    if ( isSecurityMode.Boolean() && CPhoneKeys::IsNumericKey( 
         aKeyEvent, aEventCode ) )
         {
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNote );
-        // Handle numeric keys when key events are received in single state
-        HandleNumericKeyEventL( aKeyEvent, aEventCode );  
         }
     else if ( aEventCode == EEventKeyUp )
         {
@@ -147,7 +134,6 @@
 EXPORT_C void CPhoneStateIdle::HandleNumberEntryClearedL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateIdle::HandleNumberEntryClearedL( ) ");
-    
     if ( IsSimOk() && !IsSimStateNotPresentWithSecurityModeEnabled() )
         {
         //  if still idle ( f.e not incoming call arrived when rfs )
@@ -171,7 +157,6 @@
     TKeyCode aCode )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateIdle::HandleKeyMessageL( ) ");
-
     switch ( aCode )
         {
         case EKeyEnd:
@@ -182,59 +167,45 @@
             
         // end-key
         case EKeyNo:
-            HandleEndKeyPressL( aMessage );            
+            HandleEndKeyPressL( aMessage );
             break;
-
         // send-key
         case EKeyYes:
-            
-            if ( iOnScreenDialer )
+            if ( IsNumberEntryUsedL() )
                 {
-                if ( IsNumberEntryUsedL() )
+                TPhoneCmdParamBoolean isSecurityMode;
+                iViewCommandHandle->ExecuteCommandL( EPhoneViewGetSecurityModeStatus, &isSecurityMode );
+                
+                TPhoneCmdParamInteger numberEntryCountParam;
+                iViewCommandHandle->ExecuteCommandL( EPhoneViewGetNumberEntryCount,
+                &numberEntryCountParam );
+                
+                TInt neLength( numberEntryCountParam.Integer() );
+                if ( IsAnyQueryActiveL() )
+                    {
+                    return;
+                    }
+                else if ( neLength == 0 && !isSecurityMode.Boolean())
                     {
-                    // Security mode check
-                    TPhoneCmdParamBoolean isSecurityMode;      
-                    iViewCommandHandle->ExecuteCommandL( EPhoneViewGetSecurityModeStatus, &isSecurityMode );
-
-                    TPhoneCmdParamInteger numberEntryCountParam;
-                    iViewCommandHandle->ExecuteCommandL( EPhoneViewGetNumberEntryCount,
-                    &numberEntryCountParam );
-                    TInt neLength( numberEntryCountParam.Integer() );
-                    
-                    // Query on top of dialer
-                    if ( IsAnyQueryActiveL() )
-                        {
-                        return;
-                        }
-                    
-                    else if ( neLength == 0 && !isSecurityMode.Boolean())
-                        {
-                        // start logs
-                        iViewCommandHandle->HandleCommandL( 
-                        EPhoneDialerCmdLog );
-                        return;
-                        }
-                    HandleSendCommandL();
+                    // start logs
+                    iViewCommandHandle->HandleCommandL( 
+                    EPhoneDialerCmdLog );
+                    return;
                     }
-                // If dialer is not open but phone is in foreground and phone receives
-                // send-key event we have to check if security mode is true and if it
-                // is then open emergency dialer.
-                else if ( !IsNumberEntryUsedL() )
+                HandleSendCommandL();
+                }
+            // If dialer is not open but phone is in foreground and phone receives
+            // send-key event we have to check if security mode is true and if it
+            // is then open emergency dialer.
+            else if ( !IsNumberEntryUsedL() )
+                {
+                TPhoneCmdParamBoolean isSecurityMode;
+                iViewCommandHandle->ExecuteCommandL( EPhoneViewGetSecurityModeStatus, &isSecurityMode );
+                if ( isSecurityMode.Boolean())
                     {
-                    // Security mode check
-                    TPhoneCmdParamBoolean isSecurityMode;      
-                    iViewCommandHandle->ExecuteCommandL( EPhoneViewGetSecurityModeStatus, &isSecurityMode );
-
-                    if ( isSecurityMode.Boolean())
-                        {
-                        // launch dialer.
-                        HandleCommandL(EPhoneNumberAcqSecurityDialer);
-                        }
-                    }           
-                }
-            else // iOnScreenDialer false, non-touch.
-                {
-                HandleSendCommandL();
+                    // launch dialer.
+                    HandleCommandL(EPhoneNumberAcqSecurityDialer);
+                    }
                 }
             break;
             
@@ -246,11 +217,10 @@
             if ( !IsNumberEntryUsedL() )
                 {
                 HandleCommandL(EPhoneNumberAcqSecurityDialer);
-                }           
+                }
             }
             break;
-            
-#ifdef RD_INTELLIGENT_TEXT_INPUT   
+#ifdef RD_INTELLIGENT_TEXT_INPUT
         case EKeyEnter:
             if ( IsNumberEntryVisibleL() )
                 {
@@ -258,7 +228,6 @@
                 }
             break;
 #endif
-            
         default:
             break;
         }
@@ -290,24 +259,21 @@
         case MEngineMonitor::EPEMessageIssuedUSSDRequest:
             // Note that after the sending of SS 
             // strings the view stays in Dialer.
-            if ( !iOnScreenDialer )  
+            if ( IsNumberEntryUsedL() )
+                {
+                // Show the number entry if it exists
+                SetNumberEntryVisibilityL(ETrue);    
+                }    
+            else if ( NeedToSendToBackgroundL() )
                 {
-                if ( IsNumberEntryUsedL() )
-                    {
-                    // Show the number entry if it exists
-                    SetNumberEntryVisibilityL(ETrue);    
-                    }    
-                else if ( NeedToSendToBackgroundL() )
-                    {
-                    // Continue displaying current app but set up the 
-                    // idle screen in the background
-                    SetupIdleScreenInBackgroundL();
-                    }
-                else
-                    {
-                     // Display idle screen
-                    DisplayIdleScreenL();
-                    }
+                // Continue displaying current app but set up the 
+                // idle screen in the background
+                SetupIdleScreenInBackgroundL();
+                }
+            else
+                {
+                 // Display idle screen
+                DisplayIdleScreenL();
                 }
             break;
             
@@ -315,8 +281,8 @@
             HandleIdleL( aCallId );
             break;
             
-        case MEngineMonitor::EPEMessageInValidEmergencyNumber:                
-            SendGlobalWarningNoteL( EPhoneEmergencyCallsOnly, ETrue );                           
+        case MEngineMonitor::EPEMessageInValidEmergencyNumber:
+            SendGlobalWarningNoteL( EPhoneEmergencyCallsOnly, ETrue );
             break;
             
         case MEngineMonitor::EPEMessageValidEmergencyNumber:
@@ -338,40 +304,24 @@
 void CPhoneStateIdle::HandleIncomingL( TInt aCallId )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateIdle::HandleIncomingL( ) ");
-
     HandleAudioAvailableOutputChangedL();
-
     SetRingingTonePlaybackL( aCallId );
-
     BeginUiUpdateLC();
     
-    // Hide the number entry if it exists
     if ( IsNumberEntryUsedL() )
         {
-        SetNumberEntryVisibilityL(EFalse);    
+        SetNumberEntryVisibilityL(EFalse);
         }
      
-    // Display incoming call
     DisplayIncomingCallL( aCallId );
-    
-    // Show incoming call buttons
     SetTouchPaneButtons( EPhoneIncomingCallButtons );
-    
-    // Disable HW keys and Call UI if needed
     CheckDisableHWKeysAndCallUIL();
-    
     SetBackButtonActive(EFalse);
-    
     EndUiUpdate();
     
-    // Go to incoming state
     iCbaManager->UpdateIncomingCbaL( aCallId );
-
-    //request that dimmed toolbar is visible.
     iViewCommandHandle->HandleCommandL( EPhoneViewShowToolbar );
     iStateMachine->ChangeState( EPhoneStateIncoming );
-         
-    // Reset divert indication
     SetDivertIndication( EFalse );
     }
 
@@ -385,21 +335,11 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateIdle::HandleDialingL( ) ");
     BeginUiUpdateLC();
-
-    // Display call setup 
-    DisplayCallSetupL( aCallId );  
-    
-    // Show call setup buttons
-    SetTouchPaneButtons( EPhoneCallSetupButtons );          
-    
+    DisplayCallSetupL( aCallId );
+    SetTouchPaneButtons( EPhoneCallSetupButtons );
     EndUiUpdate();
-    
-    // Remove any phone dialogs if they are displayed
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
-            
-    // Go to call setup state
     iCbaManager->UpdateCbaL( EPhoneCallHandlingCallSetupCBA );
-    
     iStateMachine->ChangeState( EPhoneStateCallSetup );
     }
 
@@ -425,22 +365,12 @@
             &uidParam );
         }
     BeginUiUpdateLC();
-            
-    // Remove the number entry
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
- 
-    // Display call setup header
     DisplayCallSetupL( aCallId );
-
-    // Update single active call
     UpdateSingleActiveCallL( aCallId );
+    SetTouchPaneButtons( EPhoneIncallButtons );
+    EndUiUpdate();
     
-    // Update touch buttons
-    SetTouchPaneButtons( EPhoneIncallButtons );
-    
-    EndUiUpdate();
-  
-    // Go to single state
     iCbaManager->UpdateCbaL( EPhoneCallHandlingInCallCBA );
     iStateMachine->ChangeState( EPhoneStateSingle );
     }
@@ -453,17 +383,16 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateIdle::HandleCommandL( ) ");
     TBool commandStatus = ETrue;
-
     switch( aCommand )
         {
         case EPhoneCmdOptions:
-            {
+        case EPhoneCmdBack:
             break;
-            }
         
         case EPhoneNumberAcqCmdCall:
             HandleVoiceCallCommandL();
             break;
+            
         case EPhoneNumberAcqCmdSendCommand:
             HandleSendCommandL();
             break;
@@ -472,16 +401,11 @@
             DialVideoCallL();
             break;
             
-        case EPhoneCmdBack:
-            break;            
-            
         default:
             commandStatus = CPhoneState::HandleCommandL( aCommand );
             break;
         }
-
     return commandStatus;
-
     }
 
 // -----------------------------------------------------------------------------
@@ -495,9 +419,7 @@
     switch( aCommand )
        {
        case EAknSoftkeyContextOptions:
-           {
-           }
-           break;       
+           break;
            
        default:
            commandStatus = CPhoneState::ProcessCommandL( aCommand );
@@ -527,7 +449,6 @@
         TDialInitiationMethod /*aDialMethod*/ )
     {
     iStateMachine->PhoneEngineInfo()->SetPhoneNumber( aNumber );
-    
     if ( aNumberType == EPhoneNumberTypeVideo &&
         FeatureManager::FeatureSupported( KFeatureIdCsVideoTelephony ) )
         {
@@ -540,7 +461,7 @@
         }
     else
         {
-        DialVoiceCallL();                
+        DialVoiceCallL();
         }
     }
 
@@ -567,10 +488,9 @@
             // call the number
             iStateMachine->PhoneEngineInfo()->SetPhoneNumber( *phoneNumber );
             DialMultimediaCallL();
-
             CleanupStack::PopAndDestroy( phoneNumber );
             }
-        }       
+        }
     }
 
 // -----------------------------------------------------------
@@ -582,16 +502,11 @@
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateIdle::DisplayIncomingCallL( ) ");
     __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo() && aCallId >= 0,
         Panic( EPhoneCtrlInvariant ) );
-
-    // Remove any phone dialogs if they are displayed
+    
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
-
     TPhoneCmdParamKeyCapture captureParam;
     captureParam.SetKeyCode( EKeyNo );
     iViewCommandHandle->ExecuteCommand( EPhoneViewStartCapturingKey, &captureParam );
-    
-    // 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
@@ -601,13 +516,10 @@
         EPhoneViewSetNeedToSendToBackgroundStatus,
         &booleanParam );
 
-    // Bring Phone app in the foreground
     TPhoneCmdParamInteger uidParam;
     uidParam.SetInteger( KUidPhoneApplication.iUid );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewBringAppToForeground,
         &uidParam );
-
-    // Set Phone as the top application
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetTopApplication,
         &uidParam );
         
@@ -618,7 +530,6 @@
         &globalNotifierParam );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetEikonNotifiersDisabled,
         &globalNotifierParam );
-    
     DisplayHeaderForCallComingInL( aCallId, EFalse ); //not waiting
     }
 
@@ -634,15 +545,11 @@
     TPhoneCmdParamKeyCapture captureParam;
     captureParam.SetKeyCode( EKeyNo );
     iViewCommandHandle->ExecuteCommand( EPhoneViewStartCapturingKey, &captureParam );
-    
-    // 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 );
@@ -652,12 +559,9 @@
     uidParam.SetInteger( KUidPhoneApplication.iUid );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewBringAppToForeground,
         &uidParam );
-
-    // Set Phone as the top application
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetTopApplication,
         &uidParam ); 
     
-    // Display call setup header
     DisplayHeaderForOutgoingCallL( aCallId );
     }
 
@@ -668,19 +572,16 @@
 EXPORT_C void CPhoneStateIdle::HandleIdleForegroundEventL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateIdle::HandleIdleForegroundEventL( ) ");
-    
     if ( IsNumberEntryUsedL() )
-        {        
+        {
         if ( IsNumberEntryVisibleL() )
             {
-            // Set Number Entry CBA
             iCbaManager->SetCbaL( EPhoneNumberAcqCBA );
             }
         }
     else if ( !IsAnyQueryActiveL() )
         {
-        // Set idle as top application
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewBringIdleToForeground );            
+        iViewCommandHandle->ExecuteCommandL( EPhoneViewBringIdleToForeground );
         }
     }
 
@@ -701,7 +602,7 @@
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateIdle::HandlePhoneFocusLostEventL( ) ");
     if ( !IsNumberEntryUsedL() )
          {
-         // If NE/dialer is open add icon to FSW list.
+         // If dialer is open add icon to FSW list.
          iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateFSW );
          }
     }
@@ -712,17 +613,10 @@
 //
 void CPhoneStateIdle::HandleIdleL( TInt /*aCallId*/ )
     {
-    __LOGMETHODSTARTEND(EPhoneControl,  
-        "CPhoneStateIdle::HandleIdleL()" );
-        
-    // Remove all call headers
+    __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateIdle::HandleIdleL()" );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveAllCallHeaders );
-    
-    // Close number entry
-    iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );    
-
-    // Remove all notes and dialogs
-    iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );    
+    iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
+    iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
     }
 
 // -----------------------------------------------------------
@@ -733,7 +627,6 @@
     {
     __LOGMETHODSTARTEND(
         EPhoneControl, "CPhoneStateIdle::HandleSendCommandL()" );
-    
     HandleVoiceCallCommandL();
     }
 
@@ -744,7 +637,6 @@
 void CPhoneStateIdle::SendExitCommandL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateIdle::SendExitCommand( ) ");
-    // Remove number entry from screen
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
 
     // Simulate exit command
@@ -769,12 +661,10 @@
 void CPhoneStateIdle::HandleEndKeyPressL( TPhoneKeyEventMessages aMessage )
     {
     __LOGMETHODSTARTEND( EPhoneControl, "CPhoneStateIdle::HandleEndKeyPressL( ) ");
-
     // End key not handled also in phone startup when pressed during country/time/date query
     RWsSession sess = CCoeEnv::Static()->WsSession();
     TApaTaskList appList( sess );
     TApaTask startup = appList.FindApp( KUidStartupApplication );
-    
     if ( !IsAutoLockOn() && !IsKeyLockOn() && !startup.Exists() )
         {
         //Cancels e.g. USB notifier and Audio notifier.
@@ -791,33 +681,25 @@
             {
             if ( aMessage == EPhoneKeyLongPress )
                 {
-                // Close all connections
                 iStateMachine->SendPhoneEngineMessage(
-                        MPEPhoneModel::EPEMessageTerminateAllConnections );   
-
+                        MPEPhoneModel::EPEMessageTerminateAllConnections );
                 if ( IsNumberEntryUsedL() )
                     {
-                    // Remove number entry from screen
-                    iViewCommandHandle->ExecuteCommandL( 
-                        EPhoneViewRemoveNumberEntry );
+                    iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
                     // Do state-specific operation when number entry is cleared
                     HandleNumberEntryClearedL();
-                    
                     // If long end key event occures then all calls are terminated and
                     // dialer is closed, therefore tel.icon must be removed from FSW.
                     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateFSW );
                     }
                 if ( !TopAppIsDisplayedL() )
                     {
-                    // Display idle screen
                     DisplayIdleScreenL();
                     }
                 }
             else if ( IsNumberEntryUsedL() && TopAppIsDisplayedL() )
                 {
-                // Remove number entry from screen
-                iViewCommandHandle->ExecuteCommandL( 
-                    EPhoneViewRemoveNumberEntry );
+                iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
                 // Do state-specific operation when number entry is cleared
                 HandleNumberEntryClearedL();
                 }
@@ -832,44 +714,19 @@
                         {
                         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
                         }
-                    
-                    // Remove number entry from screen
-                    iViewCommandHandle->ExecuteCommandL( 
-                        EPhoneViewRemoveNumberEntry );
-                    } 
-                // Bring Idle app to the foreground
+                    iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
+                    }
                 iViewCommandHandle->ExecuteCommandL( EPhoneViewBringIdleToForeground );
                 }
             }
         else if ( IsNumberEntryUsedL() )
             {
-            // Remove number entry from screen
-            iViewCommandHandle->ExecuteCommandL( 
-                EPhoneViewRemoveNumberEntry );
-            StartShowSecurityNoteL();    
+            iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
+            StartShowSecurityNoteL();
             }
         }
     }
 
-// ---------------------------------------------------------
-// CPhoneStateIdle::OnlyHashInNumberEntryL
-// ---------------------------------------------------------
-//
-EXPORT_C void CPhoneStateIdle::OnlyHashInNumberEntryL()
-    {
-    __LOGMETHODSTARTEND( EPhoneControl, "CPhoneStateIdle::OnlyHashInNumberEntryL( ) ");
-    
-    }
-
-// ---------------------------------------------------------
-// CPhoneStateIdle::ChangeMannerModeL
-// ---------------------------------------------------------
-//
-void CPhoneStateIdle::ChangeMannerModeL()
-    {
-    __LOGMETHODSTARTEND( EPhoneControl, "CPhoneStateIdle::ChangeMannerModeL( ) ");         
-    }
-
 // -----------------------------------------------------------
 // CPhoneStateIdle::DialMultimediaCallL
 // -----------------------------------------------------------
@@ -877,9 +734,7 @@
 EXPORT_C void CPhoneStateIdle::DialMultimediaCallL()
     {
     __LOGMETHODSTARTEND( EPhoneControl, "CPhoneStateIdle::DialMultimediaCall() ");
-    __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(),
-        Panic( EPhoneCtrlInvariant ) );
-    
+    __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(), Panic( EPhoneCtrlInvariant ) );
     if ( RestoreOngoing() )
         {
         CPhoneState::SendGlobalInfoNoteL( EPhoneInformationVideoCallNotAllowedDuringRestoreNote );
@@ -897,17 +752,12 @@
 EXPORT_C void CPhoneStateIdle::DialVoiceCallL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateIdle::DialVoiceCallL() ");
-    __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(),
-        Panic( EPhoneCtrlInvariant ) );
-        
-    // Disable global notes
+    __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(), Panic( EPhoneCtrlInvariant ) );
     TPhoneCmdParamBoolean globalNotifierParam;
     globalNotifierParam.SetBoolean( ETrue );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
         &globalNotifierParam );
-    
     CPhoneState::DialVoiceCallL();
- 
     }
 
 // -----------------------------------------------------------------------------
@@ -917,11 +767,9 @@
 TBool CPhoneStateIdle::RestoreOngoing()
     {
     TInt restoreValue;
-    
     RProperty::Get( KUidSystemCategory, 
                     conn::KUidBackupRestoreKey,
                     restoreValue );
-        
     return ( restoreValue & ( conn::EBURRestoreFull | conn::EBURRestorePartial ));
     }
 
@@ -933,12 +781,9 @@
     {
     __LOGMETHODSTARTEND(
         EPhoneControl, "CPhoneStateIdle::HandleVoiceCallCommandL()" );
-    
     if ( IsNumberEntryUsedL() )
         {
-        // Handle send key short press, get the number entry contents.
         HBufC* phoneNumber = PhoneNumberFromEntryLC();
-        
         if ( !IsSimOk() )
             {
             iStateMachine->PhoneEngineInfo()->SetPhoneNumber( *phoneNumber ) ;
@@ -957,7 +802,6 @@
         else
 #endif // _DEBUG
             {
-            // call the number
             iStateMachine->PhoneEngineInfo()->SetPhoneNumber( *phoneNumber );
             DialVoiceCallL();
             CleanupStack::PopAndDestroy( phoneNumber );
--- a/phoneapp/phoneuicontrol/src/cphonestateincall.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/src/cphonestateincall.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -76,7 +76,7 @@
     {
     if( iDtmfWaitCharTimer )
         {
-        delete iDtmfWaitCharTimer;            
+        delete iDtmfWaitCharTimer;
         }
     }
 
@@ -126,13 +126,11 @@
         "CPhoneStateInCall::HandleKeyMessageL()" ); 
     switch ( aCode )
         {
-        // end-key
-        case EKeyNo:
+        case EKeyNo: // end-key
             HandleEndKeyPressL( aMessage );
             break;
 
-        // Voice key
-        case EKeyDevice6:
+        case EKeyDevice6: // Voice key
             HandleVoiceKeyPressL( aMessage ); 
             break;
             
@@ -144,7 +142,6 @@
                 }
             break;
 #endif            
-          
         default:
             break;
         }
@@ -206,10 +203,6 @@
             
         case MEngineMonitor::EPEMessageDisconnecting:
             CancelDTMFSendingL();
-            if ( !CPhoneState::IsAnyConnectedCalls() )
-                {
-                CloseDtmfQueryL();
-                }            
             CPhoneState::HandlePhoneEngineMessageL( aMessage, aCallId );
             break; 
             
@@ -219,7 +212,7 @@
             
         case MEngineMonitor::EPEMessageValidEmergencyNumber:
             DialVoiceCallL();
-            break;    
+            break;
         
         case MEngineMonitor::EPEMessageRemotePartyInfoChanged:
             // If there is a waiting call then update header and label
@@ -251,7 +244,6 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl,
             "CPhoneStateInCall::UpdateRemoteInfoDataAndLabelL ()" );
-    // Update the remote info data in the call header
     iViewCommandHandle->ExecuteCommandL( 
         EPhoneViewUpdateCallHeaderRemoteInfoDataAndLabel, 
         aCallId,
@@ -264,21 +256,17 @@
 //
 EXPORT_C void CPhoneStateInCall::HandleIdleL( TInt aCallId )
     {
-    __LOGMETHODSTARTEND(EPhoneControl,  
-        "CPhoneStateInCall::HandleIdleL()" );
+    __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateInCall::HandleIdleL()" );
     __ASSERT_DEBUG( aCallId >= 0, Panic( EPhoneCtrlParameterNotInitialized ) );
-    
     TBool showDialer( EFalse );
     HBufC *phoneNumber = HBufC::NewLC( KPhoneNumberEntryBufferSize );
     TPtr ptr( phoneNumber->Des() );
     TPhoneCmdParamString stringParam;
     stringParam.SetString( &ptr );
-
-    // Remove call 
+    
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
-  
-    //Make sure that toolbar is not shown
     iViewCommandHandle->ExecuteCommandL( EPhoneViewHideToolbar );
+    
     BeginUiUpdateLC();
     SetDefaultFlagsL();
     if ( IsNumberEntryUsedL() )
@@ -291,33 +279,28 @@
         }
     
     if ( !TopAppIsDisplayedL() || IsAutoLockOn() )
-        {        
+        {
         // Continue displaying current app but set up the 
         // idle screen in the background
         SetupIdleScreenInBackgroundL();
         }
     else if ( showDialer )
         {
-        // Open dialer
         iViewCommandHandle->ExecuteCommandL( EPhoneViewLaunchLogs, &stringParam );
         }
     else 
         {
-        // Display idle screen and update CBAs
         DisplayIdleScreenL();
         }
         
-    DeleteTouchPaneButtons();        
+    DeleteTouchPaneButtons();
     EndUiUpdate();
-    // Display call termination note, if necessary
     DisplayCallTerminationNoteL();
 
     TPhoneCmdParamKeyCapture captureParam;
     captureParam.SetKeyCode( EKeyNo );
     iViewCommandHandle->ExecuteCommand( EPhoneViewStopCapturingKey, &captureParam );
-    
     CleanupStack::PopAndDestroy( phoneNumber );
-    // Go to idle state
     iStateMachine->ChangeState( EPhoneStateIdle );
     }
 
@@ -338,7 +321,7 @@
 EXPORT_C void CPhoneStateInCall::UpdateCbaL( TInt aResource )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateInCall::UpdateCbaL() ");
-    iCbaManager->UpdateCbaL( aResource );   
+    iCbaManager->UpdateCbaL( aResource );
     }
 
 // -----------------------------------------------------------
@@ -350,7 +333,6 @@
     __LOGMETHODSTARTEND(EPhoneControl,  
         "CPhoneStateInCall::HandleAudioMuteChangedL()" );
     CPhoneState::HandleAudioMuteChangedL();
-
     // Update the single call CBA only if the number entry is not
     // used
     if ( !IsNumberEntryUsedL() )
@@ -368,16 +350,9 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl,  
         "CPhoneStateInCall::HandleAudioOutputChangedL()" );
-    // Handle the handsfree mode change
     CPhoneState::HandleAudioOutputChangedL();
 
-    // Update the single call CBA only if the number entry is not
-    // used
-    if ( !IsNumberEntryVisibleL() )
-        {
-        // Go to current state implementation
-        UpdateInCallCbaL();
-        }
+    UpdateInCallCbaL();
     
     SetTouchPaneButtons(0);
     }
@@ -390,7 +365,6 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl,  
         "CPhoneStateInCall::HandleAudioVolumeChangedL()" );
-    // Update the volume display
     TInt audioVolume = iStateMachine->PhoneEngineInfo()->AudioVolume();
     TPhoneCmdParamInteger volumeParam;
     volumeParam.SetInteger( audioVolume );
@@ -410,7 +384,7 @@
     noteParam.SetType( EPhoneNoteDtmfSending );
     noteParam.SetResourceId( CPhoneMainResourceResolver::Instance()->
         ResolveResourceID( EPhoneSendingDtmfWaitNote ) );
-
+    
     // Show the "Sending..." Wait Note, and pre-populate it 
     // with the PhoneEngine's current DTMF String.
     // Set the text for the wait-note.
@@ -420,9 +394,7 @@
             ResolveResourceID( EPhoneSendingDtmfWaitNoteText ), 
         dtmfString );
     noteParam.SetText( *noteText );
-
     iViewCommandHandle->ExecuteCommandL( EPhoneViewShowNote, &noteParam );
-
     CleanupStack::PopAndDestroy( noteText );
     }
 
@@ -434,9 +406,7 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl,  
         "CPhoneStateInCall::HandleStoppedDTMFL()" );
-    // Remove the Sending... note
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNote );
-
     // Fetch the remaining (unparsed) portion of the DTMF String 
     // from PhoneEngine
     TPEDtmfString dtmfString = iStateMachine->PhoneEngineInfo()->DtmfString();
@@ -456,10 +426,8 @@
                 EPhoneDtmfWaitCharacterConfirmationQueryText ), 
             dtmfString );
         queryParam.SetQueryPrompt( *queryPrompt );
-
         iViewCommandHandle->ExecuteCommandL( EPhoneViewShowQuery, 
             &queryParam );
-
         CleanupStack::PopAndDestroy( queryPrompt );
         }
     else
@@ -472,7 +440,6 @@
         // Prompt for more characters by showing DTMF query with empty string
         HBufC* emptyString = HBufC::NewLC( KPhoneNumberEntryBufferSize );
         TPtr ptr( emptyString->Des() );
-
         ShowDtmfTextQueryL( 
             CPhoneMainResourceResolver::Instance()->
                 ResolveResourceID( EPhoneDtmfNumberQuery ),
@@ -481,7 +448,6 @@
             CPhoneMainResourceResolver::Instance()->
                 ResolveResourceID( EPhoneSendDtmfNormalEditBoxCBA ),
             &ptr );
-
         CleanupStack::PopAndDestroy( emptyString );
         }
     }
@@ -494,7 +460,6 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl,  
         "CPhoneStateInCall::CancelDTMFSendingL()" );
-    // Remove the Sending... note
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveDtmfNote );
     }
 
@@ -504,19 +469,15 @@
 //
 EXPORT_C TBool CPhoneStateInCall::HandleCommandL( TInt aCommand )
     {
-    __LOGMETHODSTARTEND( EPhoneControl,  
-        "CPhoneStateInCall::HandleCommandL()" );
+    __LOGMETHODSTARTEND( EPhoneControl, "CPhoneStateInCall::HandleCommandL()" );
     __PHONELOG1 ( EBasic, EPhoneControl,
         "CPhoneStateInCall::HandleCommandL() - aCommand  = %d ", aCommand );
     TBool commandStatus = ETrue;
-
     switch( aCommand )
         {
         case EPhoneInCallCmdDialer:
             iViewCommandHandle->ExecuteCommandL( EPhoneViewOpenDialer );
             break;
-        case EPhoneCmdOptions:
-            break;
             
         case EPhoneDtmfDialerCancel:
             {
@@ -524,10 +485,6 @@
             // Forwards command to the framework 
             HandleCommandL( EPhoneInCallCmdDtmfListQuery );
             }
-            break;  
-        case EPhoneDtmfDialerExit:
-            {
-            }
             break;
             
         case EPhoneInCallCmdEndThisActiveCall:
@@ -547,23 +504,12 @@
             iStateMachine->SendPhoneEngineMessage( 
                 MPEPhoneModel::EPEMessageSetAudioMute );
             break;
+            
         //DTMF list query - dialog   
         case EPhoneInCallCmdDtmfListQuery:
             LaunchDtmfListQueryL();
             break;
             
-        //DTMF list query - Search   
-        case EPhoneInCallCmdDtmfListViewSearch:
-            break;
-            
-        //DTMF manual entry 
-        case EPhoneInCallCmdDtmfManualQuery:
-            break;
-            
-        // DTMF manual entry - Search          
-        case EPhoneCmdDtmfSearch:
-            break;
-            
         // DTMF entry - Ok          
         case EPhoneCmdDtmfOk:
             SendDtmfL();
@@ -589,14 +535,6 @@
                 }
             iDtmfWaitCharTimer->ButtonPressedL();
             break;
-
-        // New Call - Search
-        case EPhoneInCallCmdNewCallFind:
-            break;
-            
-        // New Call - Dialog     
-        case EPhoneInCallCmdNewCall:
-            break;
             
         case EPhoneNumberAcqCmdCall:
         case EPhoneNumberAcqCmdSendCommand:
@@ -624,17 +562,15 @@
                     iStateMachine->SendPhoneEngineMessage( 
                         MPEPhoneModel::EPEMessageCheckEmergencyNumber );
                     }
-                CleanupStack::PopAndDestroy( phoneNumber );               
+                CleanupStack::PopAndDestroy( phoneNumber );
                 }
             else
                 {
-                // Provide number information with dial command
                 CallFromNumberEntryL();
                 }
             break;
 
         case EPhoneCmdEnd:
-            CloseDtmfQueryL();
             CPhoneState::DisconnectCallL();
             break;
             
@@ -649,11 +585,8 @@
             break;
 
         case EPhoneInCallCmdGoToIdle:
-            {
-            // Bring Idle app to foreground
-            iViewCommandHandle->ExecuteCommandL( EPhoneViewBringIdleToForeground );    
-            break;                   
-            }
+            iViewCommandHandle->ExecuteCommandL( EPhoneViewBringIdleToForeground );
+            break;
             
         case EPhoneNumberAcqCmdVideoCall:
             {// Create normal voice call, if number is emergency number.
@@ -667,24 +600,31 @@
             
         case EPhoneInCallCmdLockKeypad:
         case EPhoneInCallCmdLockScreen:
-            LockKeypadL();          
+            LockKeypadL();
             break;
 
        case EPhoneViewOpenCallHandling:
-            if ( iOnScreenDialer && IsNumberEntryUsedL() )
+            if ( IsNumberEntryUsedL() )
                 {
-                // Remove number entry from screen
                 iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
                 HandleNumberEntryClearedL();
                 }
-            commandStatus = CPhoneState::HandleCommandL( aCommand );        
+            commandStatus = CPhoneState::HandleCommandL( aCommand );
             break;
+            
+       case EPhoneInCallCmdNewCallFind:
+       case EPhoneInCallCmdNewCall:
+       case EPhoneInCallCmdDtmfListViewSearch:
+       case EPhoneInCallCmdDtmfManualQuery:
+       case EPhoneCmdDtmfSearch:
+       case EPhoneDtmfDialerExit:
+       case EPhoneCmdOptions:
+           break;
  
        default:
             commandStatus = CPhoneState::HandleCommandL( aCommand );
             break;
         }
-
     return commandStatus;
     }
 
@@ -698,11 +638,9 @@
     __LOGMETHODSTARTEND(EPhoneControl,  
         "CPhoneStateInCall::CallFetchedNumberL()" );
     __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(),
-        Panic( EPhoneCtrlInvariant ) );    
-        
+        Panic( EPhoneCtrlInvariant ) );
     // Store the phone number
     iStateMachine->PhoneEngineInfo()->SetPhoneNumber( aFetchedNumber );
-
     DialVoiceCallL();
     }
 
@@ -716,29 +654,22 @@
         "CPhoneStateInCall::SendDtmfL()" );
     __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(),
         Panic( EPhoneCtrlInvariant ) );    
-
     // First get the DTMF sequence from dialog
     TPhoneCmdParamString dtmfSequence;
     HBufC *content = HBufC::NewLC( KPEDtmfMaxLength );
     TPtr ptr( content->Des() );
     dtmfSequence.SetString( &ptr );
-    
-    if ( iOnScreenDialer )
-        {
-        iViewCommandHandle->ExecuteCommand(
-            EPhoneViewGetNumberFromEntry,
-            &dtmfSequence );  
-                    
-        }     
+    iViewCommandHandle->ExecuteCommand(
+        EPhoneViewGetNumberFromEntry,
+        &dtmfSequence );
 
     // Send the DTMF
     if ( ptr.Length() )
         {
         iStateMachine->PhoneEngineInfo()->SetDtmfStringCommand( ptr );
         iStateMachine->SendPhoneEngineMessage(
-            MPEPhoneModel::EPEMessageSendDTMF );    
+            MPEPhoneModel::EPEMessageSendDTMF );
         }
-    
     CleanupStack::PopAndDestroy( content );
     }
 
@@ -749,9 +680,8 @@
 void CPhoneStateInCall::LaunchDtmfListQueryL()
     {
     __LOGMETHODSTARTEND(EPhoneControl,  
-        "CPhoneStateInCall::LaunchDtmfListQueryL()" );   
-         
-    // Fetch active call's id from view
+        "CPhoneStateInCall::LaunchDtmfListQueryL()" );
+    
     TPhoneCmdParamCallStateData callStateData;
     callStateData.SetCallState( EPEStateConnected );
     iViewCommandHandle->HandleCommandL(
@@ -766,16 +696,14 @@
         
     if ( callStateData.CallId() > KErrNotFound )
         {
-        //Get Array of DTMF strings from PhoneEngine           
+        //Get Array of DTMF strings from PhoneEngine
         const CDesCArray& dtmfArray = 
         iStateMachine->PhoneEngineInfo()->
-        RemotePredefinedDtmfStrings( callStateData.CallId() );              
-        
+        RemotePredefinedDtmfStrings( callStateData.CallId() );
         TInt itemCount = dtmfArray.Count();  
         if ( itemCount )
             {
-     
-            TPhoneCmdParamString stringParam;                 
+            TPhoneCmdParamString stringParam;
             //Go through the array and send each dtmf string
             //to view.
             for ( TInt i=0; i<itemCount; i++ )
@@ -788,18 +716,17 @@
                 stringParam.SetString( &ptr ); 
                 iViewCommandHandle->ExecuteCommandL(
                     EPhoneViewSetListQueryString,
-                    &stringParam );     
+                    &stringParam );
                 CleanupStack::PopAndDestroy( string );
                 string = NULL;
-                }           
+                }
             }
         }
     else
         {
         __PHONELOG( EOnlyFatal, EPhoneControl, 
-            "CPhoneStateInCall::LaunchDtmfListQueryL() No found valid call id" );    
-        }  
-    
+            "CPhoneStateInCall::LaunchDtmfListQueryL() No found valid call id" );
+        }
     // if there is a connected call only then open DtmfListQuery.
     if ( IsAnyConnectedCalls() )
        {
@@ -807,9 +734,7 @@
        queryDialogParam.SetQueryType( EPhoneDtmfListQueryDialog );
        queryDialogParam.SetQueryResourceId(
                CPhoneMainResourceResolver::Instance()->
-               ResolveResourceID( EPhoneDtmfNumberListQuery )  );
-       
-       // Display dialog        
+               ResolveResourceID( EPhoneDtmfNumberListQuery ) );
        iViewCommandHandle->ExecuteCommandL( EPhoneViewShowQuery,
            &queryDialogParam );
        }
@@ -824,17 +749,14 @@
     __LOGMETHODSTARTEND(EPhoneControl,  
         "CPhoneStateInCall::IsVideoCallActive()" );
     TBool retVal = EFalse;
-    // Fetch active call's id from view
     TPhoneCmdParamCallStateData callStateData;
     callStateData.SetCallState( EPEStateConnected );
     iViewCommandHandle->HandleCommandL(
         EPhoneViewGetCallIdByState, &callStateData );
-        
     if ( callStateData.CallId() > KErrNotFound )
         {
         retVal = IsVideoCall( callStateData.CallId() );
         }
-        
     return retVal;
     }
     
@@ -848,17 +770,14 @@
     __LOGMETHODSTARTEND(EPhoneControl,  
         "CPhoneStateInCall::IsVideoCallRingingL()" );
     TBool retVal = EFalse;
-    // Fetch ringing call id from view
     TPhoneCmdParamCallStateData callStateData;
     callStateData.SetCallState( EPEStateRinging );
     iViewCommandHandle->HandleCommandL(
         EPhoneViewGetCallIdByState, &callStateData );
-        
     if ( callStateData.CallId() > KErrNotFound )
         {
         retVal = IsVideoCall( callStateData.CallId() );
         }
-        
     return retVal;
     }
 
@@ -871,13 +790,10 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl,  
         "CPhoneStateInCall::GetRingingCallL()" );
-    
-    // Fetch ringing call id from view
     TPhoneCmdParamCallStateData callStateData;
     callStateData.SetCallState( EPEStateRinging );
     iViewCommandHandle->HandleCommandL(
         EPhoneViewGetCallIdByState, &callStateData );
-         
     return callStateData.CallId();
     }
 
@@ -889,12 +805,10 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl, 
         "CPhoneStateInCall::DisconnectOutgoingCallL()");
-    // Fetch alerting call's id from view
     TPhoneCmdParamCallStateData callStateData;
     callStateData.SetCallState( EPEStateConnecting );
     iViewCommandHandle->HandleCommandL(
         EPhoneViewGetCallIdByState, &callStateData );
-        
     if( callStateData.CallId() == KErrNotFound )
         {
         // No connecting call, find the dialing call
@@ -920,7 +834,6 @@
 
     if( callStateData.CallId() > KErrNotFound )
         {
-        // Release the call
         iStateMachine->SetCallId( callStateData.CallId() );
         iStateMachine->SendPhoneEngineMessage( 
             MPEPhoneModel::EPEMessageRelease );
@@ -939,41 +852,22 @@
 //
 void CPhoneStateInCall::LockKeypadL()
     {
-    __LOGMETHODSTARTEND(EPhoneControl, 
-        "CPhoneStateInCall::LockKeypadL()");
-
+    __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateInCall::LockKeypadL()");
+    TInt state = EPSHWRMGripStatusUninitialized; 
     if ( !FeatureManager::FeatureSupported( KFeatureIdKeypadNoSlider ) )
         {
-        TInt state = KErrNone; 
-        TInt err = RProperty::Get(
-            KPSUidHWRM,
-            KHWRMGripStatus,
-            state );
+        TInt err = RProperty::Get( KPSUidHWRM, KHWRMGripStatus, state );
         if ( state == EPSHWRMGripOpen )
             {
             SendGlobalErrorNoteL( EPhoneNoteTextNotAllowed, ETrue );
             }
-        else
-            {
-            iViewCommandHandle->ExecuteCommandL(
-                EPhoneViewEnableKeyLock );    
-            }
-        }
-    else
-        {
-        iViewCommandHandle->ExecuteCommandL(
-            EPhoneViewEnableKeyLock ); 
         }
-    }    
-
-// -----------------------------------------------------------------------------
-// CPhoneStateInCall::CloseDtmfQueryL
-// -----------------------------------------------------------------------------
-//    
-EXPORT_C void CPhoneStateInCall::CloseDtmfQueryL()
-    {    
-    }  
-
+    
+    if ( state != EPSHWRMGripOpen )
+        {
+        iViewCommandHandle->ExecuteCommandL( EPhoneViewEnableKeyLock );
+        }
+    }
 
 // -----------------------------------------------------------------------------
 // CPhoneStateInCall::HandleEndKeyPressL
@@ -981,12 +875,9 @@
 //    
 void CPhoneStateInCall::HandleEndKeyPressL( TPhoneKeyEventMessages aMessage )
     {
-    __LOGMETHODSTARTEND(EPhoneControl, 
-        "CPhoneStateInCall::HandleEndKeyPressL()");        
-    // handle long press of end key
+    __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateInCall::HandleEndKeyPressL()");
     if ( aMessage == EPhoneKeyLongPress )
         {
-        // Fetch active call's id from view
         TPhoneCmdParamCallStateData callStateData;
         callStateData.SetCallState( EPEStateConnected );
         iViewCommandHandle->HandleCommandL(
@@ -1007,10 +898,8 @@
             }
         else
             {
-            // Close all connections
             iStateMachine->SendPhoneEngineMessage(
                 MPEPhoneModel::EPEMessageTerminateAllConnections );
-            
             if ( IsNumberEntryContentStored() )
                 {
                 ClearNumberEntryContentCache();
@@ -1019,16 +908,14 @@
 
         if ( IsNumberEntryUsedL() )
             {
-            // Remove number entry from screen
             iViewCommandHandle->ExecuteCommandL( 
                 EPhoneViewRemoveNumberEntry );
             // Do state-specific operation when number entry is cleared
-            HandleNumberEntryClearedL();         
+            HandleNumberEntryClearedL();
             }
 
         if ( !TopAppIsDisplayedL() )
             {
-            // Bring app to foreground
             TPhoneCmdParamInteger uidParam;
             uidParam.SetInteger( KUidPhoneApplication.iUid );
             iViewCommandHandle->ExecuteCommandL(
@@ -1038,7 +925,7 @@
     else
         {        
         // handle short end key
-        CPhoneState::DisconnectCallL();    
+        CPhoneState::DisconnectCallL();
         }
     }
 
@@ -1052,17 +939,14 @@
         "CPhoneStateInCall::HandleVoiceKeyPressL()");
     if ( aMessage == EPhoneKeyShortPress )
         {
-        // Toggle the handsfree mode
-        const TBool handsfreeMode = 
-            iStateMachine->PhoneEngineInfo()->AudioOutput() ==
-                EPELoudspeaker;
+        const TBool handsfreeMode = iStateMachine->
+                PhoneEngineInfo()->AudioOutput() == EPELoudspeaker;
         SetHandsfreeModeL( !handsfreeMode );
         }
     else // aMessage == EPhoneKeyLongPress
         {
-        // Display call in progress information note
         SendGlobalInfoNoteL( EPhoneCallInProgress, ETrue );
-        }        
+        }
     }
 
 // -----------------------------------------------------------
@@ -1078,7 +962,6 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl, 
         "CPhoneStateInCall::ShowDtmfTextQueryL()");
-
     __ASSERT_DEBUG( aDialogResourceId &&
         aDefaultCbaResourceId &&
         aContentCbaResourceId &&
@@ -1092,9 +975,8 @@
     queryDialogParam.SetDataText( aDataText );
     queryDialogParam.SetSendKeyEnabled( aSendKeyEnabled );
     
-    // Display dialog        
     iViewCommandHandle->ExecuteCommandL( EPhoneViewShowQuery,
-        &queryDialogParam );    
+        &queryDialogParam );
     }
   
 // End of File
--- a/phoneapp/phoneuicontrol/src/cphonestateincoming.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/src/cphonestateincoming.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -93,12 +93,9 @@
     callStateData.SetCallState( EPEStateRinging );
     iViewCommandHandle->HandleCommandL(
         EPhoneViewGetCallIdByState, &callStateData );
-
-    // Do nothing if negative incoming call id
     if( callStateData.CallId() > KErrNotFound  )
         {
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveQuery );
-        
         iRingingCallId = callStateData.CallId();
         }
     else
@@ -139,7 +136,6 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl,
         "CPhoneStateIncoming::HandleKeyEventL ()" );
-    // Handle numeric keys when key events are received in incoming state
     CPhoneState::HandleKeyEventL( aKeyEvent, aEventCode );
     }
 
@@ -151,7 +147,6 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl,
         "CPhoneStateIncoming::HandleNumberEntryClearedL ()" );
-    // Set incoming call CBA when number entry is cleared
     iCbaManager->UpdateIncomingCbaL( iRingingCallId );
     }
 
@@ -167,23 +162,17 @@
         "CPhoneStateIncoming::HandleKeyMessageL ()" );
     __ASSERT_DEBUG( iStateMachine->PhoneEngineInfo(),
         Panic( EPhoneCtrlInvariant ) );
-
     switch ( aCode )
         {
-        // end-key
-        case EKeyNo:
+        case EKeyNo: // end-key
             {
-            // handle long press
             if ( aMessage == EPhoneKeyLongPress )
                 {
-                // Close all connections
                 iStateMachine->SendPhoneEngineMessage(
                     MPEPhoneModel::EPEMessageTerminateAllConnections );
                 iViewCommandHandle->ExecuteCommandL( EPhoneViewCloseFSW );
-
                 if ( CPhoneState::IsNumberEntryUsedL() )
                     {
-                    // Remove number entry from screen
                     iViewCommandHandle->ExecuteCommandL(
                         EPhoneViewRemoveNumberEntry );
                     // Do state-specific operation when number entry is cleared
@@ -192,40 +181,34 @@
                 }
             else
                 {
-                // handle end key
+                // handle short end key
                 DisconnectWaitingCallL();
                 }
             }
             break;
-
-        // send-key
-        case EKeyYes:
+            
+        case EKeyYes: // send-key
             if( CPhoneState::IsNumberEntryVisibleL() )
                 {
                 HandleSendL();
                 }
             else
                 {
-                // Answer the call
                 AnswerCallL();
                 }
             break;
 
-        // OK key
-        case EKeyDevice3:
+        case EKeyDevice3: // OK key
             if ( aMessage == EPhoneKeyLongPress )
                 {
-                // Answer the call if long press of selection key
                 AnswerCallL();
                 }
             break;
 
         case EKeyDeviceF:
-                {
-                __PHONELOG( EBasic, EPhoneUIStates,
-                    "CPhoneConferenceAndSingleAndWaiting::HandleKeyMessageL-deviceF" );
-                HandleHoldSwitchL();
-                }
+            __PHONELOG( EBasic, EPhoneUIStates,
+                "CPhoneConferenceAndSingleAndWaiting::HandleKeyMessageL-deviceF" );
+            HandleHoldSwitchL();
             break;
             
         default:
@@ -239,7 +222,6 @@
 //
 void CPhoneStateIncoming::HandleSendL()
     {
-    // Get the number entry contents
     HBufC* phoneNumber = PhoneNumberFromEntryLC();
     TPtr ptr( phoneNumber->Des() );
 
@@ -263,19 +245,6 @@
     }
 
 // -----------------------------------------------------------
-// CPhoneStateIncoming::HandleKeyPressDurationL
-// -----------------------------------------------------------
-//
-EXPORT_C void CPhoneStateIncoming::HandleKeyPressDurationL(
-    TKeyCode /*aCode*/,
-    TTimeIntervalMicroSeconds /*aKeyPressDuration*/ )
-    {
-    __LOGMETHODSTARTEND(EPhoneControl,
-        "CPhoneStateIncoming::HandleKeyPressDurationL ()" );
- 
-    }
-
-// -----------------------------------------------------------
 // CPhoneStateIncoming::HandlePhoneEngineMessageL
 // -----------------------------------------------------------
 //
@@ -296,7 +265,6 @@
             break;
 
         case MEngineMonitor::EPEMessageInValidEmergencyNumber:
-            // Answer the call
             AnswerCallL();
             break;
 
@@ -322,11 +290,10 @@
          
         case MEngineMonitor::EPEMessageAvailableAudioOutputsChanged:
             HandleAudioAvailableOutputChangedL();
-            // Need to avoid CBA update
+            // Do not update CBA's.
             break;
         
         case MEngineMonitor::EPEMessageRemotePartyInfoChanged:
-            // Update remote info data
             UpdateRemoteInfoDataAndLabelL( aCallId, UpdateCallHeaderInfoL( aCallId ) );
             break;
             
@@ -346,7 +313,6 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl,
             "CPhoneStateIncoming::UpdateRemoteInfoDataAndLabelL ()" );
-    // Update the remote info data in the call header
     iViewCommandHandle->ExecuteCommandL( 
         EPhoneViewUpdateCallHeaderRemoteInfoDataAndLabel, 
         aCallId,
@@ -361,20 +327,18 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl,
         "CPhoneStateIncoming::HandleConnectedL ()" );
-
-    // Re-enable global notes
     TPhoneCmdParamBoolean globalNotifierParam;
     globalNotifierParam.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
         &globalNotifierParam );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetEikonNotifiersDisabled,
         &globalNotifierParam );
-    // Stop tone playing, if necessary
+    
     iViewCommandHandle->ExecuteCommandL( EPhoneViewStopRingTone );
     
+    // For keeping video call on top!
     if( IsVideoCall( aCallId ) && !IsAutoLockOn() )
         {
-        // For keeping video call on top
         TPhoneCmdParamBoolean booleanParam;
         booleanParam.SetBoolean( EFalse );
         iViewCommandHandle->ExecuteCommandL(
@@ -386,23 +350,15 @@
         {
         EnableCallUIL();
         }
-    
-    // Reset blocked keys list
     iStateMachine->PhoneStorage()->ResetBlockedKeysList();
-
     BeginUiUpdateLC();
-    
-    // Update single call
     UpdateSingleActiveCallL( aCallId );
 
     SetTouchPaneButtons( EPhoneIncallButtons );
     SetBackButtonActive(ETrue);
-            
     EndUiUpdate();
 
-    // Go to single state
     iCbaManager->UpdateCbaL( EPhoneCallHandlingInCallCBA );
-
     iStateMachine->ChangeState( EPhoneStateSingle );
     }
 
@@ -414,9 +370,10 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl,
         "CPhoneStateIncoming::HandleAudioPlayStoppedL ()" );
-    // Set the ringtone silenced status
     iCbaManager->SetRingtoneSilencedStatus( ETrue );
-    TInt resourceId = EPhoneCallHandlingIncomingRejectCBA;
+    TInt resourceId = iCbaManager->SoftRejectStatus() ? 
+                            EPhoneCallHandlingIncomingSoftRejectCBA:
+                            EPhoneCallHandlingIncomingRejectCBA;
     iCbaManager->SetCbaL( resourceId );
     }
 
@@ -429,54 +386,43 @@
     __LOGMETHODSTARTEND(EPhoneControl,
         "CPhoneStateIncoming::HandleIdleL ()" );
     BeginUiUpdateLC();
-
-    // Enable call UI
     if( FeatureManager::FeatureSupported( KFeatureIdFfTouchUnlockStroke ) 
         && iStateMachine->PhoneStorage()->IsScreenLocked() )
         {
         EnableCallUIL();
         }
-
-    // Reset blocked keys list
     iStateMachine->PhoneStorage()->ResetBlockedKeysList();
     
-    // Remove call
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
-    // Stop tone playing, if necessary
     iViewCommandHandle->ExecuteCommandL( EPhoneViewStopRingTone );
     
     TPhoneCmdParamBoolean globalNotifierParam;
     globalNotifierParam.SetBoolean( EFalse );
-    iViewCommandHandle->ExecuteCommandL( EPhoneViewSetEikonNotifiersDisabled,
-        &globalNotifierParam );
-    
+    iViewCommandHandle->ExecuteCommandL( 
+            EPhoneViewSetEikonNotifiersDisabled,
+            &globalNotifierParam );
     SetDefaultFlagsL();
     
      if ( IsNumberEntryUsedL() )
         {
         if ( NeedToSendToBackgroundL() )
             {
-            // Return phone to the background if send to background is needed.
             iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
-
-            // Set Number Entry CBA
             iCbaManager->SetCbaL( EPhoneNumberAcqCBA );
             }
         else
             {
-            // Show the number entry if it exists.
             SetNumberEntryVisibilityL(ETrue);
             }
         }
     else if ( NeedToSendToBackgroundL() )
         {
         // Continue displaying current app but set up the
-        // idle screen in the background
+        // idle screen in the background.
         SetupIdleScreenInBackgroundL();
         }
     else
         {
-        // Display idle screen
         DisplayIdleScreenL();
         }
  
@@ -484,7 +430,6 @@
     SetBackButtonActive(ETrue);
     
     EndUiUpdate();
-    // Go to idle state   
     iCbaManager->UpdateCbaL( EPhoneEmptyCBA );
     iStateMachine->ChangeState( EPhoneStateIdle );
     }
@@ -498,7 +443,6 @@
     __LOGMETHODSTARTEND(EPhoneControl,
         "CPhoneStateIncoming::HandleCommandL ()" );
     TBool commandStatus = ETrue;
-
     switch( aCommand )
         {
         case EPhoneCmdOptions:
@@ -533,7 +477,6 @@
             break;
 
         case EPhoneCallComingCmdSoftReject:
-            // Open Soft reject message editor
             OpenSoftRejectMessageL();
             break;
 
@@ -545,7 +488,6 @@
             commandStatus = CPhoneState::HandleCommandL( aCommand );
             break;
         }
-
     return commandStatus;
     }
 
@@ -557,12 +499,9 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl,
         "CPhoneStateIncoming::AnswerCallL ()" );
-    // Mute the ring tone
     iViewCommandHandle->ExecuteCommandL( EPhoneViewMuteRingToneOnAnswer );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewCloseFSW );
-    // Answer the call
-    iStateMachine->SendPhoneEngineMessage(
-        MPEPhoneModel::EPEMessageAnswer );
+    iStateMachine->SendPhoneEngineMessage( MPEPhoneModel::EPEMessageAnswer );
     }
 
 // -----------------------------------------------------------
@@ -573,8 +512,6 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl,
         "CPhoneStateIncoming::DisconnectWaitingCallL ()" );
-
-    // Stop tone playing, if necessary
     iViewCommandHandle->ExecuteCommandL( EPhoneViewStopRingTone );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewCloseFSW );
 
@@ -593,23 +530,22 @@
 
     if( IsVideoCall( iRingingCallId ) )
         {
-        // Video call can be released only after we get response to VT Shutdown Command
-        CPhoneMediatorFactory::Instance()->Sender()->IssueCommand( KMediatorVideoTelephonyDomain,
-                                                                             KCatPhoneToVideotelCommands, 
-                                                                             EVtCmdReleaseDataport,
-                                                                   TVersion( KPhoneToVideotelCmdVersionMajor,
-                                                                             KPhoneToVideotelCmdVersionMinor, 
-                                                                             KPhoneToVideotelCmdVersionBuild ),
-                                                                   KNullDesC8,
-                                                                   CPhoneReleaseCommand::NewL( *iStateMachine ) );
+        // Video call can be released only after we get response 
+        // to VT Shutdown Command.
+        CPhoneMediatorFactory::Instance()->Sender()->IssueCommand( 
+                KMediatorVideoTelephonyDomain,
+                         KCatPhoneToVideotelCommands, 
+                         EVtCmdReleaseDataport,
+               TVersion( KPhoneToVideotelCmdVersionMajor,
+                         KPhoneToVideotelCmdVersionMinor, 
+                         KPhoneToVideotelCmdVersionBuild ),
+               KNullDesC8,
+               CPhoneReleaseCommand::NewL( *iStateMachine ) );
         }
     else
         {
-        // Release the call
-        iStateMachine->SendPhoneEngineMessage(
-                MPEPhoneModel::EPEMessageRelease );
+        iStateMachine->SendPhoneEngineMessage( MPEPhoneModel::EPEMessageRelease );
         }
-    
     ShowDisconnectingL( iRingingCallId );
     }
 
@@ -621,23 +557,21 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl,
         "CPhoneStateIncoming::OpenSoftRejectMessageEditorL ()" );
-    
-    // Silence the vibrating
     iViewCommandHandle->ExecuteCommandL( EPhoneViewStopRingTone );
     iStateMachine->SendPhoneEngineMessage(
         MPEPhoneModel::EPEMessageStopTonePlay );
     
+    iCbaManager->SetSoftRejectStatus( EFalse );
+    
     // Re-enable global notes. Otherwise message editor is not opened.
     TPhoneCmdParamBoolean globalNotifierParam;
     globalNotifierParam.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetEikonNotifiersDisabled,
         &globalNotifierParam );
 
-    // Change the CBA to Options..Reject
-    iCbaManager->SetCbaL( EPhoneCallHandlingIncomingRejectCBA );
+    iCbaManager->SetCbaL( EPhoneCallHandlingIncomingSoftRejectCBA );
 
     TPhoneCmdParamSfiData sfiDataParam;
-
     if ( iStateMachine->PhoneEngineInfo()->RemoteName( iRingingCallId ).Length() )
         {
         // store both the name and the number
@@ -649,9 +583,7 @@
         // store the number
         sfiDataParam.SetNumber( iStateMachine->PhoneEngineInfo()->RemotePhoneNumber( iRingingCallId ) );
         }
-
-    iViewCommandHandle->ExecuteCommandL(
-        EPhoneViewOpenSoftRejectEditor, &sfiDataParam );
+    iViewCommandHandle->ExecuteCommandL( EPhoneViewOpenSoftRejectEditor, &sfiDataParam );
     }
 
 
@@ -661,14 +593,12 @@
 //
 TInt CPhoneStateIncoming::GetNumberEntryVisibleMenuBar()
     {
-    if( CPhoneState::IsVideoCall ( iRingingCallId ) )
+    TInt resource(EPhoneIncomingCallMenubarWithNumberEntry);
+    if( IsVideoCall ( iRingingCallId ) )
         {
-        return EPhoneIncomingVideoCallMenubarWithNumberEntry;
+        resource = EPhoneIncomingVideoCallMenubarWithNumberEntry;
         }
-    else
-        {
-        return EPhoneIncomingCallMenubarWithNumberEntry;
-        }
+    return resource;
     }
 
 // -----------------------------------------------------------
@@ -677,14 +607,12 @@
 //
 TInt CPhoneStateIncoming::GetNumberEntryNotVisibleMenuBar()
     {
-    if( CPhoneState::IsVideoCall ( iRingingCallId ) )
+    TInt resource(EPhoneIncomingCallMenubar);
+    if( IsVideoCall ( iRingingCallId ) )
         {
-        return EPhoneIncomingVideoCallMenubar;
+        resource =  EPhoneIncomingVideoCallMenubar;
         }
-    else
-        {
-        return EPhoneIncomingCallMenubar;
-        }
+    return resource;
     }
 
 // -----------------------------------------------------------
@@ -696,11 +624,9 @@
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateIncoming::ShowDisconnectingL( ) ");
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateDisconnecting );
-
     TBuf<KPhoneCallHeaderLabelMaxLength> labelText( KNullDesC );
     TInt callLabelId = CPhoneMainResourceResolver::Instance()->
         ResolveResourceID( EPhoneInCallDisconnected );
-
     StringLoader::Load( labelText, callLabelId, CCoeEnv::Static() );
     callHeaderParam.SetLabelText( labelText );
 
@@ -721,16 +647,13 @@
         {
         if( aKeylockEnabled )
             {
-            // Keylock enabled
             if( iStateMachine->PhoneStorage()->IsBlockedKeysListEmpty() )
                 {
-                // Disable HW Keys if needed
                 DisableHWKeysL();
                 }
             }
         else
             {
-            // Keylock disabled
             // Reset blocked keys list
             iStateMachine->PhoneStorage()->ResetBlockedKeysList();
             }
--- a/phoneapp/phoneuicontrol/src/cphonestatestartup.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/src/cphonestatestartup.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -15,7 +15,6 @@
 *
 */
 
-
 // INCLUDES
 #include "cphonestatestartup.h"
 #include "phonestatedefinitions.h"
@@ -62,24 +61,6 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateStartup::ConstructL() ");
     CPhoneState::BaseConstructL();
-
-    // CAPTURE KEY EVENTS PERMANENTLY
-        
-    // Capture the up and down events for the No key
-    /*TPhoneCmdParamKeyCapture noKeyCaptureParam;
-    noKeyCaptureParam.SetKey( EStdKeyNo );
-    noKeyCaptureParam.SetKeyCode( EKeyNo );
-    noKeyCaptureParam.SetCaptureType( EPhoneKeyAllEvents );
-    iViewCommandHandle->ExecuteCommandL( EPhoneViewStartCapturingKey, 
-        &noKeyCaptureParam );*/
-          
-    // Capture the up and down events for the EStdKeyEnd key
-    /*TPhoneCmdParamKeyCapture endKeyCaptureParam;
-    endKeyCaptureParam.SetKey( EStdKeyEnd );
-    endKeyCaptureParam.SetKeyCode( EKeyEnd );
-    endKeyCaptureParam.SetCaptureType( EPhoneKeyAllEvents );
-    iViewCommandHandle->ExecuteCommandL( EPhoneViewStartCapturingKey, 
-        &endKeyCaptureParam );*/
     }
 
 // -----------------------------------------------------------
@@ -133,26 +114,21 @@
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateStartup::HandlePEConstructionReadyL() ");
     // Indicate that phone engine construction is ready
     iPEReady = ETrue;
-
     // Only go to the idle state if phone is also ready
     if ( iPhoneReady )
         {
-        // Security mode check. 
-        TPhoneCmdParamBoolean isSecurityMode;      
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewGetSecurityModeStatus, &isSecurityMode );        
+        TPhoneCmdParamBoolean isSecurityMode;
+        iViewCommandHandle->ExecuteCommandL( EPhoneViewGetSecurityModeStatus, &isSecurityMode );
         if ( !isSecurityMode.Boolean() && !IsSimOk() )
             {
             TPhoneCmdParamBoolean securityMode;
             securityMode.SetBoolean( ETrue );
             iViewCommandHandle->ExecuteCommandL( EPhoneViewSetSecurityMode, &securityMode );
             iCreateNote = CIdle::NewL( CActive::EPriorityHigh );
-            
             CreateAndShowNoteAfterIdle(); 
             }
-        // Go to idle state
         SetDefaultFlagsL();
         iCbaManager->UpdateCbaL( EPhoneEmptyCBA );
-        
         iStateMachine->ChangeState( EPhoneStateIdle );
         }
     }
@@ -166,7 +142,6 @@
     TKeyCode /*aCode*/ )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateStartup::HandleKeyMessageL( ) ");
-
     // TBD: Panic if PE Construction fails
     // For Debug use only
     // If a key event is received in this state, either the phone engine
@@ -193,11 +168,9 @@
 // -----------------------------------------------------------
 //
 EXPORT_C void CPhoneStateStartup::HandleDtmfKeyToneL( 
-        const TKeyEvent& /* aKeyEvent */,
-        TEventCode /* aEventCode */ )
+        const TKeyEvent& /* aKeyEvent */, TEventCode /* aEventCode */ )
     {
     // Empty implementation
-    __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateStartup::HandleDtmfKeyToneL() ");
     }
     
 // -----------------------------------------------------------
@@ -209,12 +182,10 @@
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateStartup::HandlePhoneStartupL() ");
     // Indicate that the phone is ready
     iPhoneReady = ETrue;
-
     // Only go to idle state when Phone engine is also ready
     if ( iPEReady )
         {
-        // Security mode check.
-        TPhoneCmdParamBoolean isSecurityMode;      
+        TPhoneCmdParamBoolean isSecurityMode;
         iViewCommandHandle->ExecuteCommandL( EPhoneViewGetSecurityModeStatus, &isSecurityMode );
         if ( !isSecurityMode.Boolean() && !IsSimOk() )
             {
@@ -222,13 +193,10 @@
             securityMode.SetBoolean( ETrue );
             iViewCommandHandle->ExecuteCommandL( EPhoneViewSetSecurityMode, &securityMode );
             iCreateNote = CIdle::NewL( CActive::EPriorityHigh );
-            
             CreateAndShowNoteAfterIdle(); 
             }
-        // Go to idle state
         SetDefaultFlagsL();
         iCbaManager->UpdateCbaL( EPhoneEmptyCBA );
-        
         iStateMachine->ChangeState( EPhoneStateIdle );
         }
     }
@@ -242,9 +210,8 @@
 EXPORT_C void CPhoneStateStartup::HandleIdleForegroundEventL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateStartup::HandleIdleForegroundEventL( ) ");
-    // Security mode check. 
     TPhoneCmdParamBoolean isSecurityMode;      
-    iViewCommandHandle->ExecuteCommandL( EPhoneViewGetSecurityModeStatus, &isSecurityMode );        
+    iViewCommandHandle->ExecuteCommandL( EPhoneViewGetSecurityModeStatus, &isSecurityMode );
     if ( !isSecurityMode.Boolean() && !IsSimOk() )
         {
         TPhoneCmdParamBoolean securityMode;
@@ -264,8 +231,7 @@
 //
 void CPhoneStateStartup::CreateAndShowNoteAfterIdle()
     {
- __LOGMETHODSTARTEND( EPhoneControl, "CPhoneStateStartup::CreateAndShowNoteAfterIdle ");
-        
+    __LOGMETHODSTARTEND( EPhoneControl, "CPhoneStateStartup::CreateAndShowNoteAfterIdle ");
     if ( !iCreateNote->IsActive() )
         {
         iCreateNote->Start( 
@@ -284,7 +250,6 @@
     __LOGMETHODSTARTEND( EPhoneControl, "CPhoneStateStartup::DoShowNoteL ");
     static_cast< CPhoneStateStartup* >( aAny )->
         StartShowSecurityNoteL();
-
     return KErrNone;
     }
 
--- a/phoneapp/phoneuicontrol/src/cphonesystemeventhandler.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/src/cphonesystemeventhandler.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -162,15 +162,6 @@
     iStateMachine->State()->HandleKeyLockEnabled( aKeylockEnabled );
     }
 
-// -----------------------------------------------------------
-// CPhoneSystemEventHandler::HandleEnvironmentChangeL
-// -----------------------------------------------------------
-//
-void CPhoneSystemEventHandler::HandleEnvironmentChangeL( const TInt aChanges )
-    {
-    iStateMachine->State()->HandleEnvironmentChangeL( aChanges );
-    }
-
 // ---------------------------------------------------------
 // CPhoneSystemEventHandler::HandlePhoneStartupL
 // ---------------------------------------------------------
--- a/phoneapp/phoneuicontrol/src/cphoneuicontroller.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/src/cphoneuicontroller.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -276,17 +276,6 @@
     }
 
 // ---------------------------------------------------------
-// CPhoneUIController::HandleEnvironmentChangeL
-// ---------------------------------------------------------
-//
-EXPORT_C void CPhoneUIController::HandleEnvironmentChangeL( 
-    const TInt aChanges )
-    {
-    __ASSERT_DEBUG( iSystemEventHandler, Panic( EPhoneCtrlInvariant ) );
-    iSystemEventHandler->HandleEnvironmentChangeL( aChanges );
-    }
-
-// ---------------------------------------------------------
 // CPhoneUIController::HandlePhoneStartupL
 // ---------------------------------------------------------
 //
--- a/phoneapp/phoneuicontrol/src/tphonecallheaderparam.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuicontrol/src/tphonecallheaderparam.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -238,10 +238,6 @@
     aCallHeaderData->SetCipheringIndicatorAllowed( 
         iStateMachine.PhoneEngineInfo()->SecureSpecified() );
     
-    iManagerUtility.SetPhoneNumberAvailabilityL( 
-            iStateMachine.PhoneEngineInfo()->RemotePhoneNumber( aCallId ).Length(),
-            ContactInfoAvailable( aCallId ) );
-    
     //see service provider settings API
     aCallHeaderData->SetServiceId(
        iStateMachine.PhoneEngineInfo()->ServiceId( aCallId ) );
--- a/phoneapp/phoneuiqtviewadapter/bwins/phoneuiqtviewadapteru.def	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/bwins/phoneuiqtviewadapteru.def	Fri Sep 17 08:29:19 2010 +0300
@@ -99,4 +99,5 @@
 	?ExecuteCommand@PhoneUIQtViewAdapter@@UAEXH@Z @ 98 NONAME ; void PhoneUIQtViewAdapter::ExecuteCommand(int)
 	?metaObject@PhoneResourceAdapter@@UBEPBUQMetaObject@@XZ @ 99 NONAME ; struct QMetaObject const * PhoneResourceAdapter::metaObject(void) const
 	?setParticipantListActions@PhoneUIQtViewAdapter@@AAEXXZ @ 100 NONAME ; void PhoneUIQtViewAdapter::setParticipantListActions(void)
+	?clearDialpad@PhoneUIQtViewAdapter@@AAEXXZ @ 101 NONAME ; void PhoneUIQtViewAdapter::clearDialpad(void)
 
--- a/phoneapp/phoneuiqtviewadapter/eabi/phoneuiqtviewadapteru.def	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/eabi/phoneuiqtviewadapteru.def	Fri Sep 17 08:29:19 2010 +0300
@@ -111,4 +111,5 @@
 	_ZThn8_N20PhoneUIQtViewAdapter15ExecuteCommandLEiiR7TDesC16 @ 110 NONAME
 	_ZThn8_N20PhoneUIQtViewAdapterD0Ev @ 111 NONAME
 	_ZThn8_N20PhoneUIQtViewAdapterD1Ev @ 112 NONAME
+	_ZN20PhoneUIQtViewAdapter12clearDialpadEv @ 113 NONAME
 
--- a/phoneapp/phoneuiqtviewadapter/inc/phoneapplauncher.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/inc/phoneapplauncher.h	Fri Sep 17 08:29:19 2010 +0300
@@ -19,7 +19,18 @@
 #define PHONEAPPLAUNCHER_H
 
 #include <QObject>
+#include <QRunnable>
 
+class PhoneAppLauncherTask : public QRunnable
+{
+public:
+    void run();
+public:    
+    QString mService;
+    QString mInterface; 
+    QString mOperation;
+    QList<QVariant> mArguments;
+};
 
 /*!
  * \class PhoneAppLauncher
@@ -58,6 +69,7 @@
             bool showDialpad,
             const QString& dialpadText);
 
+
 private:
     void sendServiceRequest(
             const QString& service,
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneapp/phoneuiqtviewadapter/inc/phoneglobalnotes.h	Fri Sep 17 08:29:19 2010 +0300
@@ -0,0 +1,151 @@
+/*!
+* Copyright (c) 2009 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:  Handles phone notes.
+*
+*/
+
+#ifndef PHONEGLOBALNOTES_H
+#define PHONEGLOBALNOTES_H
+
+#include <QObject>
+#include <QString>
+#include "tphonecmdparamnote.h"
+#include "phoneaction.h"
+#include <hbdevicenotificationdialogsymbian.h>
+#include <hbdevicemessageboxsymbian.h>
+#include <hbdeviceprogressdialogsymbian.h>
+
+// FORWARD DECLARATION
+class TPhoneCommandParam;
+class TPhoneCmdParamQuery;
+class TPhoneCmdParamGlobalNote;
+class HbDeviceMessageBox;
+class HbDeviceNotificationDialog;
+class HbDeviceProgressDialog;
+class QTimer;
+
+class PhoneGlobalNotes : public QObject,
+    public MHbDeviceNotificationDialogObserver,
+    public MHbDeviceMessageBoxObserver,
+    public MHbDeviceProgressDialogObserver
+{
+    Q_OBJECT
+    
+public:
+
+    /*!
+        \fn PhoneGlobalNotes (QObject *parent)
+    */
+    PhoneGlobalNotes(QObject *parent = 0);
+        
+    /*!
+        Destructor
+     */
+    virtual ~PhoneGlobalNotes ();
+
+    /*!
+        \fn void showDefaultQuery()
+        
+        This method shows global wait note.
+    */
+    void showGlobalWaitNote(TPhoneCmdParamQuery* params);
+
+    /*!
+        \fn void showDeviceMessageBox()
+        
+        This method shows device message box.
+    */
+    void showDeviceMessageBox(TPhoneCmdParamGlobalNote* params);
+    
+    /*!
+        \fn void showDeviceNotificationDialog()
+        
+        This method shows device notification dialog.
+    */
+    void showDeviceNotificationDialog(TPhoneCmdParamGlobalNote* params);
+    
+    
+    /*!
+        \fn void removeGlobalWaitNote()
+        
+        This method removes global wait note.
+
+    */
+    void removeGlobalWaitNote();
+signals:
+
+    /*!
+        \fn void command(int command)
+        
+        This signal is emitted when note action is handled.
+    */
+    void command (int command);
+    
+private:
+
+    /*!
+        \fn QString globalNoteText()
+        
+        This method returns text for global note.
+    */
+    QString globalNoteText(TPhoneCommandParam *commandParam);
+
+
+private: // Leaving symbian stuff
+    void ShowGlobalWaitNoteL(
+            const TDesC16& aText);
+    
+    void ShowDeviceMessageBoxL(
+            CHbDeviceMessageBoxSymbian::TType aType,
+            const TDesC16& aText,
+            TInt aTimeout);
+    
+    void ShowDeviceNotificationDialogL(
+            const TDesC16& aTitle, TInt aTimeout);
+    
+    
+private slots:
+  
+    /*!
+        \fn void queryTimeout ()
+        
+        Slot is called when query timeout expires.
+    
+    */
+    void queryTimeout();
+    
+private: // Symbian observers
+    void NotificationDialogActivated(
+            const CHbDeviceNotificationDialogSymbian* aDialog);
+    void NotificationDialogClosed(
+            const CHbDeviceNotificationDialogSymbian* aDialog, TInt aCompletionCode);
+    void MessageBoxClosed(const CHbDeviceMessageBoxSymbian* aMessageBox,
+            CHbDeviceMessageBoxSymbian::TButtonId aButton);
+    void ProgressDialogCancelled(
+            const CHbDeviceProgressDialogSymbian* aProgressDialog);
+    void ProgressDialogClosed(
+            const CHbDeviceProgressDialogSymbian* aProgressDialog);
+    
+private:
+
+    QTimer *m_timer;
+    int m_queryCanceledCommand;
+    int m_timeoutCommand;
+    
+    QList<CHbDeviceNotificationDialogSymbian* > iNotificationList;
+    QList<CHbDeviceMessageBoxSymbian *> iMessageBoxList;
+    CHbDeviceProgressDialogSymbian *iProgressDialog;
+};
+
+#endif // PHONEGLOBALNOTES_H
--- a/phoneapp/phoneuiqtviewadapter/inc/phonenotecontroller.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/inc/phonenotecontroller.h	Fri Sep 17 08:29:19 2010 +0300
@@ -27,15 +27,13 @@
 class TPhoneCommandParam;
 class TPhoneCmdParamQuery;
 class TPhoneCmdParamGlobalNote;
-class HbDeviceMessageBox;
-class HbDeviceNotificationDialog;
-class HbDeviceProgressDialog;
 class HbProgressDialog;
 class HbMessageBox;
 class HbAction;
 class QSignalMapper;
 class QTimer;
-
+class PhoneGlobalNotes;
+class HbDialog;
 
 class PhoneNoteController : public QObject
 {
@@ -119,22 +117,6 @@
     void command (int command);
     
 private slots:
-
-    /*!
-        \fn void destroyDialog()
-        
-        Slot is called when device message box is closed.
-    
-    */
-    void destroyDialog();
-
-    /*!
-        \fn void destroyNotification()
-        
-        Slot is called when device notification dialog is closed.
-    
-    */
-    void destroyNotification();
     
     /*!
         \fn void removeMappings ()
@@ -144,33 +126,9 @@
     */
     void removeMappings();
     
-    /*!
-        \fn void queryCancelled ()
-        
-        Slot is called when query is canceled.
-    
-    */
-    void queryCancelled();
-  
-    /*!
-        \fn void queryTimeout ()
-        
-        Slot is called when query timeout expires.
-    
-    */
-    void queryTimeout();
-    
 private:
 
     /*!
-        \fn QString globalNoteText()
-        
-        This method returns text for global note.
-    */
-    QString globalNoteText(TPhoneCommandParam *commandParam);
-    
-    
-    /*!
         \fn void showDtmfNote()
         
         This method shows dtmf sending note.
@@ -183,41 +141,16 @@
         This method shows default query.
     */
     void showDefaultQuery(TPhoneCmdParamQuery* params);
-
-    /*!
-        \fn void showDefaultQuery()
-        
-        This method shows global wait note.
-    */
-    void showGlobalWaitNote(TPhoneCmdParamQuery* params);
-
-    /*!
-        \fn void showDeviceMessageBox()
-        
-        This method shows device message box.
-    */
-    void showDeviceMessageBox(TPhoneCmdParamGlobalNote* params);
+    
     
-    /*!
-        \fn void showDeviceNotificationDialog()
-        
-        This method shows device notification dialog.
-    */
-    void showDeviceNotificationDialog(TPhoneCmdParamGlobalNote* params);
+    void replaceDialogActions(HbDialog *dialog, QList<HbAction *> &actions);
     
 private:
-
-    QTimer *m_timer;
-    QList<HbDeviceMessageBox *> m_messageBoxList;
-    QList<HbDeviceNotificationDialog* > m_notificationList;
-    HbDeviceProgressDialog *m_progressDialog;
+    PhoneGlobalNotes *m_globalNotes;
     HbProgressDialog *m_dtmfNote;
     HbMessageBox *m_queryNote;
     QSignalMapper *m_signalMapper;
     QList<HbAction*> m_actions;
-    int m_queryCanceledCommand;
-    int m_timeoutCommand;
-    
 };
 
 #endif // PHONENOTECONTROLLER_H
--- a/phoneapp/phoneuiqtviewadapter/inc/phoneuicommandcontroller.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/inc/phoneuicommandcontroller.h	Fri Sep 17 08:29:19 2010 +0300
@@ -224,14 +224,19 @@
                                  QList<int> callStates) const;
     
     /*!
-        \fn void buttonCommandList()
+        \fn void mapCommandToAction()
         
         Maps push button command to phone action.
     */
     PhoneAction *mapCommandToAction(int command,
                                     bool disabled=false) const;
     
-    
+    /*!
+        \fn void emergencyCall()
+        
+        Checks is an emergency call ongoing.
+    */    
+    bool emergencyCall(QMap<int,int> callStates) const;
     
 private:
 
--- a/phoneapp/phoneuiqtviewadapter/inc/phoneuiqtbuttonscontroller.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/inc/phoneuiqtbuttonscontroller.h	Fri Sep 17 08:29:19 2010 +0300
@@ -40,7 +40,8 @@
         FullConference  = 0x200, // Max member count in conference
         Outgoing        = 0x400, // Outgoing call
         IhfAsPushButton  = 0x800,  // Speaker as push button in bubble
-        BluetoothAvailable   = 0x1000  // Bluetooth available
+        BluetoothAvailable   = 0x1000,  // Bluetooth available
+        DisableSoftReject    = 0x2000,  // Disable soft reject
     };
     Q_DECLARE_FLAGS(PhoneButtonFlags, PhoneButtonFlag)
 
--- a/phoneapp/phoneuiqtviewadapter/inc/phoneuiqtviewadapter.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/inc/phoneuiqtviewadapter.h	Fri Sep 17 08:29:19 2010 +0300
@@ -467,6 +467,8 @@
     */
     void removeDialpad();
     
+    void clearDialpad();
+    
     /*!
         \fn void PhoneUIQtViewAdapter::addToConference()
         
--- a/phoneapp/phoneuiqtviewadapter/inc/phoneviewcommanddefinitions.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/inc/phoneviewcommanddefinitions.h	Fri Sep 17 08:29:19 2010 +0300
@@ -143,6 +143,7 @@
     EPhoneViewLaunchLogs,
     EPhoneViewSetBlueToothFlag,
     EPhoneViewSetBluetoothAvailableFlag,
+    EPhoneViewSetSoftRejectDimmed,
     EPhoneAmountOfCommands, // Don't remove this, this should always be the last in list.
 };
 
--- a/phoneapp/phoneuiqtviewadapter/phoneuiqtviewadapter.pri	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/phoneuiqtviewadapter.pri	Fri Sep 17 08:29:19 2010 +0300
@@ -28,6 +28,7 @@
 HEADERS += ./inc/phoneindicatorcontroller.h
 HEADERS += ./inc/phonevisibilityhandler.h
 HEADERS += ./inc/phoneapplauncher.h
+HEADERS += ./inc/phoneglobalnotes.h
 
 SOURCES += ./src/phoneuiqtviewadapter.cpp
 SOURCES += ./src/phoneuiqtbuttonscontroller.cpp
@@ -41,5 +42,5 @@
 SOURCES += ./src/phoneindicatorcontroller.cpp
 SOURCES += ./src/phonevisibilityhandler.cpp
 SOURCES += ./src/phoneapplauncher.cpp
+SOURCES += ./src/phoneglobalnotes.cpp
 
-
--- a/phoneapp/phoneuiqtviewadapter/src/phoneapplauncher.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/src/phoneapplauncher.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -20,10 +20,36 @@
 #include <xqappmgr.h>
 #include <xqrequestinfo.h>
 #include <xqaiwdecl.h>
+#include <QThreadPool>
 
 #include "phoneapplauncher.h"
 #include "qtphonelog.h"
 
+// runnable object
+void PhoneAppLauncherTask::run()
+{
+    XQApplicationManager appManager;
+    QScopedPointer<XQAiwRequest> request( 
+        mService.isEmpty() ? 
+        appManager.create(mInterface, mOperation, false) :
+        appManager.create(mService, mInterface, mOperation, false) );
+    if (request == NULL) {
+        PHONE_TRACE1("service not found");
+        return;
+    }
+
+    XQRequestInfo info;
+    info.setForeground(true);
+    request->setInfo(info);
+    request->setArguments(mArguments);
+    QVariant retValue(-1);
+    if (!request->send(retValue)) {
+        int error = request->lastError();
+        PHONE_TRACE2("send failed, error %d", request->lastError());
+    }
+}
+
+
 /*!
     PhoneAppLauncher::PhoneAppLauncher.
  */
@@ -55,11 +81,11 @@
     arguments.append(QVariant(name));
     arguments.append(QVariant(messageBody));
     sendServiceRequest(
-        "com.nokia.services.hbserviceprovider",
-        "conversationview",
+        "messaging",
+        XQI_MESSAGE_SEND,
         "send(QString,QString,QString)",
         arguments,
-        true);
+        false);
 }
 
 /*!
@@ -90,12 +116,14 @@
     map.insert(XQLOGS_DIALPAD_TEXT, QVariant(dialpadText));
     QList<QVariant> args;
     args.append(QVariant(map));
-    sendServiceRequest(
-        "logs",
-        XQI_LOGS_VIEW,
-        XQOP_LOGS_SHOW,
-        args,
-        false);
+    // Circular wait condition possible -> launc new thread
+    PhoneAppLauncherTask *task = new PhoneAppLauncherTask();
+    task->mService = "logs";
+    task->mInterface = XQI_LOGS_VIEW;
+    task->mOperation = XQOP_LOGS_SHOW;
+    task->mArguments = args;
+    
+    QThreadPool::globalInstance()->start(task);
 }
 
 /*!
@@ -105,7 +133,7 @@
         const QString &service, 
         const QString &interface,
         const QString &operation,
-        const QList<QVariant> &arguments, 
+        const QList<QVariant> &arguments,
         const bool foreground)
 {
     int err = -1;
@@ -128,7 +156,6 @@
             PHONE_TRACE1("service not found");
             return;
         }
-
         if (foreground) {
             XQRequestInfo info;
             info.setForeground(true);
@@ -136,6 +163,7 @@
         }
         
         request->setArguments(arguments);
+        request->setSynchronous(false);
         QVariant retValue(-1);
         if (!request->send(retValue)) {
             int error = request->lastError();
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneapp/phoneuiqtviewadapter/src/phoneglobalnotes.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -0,0 +1,351 @@
+/*!
+* Copyright (c) 2009 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:  Handles phone notes.
+*/
+
+#include "phoneglobalnotes.h"
+#include "tphonecmdparamglobalnote.h"
+#include "tphonecmdparamquery.h"
+#include "phoneresourceadapter.h"
+#include "qtphonelog.h"
+#include <QSignalMapper>
+#include <QTimer>
+#include <hbaction.h>
+#include <phoneappcommands.hrh>
+#include <hbstringutil.h>
+#include <restricted/hbdevicedialogsextensionsymbian_r.h>
+
+const TInt KCriticalLevel = 2;
+
+PhoneGlobalNotes::PhoneGlobalNotes(QObject *parent) : 
+    QObject(parent),
+    m_timer(0),
+    m_queryCanceledCommand(-1),
+    m_timeoutCommand(-1),
+    iProgressDialog(0)
+{
+    PHONE_TRACE
+    m_timer = new QTimer(this);
+    m_timer->setSingleShot(true);
+    connect(m_timer, SIGNAL(timeout()), SLOT(queryTimeout()));
+}
+
+PhoneGlobalNotes::~PhoneGlobalNotes()
+{
+    PHONE_TRACE
+}
+
+QString PhoneGlobalNotes::globalNoteText(
+        TPhoneCommandParam *commandParam)
+{
+    PHONE_TRACE
+    TPhoneCmdParamGlobalNote* globalNoteParam = 
+        static_cast<TPhoneCmdParamGlobalNote*>( commandParam );
+    
+    QString ret;
+    
+    if ( globalNoteParam->TextResourceId() && 
+         KErrNone != globalNoteParam->Text().Compare( KNullDesC() ) ) {
+         // resource and text exists
+         ret = PhoneResourceAdapter::Instance()->convertToStringWithParam(
+                     globalNoteParam->TextResourceId(),
+                     QString::fromUtf16(globalNoteParam->Text().Ptr(), 
+                                     globalNoteParam->Text().Length()) );         
+    } else if ( globalNoteParam->TextResourceId() ) {
+        // resource exists
+        QString causeCode;
+        if (-1 != globalNoteParam->CauseCode()) {
+            causeCode.setNum(globalNoteParam->CauseCode());
+            causeCode = HbStringUtil::convertDigits(causeCode);
+        }
+        
+        ret = PhoneResourceAdapter::Instance()->convertToString(
+                    globalNoteParam->TextResourceId(), causeCode);
+
+    } else if ( KErrNone != globalNoteParam->Text().Compare( KNullDesC() ) ) {
+        // text exists
+        ret = QString::fromUtf16(globalNoteParam->Text().Ptr(), 
+                globalNoteParam->Text().Length());
+    }
+    
+    return ret;
+}
+
+void PhoneGlobalNotes::showGlobalWaitNote(TPhoneCmdParamQuery* params)
+{
+    PHONE_TRACE
+    if (!iProgressDialog) {        
+        m_queryCanceledCommand = params->CbaCommandMapping(EAknSoftkeyCancel);
+
+        TPtrC16 text = KNullDesC();
+        if (params->QueryPrompt().Length()) {
+            text.Set(params->QueryPrompt());
+        } else if (0 != params->DataText()) {
+            text.Set(*params->DataText());
+        }
+        
+        TRAP_IGNORE(
+                // Timeout even when global note showing fails
+                if (params->TimeOut() != 0) {
+                    m_timeoutCommand = -1;
+                    int customCommand;
+                    if (-1 != params->GetCustomCommandForTimeOut(customCommand)) {
+                        m_timeoutCommand = customCommand;
+                    }
+                    
+                    m_timer->start(params->TimeOut());
+                }
+        
+                ShowGlobalWaitNoteL(text);
+            );
+    }
+}
+
+void PhoneGlobalNotes::showDeviceMessageBox(
+        TPhoneCmdParamGlobalNote* params)
+{
+    PHONE_TRACE
+    QString noteString = globalNoteText(params);
+    
+    if (false == noteString.isNull()) {
+        bool showNote(true);
+        for (int i = 0; i < iMessageBoxList.count(); ++i) {
+            // Do not show same note/text several times, e.g when user hits
+            // the end button several times we should show only one "not allowed"
+            // note.
+            if (noteString == QString::fromUtf16(
+                    iMessageBoxList.at(i)->Text().Ptr(), 
+                    iMessageBoxList.at(i)->Text().Length())) {
+                showNote = false;
+                break;
+            }
+        }
+        
+        if (showNote) {
+            CHbDeviceMessageBoxSymbian::TType type;
+            switch( params->Type() ) {
+            case EPhoneMessageBoxInformation:
+                type = CHbDeviceMessageBoxSymbian::EInformation;
+                break;
+            case EPhoneMessageBoxWarning:
+            default:
+                type = CHbDeviceMessageBoxSymbian::EWarning;
+                break;
+            }
+            
+            TRAP_IGNORE(
+                ShowDeviceMessageBoxL(
+                    type,
+                    TPtrC16(noteString.utf16()),
+                    params->Timeout());
+            );
+        }
+    }    
+}
+
+void PhoneGlobalNotes::showDeviceNotificationDialog(
+        TPhoneCmdParamGlobalNote* params)
+{
+    PHONE_TRACE
+    
+    QString noteString = globalNoteText(params);
+    
+    if (false == noteString.isNull()) {
+        bool showNote(true);
+        for (int i = 0; i < iNotificationList.count(); ++i) {
+            // Do not show same note/text several times, e.g when user hits
+            // the end button several times we should show only one "not allowed"
+            // note.
+            if (noteString == QString::fromUtf16(
+                    iNotificationList.at(i)->Title().Ptr(), 
+                    iNotificationList.at(i)->Title().Length())) {
+                showNote = false;
+                break;
+            }
+        }
+        
+        if (showNote) {
+            TRAP_IGNORE(
+                ShowDeviceNotificationDialogL(
+                    TPtrC16(noteString.utf16()),
+                    params->Timeout());
+            );
+        }
+    }        
+}
+
+void PhoneGlobalNotes::ShowGlobalWaitNoteL(
+        const TDesC16& aText)
+{
+    CHbDeviceProgressDialogSymbian *d = CHbDeviceProgressDialogSymbian::NewL(
+            CHbDeviceProgressDialogSymbian::EWaitDialog);
+    CleanupStack::PushL(d);
+    
+    // Show top of security
+    HbDeviceDialogsExtensionSymbian::SetShowLevel(d, KCriticalLevel);
+    
+    d->SetTextL(aText);
+    d->ShowL();
+    iProgressDialog = d; // Note is about to be shown
+    CleanupStack::Pop(d);
+}
+
+void PhoneGlobalNotes::ShowDeviceMessageBoxL(
+            CHbDeviceMessageBoxSymbian::TType aType,
+            const TDesC16& aText,
+            TInt aTimeout)
+{
+    CHbDeviceMessageBoxSymbian *d = CHbDeviceMessageBoxSymbian::NewL(
+            aType, this);
+    CleanupStack::PushL(d);
+    
+    // Show top of security
+    HbDeviceDialogsExtensionSymbian::SetShowLevel(d, KCriticalLevel);
+    
+    d->SetTextL(aText);
+    
+    if (aTimeout > 0) {
+        // If timeout not set we use default timeout. 
+        // Default value is HbPopup::StandardTimeout (3000 ms)
+        d->SetTimeout(aTimeout);
+    }
+    
+    if (iMessageBoxList.count() == 0) {
+        // Show dialog only when there is no notifications ongoing.
+        // Delete dialog if show fails.
+        d->ShowL();
+    }
+    
+    iMessageBoxList.append(d);
+    CleanupStack::Pop(d);
+}
+
+
+void PhoneGlobalNotes::ShowDeviceNotificationDialogL(
+        const TDesC16& aTitle, TInt aTimeout)
+{
+    CHbDeviceNotificationDialogSymbian *d = CHbDeviceNotificationDialogSymbian::NewL(this);
+    CleanupStack::PushL(d);
+    
+    // Show top of security
+    HbDeviceDialogsExtensionSymbian::SetShowLevel(d, KCriticalLevel);
+    
+    d->SetTitleL(aTitle);
+    
+    if (aTimeout > 0) {
+        // If timeout not set we use default timeout. 
+        // Default value is HbPopup::StandardTimeout (3000 ms)
+        d->SetTimeout(aTimeout);
+    }
+
+    if (iNotificationList.count() == 0) {
+        // Show dialog only when there is no notifications ongoing.
+        // Delete dialog if show fails.
+        d->ShowL();
+    }
+
+    iNotificationList.append(d);
+    CleanupStack::Pop(d);
+}
+
+void PhoneGlobalNotes::removeGlobalWaitNote()
+{
+    PHONE_TRACE
+    m_timeoutCommand = -1;
+    m_timer->stop();
+    
+    if (iProgressDialog) {
+        m_queryCanceledCommand = -1;
+        iProgressDialog->Close();
+    }
+}
+
+void PhoneGlobalNotes::queryTimeout()
+{
+    PHONE_TRACE
+    int sendCommand = m_timeoutCommand;
+    if (iProgressDialog) {
+        m_queryCanceledCommand = -1;
+        iProgressDialog->Close();
+    }
+    if (sendCommand != -1) {        
+        emit command(sendCommand);
+    }
+}
+
+void PhoneGlobalNotes::NotificationDialogActivated(
+        const CHbDeviceNotificationDialogSymbian* )
+{
+    PHONE_TRACE
+}
+
+void PhoneGlobalNotes::NotificationDialogClosed(
+        const CHbDeviceNotificationDialogSymbian* aDialog, TInt )
+{
+    PHONE_TRACE
+    CHbDeviceNotificationDialogSymbian *notification = iNotificationList.takeFirst();
+    Q_ASSERT( notification == aDialog );
+    delete notification;
+    
+    if ( 0 < iNotificationList.size() ) {
+        PHONE_DEBUG("PhoneGlobalNotes::show pending note");
+        CHbDeviceNotificationDialogSymbian *notificationTemp = iNotificationList[0];
+        TRAP_IGNORE( notificationTemp->ShowL() );
+    }
+}
+
+void PhoneGlobalNotes::MessageBoxClosed(const CHbDeviceMessageBoxSymbian* aMessageBox,
+        CHbDeviceMessageBoxSymbian::TButtonId )
+{
+    PHONE_TRACE
+    CHbDeviceMessageBoxSymbian *messageBox = iMessageBoxList.takeFirst();
+    Q_ASSERT( messageBox == aMessageBox );
+    delete messageBox;
+    
+    if ( 0 < iMessageBoxList.size() ) {
+        PHONE_DEBUG("PhoneGlobalNotes::show pending note");
+        CHbDeviceMessageBoxSymbian *messageBoxTemp = iMessageBoxList[0];
+        TRAP_IGNORE( messageBoxTemp->ShowL() );
+    }
+}
+
+void PhoneGlobalNotes::ProgressDialogCancelled(
+        const CHbDeviceProgressDialogSymbian* )
+{
+    PHONE_TRACE
+    if (iProgressDialog) {
+        delete iProgressDialog;
+        iProgressDialog = 0;
+    }
+    
+    m_timer->stop();
+    
+    if (m_queryCanceledCommand != -1) {
+        emit command(m_queryCanceledCommand);
+    }
+    m_queryCanceledCommand = -1;
+    m_timeoutCommand = -1;
+}
+
+void PhoneGlobalNotes::ProgressDialogClosed(
+        const CHbDeviceProgressDialogSymbian* )
+{
+    PHONE_TRACE
+    if (iProgressDialog) {
+        delete iProgressDialog;
+        iProgressDialog = 0;
+    }
+}
+
+
--- a/phoneapp/phoneuiqtviewadapter/src/phoneindicatorcontroller.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/src/phoneindicatorcontroller.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -25,6 +25,8 @@
 
 #ifdef Q_OS_SYMBIAN
 #include <logsmodel.h>
+#include <logsevent.h>
+#include <logsabstractmodel.h>
 #include <logsfilter.h>
 #include <LogsDomainCRKeys.h>
 #include <ctsydomaincrkeys.h>
@@ -33,6 +35,9 @@
 #include <xqaiwdecl.h>
 #endif
 
+Q_DECLARE_METATYPE(LogsEvent *)
+
+
 namespace PhoneIndicatorControllerKeys{
     const XQSettingsKey missedCallsSettingsKey( XQSettingsKey::TargetCentralRepository, 
         KCRUidLogs.iUid, KLogsNewMissedCalls );
@@ -146,13 +151,17 @@
             delete m_logsModel;
             m_logsModel = NULL;
         } else {
-            m_logsModel = new LogsModel(LogsModel::LogsFullModel);
-            m_missedCallsFilter = new LogsFilter(LogsFilter::Missed);
-            connect( m_missedCallsFilter, 
+            if(!m_logsModel){
+                m_logsModel = new LogsModel(LogsModel::LogsFullModel);
+            }
+            if(!m_missedCallsFilter){
+                m_missedCallsFilter = new LogsFilter(LogsFilter::Missed);
+                connect( m_missedCallsFilter, 
                     SIGNAL(rowsInserted(const QModelIndex &, int, int )),
-                    this, SLOT(setMissedallIndicatorData()));
-            m_missedCallsFilter->setMaxSize(value.toInt() + 1);
-            m_missedCallsFilter->setSourceModel(m_logsModel);
+                        this, SLOT(setMissedallIndicatorData()));
+                m_missedCallsFilter->setSourceModel(m_logsModel);
+            }
+            m_missedCallsFilter->setMaxSize(value.toInt() + 1);            
         }
     }
 #endif  
@@ -188,49 +197,38 @@
     
     if ( missedCallCount > 0 ) {
         QVariantMap parameters;
-        QString lastMissedCallFrom;
-        int repeatedMissedCalls(0);
-        
-        if ( m_missedCallsFilter->rowCount() > 0 ){
-                lastMissedCallFrom = m_missedCallsFilter->data(
-                        m_missedCallsFilter->index(0,0),
-                        Qt::DisplayRole).toStringList().takeFirst();
-                repeatedMissedCalls = 1;
+        LogsEvent *event = qVariantValue<LogsEvent*>(m_missedCallsFilter->data(
+                m_missedCallsFilter->index(0,0),
+                LogsAbstractModel::RoleFullEvent));
+        if (event){
+            // First row
+            parameters.insert( 
+                    QVariant( HbIndicatorInterface::PrimaryTextRole ).toString(),
+                    ( hbTrId("txt_phone_dblist_ln_missed_calls", 
+                            missedCallCount)));
+            
+            if ( missedCallCount >= event->duplicates() ){
+                QString lastMissedCallFrom;
+                if ( event->isRemotePartyPrivate() ){
+                    lastMissedCallFrom = hbTrId("txt_phone_other_unknown_number");
+                } else {
+                    lastMissedCallFrom = event->remoteParty().isEmpty() ?
+                        event->number() : event->remoteParty();
+                }
+                parameters.insert( 
+                        QVariant( HbIndicatorInterface::SecondaryTextRole ).toString(), 
+                        lastMissedCallFrom );
             }
-        for( int i = 1; i < missedCallCount && i 
-                < m_missedCallsFilter->rowCount(); i++ ){
-            QStringList displayData = m_missedCallsFilter->data(
-                    m_missedCallsFilter->index(i,0),
-                    Qt::DisplayRole).toStringList();
-            if ( lastMissedCallFrom == displayData.at(0) ){
-                repeatedMissedCalls++;
-            } else {
-                i = missedCallCount; // Break
-            }
+            QString iconName = "qtg_mono_missed_call_unseen";
+            parameters.insert(
+                    QVariant( HbIndicatorInterface::DecorationNameRole ).toString(),
+                    iconName );
         }
-        // First row
-        parameters.insert( 
-                QVariant( HbIndicatorInterface::PrimaryTextRole ).toString(),
-                ( hbTrId("txt_phone_dblist_ln_missed_calls", 
-                        missedCallCount)));
-        
-        // Second row
-        if ( missedCallCount >= repeatedMissedCalls )
-            {
-            parameters.insert( 
-                    QVariant( HbIndicatorInterface::SecondaryTextRole ).toString(), 
-                    lastMissedCallFrom );
-            }
-
-        QString iconName = "qtg_mono_missed_call_unseen";
-        parameters.insert(
-                QVariant( HbIndicatorInterface::DecorationNameRole ).toString(),
-                iconName );
-        
         m_indicator.activate(indicatorType, parameters);
     } else {
         m_indicator.deactivate( indicatorType );
     }
+   
 #endif
 }
 
@@ -264,7 +262,7 @@
     return ( first.key() == second.key() && first.uid() == second.uid() );
 }
 
-void PhoneIndicatorController::handleInteraction(QString type,QVariantMap data)
+void PhoneIndicatorController::handleInteraction(QString /*type*/,QVariantMap data)
 {
     PHONE_TRACE
     
--- a/phoneapp/phoneuiqtviewadapter/src/phonenotecontroller.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/src/phonenotecontroller.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -15,15 +15,13 @@
 */
 
 #include "phonenotecontroller.h"
+#include "phoneglobalnotes.h"
 #include "tphonecmdparamglobalnote.h"
 #include "tphonecmdparamquery.h"
 #include "phoneresourceadapter.h"
 #include "qtphonelog.h"
 #include <QSignalMapper>
 #include <QTimer>
-#include <hbdevicemessagebox.h>
-#include <hbdevicenotificationdialog.h>
-#include <hbdeviceprogressdialog.h>
 #include <hbmessagebox.h>
 #include <hbprogressdialog.h>
 #include <hbaction.h>
@@ -31,42 +29,40 @@
 #include <hbstringutil.h>
 
 PhoneNoteController::PhoneNoteController(QObject *parent) : 
-    QObject(parent), m_timer(0), m_progressDialog(0), m_dtmfNote(0), 
-    m_queryNote(0), m_queryCanceledCommand(-1), m_timeoutCommand(-1)
+    QObject(parent), 
+    m_dtmfNote(0),
+    m_queryNote(0)
 {
-    PHONE_DEBUG("PhoneNoteController::PhoneNoteController");
+    PHONE_TRACE
     m_signalMapper = new QSignalMapper(this);
     connect(m_signalMapper, SIGNAL(mapped(int)), this, SIGNAL(command (int)));
+    m_globalNotes = new PhoneGlobalNotes(this);
+    connect(m_globalNotes, SIGNAL(command(int)), this, SIGNAL(command(int)));
 }
 
 PhoneNoteController::~PhoneNoteController()
 {
-    PHONE_DEBUG("PhoneNoteController::~PhoneNoteController");
-    if (m_timer) {
-        delete m_timer;
-    }
+    PHONE_TRACE
 }
 
 void PhoneNoteController::showGlobalNote(TPhoneCommandParam *commandParam)
 {
-    PHONE_DEBUG("PhoneNoteController::showGlobalNote");
     Q_ASSERT (commandParam->ParamId () == TPhoneCommandParam::EPhoneParamIdGlobalNote);
 
     TPhoneCmdParamGlobalNote* globalNoteParam = 
         static_cast<TPhoneCmdParamGlobalNote*>( commandParam );
     
     if (globalNoteParam->NotificationDialog()) {
-        showDeviceNotificationDialog(globalNoteParam);
+        m_globalNotes->showDeviceNotificationDialog(globalNoteParam);
     } else {
-        showDeviceMessageBox(globalNoteParam);
+        m_globalNotes->showDeviceMessageBox(globalNoteParam);
     }
     
 }
 
 void PhoneNoteController::showNote(TPhoneCommandParam *commandParam)
 {
-    PHONE_DEBUG("PhoneNoteController::showNote");
-
+    PHONE_TRACE
     TPhoneCmdParamNote* noteParam = static_cast<TPhoneCmdParamNote*>(
             commandParam );
     
@@ -78,7 +74,7 @@
 
 void PhoneNoteController::showQuery(TPhoneCommandParam *commandParam)
 {
-    PHONE_DEBUG("PhoneNoteController::showQuery");
+    PHONE_TRACE
     TPhoneCmdParamQuery& params = *static_cast<TPhoneCmdParamQuery*>( commandParam );
 
     if ( EPhoneQueryDialog == params.QueryType() && 
@@ -86,14 +82,13 @@
         showDefaultQuery(&params);
        
     } else if ( EPhoneGlobalWaitNote == params.QueryType() ) {
-        showGlobalWaitNote(&params);
-        
+        m_globalNotes->showGlobalWaitNote(&params);
     }
 }
 
 void PhoneNoteController::removeDtmfNote()
 {
-    PHONE_DEBUG("PhoneNoteController::removeDtmfNote"); 
+    PHONE_TRACE
     if (m_dtmfNote) {
         m_dtmfNote->close();
     }
@@ -101,13 +96,13 @@
 
 void PhoneNoteController::removeNote()
 {
-    PHONE_DEBUG("PhoneNoteController::removeNote"); 
+    PHONE_TRACE
     removeDtmfNote();
 }
 
 void PhoneNoteController::removeQuery()
 {
-    PHONE_DEBUG("PhoneNoteController::removeQuery"); 
+    PHONE_TRACE
     if (m_queryNote) {
         m_queryNote->close();
     }
@@ -115,52 +110,13 @@
 
 void PhoneNoteController::removeGlobalWaitNote()
 {
-    PHONE_DEBUG("PhoneNoteController::removeGlobalWaitNote"); 
-    if (m_timer) {
-        m_timeoutCommand = -1;
-        m_timer->stop();
-    }
-    
-    if (m_progressDialog) {
-        m_queryCanceledCommand = -1;
-        m_progressDialog->close();
-    }
-}
-
-void PhoneNoteController::destroyDialog()
-{
-    PHONE_DEBUG("PhoneNoteController::destroyDialog"); 
-    HbDeviceMessageBox *messageBox = m_messageBoxList.takeFirst();
-    messageBox->deleteLater();
-    messageBox = 0;
-    
-    if ( 0 < m_messageBoxList.size() ) {
-        PHONE_DEBUG("PhoneNoteController::show pending note");
-        HbDeviceMessageBox *messageBoxTemp = m_messageBoxList[0];
-        QObject::connect(messageBoxTemp, SIGNAL(aboutToClose()), 
-                         this, SLOT(destroyDialog()));
-        messageBoxTemp->show();
-    }
-}
-
-void PhoneNoteController::destroyNotification()
-{
-    PHONE_DEBUG("PhoneNoteController::destroyDialog"); 
-    HbDeviceNotificationDialog *notification = m_notificationList.takeFirst();
-    notification->deleteLater();
-    notification = 0;
-    
-    if ( 0 < m_notificationList.size() ) {
-        PHONE_DEBUG("PhoneNoteController::show pending note");
-        HbDeviceNotificationDialog *notificationTemp = m_notificationList[0];
-        QObject::connect(notificationTemp, SIGNAL(aboutToClose()), 
-                         this, SLOT(destroyNotification()));
-        notificationTemp->show();
-    }
+    PHONE_TRACE
+    m_globalNotes->removeGlobalWaitNote();
 }
 
 void PhoneNoteController::removeMappings()
 {
+    PHONE_TRACE
     foreach (HbAction *action, m_actions ) {
         m_signalMapper->removeMappings(action);
     }
@@ -174,74 +130,11 @@
         m_queryNote->deleteLater();
         m_queryNote = 0;
     }
-    if (m_progressDialog) {
-        m_progressDialog->deleteLater();
-        m_progressDialog = 0;
-    }
-}
-
-void PhoneNoteController::queryCancelled()
-{
-    if (m_timer) {
-        m_timer->stop();
-    }
-    
-    if (m_queryCanceledCommand != -1) {
-        emit command(m_queryCanceledCommand);
-    }
-    m_queryCanceledCommand = -1;
-    m_timeoutCommand = -1;
-}
-
-void PhoneNoteController::queryTimeout()
-{
-    int sendCommand = m_timeoutCommand;
-    if (m_progressDialog) {
-        m_queryCanceledCommand = -1;
-        m_progressDialog->close();
-    }
-    if (sendCommand != -1) {        
-        emit command(sendCommand);
-    }
-}
-
-QString PhoneNoteController::globalNoteText(
-        TPhoneCommandParam *commandParam)
-{
-    TPhoneCmdParamGlobalNote* globalNoteParam = 
-        static_cast<TPhoneCmdParamGlobalNote*>( commandParam );
-    
-    QString ret;    
-    
-    if ( globalNoteParam->TextResourceId() && 
-         KErrNone != globalNoteParam->Text().Compare( KNullDesC() ) ) {
-         // resource and text exists
-         ret = PhoneResourceAdapter::Instance()->convertToStringWithParam(
-                     globalNoteParam->TextResourceId(),
-                     QString::fromUtf16(globalNoteParam->Text().Ptr(), 
-                                     globalNoteParam->Text().Length()) );         
-    } else if ( globalNoteParam->TextResourceId() ) {
-        // resource exists
-        QString causeCode;
-        if (-1 != globalNoteParam->CauseCode()) {
-            causeCode.setNum(globalNoteParam->CauseCode());
-            causeCode = HbStringUtil::convertDigits(causeCode);
-        }
-        
-        ret = PhoneResourceAdapter::Instance()->convertToString(
-                    globalNoteParam->TextResourceId(), causeCode);
-
-    } else if ( KErrNone != globalNoteParam->Text().Compare( KNullDesC() ) ) {
-        // text exists
-        ret = QString::fromUtf16(globalNoteParam->Text().Ptr(), 
-                globalNoteParam->Text().Length());
-    }
-    
-    return ret;
 }
 
 void PhoneNoteController::showDtmfNote(TPhoneCmdParamNote* noteParam)
-{    
+{
+    PHONE_TRACE
     if (m_dtmfNote) {
         m_dtmfNote->setText( QString::fromUtf16(noteParam->Text().Ptr(), 
                 noteParam->Text().Length()) );
@@ -252,25 +145,14 @@
 
         if (hbactions.count() > 0) {
             m_dtmfNote = new HbProgressDialog(HbProgressDialog::ProgressDialog);
+            m_dtmfNote->setParent(this);
             m_dtmfNote->setText( QString::fromUtf16(noteParam->Text().Ptr(), 
                     noteParam->Text().Length()) ); 
-                  
-            connect(hbactions.at(0), SIGNAL(triggered()), m_signalMapper, SLOT(map()));
-
-            int count = m_dtmfNote->actions().count();
-            for (int i=count;0<i;i--) {
-                QAction *action = m_dtmfNote->actions().at(i-1);
-                m_dtmfNote->removeAction(action);
-                //TODO
-                //delete action;
-            }
-            m_dtmfNote->addAction(hbactions.at(0));
-            m_signalMapper->setMapping(hbactions.at(0), hbactions.at(0)->data().toInt());
             
             QObject::connect(m_dtmfNote, SIGNAL(aboutToClose()), 
                              this, SLOT(removeMappings())); 
             
-            m_actions.append(hbactions.at(0));
+            replaceDialogActions(m_dtmfNote, hbactions);
       
             m_dtmfNote->show();
         }
@@ -278,13 +160,15 @@
 }
 
 void PhoneNoteController::showDefaultQuery(TPhoneCmdParamQuery* params)
-{    
+{
+    PHONE_TRACE
     if (!m_queryNote) {
         QList<HbAction*> hbactions = PhoneResourceAdapter::Instance()->
             convertToHbActions(params->QueryResourceId());
         
         if (hbactions.count() > 0) {
             m_queryNote = new HbMessageBox(HbMessageBox::MessageTypeQuestion);
+            m_queryNote->setParent(this);
             m_queryNote->setTimeout(HbPopup::NoTimeout);
             m_queryNote->setDismissPolicy(HbPopup::NoDismiss);
             m_queryNote->setText(QString::fromUtf16(params->QueryPrompt().Ptr(), 
@@ -292,169 +176,31 @@
             
             QObject::connect(m_queryNote, SIGNAL(aboutToClose()), 
                              this, SLOT(removeMappings())); 
-                            
-            for (int i = 0; i < hbactions.count(); ++i) {
-                connect(hbactions.at(i), SIGNAL(triggered()), m_signalMapper, SLOT(map()));
-                m_signalMapper->setMapping(hbactions.at(i), hbactions.at(i)->data().toInt());
-                m_actions.append(hbactions.at(i));
-            }
             
-            int count = m_queryNote->actions().count();
-            for (int i=count;0<i;i--) {
-                QAction *action = m_queryNote->actions().at(i-1);
-                m_queryNote->removeAction(action);
-                //TODO
-                //delete action;
-            }
-            
-            for (int i=0;i<hbactions.count();i++) {
-                m_queryNote->addAction(hbactions.at(i));
-            }
+            replaceDialogActions(m_queryNote, hbactions);
             
             m_queryNote->show();
         }
     }
 }
 
-void PhoneNoteController::showGlobalWaitNote(TPhoneCmdParamQuery* params)
-{    
-    if (!m_progressDialog) {        
-        m_queryCanceledCommand = params->CbaCommandMapping(EAknSoftkeyCancel);
-
-        m_progressDialog = new HbDeviceProgressDialog(HbProgressDialog::WaitDialog);
-        
-        if (params->QueryPrompt().Length()) {
-            m_progressDialog->setText(QString::fromUtf16(params->QueryPrompt().Ptr(), 
-                    params->QueryPrompt().Length()));
-        } else if (0 != params->DataText()) {
-            m_progressDialog->setText(QString::fromUtf16(params->DataText()->Ptr(), 
-                    params->DataText()->Length()));
-        }
-        
-        QObject::connect(m_progressDialog, SIGNAL(aboutToClose()), 
-                         this, SLOT(removeMappings())); 
-        
-        QObject::connect(m_progressDialog, SIGNAL(cancelled()), 
-                         this, SLOT(queryCancelled())); 
-        
-        if (params->TimeOut() != 0) {
-            if (!m_timer) {
-                m_timer = new QTimer();
-                m_timer->setSingleShot(true);
-                connect(m_timer, SIGNAL(timeout()), SLOT(queryTimeout()));
-            }           
-            
-            m_timeoutCommand = -1;
-            int customCommand;
-            if (-1 != params->GetCustomCommandForTimeOut(customCommand)) {
-                m_timeoutCommand = customCommand;
-            }
-            
-            m_timer->start(params->TimeOut());
-        }
-        
-        m_progressDialog->show();
+void PhoneNoteController::replaceDialogActions(
+        HbDialog *dialog, QList<HbAction *> &actions)
+{
+    PHONE_TRACE
+    // Remove default actions
+    foreach (QAction *action, dialog->actions()) {
+        dialog->removeAction(action);
+        delete action;
+    }
+    
+    // Add new actions
+    foreach (HbAction *newAction, actions) {
+        newAction->setParent(m_queryNote);
+        connect(newAction, SIGNAL(triggered()), m_signalMapper, SLOT(map()));
+        m_signalMapper->setMapping(newAction, newAction->data().toInt());
+        m_actions.append(newAction);
+        dialog->addAction(newAction);
     }
 }
 
-void PhoneNoteController::showDeviceMessageBox(
-        TPhoneCmdParamGlobalNote* params)
-{
-    PHONE_DEBUG("PhoneNoteController::showDeviceMessageBox");
-
-    HbMessageBox::MessageBoxType type;
-        
-    switch( params->Type() ) {
-    case EPhoneMessageBoxInformation:
-        type = HbMessageBox::MessageTypeInformation;
-        break;
-    case EPhoneMessageBoxWarning:
-    default:
-        type = HbMessageBox::MessageTypeWarning;
-        break;
-    }
-    
-    QString noteString = globalNoteText(params);
-    
-    if (false == noteString.isNull()) {
-        bool showNote(true);
-        for (int i = 0; i < m_messageBoxList.count(); ++i) {
-            // Do not show same note/text several times, e.g when user hits
-            // the end button several times we should show only one "not allowed"
-            // note.
-            if (noteString == m_messageBoxList.at(i)->text()) {
-                showNote = false;
-                break;
-            }
-        }
-        
-        if (showNote) {
-            QScopedPointer<HbDeviceMessageBox> messageBox( 
-                new HbDeviceMessageBox(noteString, type));
-            
-            int timeout = params->Timeout();
-            if (timeout <= 0) {
-                messageBox->setTimeout(HbDialog::StandardTimeout);
-            } else {
-                messageBox->setTimeout(timeout);
-            }
-            
-            HbDeviceMessageBox *messageBoxPtr = messageBox.data();
-            m_messageBoxList.append(messageBoxPtr);
-            messageBox.take();
-            
-            if (1 == m_messageBoxList.size()) {
-                QObject::connect(messageBoxPtr, SIGNAL(aboutToClose()), 
-                                 this, SLOT(destroyDialog()));
-                messageBoxPtr->show();
-            }
-        }
-    }    
-}
-
-void PhoneNoteController::showDeviceNotificationDialog(
-        TPhoneCmdParamGlobalNote* params)
-{
-    PHONE_DEBUG("PhoneNoteController::showDeviceNotificationDialog");
-    
-    QString noteString = globalNoteText(params);
-    
-    if (false == noteString.isNull()) {
-        bool showNote(true);
-        for (int i = 0; i < m_notificationList.count(); ++i) {
-            // Do not show same note/text several times, e.g when user hits
-            // the end button several times we should show only one "not allowed"
-            // note.
-            if (noteString == m_notificationList.at(i)->title()) {
-                showNote = false;
-                break;
-            }
-        }
-        
-        if (showNote) {
-            QScopedPointer<HbDeviceNotificationDialog> notification( 
-                new HbDeviceNotificationDialog());
-            
-            notification->setTitle(noteString);
-            
-            int timeout = params->Timeout();
-            if (timeout > 0) {
-                // If timeout not set we use default timeout. 
-                // Default value is HbPopup::StandardTimeout (3000 ms)
-                notification->setTimeout(timeout);
-            }
-            
-            HbDeviceNotificationDialog *notificationPtr = notification.data();
-            m_notificationList.append(notificationPtr);
-            notification.take();
-            
-            if (1 == m_notificationList.size()) {
-                QObject::connect(notificationPtr, SIGNAL(aboutToClose()), 
-                                 this, SLOT(destroyNotification()));
-                notificationPtr->show();
-            }
-        }
-    }        
-}
-
-
--- a/phoneapp/phoneuiqtviewadapter/src/phoneresourceadapter.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/src/phoneresourceadapter.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -68,6 +68,7 @@
     switch (symbianResourceId) {
 	
     case R_PHONEUI_MTCAL_INCOMING_CALL:
+    case R_PHONEUI_VIDEO_CALL_INCOMING:
         {
         PhoneAction *text = new PhoneAction;
         text->setText (hbTrId("txt_phone_other_incoming_call"));
@@ -521,35 +522,52 @@
     switch(symbianResourceId) {
         case R_PHONEUI_CALLHANDLING_INCOMINGCALL_CBA:
             {
-            ret.append(PhoneAction::ToolBarItem(PhoneCallComingCmdSoftReject,true)); 
+            bool showSoftReject = (false == m_buttonsCtrl->getButtonFlags(
+                    PhoneUIQtButtonsController::DisableSoftReject));
+            
+            ret.append(PhoneAction::ToolBarItem(
+                    PhoneCallComingCmdSoftReject,showSoftReject)); 
             ret.append(PhoneAction::ToolBarItem(PhoneCallComingCmdSilent,true));      
             }
             break;
 
         case R_PHONEUI_CALLHANDLING_INCOMINGCALL_REJECT_CBA:
             {
-            ret.append(PhoneAction::ToolBarItem(PhoneCallComingCmdSoftReject,true));
+            bool showSoftReject = (false == m_buttonsCtrl->getButtonFlags(
+                    PhoneUIQtButtonsController::DisableSoftReject));
+            
+            ret.append(PhoneAction::ToolBarItem(
+                    PhoneCallComingCmdSoftReject,showSoftReject)); 
             ret.append(PhoneAction::ToolBarItem(PhoneInCallCmdReject,true));  
             }
             break;
             
         case R_PHONEUI_CALLHANDLING_INCOMINGCALL_SOFT_REJECT_CBA:
             {
-            ret.append(PhoneAction::ToolBarItem(PhoneCallComingCmdSoftReject,true));            
-            ret.append(PhoneAction::ToolBarItem(PhoneCallComingCmdSilent,false)); 
+            bool showSoftReject = (false == m_buttonsCtrl->getButtonFlags(
+                    PhoneUIQtButtonsController::DisableSoftReject));
+            
+            ret.append(PhoneAction::ToolBarItem(
+                    PhoneCallComingCmdSoftReject,showSoftReject));            
+            ret.append(PhoneAction::ToolBarItem(
+                    PhoneCallComingCmdSilent,false)); 
             }
             break;
             
         case R_PHONEUI_CALLHANDLING_CALLWAITING_CBA:        
             {
-            ret.append(PhoneAction::ToolBarItem(PhoneCallComingCmdSoftReject,true));            
-            ret.append(PhoneAction::ToolBarItem(PhoneInCallCmdJoinToConference,false));        
+            bool showSoftReject = (false == m_buttonsCtrl->getButtonFlags(
+                    PhoneUIQtButtonsController::DisableSoftReject));
+            
+            ret.append(PhoneAction::ToolBarItem(
+                    PhoneCallComingCmdSoftReject,showSoftReject));            
+            ret.append(PhoneAction::ToolBarItem(
+                    PhoneInCallCmdJoinToConference,false));        
             }
             break;        
             
         case R_PHONEUI_DIALER_CBA:
         case R_PHONEUI_INCALL_DIALER_CBA:
-        case R_PHONEUI_CALLHANDLING_INCALL_UNHOLD_CBA:
         case R_PHONEUI_CALLHANDLING_INCALL_UNMUTE_CBA:
         case R_PHONEUI_CALLHANDLING_INCALL_HANDSET_CBA:
         case R_PHONEUI_CALLHANDLING_CALLSETUP_EMPTY_DTMFDIALER_CBA:
--- a/phoneapp/phoneuiqtviewadapter/src/phoneuicommandcontroller.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/src/phoneuicommandcontroller.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -17,6 +17,7 @@
 #include "phoneuicommandcontroller.h"
 #include "phoneresourceadapter.h"
 #include "phoneuiqtbuttonscontroller.h"
+#include "phoneconstants.h"
 #include "qtphonelog.h"
 #include <hbaction.h>
 #include <spsettings.h>
@@ -181,35 +182,41 @@
     PHONE_DEBUG("PhoneMenuController::menuCommands");
     QList<int> commands;
     bool sameServices = areServicesSame(callStates,serviceIds);
-
-    switch(callStates.values().count()) {
-    case 1: {
-        // No logical string for switch to video option	
-        /*if (callStates.values().contains(EPEStateConnected)) {
-            commands.append(PhoneInCallCmdSwitchToVideo);
-        }*/
-    }
-    break;
-    case 2: {
-        if (!callStates.values().contains(EPEStateRinging) &&
-            !callStates.values().contains(EPEStateDisconnecting) &&
-            !callStates.values().contains(EPEStateDialing)) {
-            commands.append(PhoneInCallCmdEndAllCalls);
+    bool isEmergencyCall = emergencyCall(callStates);
+    
+    // No menu items if an emergency call ongoing.
+    if (false == isEmergencyCall) {
+        switch(callStates.values().count()) {
+        case 1: {
+            // No logical string for switch to video option	
+            /*if (callStates.values().contains(EPEStateConnected)) {
+                commands.append(PhoneInCallCmdSwitchToVideo);
+            }*/
         }
-        if (callStates.values().contains(EPEStateConnected) &&
-            callStates.values().contains(EPEStateHeld)) {
-            if (sameServices) {
-                commands.append(PhoneInCallCmdTransfer);
+        break;
+        case 2: {
+            if (!callStates.values().contains(EPEStateRinging) &&
+                !callStates.values().contains(EPEStateDisconnecting) &&
+                !callStates.values().contains(EPEStateDialing)) {
+                commands.append(PhoneInCallCmdEndAllCalls);
+            }
+            if ((callStates.values().contains(EPEStateConnected) &&
+                 callStates.values().contains(EPEStateHeld)) ||
+                (callStates.values().contains(EPEStateConnecting) &&
+                 callStates.values().contains(EPEStateHeld))) {
+                if (sameServices) {
+                    commands.append(PhoneInCallCmdTransfer);
+                }
             }
         }
-    }
-    break;
-    case 3: {
-        commands.append(PhoneInCallCmdEndAllCalls);    
-    }
-    break;
-    default:
         break;
+        case 3: {
+            commands.append(PhoneInCallCmdEndAllCalls);    
+        }
+        break;
+        default:
+            break;
+        }
     }
     
     return commands;
@@ -717,3 +724,9 @@
             
     return action;
 }
+
+bool PhoneUiCommandController::emergencyCall(QMap<int,int> callStates) const
+{   
+    return callStates.keys().contains(KEmergencyCallId);
+}
+
--- a/phoneapp/phoneuiqtviewadapter/src/phoneuiqtviewadapter.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/src/phoneuiqtviewadapter.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -124,7 +124,7 @@
             m_speakerAsDefaultButton = true;
         }    
     }
-
+    
 }
 
 PhoneUIQtViewAdapter::~PhoneUIQtViewAdapter ()
@@ -182,9 +182,11 @@
         removeAllCallHeaders();
         break;
     case EPhoneViewRemoveNumberEntry:
-    case EPhoneViewClearNumberEntryContent: // Fall through
         removeDialpad();
         break;
+    case EPhoneViewClearNumberEntryContent: 
+        clearDialpad();
+        break;
     case EPhoneViewAddToConference:
         addToConference();
         break;
@@ -511,6 +513,14 @@
         }
     }
     break;
+    case EPhoneViewSetSoftRejectDimmed: {
+        TPhoneCmdParamBoolean *param = static_cast<TPhoneCmdParamBoolean *>(aCommandParam);
+
+        PhoneResourceAdapter::Instance()->buttonsController()->
+                setButtonFlags(PhoneUIQtButtonsController::DisableSoftReject, 
+                               param->Boolean());
+        }
+        break;
     case EPhoneViewStopCapturingKey: {
         TPhoneCmdParamKeyCapture *captureParam = 
                 static_cast<TPhoneCmdParamKeyCapture *>(aCommandParam);        
@@ -557,11 +567,13 @@
 void PhoneUIQtViewAdapter::handleWindowActivated()
 {
     m_indicatorController->disableActiveCallIndicator();
+    m_view.captureKey(Qt::Key_Yes, true);
 }
 
 void PhoneUIQtViewAdapter::handleWindowDeactivated()
 {
     m_indicatorController->enableActiveCallIndicator();
+    m_view.captureKey(Qt::Key_Yes, false);
 }
 
 void PhoneUIQtViewAdapter::setTopApplication (TPhoneCommandParam *commandParam)
@@ -628,7 +640,10 @@
     if (1 == m_bubbleWrapper->bubbles().keys().count()) {
         setHidden(false);
     }
-    m_indicatorController->setActiveCallData();
+    if( EPECallTypeVideo != data.CallType() ){
+        m_indicatorController->setActiveCallData();
+    }
+    
 }
 
 void PhoneUIQtViewAdapter::createEmergencyCallHeader(
@@ -690,8 +705,9 @@
          m_bubbleWrapper->setDivert (bubble, data.Diverted ());
          m_bubbleWrapper->bubbleManager ().endChanges ();
      }
-     m_indicatorController->setActiveCallData();
-
+     if ( EPECallTypeVideo != data.CallType() ) {
+         m_indicatorController->setActiveCallData();
+     }
 }
 
 void PhoneUIQtViewAdapter::updateCallHeaderRemoteInfoAndLabel (int callId, TPhoneCommandParam *commandParam)
@@ -1174,6 +1190,16 @@
     m_view.clearAndHideDialpad();
 }
 
+void PhoneUIQtViewAdapter::clearDialpad()
+{
+    // After the sending of SS strings the view stays in Dialer.
+    if (!m_visibilityHandler->phoneVisible()){ 
+        m_appLauncher->launchLogs( XQService::LogsViewAll, true,QString(""));
+    }else{
+        m_view.clearDialpad();
+    }
+}
+
 void PhoneUIQtViewAdapter::addToConference()
 {
     m_bubbleWrapper->addToConferenceBubble();
--- a/phoneapp/phoneuiqtviewadapter/src/phonevisibilityhandler.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/src/phonevisibilityhandler.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -214,9 +214,8 @@
 	  1 - ... Ordinal postition under one or more window group
 	  
 	It is agreed with devicedialog that:
-     - Incomincall, ECoeWinPriorityAlwaysAtFront + 100
-     - Ongoing call + security, ECoeWinPriorityAlwaysAtFront
-     - Ongoing call + Securire query, ECoeWinPriorityAlwaysAtFront - 1
+     - Incoming call, ECoeWinPriorityAlwaysAtFront + 100
+     - Ongoing call + security, ECoeWinPriorityAlwaysAtFront + 1
      - Ongoing call, ECoeWinPriorityNormal
  */
 void PhoneVisibilityHandler::adjustVisibility(AdjustAction action)
@@ -243,7 +242,7 @@
     } else if (m_deviceLockEnabled) {
         // critical notes are allowed to show on top of Phone application
         PHONE_TRACE1(": Devicelock");
-        m_eikonEnv->RootWin().SetOrdinalPosition(0, ECoeWinPriorityAlwaysAtFront);
+        m_eikonEnv->RootWin().SetOrdinalPosition(0, ECoeWinPriorityAlwaysAtFront + 1);
         
     } else if (BringForwards == action) {
         // Try to show phone with normal priority
--- a/phoneapp/phoneuiqtviewadapter/tsrc/ut_phonenotecontroller/unit_tests.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/tsrc/ut_phonenotecontroller/unit_tests.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -107,7 +107,6 @@
 {
     TPhoneCmdParamGlobalNote globalNoteParam;
     globalNoteParam.SetTimeout(0);
-    globalNoteParam.SetWaitForReady(ETrue);
     m_noteController->showGlobalNote(&globalNoteParam);
     QTest::qWait(2500);
     
@@ -120,7 +119,6 @@
 {
     TPhoneCmdParamGlobalNote globalNoteParam;
     globalNoteParam.SetTextResourceId(R_NOTETEXT_NO_ANSWER);
-    globalNoteParam.SetWaitForReady(EFalse);
     globalNoteParam.SetType( EPhoneMessageBoxInformation );
     
     m_noteController->showGlobalNote(&globalNoteParam);
@@ -131,7 +129,6 @@
 void TestPhoneNoteController::testShowGlobalWarningNoteWithText ()
 {
     TPhoneCmdParamGlobalNote globalNoteParam;
-    globalNoteParam.SetWaitForReady(ETrue);
     globalNoteParam.SetType( EPhoneMessageBoxWarning );
     globalNoteParam.SetText(_L("Test note 1"));
     
@@ -142,7 +139,6 @@
 {
     TPhoneCmdParamGlobalNote globalNoteParam;
     globalNoteParam.SetTextResourceId(R_PHONE_TEXT_COLP_CONNECTED);
-    globalNoteParam.SetWaitForReady(EFalse);
     globalNoteParam.SetType( EPhoneMessageBoxInformation );
     globalNoteParam.SetText(_L("Test number"));
     
@@ -155,7 +151,6 @@
 {
     TPhoneCmdParamGlobalNote globalNoteParam;
     //globalNoteParam.SetTextResourceId(R_NOTETEXT_NO_ANSWER);
-    globalNoteParam.SetWaitForReady(EFalse);
     globalNoteParam.SetType( EPhoneMessageBoxInformation );
     globalNoteParam.SetText(_L("Test note 2"));
     
@@ -173,7 +168,6 @@
 {
     TPhoneCmdParamGlobalNote globalNoteParam;
     //globalNoteParam.SetTextResourceId(R_NOTETEXT_NO_ANSWER);
-    globalNoteParam.SetWaitForReady(EFalse);
     globalNoteParam.SetType( EPhoneMessageBoxInformation );
     globalNoteParam.SetText(_L("Test note 4"));
     
@@ -297,7 +291,7 @@
 {
     TPhoneCmdParamGlobalNote globalNoteParam;
     globalNoteParam.SetNotificationDialog( ETrue );
-    globalNoteParam.SetType( EAknGlobalWarningNote );
+    globalNoteParam.SetType( EPhoneMessageBoxWarning );
     globalNoteParam.SetText(_L("Test indication 1"));
     
     m_noteController->showGlobalNote(&globalNoteParam);
--- a/phoneapp/phoneuiqtviewadapter/tsrc/ut_phonenotecontroller/ut_phonenotecontroller.pro	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/tsrc/ut_phonenotecontroller/ut_phonenotecontroller.pro	Fri Sep 17 08:29:19 2010 +0300
@@ -48,4 +48,6 @@
 SOURCES += ../../src/phoneuiqtbuttonscontroller.cpp
 HEADERS += ../../inc/phonenotecontroller.h
 SOURCES += ../../src/phonenotecontroller.cpp
+HEADERS += ../../inc/phoneglobalnotes.h
+SOURCES += ../../src/phoneglobalnotes.cpp
 SOURCES += unit_tests.cpp
--- a/phoneapp/phoneuiqtviewadapter/tsrc/ut_phoneresourceadapter/unit_tests.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/tsrc/ut_phoneresourceadapter/unit_tests.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -453,6 +453,18 @@
     QVERIFY(true == testList.at(1).mEnabled);
     testList.clear();
     
+    // Set soft reject dimmed
+    buttonsController->setButtonFlags(PhoneUIQtButtonsController::DisableSoftReject,true);
+    testList = m_resourceAdapter->convertToToolBarCommandList(R_PHONEUI_CALLHANDLING_INCOMINGCALL_CBA);
+    QCOMPARE(2,testList.count());
+    QVERIFY(PhoneCallComingCmdSoftReject == testList.at(0).mCommandId);
+    QVERIFY(PhoneCallComingCmdSilent == testList.at(1).mCommandId);
+    QVERIFY(false == testList.at(0).mEnabled);
+    QVERIFY(true == testList.at(1).mEnabled);
+    testList.clear();    
+    
+    // Set soft reject
+    buttonsController->setButtonFlags(PhoneUIQtButtonsController::DisableSoftReject,false);
     testList = m_resourceAdapter->convertToToolBarCommandList(R_PHONEUI_CALLHANDLING_INCOMINGCALL_REJECT_CBA);
     QCOMPARE(2,testList.count());
     QVERIFY(PhoneCallComingCmdSoftReject == testList.at(0).mCommandId);
@@ -461,6 +473,18 @@
     QVERIFY(true == testList.at(1).mEnabled);
     testList.clear(); 
     
+    // Set soft reject dimmed
+    buttonsController->setButtonFlags(PhoneUIQtButtonsController::DisableSoftReject,true);
+    testList = m_resourceAdapter->convertToToolBarCommandList(R_PHONEUI_CALLHANDLING_INCOMINGCALL_REJECT_CBA);
+    QCOMPARE(2,testList.count());
+    QVERIFY(PhoneCallComingCmdSoftReject == testList.at(0).mCommandId);
+    QVERIFY(PhoneInCallCmdReject == testList.at(1).mCommandId);
+    QVERIFY(false == testList.at(0).mEnabled);
+    QVERIFY(true == testList.at(1).mEnabled);
+    testList.clear(); 
+    
+    // Set soft reject
+    buttonsController->setButtonFlags(PhoneUIQtButtonsController::DisableSoftReject,false);
     testList = m_resourceAdapter->convertToToolBarCommandList(R_PHONEUI_CALLHANDLING_INCOMINGCALL_SOFT_REJECT_CBA);
     QCOMPARE(2,testList.count());
     QVERIFY(PhoneCallComingCmdSoftReject == testList.at(0).mCommandId);
@@ -469,6 +493,18 @@
     QVERIFY(false == testList.at(1).mEnabled);
     testList.clear(); 
     
+    // Set soft reject dimmed
+    buttonsController->setButtonFlags(PhoneUIQtButtonsController::DisableSoftReject,true);
+    testList = m_resourceAdapter->convertToToolBarCommandList(R_PHONEUI_CALLHANDLING_INCOMINGCALL_SOFT_REJECT_CBA);
+    QCOMPARE(2,testList.count());
+    QVERIFY(PhoneCallComingCmdSoftReject == testList.at(0).mCommandId);
+    QVERIFY(PhoneCallComingCmdSilent == testList.at(1).mCommandId);
+    QVERIFY(false == testList.at(0).mEnabled);
+    QVERIFY(false == testList.at(1).mEnabled);
+    testList.clear(); 
+    
+    // Set soft reject
+    buttonsController->setButtonFlags(PhoneUIQtButtonsController::DisableSoftReject,false);
     testList = m_resourceAdapter->convertToToolBarCommandList(R_PHONEUI_CALLHANDLING_CALLWAITING_CBA);
     QCOMPARE(2,testList.count());
     QVERIFY(PhoneCallComingCmdSoftReject == testList.at(0).mCommandId);
@@ -477,6 +513,19 @@
     QVERIFY(false == testList.at(1).mEnabled);
     testList.clear(); 
     
+    // Set soft reject dimmed
+    buttonsController->setButtonFlags(PhoneUIQtButtonsController::DisableSoftReject,true);
+    testList = m_resourceAdapter->convertToToolBarCommandList(R_PHONEUI_CALLHANDLING_CALLWAITING_CBA);
+    QCOMPARE(2,testList.count());
+    QVERIFY(PhoneCallComingCmdSoftReject == testList.at(0).mCommandId);
+    QVERIFY(PhoneInCallCmdJoinToConference == testList.at(1).mCommandId);
+    QVERIFY(false == testList.at(0).mEnabled);
+    QVERIFY(false == testList.at(1).mEnabled);
+    testList.clear(); 
+    
+    // Set soft reject
+    buttonsController->setButtonFlags(PhoneUIQtButtonsController::DisableSoftReject,false);
+    
     testList = m_resourceAdapter->convertToToolBarCommandList(R_PHONEUI_CALLHANDLING_EMERGENCY_CBA);
     QCOMPARE(2,testList.count());
     QVERIFY(PhoneInCallCmdActivateIhf == testList.at(0).mCommandId);
--- a/phoneapp/phoneuiqtviewadapter/tsrc/ut_phoneuiqtviewadapter/phoneapplauncher_stub.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/tsrc/ut_phoneuiqtviewadapter/phoneapplauncher_stub.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -79,12 +79,14 @@
         const QString &service, 
         const QString &interface,
         const QString &function,
-        const QList<QVariant> &arguments)
+        const QList<QVariant> &arguments,
+        const bool foreground)
 {
     Q_UNUSED(service);
     Q_UNUSED(interface);
     Q_UNUSED(function);
     Q_UNUSED(arguments);
+    Q_UNUSED(foreground);
 }
 
 // end of file
--- a/phoneapp/phoneuiqtviewadapter/tsrc/ut_phoneuiqtviewadapter/phonenotecontroller_stub.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/tsrc/ut_phoneuiqtviewadapter/phonenotecontroller_stub.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -73,31 +73,7 @@
     m_removeGlobalWaitNoteCalled = true;
 }
 
-QString PhoneNoteController::globalNoteText(
-        TPhoneCommandParam *commandParam)
-{   
-    QString ret;    
-    
-    return ret;
-}
-
-void PhoneNoteController::destroyDialog()
-{
-}
-
-void PhoneNoteController::destroyNotification()
-{
-}
-
 void PhoneNoteController::removeMappings()
 {
 }
 
-void PhoneNoteController::queryCancelled()
-{
-}
-
-void PhoneNoteController::queryTimeout()
-{
-}
-
--- a/phoneapp/phoneuiqtviewadapter/tsrc/ut_phoneuiqtviewadapter/phonevisibilityhandler_stub.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/tsrc/ut_phoneuiqtviewadapter/phonevisibilityhandler_stub.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -32,6 +32,7 @@
 bool m_bringToForegroundCalled;
 bool m_sendToBackgroundCalled;
 bool m_ordinalPositionCalled;
+bool m_phoneVisibleReturnValue;
 
 /*!
     PhoneVisibilityHandler::PhoneVisibilityHandler.
@@ -44,7 +45,7 @@
     m_carModeEnabled(false),
     m_hideDeviceDialogs(false)
 {
-
+    m_phoneVisibleReturnValue = false;
 }
 
 
@@ -86,7 +87,7 @@
 bool PhoneVisibilityHandler::phoneVisible()
 {
     m_ordinalPositionCalled = true;
-    return false;
+    return m_phoneVisibleReturnValue;
 }
 
 /*!
--- a/phoneapp/phoneuiqtviewadapter/tsrc/ut_phoneuiqtviewadapter/unit_tests.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/tsrc/ut_phoneuiqtviewadapter/unit_tests.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -60,6 +60,7 @@
 extern bool m_removeGlobalWaitNoteCalled;
 extern bool m_ordinalPositionCalled;
 extern bool m_sendToBackgroundCalled;
+extern bool m_phoneVisibleReturnValue;
 
 #define PHONE_QT_VIEW_ADAPTER_TEST_MAIN(TestObject) \
 int main(int argc, char *argv[]) \
@@ -117,7 +118,7 @@
         {m_dialpadVisibilityCalled = true;
     return m_isDialpadVisible; }
     QString dialpadText() {return m_dialpadText;};
-    void clearDialpad() {};
+    void clearDialpad() { m_clearDialpadCalled = true; };
     void clearAndHideDialpad() { m_clearAndHideDialpadCalled = true;};
     void bringToForeground() {};
     void setMenuActions(const QList<PhoneAction*>& ) { m_setMenuActionsCalled = true;};
@@ -269,6 +270,7 @@
     bool m_showDialpadCalled;
     bool m_hideDialpadCalled;
     bool m_dialpadVisibilityCalled;
+    bool m_clearDialpadCalled;
     bool m_clearAndHideDialpadCalled;
     bool m_ExpandConferenceCalled;
     bool m_setMenuActionsCalled;
@@ -1099,14 +1101,16 @@
 void TestPhoneUIQtViewAdapter::testRemoveDialpad ()
 {
     m_clearAndHideDialpadCalled = false;
-
     m_adapter->ExecuteCommandL(EPhoneViewRemoveNumberEntry);
-    QVERIFY( m_clearAndHideDialpadCalled == true );
-    
+    QVERIFY( m_clearAndHideDialpadCalled == true );   
     m_clearAndHideDialpadCalled = false;
 
+    m_clearDialpadCalled = false;
+    m_phoneVisibleReturnValue = true;
     m_adapter->ExecuteCommandL(EPhoneViewClearNumberEntryContent);
-    QVERIFY( m_clearAndHideDialpadCalled == true );
+    QVERIFY( m_clearDialpadCalled == true );
+    m_phoneVisibleReturnValue = false;
+    m_clearDialpadCalled = false;
 }
 
 void TestPhoneUIQtViewAdapter::testGetDialpadStringLength ()
@@ -1324,11 +1328,13 @@
     m_adapter->ExecuteCommand(EPhoneViewSetIhfFlag,&param);
     m_adapter->ExecuteCommand(EPhoneViewSetMuteFlag,&param);
     m_adapter->ExecuteCommand(EPhoneViewSetBluetoothAvailableFlag,&param);
+    m_adapter->ExecuteCommand(EPhoneViewSetSoftRejectDimmed,&param);
 
     QVERIFY(m_phoneButtonFlags & PhoneUIQtButtonsController::Ihf);
     QVERIFY(m_phoneButtonFlags & PhoneUIQtButtonsController::Mute);
     QVERIFY(m_phoneButtonFlags & PhoneUIQtButtonsController::Btaa);
     QVERIFY(m_phoneButtonFlags & PhoneUIQtButtonsController::BluetoothAvailable);
+    QVERIFY(m_phoneButtonFlags & PhoneUIQtButtonsController::DisableSoftReject);
 }
 
 void TestPhoneUIQtViewAdapter::testCaptureEndKey()
--- a/phoneapp/phoneuiqtviewadapter/tsrc/ut_phoneuiqtviewadapter/ut_phoneuiqtviewadapter.pro	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/tsrc/ut_phoneuiqtviewadapter/ut_phoneuiqtviewadapter.pro	Fri Sep 17 08:29:19 2010 +0300
@@ -25,11 +25,11 @@
 
 symbian {
 
-    INCLUDEPATH += \epoc32\include\platform\mw \
-                   \epoc32\include\platform \
-                   \epoc32\include\platform\app \
-	                 \epoc32\include\mw \
-                   \sf\app\phone\inc \
+    INCLUDEPATH += /epoc32/include/platform/mw \
+                   /epoc32/include/platform \
+                   /epoc32/include/platform/app \
+                   /epoc32/include/mw \
+                   /sf/app/phone/inc \
                    ../../../phoneuiutils/inc/ \
                    ../../../phonemediatorcenter/inc/ \
                    ../../../phoneuiview2/inc \
--- a/phoneapp/phoneuiqtviewadapter/tsrc/ut_phonevisibilityhandler/unit_tests.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/tsrc/ut_phonevisibilityhandler/unit_tests.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -125,7 +125,6 @@
 private:
     PhoneVisibilityHandler *m_handler;
     bool m_bringToForegroundCalled;
-    int m_startPosition;
     int m_startPriority;
     int m_normalPriority;
 };
@@ -171,8 +170,8 @@
     
     m_handler = new PhoneVisibilityHandler (*this, this);
     
-    m_startPosition = CEikonEnv::Static()->RootWin().OrdinalPosition();
-    QVERIFY(m_startPosition > 0); // Expect OrdinalPosition higher than 0
+    // Expect OrdinalPosition higher than 0
+    QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0);
     m_startPriority = CEikonEnv::Static()->RootWin().OrdinalPriority();
     QCOMPARE(m_startPriority, (int)ECoeWinPriorityNeverAtFront);
 }
@@ -203,12 +202,12 @@
 {
     // Test hide device dialogs when background ( false )
     m_handler->hideDeviceDialogs(false);
-    QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition);
+    QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0);
     QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority);
     
     // Test hide device dialogs when background ( true )
     m_handler->hideDeviceDialogs(true);
-    QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition);
+    QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0);
     QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority);
     
     // bringToForeground is call
@@ -229,7 +228,7 @@
     
     // send backgroud is called last
     m_handler->sendToBackground(false);
-    QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition);
+    QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0);
     QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority);
 }
 
@@ -269,24 +268,24 @@
     
     // send backgroud is called last
     m_handler->sendToBackground(false);
-    QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition);
+    QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0);
     QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority);
 }
 
 void TestPhoneVisibilityHandler::t_devicelock()
 {
     m_handler->HandlePropertyChangedL(KPSUidCoreApplicationUIs, KCoreAppUIsAutolockStatus, ETimerLocked);
-    QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition);
+    QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0);
     QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority);
     
     // Test hide device dialogs when background ( false )
     m_handler->hideDeviceDialogs(false);
-    QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition);
+    QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0);
     QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority);
     
     // Test hide device dialogs when background ( true )
     m_handler->hideDeviceDialogs(true);
-    QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition);
+    QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0);
     QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority);
     
     // bringToForeground is call
@@ -298,7 +297,7 @@
     // Test hide device dialogs when foreground ( false )
     m_handler->hideDeviceDialogs(false);
     QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), 0);
-    QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), (int)ECoeWinPriorityAlwaysAtFront);
+    QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), ECoeWinPriorityAlwaysAtFront + 1);
 
     // Test hide device dialogs when foreground ( true )
     m_handler->hideDeviceDialogs(true);
@@ -313,7 +312,7 @@
     
     // send backgroud is called last
     m_handler->sendToBackground(false);
-    QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition);
+    QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0);
     QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority);
     
 }
@@ -335,7 +334,7 @@
     // send backgroud is called last
     m_handler->sendToBackground(false);
     QVERIFY(!g_enableKeyGuardCalled);
-    QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition);
+    QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0);
     QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority);
     
     
@@ -354,7 +353,7 @@
     // send backgroud is called last
     m_handler->sendToBackground(false);
     QVERIFY(g_enableKeyGuardCalled);
-    QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition);
+    QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0);
     QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority);
     
     // Test when keyguard is enabled before call +
@@ -374,7 +373,7 @@
     CEikonEnv::Static()->RootWin().SetOrdinalPosition(-1, ECoeWinPriorityNormal);
     m_handler->sendToBackground(false);
     QVERIFY(!g_enableKeyGuardCalled);
-    QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition);
+    QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0);
     QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority);
     
     
@@ -399,7 +398,7 @@
     cleanup();
     m_handler->sendToBackground(false);
     QVERIFY(g_enableKeyGuardCalled);
-    QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition);
+    QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0);
     QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority);
     
     // Test case where two calls is created and key guard is enabled during middle
@@ -423,7 +422,7 @@
     cleanup();
     m_handler->sendToBackground(false);
     QVERIFY(g_enableKeyGuardCalled);
-    QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPosition(), m_startPosition);
+    QVERIFY(CEikonEnv::Static()->RootWin().OrdinalPosition() > 0);
     QCOMPARE(CEikonEnv::Static()->RootWin().OrdinalPriority(), m_startPriority);
 }
 
--- a/phoneapp/phoneuistates/group/phoneuistates.mmp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/group/phoneuistates.mmp	Fri Sep 17 08:29:19 2010 +0300
@@ -22,21 +22,16 @@
 #include <platform_paths.hrh>
 
 // Capability assignment.
-// <-- QT PHONE START --> 
 CAPABILITY CAP_GENERAL_DLL
-//CAPABILITY CAP_APPLICATION MultiMediaDD PowerMgmt NetworkControl DRM DiskAdmin
-// <-- QT PHONE END --> 
 
 // Assign Vendor ID.
 VENDORID VID_DEFAULT
 
-
 TARGET          phoneuistates.dll
 TARGETTYPE      dll
 
 UID             0x101F7CAC  0x101F7C9F
 
-//EXPORTUNFROZEN
 SOURCEPATH      ../src
 
 SOURCE          cphonealerting.cpp
@@ -71,10 +66,7 @@
 
 USERINCLUDE     ../inc
 USERINCLUDE     ../../phoneuicontrol/inc
-// <-- QT PHONE START --> 
 USERINCLUDE     ../../phoneuiqtviewadapter/inc
-//USERINCLUDE     ../../phoneuiview/inc
-// <-- QT PHONE END --> 
 USERINCLUDE     ../../phoneui/inc
 USERINCLUDE     ../../phoneuiutils/inc
 USERINCLUDE     ../../phoneui2/srcdata
@@ -85,10 +77,7 @@
 
 LIBRARY         avkon.lib // AknTextUtils
 LIBRARY         bafl.lib
-// <-- QT PHONE START --> 
 LIBRARY         phonestringloader.lib
-//LIBRARY       commonengine.lib //StringLoader 
-// <-- QT PHONE END -->
 LIBRARY         cone.lib
 LIBRARY         engineinfo.lib
 LIBRARY         euser.lib
--- a/phoneapp/phoneuistates/inc/cphoneemergency.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/inc/cphoneemergency.h	Fri Sep 17 08:29:19 2010 +0300
@@ -151,31 +151,6 @@
         IMPORT_C virtual TBool HandleRemConCommandL( 
                     TRemConCoreApiOperationId aOperationId, 
                     TRemConCoreApiButtonAction aButtonAct );
-        
-    private:
-        
-        /**
-        * Check whether UseEmergencyNoIhfCBA set should be used or not. 
-        * @param aAudioOutput current audio output type.
-        * @return ETrue if UseEmergencyNoIhfCBA should be used,
-        * EFalse otherwise.
-        */
-        TBool UseEmergencyNoIhfCBA( const TPEAudioOutput& aAudioOutput ) const;
-        
-        /**
-        * Check whether UseHandsetEmergencyCBA set should be used or not.
-        * @param aAudioOutput current audio output type.
-        * @return ETrue if UseHandsetEmergencyCBA should be used,
-        * EFalse otherwise.
-        */
-        TBool UseHandsetEmergencyCBA( const TPEAudioOutput& aAudioOutput ) const;
-        
-        /**
-        * Check whether the touch call handling is supported or not.
-        * @return ETrue if KFeatureIdTouchCallHandling is supported,
-        * EFalse otherwise.
-        */
-        TBool TouchCallHandlingSupported () const;
          
     private:
         /**
--- a/phoneapp/phoneuistates/inc/cphoneerrormessageshandler.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/inc/cphoneerrormessageshandler.h	Fri Sep 17 08:29:19 2010 +0300
@@ -102,8 +102,8 @@
                 TInt aResourceId,
                 TBool aNotificationDialog = EFalse );
         
-
-    private:        
+    private:
+        
         /**
         * Return SimState.
         */
--- a/phoneapp/phoneuistates/inc/cphoneidle.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/inc/cphoneidle.h	Fri Sep 17 08:29:19 2010 +0300
@@ -79,7 +79,7 @@
         * @param aErrorInfo: the error info
         */
         IMPORT_C virtual void HandleErrorL( 
-            const TPEErrorInfo& aErrorInfo );    
+            const TPEErrorInfo& aErrorInfo );
         
     };
 
--- a/phoneapp/phoneuistates/inc/cphoneincoming.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/inc/cphoneincoming.h	Fri Sep 17 08:29:19 2010 +0300
@@ -81,11 +81,6 @@
         * ConstructL()
         */
         IMPORT_C virtual void ConstructL();
-        
-        /**
-        * Handles long hash key
-        */
-        virtual void HandleLongHashL();
 
     private:
         
--- a/phoneapp/phoneuistates/inc/cphonesinglecall.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/inc/cphonesinglecall.h	Fri Sep 17 08:29:19 2010 +0300
@@ -88,8 +88,6 @@
         IMPORT_C TInt CallId() const;
     private:
     
-        void OpenVideoCallMenuBarL();
-    
         void HandleHeldL( TInt aCallId );
         
         void HandleConnectedL( TInt aCallId );
@@ -107,8 +105,6 @@
         void DisplayCallSetupL( TInt aCallId );
         
         void SwitchToVideoL();
-        
-        void SwitchToVoiceL();
     
     private:
     
--- a/phoneapp/phoneuistates/src/cphonealerting.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphonealerting.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -105,33 +105,25 @@
         "CPhoneAlerting::HandleKeyMessageL()");
     switch ( aCode )
         {
-        // send-key
-        case EKeyYes:
+        case EKeyYes: // send-key
             if ( IsNumberEntryUsedL() )
                 {
-                // send a manual control sequence
-                CallFromNumberEntryL();    
+                CallFromNumberEntryL();
                 }
             else
                 {
-                // Show not allowed note
                 SendGlobalErrorNoteL( 
                     EPhoneNoteTextNotAllowed, ETrue );
                 }
             break;
 
-        // end-key
-        case EKeyNo:
-            // handle long press
+        case EKeyNo: // end-key
             if ( aMessage == EPhoneKeyLongPress )
                 {
-                // Close all connections
                 iStateMachine->SendPhoneEngineMessage(
                     MPEPhoneModel::EPEMessageTerminateAllConnections ); 
-
                 if ( IsNumberEntryUsedL() )
                     {
-                    // Remove number entry from screen
                     iViewCommandHandle->ExecuteCommandL( 
                         EPhoneViewRemoveNumberEntry );
                     // Do state-specific operation when number entry is cleared
@@ -139,22 +131,19 @@
                     }
                 if ( !TopAppIsDisplayedL() )
                     {
-                    // Bring app to foreground
                     TPhoneCmdParamInteger uidParam;
                     uidParam.SetInteger( KUidPhoneApplication.iUid );
                     iViewCommandHandle->ExecuteCommandL(
                         EPhoneViewBringAppToForeground, &uidParam );
                     }
                 }
-            else
+            else // handle short end key
                 {
-                // handle end key
                 DisconnectOutgoingCallL();
                 }
             break;
             
         default:
-            // do base operation
             CPhoneGsmInCall::HandleKeyMessageL( aMessage, aCode );
             break;
         }
@@ -170,7 +159,6 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates,
         "CPhoneAlerting::HandlePhoneEngineMessageL()");
-    
     switch ( aMessage )
         {
         case MEngineMonitor::EPEMessageConnected:
@@ -207,7 +195,6 @@
                     {
                     CPhoneGsmInCall::HandlePhoneEngineMessageL( 
                         aMessage, aCallId );
-                    
                     // Simulate incoming event which was received while 
                     // teardown of first call was ongoing.
                     iStateMachine->State()->HandlePhoneEngineMessageL( 
@@ -222,7 +209,6 @@
         default:
             break;
         }
-
     CPhoneGsmInCall::HandlePhoneEngineMessageL( aMessage, aCallId );
     }
 
@@ -234,23 +220,15 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates,
         "CPhoneAlerting::HandleConnectedL()");
-    // Keep Phone in the foreground
     TPhoneCmdParamBoolean booleanParam;
     booleanParam.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( 
         EPhoneViewSetNeedToSendToBackgroundStatus, &booleanParam );
-
     BeginUiUpdateLC();
-        
-    // Update the single call
     UpdateSingleActiveCallL( aCallId );
-
-    SetTouchPaneButtons( EPhoneIncallButtons ); 
-        
+    SetTouchPaneButtons( EPhoneIncallButtons );
     EndUiUpdate();
-    
-    // Go to single state
-    UpdateCbaL( EPhoneCallHandlingInCallCBA );    
+    UpdateCbaL( EPhoneCallHandlingInCallCBA );
     iStateMachine->ChangeState( EPhoneStateSingle );
     }
 
@@ -274,17 +252,14 @@
     __LOGMETHODSTARTEND( EPhoneUIStates,  
         "CPhoneAlerting::IsVideoCallAlerting()" );
     TBool retVal = EFalse;
-    // Fetch active call's id from view
     TPhoneCmdParamCallStateData callStateData;
     callStateData.SetCallState( EPEStateConnecting );
     iViewCommandHandle->HandleCommandL(
         EPhoneViewGetCallIdByState, &callStateData );
-        
     if ( callStateData.CallId() > KErrNotFound )
         {
         retVal = IsVideoCall( callStateData.CallId() );
         }
-        
     return retVal;
     }
     
@@ -310,6 +285,4 @@
     CPhoneGsmInCall::HandleDisconnectingL( aCallId );
     }
 
-
-
 // End of File
--- a/phoneapp/phoneuistates/src/cphonecallsetup.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphonecallsetup.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -102,7 +102,7 @@
             HandleConnectingL( aCallId );
             break;
 
-        // fall through.    
+        // fall through.
         case MEngineMonitor::EPEMessageIssuingSSRequest:
         case MEngineMonitor::EPEMessageCallBarred:
         case MEngineMonitor::EPEMessageIssuedSSRequest:
@@ -118,15 +118,14 @@
                 EPhoneUIStates, 
                 "CPhoneCallSetup::HandlePhoneEngineMessageL Start create gsm message handler %d",
                 aMessage ); 
-            
             CPhoneGeneralGsmMessagesHandler* gsmMsgHandler =
-                CPhoneGeneralGsmMessagesHandler::NewL( *iStateMachine,
-                                                       *iViewCommandHandle,
-                                                       *this );
-
+                CPhoneGeneralGsmMessagesHandler::NewL( 
+                        *iStateMachine,
+                        *iViewCommandHandle,
+                        *this );
             CleanupStack::PushL( gsmMsgHandler );
             gsmMsgHandler->HandlePhoneEngineMessageL( aMessage, aCallId );
-            CleanupStack::PopAndDestroy( gsmMsgHandler );       
+            CleanupStack::PopAndDestroy( gsmMsgHandler );
             }
             break;
             
@@ -147,39 +146,28 @@
     // set when the CDMA network receives the call, not (like in GSM) when
     // when the remote party receives the call. So, in CDMA, the user
     // should still be able to cancel the MO call before the call is connected.
-    __LOGMETHODSTARTEND( EPhoneUIStates, 
-        "CPhoneCallSetup::HandleConnectingL()");
-    
+    __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneCallSetup::HandleConnectingL()");
     BeginUiUpdateLC();
     UpdateRemoteInfoDataL ( aCallId );
     
-    // Re-enable global notes
     TPhoneCmdParamBoolean globalNotifierParam;
     globalNotifierParam.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
         &globalNotifierParam );
 
-    // Home screen to foreground after call
     TPhoneCmdParamBoolean booleanParam;
     booleanParam.SetBoolean( ETrue );
     iViewCommandHandle->ExecuteCommand( EPhoneViewHsToForegroundAfterCall,
         &booleanParam );
     
-    // Stop capturing keys
-    CaptureKeysDuringCallNotificationL( EFalse );
-    
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateConnecting );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, 
         &callHeaderParam );
 
     SetToolbarButtonLoudspeakerEnabled();
-
     EndUiUpdate();
-    
-    // Go to alerting state
     UpdateCbaL( EPhoneCallHandlingInCallCBA );
-
     iStateMachine->ChangeState( EPhoneStateAlerting );
     }
 
--- a/phoneapp/phoneuistates/src/cphonecallsetupandwaiting.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphonecallsetupandwaiting.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -127,10 +127,7 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates,
         "CPhoneCallSetupAndWaiting::HandleIdleL()");
-
     BeginUiUpdateLC();
-
-    // Remove call
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
 
     // Find out do we have waiting or outgoing call left
@@ -141,39 +138,27 @@
 
     if( callStateData.CallId() > KErrNotFound )
         {
-
-        // Display ringing bubble
         TPhoneCmdParamCallHeaderData callHeaderParam;
         callHeaderParam.SetCallState( EPEStateRinging );
-
         SetCallHeaderTextsForCallComingInL( callStateData.CallId(), EFalse, &callHeaderParam );
 
         iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble,
             callStateData.CallId(),
             &callHeaderParam );
 
-        // Show incoming call buttons
         SetTouchPaneButtons( EPhoneIncomingCallButtons );
-
-        // Bring up callhandling view
         BringIncomingToForegroundL();
-
-        // state changes to Incoming
         iCbaManager->UpdateIncomingCbaL( callStateData.CallId() );
         SetRingingTonePlaybackL( callStateData.CallId() );
         SetBackButtonActive(EFalse);
         iStateMachine->ChangeState( EPhoneStateIncoming );
         }
-
-    else
+    else // waiting call was terminated.
         {
-        // Show call setup buttons
         CPhoneState::SetTouchPaneButtons( EPhoneCallSetupButtons );
-        // Waiting call was terminated
         UpdateCbaL( EPhoneCallHandlingInCallCBA );
         iStateMachine->ChangeState( EPhoneStateAlerting );
         }
-
     EndUiUpdate();
     }
 
@@ -185,7 +170,6 @@
     {
     __LOGMETHODSTARTEND( EPhoneControl,
         "CPhoneCallSetupAndWaiting::UpdateInCallCbaL() ");
-
     UpdateCbaL( EPhoneCallHandlingIncomingRejectCBA );
     }
 
@@ -196,29 +180,21 @@
 void CPhoneCallSetupAndWaiting::HandleConnectedL( TInt aCallId )
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneCallSetupAndWaiting::HandleConnectedL() ");
-
-    CPhoneState::BeginUiUpdateLC();
-
-    // Update bubble
+    BeginUiUpdateLC();
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateConnected );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId,
         &callHeaderParam );
-
-    // Update Touch buttons
-    CPhoneState::SetTouchPaneButtons( EPhoneWaitingCallButtons );
-
-    CPhoneState::EndUiUpdate();
-
-    if ( CPhoneState::IsNumberEntryUsedL() )
+    
+    SetTouchPaneButtons( EPhoneWaitingCallButtons );
+    EndUiUpdate();
+    
+    if ( IsNumberEntryUsedL() )
         {
-        // Show number entry
         TPhoneCmdParamBoolean booleanParam;
         booleanParam.SetBoolean( ETrue );
         iViewCommandHandle->ExecuteCommandL( EPhoneViewSetNumberEntryVisible, &booleanParam );
         }
-
-    // Go to Single And Waiting state
     UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
     iStateMachine->ChangeState( EPhoneStateWaitingInSingle );
     }
--- a/phoneapp/phoneuistates/src/cphoneconference.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphoneconference.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -187,13 +187,12 @@
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConference::HandleCommandL()");
     TBool commandStatus = ETrue;
-
     switch( aCommand )
         {   
         case EAknSoftkeyCancel:
             BeginUiUpdateLC();
             SetTouchPaneButtons( EPhoneConferenceButtons );
-            EndUiUpdate();    
+            EndUiUpdate();
             UpdateCbaL( EPhoneCallHandlingInCallCBA );
             break;
     
@@ -209,36 +208,25 @@
                 CPEPhoneModelIF::EPEMessageResumeConference );
             break;
             
-        // Conference -> Drop participant
-        case EPhoneInCallCmdDropSelection:
-            break;
-        
-        // Drop CBA    
         case EPhoneInCallCmdDrop:
             DropSelectedParticipantL();
             break;
             
-        case EPhoneInCallCmdPrivateSelection:
-            break;
-            
         case EPhoneInCallCmdPrivate:
             PrivateSelectedParticipantL();
             break;
-          
+            
+        case EPhoneInCallCmdPrivateSelection:
+        case EPhoneInCallCmdDropSelection:
         case EPhoneInCallCmdNewCall:
-            break;
-            
         case EPhoneInCallCmdNewCallCall:
+        case EPhoneInCallCmdParticipants:
             break;
-            
-        case EPhoneInCallCmdParticipants:
-            break;     
 
         default:
             commandStatus = CPhoneGsmInCall::HandleCommandL( aCommand );
             break;
         }
-
     return commandStatus;
     }
 
@@ -261,19 +249,11 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConference::HandleKeyEventL()");
-
-    if ( CPhoneKeys::IsNumericKey( aKeyEvent, aEventCode ) )
+    if ( !CPhoneKeys::IsNumericKey( aKeyEvent, aEventCode ) )
         {
-        // Handle numeric keys when key events are received 
-        // in conference state.
-        CPhoneGsmInCall::HandleNumericKeyEventL( aKeyEvent, aEventCode );
-        }
-    else
-        {
-        // Handle other key events.
+        // Handle other key events than numeric key events.
         CPhoneState::HandleKeyEventL( aKeyEvent, aEventCode );
         }
-    
     }
 
 // --------------------------------------------------------------
@@ -286,14 +266,12 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConference::HandleKeyMessageL()");
-        
     switch ( aCode )
         {
-        // send-key
-        case EKeyYes:
+        case EKeyYes: // send-key
             if( IsNumberEntryVisibleL() )
                 {
-                CallFromNumberEntryL();    
+                CallFromNumberEntryL(); 
                 }
             else
                 {
@@ -302,7 +280,6 @@
             break;
             
         default:
-            // do base operation
             CPhoneGsmInCall::HandleKeyMessageL( aMessage, aCode );
             break;
         }
@@ -316,7 +293,6 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConference::HandleNumberEntryClearedL()");
-    // Update CBA when number entry is cleared
     UpdateInCallCbaL();
     }
 
@@ -328,14 +304,10 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConference::HandleIdleL()");
-    // Re-enable global notes
     TPhoneCmdParamBoolean globalNotifierParam;
     globalNotifierParam.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
         &globalNotifierParam );
-
-    // Stop capturing keys
-    CaptureKeysDuringCallNotificationL( EFalse );
         
     // If conference bubble still exists then we have conference and
     // single call
@@ -345,15 +317,13 @@
         
     if( conferenceBubbleExists.Boolean() )
         {
-        // Go to Conference And Single state
         iViewCommandHandle->ExecuteCommandL(
             EPhoneViewRemoveFromConference, aCallId ); 
         }
     else
         {
-        // Remove call header
         iViewCommandHandle->ExecuteCommandL( 
-            EPhoneViewRemoveCallHeader, aCallId );    
+            EPhoneViewRemoveCallHeader, aCallId );
         }
     }
     
@@ -366,7 +336,6 @@
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConference::HandleConferenceIdleL()");
     BeginUiUpdateLC();
-    
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveConferenceBubble );
 
     TPhoneCmdParamInteger activeCallCount;
@@ -381,7 +350,6 @@
             
         case EOneActiveCall:
             {
-            // Fetch ringing call's id from view
             TPhoneCmdParamCallStateData callStateData;
             callStateData.SetCallState( EPEStateRinging );
             iViewCommandHandle->HandleCommandL(
@@ -394,7 +362,7 @@
                 }
             else
                 {
-                MakeStateTransitionToSingleL();                    
+                MakeStateTransitionToSingleL();
                 }
             }
             break;
@@ -407,7 +375,6 @@
             MakeStateTransitionToTwoSinglesL();
             break;
         }
-    
     EndUiUpdate(); 
     }
 
@@ -426,21 +393,14 @@
     TBuf<KPhoneCallHeaderLabelMaxLength> labelText( KNullDesC );
     callLabelId = CPhoneMainResourceResolver::Instance()->
             ResolveResourceID( EPhoneCallOnHold );
-
     StringLoader::Load( 
         labelText, 
         callLabelId, 
-        CCoeEnv::Static() );        
+        CCoeEnv::Static() );
     callHeaderParam.SetLabelText( labelText );
  
     iViewCommandHandle->ExecuteCommandL( 
         EPhoneViewUpdateBubble, aCallId, &callHeaderParam );
-           
-    if ( !FeatureManager::FeatureSupported( KFeatureIdTouchCallHandling ) )
-        {
-        SendGlobalInfoNoteL( EPhoneInformationConferenceOnHold, ETrue );
-        }
-    
     SetTouchPaneButtons( EPhoneConferenceButtons );
     UpdateInCallCbaL();
     }
@@ -453,7 +413,6 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConference::HandleConnectedConferenceL()");
-    // Update call state
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateConnectedConference );
     
@@ -475,13 +434,7 @@
     holdFlag.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
     
-    if ( !FeatureManager::FeatureSupported( KFeatureIdTouchCallHandling ) )
-        { 
-        SendGlobalInfoNoteL( EPhoneInformationConferenceActiveted, ETrue );
-        }
-    
     SetTouchPaneButtons( EPhoneConferenceButtons );
-    
     UpdateInCallCbaL();
     }
 
@@ -493,7 +446,6 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConference::DropSelectedParticipantL()");
-    // First fetch the call id matching the selected item 
     TPhoneViewResponseId response;
     TPhoneCmdParamInteger callId;
     response = iViewCommandHandle->HandleCommandL(
@@ -501,10 +453,9 @@
         
     if( response == EPhoneViewResponseSuccess )
         {
-        // Drop the call from conference
         iStateMachine->SetCallId( callId.Integer() );    
         iStateMachine->SendPhoneEngineMessage( 
-            CPEPhoneModelIF::EPEMessageDropConferenceMember );            
+            CPEPhoneModelIF::EPEMessageDropConferenceMember );
         }
     }
 
@@ -516,7 +467,6 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConference::PrivateSelectedParticipantL()");
-    // First fetch the call id matching the selected item 
     TPhoneViewResponseId response;
     TPhoneCmdParamInteger callId;
     response = iViewCommandHandle->HandleCommandL(
@@ -524,17 +474,13 @@
     
     if( response == EPhoneViewResponseSuccess )
         {
-        // Drop the call from conference
         iStateMachine->SetCallId( callId.Integer() );    
         iStateMachine->SendPhoneEngineMessage( 
             CPEPhoneModelIF::EPEMessageGoOneToOne );
-        
-        // Update call view
         BeginUiUpdateLC();
         SetTouchPaneButtons( EPhoneConferenceButtons );
-        EndUiUpdate();    
-                
-        UpdateCbaL( EPhoneCallHandlingInCallCBA );               
+        EndUiUpdate();
+        UpdateCbaL( EPhoneCallHandlingInCallCBA );
         }
     }
 
@@ -546,13 +492,11 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConference::MakeStateTransitionToIdleL()");
-    
     SetDefaultFlagsL();
 
     if ( IsNumberEntryUsedL() )
         {
-        // Show the number entry if it exists
-        SetNumberEntryVisibilityL(ETrue);      
+        SetNumberEntryVisibilityL(ETrue);
         }
     else if ( !TopAppIsDisplayedL() )
         {
@@ -563,15 +507,10 @@
         }
     else
         {
-         // Display idle screen
         DisplayIdleScreenL();
         }
-
-    // Display call termination note, if necessary
     DisplayCallTerminationNoteL();
-
     UpdateCbaL( EPhoneEmptyCBA );
-    // Go to idle state
     iStateMachine->ChangeState( EPhoneStateIdle );
     }
 
@@ -583,17 +522,13 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConference::MakeStateTransitionToSingleL()");
- 
     if ( IsNumberEntryUsedL() )
         {
-        // Show the number entry if it exists
         SetNumberEntryVisibilityL(ETrue);
         }
-    SetTouchPaneButtons( EPhoneIncallButtons );    
-  
-    // Go to single state
+    SetTouchPaneButtons( EPhoneIncallButtons );
     UpdateCbaL( EPhoneCallHandlingInCallCBA );
-    iStateMachine->ChangeState( EPhoneStateSingle );        
+    iStateMachine->ChangeState( EPhoneStateSingle );
     }
 
 // -----------------------------------------------------------
@@ -604,20 +539,14 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConference::MakeStateTransitionToTwoSinglesL()");
-
     if ( IsNumberEntryUsedL() )
         {
-        // Show the number entry if it exists
         SetNumberEntryVisibilityL(ETrue);
         }
         
-    SetTouchPaneButtons( EPhoneTwoSinglesButtons );        
-    
-    // Set Two singles softkeys
+    SetTouchPaneButtons( EPhoneTwoSinglesButtons );
     UpdateCbaL( EPhoneCallHandlingNewCallSwapCBA );
-
-    // Go to two singles state
-    iStateMachine->ChangeState( EPhoneStateTwoSingles );        
+    iStateMachine->ChangeState( EPhoneStateTwoSingles );
     }
 
 // -----------------------------------------------------------
@@ -628,26 +557,10 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConference::ToggleHoldL()");
-    
-    TPECallControlCaps callControlCaps =
-        iStateMachine->PhoneEngineInfo()->CallControlCaps( KConferenceCallId );
-    
-    if ( callControlCaps & MCCECallObserver::ECCECapsHold  )
-        {
-        iStateMachine->SetCallId( KConferenceCallId );         
-        iStateMachine->SendPhoneEngineMessage( 
-            CPEPhoneModelIF::EPEMessageHold );    
-        }
-    else if ( callControlCaps & MCCECallObserver::ECCECapsResume )
-        {
-        iStateMachine->SetCallId( KConferenceCallId );         
-        iStateMachine->SendPhoneEngineMessage( 
-            CPEPhoneModelIF::EPEMessageResume );    
-        }
-    else
-        {
-        SendGlobalInfoNoteL( EPhoneNoteTextNotAllowed, ETrue );    
-        }
+
+    iStateMachine->SetCallId( KConferenceCallId );         
+    iStateMachine->SendPhoneEngineMessage( 
+        CPEPhoneModelIF::EPEMessageSwapConference );
     }
 
 // -----------------------------------------------------------
@@ -659,21 +572,11 @@
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConference::HandleDiallingL()");
     BeginUiUpdateLC(); 
-    
     SetNumberEntryVisibilityL(EFalse);
-    
-    // Display call setup 
     DisplayCallSetupL( aCallId );
-    
-    // Conference is understood as single call in buttons enumerations.
-    SetTouchPaneButtons(EPhoneCallSetupAndSingleButtons); 
-
+    SetTouchPaneButtons(EPhoneCallSetupAndSingleButtons);
     EndUiUpdate();
-    
-    // Set Call Setup CBA 
     UpdateCbaL( EPhoneCallHandlingCallSetupCBA );
-      
-    // Go to conference and call setup state
     iStateMachine->ChangeState( EPhoneStateConferenceAndCallSetup );
     }
 
@@ -685,20 +588,11 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConference::DisplayCallSetupL()");
-
-    // Remove dialogs if necessary
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
-
-    // Capture keys when the phone is dialling
-    CaptureKeysDuringCallNotificationL( ETrue );
-
-    // Bring Phone app in the foreground
     TPhoneCmdParamInteger uidParam;
     uidParam.SetInteger( KUidPhoneApplication.iUid );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewBringAppToForeground,
         &uidParam );
-
-    // Display call setup header
     DisplayHeaderForOutgoingCallL( aCallId );
     }
 
@@ -710,9 +604,7 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConference::HandleIncomingL()");
-    
     BeginUiUpdateLC();
- 
     TPhoneCmdParamBoolean dialerParam;
     dialerParam.SetBoolean( ETrue );
     
@@ -721,19 +613,12 @@
     // Close fast swap window if it's displayed
     CEikonEnv::Static()->DismissTaskList();
     
-    // Check if HW Keys or Call UI should be disabled
     CheckDisableHWKeysAndCallUIL();
-    
-    // Display incoming call
     DisplayIncomingCallL( aCallId, dialerParam );
-    
     SetTouchPaneButtons( EPhoneWaitingCallButtons );
-
     EndUiUpdate();
-
-    // Go to incoming state
     UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
-    iStateMachine->ChangeState( EPhoneStateConferenceAndWaiting );        
+    iStateMachine->ChangeState( EPhoneStateConferenceAndWaiting );
     }
 
 // -----------------------------------------------------------
@@ -746,20 +631,16 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConference::DisplayIncomingCallL()");
-
     // Cannot delete active note, e.g. New call query, 
     // but show waiting note with or without caller name
-    if ( IsAnyQueryActiveL() ||  
-        ( !aCommandParam.Boolean() && iOnScreenDialer ) )
+    if ( IsAnyQueryActiveL() || !aCommandParam.Boolean() )
         {
-        CallWaitingNoteL( aCallId );        
+        CallWaitingNoteL( aCallId ); 
         }
     else
         {
-        // 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;
@@ -768,18 +649,14 @@
         EPhoneViewSetNeedToSendToBackgroundStatus,
         &booleanParam );
 
-    // Bring Phone app in the foreground
     TPhoneCmdParamInteger uidParam;
     uidParam.SetInteger( KUidPhoneApplication.iUid );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewBringAppToForeground,
         &uidParam );
-
-    // Set Phone as the top application
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetTopApplication,
         &uidParam );
-
     DisplayHeaderForCallComingInL( aCallId, ETrue ); // waiting call 
-    }    
+    }
 
 // -----------------------------------------------------------
 // CPhoneConference::HandleWentOneToOneL
@@ -789,10 +666,7 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConference::HandleWentOneToOneL()");
-
     BeginUiUpdateLC();
-    
-    // Update conference bubble
     iViewCommandHandle->ExecuteCommandL(
         EPhoneViewPrivateFromConference, aCallId );
         
@@ -800,19 +674,17 @@
     // single call
     TPhoneCmdParamBoolean conferenceBubbleExists;
     iViewCommandHandle->ExecuteCommandL( EPhoneViewGetIsConference, 
-        &conferenceBubbleExists );                            
+        &conferenceBubbleExists ); 
     if( conferenceBubbleExists.Boolean() )
         {
-        // Go to Conference And Single state
-      
         UpdateCbaL( EPhoneCallHandlingNewCallSwapCBA );
-        iStateMachine->ChangeState( EPhoneStateConferenceAndSingle );                    
+        iStateMachine->ChangeState( EPhoneStateConferenceAndSingle );
         SetTouchPaneButtons( EPhoneConferenceAndSingleButtons );
         }
     else
-        {            
+        {
         SetTouchPaneButtons( EPhoneTwoSinglesButtons );
-        }       
+        }
     EndUiUpdate();
     }
     
@@ -824,16 +696,13 @@
     {
     __PHONELOG1( EBasic, EPhoneUIStates, 
         "CPhoneConference::UpdateConferenceSecurityStatusL() - callId = %d", aCallId );
-
     if( !iStateMachine->PhoneEngineInfo()->IsSecureCall( aCallId ) &&
         iStateMachine->PhoneEngineInfo()->IsSecureCall( KPEConferenceCallID ) )
         {
         TPhoneCmdParamCallHeaderData callHeaderParam;
-        
         callHeaderParam.SetCiphering( EFalse );
         callHeaderParam.SetCipheringIndicatorAllowed(
             iStateMachine->PhoneEngineInfo()->SecureSpecified() );
-        
         iViewCommandHandle->ExecuteCommandL( 
             EPhoneViewCipheringInfoChange,
             KPEConferenceCallID,
--- a/phoneapp/phoneuistates/src/cphoneconferenceandcallsetup.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphoneconferenceandcallsetup.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -63,7 +63,6 @@
 void CPhoneConferenceAndCallSetup::ConstructL()
     {
     CPhoneConference::ConstructL();
-  
     }
 
 // -----------------------------------------------------------
@@ -131,7 +130,6 @@
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConferenceAndCallSetup::HandleCommandL()");
     TBool commandStatus = ETrue;
-    
     switch( aCommand )
         {   
         case EPhoneDtmfDialerCancel:
@@ -143,7 +141,6 @@
             commandStatus = CPhoneConference::HandleCommandL( aCommand );
             break;
         }
-
     return commandStatus;
     }
     
@@ -159,8 +156,7 @@
         "CPhoneConferenceAndCallSetup::HandleKeyMessageL()");
     switch ( aCode )
         {
-        // End-key
-        case EKeyNo:
+        case EKeyNo: // End-key
             if ( aMessage == EPhoneKeyLongPress )
                 {
                 iStateMachine->SendPhoneEngineMessage(
@@ -173,7 +169,6 @@
             break;
             
         default:
-            // do base operation
             CPhoneConference::HandleKeyMessageL( aMessage, aCode );
             break;
         }
@@ -186,24 +181,16 @@
 void CPhoneConferenceAndCallSetup::HandleConnectingL( TInt aCallId )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneConferenceAndCallSetup::HandleConnectingL()");
-    
     BeginUiUpdateLC();
-        
     UpdateRemoteInfoDataL ( aCallId );
-    
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveGlobalNote );
     
-    // Re-enable global notes
     TPhoneCmdParamBoolean globalNotifierParam;
     globalNotifierParam.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
         &globalNotifierParam );
-
-    // Stop capturing keys
-    CaptureKeysDuringCallNotificationL( EFalse );
-
-    // Remove the number entry if it isn't DTMF dialer
-    if ( !iOnScreenDialer || !IsNumberEntryVisibleL() )
+    
+    if ( !IsNumberEntryVisibleL() )
         {
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
         }
@@ -213,14 +200,11 @@
     holdFlag.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
     
-    // Updated connecting cba's   
     UpdateCbaL( EPhoneCallHandlingInCallCBA );
-
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateConnecting );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, 
-        &callHeaderParam );       
-        
+        &callHeaderParam );
     EndUiUpdate();        
     }
     
@@ -231,37 +215,24 @@
 void CPhoneConferenceAndCallSetup::HandleConnectedL( TInt aCallId )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneConferenceAndCallSetup::HandleConnectedL()");
-    
-    // Keep Phone in the foreground
     TPhoneCmdParamBoolean booleanParam;
     booleanParam.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( 
         EPhoneViewSetNeedToSendToBackgroundStatus, &booleanParam );
-    
     BeginUiUpdateLC();
-        
-    // Show bubble
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateConnected );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, 
         &callHeaderParam );
     
-    // Capturing keys and number entry must be removed because some
-    // networks jump over connecting state directly to connected state.
-    CaptureKeysDuringCallNotificationL( EFalse );
-    
-    // Remove the number entry if it isn't DTMF dialer
-    if ( !iOnScreenDialer || !IsNumberEntryVisibleL() )
+    if ( !IsNumberEntryVisibleL() )
         {
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
         }
-    
     SetTouchPaneButtons( EPhoneConferenceAndSingleButtons );
     EndUiUpdate(); 
-    
     UpdateCbaL ( EPhoneCallHandlingNewCallSwapCBA );
-   
-    iStateMachine->ChangeState( EPhoneStateConferenceAndSingle );                     
+    iStateMachine->ChangeState( EPhoneStateConferenceAndSingle );
     }
 
 // -----------------------------------------------------------
@@ -272,15 +243,11 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConferenceAndCallSetup::HandleIdleL()");
-    // Re-enable global notes
     TPhoneCmdParamBoolean globalNotifierParam;
     globalNotifierParam.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
         &globalNotifierParam );
 
-    // Stop capturing keys
-    CaptureKeysDuringCallNotificationL( EFalse );
-
     TPhoneCmdParamBoolean conferenceExistsForCallId;
     iViewCommandHandle->ExecuteCommandL( EPhoneViewGetCallExistsInConference,
         aCallId, &conferenceExistsForCallId );
@@ -289,17 +256,15 @@
         {
         // Remove 'Conference on hold' global note
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveGlobalNote );
-    
-        // Remove conference member from conference bubble
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveFromConference, 
-            aCallId );
+        iViewCommandHandle->ExecuteCommandL( 
+                EPhoneViewRemoveFromConference, 
+                aCallId );
         
         //Check if removed call was last one to be able to be in conference mode
         //If there is no confrence call, go to single and call setup state
         TPhoneCmdParamBoolean conferenceExists;
         iViewCommandHandle->ExecuteCommandL( EPhoneViewGetIsConference, 
             &conferenceExists );
-        
         __PHONELOG1( EBasic, EPhoneControl,
             "CPhoneConferenceAndCallSetup::HandleIdleL - conferenceExists =%d ",
             conferenceExists.Boolean() );
@@ -312,33 +277,26 @@
                 }
             else
                 {
-                iStateMachine->ChangeState( EPhoneStateCallSetupInSingle );     
+                iStateMachine->ChangeState( EPhoneStateCallSetupInSingle );
                 }
             }
         }
     else
-        {       
+        {
         // Remove  outgoing call 
         BeginUiUpdateLC();
-        
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
-        
-        CheckIfRestoreNEContentAfterDtmfDialer();
          
         if ( IsNumberEntryUsedL() )
             {
-            // Show the number entry if it exists
             SetNumberEntryVisibilityL(ETrue);
             }
             
         SetTouchPaneButtons( EPhoneConferenceButtons );
         EndUiUpdate();
-
-        // Go to conference state
         UpdateCbaL( EPhoneCallHandlingInCallCBA );
         iStateMachine->ChangeState( EPhoneStateConference );
-        } 
-
+        }
     }
    
     
@@ -349,7 +307,6 @@
 void CPhoneConferenceAndCallSetup::UpdateInCallCbaL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneConferenceAndCallSetup::UpdateInCallCbaL() ");
-
     if ( iAlerting )
         {
         UpdateCbaL( EPhoneCallHandlingInCallCBA );
@@ -368,10 +325,8 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConferenceAndCallSetup::HandleConferenceIdleL()");
-        
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveConferenceBubble );
-        
-    // Fetch alerting call's id from view
+    
     TPhoneCmdParamCallStateData callStateData;
     callStateData.SetCallState( EPEStateConnecting );
     iViewCommandHandle->HandleCommandL(
@@ -389,10 +344,9 @@
         }
     else
         {
-        // Go to callsetup and single state
         UpdateCbaL( EPhoneCallHandlingCallSetupCBA );
         iStateMachine->ChangeState( EPhoneStateCallSetupInSingle );
-        }           
+        }
     }
 
 // End of File
--- a/phoneapp/phoneuistates/src/cphoneconferenceandsingle.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphoneconferenceandsingle.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -118,8 +118,8 @@
             HandleHeldL( aCallId );
             break;
             
-        case MEngineMonitor::EPEMessageInValidEmergencyNumber:              
-            SendGlobalErrorNoteL( EPhoneNoteTextNotAllowed, ETrue );                       
+        case MEngineMonitor::EPEMessageInValidEmergencyNumber:
+            SendGlobalErrorNoteL( EPhoneNoteTextNotAllowed, ETrue );
             break;
             
         case MEngineMonitor::EPEMessageValidEmergencyNumber:
@@ -145,7 +145,6 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneConferenceAndSingle::HandleCommandL");
     TBool commandStatus = ETrue;
-
     switch( aCommand )
         {
         case EPhoneNumberAcqCmdCall:
@@ -170,7 +169,6 @@
             commandStatus = CPhoneConference::HandleCommandL( aCommand );
             break;
         }
-
     return commandStatus;
     }
 
@@ -181,7 +179,6 @@
 void CPhoneConferenceAndSingle::HandleConnectedConferenceL()
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneConferenceAndSingle::HandleConnectedConferenceL");
-    // Update call state
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateConnectedConference );
 
@@ -206,10 +203,9 @@
     
     SetTouchPaneButtons( EPhoneConferenceAndHeldSingleButtons );
     UpdateInCallCbaL();
-    EndUiUpdate();          
+    EndUiUpdate();
     }
 
-
 // -----------------------------------------------------------
 // CPhoneConferenceAndSingle::HandleHeldConferenceL
 // 
@@ -221,25 +217,22 @@
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneConferenceAndSingle::HandleHeldConferenceL");
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateHeldConference );
-    
     TInt callLabelId;
     TBuf<KPhoneCallHeaderLabelMaxLength> labelText( KNullDesC );
     callLabelId = CPhoneMainResourceResolver::Instance()->
             ResolveResourceID( EPhoneCallOnHold );
-
     StringLoader::Load( 
         labelText, 
         callLabelId, 
         CCoeEnv::Static() );        
     callHeaderParam.SetLabelText( labelText );
-
     BeginUiUpdateLC();
-     
+    
     iViewCommandHandle->ExecuteCommandL( 
         EPhoneViewUpdateBubble, KConferenceCallId, &callHeaderParam );
-        
-    SetTouchPaneButtons( EPhoneConferenceAndSingleButtons );    
-    EndUiUpdate();     
+    SetTouchPaneButtons( EPhoneConferenceAndSingleButtons );
+    
+    EndUiUpdate();
     }
 
 // -----------------------------------------------------------
@@ -249,13 +242,10 @@
 void CPhoneConferenceAndSingle::HandleConnectedL( TInt aCallId )
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneConferenceAndSingle::HandleConnectedL");
-    
-    // Display connected bubble
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateConnected );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, 
         &callHeaderParam );
-
     UpdateInCallCbaL();
     SetTouchPaneButtons( EPhoneConferenceButtons );
     }
@@ -267,23 +257,19 @@
 void CPhoneConferenceAndSingle::HandleHeldL( TInt aCallId )
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneConferenceAndSingle::HandleHeldL");
-    // Display hold bubble
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateHeld );
     
     TBuf<KPhoneCallHeaderLabelMaxLength> labelText( KNullDesC );
     TInt callLabelId = CPhoneMainResourceResolver::Instance()->
             ResolveResourceID( EPhoneCallOnHold );
-
     StringLoader::Load( 
         labelText, 
         callLabelId, 
         CCoeEnv::Static() );        
     callHeaderParam.SetLabelText( labelText );
-
     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, 
-        &callHeaderParam );      
-    
+        &callHeaderParam );
     SetTouchPaneButtons( EPhoneConferenceButtons );
     }
 
@@ -294,20 +280,13 @@
 void CPhoneConferenceAndSingle::HandleAddedConferenceMemberL( TInt aCallId )
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneConferenceAndSingle::HandleAddedConferenceMemberL");
-    
     BeginUiUpdateLC();
-        
-    // Update conference bubble
     iViewCommandHandle->ExecuteCommandL( EPhoneViewAddToConference );
-    
     UpdateConferenceSecurityStatusL( aCallId );
-
     SetTouchPaneButtons( EPhoneConferenceButtons );
-    
     EndUiUpdate();
-
     UpdateCbaL( EPhoneCallHandlingInCallCBA );
-    iStateMachine->ChangeState( EPhoneStateConference );        
+    iStateMachine->ChangeState( EPhoneStateConference );
     }
 
 // -----------------------------------------------------------
@@ -317,7 +296,6 @@
 void CPhoneConferenceAndSingle::UpdateInCallCbaL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneConferenceAndSingle::UpdateInCallCbaL() ");
-    
     UpdateCbaL ( EPhoneCallHandlingNewCallSwapCBA );
     }
 
@@ -329,31 +307,22 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConferenceAndSingle::HandleIncomingL");
-    
-    BeginUiUpdateLC();  
+    BeginUiUpdateLC(); 
     
     TPhoneCmdParamBoolean dialerParam;
     dialerParam.SetBoolean( ETrue );
-    
-    // Get allow waiting call header param value.
     AllowShowingOfWaitingCallHeaderL( dialerParam );
     
     iViewCommandHandle->ExecuteCommandL( EPhoneViewCloseFSW );
     
-    // Check if HW Keys or Call UI should be disabled
     CheckDisableHWKeysAndCallUIL();
-    
-    // Display incoming call
     DisplayIncomingCallL( aCallId, dialerParam  );
-
-    // Set touch controls
     SetTouchPaneButtons( EPhoneWaitingCallButtons );
     
     EndUiUpdate();
     
-    // Go to Conference And Single And Waiting state
     UpdateCbaL( EPhoneCallHandlingIncomingRejectCBA );
-    iStateMachine->ChangeState( EPhoneStateConferenceAndSingleAndWaiting );                
+    iStateMachine->ChangeState( EPhoneStateConferenceAndSingleAndWaiting );
     }
 
 // -----------------------------------------------------------
@@ -364,33 +333,24 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConferenceAndSingle::HandleIdleL");
-    
     TPhoneCmdParamBoolean conferenceExistsForCallId;
     iViewCommandHandle->ExecuteCommandL( EPhoneViewGetCallExistsInConference,
         aCallId, &conferenceExistsForCallId );
     
     if( conferenceExistsForCallId.Boolean() )
         {
-        // Remove conference member from conference bubble
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveFromConference, 
-            aCallId );                    
+            aCallId );
         }
     else
-        {       
-        // Remove call
+        {
         BeginUiUpdateLC(); 
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
-
         SetTouchPaneButtons( EPhoneConferenceButtons );
-        
         UpdateCbaL( EPhoneCallHandlingInCallCBA );
-      
-
         EndUiUpdate();
-
         iStateMachine->ChangeState( EPhoneStateConference );
         }
-    
     }
 
 // -----------------------------------------------------------
@@ -400,9 +360,7 @@
 void CPhoneConferenceAndSingle::HandleConferenceIdleL()
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneConferenceAndSingle::HandleConferenceIdleL");
-    
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveConferenceBubble );
-    
     TPhoneCmdParamInteger intParam;
     iViewCommandHandle->ExecuteCommandL( EPhoneViewGetCountOfActiveCalls,
         &intParam );
@@ -432,52 +390,42 @@
         "CPhoneConferenceAndSingle::HandleKeyMessageL()");
     switch ( aCode )
         {
-        // send-key
-        case EKeyYes:
+        case EKeyYes: // send-key
             if( IsNumberEntryVisibleL() )
                 {
                 HandleSendL();
                 }
             else
                 {
-                // Number entry is below so swap the call
                 iStateMachine->SendPhoneEngineMessage(
-                    CPEPhoneModelIF::EPEMessageSwap );        
+                    CPEPhoneModelIF::EPEMessageSwap );
                 }
             break;
             
         default:
-            // do base operation
             CPhoneConference::HandleKeyMessageL( aMessage, aCode );
             break;
         }
     }
 
-
-
 // --------------------------------------------------------------
 // CPhoneConferenceAndSingle::HandleSendL 
 // --------------------------------------------------------------
 //
 void CPhoneConferenceAndSingle::HandleSendL()
     {
-    // Get the number entry contents
     HBufC *phoneNumber = HBufC::NewLC( KPhoneNumberEntryBufferSize );
     TPtr ptr( phoneNumber->Des() );
     TPhoneCmdParamString stringParam;
     stringParam.SetString( &ptr );
-    
     iViewCommandHandle->ExecuteCommand(
         EPhoneViewGetNumberFromEntry,
         &stringParam );
-    
     iStateMachine->PhoneEngineInfo()->SetPhoneNumber( ptr ) ;
     
     if ( iStateMachine->PhoneEngineInfo()->PhoneNumberIsServiceCode() || 
          phoneNumber->Des().Length() < KPhoneValidPhoneNumberLength )
-        {  
-        // Send a manual control sequence by providing number 
-        // information with dial command
+        {
         CallFromNumberEntryL();
         }
     else
--- a/phoneapp/phoneuistates/src/cphoneconferenceandsingleandwaiting.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphoneconferenceandsingleandwaiting.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -125,25 +125,20 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates,
         "CPhoneConferenceAndSingleAndWaiting::HandleIdleL()");
-
     BeginUiUpdateLC();
-    // Set touch controls
     SetTouchPaneButtons( EPhoneWaitingCallButtons );
 
-
     TPhoneCmdParamBoolean conferenceExistsForCallId;
     iViewCommandHandle->ExecuteCommandL( EPhoneViewGetCallExistsInConference,
         aCallId, &conferenceExistsForCallId );
 
     if( conferenceExistsForCallId.Boolean() )
         {
-        // Remove conference member from conference bubble
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveFromConference,
             aCallId );
         }
     else
         {
-        // Remove call
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
 
         TPhoneCmdParamBoolean conferenceBubbleExists;
@@ -182,11 +177,8 @@
 void CPhoneConferenceAndSingleAndWaiting::HandleAddedConferenceMemberL( TInt aCallId )
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneConferenceAndSingleAndWaiting::HandleAddedConferenceMemberL");
-    // Update conference bubble
     iViewCommandHandle->ExecuteCommandL( EPhoneViewAddToConference );
-
     UpdateConferenceSecurityStatusL( aCallId );
-
     MakeStateTransitionToConferenceAndWaitingL( KConferenceCallId );
     }
 
@@ -198,13 +190,8 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates,
         "CPhoneConferenceAndSingleAndWaiting::MakeStateTransitionToConferenceAndWaitingL()");
-
     SetTouchPaneButtons( EPhoneWaitingCallButtons );
-
-    // Check if HW Keys or Call UI should be disabled
     CheckDisableHWKeysAndCallUIL();
-
-    // Go to Conference And Waiting state
     UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
     iStateMachine->ChangeState( EPhoneStateConferenceAndWaiting );
     }
@@ -213,32 +200,26 @@
 // CPhoneConferenceAndSingleAndWaiting::MakeStateTransitionToConferenceAndSingleL
 // -----------------------------------------------------------
 //
-void CPhoneConferenceAndSingleAndWaiting::MakeStateTransitionToConferenceAndSingleL( TInt /*aCallId*/ )
+void CPhoneConferenceAndSingleAndWaiting::MakeStateTransitionToConferenceAndSingleL( 
+        TInt /*aCallId*/ )
     {
     __LOGMETHODSTARTEND( EPhoneUIStates,
         "CPhoneConferenceAndSingleAndWaiting::MakeStateTransitionToConferenceAndSingleL()");
-
-    if( /*FeatureManager::FeatureSupported( KFeatureIdFfTouchUnlockStroke )
-        */ 1 &&  iStateMachine->PhoneStorage()->IsScreenLocked() )
+    if( iStateMachine->PhoneStorage()->IsScreenLocked() )
         {
         EnableCallUIL();
         }
-
-    // Reset blocked keys list
     iStateMachine->PhoneStorage()->ResetBlockedKeysList();
 
     if ( IsNumberEntryUsedL() )
         {
         if ( NeedToSendToBackgroundL() )
             {
-            // Return phone to the background if send to background is needed.
             iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
-
             UpdateCbaL( EPhoneCallHandlingInCallCBA );
             }
         else
             {
-            // Show the number entry if it exists
             SetNumberEntryVisibilityL(ETrue);
             }
         }
@@ -249,14 +230,10 @@
         // sendbackround if needed.
         if ( NeedToSendToBackgroundL() )
             {
-            // Return phone to the background if send to background is needed.
             iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
             }
         }
-
     SetTouchPaneButtons( EPhoneConferenceAndSingleButtons );
-    // Go to conference and single state
-    // CBA updates in above if-else conditions
     iStateMachine->ChangeState( EPhoneStateConferenceAndSingle );
     }
 
@@ -268,16 +245,10 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates,
         "CPhoneConferenceAndSingleAndWaiting::HandleConferenceIdleL()");
-
     BeginUiUpdateLC();
-
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveConferenceBubble );
-
-    // Remove any phone dialogs if they are displayed
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
-
     MakeTransitionAccordingToActiveCallsL();
-
     EndUiUpdate();
     }
 
@@ -293,22 +264,19 @@
         "CPhoneConferenceAndSingleAndWaiting::HandleKeyMessageL()");
     switch ( aCode )
         {
-        // send-key
-        case EKeyYes:
+        case EKeyYes: // send-key
             if( IsNumberEntryVisibleL() )
                 {
                 CallFromNumberEntryL();
                 }
             else
                 {
-                // Not allowed to answer
                 SendGlobalWarningNoteL(
                     EPhoneNoteTextCallNotAllowed, ETrue );
                 }
             break;
 
         default:
-            // do base operation
             CPhoneConferenceAndSingle::HandleKeyMessageL( aMessage, aCode );
             break;
         }
@@ -337,7 +305,6 @@
 void CPhoneConferenceAndSingleAndWaiting::UpdateInCallCbaL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneConferenceAndSingleAndWaiting::UpdateInCallCbaL() ");
-
     UpdateCbaL ( EPhoneCallHandlingCallWaitingCBA );
     }
 
@@ -350,38 +317,26 @@
     TPhoneCmdParamInteger activeCallCount;
     iViewCommandHandle->ExecuteCommandL(
         EPhoneViewGetCountOfActiveCalls, &activeCallCount );
-
     switch( activeCallCount.Integer() )
          {
          case ENoActiveCalls: // Go to incoming state
             {
-            // Get Waiting call's Call Id
             TPhoneCmdParamCallStateData callStateData;
             callStateData.SetCallState( EPEStateRinging );
             iViewCommandHandle->HandleCommandL( EPhoneViewGetCallIdByState,
                 &callStateData );
-
             if ( callStateData.CallId() != KErrNotFound )
                 {
-                // Display ringing bubble
                 TPhoneCmdParamCallHeaderData callHeaderParam;
                 callHeaderParam.SetCallState( EPEStateRinging );
-
                 SetCallHeaderTextsForCallComingInL( callStateData.CallId(), EFalse, &callHeaderParam );
 
                 iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble,
                     callStateData.CallId(),
                     &callHeaderParam );
-
-                // Capture keys when there is an incoming call
-                CaptureKeysDuringCallNotificationL( ETrue );
-
-                // Go to Incoming state
+                
                 iCbaManager->UpdateIncomingCbaL( callStateData.CallId() );
-
-                // Check if HW Keys or Call UI should be disabled
                 CheckDisableHWKeysAndCallUIL();
-
                 SetTouchPaneButtons( EPhoneIncomingCallButtons );
                 SetRingingTonePlaybackL( callStateData.CallId() );
                 SetBackButtonActive(EFalse);
@@ -395,26 +350,18 @@
                 }
             }
             break;
-         case EOneActiveCall:
+         case EOneActiveCall: // Go to Single And Waiting state
             {
-            // Go to Single And Waiting state
             UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
             SetTouchPaneButtons( EPhoneWaitingCallButtons );
-
-            // Check if HW Keys or Call UI should be disabled
             CheckDisableHWKeysAndCallUIL();
-
             iStateMachine->ChangeState( EPhoneStateWaitingInSingle );
             }
             break;
-         case ETwoActiveCalls:
+         case ETwoActiveCalls: // Go to Two Singles And Waiting state
             {
-            // Go to Two Singles And Waiting state
             UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
-
-            // Check if HW Keys or Call UI should be disabled
             CheckDisableHWKeysAndCallUIL();
-
             SetTouchPaneButtons( EPhoneWaitingCallButtons );
             iStateMachine->ChangeState( EPhoneStateTwoSinglesAndWaiting );
             }
--- a/phoneapp/phoneuistates/src/cphoneconferenceandwaiting.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphoneconferenceandwaiting.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -70,7 +70,6 @@
     {
     CPhoneConference::ConstructL();
     
-    // Fetch ringing call's id from view
     TPhoneCmdParamCallStateData callStateData;
     callStateData.SetCallState( EPEStateRinging );
     iViewCommandHandle->HandleCommandL(
@@ -136,10 +135,8 @@
             TPhoneCmdParamInteger callIdParam;
             iViewCommandHandle->ExecuteCommandL( 
                         EPhoneViewGetExpandedBubbleCallId, &callIdParam );
-            
             CPhoneConference::HandlePhoneEngineMessageL( aMessage, 
                             aCallId );
-            
             if ( KConferenceCallId == callIdParam.Integer() )
                 {
                 iViewCommandHandle->ExecuteCommand(EPhoneSetConferenceExpanded);
@@ -165,23 +162,19 @@
     __LOGMETHODSTARTEND(EPhoneUIStates, "CPhoneConferenceAndWaiting::HandleKeyMessageL()");
     switch ( aCode )
         {
-        // send-key
-        case EKeyYes:
+        case EKeyYes:  // send-key
             if( IsNumberEntryVisibleL() )
                 {
                 CallFromNumberEntryL();
                 }
             else
                 {
-                // Number entry is below incoming call bubble so
-                // answer the call
                 iStateMachine->SendPhoneEngineMessage(
                     MPEPhoneModel::EPEMessageAnswer ); 
                 }
             break;
             
         default:
-            // do base operation
             CPhoneConference::HandleKeyMessageL( aMessage, aCode );
             break;
         }
@@ -211,10 +204,8 @@
     {
     __LOGMETHODSTARTEND(EPhoneUIStates, "CPhoneConferenceAndWaiting::HandleConnectedL()");
     TPhoneCmdParamCallStateData callStateData;
-    
     if ( iRingingCallId == KErrNotFound )
         {
-        // Fetch ringing call's id from view
         TPhoneCmdParamCallStateData callStateData;
         callStateData.SetCallState( EPEStateRinging );
         iViewCommandHandle->HandleCommandL(
@@ -224,7 +215,7 @@
     
     if ( iRingingCallId == aCallId )
         {
-        // not a member of conference call            
+        // not a member of conference call
         MakeStateTransitionToConferenceAndSingleL( aCallId );
         }   
     else
@@ -244,51 +235,39 @@
 void CPhoneConferenceAndWaiting::MakeStateTransitionToConferenceAndSingleL( TInt aCallId )
     {
     __LOGMETHODSTARTEND(EPhoneUIStates, "CPhoneConferenceAndWaiting::MakeStateTransitionToConferenceAndSingleL()");
-    
     if( FeatureManager::FeatureSupported( KFeatureIdFfTouchUnlockStroke )
         && iStateMachine->PhoneStorage()->IsScreenLocked() )
         {
         EnableCallUIL();
         }
     
-    // Reset blocked keys list
     iStateMachine->PhoneStorage()->ResetBlockedKeysList();
-        
-    BeginUiUpdateLC();    
-         
+    BeginUiUpdateLC();
     UpdateRemoteInfoDataL ( aCallId );
     
-    // Show bubble
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateConnected );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, 
         &callHeaderParam );
     
-    
     if ( IsNumberEntryUsedL() )
         {
         if ( NeedToSendToBackgroundL() )
-            {           
+            {
             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.
         }
     SetTouchPaneButtons( EPhoneConferenceAndSingleButtons );
-    
     EndUiUpdate();
-
-    // CBA updates in above if-else conditions
-    iStateMachine->ChangeState( EPhoneStateConferenceAndSingle );                     
+    iStateMachine->ChangeState( EPhoneStateConferenceAndSingle );
     }
 
 // -----------------------------------------------------------
@@ -298,10 +277,8 @@
 void CPhoneConferenceAndWaiting::HandleIdleL( TInt aCallId )
     {
     __LOGMETHODSTARTEND(EPhoneUIStates, "CPhoneConferenceAndWaiting::HandleIdleL()");
-    
     if ( iRingingCallId == KErrNotFound )
         {
-        // Fetch ringing call's id from view
         TPhoneCmdParamCallStateData callStateData;
         callStateData.SetCallState( EPEStateRinging );
         iViewCommandHandle->HandleCommandL(
@@ -312,23 +289,18 @@
     if( iRingingCallId == aCallId )
         {
         
-        BeginUiUpdateLC();    
-
-        // Remove call 
+        BeginUiUpdateLC();
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
             
         if ( IsNumberEntryUsedL() )
             {
             if ( NeedToSendToBackgroundL() )
                 {
-                // Return phone to the background if send to background is needed.
                 iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
-
                 UpdateCbaL( EPhoneCallHandlingInCallCBA );
                 }
             else
                 {
-                // Show the number entry if it exists.
                 SetNumberEntryVisibilityL(ETrue);
                 }
             }
@@ -349,31 +321,24 @@
             {
             EnableCallUIL();
             }
-        
-        // Reset blocked keys list
         iStateMachine->PhoneStorage()->ResetBlockedKeysList();
-
-        SetTouchPaneButtons( EPhoneConferenceButtons );    
-        
+        SetTouchPaneButtons( EPhoneConferenceButtons );
         EndUiUpdate();
-         
-        // Go to conference state
-        // CBA updates in above if-else conditions
-        iStateMachine->ChangeState( EPhoneStateConference );                    
+        iStateMachine->ChangeState( EPhoneStateConference );
         }
     else
         {
         // Idle message came for conference member
-        CPhoneConference::HandleIdleL( aCallId );           
+        CPhoneConference::HandleIdleL( aCallId ); 
         
         TPhoneCmdParamBoolean conferenceBubbleExists;
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewGetIsConference,
-                                             &conferenceBubbleExists );                            
-                
+        iViewCommandHandle->ExecuteCommandL( 
+                EPhoneViewGetIsConference,
+                &conferenceBubbleExists );
         if( !conferenceBubbleExists.Boolean() )
             {
             HandleConferenceIdleL();
-            }     
+            }
         }
     }
 
@@ -384,21 +349,16 @@
 void CPhoneConferenceAndWaiting::HandleConferenceIdleL()
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneConferenceAndWaiting::HandleConferenceIdleL()");
- 
     BeginUiUpdateLC();
-    
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveConferenceBubble );
     
     TPhoneCmdParamInteger activeCallCount;
     iViewCommandHandle->ExecuteCommandL(
         EPhoneViewGetCountOfActiveCalls, &activeCallCount );
-        
     switch( activeCallCount.Integer() )
         {
-        case ENoActiveCalls:
-            // Go to incoming state
+        case ENoActiveCalls: // Go to incoming state
             {
-            // Display ringing bubble
             TPhoneCmdParamCallHeaderData callHeaderParam;
             callHeaderParam.SetCallState( EPEStateRinging );
             
@@ -407,69 +367,53 @@
             holdFlag.SetBoolean( EFalse );
             iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
               
-            // Bring up callhandling view
             BringIncomingToForegroundL(); 
-           
             SetCallHeaderTextsForCallComingInL( iRingingCallId, EFalse, &callHeaderParam );
-          
             iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, 
                 iRingingCallId ,&callHeaderParam );
             iCbaManager->UpdateIncomingCbaL( iRingingCallId );
             
-            // Hide number entry if visible
             if ( IsNumberEntryVisibleL() )
                 {
                 SetNumberEntryVisibilityL(EFalse);   
                 }
-            
-            // Check if HW Keys or Call UI should be disabled
             CheckDisableHWKeysAndCallUIL();
             
             SetTouchPaneButtons( EPhoneIncomingCallButtons );
-            SetRingingTonePlaybackL( iRingingCallId );          
+            SetRingingTonePlaybackL( iRingingCallId );
             SetBackButtonActive(EFalse);
             iStateMachine->ChangeState( EPhoneStateIncoming );
-            break;   
-            }   
+            }
+            break;
             
         case EOneActiveCall:
             if ( IsNumberEntryUsedL() )
                 {
-                // Show the number entry if it exists
                 SetNumberEntryVisibilityL(ETrue);
                 }
-            // Go to waiting in single state
             UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
-            
-            // Check if HW Keys or Call UI should be disabled
             CheckDisableHWKeysAndCallUIL();
-            
-            SetTouchPaneButtons( EPhoneWaitingCallButtons );             
+            SetTouchPaneButtons( EPhoneWaitingCallButtons );
             iStateMachine->ChangeState( EPhoneStateWaitingInSingle );
             break;
             
         case ETwoActiveCalls:
             if ( IsNumberEntryUsedL() )
                 {
-                // Show the number entry if it exists
                 SetNumberEntryVisibilityL(ETrue);
                 }
-            // Go to two singles and waiting state
             UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
-            
-            // Check if HW Keys or Call UI should be disabled
             CheckDisableHWKeysAndCallUIL();
-            
-            SetTouchPaneButtons( EPhoneWaitingCallButtons );               
-
+            SetTouchPaneButtons( EPhoneWaitingCallButtons );
             iStateMachine->ChangeState( EPhoneStateTwoSinglesAndWaiting );
             break; 
+            
         default:
           // Too many active calls to handle reliable state change now.
           // Waiting for all conference member idles
           // This case may happen when 'End all calls' because conferenceIdle may 
           // come earlier than idle for conference member
-           break;            
+           break;
         }
     EndUiUpdate();
     }
@@ -492,22 +436,12 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConferenceAndWaiting::HandleDiallingL()");
-
     BeginUiUpdateLC();
-    // Hide number entry if it exists
-    SetNumberEntryVisibilityL(EFalse);        
-
-    // Display call setup 
+    SetNumberEntryVisibilityL(EFalse);
     DisplayCallSetupL( aCallId );
-
-    SetTouchPaneButtons( EPhoneCallSetupButtons ); 
-
+    SetTouchPaneButtons( EPhoneCallSetupButtons );
     EndUiUpdate();
-    
-    // Update conference and waiting and call setup softkeys
     UpdateCbaL( EPhoneCallHandlingCallSetupCBA );
-    
-    // Go to conference and waiting and call setup state
     iStateMachine->ChangeState( EPhoneStateConferenceAndWaitingAndCallSetup );
     }
 
@@ -519,35 +453,29 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConferenceAndWaiting::HandleWentOneToOneL()");
-
     BeginUiUpdateLC();
-    
-    // Update conference bubble
     iViewCommandHandle->ExecuteCommandL(
         EPhoneViewPrivateFromConference, aCallId );
     
     if ( iRingingCallId == KErrNotFound )
         {
-        // Fetch ringing call's id from view
         TPhoneCmdParamCallStateData callStateData;
         callStateData.SetCallState( EPEStateRinging );
         iViewCommandHandle->HandleCommandL(
             EPhoneViewGetCallIdByState, &callStateData );
-        iRingingCallId = callStateData.CallId();   
+        iRingingCallId = callStateData.CallId();
         }
         
     TPhoneCmdParamBoolean conferenceBubbleExists;
     iViewCommandHandle->ExecuteCommandL( EPhoneViewGetIsConference, 
-        &conferenceBubbleExists );                            
+        &conferenceBubbleExists );
     if( conferenceBubbleExists.Boolean() && 
         ( iRingingCallId != KErrNotFound ) )
         {
         SetTouchPaneButtons( EPhoneWaitingCallButtons );
         UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
-        // Go to Conference And Single And Waiting state
         iStateMachine->ChangeState( EPhoneStateConferenceAndSingleAndWaiting );  
         }
-
     EndUiUpdate();
     }
 
@@ -560,7 +488,6 @@
     __LOGMETHODSTARTEND( EPhoneUIStates,
         "CPhoneConferenceAndWaiting::HandleCommandL() ");
     TBool commandStatus = ETrue;
-
     switch( aCommand )
         {
         case EPhoneCmdUpdateUiControls:
@@ -571,7 +498,6 @@
             commandStatus = CPhoneConference::HandleCommandL( aCommand );
             break;
         }
-
     return commandStatus;
     }
 
--- a/phoneapp/phoneuistates/src/cphoneconferenceandwaitingandcallsetup.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphoneconferenceandwaitingandcallsetup.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -136,19 +136,7 @@
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConferenceAndWaitingAndCallSetup::HandleCommandL()");
     TBool commandStatus = ETrue;
-    
-    switch( aCommand )
-        {   
-        case EPhoneDtmfDialerCancel:
-            {
-            }
-            break;    
-    
-        default:
-            commandStatus = CPhoneConference::HandleCommandL( aCommand );
-            break;
-        }
-
+    commandStatus = CPhoneConference::HandleCommandL( aCommand );
     return commandStatus;
     }
 
@@ -164,11 +152,10 @@
         "CPhoneConferenceAndWaitingAndCallSetup::HandleKeyMessageL");
     switch ( aCode )
         {
-        // send-key
-        case EKeyYes:
+        case EKeyYes: // send-key
             if( IsNumberEntryVisibleL() )
                  {
-                CallFromNumberEntryL();                             
+                CallFromNumberEntryL();
                  }
              else
                  {
@@ -176,12 +163,11 @@
                 // We can't answer to call in this state so display
                 // Not allowed -note.
                 SendGlobalErrorNoteL( 
-                    EPhoneNoteTextNotAllowed, ETrue );                                             
+                    EPhoneNoteTextNotAllowed, ETrue );
                  }
             break;
             
         default:
-            // do base operation
             CPhoneConference::HandleKeyMessageL( aMessage, aCode );
             break;
         }
@@ -194,8 +180,7 @@
 void CPhoneConferenceAndWaitingAndCallSetup::UpdateInCallCbaL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, 
-        "CPhoneConferenceAndWaitingAndCallSetup::SetCallSetupCbaL() ");    
-    
+        "CPhoneConferenceAndWaitingAndCallSetup::SetCallSetupCbaL() "); 
     if ( iAlerting )
         {
         UpdateCbaL ( EPhoneCallHandlingCallWaitingCBA );
@@ -214,35 +199,27 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConferenceAndWaitingAndCallSetup::HandleConnectingL");
-    
     BeginUiUpdateLC();
-    
     UpdateRemoteInfoDataL ( aCallId );
-
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveGlobalNote );
-    // Re-enable global notes
+    
     TPhoneCmdParamBoolean globalNotifierParam;
     globalNotifierParam.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
         &globalNotifierParam );
-
-    // Stop capturing keys
-    CaptureKeysDuringCallNotificationL( EFalse );
     
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateConnecting );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, 
         &callHeaderParam );
         
-    // Remove the number entry if it isn't DTMF dialer
-    if ( !iOnScreenDialer || !IsNumberEntryVisibleL() )
+    if ( !IsNumberEntryVisibleL() )
         {
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
         }
     
     EndUiUpdate();
-        
-    UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );    
+    UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
     }
 
 // -----------------------------------------------------------
@@ -253,33 +230,23 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConferenceAndWaitingAndCallSetup::HandleConnectedL");
-    
     BeginUiUpdateLC();
-    
     UpdateRemoteInfoDataL ( aCallId );
     
-    // Show bubble
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateConnected );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, 
         &callHeaderParam );
     
-    // Capturing keys and number entry must be removed because some
-    // networks jump over connecting state directly to connected state.
-    CaptureKeysDuringCallNotificationL( EFalse );
-    
-    // Remove the number entry if it isn't DTMF dialer
-    if ( !iOnScreenDialer || !IsNumberEntryVisibleL() )
+    if ( !IsNumberEntryVisibleL() )
         {
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
         }
     
-    SetTouchPaneButtons( EPhoneWaitingCallButtons );    
+    SetTouchPaneButtons( EPhoneWaitingCallButtons );
     EndUiUpdate();
-    
-    // Go to Conference And Single And Waiting state
     UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );  
-    iStateMachine->ChangeState( EPhoneStateConferenceAndSingleAndWaiting );                
+    iStateMachine->ChangeState( EPhoneStateConferenceAndSingleAndWaiting );
     }
 
 // -----------------------------------------------------------
@@ -290,7 +257,6 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl, 
         "CPhoneConferenceAndCallSetup::UpdateInCallCbaL() ");
-        
     UpdateCbaL( EPhoneCallHandlingInCallCBA );
     } 
     
@@ -302,14 +268,10 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneConferenceAndWaitingAndCallSetup::HandleConferenceIdleL");
-    
     BeginUiUpdateLC();
-        
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveConferenceBubble );
-
     if ( IsNumberEntryUsedL() )
         {
-        // Show the number entry if it exists
         SetNumberEntryVisibilityL(ETrue);
         }
 
@@ -318,11 +280,9 @@
     iViewCommandHandle->HandleCommandL( EPhoneViewGetCallIdByState,
         &callStateData );
  
-    if( callStateData.CallId() > KErrNotFound )
+    if( callStateData.CallId() > KErrNotFound ) //  No need update cba's. 
         {        
-        // Go to Single And Waiting And Call Setup state
-        SetTouchPaneButtons( EPhoneCallSetupButtons );        
-        // No need update cbas
+        SetTouchPaneButtons( EPhoneCallSetupButtons );
         iStateMachine->ChangeState( EPhoneStateSingleAndCallSetupAndWaiting );
         }
     else 
@@ -330,11 +290,10 @@
         callStateData.SetCallState( EPEStateHeld );
         iViewCommandHandle->HandleCommandL( EPhoneViewGetCallIdByState,
             &callStateData );
+        
         if( callStateData.CallId() > KErrNotFound )
             {
-            // Go to Single And Waiting And Call Setup state
             SetTouchPaneButtons( EPhoneCallSetupButtons ); 
-            // No need update cbas         
             iStateMachine->ChangeState( EPhoneStateSingleAndCallSetupAndWaiting );
             }
         else
@@ -342,16 +301,13 @@
             // Reset Hold flag to view
             TPhoneCmdParamBoolean holdFlag;
             holdFlag.SetBoolean( EFalse );
-            iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );       
+            iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
 
-            // Go to Call Setup And Waiting state
             SetTouchPaneButtons( EPhoneCallSetupButtons ); 
-
-            // No need update cbas            
             iStateMachine->ChangeState( EPhoneStateCallSetupAndWaiting );
             }
         }
-    EndUiUpdate();          
+    EndUiUpdate();
     }
 
 // -----------------------------------------------------------
@@ -361,41 +317,35 @@
 void CPhoneConferenceAndWaitingAndCallSetup::HandleIdleL( TInt aCallId )
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
-         "CPhoneConferenceAndWaitingAndCallSetup::HandleIdleL");        
-
-    // Re-enable global notes
+         "CPhoneConferenceAndWaitingAndCallSetup::HandleIdleL");
     TPhoneCmdParamBoolean globalNotifierParam;
     globalNotifierParam.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
         &globalNotifierParam );
 
-    // Stop capturing keys
-    CaptureKeysDuringCallNotificationL( EFalse );
-
     TPhoneCmdParamBoolean conferenceExistsForCallId;
     iViewCommandHandle->ExecuteCommandL( EPhoneViewGetCallExistsInConference,
         aCallId, &conferenceExistsForCallId );
     
     if( conferenceExistsForCallId.Boolean() )
         {
-        // Remove conference member from conference bubble
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveFromConference, 
-            aCallId );            
+        iViewCommandHandle->ExecuteCommandL( 
+                EPhoneViewRemoveFromConference, 
+                aCallId );
         return;
         }
     else
         {
-        // Remove call 
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
 
         TPhoneCmdParamBoolean conferenceBubbleExists;
         iViewCommandHandle->ExecuteCommandL( EPhoneViewGetIsConference, 
-            &conferenceBubbleExists );                            
+            &conferenceBubbleExists );
         if( !conferenceBubbleExists.Boolean() )
             {
             // Idle message came for last conference member.
             // Don't do anything, wait for ConferenceIdle message
-            }            
+            } 
         else
             {
             BeginUiUpdateLC();
@@ -404,29 +354,24 @@
             iViewCommandHandle->HandleCommandL( EPhoneViewGetCallIdByState,
                 &callStateData );
             if( callStateData.CallId() > KErrNotFound )
-                {
-                CheckIfRestoreNEContentAfterDtmfDialer();
-                
+                { 
                 if ( IsNumberEntryUsedL() )
                     {
                     // Show the number entry if callsetup failed with number busy
                     // etc reason.
                     SetNumberEntryVisibilityL(ETrue);
                     }
-                
-                // Go to Conference And Waiting state
                 SetTouchPaneButtons( EPhoneWaitingCallButtons );
-                UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );                 
+                UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
                 iStateMachine->ChangeState( EPhoneStateConferenceAndWaiting );
                 }
             else
                 {
-                // Go to Conference And Call Setup state
                 SetTouchPaneButtons( EPhoneCallSetupButtons );
-                UpdateCbaL( EPhoneCallHandlingInCallCBA );                  
+                UpdateCbaL( EPhoneCallHandlingInCallCBA );
                 iStateMachine->ChangeState( EPhoneStateConferenceAndCallSetup );
                 }
-            EndUiUpdate();             
+            EndUiUpdate();
             }
         }
     }
--- a/phoneapp/phoneuistates/src/cphoneemergency.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphoneemergency.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -195,7 +195,6 @@
 void CPhoneEmergency::HandleIdleL( TInt aCallId )
     {
     __LOGMETHODSTARTEND(EPhoneUIStates, "CPhoneEmergency::HandleIdleL() ");
-
     // Re-enable global notes, this enables secui (if needed) to come on top
     // if call creation was rejected by user
     TPhoneCmdParamBoolean globalNotifierParam;
@@ -215,7 +214,6 @@
                 EPhoneViewStopCapturingKey, &captureParam );
 
         const TBool isSimStateNotPresentWithSecurityMode = IsSimStateNotPresentWithSecurityModeEnabled();
-
         // Sim IS not ok when making emergency call from Pin query, no note
         if ( (!IsSimOk() && !iStartupInterrupted) || isSimStateNotPresentWithSecurityMode )
             {
@@ -230,24 +228,16 @@
                 SetupIdleScreenInBackgroundL();
                 }
 
-            else if ( iOnScreenDialer && IsNumberEntryContentStored() )
+            else if ( IsNumberEntryContentStored() || IsNumberEntryUsedL() )
                 {
                 SetNumberEntryVisibilityL(ETrue);
                 }
-
-            else if ( IsNumberEntryUsedL() )
-                {
-                // Show the number entry if it exists
-                SetNumberEntryVisibilityL(ETrue);
-                }
-
+            
             else
                 {
-                 // Display idle screen
                 DisplayIdleScreenL();
                 }
 
-            // Display call termination note, if necessary
             if ( iConnected )
                 {
                 DisplayCallTerminationNoteL();
@@ -275,16 +265,13 @@
                     !FeatureManager::FeatureSupported( KFeatureIdFfSimlessOfflineSupport ) ) )
                 {
                 UpdateCbaL( EPhoneEmptyCBA );
-                
                 TPhoneCmdParamBoolean securityMode;
                 iViewCommandHandle->ExecuteCommandL( EPhoneViewGetSecurityModeStatus, &securityMode );
                 if ( !securityMode.Boolean() )
                     {
-                    // Setup idle as next active app.
                     SetupIdleScreenInBackgroundL();
                     }
                 }
-            
             iStateMachine->ChangeState( EPhoneStateIdle );
             }
         }
@@ -294,7 +281,6 @@
         }
     }
 
-
 // -----------------------------------------------------------
 // CPhoneEmergency::HandleDialingL
 // -----------------------------------------------------------
@@ -308,13 +294,9 @@
     // and receiving an EPEMessageDialling message. This can occur
     // because PE messages are processed asynchronously.
     __LOGMETHODSTARTEND(EPhoneUIStates, "CPhoneEmergency::HandleDialingL() ");
-
     if ( aCallId == KPEEmergencyCallId )
         {
-
         iDeviceLockOn = IsAutoLockOn();
-
-        // Disable global notes when the phone is dialling
         TPhoneCmdParamBoolean globalNotifierParam;
         globalNotifierParam.SetBoolean( ETrue );
         iViewCommandHandle->ExecuteCommandL(
@@ -325,9 +307,6 @@
         captureParam.SetKeyCode( EKeyNo );
         iViewCommandHandle->ExecuteCommand( EPhoneViewStartCapturingKey, &captureParam );
         
-        // 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;
@@ -335,18 +314,13 @@
         iViewCommandHandle->ExecuteCommandL(
             EPhoneViewSetNeedToSendToBackgroundStatus,
             &booleanParam );
-
-        // Bring Phone app in the foreground
+        
         TPhoneCmdParamInteger uidParam;
         uidParam.SetInteger( KUidPhoneApplication.iUid );
         iViewCommandHandle->ExecuteCommandL( EPhoneViewBringAppToForeground,
             &uidParam );
-
-        // Set Phone as the top application
         iViewCommandHandle->ExecuteCommandL( EPhoneViewSetTopApplication,
             &uidParam );
-
-        // Hide the number entry if it is visible
         if ( IsNumberEntryUsedL() )
             {
             // Remove number entry
@@ -359,7 +333,6 @@
         BeginUiUpdateLC();
         
         TPhoneCmdParamEmergencyCallHeaderData emergencyHeaderParam;
-        // Set call header
         TBuf<KPhoneCallHeaderLabelMaxLength> headerText( KNullDesC );
         StringLoader::Load(
             headerText,
@@ -397,10 +370,7 @@
 
         SetTouchPaneButtons( EPhoneEmergencyCallButtons );
         SetBackButtonActive(EFalse);
-        
-        EndUiUpdate();        
-
-        // ShowNoteL( EPhoneEmergencyConnectWaitNote );
+        EndUiUpdate();
         UpdateSetupCbaL();
         }
     }
@@ -411,38 +381,19 @@
 void CPhoneEmergency::HandleConnectingL( TInt aCallId )
     {
     __LOGMETHODSTARTEND(EPhoneUIStates, "CPhoneEmergency::HandleConnectingL() ");
-
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveGlobalNote );
-
-    // Re-enable global notes
     TPhoneCmdParamBoolean globalNotifierParam;
     globalNotifierParam.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
         &globalNotifierParam );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetEikonNotifiersDisabled,
           &globalNotifierParam );
-
-    if(  TouchCallHandlingSupported() )
-        {
-        if ( !IsSimStateNotPresentWithSecurityModeEnabled() )
-            {
-            // Stop capturing keys
-            CaptureKeysDuringCallNotificationL( EFalse );
-            }
-        }
-    else if ( !iDeviceLockOn && SimState() == EPESimUsable )
-        {
-        // Stop capturing keys
-        CaptureKeysDuringCallNotificationL( EFalse );
-        }
-
-    // Keep Phone in the foreground
+    
     TPhoneCmdParamBoolean booleanParam;
     booleanParam.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL(
         EPhoneViewSetNeedToSendToBackgroundStatus, &booleanParam );
-
-    // Remove emergency connecting note
+    
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNote );
 
     TPhoneCmdParamCallHeaderData headerParam;
@@ -454,7 +405,6 @@
         &headerParam );
 
     SetToolbarButtonLoudspeakerEnabled();
-
     UpdateInCallCbaL();
     }
 
@@ -465,19 +415,14 @@
 void CPhoneEmergency::HandleConnectedL( TInt aCallId )
     {
     __LOGMETHODSTARTEND(EPhoneUIStates, "CPhoneEmergency::HandleConnectedL() ");
-
     BeginUiUpdateLC();
-
     TPhoneCmdParamCallHeaderData emergencyHeaderParam;
     emergencyHeaderParam.SetCallState( EPEStateConnected );
-    // Notify the view
     iViewCommandHandle->ExecuteCommandL(
         EPhoneViewUpdateBubble,
         aCallId,
         &emergencyHeaderParam );
-
     SetBackButtonActive(ETrue);
-
     EndUiUpdate();
     UpdateInCallCbaL();
     }
@@ -489,8 +434,7 @@
 void CPhoneEmergency::UpdateInCallCbaL()
     {
     __LOGMETHODSTARTEND(EPhoneUIStates, "CPhoneEmergency::UpdateInCallCbaL() ");
-    TInt resourceId = EPhoneCallHandlingEmergencyCBA;
-    iCbaManager->SetCbaL( resourceId );
+    iCbaManager->SetCbaL( EPhoneCallHandlingEmergencyCBA );
     }
 
 // --------------------------------------------------------------
@@ -502,52 +446,38 @@
     TKeyCode aCode )
     {
     __LOGMETHODSTARTEND(EPhoneUIStates, "CPhoneEmergency::HandleKeyMessageL()");
-
     switch ( aCode )
         {
-        // end-key
-        case EKeyNo:
-            // handle end key
+        case EKeyNo: // end-key
             DisconnectEmergencyCallL();
             break;
 
-        // send-key
-        case EKeyYes:
-             if( iOnScreenDialer && IsNumberEntryVisibleL() )
+        case EKeyYes: // send-key
+             if( IsNumberEntryVisibleL() )
                 {
                 TPhoneCmdParamInteger numberEntryCountParam;
-                    iViewCommandHandle->ExecuteCommandL( EPhoneViewGetNumberEntryCount,
+                    iViewCommandHandle->ExecuteCommandL( 
+                            EPhoneViewGetNumberEntryCount,
                             &numberEntryCountParam );
-                    TInt neLength( numberEntryCountParam.Integer() );
+                TInt neLength( numberEntryCountParam.Integer() );
                 if ( neLength )
                     {
-                    // Show not allowed note
                     SendGlobalErrorNoteL( EPhoneNoteTextNotAllowed, ETrue );
                     }
                 else
                     {
-                    // Logs to open
                     CallFromNumberEntryL();
                     }
                 }
             else
                 {
-                // Show not allowed note
                 SendGlobalErrorNoteL( EPhoneNoteTextNotAllowed, ETrue );
                 }
             break;
 
         default:
             {
-            if ( TouchCallHandlingSupported() )
-                {
-                CPhoneGsmInCall::HandleKeyMessageL( aMessage, aCode ); 
-                }
-            else if ( !iDeviceLockOn && SimState() == EPESimUsable )   
-                {
-                // do base operation
-                CPhoneGsmInCall::HandleKeyMessageL( aMessage, aCode );
-                }
+            CPhoneGsmInCall::HandleKeyMessageL( aMessage, aCode );
             break;
             }
         }
@@ -561,7 +491,6 @@
     {
     __LOGMETHODSTARTEND(EPhoneUIStates, "CPhoneEmergency::HandleCommandL()");
     TBool commandStatus = ETrue;
-
     switch( aCommand )
         {
         case EPhoneInCallCmdDtmfManualQuery:
@@ -578,7 +507,6 @@
              {
              if ( iStateMachine->PhoneEngineInfo()->CallState( KPEEmergencyCallId ) == EPEStateDialing )
                  {
-
                  UpdateSetupCbaL();
                  }
              else
@@ -597,7 +525,6 @@
             commandStatus = CPhoneGsmInCall::HandleCommandL( aCommand );
             break;
         }
-
     return commandStatus;
     }
 
@@ -609,9 +536,7 @@
     {
     __LOGMETHODSTARTEND(EPhoneUIStates,
         "CPhoneEmergency::DisconnectEmergencyCallL()");
-    // Release the call
-    iStateMachine->SetCallId(
-        KEmergencyCallId );
+    iStateMachine->SetCallId( KEmergencyCallId );
     iStateMachine->SendPhoneEngineMessage(
         CPEPhoneModelIF::EPEMessageRelease );
     }
@@ -665,24 +590,7 @@
     TEventCode aEventCode )
     {
     __LOGMETHODSTARTEND(EPhoneUIStates, "CPhoneEmergency::HandleKeyEventL( ) ");
-    
-    if ( TouchCallHandlingSupported() )
-        {
-        CPhoneState::HandleKeyEventL( aKeyEvent, aEventCode );
-        }
-    else
-        {
-         if ( iDeviceLockOn && CPhoneKeys::IsNumericKey( aKeyEvent, aEventCode ) )
-            {
-            // Send the key event to the phone engine
-            SendKeyEventL( aKeyEvent, aEventCode );
-            }
-        else
-            {
-            // Handle numeric keys when key events are received in idle state
-            CPhoneState::HandleKeyEventL( aKeyEvent, aEventCode );
-            }
-        }
+    CPhoneState::HandleKeyEventL( aKeyEvent, aEventCode );
     }
 
 // -----------------------------------------------------------
@@ -696,7 +604,6 @@
     __LOGMETHODSTARTEND(EPhoneUIStates, "CPhoneEmergency::SendKeyEventL( ) ");
     switch( aEventCode )
         {
-        // EEventKey
         case EEventKey:
             {
             // Convert key code to western.
@@ -712,12 +619,10 @@
             TLex code( buffer );
             // Save the key code
             iStateMachine->PhoneEngineInfo()->SetKeyCode( code.Peek() );
-            // Plays a DTMF tone if active call
             iStateMachine->SendPhoneEngineMessage(
                 CPEPhoneModelIF::EPEMessagePlayDTMF );
             }
             break;
-        // EEventKeyUp
         case EEventKeyUp:
             // Send a key up event for the last key code sent to
             // the phone engine
@@ -737,22 +642,14 @@
 void CPhoneEmergency::HandleAudioOutputChangedL()
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneEmergency::HandleAudioOutputChangedL( ) ");
-
-    // Audio Output
-    TPhoneCmdParamAudioOutput outputParam;
-
-    // Output
-    const TPEAudioOutput audioOutput =
-        iStateMachine->PhoneEngineInfo()->AudioOutput();
-
     UpdateSetupCbaL();
     SetTouchPaneButtons(0);
-    
-    // view update
-    outputParam.SetAudioOutput( audioOutput );
-    iViewCommandHandle->ExecuteCommandL( EPhoneViewActivateAudioPathUIChanges,
-        &outputParam );
-
+    TPhoneCmdParamAudioOutput outputParam;
+    outputParam.SetAudioOutput( 
+            iStateMachine->PhoneEngineInfo()->AudioOutput() );
+    iViewCommandHandle->ExecuteCommandL( 
+            EPhoneViewActivateAudioPathUIChanges,
+            &outputParam );
     }
 
 // -----------------------------------------------------------------------------
@@ -771,11 +668,9 @@
 void CPhoneEmergency::UpdateSetupCbaL()
     {
     __LOGMETHODSTARTEND(EPhoneUIStates, "CPhoneEmergency::UpdateSetupCbaL() ");
-   TInt resourceId = EPhoneCallHandlingEmergencyCBA;        
-   iCbaManager->SetCbaL( resourceId );
+   iCbaManager->SetCbaL( EPhoneCallHandlingEmergencyCBA );
     }
 
-
 // -----------------------------------------------------------------------------
 // CPhoneEmergency::HandleRemConCommandL
 // -----------------------------------------------------------------------------
@@ -784,10 +679,8 @@
     TRemConCoreApiOperationId aOperationId,
     TRemConCoreApiButtonAction aButtonAct )
     {
+    __LOGMETHODSTARTEND(EPhoneControl, "CPhoneEmergency::MrccatoCommand() ");
     TBool handled = EFalse;
-
-    __LOGMETHODSTARTEND(EPhoneControl, "CPhoneEmergency::MrccatoCommand() ");
-    
     switch ( aOperationId )
         {
          case ERemConCoreApiMute:
@@ -801,54 +694,4 @@
     return handled;
     }
 
-// --------------------------------------------------------------
-// CPhoneEmergency::TouchCallHandlingSupported
-// --------------------------------------------------------------
-//
-TBool CPhoneEmergency::TouchCallHandlingSupported () const
-    {
-    if ( FeatureManager::FeatureSupported ( KFeatureIdTouchCallHandling ) )
-        {
-        return ETrue;
-        }
-    else 
-        {
-        return EFalse;
-        }
-    }
-
-// --------------------------------------------------------------
-// CPhoneEmergency::UseEmergencyNoIhfCBA
-// --------------------------------------------------------------
-//
-TBool CPhoneEmergency::UseEmergencyNoIhfCBA( const TPEAudioOutput& aAudioOutput ) const
-    {
-    if ( !( TouchCallHandlingSupported() ) 
-        && ( ( aAudioOutput == EPEWiredAudioAccessory ) || ( IsSwivelClosed() ) ) )
-        {
-        return ETrue;
-        }
-    else 
-        {
-        return EFalse;
-        }
-    }
-
-// --------------------------------------------------------------
-// CPhoneEmergency::UseHandsetEmergencyCBA
-// --------------------------------------------------------------
-//
-TBool CPhoneEmergency::UseHandsetEmergencyCBA( const TPEAudioOutput& aAudioOutput ) const
-{
-    if ( !( TouchCallHandlingSupported() ) 
-        && ( ( aAudioOutput == EPELoudspeaker ) || ( aAudioOutput == EPEBTAudioAccessory ) ) )
-        {
-        return ETrue;
-        }
-    else 
-        {
-        return EFalse;
-        }
-}
-
 // End of File
--- a/phoneapp/phoneuistates/src/cphoneerrormessageshandler.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphoneerrormessageshandler.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -38,10 +38,8 @@
 
 // CONSTANTS
 const TUid KCRUidTelConfiguration = {0x102828B8};
-
 const TUint32 KTelShowCauseCode   = 0x00000002;
 
-
 // ================= MEMBER FUNCTIONS =======================
 
 // C++ default constructor can NOT contain any code, that
@@ -112,12 +110,10 @@
     {
     __LOGMETHODSTARTEND( EPhoneControl, 
         "CPhoneErrorMessagesHandler::SendGlobalInfoNoteL()" );
-
     __ASSERT_DEBUG( aResourceId, Panic( EPhoneCtrlParameterNotInitialized ) );
     if ( CPhonePubSubProxy::Instance()->Value( 
             KPSUidUikon, KUikGlobalNotesAllowed ) == 1 )
         {
-        // Re-enable global notes
         TPhoneCmdParamBoolean globalNotifierParam;
         globalNotifierParam.SetBoolean( EFalse );
         iViewCommandHandle->ExecuteCommandL( 
@@ -130,7 +126,7 @@
         globalNoteParam.SetType( type );
         globalNoteParam.SetNotificationDialog( aNotificationDialog );
 
-        TInt resourceID( KErrNotFound );
+        TInt resourceID( aResourceId );
         TInt causeCode( KErrNotFound );
         TBool notification( ETrue );
         if ( iCauseCodeVariation && GetCauseCode( causeCode, resourceID, notification ) )
@@ -147,11 +143,9 @@
                 CPhoneMainResourceResolver::Instance()->
                 ResolveResourceID( aResourceId ) );
             }
-        
         iViewCommandHandle->ExecuteCommandL( 
-            EPhoneViewShowGlobalNote, &globalNoteParam );    
+            EPhoneViewShowGlobalNote, &globalNoteParam );
         }
-  
     }
  
 // ---------------------------------------------------------
@@ -164,11 +158,9 @@
     __LOGMETHODSTARTEND( EPhoneControl, 
         "CPhoneErrorMessagesHandler::SendGlobalErrorNoteL()" );
     __ASSERT_DEBUG( aResourceId, Panic( EPhoneCtrlParameterNotInitialized ) );
-
     if ( CPhonePubSubProxy::Instance()->Value( 
             KPSUidUikon, KUikGlobalNotesAllowed ) == 1 )
         {
-        // Re-enable global notes
         TPhoneCmdParamBoolean globalNotifierParam;
         globalNotifierParam.SetBoolean( EFalse );
         iViewCommandHandle->ExecuteCommandL( 
@@ -181,7 +173,7 @@
         globalNoteParam.SetType( type );
         globalNoteParam.SetNotificationDialog( aNotificationDialog );
         
-        TInt resourceID( KErrNotFound );
+        TInt resourceID( aResourceId );
         TInt causeCode( KErrNotFound );
         TBool notification( ETrue );
         if ( iCauseCodeVariation && GetCauseCode( causeCode, resourceID, notification ) )
@@ -198,11 +190,9 @@
                 CPhoneMainResourceResolver::Instance()->
                 ResolveResourceID( aResourceId ) );
             }
-        
         iViewCommandHandle->ExecuteCommandL(  
             EPhoneViewShowGlobalNote, &globalNoteParam );
         }
-  
     }
 
 // ---------------------------------------------------------
@@ -214,12 +204,10 @@
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneErrorMessagesHandler::SendGlobalWarningNoteL( ) ");
     __ASSERT_DEBUG( aResourceId, Panic( EPhoneCtrlParameterNotInitialized ) );
-
     if ( CPhonePubSubProxy::Instance()->Value( 
             KPSUidUikon, KUikGlobalNotesAllowed ) == 1 || 
             SimState() == EPESimReadable )
-        {    
-        // Re-enable global notes
+        {
         TPhoneCmdParamBoolean globalNotifierParam;
         globalNotifierParam.SetBoolean( EFalse );
         iViewCommandHandle->ExecuteCommandL(  
@@ -232,7 +220,7 @@
         globalNoteParam.SetType( type );
         globalNoteParam.SetNotificationDialog( aNotificationDialog );
 
-        TInt resourceID( KErrNotFound );
+        TInt resourceID( aResourceId );
         TInt causeCode( KErrNotFound );
         TBool notification( ETrue );
         if ( iCauseCodeVariation && GetCauseCode( causeCode, resourceID, notification) )
@@ -249,7 +237,6 @@
                 CPhoneMainResourceResolver::Instance()->
                 ResolveResourceID( aResourceId ) );
             }
-        
         iViewCommandHandle->ExecuteCommandL( 
             EPhoneViewShowGlobalNote, &globalNoteParam );
         }
@@ -266,7 +253,7 @@
         Panic( EPhoneCtrlInvariant ) );
     return iStateMachine->PhoneEngineInfo()->SimState();
     }
-            
+
 // -----------------------------------------------------------
 // CPhoneErrorMessagesHandler::ShowErrorSpecificNoteL
 // -----------------------------------------------------------
@@ -274,12 +261,10 @@
 EXPORT_C void CPhoneErrorMessagesHandler::ShowErrorSpecificNoteL( const TPEErrorInfo& aErrorInfo )
     {
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneErrorMessagesHandler::ShowErrorSpecificNoteL()");
-    
     __PHONELOG1( EBasic, EPhoneControl,
             "PhoneUIControl: CPhoneErrorMessagesHandler::ShowErrorSpecificNoteL - aErrorInfo.iErrorCode =%d ",
             aErrorInfo.iErrorCode);
     iCallId = aErrorInfo.iCallId;
-    
     switch( aErrorInfo.iErrorCode )
         {
         case ECCPErrorRejected:
@@ -704,17 +689,15 @@
 TBool CPhoneErrorMessagesHandler::IsVoiceCall( const TInt aCallId ) const
     {
     __LOGMETHODSTARTEND( EPhoneControl, "CPhoneErrorMessagesHandler::IsVoiceCall() ");
-
     if( aCallId == KErrNotFound )
         {
        // Illegal call id, check call type command
         return ( iStateMachine->PhoneEngineInfo()->CallTypeCommand()
             == EPECallTypeCSVoice );  
         }
-     
     return ( iStateMachine->PhoneEngineInfo()
             ->CallType( aCallId )== EPECallTypeCSVoice );
-	}
+    }
     
 // -----------------------------------------------------------
 // CPhoneErrorMessagesHandler::GetCauseCode
@@ -724,18 +707,46 @@
         TInt &aCauseCode, TInt &aResourceId, TBool &aNotification ) const
     {
     __LOGMETHODSTARTEND( EPhoneControl, "CPhoneErrorMessagesHandler::CauseCode() ");
-
     aCauseCode = KErrNotFound;
     aNotification = ETrue;
     TInt callId = (KErrNotFound == iCallId) ? 
         iStateMachine->PhoneEngineInfo()->CallId() :
         iCallId;
-    
-    
     //get exit code error from call data
     TInt callError = iStateMachine->PhoneEngineInfo()->ProtocolError( 
             callId );
-
+    
+    if ( KErrNotFound == callError )
+        {
+        // These resources are used when there is not a protocol error
+        // available.
+        switch( aResourceId )
+            {
+            case EPhoneInvalidPhoneNumber:
+                {
+                callError = KErrGsmCCInvalidNumberFormat;
+                break;
+                }
+            case EPhoneNumberBusy:
+                {
+                callError = KErrGsmCCUserBusy;
+                break;
+                }
+            case EPhoneInformationNoNetworkSupportForVideoCallNote:
+            case EPhoneNoteVideoCallOnlyPossibleUnder3GCoverage:
+                {
+                // Video call special case when call is not
+                // initialized yet and the phone is out off the 3G network.
+                aResourceId = EPhoneNoteVideoCallOnlyPossibleUnder3GCoverage;
+                aNotification = EFalse;
+                aCauseCode = 50;
+                break;
+                }
+            default:
+                break;
+            }
+        }
+    
     switch( callError )
         {
         case KErrGsmCCUnassignedNumber:
@@ -1171,7 +1182,6 @@
         default:
             break;
         }  
-
     return (aCauseCode != KErrNotFound);
     }
 
--- a/phoneapp/phoneuistates/src/cphonegeneralgsmmessageshandler.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphonegeneralgsmmessageshandler.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -79,10 +79,9 @@
     MPhoneState& aActiveState )
     {
     CPhoneGeneralGsmMessagesHandler* self = new( ELeave ) 
-        CPhoneGeneralGsmMessagesHandler( aStateMachine, 
+            CPhoneGeneralGsmMessagesHandler( aStateMachine, 
                                          aViewCommandHandle,
                                          aActiveState );
-    
     return self;
     }
 
@@ -96,7 +95,6 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneGeneralGsmMessagesHandler::HandlePhoneEngineMessageL()" );
-
     switch ( aMessage )
         {
         case MEngineMonitor::EPEMessageCallBarred:
@@ -121,8 +119,8 @@
                 EBasic, 
                 EPhoneUIStates,
                 "CPhoneGeneralGsmMessagesHandler::EPEMessageIssuedSSRequest" );
+            }
             break;
-            }
             
         case MEngineMonitor::EPEMessageIssuingSSRequest:
             {
@@ -130,41 +128,19 @@
                 EBasic, 
                 EPhoneUIStates,
                 "CPhoneGeneralGsmMessagesHandler::EPEMessageIssuingSSRequest" );
-                    
             iStateMachine.SendPhoneEngineMessage( MPEPhoneModel::EPEMessageEndDTMF );
-             
-            // Remove number entry from screen
-            if ( !FeatureManager::FeatureSupported( KFeatureIdOnScreenDialer ) &&
-                 iViewCommandHandle.HandleCommandL( 
-                     EPhoneViewGetNumberEntryIsVisibleStatus ) == 
-                     EPhoneViewResponseSuccess )  
-                {            
-                iViewCommandHandle.ExecuteCommandL( 
-                    EPhoneViewRemoveNumberEntry );
-                }
-            else if ( FeatureManager::FeatureSupported( KFeatureIdOnScreenDialer ) )
-                {
-                iViewCommandHandle.ExecuteCommandL( 
-                    EPhoneViewClearNumberEntryContent );
-                }
-
-            // Enable global notes
+            iViewCommandHandle.ExecuteCommandL( 
+                EPhoneViewClearNumberEntryContent );
+            
             TPhoneCmdParamBoolean globalNotifierParam;
             globalNotifierParam.SetBoolean( EFalse );
             iViewCommandHandle.ExecuteCommandL( 
                 EPhoneViewSetGlobalNotifiersDisabled,
                 &globalNotifierParam );
-            
-            // Get active call count
-            TPhoneCmdParamInteger activeCallCount;
-            iViewCommandHandle.ExecuteCommandL(
-                EPhoneViewGetCountOfActiveCalls, &activeCallCount );
+            iViewCommandHandle.ExecuteCommandL( EPhoneViewRemoveQuery );
+            }
+            break;
             
-            // Remove phoneumber query
-            iViewCommandHandle.ExecuteCommandL( EPhoneViewRemoveQuery );
-            break;
-            }
-
         case MEngineMonitor::EPEMessageTempClirActivationUnsuccessful:
             SendGlobalErrorNoteL( EPhoneSSNotifCLIRSupprReject, ETrue );
             break;
@@ -195,7 +171,6 @@
     if ( CPhonePubSubProxy::Instance()->Value( 
             KPSUidUikon, KUikGlobalNotesAllowed ) == 1 )
         {
-        // Re-enable global notes
         TPhoneCmdParamBoolean globalNotifierParam;
         globalNotifierParam.SetBoolean( EFalse );
         iViewCommandHandle.ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
@@ -224,9 +199,7 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneGeneralGsmMessagesHandler::HandleIncomingCallForwardedL()" );
-    
     iActiveState.SetDivertIndication( ETrue );
-    
     }
 
 // ---------------------------------------------------------
@@ -239,11 +212,9 @@
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneGeneralGsmMessagesHandler::SendGlobalErrorNoteL()" );
     __ASSERT_DEBUG( aResourceId, Panic( EPhoneCtrlParameterNotInitialized ) );
-
     if ( CPhonePubSubProxy::Instance()->Value( 
             KPSUidUikon, KUikGlobalNotesAllowed ) == 1 )
         {
-        // Re-enable global notes
         TPhoneCmdParamBoolean globalNotifierParam;
         globalNotifierParam.SetBoolean( EFalse );
         iViewCommandHandle.ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
--- a/phoneapp/phoneuistates/src/cphonegsmincall.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphonegsmincall.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -253,9 +253,6 @@
     // Remove any phone dialogs if they are displayed
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
 
-    // Capture keys when there is an incoming call
-    CaptureKeysDuringCallNotificationL( ETrue );
-
     // Bring Phone app in the foreground
     TPhoneCmdParamInteger uidParam;
     uidParam.SetInteger( KUidPhoneApplication.iUid );
--- a/phoneapp/phoneuistates/src/cphoneidle.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphoneidle.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -105,13 +105,7 @@
             HandleAudioOutputChangedL();
             break;
 
-        case MEngineMonitor::EPEMessageIssuedSSRequest: // fall through 
-            // Note that after the sending of SS 
-            // strings the view stays in Dialer.
-            if ( !iOnScreenDialer )  
-                {
-                SetupIdleScreenInBackgroundL();
-                }
+        case MEngineMonitor::EPEMessageIssuedSSRequest: // fall through
         case MEngineMonitor::EPEMessageIssuingSSRequest: // fall through
         case MEngineMonitor::EPEMessageCallBarred: // fall through
         case MEngineMonitor::EPEMessageTempClirActivationUnsuccessful:
@@ -145,7 +139,6 @@
 EXPORT_C void CPhoneIdle::HandleErrorL( const TPEErrorInfo& aErrorInfo )
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneIdle::HandleErrorL() ");
-    
     CPhoneState::HandleErrorL( aErrorInfo );
     }
 
--- a/phoneapp/phoneuistates/src/cphoneincoming.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphoneincoming.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -110,9 +110,8 @@
                 {
                 HandleIncomingL( iWaitingCallId );
                 }
-            else
+            else // There is no another incoming call
                 {
-                // There is no another incoming call
                 CPhoneStateIncoming::HandlePhoneEngineMessageL( 
                     aMessage, aCallId );
                 }
@@ -160,7 +159,6 @@
                BeginUiUpdateLC();
                iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
                EndUiUpdate();
-
                iWaitingCallId = KErrNotFound;
                }
            else
@@ -185,7 +183,6 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneIncoming::HandleIncomingL()");
-    
     TPhoneCmdParamCallStateData callState;
     callState.SetCallState( EPEStateConnected );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewGetCallIdByState, &callState );
@@ -195,7 +192,6 @@
     
     TPhoneCmdParamBoolean dialerParam;
     dialerParam.SetBoolean( ETrue );
-    
     AllowShowingOfWaitingCallHeaderL( dialerParam );
       
     // Close fast swap window if it's displayed
@@ -217,9 +213,7 @@
         dialerParam.SetBoolean( EFalse );
         }
     
-    // Display incoming call
     DisplayIncomingCallL( aCallId, dialerParam );
-    
     SetTouchPaneButtons( EPhoneWaitingCallButtons );
 
     if( FeatureManager::FeatureSupported( KFeatureIdFfTouchUnlockStroke ) 
@@ -231,7 +225,6 @@
         }
     else
         {
-        // if keys have been locked, disable keylock without information note
         if ( IsKeyLockOn() )
             {
             iViewCommandHandle->ExecuteCommandL( EPhoneViewDisableKeyLockWithoutNote );
@@ -249,7 +242,6 @@
 
     if ( connectedCall > KErrNotFound )
         {
-        // Go to incoming state
         iCbaManager->UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
         iStateMachine->ChangeState( EPhoneStateWaitingInSingle );   
         }
@@ -265,17 +257,14 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneIncoming::DisplayIncomingCallL()");
-
     // Cannot delete active note, e.g. New call query, 
     // but show waiting note with or without caller name
-    if ( IsAnyQueryActiveL() || 
-        ( aCommandParam.Boolean() && iOnScreenDialer ) )
+    if ( IsAnyQueryActiveL() || aCommandParam.Boolean() )
         {
-        CallWaitingNoteL( aCallId );        
+        CallWaitingNoteL( aCallId );
         }
     else
         {
-        // Remove any phone dialogs if they are displayed
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
         }
     
@@ -287,13 +276,10 @@
         EPhoneViewSetNeedToSendToBackgroundStatus,
         &booleanParam );
 
-    // Bring Phone app in the foreground
     TPhoneCmdParamInteger uidParam;
     uidParam.SetInteger( KUidPhoneApplication.iUid );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewBringAppToForeground,
         &uidParam );
-
-    // Set Phone as the top application
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetTopApplication,
         &uidParam );
 
@@ -308,7 +294,6 @@
     TPhoneCmdParamBoolean& aCommandParam )
     {
     __LOGMETHODSTARTEND(EPhoneUIStates, "CPhoneIncoming::AllowShowingOfWaitingCallHeaderL() ");
-
     if ( aCommandParam.Boolean() && IsNumberEntryUsedL() )
         {
         SetNumberEntryVisibilityL(EFalse);
@@ -316,26 +301,16 @@
     }
 
 // -----------------------------------------------------------
-// CPhoneIncoming::HandleLongHashL
+// CPhoneIncoming::HandleErrorL
 // -----------------------------------------------------------
 //
- void CPhoneIncoming::HandleLongHashL()
-    {
-    __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneIncoming::HandleLongHashL( ) ");
-    }
-
- // -----------------------------------------------------------
- // CPhoneIncoming::HandleErrorL
- // -----------------------------------------------------------
- //
- EXPORT_C void CPhoneIncoming::HandleErrorL( 
+EXPORT_C void CPhoneIncoming::HandleErrorL( 
          const TPEErrorInfo& aErrorInfo )
      {
      __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneIncoming::HandleErrorL()");
-     
      if( aErrorInfo.iErrorCode == ECCPErrorCCUserAlertingNoAnswer )
          {
-         // Should not shown "No Answer" note
+         // Should not show "No Answer" note
          __PHONELOG1( EBasic, EPhoneUIStates,
         "PhoneUIControl: CPhoneIncoming::HandleErrorL - aErrorInfo.iErrorCode =%d ",
              aErrorInfo.iErrorCode);
--- a/phoneapp/phoneuistates/src/cphonesingleandalerting.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphonesingleandalerting.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -127,23 +127,19 @@
         "CPhoneSingleAndAlerting::HandleKeyMessageL()");
     switch ( aCode )
         {
-        // send-key
-        case EKeyYes:
+        case EKeyYes: // send-key
             if ( CPhoneState::IsNumberEntryUsedL() )
                 {
-                // send a manual control sequence
-                CPhoneState::CallFromNumberEntryL();    
+                CallFromNumberEntryL();
                 }
             else
                 {
-                // Show not allowed note
                 CPhoneState::SendGlobalErrorNoteL( 
                     EPhoneNoteTextNotAllowed, ETrue );
                 }
             break;
-
-        // end-key
-        case EKeyNo:
+            
+        case EKeyNo: // end-key
             if ( aMessage == EPhoneKeyLongPress )
                 {
                 iStateMachine->SendPhoneEngineMessage(
@@ -151,12 +147,11 @@
                 }
             else
                 {
-                DisconnectOutgoingCallL();               
+                DisconnectOutgoingCallL();
                 }
                 
-            if ( CPhoneState::IsNumberEntryUsedL() )
+            if ( IsNumberEntryUsedL() )
                 {
-                // Remove number entry from screen
                 iViewCommandHandle->ExecuteCommandL( 
                       EPhoneViewRemoveNumberEntry );
                 // Do state-specific operation when number entry is cleared
@@ -165,7 +160,6 @@
             break;
             
         default:
-            // do base operation
             CPhoneAlerting::HandleKeyMessageL( aMessage, aCode );
             break;
         }
@@ -179,47 +173,37 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneSingleAndAlerting::HandleConnectedL()");
-
-    // Find the alerting call
     TPhoneCmdParamCallStateData callStateData;
-    callStateData.SetCallState( EPEStateConnecting );                    
+    callStateData.SetCallState( EPEStateConnecting );
     iViewCommandHandle->HandleCommandL(
         EPhoneViewGetCallIdByState, &callStateData );
         
     if( callStateData.CallId() == aCallId )
-        {    
-        // Keep Phone in the foreground
+        {
         TPhoneCmdParamBoolean booleanParam;
         booleanParam.SetBoolean( EFalse );
         iViewCommandHandle->ExecuteCommandL( 
             EPhoneViewSetNeedToSendToBackgroundStatus, &booleanParam );
 
-        CPhoneState::BeginUiUpdateLC();
-            
-        // Show bubble
+        BeginUiUpdateLC();
+        
         TPhoneCmdParamCallHeaderData callHeaderParam;
         callHeaderParam.SetCallState( EPEStateConnected );
         iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, 
             &callHeaderParam );
 
-        CPhoneState::SetTouchPaneButtons( EPhoneTwoSinglesButtons );
-        CPhoneState::EndUiUpdate();
-              
-        // Set Hold flag to view
+        SetTouchPaneButtons( EPhoneTwoSinglesButtons );
+        EndUiUpdate();
+        
         TPhoneCmdParamBoolean holdFlag;
         holdFlag.SetBoolean( EFalse );
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );  
-        
+        iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
         
-        // Set Two singles softkeys
         UpdateCbaL( EPhoneCallHandlingNewCallSwapCBA );
-        
-        // Go to two singles state
         iStateMachine->ChangeState( EPhoneStateTwoSingles );
         }
     else
         {
-        // Show bubble
         TPhoneCmdParamCallHeaderData callHeaderParam;
         callHeaderParam.SetCallState( EPEStateConnected );
         iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, 
@@ -238,10 +222,7 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneSingleAndAlerting::HandleIdleL()");
-    
     BeginUiUpdateLC();
-    
-    // Remove call 
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
 
     if ( !TopAppIsDisplayedL() )
@@ -256,8 +237,7 @@
     
     if ( countParam.Integer() )
         {
-        SetTouchPaneButtons( EPhoneIncallButtons );    
-        // Set Hold flag to view
+        SetTouchPaneButtons( EPhoneIncallButtons );
         TPhoneCmdParamBoolean holdFlag;
         holdFlag.SetBoolean( ETrue );
         iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
@@ -266,13 +246,11 @@
         }
     else
         {
-        // Display call termination note, if necessary
         DisplayCallTerminationNoteL();
         SetTouchPaneButtons( EPhoneCallSetupButtons );
         UpdateCbaL( EPhoneCallHandlingInCallCBA );
         iStateMachine->ChangeState( EPhoneStateAlerting );
         }
-
     EndUiUpdate();
     }
 
@@ -285,6 +263,5 @@
     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneSingleAndAlerting::UpdateInCallCbaL() ");
     UpdateCbaL( EPhoneCallHandlingInCallCBA );
     }
-    
         
 // End of File
--- a/phoneapp/phoneuistates/src/cphonesingleandcallsetup.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphonesingleandcallsetup.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -216,11 +216,8 @@
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
         &globalNotifierParam );
 
-    // Stop capturing keys
-    CaptureKeysDuringCallNotificationL( EFalse );
-
     // Remove the number entry if it isn't DTMF dialer
-    if ( !iOnScreenDialer || !IsNumberEntryVisibleL() )
+    if ( !IsNumberEntryVisibleL() )
         {
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
         }
@@ -260,13 +257,9 @@
     callHeaderParam.SetCallState( EPEStateConnected );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, 
         &callHeaderParam );
-
-    // Capturing keys and number entry must be removed because some
-    // networks jump over connecting state directly to connected state.
-    CaptureKeysDuringCallNotificationL( EFalse );
     
     // Remove the number entry if it isn't DTMF dialer
-    if ( !iOnScreenDialer || !IsNumberEntryVisibleL() )
+    if ( !IsNumberEntryVisibleL() )
         {
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
         }
@@ -306,8 +299,6 @@
         
     if( activeCallCount.Integer() )
         {
-        CheckIfRestoreNEContentAfterDtmfDialer();
- 
         if ( IsNumberEntryUsedL() )
             {
             // Show the number entry if it exists
@@ -320,10 +311,7 @@
             }
             
         SetTouchPaneButtons( EPhoneIncallButtons );    
-        // UnCapture keys callsetup fails
-        CaptureKeysDuringCallNotificationL( EFalse );
-        // Setup call was terminated
-        iStateMachine->ChangeState( EPhoneStateSingle );            
+        iStateMachine->ChangeState( EPhoneStateSingle ); 
         }
     else
         {
@@ -335,7 +323,7 @@
         SetToolbarButtonLoudspeakerEnabled();
         // Update call setup CBAs
         UpdateCbaL( EPhoneCallHandlingCallSetupCBA );
-        iStateMachine->ChangeState( EPhoneStateCallSetup );            
+        iStateMachine->ChangeState( EPhoneStateCallSetup );
         }
         
     EndUiUpdate();
--- a/phoneapp/phoneuistates/src/cphonesingleandcallsetupandwaiting.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphonesingleandcallsetupandwaiting.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -118,11 +118,10 @@
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneSingleAndCallSetupAndWaiting::HandleKeyMessageL() ");
     switch ( aCode )
         {
-        // send-key
-        case EKeyYes:
+        case EKeyYes: // send-key
             if( IsNumberEntryVisibleL() )
                 {
-                CPhoneState::CallFromNumberEntryL();                            
+                CPhoneState::CallFromNumberEntryL();
                 }
             else
                 {
@@ -134,11 +133,9 @@
                 }
             break;
             
-        // end-key
-        case EKeyNo:
+        case EKeyNo: // end-key
             if ( aMessage == EPhoneKeyLongPress )
                 {
-                // Close all connections
                 iStateMachine->SendPhoneEngineMessage(
                     MPEPhoneModel::EPEMessageTerminateAllConnections );
                  
@@ -149,7 +146,6 @@
                 
                 if ( CPhoneState::IsNumberEntryUsedL() )
                     {
-                    // Remove number entry from screen
                     iViewCommandHandle->ExecuteCommandL( 
                         EPhoneViewRemoveNumberEntry );
                     // Do state-specific operation when number entry is cleared
@@ -157,22 +153,19 @@
                     }
                 if ( !TopAppIsDisplayedL() )
                     {
-                    // Bring app to foreground
                     TPhoneCmdParamInteger uidParam;
                     uidParam.SetInteger( KUidPhoneApplication.iUid );
                     iViewCommandHandle->ExecuteCommandL(
                         EPhoneViewBringAppToForeground, &uidParam );
                     }
                 }
-            else
+            else // handle short end key
                 {
-                // handle end key
-                DisconnectOutgoingCallL();              
+                DisconnectOutgoingCallL();
                 }
             break;
             
         default:
-            // do base operation
             CPhoneGsmInCall::HandleKeyMessageL( aMessage, aCode );
             break;
         }
@@ -201,19 +194,13 @@
         case MEngineMonitor::EPEMessageIdle:
             HandleIdleL( aCallId );
             break;
-                    
-        case MEngineMonitor::EPEMessageRemoteBusy:
-            // If call setup failed then stop capturing keys.
-            CaptureKeysDuringCallNotificationL( EFalse );
-            CPhoneGsmInCall::HandlePhoneEngineMessageL( aMessage, aCallId );
-            break;
+            
         default:
             CPhoneGsmInCall::HandlePhoneEngineMessageL( aMessage, aCallId );
             break;
         }
     }
 
-
 // -----------------------------------------------------------
 // CPhoneSingleAndCallSetupAndWaiting:HandleCommandL
 // -----------------------------------------------------------
@@ -222,30 +209,24 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneSingleAndCallSetupAndWaiting::HandleCommandL() ");
     TBool commandStatus = ETrue;
-
     switch( aCommand )
-        {               
-        // 'End active call' from menu
+        {
         case EPhoneInCallCmdEndThisActiveCall:
             DisconnectOutgoingCallL();
             break;
         
-        // 'End all calls' from menu
         case EPhoneInCallCmdEndAllCalls:
             iStateMachine->SendPhoneEngineMessage(
                 MPEPhoneModel::EPEMessageReleaseAll );
             break;
             
         case EPhoneDtmfDialerCancel:
-            {
-            }
-            break;    
+            break;
             
         default:
             commandStatus = CPhoneGsmInCall::HandleCommandL( aCommand );
             break;
         }
-
     return commandStatus;
     }
 
@@ -265,7 +246,6 @@
     TPhoneViewResponseId alertingResponse;
     TPhoneCmdParamCallStateData callStateData;
     
-    // Remove call 
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
     
     callStateData.SetCallState( EPEStateHeld );
@@ -289,13 +269,10 @@
         {
         // Some or all call id fetches were unsuccesfull.
         // Terminate all connections and return to idle state.
-        
         // TBD: Kill all bubbles here
-
         iStateMachine->SendPhoneEngineMessage(
             MPEPhoneModel::EPEMessageTerminateAllConnections );
-            
-        CPhoneGsmInCall::HandleIdleL( aCallId );            
+        CPhoneGsmInCall::HandleIdleL( aCallId );
         return;
         }
 
@@ -344,39 +321,28 @@
 void CPhoneSingleAndCallSetupAndWaiting::HandleConnectingL( TInt aCallId )
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneSingleAndCallSetupAndWaiting::HandleConnectingL() ");
-    
     // Remove the number entry if it isn't DTMF dialer
-    if ( !iOnScreenDialer || !IsNumberEntryVisibleL() )
+    if ( !IsNumberEntryVisibleL() )
         {
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
         }
-    
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveGlobalNote );
     
-    // Re-enable global notes
     TPhoneCmdParamBoolean globalNotifierParam;
     globalNotifierParam.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
         &globalNotifierParam );
 
     BeginUiUpdateLC();
-
-    // Update bubble content
     UpdateRemoteInfoDataL( aCallId );
-    
-    // Update bubble type
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateConnecting );
-    iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, 
-        &callHeaderParam );
-        
-    EndUiUpdate();                
-
-    // Set call waiting cba
+    iViewCommandHandle->ExecuteCommandL( 
+            EPhoneViewUpdateBubble, 
+            aCallId, 
+            &callHeaderParam );
+    EndUiUpdate();
     UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
-    
-    // Stop key Capture when the phone is connecting
-    CaptureKeysDuringCallNotificationL( EFalse );           
     }
 
 // -----------------------------------------------------------
@@ -387,38 +353,31 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneSingleAndCallSetupAndWaiting::HandleConnectedL()");
-    // Keep Phone in the foreground
     TPhoneCmdParamBoolean booleanParam;
     booleanParam.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( 
         EPhoneViewSetNeedToSendToBackgroundStatus, &booleanParam );
-
-    // Show bubble
+    
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateConnected );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, 
         &callHeaderParam );
     
-    // Capturing keys and number entry must be removed because some
-    // networks jump over connecting state directly to connected state.
-    CaptureKeysDuringCallNotificationL( EFalse );
-    
     // Remove the number entry if it isn't DTMF dialer
-    if ( !iOnScreenDialer || !IsNumberEntryVisibleL() )
+    if ( !IsNumberEntryVisibleL() )
         {
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
         }
     
-    if ( aCallId != iWaitingCallId )
+    if ( aCallId != iWaitingCallId ) // Alerting call is connected
         {
-        // Alerting call is connected
         StateChangeToTwoSinglesAndWaitingL( aCallId );
         }
     else   
         {
         // Waiting call is connected while alerting call is disconnecting
         // (manual control sequence '1' + Send). 
-        StateChangeToTwoSinglesL( aCallId );                      
+        StateChangeToTwoSinglesL( aCallId );
         }
     }
     
@@ -429,10 +388,8 @@
 void CPhoneSingleAndCallSetupAndWaiting::StateChangeToCallSetupAndWaitingL( TInt aCallId )
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneSingleAndCallSetupAndWaiting::StateChangeToCallSetupAndWaitingL() ");
-    // Remove call 
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
     
-    // Reset Hold flag to view
     TPhoneCmdParamBoolean holdFlag;
     holdFlag.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );       
@@ -443,9 +400,6 @@
     SetToolbarButtonLoudspeakerEnabled();
     
     EndUiUpdate();
-    
-    // Go to Call Setup And Waiting state
-    // No need to update cbas
     iStateMachine->ChangeState( EPhoneStateCallSetupAndWaiting );
     }
 
@@ -456,20 +410,14 @@
 void CPhoneSingleAndCallSetupAndWaiting::StateChangeToSingleAndWaitingL( TInt aCallId )
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneSingleAndCallSetupAndWaiting::StateChangeToSingleAndWaitingL() ");
-    // Remove call 
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
-    
-    CheckIfRestoreNEContentAfterDtmfDialer();
-      
     if ( CPhoneState::IsNumberEntryUsedL() )
         {
-        // Show number entry
         TPhoneCmdParamBoolean booleanParam;
         booleanParam.SetBoolean( ETrue );
         iViewCommandHandle->ExecuteCommandL( EPhoneViewSetNumberEntryVisible, &booleanParam );
         }
     
-        // Set Hold flag to view
     TPhoneCmdParamBoolean holdFlag;
     holdFlag.SetBoolean( ETrue );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
@@ -479,9 +427,8 @@
     SetTouchPaneButtons( EPhoneWaitingCallButtons );
     
     EndUiUpdate();
-    // Go to Single And Waiting state  
     UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );  
-    iStateMachine->ChangeState( EPhoneStateWaitingInSingle );        
+    iStateMachine->ChangeState( EPhoneStateWaitingInSingle );
     }
 
 // -----------------------------------------------------------
@@ -491,11 +438,10 @@
 void CPhoneSingleAndCallSetupAndWaiting::StateChangeToSingleAndAlertingL( TInt aCallId )
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneSingleAndCallSetupAndWaiting::StateChangeToSingleAndAlertingL() ");
-    // Remove call 
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
 
     // Remove the number entry if it isn't DTMF dialer
-    if ( !iOnScreenDialer || !IsNumberEntryVisibleL() )
+    if ( !IsNumberEntryVisibleL() )
         {
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
         }
@@ -506,11 +452,9 @@
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
 
     BeginUiUpdateLC();
-    
     SetTouchPaneButtons( EPhoneCallSetupButtons );
+    EndUiUpdate();
     
-    EndUiUpdate();
-    // Go to Single And Alerting state
     UpdateCbaL( EPhoneCallHandlingInCallCBA );
     iStateMachine->ChangeState( EPhoneStateAlertingInSingle );        
     }
@@ -523,16 +467,12 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneSingleAndCallSetupAndWaiting::StateChangeToTwoSinglesL()");
-
     BeginUiUpdateLC();
-    
     SetTouchPaneButtons( EPhoneTwoSinglesButtons );
-    
     EndUiUpdate();
 
-    // Go to two singles state 
     UpdateCbaL( EPhoneCallHandlingNewCallSwapCBA );
-    iStateMachine->ChangeState( EPhoneStateTwoSingles );                     
+    iStateMachine->ChangeState( EPhoneStateTwoSingles );
     }
 
 // -----------------------------------------------------------
@@ -543,14 +483,10 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneSingleAndCallSetupAndWaiting::StateChangeToTwoSinglesAndWaitingL()");
-
     BeginUiUpdateLC();
-    
     SetTouchPaneButtons( EPhoneWaitingCallButtons );
-    
     EndUiUpdate();
 
-    // Go to two singles state and waiting
     UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
     iStateMachine->ChangeState( EPhoneStateTwoSinglesAndWaiting );
     }
@@ -563,7 +499,6 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneSingleAndCallSetupAndWaiting::UpdateInCallCbaL() ");
-    
     if ( iAlerting )
         {
         UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
@@ -573,7 +508,5 @@
         UpdateCbaL( EPhoneCallHandlingCallSetupCBA );
         }
     }
-    
-                
 
 // End of File
--- a/phoneapp/phoneuistates/src/cphonesingleandwaiting.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphonesingleandwaiting.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -60,28 +60,22 @@
 
 // -----------------------------------------------------------
 // CPhoneSingleAndWaiting::~CPhoneSingleAndWaiting()
-// Destructor
-// (other items were commented in a header).
 // -----------------------------------------------------------
 //
 CPhoneSingleAndWaiting::~CPhoneSingleAndWaiting()
     {
-
     }
 
 // -----------------------------------------------------------
 // CPhoneSingleAndWaiting::ConstructL()
-// Constructor
-// (other items were commented in a header).
 // -----------------------------------------------------------
 //
 void CPhoneSingleAndWaiting::ConstructL()
     {
     CPhoneGsmInCall::ConstructL();
-
+    
     TPhoneCmdParamCallStateData callStateData;
     callStateData.SetCallState( EPEStateConnected );
-
     iViewCommandHandle->HandleCommandL(
         EPhoneViewGetCallIdByState, &callStateData );
 
@@ -92,15 +86,12 @@
             EPhoneViewGetCallIdByState, &callStateData );
         }
     iSingleCallId = callStateData.CallId();
-
     __PHONELOG1( EBasic, EPhoneUIStates,
         "CPhoneSingleAndWaiting::ConstructL()  (iSingleCallId=%d)", iSingleCallId);
     }
 
 // -----------------------------------------------------------
 // CPhoneSingleAndWaiting::NewL()
-// Constructor
-// (other items were commented in a header).
 // -----------------------------------------------------------
 //
 CPhoneSingleAndWaiting* CPhoneSingleAndWaiting::NewL(
@@ -165,7 +156,6 @@
     __LOGMETHODSTARTEND( EPhoneUIStates,
         "CPhoneSingleAndWaiting::HandleCommandL() ");
     TBool commandStatus = ETrue;
-
     switch( aCommand )
         {
         case EPhoneInCallCmdHold:
@@ -203,7 +193,6 @@
             break;
             }
 
-
         case EPhoneInCallCmdReject:
             iStateMachine->SetCallId( iSingleCallId );
             iStateMachine->SendPhoneEngineMessage(
@@ -218,7 +207,6 @@
             commandStatus = CPhoneGsmInCall::HandleCommandL( aCommand );
             break;
         }
-
     return commandStatus;
     }
 
@@ -234,22 +222,16 @@
         "CPhoneSingleAndWaiting::HandleKeyMessageL() ");
     switch ( aCode )
         {
-        // send-key
-        case EKeyYes:
+        case EKeyYes: // send-key
             {
             if( IsNumberEntryVisibleL() )
                 {
-                // Send a manual control sequence by providing number
-                // information with Dial command
                 CallFromNumberEntryL();
                 }
              else
                 {
                 // Close DTMF sending note if it exists
                 iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNote );
-
-                // Number entry is below incoming call bubble so
-                // answer the call
                 iStateMachine->SendPhoneEngineMessage(
                     CPEPhoneModelIF::EPEMessageAnswer );
                 }
@@ -257,7 +239,6 @@
             }
 
         default:
-            // do base operation
             CPhoneGsmInCall::HandleKeyMessageL( aMessage, aCode );
             break;
         }
@@ -292,7 +273,6 @@
         {
         TPhoneCmdParamCallStateData callStateData;
         callStateData.SetCallState( EPEStateDisconnecting );
-
         iViewCommandHandle->HandleCommandL(
             EPhoneViewGetCallIdByState, &callStateData );
 
@@ -309,7 +289,6 @@
                     EPhoneViewGetCallIdByState, &callStateData );
                 }
             }
-
         iSingleCallId = callStateData.CallId();
         }
 
@@ -320,12 +299,10 @@
         "CPhoneSingleAndWaiting::HandleIdleL aCallId(%d)",
         aCallId );
     
+    // Idle message came for active call
     if( iSingleCallId == aCallId )
         {
-        // Idle message came for active call
         BeginUiUpdateLC();
-
-        // Remove call
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
 
         // Get waiting callId
@@ -338,13 +315,12 @@
             "CPhoneSingleAndWaiting::HandleIdleL EPEStateRinging CallId(%d)",
             callStateData.CallId() );
         
+        // Display ringing bubble
         if ( callStateData.CallId() > KErrNotFound )
             {
-            // Display ringing bubble
             TPhoneCmdParamCallHeaderData callHeaderParam;
             callHeaderParam.SetCallState( EPEStateRinging );
-
-            // Set Hold flag to view
+            
             TPhoneCmdParamBoolean holdFlag;
             holdFlag.SetBoolean( EFalse );
             iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
@@ -355,38 +331,25 @@
                 callStateData.CallId(),
                 &callHeaderParam );
 
-            // Hide number entry if visible
             if ( IsNumberEntryVisibleL() )
                 {
                 SetNumberEntryVisibilityL(EFalse);
                 }
-
-            // Check if HW Keys or Call UI should be disabled
+            
             CheckDisableHWKeysAndCallUIL();
             
             SetTouchPaneButtons( EPhoneIncomingCallButtons );
-            
-            // Bring up callhandling view
             BringIncomingToForegroundL();
-
-            //Set incoming cba
             iCbaManager->UpdateIncomingCbaL( callStateData.CallId() );
-            
-            // Play ringtone
             SetRingingTonePlaybackL( callStateData.CallId() );
             }
-
         SetBackButtonActive(EFalse);
         EndUiUpdate();
-
         iStateMachine->ChangeState( EPhoneStateIncoming );
         }
     else
         {
-
         BeginUiUpdateLC();
-
-        // Remove call
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
 
         // Idle message came for waiting call
@@ -394,14 +357,11 @@
             {
             if ( NeedToSendToBackgroundL() )
                 {
-                // Return phone to the background if send to background is needed.
                 iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
-
                 UpdateCbaL( EPhoneCallHandlingInCallCBA );
                 }
             else
                 {
-                // Show the number entry if it exists
                 SetNumberEntryVisibilityL(ETrue);
                 }
             }
@@ -412,25 +372,18 @@
             // sendbackround if needed.
             if ( NeedToSendToBackgroundL() )
                 {
-                // Return phone to the background if send to background is needed.
                 iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
                 }
             }
         
-        // Enable call UI
         if( FeatureManager::FeatureSupported( KFeatureIdFfTouchUnlockStroke ) 
             && iStateMachine->PhoneStorage()->IsScreenLocked() )
             {
             EnableCallUIL();
             }
-
-        // Reset blocked keys list
         iStateMachine->PhoneStorage()->ResetBlockedKeysList();
-
         SetTouchPaneButtons( EPhoneIncallButtons );
         EndUiUpdate();
-
-        // CBA updates in above if-else conditions
         iStateMachine->ChangeState( EPhoneStateSingle );
         }
 
@@ -444,33 +397,23 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates,
         "CPhoneSingleAndWaiting::HandleHeldL() ");
-
-     // Display hold bubble
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateHeld );
-
     TBuf<KPhoneCallHeaderLabelMaxLength> labelText( KNullDesC );
     TInt callLabelId = CPhoneMainResourceResolver::Instance()->
             ResolveResourceID( EPhoneCallOnHold );
 
-    StringLoader::Load( labelText, callLabelId, CCoeEnv::Static() );        
+    StringLoader::Load( labelText, callLabelId, CCoeEnv::Static() ); 
     callHeaderParam.SetLabelText( labelText );
 
     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId,
         &callHeaderParam );
 
-    // Set Hold flag to view
     TPhoneCmdParamBoolean holdFlag;
     holdFlag.SetBoolean( ETrue );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
 
-    if ( !FeatureManager::FeatureSupported( KFeatureIdTouchCallHandling ) )
-        {
-        HandleHoldNoteL( aCallId, ETrue );
-        }
-
     UpdateInCallCbaL();
-    
     SetTouchPaneButtons( EPhoneWaitingCallButtons ); 
     }
 
@@ -482,10 +425,8 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates,
         "CPhoneSingleAndWaiting::HandleConnectedL() ");
-
     __PHONELOG1( EBasic, EPhoneUIStates,
         "CPhoneSingleAndWaiting::HandleConnectedL  (CallId=%d)", aCallId);
-
     if ( iSingleCallId == aCallId )
         {
         // Connected message came for the hold call, we still
@@ -507,26 +448,16 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates,
         "CPhoneSingleAndWaiting::HandleUnholdL() ");
-
-    // Show bubble
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateConnected );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId,
         &callHeaderParam );
 
-    // Set Hold flag to view
     TPhoneCmdParamBoolean holdFlag;
     holdFlag.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
 
-    if ( !FeatureManager::FeatureSupported( KFeatureIdTouchCallHandling ) )
-        {
-        HandleHoldNoteL( aCallId, EFalse );
-        }
-
-    // Set CBAs
     UpdateInCallCbaL();
-    
     SetTouchPaneButtons( EPhoneWaitingCallButtons ); 
     }
 
@@ -538,20 +469,17 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates,
         "CPhoneSingleAndWaiting::MakeStateTransitionToTwoSinglesL() ");
-    
-    // Reset blocked keys list
     iStateMachine->PhoneStorage()->ResetBlockedKeysList();
     
     BeginUiUpdateLC();
 
     UpdateRemoteInfoDataL ( aCallId );
-    // Show bubble
+    
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateConnected );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId,
         &callHeaderParam );
 
-    // Set Hold flag to view
     TPhoneCmdParamBoolean holdFlag;
     holdFlag.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
@@ -560,28 +488,21 @@
         {
         if ( NeedToSendToBackgroundL() )
             {
-            // Return phone to the background if send to background is needed.
             iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
-
             UpdateCbaL( EPhoneCallHandlingInCallCBA );
             }
         else
             {
-            // Show the number entry if it exists.
             SetNumberEntryVisibilityL(ETrue);
             }
         }
     else
         {
-        // Set Two singles softkeys
         UpdateCbaL( EPhoneCallHandlingNewCallSwapCBA );
         }
 
     SetTouchPaneButtons( EPhoneTwoSinglesButtons );
     EndUiUpdate();
-
-    // Go to two singles state
-    // CBA updates in above if-else conditions
     iStateMachine->ChangeState( EPhoneStateTwoSingles );
     }
 
@@ -593,13 +514,8 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates,
         "CPhoneSingleAndWaiting::HandleDiallingL() ");
-
     BeginUiUpdateLC();
-
-    // Hide number entry if it exists
     SetNumberEntryVisibilityL(EFalse);
-
-    // Display call setup
     DisplayCallSetupL( aCallId );
 
     // Set Hold flag to view ( DTMF menu label have to present )
@@ -608,13 +524,9 @@
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
 
     SetTouchPaneButtons( EPhoneCallSetupButtons );
-
     EndUiUpdate();
 
-    // Update call setup CBAs
     UpdateCbaL( EPhoneCallHandlingCallSetupCBA );
-
-    // Go to Single And Waiting And Call Setup state
     iStateMachine->ChangeState( EPhoneStateSingleAndCallSetupAndWaiting );
     }
 
@@ -626,20 +538,14 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates,
         "CPhoneSingleAndWaiting::DisplayCallSetupL() ");
-
-    // Remove dialogs if necessary
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
-
-    // Capture keys when the phone is dialling
-    CaptureKeysDuringCallNotificationL( ETrue );
-
+    
     // Force telephony to the foreground
     TPhoneCmdParamInteger uidParam;
     uidParam.SetInteger( KUidPhoneApplication.iUid );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewBringAppToForeground,
         &uidParam );
-
-    // Display call setup header
+    
     DisplayHeaderForOutgoingCallL( aCallId );
     }
 
@@ -654,14 +560,13 @@
     TPhoneCmdParamInteger callIdParam;
     iViewCommandHandle->ExecuteCommandL( 
             EPhoneViewGetExpandedBubbleCallId, &callIdParam );
-
     if ( callIdParam.Integer()==iSingleCallId )
         {
         CPhoneGsmInCall::UpdateInCallCbaL();
         } 
     else 
         {
-        iCbaManager->SetCbaL(  EPhoneCallHandlingCallWaitingCBA );
+        UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
         }
     }
 
@@ -672,7 +577,6 @@
 EXPORT_C void CPhoneSingleAndWaiting::HandleErrorL( const TPEErrorInfo& aErrorInfo )
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneSingleAndWaiting::HandleErrorL()");
-
     if( aErrorInfo.iErrorCode == ECCPErrorCCUserAlertingNoAnswer )
         {
         // Should not shown "Not Allowed" note, if active call.
@@ -698,8 +602,6 @@
         {
         __PHONELOG( EBasic, EPhoneControl, 
             "CPhoneSingleAndWaiting::HandleDisconnectingL EPhoneViewSetNeedToSendToBackgroundStatus" );
-        
-        // Keep phone on the foreground
         TPhoneCmdParamBoolean booleanParam;
         booleanParam.SetBoolean( EFalse );
         iViewCommandHandle->ExecuteCommandL(
@@ -715,7 +617,6 @@
 void CPhoneSingleAndWaiting::UpdateUiControlsL()
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneSingleAndWaiting::UpdateUiControlsL( ) ");
-    
     UpdateInCallCbaL();
     }
 
--- a/phoneapp/phoneuistates/src/cphonesinglecall.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphonesinglecall.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -65,8 +65,6 @@
 
 // -----------------------------------------------------------
 // CPhoneSingleCall::~CPhoneSingleCall()
-// Destructor
-// (other items were commented in a header).
 // -----------------------------------------------------------
 //
 EXPORT_C CPhoneSingleCall::~CPhoneSingleCall()
@@ -75,45 +73,41 @@
 
 // -----------------------------------------------------------
 // CPhoneSingleCall::ConstructL()
-// Constructor
-// (other items were commented in a header).
 // -----------------------------------------------------------
 //
 EXPORT_C void CPhoneSingleCall::ConstructL()
     {
     CPhoneGsmInCall::ConstructL();
     
-    // Re-enable global notes
     TPhoneCmdParamBoolean globalNotifierParam;
     globalNotifierParam.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
         &globalNotifierParam );
-
-    TPhoneCmdParamBoolean holdFlag;
-    holdFlag.SetBoolean( EFalse );
-    // Fetch active call's id from view    
+    
     TPhoneCmdParamCallStateData callStateData;
     callStateData.SetCallState( EPEStateConnected );
     iViewCommandHandle->HandleCommandL(
         EPhoneViewGetCallIdByState, &callStateData );
-            
+    
+    TPhoneCmdParamBoolean holdFlag;
+    holdFlag.SetBoolean( EFalse );
+    // No connected call, 
     if( callStateData.CallId() == KErrNotFound )
         {
         holdFlag.SetBoolean( ETrue );
-        // No connected call, find the hold call
-        callStateData.SetCallState( EPEStateHeld );                    
+        //find the held call.
+        callStateData.SetCallState( EPEStateHeld );
         iViewCommandHandle->HandleCommandL(
             EPhoneViewGetCallIdByState, &callStateData );
-            
+        // No held call.
         if ( callStateData.CallId() == KErrNotFound ) 
             {
-            // No hold call, find the disconnected call
-            callStateData.SetCallState( EPEStateDisconnecting );                    
+            // find the disconnected call.
+            callStateData.SetCallState( EPEStateDisconnecting );
             iViewCommandHandle->HandleCommandL(
             EPhoneViewGetCallIdByState, &callStateData );    
             }
         }
-
     iCallId = callStateData.CallId();
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
       
@@ -151,8 +145,7 @@
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneSingleCall::HandleKeyMessageL()");
     switch ( aCode )
         {
-        // send-key
-        case EKeyYes:
+        case EKeyYes: // send-key
             if( IsNumberEntryUsedL() )
                 {
                 if ( IsVideoCallActiveL() )
@@ -168,9 +161,7 @@
                                             
                     if (  iStateMachine->PhoneEngineInfo()->PhoneNumberIsServiceCode() ||
                           phoneNumber->Des().Length() < KPhoneValidPhoneNumberLength )
-                        {  
-                        // Send a manual control sequence by providing number 
-                        // information with dial command
+                        {
                         CallFromNumberEntryL();
                         }
                     else
@@ -182,18 +173,16 @@
                     }
                 else
                     {
-                    // Provide number information with dial command
                     CallFromNumberEntryL();
                     }
                 }
             else
                 {
-                ToggleHoldL();                    
+                ToggleHoldL();
                 }
             break;
             
         default:
-            // do base operation
             CPhoneGsmInCall::HandleKeyMessageL( aMessage, aCode );
             break;
         }
@@ -255,7 +244,6 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneSingleCall::HandleCommandL()");
     TBool commandStatus = ETrue;
-
     switch( aCommand )
         {
         /* Flow through */           
@@ -264,20 +252,10 @@
             ToggleHoldL();
             break;
             
-        case EPhoneInCallCmdNewCall:
-            break;
-            
-        case EPhoneInCallCmdNewCallCall:
-            break;
-
         case EPhoneInCallCmdSwitchToVideo:
             SwitchToVideoL();
             break;
             
-        case EPhoneInCallCmdSwitchToVoice:
-            SwitchToVoiceL();
-            break;
-            
         case EPhoneCmdYesSwitchToVideo:
             // Set current call id
             iStateMachine->SetCallId( iCallId );
@@ -286,30 +264,34 @@
             break;
         
         /* Flow through */ 
+        case EPhoneInCallCmdNewCall:
+        case EPhoneInCallCmdNewCallCall:
+        case EPhoneInCallCmdSwitchToVoice:
         case EPhoneCmdNoSwitchToVideo:
         case EPhoneCmdNoSwitchToVoice:
             break;        
                 
         case EPhoneCmdYesSwitchToVoice:
-            // Set current call id
+            // Set current call id.
             iStateMachine->SetCallId( iCallId );
-                        if( IsVideoCall( iCallId ) )
-                        {
-                           // Video call can be released only after we get response to VT Shutdown Command
-                           CPhoneMediatorFactory::Instance()->Sender()->IssueCommand( KMediatorVideoTelephonyDomain,
-                                                                                      KCatPhoneToVideotelCommands, 
-                                                                                      EVtCmdReleaseDataport,
-                                                                                      TVersion( KPhoneToVideotelCmdVersionMajor,
-                                                                                            KPhoneToVideotelCmdVersionMinor, 
-                                                                                            KPhoneToVideotelCmdVersionBuild ),
-                                                                                      KNullDesC8,
-                                                                                      CPhoneSwitchToVideoOrVoiceCommand::NewL( *iStateMachine ) );
-                        }
-                        else
-                        {
-                          iStateMachine->SendPhoneEngineMessage(
-                              CPEPhoneModelIF::EPEMessageSwitchToVideoOrVoice );                    
-                        }
+            if( IsVideoCall( iCallId ) )
+                {
+                // Video call can be released only after we get response to VT Shutdown Command
+                CPhoneMediatorFactory::Instance()->Sender()->IssueCommand( 
+                       KMediatorVideoTelephonyDomain,
+                       KCatPhoneToVideotelCommands, 
+                       EVtCmdReleaseDataport,
+                       TVersion( KPhoneToVideotelCmdVersionMajor,
+                             KPhoneToVideotelCmdVersionMinor, 
+                             KPhoneToVideotelCmdVersionBuild ),
+                       KNullDesC8,
+                       CPhoneSwitchToVideoOrVoiceCommand::NewL( *iStateMachine ) );
+                }
+            else
+                {
+                iStateMachine->SendPhoneEngineMessage(
+                  CPEPhoneModelIF::EPEMessageSwitchToVideoOrVoice );
+                }
             break;
 
         case EPhoneVideoSharing:
@@ -318,16 +300,16 @@
             {
             TPhoneCmdParamInteger command;
             command.SetInteger( aCommand );
-            iViewCommandHandle->ExecuteCommandL( EPhoneViewSendAiwCommand, 
-                &command );                
+            iViewCommandHandle->ExecuteCommandL( 
+                    EPhoneViewSendAiwCommand, 
+                    &command );
             }
-            break;           
+            break;
             
         default:
             commandStatus = CPhoneGsmInCall::HandleCommandL( aCommand );
             break;
         }
-
     return commandStatus;
     }
 
@@ -339,16 +321,6 @@
     {
     return iCallId;
     }
-
-// -----------------------------------------------------------
-// CPhoneSingleCall::OpenVideoCallMenuBarL
-// -----------------------------------------------------------
-//
-void CPhoneSingleCall::OpenVideoCallMenuBarL()
-    {
-    __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneSingleCall::OpenVideoCallMenuBarL()");
-                   
-    }
     
 // -----------------------------------------------------------
 // CPhoneSingleCall::HandleHeldL
@@ -374,16 +346,10 @@
  
     iViewCommandHandle->ExecuteCommandL( 
         EPhoneViewUpdateBubble, aCallId, &callHeaderParam );
-       
-    // Set Hold flag to view
+    
     TPhoneCmdParamBoolean holdFlag;
     holdFlag.SetBoolean( ETrue );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
-        
-    if ( !FeatureManager::FeatureSupported( KFeatureIdTouchCallHandling ) )
-        { 
-        HandleHoldNoteL( aCallId , ETrue );
-        }
 
     UpdateInCallCbaL();
     SetTouchPaneButtons( EPhoneIncallHeldButtons );
@@ -397,8 +363,6 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneSingleCall::HandleConnectedL()");
-    
-    // Show bubble
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateConnected );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, 
@@ -410,14 +374,8 @@
         
     if ( holdFlag.Boolean() )
         {
-        // Update hold flag to view
         holdFlag.SetBoolean( EFalse );
         iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
-        
-        if ( !FeatureManager::FeatureSupported( KFeatureIdTouchCallHandling ) )
-            {
-            HandleHoldNoteL( aCallId , EFalse );
-            }
         }
 
     UpdateInCallCbaL();  
@@ -462,19 +420,14 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneSingleCall::HandleIncomingL()");
-    
     BeginUiUpdateLC();
     
-    TPhoneCmdParamBoolean dialerParam;
-    dialerParam.SetBoolean( ETrue );
-    
     // Get allow waiting call header param value.
-    AllowShowingOfWaitingCallHeaderL( dialerParam );    
-
-    // Display incoming call
+    TPhoneCmdParamBoolean dialerParam;
+    dialerParam.SetBoolean( ETrue );
+    AllowShowingOfWaitingCallHeaderL( dialerParam );
+    
     DisplayIncomingCallL( aCallId, dialerParam );
-    
-    // Show incoming call buttons
     SetTouchPaneButtons( EPhoneWaitingCallButtons ); 
     
     if( FeatureManager::FeatureSupported( KFeatureIdFfTouchUnlockStroke ) 
@@ -509,7 +462,6 @@
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveQuery );
         }
     
-    // Go to incoming state
     UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
     iStateMachine->ChangeState( EPhoneStateWaitingInSingle );        
     }
@@ -524,17 +476,14 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneSingleCall::DisplayIncomingCallL()");
-
     // Cannot delete active note, e.g. New call query, 
     // but show waiting note with or without caller name
-    if ( IsAnyQueryActiveL() || 
-        ( !aCommandParam.Boolean() && iOnScreenDialer ) )
+    if ( IsAnyQueryActiveL() || !aCommandParam.Boolean() )
         {
-        CallWaitingNoteL( aCallId );        
+        CallWaitingNoteL( aCallId );
         }
     else
         {
-        // Remove any phone dialogs if they are displayed
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
         }
     
@@ -546,16 +495,12 @@
         EPhoneViewSetNeedToSendToBackgroundStatus,
         &booleanParam );
 
-    // Bring Phone app in the foreground
     TPhoneCmdParamInteger uidParam;
     uidParam.SetInteger( KUidPhoneApplication.iUid );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewBringAppToForeground,
         &uidParam );
-
-    // Set Phone as the top application
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetTopApplication,
         &uidParam );
-
     DisplayHeaderForCallComingInL( aCallId, ETrue ); //waiting call 
     }    
 // -----------------------------------------------------------
@@ -567,18 +512,11 @@
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneSingleCall::HandleDiallingL()");
     BeginUiUpdateLC();
-    
     SetNumberEntryVisibilityL(EFalse);
-
-    // Display call setup 
     DisplayCallSetupL( aCallId );
+    SetTouchPaneButtons( EPhoneCallSetupAndSingleButtons );
+    EndUiUpdate();
     
-    // Show incoming call buttons
-    SetTouchPaneButtons( EPhoneCallSetupAndSingleButtons );
-
-    EndUiUpdate();
-
-    // Go to call setup state
     UpdateCbaL( EPhoneCallHandlingCallSetupCBA );
     iStateMachine->ChangeState( EPhoneStateCallSetupInSingle );
     }
@@ -591,20 +529,12 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneSingleCall::DisplayCallSetupL()");
-
-    // Remove dialogs if necessary
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
-
-    // Capture keys when the phone is dialling
-    CaptureKeysDuringCallNotificationL( ETrue );
-
-    // Force telephony to the foreground
     TPhoneCmdParamInteger uidParam;
     uidParam.SetInteger( KUidPhoneApplication.iUid );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewBringAppToForeground,
         &uidParam );
 
-    // Display call setup header
     DisplayHeaderForOutgoingCallL( aCallId );
     }
 
@@ -616,14 +546,12 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneSingleCall::SwitchToVideoL()");
-
     if( FeatureManager::FeatureSupported( KFeatureIdCsVideoTelephony ) )
         {        
         TInt networkMode( CPhonePubSubProxy::Instance()->Value( KPSUidNetworkInfo,
             KNWTelephonyNetworkMode ) );
         TBool restoreOngoing( CPhonePubSubProxy::Instance()->Value( KUidSystemCategory,
             conn::KUidBackupRestoreKey ));
-        
         if ( networkMode != ENWNetworkModeWcdma )
             {
             // We aren't in 3G, video call not possible
@@ -631,28 +559,15 @@
             }
         else if ( restoreOngoing & ( conn::EBURRestoreFull | conn::EBURRestorePartial ))
             {
-            // MC restore ongoing
             SendGlobalInfoNoteL( EPhoneInformationVideoCallNotAllowedDuringRestoreNote );
             }
         else
             {
             iSwitchToVideoQuery = ETrue;
-            //ShowQueryL( EPhoneSwitchToVideoQuery );
             iSwitchToVideoQuery = EFalse;
             }    
         }
     }
 
-// -----------------------------------------------------------
-// CPhoneSingleCall::SwitchToVoiceL
-// -----------------------------------------------------------
-//
-void CPhoneSingleCall::SwitchToVoiceL()
-    {
-    __LOGMETHODSTARTEND( EPhoneUIStates, 
-        "CPhoneSingleCall::SwitchToVoiceL()");
-    
-    //ShowQueryL( EPhoneSwitchToVoiceQuery );
-    }
 
 // End of File
--- a/phoneapp/phoneuistates/src/cphonetwosingles.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphonetwosingles.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -73,7 +73,6 @@
     {
     CPhoneGsmInCall::ConstructL();
     
-    // Re-enable global notes
     TPhoneCmdParamBoolean globalNotifierParam;
     globalNotifierParam.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
@@ -148,8 +147,6 @@
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneTwoSingles::HandleIdleL()");
     BeginUiUpdateLC();
-
-    // Remove call 
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
 
     TPhoneCmdParamInteger activeCallCount;
@@ -162,14 +159,11 @@
             {   
             if ( IsNumberEntryUsedL() )
                 {
-                // Show the number entry if it exists
                 SetNumberEntryVisibilityL(ETrue);
                 }
             else
                 {
-                
-                // Set incall CBAs
-                UpdateCbaL( EPhoneCallHandlingInCallCBA );                
+                UpdateCbaL( EPhoneCallHandlingInCallCBA );
                 }
             
             TPhoneCmdParamCallStateData callStateData;  
@@ -178,9 +172,7 @@
                 EPhoneViewGetCallIdByState, &callStateData );
             TInt holdCallId = callStateData.CallId();
             
-            // Set Hold flag to view
             TPhoneCmdParamBoolean holdFlag;
-            
             if ( holdCallId < 0 )
                 {
                 holdFlag.SetBoolean( EFalse );
@@ -188,15 +180,9 @@
             else
                 {
                 holdFlag.SetBoolean( ETrue );
-                // Close the dtmf query if it exists
-                CloseDtmfQueryL(); 
                 }
-
             iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
-
-            SetTouchPaneButtons( EPhoneIncallButtons );         
-            // Go to single state
-            // CBA updates in above if-else conditions
+            SetTouchPaneButtons( EPhoneIncallButtons );
             iStateMachine->ChangeState( EPhoneStateSingle ); 
             }
             
@@ -218,10 +204,8 @@
         "CPhoneTwoSingles::HandleKeyMessageL()");
     switch ( aCode )
         {
-        // send-key
-        case EKeyYes:
+        case EKeyYes: // send-key
             {
-            // Check is number entry open
             if ( !IsNumberEntryVisibleL() )
                 {
                 iStateMachine->SendPhoneEngineMessage(
@@ -248,7 +232,7 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneTwoSingles::HandleConnectedL()");
-    // Show bubble
+    
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateConnected );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, 
@@ -265,7 +249,6 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneTwoSingles::HandleHeldL()");
-    // Display hold bubble
     TPhoneCmdParamCallHeaderData callHeaderParam;
     callHeaderParam.SetCallState( EPEStateHeld );
     
@@ -304,7 +287,6 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneTwoSingles::HandleConnectedConferenceL()");
-    // Update call state
     TPhoneCmdParamCallHeaderData callHeaderParam;
 
     TInt callLabelId;
@@ -335,7 +317,6 @@
     iViewCommandHandle->ExecuteCommandL( EPhoneViewCreateConference, aCallId,
         &callHeaderParam );
 
-    // Set Hold flag to view
     TPhoneCmdParamBoolean holdFlag;
     holdFlag.SetBoolean( EFalse );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
@@ -344,9 +325,6 @@
     EndUiUpdate();
     
     UpdateCbaL( EPhoneCallHandlingInCallCBA );
-    
-    // Go to conference state
-    // No need for CBA update
     iStateMachine->ChangeState( EPhoneStateConference );
     }
 
@@ -358,32 +336,23 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneTwoSingles::HandleIncomingL()");
-    
     BeginUiUpdateLC();
     
+    // Get allow waiting call header param value.
     TPhoneCmdParamBoolean dialerParam;
     dialerParam.SetBoolean( ETrue );
-    
-    // Get allow waiting call header param value.
     AllowShowingOfWaitingCallHeaderL( dialerParam );
     
     // Close fast swap window if it's displayed
     CEikonEnv::Static()->DismissTaskList();
-
-    // Display incoming call
+    
     DisplayIncomingCallL( aCallId, dialerParam );
-    
-    // Check if HW Keys or Call UI should be disabled
     CheckDisableHWKeysAndCallUIL();
-    
     SetTouchPaneButtons( EPhoneWaitingCallButtons );
-
     EndUiUpdate();
-
-    // Go to incoming state
+    
     iCbaManager->SetCbaL( EPhoneCallHandlingIncomingRejectCBA );
-    
-    iStateMachine->ChangeState( EPhoneStateTwoSinglesAndWaiting );        
+    iStateMachine->ChangeState( EPhoneStateTwoSinglesAndWaiting );
     }
 
 // -----------------------------------------------------------
@@ -396,17 +365,14 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates,
          "CPhoneTwoSingles::DisplayIncomingCallL()"); 
-
     // Cannot delete active note, e.g. New call query, 
     // but show waiting note with or without caller name
-    if ( IsAnyQueryActiveL() ||  
-        ( !aCommandParam.Boolean() && iOnScreenDialer ) )
+    if ( IsAnyQueryActiveL() || !aCommandParam.Boolean() )
         {
-        CallWaitingNoteL( aCallId );        
+        CallWaitingNoteL( aCallId );
         }
     else
         {
-        // Remove any phone dialogs if they are displayed
         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemovePhoneDialogs );
         }
 
@@ -418,13 +384,10 @@
         EPhoneViewSetNeedToSendToBackgroundStatus,
         &booleanParam );
 
-    // Bring Phone app in the foreground
     TPhoneCmdParamInteger uidParam;
     uidParam.SetInteger( KUidPhoneApplication.iUid );
     iViewCommandHandle->ExecuteCommandL( EPhoneViewBringAppToForeground,
         &uidParam );
-
-    // Set Phone as the top application
     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetTopApplication,
         &uidParam );
 
--- a/phoneapp/phoneuistates/src/cphonetwosinglesandwaiting.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphonetwosinglesandwaiting.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -71,7 +71,6 @@
     {
     CPhoneTwoSingles::ConstructL();
     
-    // Fetch ringing call's id from view
     TPhoneCmdParamCallStateData callStateData;
     callStateData.SetCallState( EPEStateRinging );
     iViewCommandHandle->HandleCommandL(
@@ -112,12 +111,11 @@
         "CPhoneTwoSinglesAndWaiting::HandleKeyMessageL()");
     switch ( aCode )
         {
-        // send-key
-        case EKeyYes:
+        case EKeyYes: // send-key
             {
             if( IsNumberEntryVisibleL() )
                 {
-                CallFromNumberEntryL();                         
+                CallFromNumberEntryL();
                 }
             else
                 {
@@ -206,10 +204,7 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneTwoSinglesAndWaiting::HandleIdleL()");
- 
-    BeginUiUpdateLC();    
-    
-    // Remove call 
+    BeginUiUpdateLC();
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
     
     if ( iRingingCallId == aCallId )
@@ -220,7 +215,6 @@
         {
         StateTransitionToSingleAndWaitingL();
         }
-
     EndUiUpdate();
     }
 
@@ -234,17 +228,13 @@
         "CPhoneTwoSinglesAndWaiting::StateTransitionToTwoSinglesL()");
     if ( IsNumberEntryUsedL() )
         {
-        // Go to background if necessary
         if ( NeedToSendToBackgroundL() )
             {
-            // Return phone to the background if send to background is needed.
             iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
-
             UpdateCbaL( EPhoneCallHandlingInCallCBA );
             }
         else
             {
-            // Show the number entry if it exists.
             SetNumberEntryVisibilityL(ETrue);
             }
         } 
@@ -257,7 +247,6 @@
         // sendbackround if needed.
         if ( NeedToSendToBackgroundL() )
             {
-            // Return phone to the background if send to background is needed.
             iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
             }
         }
@@ -268,12 +257,8 @@
         EnableCallUIL();
         }
     
-    // Reset blocked keys list
     iStateMachine->PhoneStorage()->ResetBlockedKeysList();
-
-    // Go to two singles state
     SetTouchPaneButtons( EPhoneTwoSinglesButtons );
-    // CBA updates in above if-else conditions
     iStateMachine->ChangeState( EPhoneStateTwoSingles );                     
     }
 
@@ -284,8 +269,7 @@
 void CPhoneTwoSinglesAndWaiting::StateTransitionToSingleAndWaitingL()
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
-        "CPhoneTwoSinglesAndWaiting::StateTransitionToSingleAndWaitingL()");
-    // Go to two singles state
+        "CPhoneTwoSinglesAndWaiting::StateTransitionToSingleAndWaitingL()")
     TPhoneCmdParamInteger callIdParam;
     iViewCommandHandle->ExecuteCommandL( 
             EPhoneViewGetExpandedBubbleCallId, &callIdParam );
@@ -296,15 +280,11 @@
         } 
     else 
         {
-        iCbaManager->SetCbaL( EPhoneCallHandlingCallWaitingCBA );
+        UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
         }
-    
-    // Check if HW Keys or Call UI should be disabled
     CheckDisableHWKeysAndCallUIL();
-    
     SetTouchPaneButtons( EPhoneWaitingCallButtons );
-  
-    iStateMachine->ChangeState( EPhoneStateWaitingInSingle );                             
+    iStateMachine->ChangeState( EPhoneStateWaitingInSingle );
     }
 
 // -----------------------------------------------------------
@@ -316,37 +296,30 @@
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneTwoSinglesAndWaiting::HandleConnectedConferenceL()");
     BeginUiUpdateLC();
-    // Update call state
-    TPhoneCmdParamCallHeaderData callHeaderParam;
-
+    
     TInt callLabelId;
     TBuf<KPhoneCallHeaderLabelMaxLength> conferenceText( KNullDesC );
     callLabelId = CPhoneMainResourceResolver::Instance()->
             ResolveResourceID( EPhoneCLIConferenceCall );
-
     StringLoader::Load( 
         conferenceText, 
         callLabelId, 
-        CCoeEnv::Static() );        
-    callHeaderParam.SetCLIText( conferenceText, TPhoneCmdParamCallHeaderData::ERight );
+        CCoeEnv::Static() );
     
+    TPhoneCmdParamCallHeaderData callHeaderParam;
+    callHeaderParam.SetCLIText( conferenceText, TPhoneCmdParamCallHeaderData::ERight );
     callHeaderParam.SetCallState(EPEStateConnectedConference);
-    
     callHeaderParam.SetCiphering(
         iStateMachine->PhoneEngineInfo()->IsSecureCall( aCallId ) );
-        
     callHeaderParam.SetCipheringIndicatorAllowed(
         iStateMachine->PhoneEngineInfo()->SecureSpecified() );
-
     // Service identifier must be given so that service specific settings
     // can be taken into account at phoneuiview.
     callHeaderParam.SetServiceId( 
         iStateMachine->PhoneEngineInfo()->ServiceId( aCallId ) );
-        
-    // Check if HW Keys or Call UI should be disabled
+    
     CheckDisableHWKeysAndCallUIL();
 
-
     iViewCommandHandle->ExecuteCommandL( EPhoneViewCreateConference, aCallId,
         &callHeaderParam );
         
@@ -356,15 +329,10 @@
     iViewCommandHandle->ExecuteCommandL( 
         EPhoneViewSetNeedToSendToBackgroundStatus, &booleanParam );
     
-    // Set touch controls
     SetTouchPaneButtons( EPhoneWaitingCallButtons );
-    
     UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
-    
     EndUiUpdate();
-    // Go to Conference And Waiting state
-    // No need for CBA update
-    iStateMachine->ChangeState( EPhoneStateConferenceAndWaiting );                
+    iStateMachine->ChangeState( EPhoneStateConferenceAndWaiting );
     }
     
 // -----------------------------------------------------------
@@ -375,11 +343,9 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneTwoSinglesAndWaiting::UpdateInCallCbaL()");
-
     TPhoneCmdParamInteger callIdParam;
     iViewCommandHandle->ExecuteCommandL( 
             EPhoneViewGetExpandedBubbleCallId, &callIdParam );
-    
     if ( callIdParam.Integer()!=iRingingCallId )
         {
         CPhoneGsmInCall::UpdateInCallCbaL();
@@ -410,7 +376,6 @@
     __LOGMETHODSTARTEND( EPhoneUIStates,
         "CPhoneTwoSinglesAndWaiting::HandleCommandL() ");
     TBool commandStatus = ETrue;
-
     switch( aCommand )
         {
         case EPhoneCmdUpdateUiControls:
--- a/phoneapp/phoneuiutils/group/phoneuiutils.mmp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiutils/group/phoneuiutils.mmp	Fri Sep 17 08:29:19 2010 +0300
@@ -20,10 +20,7 @@
 #include <platform_paths.hrh>
 
 // Capability assignment.
-// <-- QT PHONE START --> 
 CAPABILITY CAP_GENERAL_DLL
-//CAPABILITY CAP_APPLICATION MultiMediaDD PowerMgmt NetworkControl DRM DiskAdmin
-// <-- QT PHONE END --> 
 
 // Assign Vendor ID.
 VENDORID VID_DEFAULT
@@ -69,20 +66,11 @@
 SOURCE          tphonecmdparaminteger.cpp
 SOURCE          tphonecmdparamkeycapture.cpp
 SOURCE          tphonecmdparamkeyevent.cpp
-// <-- QT PHONE START --> 
-//SOURCE          tphonecmdparammessageeditor.cpp
-// <-- QT PHONE END --> 
 SOURCE          tphonecmdparamnote.cpp
 SOURCE          tphonecmdparamprogressnote.cpp
 SOURCE          tphonecmdparamquery.cpp
-// <-- QT PHONE START -->
-//SOURCE          tphonecmdparamreconnectquery.cpp
-// <-- QT PHONE END -->
 SOURCE          tphonecmdparamringtone.cpp
 SOURCE          tphonecmdparamsfidata.cpp
-// <-- QT PHONE START -->
-//SOURCE          tphonecmdparamsingleitemfetch.cpp
-// <-- QT PHONE END -->
 SOURCE          tphonecmdparamstring.cpp
 SOURCE          tphonecommandparam.cpp
 SOURCE          tphonecmdparamtranseffect.cpp
@@ -108,9 +96,6 @@
 LIBRARY         ptiengine.lib
 LIBRARY         avkon.lib
 LIBRARY         ws32.lib
-// <-- QT PHONE START -->
-//LIBRARY         cauiengine.lib
-// <-- QT PHONE END -->
 
 #ifndef __WINS__
 LIBRARY         efsrv.lib
--- a/phoneapp/phoneuiutils/inc/cphoneresourceresolverbase.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiutils/inc/cphoneresourceresolverbase.h	Fri Sep 17 08:29:19 2010 +0300
@@ -86,12 +86,8 @@
         // Feature variation
         enum TVariationFlags
             {
-            //Flag to indicate whether on screen dialer is supported.
-            EOnscreenDialer = 1,
-            //Flag to indicate whether on touch call handling is supported.
-            ETouchCallHandling = 2,
             //Flag to indicate whether videocallmenu is supported.
-            EVideoCallMenu = 4
+            EVideoCallMenu = 1
             };
         TInt iVariationFlags;
         
--- a/phoneapp/phoneuiutils/inc/phoneconstants.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiutils/inc/phoneconstants.h	Fri Sep 17 08:29:19 2010 +0300
@@ -419,10 +419,6 @@
 // Name of Call UI dll which is loaded polymorficly in CPhoneQueryController
 _LIT( KPhoneCaUiLoadedLib, "cauiengine.dll" );
 
-// CPhoneTextQuery constants
-const TInt KLeftCbaId = 0;
-const TInt KRightCbaId = 2;
-
 // Used in CPhoneNoteTimer
 // Time in milliseconds that the timer runs.
 const TInt KDtmfWaitNoteTimeoutValue = 100000;
@@ -444,12 +440,6 @@
 // Time cap between information note and reconnect query
 const TInt KInformationNoteDisplayTime = 3000000;
 
-// HELP
-_LIT( KINCAL_HLP_CALL_HANDLING, "INCAL_HLP_CALL_HANDLING" );
-_LIT( KINCAL_HLP_VIDEOCALL, "INCAL_HLP_VIDEO_CALL" );
-_LIT( KDATA_DIALER_HLP_MAIN, "DIALER_HLP_MAIN" );
-_LIT( KDATA_DIALER_HLP_SEND_DTMF, "DIALER_HLP_SEND_DTMF" );
-
 // Maximum length of file path for caller image theme
 const TInt KMaxFilePathLength = 256;
 
--- a/phoneapp/phoneuiutils/inc/phoneresourceids.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiutils/inc/phoneresourceids.h	Fri Sep 17 08:29:19 2010 +0300
@@ -25,81 +25,52 @@
     R_PHONEUI_IDLE_MENUBAR,
     R_PHONEUIDIALER_NUMBERACQ_MENUBAR,
     R_PHONEUI_NUMBERACQ_VIDEOCALL_MENUBAR,
-    R_PHONEUI_NUMBERACQ_MENUBAR,
     R_PHONEUI_NUMBERACQ_OK_VIDEOCALL_MENUBAR,
     R_PHONEUI_NUMBERACQ_OK_MENUBAR,
     R_PHONEUI_CALLHANDLING_MENUBAR,
-    R_PHONEUI_CALLHANDLING_EMERGENCY_MENUBAR,//10
-    R_PHONEUIDIALER_NUMBERACQ_EMERGENCY_MENUBAR,
-    R_PHONEUI_CALLHANDLING_EMERGENCY_MENUBAR_WITH_NUMBERENTRY,
+    R_PHONEUI_CALLHANDLING_EMERGENCY_MENUBAR,
+    R_PHONEUIDIALER_NUMBERACQ_EMERGENCY_MENUBAR, // 10
     R_PHONEUI_INCOMINGCALL_MENUBAR,
     R_PHONEUI_INCOMINGVIDEOCALL_MENUBAR,
-    R_PHONEUI_INCOMINGCALL_MENUBAR_WITH_NUMBERENTRY,
-    R_PHONEUI_INCOMINGVIDEOCALL_MENUBAR_WITH_NUMBERENTRY,
     R_PHONEUI_ALERTINGCALL_MENUBAR,
-    R_PHONEUI_ALERTINGCALL_MENUBAR_WITH_NUMBERENTRY,
     R_PHONEUI_ACTIVEANDHELD_MENUBAR,
-    R_PHONEUI_ACTIVEANDHELD_MENUBAR_WITH_NUMBERENTRY,//20
     R_PHONEUI_CALLWAITING_MENUBAR, 
-    R_PHONEUI_CALLWAITING_MENUBAR_WITH_NUMBERENTRY,
     R_PHONEUI_CALLACTIVEHELDANDWAITING_MENUBAR,
     R_PHONEUI_CALLACTIVEHELDANDWAITING_MENUBAR_VARIED,
-    R_PHONEUI_CALLACTIVEHELDANDWAITING_MENUBAR_WITH_NUMBERENTRY,
     R_PHONEUI_ALERTINGANDHELDCALL_MENUBAR,
-    R_PHONEUI_ALERTINGANDHELDCALL_MENUBAR_WITH_NUMBERENTRY,
     R_PHONEUI_ALERTINGANDCONFHELDCALL_MENUBAR,
-    R_PHONEUI_ALERTINGANDCONFHELDCALL_MENUBAR_WITH_NUMBERENTRY,
-    R_PHONEUI_ALERTINGWAITINGANDHELDCONFCALL_MENUBAR,//30
-    R_PHONEUI_ALERTINGWAITINGANDHELDCONFCALL_MENUBAR_WITH_NUMBERENTRY,
+    R_PHONEUI_ALERTINGWAITINGANDHELDCONFCALL_MENUBAR, // 20
     R_PHONEUI_ALERTINGHELDANDWAITINGCALL_MENUBAR,
-    R_PHONEUI_ALERTINGHELDANDWAITINGCALL_MENUBAR_WITH_NUMBERENTRY,
     R_PHONEUI_ALERTINGANDWAITINGCALL_MENUBAR,
     R_PHONEUI_TOUCH_CONFCALL_MENUBAR,
-    R_PHONEUI_CONFCALL_MENUBAR,
-    R_PHONEUI_CONFCALL_MENUBAR_WITH_NUMBERENTRY,
     R_PHONEUI_TOUCH_CONFANDCALLWAITING_MENUBAR,
-    R_PHONEUI_CONFANDCALLWAITING_MENUBAR,
-    R_PHONEUI_CONFANDCALLWAITING_MENUBAR_WITH_NUMBERENTRY,//40
     R_PHONEUI_TOUCH_ACTIVECONFANDHELD_MENUBAR,
-    R_PHONEUI_ACTIVECONFANDHELD_MENUBAR,
-    R_PHONEUI_ACTIVECONFANDHELD_MENUBAR_WITH_NUMBERENTRY,
     R_PHONEUI_TOUCH_ACTIVEANDHELDCONF_MENUBAR,
-    R_PHONEUI_ACTIVEANDHELDCONF_MENUBAR,
-    R_PHONEUI_ACTIVEANDHELDCONF_MENUBAR_WITH_NUMBERENTRY,
     R_PHONEUI_TOUCH_CONFCALLACTIVEHELDANDWAITING_MENUBAR,
-    R_PHONEUI_CONFCALLACTIVEHELDANDWAITING_MENUBAR,
-    R_PHONEUI_CONFCALLACTIVEHELDANDWAITING_MENUBAR_WITH_NUMBERENTRY,
-    R_PHONEUI_TOUCH_CALLACTIVEHELDCONFANDWAITING_MENUBAR,//50
-    R_PHONEUI_CALLACTIVEHELDCONFANDWAITING_MENUBAR,
-    R_PHONEUI_CALLACTIVEHELDCONFANDWAITING_MENUBAR_WITH_NUMBERENTRY,
+    R_PHONEUI_TOUCH_CALLACTIVEHELDCONFANDWAITING_MENUBAR,
     R_PHONEUI_PARTICIPANT_LIST_MENUBAR,
-    R_PHONEUI_PARTICIPANT_LIST_DROP_MENUBAR,
+    R_PHONEUI_PARTICIPANT_LIST_DROP_MENUBAR, // 30
     R_PHONE_INCALL_VIDEOCALL_MENUBAR_WITH_NUMBERENTRY,
-    R_PHONE_INCALL_MENUBAR_WITH_NUMBERENTRY,
     R_PHONEUIDIALER_DTMFVIEW_MENUBAR,
     R_PHONEUI_EMPTY_CBA,
     R_PHONEUI_EMERGENCY_IDLE_CBA,
-    R_PHONEUI_SEND_DTMF_NO_CBA,//60
+    R_PHONEUI_SEND_DTMF_NO_CBA,
     R_PHONEUI_SEND_DTMF_EMPTY_EDIT_BOX_CBA,
     R_PHONEUI_SEND_DTMF_NORMAL_EDIT_BOX_CBA,
     R_PHONEUI_DTMF_SPEED_DIAL_NORMAL_EDIT_BOX_CBA,
     R_PHONEUI_NUMBERACQ_VIDEOCALL_CBA,
-    R_PHONEUI_DIALER_CBA,
-    R_PHONEUI_NUMBERACQ_CBA,
+    R_PHONEUI_DIALER_CBA, // 40
     R_PHONEUI_INCALL_NUMBERACQ_CBA,
     R_PHONEUI_SETTINGSUI_CBA,
     R_PHONEUI_CALLHANDLING_CALLSETUP_CBA,
-    R_PHONEUI_CALLHANDLING_CALLSETUP_TOIHF_CBA,//70
+    R_PHONEUI_CALLHANDLING_CALLSETUP_TOIHF_CBA,
     R_PHONEUI_CALLHANDLING_CALLSETUP_TOHANDSET_CBA,
     R_PHONEUI_INCALL_DIALER_CBA,
-    R_PHONEUI_CALLHANDLING_INCALL_CBA,
-    R_PHONEUI_CALLHANDLING_INCALL_NOIHF_CBA,
+    R_PHONEUI_CALLHANDLING_INCALL_UNHOLD_CBA,
     R_PHONEUI_CALLHANDLING_INCALL_UNMUTE_CBA,
-    R_PHONEUI_CALLHANDLING_INCALL_UNHOLD_CBA,
     R_PHONEUI_CALLHANDLING_INCALL_HANDSET_CBA,
-    R_PHONEUI_CALLHANDLING_INCALL_BTAA_CBA,
+    R_PHONEUI_CALLHANDLING_INCALL_BTAA_CBA, // 50
     R_PHONEUI_CALLHANDLING_EMERGENCY_CBA,
-    R_PHONEUI_CALLHANDLING_EMERGENCY_HANDSET_CBA,//80
     R_PHONEUI_CALLHANDLING_EMERGENCY_NOIHF_CBA,
     R_PHONEUI_CALLHANDLING_EMERGENCY_NO_OPTIONS_CBA,
     R_PHONEUI_CALLHANDLING_EMERGENCY_NO_OPTIONS_HANDSET_CBA,
@@ -108,9 +79,8 @@
     R_PHONEUI_CALLHANDLING_INCOMINGCALL_REJECT_CBA,
     R_PHONEUI_CALLHANDLING_INCOMINGCALL_SOFT_REJECT_CBA,
     R_PHONEUI_CALLHANDLING_CALLWAITING_CBA,
-    R_PHONEUI_CALLHANDLING_NEW_CALL_FIND_CBA,
-    R_PHONEUI_CALLHANDLING_NEW_CALL_CALL_CBA,//90
-    R_PHONEUI_CALLHANDLING_NEW_CALL_SWAP_CBA,
+    R_PHONEUI_CALLHANDLING_NEW_CALL_FIND_CBA, // 60
+    R_PHONEUI_CALLHANDLING_NEW_CALL_CALL_CBA,
     R_PHONEUI_NEW_CALL_FETCH_CBA,
     R_PHONEUI_EXIT_EMERGENCY_MODE_CBA,
     R_PHONEUI_EMERGENCY_MODE_NOTE_CBA,
@@ -119,7 +89,7 @@
     R_PHONEUI_CALLHANDLING_INCALL_ENDACTIVE_CBA,
     R_NOTETEXT_NUMBER_NOT_IN_USE,
     R_NOTETEXT_NUMBER_BARRED,
-    R_NOTETEXT_NUMBER_NOT_IN_CUG,//100
+    R_NOTETEXT_NUMBER_NOT_IN_CUG, // 70
     R_NOTETEXT_NO_ANSWER,
     R_NOTETEXT_NETWORK_BUSY,
     R_NOTETEXT_OUT_OF_RANGE,
@@ -129,7 +99,7 @@
     R_NOTETEXT_INVALID_PHONENUMBER,
     R_NOTETEXT_EMPTY_SIM_LOCATION,
     R_PHONEUI_CONFERENCE_CALL,
-    R_PHONE_ERROR_EMERGENCY_CALLS_ONLY,
+    R_PHONE_ERROR_EMERGENCY_CALLS_ONLY, // 80
     R_PHONE_ERROR_CALL_NOT_ALLOWED,
     R_PHONE_ERROR_CALL_NOT_ALLOWED_FDN,
     R_PHONE_ERROR_CHECK_NETWORK_SERVICES,
@@ -139,16 +109,11 @@
     R_PHONEUI_NO_VIDEO_NETWORK,
     R_PHONEUI_VIDEO_CALL_INCOMING,
     R_PHONEUI_VIDEO_CALL_INCOMING_SHORT,
-    R_PHONEUI_VIDEOCALL_2G_MENUBAR_WITH_NUMBERENTRY,
     R_PHONEUI_VIDEOCALL_MENUBAR,
-    R_PHONEUI_VIDEOCALL_MENUBAR_WITH_NUMBERENTRY,
     R_PHONEUI_VIDEOCALL_WAITING_MENUBAR,
     R_PHONEUI_WAITING_LOCK_MENUBAR,
     R_PHONEUI_TWOSINGLES_WAITING_LOCK_MENUBAR,
-    R_PHONEUI_VIDEOCALL_WAITING_MENUBAR_WITH_NUMBERENTRY,
     R_PHONEUI_SOFTKEYS_EMPTY_BACK,
-//    R_AVKON_IHF_ACTIVATED_CONFIRMATION_NOTE_TEXT,
-//    R_AVKON_IHF_DEACTIVATED_CONFIRMATION_NOTE_TEXT,
     R_NOTE_TEXT_CONF_AUDIOS_HANDSET,
     R_NOTE_TEXT_CONF_AUDIOS_BT_ACCESSORY,
     R_PHONEUI_STRING_LIST,
@@ -156,7 +121,6 @@
     R_NOTETEXT_ACTIVE_DIVERTS,
     R_PHONEUI_DEFAULT_SKEY_LIST,
     R_PHONEUI_EMERGENCY_CALL_HEADER,
-    R_PHONE_EMERGENCY_NETWORK_CONNECT_WAIT_NOTE,
     R_PHONE_EMERGENCY_NETWORK_CONNECT_WAIT_NOTE_TOIHF,
     R_PHONE_EMERGENCY_NETWORK_CONNECT_WAIT_NOTE_TOHANDSET,
     R_PHONE_EMERGENCY_MODE_INFORMATION_NOTE,
@@ -167,7 +131,6 @@
     R_PHONEUI_OUT_GOING_CALL_SHORT,
     R_PHONEUI_OUT_GOING_VIDEO_CALL,
     R_PHONEUI_OUT_GOING_VIDEO_CALL_SHORT,
-//    R_QTN_TIME_DURAT_LONG_WITH_ZERO,
     R_PHONEUI_SEND_DTMF_QUERY,
     R_PHONEUI_SENDING_DTMF_WAIT_NOTE,
     R_PHONEUI_SENDING_DTMF_WAIT_NOTE_TEXT,
@@ -249,7 +212,6 @@
     R_PHONEUI_VIDEO_CALL_NOT_POSSIBLE,
     R_PHONEUI_CONTINUE_IN_HANDSET,
     R_PHONEUI_CONTINUE_IN_LOUDSPEAKER,
-//    R_AVKON_SOFTKEYS_YES_NO,
     R_PHONEUI_ALERTINGVIDEOCALL_MENUBAR,
     R_PHONEUI_CALLCOMING_SOFTKEYS_WHEN_SLIDER,
     R_PHONEUI_CALLCOMING_SOFTKEYS_WHEN_SILENT_SLIDER,
@@ -297,11 +259,8 @@
     R_NOTE_TEXT_CUG_IN_USE,
     R_PHONEUI_MTCAL_DIVERTED_CALL,
     R_PHONEUI_CALLHANDLING_CALLSETUP_EMPTY_DTMFDIALER_CBA,
-    R_PHONEUI_CALLHANDLING_CALLSETUP_EMPTY_ENDOUTGOING_CBA,
     R_PHONEUI_CALLHANDLING_CALLSETUP_TOIHF_DTMFDIALER_CBA,
-    R_PHONEUI_CALLHANDLING_CALLSETUP_TOIHF_ENDOUTGOING_CBA,
     R_PHONEUI_CALLHANDLING_CALLSETUP_TOHANDSET_DTMFDIALER_CBA,
-    R_PHONEUI_CALLHANDLING_CALLSETUP_TOHANDSET_ENDOUTGOING_CBA,
     R_PHONE_EMERGENCY_NETWORK_CONNECT_WAIT_NOTE_EMPTY_DIALER,
     R_PHONEUI_NUMBERACQ_OPTIONS_CALL_MENU,
     R_PHONEUI_NUMBERACQ_OPTIONS_MENU,
--- a/phoneapp/phoneuiutils/inc/tphonecmdparammessageeditor.h	Thu Sep 02 20:26:16 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,68 +0,0 @@
-/*
-* Copyright (c) 2005 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: 
-*     A paramater class for opening message editors.
-*
-*/
-
-
-#ifndef __TPHONECMDPARAMMESSAGEEDITOR_H
-#define __TPHONECMDPARAMMESSAGEEDITOR_H
-
-//  INCLUDES
-#include <CMessageData.h>
-#include "tphonecommandparam.h"
-
-// DATA TYPES
-
-// CLASS DECLARATION
-
-/**
-*  A paramater class for identifying view.
-*/
-class TPhoneCmdParamMessageEditor : public TPhoneUICommandParam
-    {   
-    public:
-
-        /**
-        * Constructor.
-        */
-        IMPORT_C TPhoneCmdParamMessageEditor();
-
-        /**
-        * Sets the message editor data.
-        * @param    aMessageData
-        * @return   None.
-        */
-        IMPORT_C void SetMessageData( CMessageData* aMessageData );
-
-        /**
-        * Returns message editor data.
-        * @param    None.
-        * @return   iMessageData.
-        */
-        IMPORT_C CMessageData* MessageData() const;
-
-  private:    
-  
-        /**
-        * Message Editor Data.
-        */
-        CMessageData* iMessageData;
-
-    };
-
-#endif // __TPHONECMDPARAMMESSAGEEDITOR_H   
-            
-// End of File
--- a/phoneapp/phoneuiutils/inc/tphonecmdparamreconnectquery.h	Thu Sep 02 20:26:16 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,117 +0,0 @@
-/*
-* Copyright (c) 2006 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: 
-*   See class description.
-*
-*/
-
-
-#ifndef TPHONECMDPARAMRECONNECTQUERY_H
-#define TPHONECMDPARAMRECONNECTQUERY_H
-
-//  INCLUDES
-
-#include <w32std.h>
-#include "tphonecommandparam.h"
-
-// DATA TYPES
-
-// FORWARD DECLARATION
-class MCaUiReconnectQueryObserver;
-class CPhCntMatcher;
-
-// CLASS DECLARATION
-
-/**
-*  A parameter class for displaying reconnect query.
-*/
-class TPhoneCmdParamReconnectQuery : public TPhoneUICommandParam
-    {   
-    public:  
-        
-        /**
-        * C++ default constructor.
-        */
-        IMPORT_C TPhoneCmdParamReconnectQuery( MCaUiReconnectQueryObserver& aObserver );
-
-    public: 
-        
-        /**
-        * Sets the contact matcher.
-        * @param aPhCntMatcher pointer to contact matcher. NULL value allowed.
-        */
-        IMPORT_C void SetContactMatcher( CPhCntMatcher* aPhCntMatcher );
-
-        /**
-        * Sets the phone number.
-        * @param aPhoneNumber phone number
-        */
-        IMPORT_C void SetPhoneNumber( const TPtrC aPhoneNumber );
-
-        /**
-        * Sets the video call option to visible or hidden in reconnect query.
-        * @param aIncludeVideoCallOption EFalse to hide video call option, ETrue to show it.
-        */
-        IMPORT_C void SetIncludeVideoOption( const TBool aIncludeVideoCallOption );
-       
-        /**
-        * Returns the reference to reconnect query observer.
-        * @return Returns the reference to reconnect query observer.
-        */
-        IMPORT_C MCaUiReconnectQueryObserver& ReconnectQueryObserver() const;
-
-        /**
-        * Returns the contact matcher pointer.
-        * @return Returns the contact matcher pointer.
-        */
-        IMPORT_C CPhCntMatcher* ContactMatcher() const;
-
-        /**
-        * Returns the phone number.
-        * @return Returns the phone number.
-        */
-        IMPORT_C const TPtrC PhoneNumber() const;
-
-        /**
-        * Returns the video call option value.
-        * @return Returns the video call option value.
-        */
-        IMPORT_C TBool IncludeVideoCallOption() const;
-
-    private:    
-        
-        /**
-        * Reconnect query observer
-        */
-        MCaUiReconnectQueryObserver& iObserver;
-
-        /**
-        * Contact matcher
-        */
-        CPhCntMatcher* iContactMatcher;
-
-        /**
-        * Phone number
-        */
-        TPtrC iPhoneNumber;
-
-        /**
-        * Include video call option
-        */
-        TBool iIncludeVideoCallOption;
-    };
-
-#endif // TPHONECMDPARAMRECONNECTQUERY_H
-            
-// End of File
--- a/phoneapp/phoneuiutils/inc/tphonecmdparamsingleitemfetch.h	Thu Sep 02 20:26:16 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,118 +0,0 @@
-/*
-* Copyright (c) 2005 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:  Parameter class for single item fetch dialogs.
-*
-*/
-
-#ifndef __TPHONECMDPARAMSINGLEITEMFETCH_H
-#define __TPHONECMDPARAMSINGLEITEMFETCH_H
-
-//  INCLUDES
-#include <cphcntsingleitemfetch.h>
-#include "tphonecommandparam.h"
-
-// DATA TYPES
-
-// CLASS DECLARATION
-
-/**
-*  A concrete parameter class for query dialogs.
-*  
-*/
-class TPhoneCmdParamSingleItemFetch : public TPhoneUICommandParam
-    {
-    public:  
-        
-        /**
-        * C++ default constructor.
-        */
-        IMPORT_C TPhoneCmdParamSingleItemFetch();
-
-    public: 
-        
-        /**
-        * Sets the single item fetch type
-        * @param fetch type
-        */
-        IMPORT_C void SetType( CPhCntSingleItemFetch::TFetchType aType );
-        
-        /**
-        * Returns the single item fetch type
-        * @return fetch type
-        */
-        IMPORT_C CPhCntSingleItemFetch::TFetchType Type();
-
-        /**
-        * Sets the title pane resource id for the single item fetch dialog
-        * @param title pane resource id
-        */
-        IMPORT_C void SetTitlePaneResourceId( TInt aTitlePaneResourceId );
-
-        /**
-        * Returns the title pane resource id for the single item fetch dialog
-        * @return title pane resource id
-        */
-        IMPORT_C TInt TitlePaneResourceId() const;
-        
-        /**
-        * Sets the CBA resource id for the single item fetch dialog
-        * @param CBA resource id
-        */
-        IMPORT_C void SetCbaResourceId( TInt aCbaResourceId );
-
-        /**
-        * Returns the CBA resource id for the single item fetch dialog
-        * @return CBA resource id
-        */
-        IMPORT_C TInt CbaResourceId() const;
-        
-        /**
-        * Sets the string pointer used in the single item fetch dialog
-        * @param pointer to string used in dialog
-        */
-        IMPORT_C void SetString( TDes* aString );
-        
-        /**
-        * Returns the string pointer used for the single item fetch dialog
-        * @return string pointer used in dialog
-        */
-        IMPORT_C TDes* String() const;
-        
-    private:   
-
-        /**
-        * Fetch type
-        */
-        CPhCntSingleItemFetch::TFetchType iType;
-
-        /**
-        * The title pane resource id
-        */
-        TInt iTitlePaneResourceId;
-        
-        /**
-        * The CBA resource id
-        */
-        TInt iCbaResourceId;
-        
-        /**
-        * The fetch dialog string pointer
-        */
-        TDes* iString;
-        
-    };
-
-#endif      // __TPHONECMDPARAMSINGLEITEMFETCH_H   
-            
-// End of File
--- a/phoneapp/phoneuiutils/src/cphoneresourceresolverbase.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiutils/src/cphoneresourceresolverbase.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -46,16 +46,6 @@
 EXPORT_C CPhoneResourceResolverBase::CPhoneResourceResolverBase():
     iEnv( *CEikonEnv::Static() )
     {
-    if ( FeatureManager::FeatureSupported( KFeatureIdOnScreenDialer ) )
-        {
-        iVariationFlags |= EOnscreenDialer;
-        }
-
-    if ( FeatureManager::FeatureSupported( KFeatureIdTouchCallHandling ) )
-        {
-        iVariationFlags |= ETouchCallHandling;
-        }
-
     if ( FeatureManager::FeatureSupported( KFeatureIdVideocallMenuVisibility ) )
         {
         iVariationFlags |= EVideoCallMenu;
@@ -67,11 +57,8 @@
     {
     // Remove resource file
     iEnv.DeleteResourceFile( iResourceOffset );
-    if ( FeatureManager::FeatureSupported( KFeatureIdTouchCallHandling ) )
-        {
-        iEnv.DeleteResourceFile( iCUIResourceOffset );
-        iEnv.DeleteResourceFile( iPTCHResourceOffset );
-        }
+    iEnv.DeleteResourceFile( iCUIResourceOffset );
+    iEnv.DeleteResourceFile( iPTCHResourceOffset );
     }
 
 // -----------------------------------------------------------------------------
@@ -91,25 +78,20 @@
     RFs &fsSession= iEnv.FsSession();
     BaflUtils::NearestLanguageFile( fsSession, path ); 
     iResourceOffset = iEnv.AddResourceFileL( path );
-    
-    if ( FeatureManager::FeatureSupported( KFeatureIdTouchCallHandling ) )
-        {
-        // callhandlingui.rss
-        TFileName callHandlingPath( KDriveZ );
-        callHandlingPath.Append( KDC_APP_RESOURCE_DIR );
-        callHandlingPath.Append( KPhoneResourceFileCHUI );
-        BaflUtils::NearestLanguageFile( fsSession, callHandlingPath ); 
-        iCUIResourceOffset = iEnv.AddResourceFileL( callHandlingPath );
-        // phoneuitouch.rss
-        TFileName phoneUiTouchPath( KDriveZ );
-        phoneUiTouchPath.Append( KDC_APP_RESOURCE_DIR );
-        phoneUiTouchPath.Append( KPhoneResourceFilePHTC );
-        BaflUtils::NearestLanguageFile( fsSession, phoneUiTouchPath ); 
-        iPTCHResourceOffset = iEnv.AddResourceFileL( phoneUiTouchPath );
+    // callhandlingui.rss
+    TFileName callHandlingPath( KDriveZ );
+    callHandlingPath.Append( KDC_APP_RESOURCE_DIR );
+    callHandlingPath.Append( KPhoneResourceFileCHUI );
+    BaflUtils::NearestLanguageFile( fsSession, callHandlingPath ); 
+    iCUIResourceOffset = iEnv.AddResourceFileL( callHandlingPath );
+    // phoneuitouch.rss
+    TFileName phoneUiTouchPath( KDriveZ );
+    phoneUiTouchPath.Append( KDC_APP_RESOURCE_DIR );
+    phoneUiTouchPath.Append( KPhoneResourceFilePHTC );
+    BaflUtils::NearestLanguageFile( fsSession, phoneUiTouchPath ); 
+    iPTCHResourceOffset = iEnv.AddResourceFileL( phoneUiTouchPath );
 
-        iTouchButtonConfig.ReadConfiguration();
-        }
-    
+    iTouchButtonConfig.ReadConfiguration();
     }
 
 EXPORT_C TBool CPhoneResourceResolverBase::IsTelephonyFeatureSupported( TInt aFeatureId ) const
@@ -127,7 +109,6 @@
     const TInt& aResource ) const
     {
     TInt retVal( KErrNotFound );
-
     __PHONELOG1( EBasic, EPhoneUIView, "CPhoneResourceResolverBase::ResolveResourceID - aResource(%d)",
         aResource );
     switch( aResource )
@@ -145,20 +126,14 @@
             break;
 
         case EPhoneNumberAcqMenubar:
-
-            if ( iVariationFlags & EOnscreenDialer)
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
-                }
-            else if ( iVariationFlags & EVideoCallMenu )
+             if ( iVariationFlags & EVideoCallMenu )
                 {
                 retVal = R_PHONEUI_NUMBERACQ_VIDEOCALL_MENUBAR;
                 }
             else
                 {
-                retVal = R_PHONEUI_NUMBERACQ_MENUBAR;
+                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
                 }
-
             break;
 
         case EPhoneNumberAcqOkMenubar:
@@ -181,15 +156,7 @@
             break;
 
         case EPhoneCallHandlingEmergencyMenubarWithNumberEntry:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_EMERGENCY_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_CALLHANDLING_EMERGENCY_MENUBAR_WITH_NUMBERENTRY;
-                }
-
+            retVal = R_PHONEUIDIALER_NUMBERACQ_EMERGENCY_MENUBAR;
             break;
 
         case EPhoneIncomingCallMenubar:
@@ -201,26 +168,11 @@
             break;
 
         case EPhoneIncomingCallMenubarWithNumberEntry:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_INCOMINGCALL_MENUBAR_WITH_NUMBERENTRY;
-                }
-
+            retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
             break;
+            
         case EPhoneIncomingVideoCallMenubarWithNumberEntry:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_INCOMINGVIDEOCALL_MENUBAR_WITH_NUMBERENTRY;
-                }
-
+            retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
             break;
 
         case  EPhoneAlertingCallMenubar:
@@ -228,15 +180,7 @@
             break;
 
         case  EPhoneAlertingCallMenubarWithNumberEntry:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_ALERTINGCALL_MENUBAR_WITH_NUMBERENTRY;
-                }
-
+            retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
             break;
 
         case EPhoneCallActiveAndHeldMenubar:
@@ -244,14 +188,7 @@
             break;
 
         case EPhoneCallActiveAndHeldMenubarWithNumberEntry:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_ACTIVEANDHELD_MENUBAR_WITH_NUMBERENTRY;
-                }
+            retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
             break;
 
         case EPhoneCallWaitingMenubar:
@@ -259,15 +196,7 @@
             break;
 
         case EPhoneCallWaitingMenubarWithNumberEntry:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_CALLWAITING_MENUBAR_WITH_NUMBERENTRY;
-                }
-
+            retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
             break;
 
         case EPhoneCallActiveHeldAndWaitingMenubar:
@@ -282,15 +211,7 @@
             break;
 
         case EPhoneCallActiveHeldAndWaitingMenubarWithNumberEntry:
-            if ( iVariationFlags & EOnscreenDialer)
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_CALLACTIVEHELDANDWAITING_MENUBAR_WITH_NUMBERENTRY;
-                }
-
+            retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
             break;
 
         case EPhoneAlertingAndHeldCallMenuBar:
@@ -298,15 +219,7 @@
             break;
 
         case EPhoneAlertingAndHeldCallMenuBarWithNumberEntry:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_ALERTINGANDHELDCALL_MENUBAR_WITH_NUMBERENTRY;
-                }
-
+            retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
             break;
 
         case EPhoneAlertingAndConfHeldCallMenuBar:
@@ -314,14 +227,7 @@
             break;
 
         case EPhoneAlertingAndConfHeldCallMenuBarWithNumberEntry:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_ALERTINGANDCONFHELDCALL_MENUBAR_WITH_NUMBERENTRY;
-                }
+            retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
             break;
 
         case EPhoneAlertingWaitingAndConfHeldCallMenuBar:
@@ -329,14 +235,7 @@
             break;
 
         case EPhoneAlertingWaitingAndConfHeldCallMenuBarWithNumberEntry:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_ALERTINGWAITINGANDHELDCONFCALL_MENUBAR_WITH_NUMBERENTRY;
-                }
+            retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
             break;
 
         case EPhoneAlertingHeldAndWaitingCallMenuBar:
@@ -344,15 +243,7 @@
             break;
 
         case EPhoneAlertingHeldAndWaitingCallMenuBarWithNumberEntry:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_ALERTINGHELDANDWAITINGCALL_MENUBAR_WITH_NUMBERENTRY;
-                }
-
+            retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
             break;
 
         case EPhoneAlertingAndWaitingCallMenuBar:
@@ -366,141 +257,51 @@
             break;
 
         case EPhoneConfCallMenubar:
-            if ( iVariationFlags & ETouchCallHandling )
-                {
-                retVal = R_PHONEUI_TOUCH_CONFCALL_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_CONFCALL_MENUBAR;
-                }
+           retVal = R_PHONEUI_TOUCH_CONFCALL_MENUBAR;
             break;
 
         case EPhoneConfCallMenubarWithNumberEntry:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_CONFCALL_MENUBAR_WITH_NUMBERENTRY;
-                }
-
+            retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
             break;
 
         case EPhoneConfAndCallWaitingMenubar:
-            if ( iVariationFlags & ETouchCallHandling )
-                {
-                retVal = R_PHONEUI_TOUCH_CONFANDCALLWAITING_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_CONFANDCALLWAITING_MENUBAR;
-                }
+            retVal = R_PHONEUI_TOUCH_CONFANDCALLWAITING_MENUBAR;
             break;
 
         case EPhoneConfAndCallWaitingMenubarWithNumberEntry:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_CONFANDCALLWAITING_MENUBAR_WITH_NUMBERENTRY;
-                }
-
+            retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
             break;
 
         case EPhoneConfAndHeldCallMenubar:
-            if ( iVariationFlags & ETouchCallHandling )
-                {
-                retVal = R_PHONEUI_TOUCH_ACTIVECONFANDHELD_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_ACTIVECONFANDHELD_MENUBAR;
-                }
+            retVal = R_PHONEUI_TOUCH_ACTIVECONFANDHELD_MENUBAR;
             break;
 
         case EPhoneConfAndHeldCallMenubarWithNumberEntry:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_ACTIVECONFANDHELD_MENUBAR_WITH_NUMBERENTRY;
-                }
-
+            retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
             break;
 
         case EPhoneActiveAndHeldConfMenubar:
-            if ( iVariationFlags & ETouchCallHandling )
-                {
-                retVal = R_PHONEUI_TOUCH_ACTIVEANDHELDCONF_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_ACTIVEANDHELDCONF_MENUBAR;
-                }
+            retVal = R_PHONEUI_TOUCH_ACTIVEANDHELDCONF_MENUBAR;
             break;
 
         case EPhoneActiveAndHeldConfMenubarWithNumberEntry:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_ACTIVEANDHELDCONF_MENUBAR_WITH_NUMBERENTRY;
-                }
-
+            retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
             break;
 
         case EPhoneConfCallActiveHeldAndWaitingMenubar:
-            if ( iVariationFlags & ETouchCallHandling )
-                {
-                retVal = R_PHONEUI_TOUCH_CONFCALLACTIVEHELDANDWAITING_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_CONFCALLACTIVEHELDANDWAITING_MENUBAR;
-                }
+            retVal = R_PHONEUI_TOUCH_CONFCALLACTIVEHELDANDWAITING_MENUBAR;
             break;
 
         case EPhoneConfCallActiveHeldAndWaitingMenubarWithNumberEntry:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_CONFCALLACTIVEHELDANDWAITING_MENUBAR_WITH_NUMBERENTRY;
-                }
-
+            retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
             break;
 
         case EPhoneCallActiveHeldConfAndWaitingMenubar:
-            if ( iVariationFlags & ETouchCallHandling )
-                {
-                retVal = R_PHONEUI_TOUCH_CALLACTIVEHELDCONFANDWAITING_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_CALLACTIVEHELDCONFANDWAITING_MENUBAR;
-                }
+            retVal = R_PHONEUI_TOUCH_CALLACTIVEHELDCONFANDWAITING_MENUBAR;
             break;
 
         case EPhoneCallActiveHeldConfAndWaitingMenubarWithNumberEntry:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_CALLACTIVEHELDCONFANDWAITING_MENUBAR_WITH_NUMBERENTRY;
-                }
-
+            retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
             break;
 
         case EPhoneConfCallParticipantsMenubar:
@@ -512,23 +313,18 @@
             break;
 
         case EPhoneCallHandlingMenubarWithNumberEntry:
-            if ( iVariationFlags & EOnscreenDialer)
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
-                }
-            else if ( iVariationFlags & EVideoCallMenu )
+            if ( iVariationFlags & EVideoCallMenu )
                 {
                 retVal = R_PHONE_INCALL_VIDEOCALL_MENUBAR_WITH_NUMBERENTRY;
                 }
             else
                 {
-                retVal = R_PHONE_INCALL_MENUBAR_WITH_NUMBERENTRY;
+                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
                 }
             break;
+            
         case EPhoneDtmfDialerMenubar:
-                {
-                retVal = R_PHONEUIDIALER_DTMFVIEW_MENUBAR;
-                }
+            retVal = R_PHONEUIDIALER_DTMFVIEW_MENUBAR;
             break;
 
         case EPhoneEmptyCBA:
@@ -552,17 +348,13 @@
             break;
 
         case EPhoneNumberAcqCBA:
-            if ( iVariationFlags & EOnscreenDialer )
-                  {
-                  retVal = R_PHONEUI_DIALER_CBA;
-                  }
-            else if ( iVariationFlags & EVideoCallMenu )
+            if ( iVariationFlags & EVideoCallMenu )
                   {
                   retVal = R_PHONEUI_NUMBERACQ_VIDEOCALL_CBA;
                   }
             else
                  {
-                 retVal = R_PHONEUI_NUMBERACQ_CBA;
+                 retVal = R_PHONEUI_DIALER_CBA;
                  }
             break;
 
@@ -575,58 +367,23 @@
             break;
 
         case EPhoneCallHandlingCallSetupCBA:
-            if (  iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUI_CALLHANDLING_CALLSETUP_EMPTY_DTMFDIALER_CBA;
-                }
-            else
-                {
-                retVal = R_PHONEUI_CALLHANDLING_CALLSETUP_EMPTY_ENDOUTGOING_CBA;
-                }
+            retVal = R_PHONEUI_CALLHANDLING_CALLSETUP_EMPTY_DTMFDIALER_CBA;
             break;
 
         case EPhoneCallHandlingCallSetupToIhfCBA:
-            if (  iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUI_CALLHANDLING_CALLSETUP_TOIHF_DTMFDIALER_CBA;
-                }
-            else
-                {
-                retVal = R_PHONEUI_CALLHANDLING_CALLSETUP_TOIHF_ENDOUTGOING_CBA;
-                }
+            retVal = R_PHONEUI_CALLHANDLING_CALLSETUP_TOIHF_DTMFDIALER_CBA;
             break;
 
         case EPhoneCallHandlingCallSetupToHandsetCBA:
-            if (  iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUI_CALLHANDLING_CALLSETUP_TOHANDSET_DTMFDIALER_CBA;
-                }
-            else
-                {
-                retVal = R_PHONEUI_CALLHANDLING_CALLSETUP_TOHANDSET_ENDOUTGOING_CBA;
-                }
+            retVal = R_PHONEUI_CALLHANDLING_CALLSETUP_TOHANDSET_DTMFDIALER_CBA;
             break;
 
         case EPhoneCallHandlingInCallCBA:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUI_INCALL_DIALER_CBA;
-                }
-            else
-                {
-                retVal = R_PHONEUI_CALLHANDLING_INCALL_CBA;
-                }
+            retVal = R_PHONEUI_INCALL_DIALER_CBA;
             break;
 
         case EPhoneCallHandlingInCallNoIhfCBA:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUI_INCALL_DIALER_CBA;
-                }
-            else
-                {
-                retVal = R_PHONEUI_CALLHANDLING_INCALL_NOIHF_CBA;
-                }
+            retVal = R_PHONEUI_INCALL_DIALER_CBA;
             break;
 
         case EPhoneCallHandlingInCallUnmuteCBA:
@@ -634,47 +391,23 @@
             break;
 
         case EPhoneCallHandlingInCallUnholdCBA:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUI_INCALL_DIALER_CBA;
-                }
-            else
-                {
-                retVal = R_PHONEUI_CALLHANDLING_INCALL_UNHOLD_CBA;
-                }
+            retVal = R_PHONEUI_INCALL_DIALER_CBA;
             break;
 
         case EPhoneCallHandlingInCallHandsetCBA:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUI_CALLHANDLING_INCALL_HANDSET_CBA;
-                }
+            retVal = R_PHONEUI_CALLHANDLING_INCALL_HANDSET_CBA;
             break;
 
         case EPhoneCallHandlingInCallBtaaCBA:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUI_CALLHANDLING_INCALL_BTAA_CBA;
-                }
-
+            retVal = R_PHONEUI_CALLHANDLING_INCALL_BTAA_CBA;
             break;
 
         case EPhoneCallHandlingEmergencyCBA:
-                {
-                retVal = R_PHONEUI_CALLHANDLING_EMERGENCY_CBA;
-                }
-
+            retVal = R_PHONEUI_CALLHANDLING_EMERGENCY_CBA;
             break;
 
         case EPhoneCallHandlingEmergencyHandsetCBA:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUI_INCALL_DIALER_CBA;
-                }
-            else
-                {
-                retVal = R_PHONEUI_CALLHANDLING_EMERGENCY_HANDSET_CBA;
-                }
+            retVal = R_PHONEUI_INCALL_DIALER_CBA;
             break;
 
         case EPhoneCallHandlingEmergencyNoIhfCBA:
@@ -718,14 +451,7 @@
             break;
 
         case EPhoneCallHandlingNewCallSwapCBA:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUI_INCALL_DIALER_CBA;
-                }
-            else
-                {
-                retVal = R_PHONEUI_CALLHANDLING_NEW_CALL_SWAP_CBA;
-                }
+            retVal = R_PHONEUI_INCALL_DIALER_CBA;
             break;
 
         case EPhoneNewCallFetchCBA:
@@ -841,14 +567,7 @@
             break;
 
        case EPhoneVideoCall2gMenubarWithNumberEntry:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_VIDEOCALL_2G_MENUBAR_WITH_NUMBERENTRY;
-                }
+            retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
             break;
 
        case EPhoneVideoCallMenubar:
@@ -856,14 +575,7 @@
             break;
 
        case EPhoneVideoCallMenubarWithNumberEntry:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_VIDEOCALL_MENUBAR_WITH_NUMBERENTRY;
-                }
+            retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
             break;
 
        case EPhoneVideoCallWaitingMenubar:
@@ -879,14 +591,7 @@
             break;
 
        case EPhoneVideoCallWaitingMenubarWithNumberEntry:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
-                }
-            else
-                {
-                retVal = R_PHONEUI_VIDEOCALL_WAITING_MENUBAR_WITH_NUMBERENTRY;
-                }
+            retVal = R_PHONEUIDIALER_NUMBERACQ_MENUBAR;
             break;
 
        case EPhoneEmptyBackCBA:
@@ -926,14 +631,7 @@
             break;
 
         case EPhoneEmergencyConnectWaitNote:
-            if ( iVariationFlags & EOnscreenDialer )
-                {
-                retVal = R_PHONE_EMERGENCY_NETWORK_CONNECT_WAIT_NOTE_EMPTY_DIALER;
-                }
-            else
-                {
-                retVal = R_PHONE_EMERGENCY_NETWORK_CONNECT_WAIT_NOTE;
-                }
+            retVal = R_PHONE_EMERGENCY_NETWORK_CONNECT_WAIT_NOTE_EMPTY_DIALER;
             break;
 
         case EPhoneEmergencyModeInformationNote:
--- a/phoneapp/phoneuiutils/src/tphonecmdparamcallheaderdata.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuiutils/src/tphonecmdparamcallheaderdata.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -45,8 +45,8 @@
     iParticipantListCLI( EPhoneParticipantCLIText ),
     iCipheringIndicatorAllowed( ETrue ),
     iContactLink( KNullDesC8 ),
-    iRemotePhoneNumber( KNullDesC )
-    ,iDiverted( EFalse )
+    iRemotePhoneNumber( KNullDesC ),
+    iDiverted( EFalse )
     {
     iParamId = EPhoneParamIdCallHeaderData;
     }
--- a/phoneapp/phoneuiutils/src/tphonecmdparammessageeditor.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,61 +0,0 @@
-/*
-* Copyright (c) 2005 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 TPhoneCmdParamMessageEditor class.
-*
-*/
-
-
-// INCLUDE FILES
-
-#include "tphonecmdparammessageeditor.h"   
-#include "phoneui.pan"
-
-// ================= MEMBER FUNCTIONS =======================
-
-// C++ default constructor can NOT contain any code, that
-// might leave.
-//
-EXPORT_C TPhoneCmdParamMessageEditor::TPhoneCmdParamMessageEditor() :
-    TPhoneCommandParam(),
-    iMessageData( NULL )
-    {
-    iParamId = EPhoneParamIdMessageEditor;
-    }
-
-// ---------------------------------------------------------
-// TPhoneCmdParamMessageEditor::SetMessageData
-// Sets message data for the message editor
-// (other items were commented in a header).
-// ---------------------------------------------------------
-//
-EXPORT_C void TPhoneCmdParamMessageEditor::SetMessageData( 
-   CMessageData* aMessageData )
-   {
-    __ASSERT_DEBUG( aMessageData,
-        Panic( EPhoneUtilsParameterNotInitialized ) );
-   iMessageData = aMessageData;
-   }
-
-// ---------------------------------------------------------
-// TPhoneCmdParamMessageEditor::MessageData
-// Returns message data for the message editor
-// ---------------------------------------------------------
-//
-EXPORT_C CMessageData* TPhoneCmdParamMessageEditor::MessageData() const
-   {
-    __ASSERT_DEBUG( iMessageData, Panic( EPhoneUtilsInvariant ) );
-   return iMessageData;
-   }
-
-//  End of File  
--- a/phoneapp/phoneuiutils/src/tphonecmdparamreconnectquery.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,110 +0,0 @@
-/*
-* Copyright (c) 2006 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 TPhoneCmdParamReconnectQuery class.
-*
-*/
-
-
-// INCLUDE FILES
-#include <ccauireconnectquery.h>
-
-#include "tphonecmdparamreconnectquery.h" 
-#include "phoneui.pan"
-
-// ================= MEMBER FUNCTIONS =======================
-
-// -----------------------------------------------------------------------------
-// TPhoneCmdParamReconnectQuery::TPhoneCmdParamReconnectQuery
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TPhoneCmdParamReconnectQuery::TPhoneCmdParamReconnectQuery( 
-    MCaUiReconnectQueryObserver& aObserver ):
-    TPhoneCommandParam(),
-    iObserver( aObserver ),
-    iContactMatcher( NULL ),
-    iPhoneNumber( KNullDesC ),
-    iIncludeVideoCallOption( EFalse )
-    {
-    iParamId = EPhoneParamIdReconnectQuery;
-    }
-
-// ---------------------------------------------------------
-// TPhoneCmdParamReconnectQuery::SetContactMatcher
-// ---------------------------------------------------------
-//
-EXPORT_C void TPhoneCmdParamReconnectQuery::SetContactMatcher( CPhCntMatcher* aPhCntMatcher )
-    {
-    __ASSERT_DEBUG( aPhCntMatcher, 
-        Panic( EPhoneUtilsParameterNotInitialized ) );
-    iContactMatcher = aPhCntMatcher;   
-    }
-
-// ---------------------------------------------------------
-// TPhoneCmdParamReconnectQuery::SetPhoneNumber
-// ---------------------------------------------------------
-//
-EXPORT_C void TPhoneCmdParamReconnectQuery::SetPhoneNumber( const TPtrC aPhoneNumber )
-    {
-    iPhoneNumber.Set( aPhoneNumber );   
-    }
-
-// ---------------------------------------------------------
-// TPhoneCmdParamReconnectQuery::SetIncludeVideoOption
-// ---------------------------------------------------------
-//
-EXPORT_C void TPhoneCmdParamReconnectQuery::SetIncludeVideoOption( 
-    const TBool aIncludeVideoCallOption )
-    {
-    iIncludeVideoCallOption = aIncludeVideoCallOption;
-    }
-
-// ---------------------------------------------------------
-// TPhoneCmdParamReconnectQuery::ReconnectQueryObserver
-// ---------------------------------------------------------
-//
-EXPORT_C MCaUiReconnectQueryObserver& TPhoneCmdParamReconnectQuery::ReconnectQueryObserver() const
-    {
-    return iObserver;
-    }
-
-// ---------------------------------------------------------
-// TPhoneCmdParamReconnectQuery::ContactMatcher
-// ---------------------------------------------------------
-//
-EXPORT_C CPhCntMatcher* TPhoneCmdParamReconnectQuery::ContactMatcher() const
-    {
-    return iContactMatcher;
-    }
-
-// ---------------------------------------------------------
-// TPhoneCmdParamReconnectQuery::PhoneNumber
-// ---------------------------------------------------------
-//
-EXPORT_C const TPtrC TPhoneCmdParamReconnectQuery::PhoneNumber() const
-    {
-    return iPhoneNumber;
-    }
-
-// ---------------------------------------------------------
-// TPhoneCmdParamReconnectQuery::IncludeVideoCallOption
-// ---------------------------------------------------------
-//
-EXPORT_C TBool TPhoneCmdParamReconnectQuery::IncludeVideoCallOption() const
-    {
-    return iIncludeVideoCallOption;
-    }
-
-//  End of File  
--- a/phoneapp/phoneuiutils/src/tphonecmdparamsingleitemfetch.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,145 +0,0 @@
-/*
-* Copyright (c) 2005 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 TPhoneCmdParamSingleItemFetch class.
-*
-*/
-
-
-// INCLUDE FILES
-#include "tphonecmdparamsingleitemfetch.h"
-#include "phoneui.pan"
-
-// ================= MEMBER FUNCTIONS =======================
-
-// -----------------------------------------------------------------------------
-// TPhoneCmdParamSingleItemFetch::TPhoneCmdParamSingleItemFetch
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TPhoneCmdParamSingleItemFetch::TPhoneCmdParamSingleItemFetch():
-    TPhoneCommandParam(),
-    iType( CPhCntSingleItemFetch::EFetchDtmf ),
-    iTitlePaneResourceId( 0 ), 
-    iCbaResourceId( 0 ), 
-    iString( NULL )
-    {
-    iParamId = EPhoneParamIdSingleItemFetch;
-    }
-
-// ---------------------------------------------------------
-// TPhoneCmdParamSingleItemFetch::SetType
-// Sets the single item fetch type
-// (other items were commented in a header).
-// ---------------------------------------------------------
-//
-EXPORT_C void TPhoneCmdParamSingleItemFetch::SetType( 
-    CPhCntSingleItemFetch::TFetchType aType )
-    {
-    iType = aType;        
-    }
-
-// ---------------------------------------------------------
-// TPhoneCmdParamSingleItemFetch::Type
-// Returns the single item fetch type
-// (other items were commented in a header).
-// ---------------------------------------------------------
-//
-EXPORT_C CPhCntSingleItemFetch::TFetchType 
-    TPhoneCmdParamSingleItemFetch::Type()
-    {
-    return iType;    
-    }
-    
-// ---------------------------------------------------------
-// TPhoneCmdParamSingleItemFetch::SetTitlePaneResourceId
-// Sets the title pane resource id
-// (other items were commented in a header).
-// ---------------------------------------------------------
-//
-EXPORT_C void TPhoneCmdParamSingleItemFetch::SetTitlePaneResourceId( 
-   TInt aTitlePaneResourceId )
-    {
-    __ASSERT_DEBUG( aTitlePaneResourceId, 
-        Panic( EPhoneUtilsParameterNotInitialized ) );
-    iTitlePaneResourceId = aTitlePaneResourceId;   
-    }
-
-// ---------------------------------------------------------
-// TPhoneCmdParamSingleItemFetch::TitleResourceId
-// Returns the title pane resource id
-// (other items were commented in a header).
-// ---------------------------------------------------------
-//
-EXPORT_C TInt TPhoneCmdParamSingleItemFetch::TitlePaneResourceId() const
-    {
-    __ASSERT_DEBUG( iTitlePaneResourceId, 
-        Panic( EPhoneUtilsInvariant ) );
-    return iTitlePaneResourceId;
-    }
-
-// ---------------------------------------------------------
-// TPhoneCmdParamSingleItemFetch::SetCbaResourceId
-// Sets the single item fetch dialog CBA resource id
-// (other items were commented in a header).
-// ---------------------------------------------------------
-//
-EXPORT_C void TPhoneCmdParamSingleItemFetch::SetCbaResourceId( 
-   TInt aCbaResourceId )
-    {
-    __ASSERT_DEBUG( aCbaResourceId, 
-        Panic( EPhoneUtilsParameterNotInitialized ) );
-    iCbaResourceId = aCbaResourceId;   
-    }
-
-// ---------------------------------------------------------
-// TPhoneCmdParamSingleItemFetch::CbaResourceId
-// Returns the single item fetch dialog CBA resource id
-// (other items were commented in a header).
-// ---------------------------------------------------------
-//
-EXPORT_C TInt TPhoneCmdParamSingleItemFetch::CbaResourceId() const
-    {
-    __ASSERT_DEBUG( iCbaResourceId, 
-        Panic( EPhoneUtilsInvariant ) );
-    return iCbaResourceId;
-    }
-
-// ---------------------------------------------------------
-// TPhoneCmdParamSingleItemFetch::SetString
-// Sets the string for the single item fetch dialog
-// (other items were commented in a header).
-// ---------------------------------------------------------
-//
-EXPORT_C void TPhoneCmdParamSingleItemFetch::SetString( TDes* aString )
-    {
-    __ASSERT_DEBUG( aString, 
-        Panic( EPhoneUtilsParameterNotInitialized ) );
-    iString = aString;
-    }
-
-// ---------------------------------------------------------
-// TPhoneCmdParamSingleItemFetch::String
-// Returns the string for the single item fetch dialog
-// (other items were commented in a header).
-// ---------------------------------------------------------
-//
-EXPORT_C TDes* TPhoneCmdParamSingleItemFetch::String() const
-    {
-    __ASSERT_DEBUG( iString, 
-        Panic( EPhoneUtilsInvariant ) );
-    return iString;
-    }
-   
-//  End of File  
--- a/phoneapp/phoneuivoipextension/group/phoneuivoipextension.mmp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuivoipextension/group/phoneuivoipextension.mmp	Fri Sep 17 08:29:19 2010 +0300
@@ -23,10 +23,7 @@
 #include <platform_paths.hrh>
 
 // Capability assignment.
-// <-- QT PHONE START --> 
 CAPABILITY CAP_GENERAL_DLL
-//CAPABILITY CAP_APPLICATION MultiMediaDD NetworkControl PowerMgmt DRM DiskAdmin
-// <-- QT PHONE END --> 
 
 // Assign Vendor ID.
 VENDORID VID_DEFAULT
@@ -51,9 +48,6 @@
 SOURCE          cphonemenuextensionwrapper.cpp
 SOURCE          cphoneextensionhandler.cpp
 SOURCE          tphonecmdparamselector.cpp
-// <-- QT PHONE START -->
-//SOURCE          tphonetouchpanewrapper.cpp
-// <-- QT PHONE END -->
 SOURCE          cphonetransferdialercontroller.cpp
 SOURCE          cphoneviewcustomizationvoip.cpp
 SOURCE          cphonestateutilsvoip.cpp
@@ -64,37 +58,10 @@
 SOURCE          cphonenewcallcmdhandler.cpp
 SOURCE          cphonecallforwardqueryhandler.cpp
 
-// <-- QT PHONE START -->
-/* Languages */
-/*LANG SC
-
-#ifndef __SECURE_DATA__ 
-SOURCEPATH      ../srcdata
-
-// load protocol specific resources
-RESOURCE        phoneuivoip.rss
-#else
-// Resources
-
-SOURCEPATH      ../srcdata
-
-START RESOURCE  phoneuivoip.rss
-TARGETPATH APP_RESOURCE_DIR 
-HEADER
-LANGUAGE_IDS
-END  // RESOURCE
-
-#endif // __SECURE_DATA__
-*/
-// <-- QT PHONE END -->
-
 USERINCLUDE     ../inc
 USERINCLUDE     ../../phoneuicontrol/inc
 USERINCLUDE     ../../phoneuistates/inc
-// <-- QT PHONE START -->
 USERINCLUDE     ../../phoneuiqtviewadapter/inc
-//USERINCLUDE     ../../phoneuiview/inc
-// <-- QT PHONE END -->
 USERINCLUDE     ../../phoneui/inc
 USERINCLUDE     ../../phoneuiutils/inc
 USERINCLUDE     ../../phoneui2/srcdata
@@ -107,10 +74,7 @@
 // <-- QT PHONE START -->
 //LIBRARY         cch.lib 
 // <-- QT PHONE END -->
-// <-- QT PHONE START --> 
 LIBRARY         phonestringloader.lib
-//LIBRARY         commonengine.lib //StringLoader 
-// <-- QT PHONE END -->
 LIBRARY         cone.lib
 LIBRARY         ecom.lib
 LIBRARY         eikcoctl.lib // CEikMenuPane
--- a/phoneapp/phoneuivoipextension/inc/cphonestateincomingvoip.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuivoipextension/inc/cphonestateincomingvoip.h	Fri Sep 17 08:29:19 2010 +0300
@@ -61,12 +61,7 @@
         * ConstructL()
         */
         virtual void ConstructL();
-
-        /**
-        * Handles long hash key
-        */
-        virtual void HandleLongHashL();
-
+        
         /**
         * Handles audio play stoping
         */        
--- a/phoneapp/phoneuivoipextension/inc/cphonestateutilsvoip.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuivoipextension/inc/cphonestateutilsvoip.h	Fri Sep 17 08:29:19 2010 +0300
@@ -24,7 +24,6 @@
 class MPhoneStateMachine;
 class MPhoneViewCommandHandle;
 class CPhCltEmergencyCall;
-class CConvergedServiceSelector;
 
 /**
  *  Provides common utility functions for voip-states.
@@ -120,12 +119,6 @@
      */
     CPhCltEmergencyCall* iEmergencyCall;
     
-    /** 
-     * Service selector.
-     * Own.
-     */
-    CConvergedServiceSelector* iServiceSelector;
-    
     /**
      * Interface to the state machine.
      * Not own.
--- a/phoneapp/phoneuivoipextension/inc/cphoneviewcustomizationvoip.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuivoipextension/inc/cphoneviewcustomizationvoip.h	Fri Sep 17 08:29:19 2010 +0300
@@ -99,12 +99,6 @@
 
 private: // data
 
-    /** 
-     * Service selector.
-     * Own.
-     */
-    CConvergedServiceSelector* iServiceSelector; 
-    
     /*
      * Handle to customization
      */
--- a/phoneapp/phoneuivoipextension/inc/tphonetouchpanewrapper.h	Thu Sep 02 20:26:16 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,72 +0,0 @@
-/*
-* Copyright (c) 2008 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:  Wrapper class to touch pane interface.
-*
-*/
-
-
-#ifndef TPHONETOUCHPANEWRAPPER_H
-#define TPHONETOUCHPANEWRAPPER_H
-
-// INCLUDES
-#include <e32base.h>
-#include <teltouchpaneextension.h>
-
-/**
- * Wrapper class to touch pane interface.
- *
- * @since S60 5.1
- */
-NONSHARABLE_CLASS( TPhTouchPaneWrapper ): public MTelTouchPaneExtension
-    {
-
-public:
-    TPhTouchPaneWrapper();
-     
-    /**
-     * Returns number of buttons in touch pane.
-     *
-     * @since S60 v5.1
-     * @return Button count.
-     */
-    TInt NumberOfButtonsInPane()  const;
-
-    /**
-     * Returns command id assinged to button in given position.
-     * If button is toggling, currently active command is 
-     * returned.
-     *
-     * @since S60 v5.1
-     * @param aButtonIndex Button index starting 0.
-     * @return Command id assigned to given position.
-     */
-    TInt ButtonCommandId( TInt aButtonIndex )  const;
-
-    /**
-     * Sets button dimmed.
-     *
-     * @since S60 v5.1
-     * @param aCommand Command id.
-     * @param aDimmed  ETrue to set dimmed, EFalse to undim.
-     */
-    void SetButtonDimmed( TInt aCommand, TBool aDimmed );
-
-private:
-    
-    };
-
-
-#endif TPHONETOUCHPANEWRAPPER_H
-
-//End of file
--- a/phoneapp/phoneuivoipextension/src/cphoneextensionhandler.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuivoipextension/src/cphoneextensionhandler.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -31,7 +31,6 @@
 #include "phoneappvoipcommands.hrh"
 #include "phonerssvoip.h"
 #include "cphonemenuextensionwrapper.h"
-#include "tphonetouchpanewrapper.h" 
 
 
 // ================= MEMBER FUNCTIONS =======================
--- a/phoneapp/phoneuivoipextension/src/cphonestateincomingvoip.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuivoipextension/src/cphonestateincomingvoip.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -85,20 +85,6 @@
     return self;
     }
 
-
-// -----------------------------------------------------------
-// CPhoneStateIncomingVoIP::HandleLongHashL
-// -----------------------------------------------------------
-//
- void CPhoneStateIncomingVoIP::HandleLongHashL()
-    {
-    __LOGMETHODSTARTEND( PhoneUIVoIPExtension,
-        "CPhoneStateIncomingVoIP::HandleLongHashL( ) ");
-
-    CPhoneState::HandleLongHashL();
-    }
-
-
 // -----------------------------------------------------------
 // CPhoneStateIncomingVoIP::HandleAudioPlayStoppedL
 // -----------------------------------------------------------
@@ -114,11 +100,6 @@
         {
         TInt resourceId = EPhoneCallHandlingIncomingRejectCBA;
         
-        if ( IsNumberEntryVisibleL() && !IsOnScreenDialerSupported() )
-            {
-            resourceId = EPhoneNumberAcqCBA;
-            }
-        
         iCbaManager->SetCbaL( resourceId );
         }
     else
--- a/phoneapp/phoneuivoipextension/src/cphonestatesinglevoip.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuivoipextension/src/cphonestatesinglevoip.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -177,8 +177,7 @@
                  
             if( IsNumberEntryVisibleL() && neLength )
                 {
-                if ( IsOnScreenDialerSupported() &&  
-                     IsCustomizedDialerVisibleL()  )
+                if ( IsCustomizedDialerVisibleL()  )
                     {
                     return;
                     }
--- a/phoneapp/phoneuivoipextension/src/cphonestateutilsvoip.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuivoipextension/src/cphonestateutilsvoip.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -17,7 +17,6 @@
 
 #include <cphcltemergencycall.h>
 #include <mpeengineinfo.h>
-#include <cconvergedserviceselector.h>
 #include "cphonestateutilsvoip.h"
 #include "cphonelogger.h"
 #include "phoneconstants.h"
@@ -56,7 +55,6 @@
     {
     iBuffer = HBufC::NewL( KPhoneNumberEntryBufferSize );
     iEmergencyCall = CPhCltEmergencyCall::NewL( NULL );
-    iServiceSelector = CConvergedServiceSelector::NewL();
     }
 
 
@@ -100,7 +98,6 @@
     {
     delete iBuffer;
     delete iEmergencyCall;
-    delete iServiceSelector;
     }
 
 
@@ -155,19 +152,6 @@
     
     TBool isVoipPrefered( EFalse );
     
-    CConvergedServiceSelector::TSsResult results;
-    TInt result = iServiceSelector->GetCallingServiceByCallType( results,
-        CConvergedServiceSelector::ESsVoiceCall, 0, ETrue );
-    
-    if ( KErrNone == result && 
-         CConvergedServiceSelector::ESsVoipCall == results.iCallType )
-        {
-        __LOGMETHODSTARTEND( PhoneUIVoIPExtension, 
-            "CPhoneStateUtilsVoip::IsVoipPreferred ETrue" );
-        aServiceId = results.iServiceId;
-        isVoipPrefered = ETrue;
-        }
-    
     return isVoipPrefered;
     }
 
--- a/phoneapp/phoneuivoipextension/src/cphoneviewcustomizationvoip.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneapp/phoneuivoipextension/src/cphoneviewcustomizationvoip.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -15,7 +15,6 @@
 *
 */
 
-#include <cconvergedserviceselector.h>
 #include "cphoneviewcustomizationvoip.h"
 #include "mphoneviewblockingdialogobserver.h"
 #include "phonestatedefinitionsvoip.h"
@@ -46,7 +45,6 @@
 //
 void CPhoneViewCustomizationVoip::ConstructL()
     {
-    iServiceSelector = CConvergedServiceSelector::NewL();
     }
 
 
@@ -86,7 +84,6 @@
 //
 CPhoneViewCustomizationVoip::~CPhoneViewCustomizationVoip()
     {
-    delete iServiceSelector;
     }
 
 
@@ -138,9 +135,6 @@
     {
     __LOGMETHODSTARTEND( PhoneUIVoIPExtension, 
         "CPhoneViewCustomizationVoip::RemoveDialog" );
-    
-    // Dismiss service selector queries, if necessary
-    iServiceSelector->CancelSelection();
     }
 
 
@@ -155,24 +149,5 @@
     __LOGMETHODSTARTEND( PhoneUIVoIPExtension, 
         "CPhoneViewCustomizationVoip::SelectVoipService" );
     
-    // Indicate that the service selection is blocking key events 
-    // from the Phone.
-    aBlockingObserver.SetBlockingDialogIsDisplayed( ETrue );
-    
-    CConvergedServiceSelector::TSsResult results;
-    TInt selectionResult = iServiceSelector->GetCallingServiceByCallType( 
-        results, CConvergedServiceSelector::ESsVoipCall, 0, EFalse );
-    
-    if ( KErrNone == selectionResult )
-        {
-        TPhoneCmdParamSelector* selectorContent =
-            static_cast<TPhoneCmdParamSelector*>( aCommandParam );
-        selectorContent->SetRegStatus( results.iServiceEnabled );
-        selectorContent->SetServiceId( results.iServiceId );
-        }
-    
-    // Reset the flag
-    aBlockingObserver.SetBlockingDialogIsDisplayed( EFalse );
-    
-    return ( KErrNone == selectionResult );
+    return ETrue;
     }
--- a/phoneapp/phoneuivoipextension/src/tphonetouchpanewrapper.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,65 +0,0 @@
-/*
-* Copyright (c) 2008 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 TPhTouchPaneWrapper class.
-*
-*/
-
-
-// INCLUDE FILES
-#include "tphonetouchpanewrapper.h"   
-
-
-// ================= MEMBER FUNCTIONS =======================
-
-// -----------------------------------------------------------------------------
-// TPhTouchPaneWrapper::TPhTouchPaneWrapper
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// -----------------------------------------------------------------------------
-//
-TPhTouchPaneWrapper::TPhTouchPaneWrapper()
-    {
-    }
-
-// ---------------------------------------------------------
-// TPhTouchPaneWrapper::TPhTouchPaneWrapper
-// (other items were commented in a header).
-// ---------------------------------------------------------
-//
-TInt TPhTouchPaneWrapper::NumberOfButtonsInPane() const
-    {
-    return KErrNotSupported;
-    }
-
-// ---------------------------------------------------------
-// TPhTouchPaneWrapper::ButtonCommandId
-// (other items were commented in a header).
-// ---------------------------------------------------------
-//
-TInt TPhTouchPaneWrapper::ButtonCommandId( 
-        TInt /*aButtonIndex*/ ) const
-    {
-    return KErrNotSupported;
-    }
-
-// ---------------------------------------------------------
-// TPhTouchPaneWrapper::SetButtonDimmed
-// (other items were commented in a header).
-// ---------------------------------------------------------
-//
-void TPhTouchPaneWrapper::SetButtonDimmed( TInt /*aCommand*/, TBool /*aDimmed*/ )
-   {
-   }
-
-//  End of File
--- a/phoneengine/callhandling/inc/cpesinglecall.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneengine/callhandling/inc/cpesinglecall.h	Fri Sep 17 08:29:19 2010 +0300
@@ -181,14 +181,14 @@
         * @param None.
         * @return TBool ETrue if security is enabled, else EFalse.
         */
-        TBool IsSecureCall() const;
+        TBool IsSecureCall();
 
         /**
         * Get call's secure specified status.
         * @param None.
         * @return TBool ETrue if secure specified
         */
-        TBool SecureSpecified() const;
+        TBool SecureSpecified();
         
         /**
          * Accepts unattended transfer request.
@@ -207,7 +207,7 @@
         * @param aTransferTo Target address of the transfer
         * @return System wide error code
         */   
-        TInt UnattendedTransfer( const TDesC& aTransferTo ) const;
+        TInt UnattendedTransfer( const TDesC& aTransferTo );
         
         /**
          * Starts call forwarding to selected address.
--- a/phoneengine/callhandling/src/cpecallhandling.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneengine/callhandling/src/cpecallhandling.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -1678,9 +1678,13 @@
     TInt callIndex;
     CPESingleCall* callData;
     TInt errorCode( ECCPErrorNotFound );
+    TBool onlyConferenceCall( ( iConferenceCall && 
+            ( iConferenceCall->EnumerateCalls() == GetNumberOfCalls()) ));
 
     if ( ( iConferenceCall ) && 
-         ( iConferenceCall->GetCallState() == EPEStateConnectedConference ) )
+         ( iConferenceCall->GetCallState() == EPEStateConnectedConference ||
+           (iConferenceCall->GetCallState() == EPEStateHeldConference &&
+            onlyConferenceCall ) ) )
         {
         errorCode = iConferenceCall->Swap();
         }
--- a/phoneengine/callhandling/src/cpesinglecall.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneengine/callhandling/src/cpesinglecall.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -150,7 +150,7 @@
         const TPEPhoneNumber& aEmergencyNumber )
     {
     TEFLOGSTRING( KTAINT, "CALL CPESingleCall::DialEmergency" );
-    iCall->DialEmergencyCall( aEmergencyNumber );
+    Call().DialEmergencyCall( aEmergencyNumber );
     }
 
 // -----------------------------------------------------------------------------
@@ -176,7 +176,7 @@
 TInt CPESingleCall::Hold()
     {
     TEFLOGSTRING( KTAINT, "CALL CPESingleCall::Hold" );
-    return iCall->Hold();
+    return Call().Hold();
     }
 
 // -----------------------------------------------------------------------------
@@ -187,7 +187,7 @@
 TInt CPESingleCall::Resume()
     {
     TEFLOGSTRING( KTAINT, "CALL CPESingleCall::Resume" );
-    return iCall->Resume();
+    return Call().Resume();
     }
 
 // -----------------------------------------------------------------------------
@@ -198,7 +198,7 @@
 TInt CPESingleCall::Swap()
     {
     TEFLOGSTRING( KTAINT, "CALL CPESingleCall::Swap" );
-    return iCall->Swap();
+    return Call().Swap();
     }
 
 // -----------------------------------------------------------------------------
@@ -209,7 +209,7 @@
 void CPESingleCall::Transfer( const TDesC& aTransferTarget )
     {
     TEFLOGSTRING( KTAINT, "CALL CPESingleCall::Transfer" );
-    iCall->AttendedTransfer( aTransferTarget );
+    Call().AttendedTransfer( aTransferTarget );
     }
 
 // -----------------------------------------------------------------------------
@@ -220,7 +220,7 @@
 TCCPTone CPESingleCall::Tone()
     {
     TEFLOGSTRING( KTAINT, "CALL CPESingleCall::Tone" );
-    return iCall->Tone();
+    return Call().Tone();
     }
 
 // -----------------------------------------------------------------------------
@@ -232,7 +232,7 @@
     {
     TEFLOGSTRING( KTAREQOUT, "CALL CPESingleCall::HangUp" );
     SetMissedCall( EFalse );
-    return iCall->HangUp();
+    return Call().HangUp();
     }
 
 // -----------------------------------------------------------------------------
@@ -282,20 +282,20 @@
 // CPESingleCall::IsSecureCall
 // -----------------------------------------------------------------------------
 //
-TBool CPESingleCall::IsSecureCall() const
+TBool CPESingleCall::IsSecureCall()
     {
     TEFLOGSTRING( KTAINT, "CALL CPESingleCall::IsSecureCall" );
-    return iCall->IsSecured();
+    return Call().IsSecured();
     }
 
 // -----------------------------------------------------------------------------
 // CPESingleCall::SecureSpecified
 // -----------------------------------------------------------------------------
 //
-TBool CPESingleCall::SecureSpecified() const
+TBool CPESingleCall::SecureSpecified()
     {
     TEFLOGSTRING( KTAINT, "CALL CPESingleCall::SecureSpecified" );
-    return iCall->SecureSpecified(); 
+    return Call().SecureSpecified(); 
     }
 
 // -----------------------------------------------------------------------------
@@ -306,7 +306,7 @@
     {
     TEFLOGSTRING( KTAINT, "CALL CPESingleCall::AcceptUnattendedTransfer" );
     
-    return iCall->AcceptTransfer( ETrue );
+    return Call().AcceptTransfer( ETrue );
     }
 
 
@@ -318,18 +318,18 @@
     {
     TEFLOGSTRING( KTAINT, "CALL CPESingleCall::RejectUnattendedTransfer" );
     
-    return iCall->AcceptTransfer( EFalse );
+    return Call().AcceptTransfer( EFalse );
     }
 
 // -----------------------------------------------------------------------------
 // CPESingleCall::UnattendedTransfer
 // -----------------------------------------------------------------------------
 //
-TInt CPESingleCall::UnattendedTransfer( const TDesC& aTransferTo ) const
+TInt CPESingleCall::UnattendedTransfer( const TDesC& aTransferTo )
     {
     TEFLOGSTRING( KTAINT, "CALL CPESingleCall::UnattendedTransfer" );
 
-    return iCall->UnattendedTransfer( aTransferTo );
+    return Call().UnattendedTransfer( aTransferTo );
     }
 
 // -----------------------------------------------------------------------------
@@ -339,7 +339,7 @@
 TInt CPESingleCall::ForwardCallToAddress( TInt aIndex )
     {
     TEFLOGSTRING( KTAINT, "CALL CPESingleCall::ForwardToAddress" );
-    TRAPD( err, iCall->ForwardToAddressL( aIndex ) );
+    TRAPD( err, Call().ForwardToAddressL( aIndex ) );
     return err;
     }
     
--- a/phoneengine/contacthandling2/inc/cpecontactmatch.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneengine/contacthandling2/inc/cpecontactmatch.h	Fri Sep 17 08:29:19 2010 +0300
@@ -119,6 +119,13 @@
             const MPhCntMatch& aMatch,
             const TInt aCallId );
 
+        /**
+        * Gets remote party name
+        * @param aMatch a contact item 
+        * @param aName, Remote party name
+        */
+        void GetName( const MPhCntMatch& aMatch,
+            TPEContactName& aName);
 
         /**
          * Creates contact id.
--- a/phoneengine/contacthandling2/src/cpecontactmatch.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneengine/contacthandling2/src/cpecontactmatch.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -286,82 +286,26 @@
     // Set ringing tone's filename
     iDataStore.SetPersonalRingingTone( aMatch.PersonalRingingTone(), aCallId );
 
-    // Set name
-    // The following logic determines if one of the languages that require
-    // swapping of first/last name order is selected and performs the operation.
-    HBufC* lastname( NULL );
-    HBufC* firstname( NULL );
-
-    if ( aMatch.LastName().Length() > 0 )
-        {
-        TEFLOGSTRING( KTAINT, "CNT CPEContactMatch::CopyContactFieldsDataL, alloc last name" );
-        lastname = aMatch.LastName().Alloc();
-        }
-    if ( aMatch.FirstName().Length() > 0 )
-        {
-        TEFLOGSTRING( KTAINT, "CNT CPEContactMatch::CopyContactFieldsDataL, alloc first name" );
-        firstname = aMatch.FirstName().Alloc();
-        }
-
-    if ( ( lastname ) && ( firstname ) )
-        {
-        //Swap name order, if required by the current language setting
-        const TLanguage language = User::Language();
-    
-        for ( TInt index = 0; index < KPENumberOfSwappedLanguages; index++ )
-            {
-            if ( KPESwappedLanguages[index] == language )
-                {
-                HBufC* tempfirstname( firstname );
-                firstname = lastname;
-                lastname = tempfirstname;
-                break;
-                }
-            }
-        }
+    TPEContactName finalName;
 
-    TPEContactName finalName;
-    // Parse name by concatenating lastname and firstname
-    if ( firstname )
-        {
-        finalName = *firstname;
-        if ( finalName.Length() < KCntMaxTextFieldLength && lastname )
-            {
-            TEFLOGSTRING( KTAINT, "CNT CPEContactMatch::CopyContactFieldsDataL, append with space" );
-            finalName.Append( KPESpace );
-            }
-        delete firstname;
-        firstname = NULL;
-        }
-    if ( lastname )
+    if ( aMatch.GroupName().Length() == 0 )
         {
-        if ( finalName.Length() < KCntMaxTextFieldLength )
-            {
-            // Check how long last name can be added to the iName string. 
-            TInt lastNameMaxLength = KCntMaxTextFieldLength - finalName.Length();
-            if ( lastname->Length() > lastNameMaxLength )
-                {
-                TEFLOGSTRING( KTAINT, "CNT CPEContactMatch::CopyContactFieldsDataL, append with part of last name" );
-                // Cut extra chars from the string.
-                finalName.Append( lastname->Left( lastNameMaxLength ) );          
-                }
-            else 
-                {
-                TEFLOGSTRING( KTAINT, "CNT CPEContactMatch::CopyContactFieldsDataL, append with last name" );
-                finalName.Append( *lastname );
-                }
-            }
-        delete lastname;
-        lastname = NULL;
+        GetName( aMatch, finalName );
         }
-        
+    else 
+        {
+        // Group name found, set it as remote party name
+        finalName.Append( aMatch.GroupName().Left( KCntMaxTextFieldLength ) );
+        }
+    
     // Replace paragraph separator with space character
     const TText ps(0x2029);
-
+    
     while ( finalName.Locate( ps ) != KErrNotFound )
         {
         finalName[ finalName.Locate( ps )] = ' ';
         }
+    
     TEFLOGSTRING3( KTAINT, "CNT CPEContactMatch::iDataStore.SetRemoteName( finalName, aCallId ): finalName: %S callid: %d ", &finalName, aCallId);
     iDataStore.SetRemoteName( finalName, aCallId );
 
@@ -452,4 +396,82 @@
     TEFLOGSTRING( KTAINT, "CNT CPEContactMatch::CopyContactFieldsDataL: complete" );  
     }
 
+// -----------------------------------------------------------------------------
+// CPEContactMatch::CopyContactFieldsDataL
+// Copies contact information to remote info struct
+// -----------------------------------------------------------------------------
+//
+void CPEContactMatch::GetName(
+        const MPhCntMatch& aMatch,
+        TPEContactName& aName
+        )
+    {
+    // Set name
+    // The following logic determines if one of the languages that require
+    // swapping of first/last name order is selected and performs the operation.
+    HBufC* lastname( NULL );
+    HBufC* firstname( NULL );
+    
+    if ( aMatch.LastName().Length() > 0 )
+        {
+        TEFLOGSTRING( KTAINT, "CNT CPEContactMatch::CopyContactFieldsDataL, alloc last name" );
+        lastname = aMatch.LastName().Alloc();
+        }
+    if ( aMatch.FirstName().Length() > 0 )
+        {
+        TEFLOGSTRING( KTAINT, "CNT CPEContactMatch::CopyContactFieldsDataL, alloc first name" );
+        firstname = aMatch.FirstName().Alloc();
+        }
+
+    if ( ( lastname ) && ( firstname ) )
+        {
+        //Swap name order, if required by the current language setting
+        const TLanguage language = User::Language();
+    
+        for ( TInt index = 0; index < KPENumberOfSwappedLanguages; index++ )
+            {
+            if ( KPESwappedLanguages[index] == language )
+                {
+                HBufC* tempfirstname( firstname );
+                firstname = lastname;
+                lastname = tempfirstname;
+                break;
+                }
+            }
+        }
+    // Parse name by concatenating lastname and firstname
+    if ( firstname )
+        {
+        aName = *firstname;
+        if ( aName.Length() < KCntMaxTextFieldLength && lastname )
+            {
+            TEFLOGSTRING( KTAINT, "CNT CPEContactMatch::CopyContactFieldsDataL, append with space" );
+            aName.Append( KPESpace );
+            }
+        delete firstname;
+        firstname = NULL;
+        }
+    if ( lastname )
+        {
+        if ( aName.Length() < KCntMaxTextFieldLength )
+            {
+            // Check how long last name can be added to the iName string. 
+            TInt lastNameMaxLength = KCntMaxTextFieldLength - aName.Length();
+            if ( lastname->Length() > lastNameMaxLength )
+                {
+                TEFLOGSTRING( KTAINT, "CNT CPEContactMatch::CopyContactFieldsDataL, append with part of last name" );
+                // Cut extra chars from the string.
+                aName.Append( lastname->Left( lastNameMaxLength ) );          
+                }
+            else 
+                {
+                TEFLOGSTRING( KTAINT, "CNT CPEContactMatch::CopyContactFieldsDataL, append with last name" );
+                aName.Append( *lastname );
+                }
+            }
+        delete lastname;
+        lastname = NULL;
+        }    
+    }
+
 //  End of File  
--- a/phoneengine/networkhandlingstarter/inc/cnetworklistener.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneengine/networkhandlingstarter/inc/cnetworklistener.h	Fri Sep 17 08:29:19 2010 +0300
@@ -180,10 +180,11 @@
     void HandleNetworkLost();
     
     /**
-     * Tests if offline mode is engaged.
-     * @return ETrue if offline mode is currently active
+     * Tests if network connections are allowed.
+     * @return true if network connections are allowed
+     *    otherwise eg. in offline mode false
      */
-    TBool IsOffLineMode() const;
+    TBool IsNetworkConnectionAllowed() const;
     
     /**
      * Tests if Bluetooth SAP is in connected mode.
--- a/phoneengine/networkhandlingstarter/inc/networkhandlingstarterlogging.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneengine/networkhandlingstarter/inc/networkhandlingstarterlogging.h	Fri Sep 17 08:29:19 2010 +0300
@@ -26,7 +26,7 @@
   for enabling RDebug prints in development tracing. 
   Shouldn't be used in release code.
   */
-#define MSG_OUTPUT_RDEBUG
+#undef MSG_OUTPUT_RDEBUG
 
 
 
@@ -53,6 +53,9 @@
     case QtFatalMsg:
         RDebug::Printf("networkhandlingstarter Fatal: %s\n", msg);
         abort();
+        break; 
+    default:
+        break; 
     }
 }
 
--- a/phoneengine/networkhandlingstarter/networkhandlingstarter.pro	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneengine/networkhandlingstarter/networkhandlingstarter.pro	Fri Sep 17 08:29:19 2010 +0300
@@ -35,6 +35,7 @@
     LIBS += -lcpframework
     LIBS += -lphonesettings
     LIBS += -ltstaskmonitorclient
+    LIBS += -lcentralrepository
 
     BLD_INF_RULES.prj_exports +=  \
      "./rom/networkhandlingstarter.iby    CORE_APP_LAYER_IBY_EXPORT_PATH(networkhandlingstarter.iby)"
--- a/phoneengine/networkhandlingstarter/src/cnetworklistener.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneengine/networkhandlingstarter/src/cnetworklistener.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -21,6 +21,8 @@
 #include <PsetContainer.h>
 #include <PsetNetwork.h>
 #include <PsetSAObserver.h>
+#include <centralrepository.h>
+#include <CoreApplicationUIsSDKCRKeys.h>
 
 #include "cnetworklistener.h"
 #include "mnetworklistenerobserver.h"
@@ -196,7 +198,7 @@
         if (iRegistered) {
             iRegistered = EFalse;
 
-            if (!IsOffLineMode() &&
+            if (IsNetworkConnectionAllowed() &&
                 !IsBluetoothSAPConnected() &&
                 IsSimOk()) {
                 // Start 60 second timer and when expired show the
@@ -213,21 +215,23 @@
 }
 
 /*!
-    CNetworkListener::IsOffLineMode
+    CNetworkListener::IsNetworkConnectionAllowed
  */
-TBool CNetworkListener::IsOffLineMode() const
+TBool CNetworkListener::IsNetworkConnectionAllowed() const
 {
     DPRINT << ": IN";
-    
-    TInt result = KErrNone;
-    TBool isOffLineMode = EFalse;
-    QT_TRYCATCH_ERROR(result, isOffLineMode =
-        QSystemDeviceInfo::OfflineProfile == iDeviceInfo->currentProfile())
-    
-    DPRINT << ": OUT, result: " << result;
-    return (isOffLineMode && (KErrNone == result));
-    }
-    
+    // Key indicates whether network connections are allowed.
+    // E.g. is Offline Mode active or not.
+    TInt nwConnectionAllowed( ECoreAppUIsNetworkConnectionAllowed );
+    CRepository* repository = CRepository::NewL( KCRUidCoreApplicationUIs );
+    repository->Get(KCoreAppUIsNetworkConnectionAllowed,nwConnectionAllowed);
+    delete repository;
+    repository = NULL;
+
+    DPRINT << ": OUT, nwConnectionAllowed: " << nwConnectionAllowed;
+    return nwConnectionAllowed == ECoreAppUIsNetworkConnectionAllowed;
+}
+
 /*!
     CNetworkListener::IsBluetoothSAPConnected
  */
--- a/phoneengine/phonecntfinder2/inc/cphcntmatch2.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneengine/phonecntfinder2/inc/cphcntmatch2.h	Fri Sep 17 08:29:19 2010 +0300
@@ -100,7 +100,12 @@
         /**
         * From MPhCntMatch
         */ 
-        TPtrC Number() const;
+        TPtrC GroupName() const;
+        
+        /**
+        * From MPhCntMatch
+        */ 
+        TPtrC Number();
 
         /**
         * From MPhCntMatch
@@ -165,6 +170,7 @@
         CDesCArrayFlat* iDTMFArray;
         QString iFirstname;
         QString iLastname;
+        QString iGroupname;
         QString iPersonalRingtone;
         QString iCallImage;
 
--- a/phoneengine/phonecntfinder2/inc/mphcntmatch.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneengine/phonecntfinder2/inc/mphcntmatch.h	Fri Sep 17 08:29:19 2010 +0300
@@ -112,10 +112,16 @@
         virtual TPtrC CompanyName() const = 0;
 
         /**
+        * Group name field from contact.
+        * @return Field text. Empty if there isn't one specified.
+        */
+        virtual TPtrC GroupName() const = 0;
+        
+        /**
         * Number field from contact (from matched field).
         * @return Field text. Empty if there isn't one specified.
         */
-        virtual TPtrC Number() const = 0;
+        virtual TPtrC Number() = 0;
 
         /**
         * Ringing tone field from contact.
--- a/phoneengine/phonecntfinder2/phonecntfinder2.pro	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneengine/phonecntfinder2/phonecntfinder2.pro	Fri Sep 17 08:29:19 2010 +0300
@@ -75,7 +75,7 @@
  "./rom/phonecntfinder.iby    CORE_APP_LAYER_IBY_EXPORT_PATH(phonecntfinder.iby)"
  
 BLD_INF_RULES.prj_exports += \
- "./data/phonecntfinder_stub.sis   \epoc32\data\z\system\install\phonecntfinder_stub.sis"
+ "./data/phonecntfinder_stub.sis /epoc32/data/z/system/install/phonecntfinder_stub.sis"
 
 
 
--- a/phoneengine/phonecntfinder2/src/cphcntmatch2.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneengine/phonecntfinder2/src/cphcntmatch2.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -125,18 +125,30 @@
 {
   return KNullDesC();
 }
+
+// -----------------------------------------------------------------------------
+// GroupName
+// -----------------------------------------------------------------------------
+//
+TPtrC CPhCntMatch2::GroupName() const
+{
+    return iGroupname.utf16();  
+}
+
 // -----------------------------------------------------------------------------
 // Number
 // -----------------------------------------------------------------------------
 //
-TPtrC CPhCntMatch2::Number() const
+TPtrC CPhCntMatch2::Number()
 {
     //how many numbers are returned here? should be only one that matched 
-    if ( iNumber == NULL ) {
-   
-    TPtrC ptr(FieldValue(QContactPhoneNumber::DefinitionName, 
-               QContactPhoneNumber::FieldNumber).utf16());
-    const_cast<HBufC*>(iNumber) = ptr.Alloc();
+    if ( iNumber == NULL ) {      
+        TPtrC ptr(FieldValue(QContactPhoneNumber::DefinitionName, 
+                   QContactPhoneNumber::FieldNumber).utf16());
+        iNumber = ptr.Alloc();
+        if (!iNumber) {
+            return KNullDesC();
+        }
     }  
     return iNumber->Des();
 }
@@ -228,6 +240,11 @@
              QContactName::DefinitionName, 
              QContactName::FieldLastName);
     
+    if (iContact.type() == QContactType::TypeGroup) {
+        QContactName contactName = iContact.detail(QContactName::DefinitionName);
+        iGroupname = contactName.customLabel();     
+    }
+    
     //Get caller's image
     QList<QContactAvatar> details = iContact.details<QContactAvatar>();
     for (int i=0;i<details.count();++i) {
--- a/phoneengine/phonecntfinder2/tsrc/u_cphcntmatch2/u_cphcntmatch2.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneengine/phonecntfinder2/tsrc/u_cphcntmatch2/u_cphcntmatch2.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -49,6 +49,8 @@
     void testFirstNameNotEmpty();
     void testLastNameEmpty();
     void testLastNameNotEmpty();
+    void testGroupNameEmpty();
+    void testGroupNameNotEmpty();
     void testNumberEmpty();
     void testNumberNotEmpty();
     //void testSeveralFirstNames();
@@ -216,6 +218,45 @@
     err = cm->removeContact(contact.localId());
     }
 
+void U_CPhCntMatch2::testGroupNameEmpty()
+    {
+    QContact contact;
+    QContactName lastname;
+    lastname.setLastName("");
+    bool err = contact.saveDetail(&lastname); 
+    err = cm->saveContact(&contact);
+    delete mMatch;
+    TRAP_IGNORE( mMatch = CPhCntMatch2::NewL(contact) );
+    mMatchIf = mMatch;
+    Q_ASSERT(mMatchIf->GroupName().Length() == 0);
+
+    err = contact.removeDetail(&lastname);
+    err = cm->removeContact(contact.localId());
+    }
+
+
+void U_CPhCntMatch2::testGroupNameNotEmpty()
+    {
+    QContact contact;
+    contact.setType(QContactType::TypeGroup);
+    _LIT(KGroupName, "groupname");
+    QContactName groupname;
+    groupname.setCustomLabel("groupname");
+    bool err = contact.saveDetail(&groupname); 
+    err = cm->saveContact(&contact);
+    delete mMatch;
+    TRAP_IGNORE( mMatch = CPhCntMatch2::NewL(contact) );
+    mMatchIf = mMatch;
+    HBufC* buf = NULL;
+    buf = mMatchIf->GroupName().AllocL();
+    QString qBuf((QChar*)buf->Ptr(),buf->Length());
+    Q_ASSERT(*buf == KGroupName());
+    delete buf;
+
+    err = contact.removeDetail(&groupname);
+    err = cm->removeContact(contact.localId());
+    }
+
 void U_CPhCntMatch2::testNumberEmpty()
     {
     QContact contact;
--- a/phoneengine/phonemodel/inc/cpeparsersshandler.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneengine/phonemodel/inc/cpeparsersshandler.h	Fri Sep 17 08:29:19 2010 +0300
@@ -38,7 +38,6 @@
 class CPsuiWaitingObs;
 class CPsuiBarringObs;
 class CPsuiDivertObs;
-class CPsuiCliObserver;
 
 class PSetCallDivertingWrapper;
 class PSetCallWaitingWrapper;
@@ -286,14 +285,9 @@
        
         // Owned call barring.
         CPsetCallBarring* iBarring;
-        // Owned call barring observer.
-        CPsuiBarringObs* iCbObserver;    
     
         // Owned calling line identity.
         CPsetCli* iCli;
-        // Owned calling line identity observer.
-        CPsuiCliObserver* iCliObserver;
-        
         
         // Call diverting. Not own.
         CPsetCallDiverting* iDivert;  
--- a/phoneengine/phonemodel/inc/talogger.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneengine/phonemodel/inc/talogger.h	Fri Sep 17 08:29:19 2010 +0300
@@ -50,7 +50,7 @@
 #else
 
 #ifdef __WINS__
-#define TEF_LOGGING_METHOD      2   // UDEB BUILD, WINS
+#define TEF_LOGGING_METHOD      0   // UDEB BUILD, WINS
 #else
 #define TEF_LOGGING_METHOD      2   // UDEB BUILD, HW
 #endif // __WINS__
--- a/phoneengine/phonemodel/phonemodel.pro	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneengine/phonemodel/phonemodel.pro	Fri Sep 17 08:29:19 2010 +0300
@@ -195,4 +195,4 @@
 BLD_INF_RULES.prj_exports += "./data/backup_registration.xml /epoc32/release/winscw/urel/z/private/1000a86c/backup_registration.xml"
 
 #Stub sis
-BLD_INF_RULES.prj_exports += "./data/phonemodel_stub.sis   \epoc32\data\z\system\install\phonemodel_stub.sis"
+BLD_INF_RULES.prj_exports += "./data/phonemodel_stub.sis /epoc32/data/z/system/install/phonemodel_stub.sis"
--- a/phoneengine/phonemodel/rom/phonengengine.iby	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneengine/phonemodel/rom/phonengengine.iby	Fri Sep 17 08:29:19 2010 +0300
@@ -43,10 +43,9 @@
 // Service Handling
 file=ABI_DIR\BUILD_DIR\peservicehandling.dll      SHARED_LIB_DIR\peservicehandling.dll
 
-// <-- QT PHONE START --> 
 // Dial Service
 file=ABI_DIR\BUILD_DIR\phoneservices.dll      SHARED_LIB_DIR\phoneservices.dll
-// <-- QT PHONE END--> 
+
 data=DATAZ_\private\1000A86C\backup_registration.xml  private\1000A86C\backup_registration.xml
 
 
--- a/phoneengine/phonemodel/src/cpeparsersshandler.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneengine/phonemodel/src/cpeparsersshandler.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -33,14 +33,6 @@
 #include <psetcallwaiting.h>
 #include <psetcli.h>
 #include <psetcontainer.h>
-#include <psetcontainer.h>
-#include <psuibarringobs.h>
-#include <psuibarringobs.h>
-#include <psuicliobserver.h>
-#include <psuicontainer.h>
-#include <psuidivertobs.h>
-#include <psuiwaitingobs.h>
-#include <psuiwaitingobs.h>
 #include <talogger.h>
 
 #include <psetwrapper.h>
@@ -96,12 +88,9 @@
 CPEParserSSHandler::~CPEParserSSHandler()
     {    
     delete iCli;
-    delete iCliObserver;
     delete iBarring;
-    delete iCbObserver;
     delete iWaiting;
     delete iSettings;
-    delete iObsContainer;
     
     delete iCallDivertingHandler;
     delete iPsetWrapper;
@@ -448,22 +437,22 @@
         case EActivate:
             setBarring.iSetting = EActivateBarring;
             iSupplementaryServicesCommandInfo.action = EPESSActivation;
-            iBarring->SetBarringL( setBarring, bsc );
-            iModel.DataStore()->SetSSCommandInfo( iSupplementaryServicesCommandInfo );
-            iModel.SendMessage( MEngineMonitor::EPEMessageIssuedSSRequest );
+            //iBarring->SetBarringL( setBarring, bsc );
+            //iModel.DataStore()->SetSSCommandInfo( iSupplementaryServicesCommandInfo );
+            //iModel.SendMessage( MEngineMonitor::EPEMessageIssuedSSRequest );
             break;
         case EDeactivate: 
             setBarring.iSetting = ECancelBarring;
             iSupplementaryServicesCommandInfo.action = EPESSDeactivation;
-            iBarring->SetBarringL( setBarring, bsc );
-            iModel.DataStore()->SetSSCommandInfo( iSupplementaryServicesCommandInfo );
-            iModel.SendMessage( MEngineMonitor::EPEMessageIssuedSSRequest );
+            //iBarring->SetBarringL( setBarring, bsc );
+            //iModel.DataStore()->SetSSCommandInfo( iSupplementaryServicesCommandInfo );
+            //iModel.SendMessage( MEngineMonitor::EPEMessageIssuedSSRequest );
             break;
         case EInterrogate:
             iSupplementaryServicesCommandInfo.action = EPESSInterrogation;
-            iBarring->GetBarringStatusL( EServiceGroupVoice, setBarring.iType );
-            iModel.DataStore()->SetSSCommandInfo( iSupplementaryServicesCommandInfo );
-            iModel.SendMessage( MEngineMonitor::EPEMessageIssuedSSRequest );
+            //iBarring->GetBarringStatusL( EServiceGroupVoice, setBarring.iType );
+            //iModel.DataStore()->SetSSCommandInfo( iSupplementaryServicesCommandInfo );
+            //iModel.SendMessage( MEngineMonitor::EPEMessageIssuedSSRequest );
             break;
         case ERegister:
         case EErase:
@@ -966,7 +955,6 @@
  
     //creates the containers
     iSettings = CPsetContainer::NewL();
-    iObsContainer = CPsuiContainer::NewL();
 
     CleanupStack::Pop( this );
     }
@@ -996,13 +984,6 @@
 void CPEParserSSHandler::CreateCBObsL()
     {
     ConnectToSsEngineL();
-    //call barring observer and engine
-    if ( !iCbObserver )
-        {  
-        iCbObserver = iObsContainer->CreateCBObsL();
-        iBarring = iSettings->CreateCBObjectL( *iCbObserver );
-        iBarring->SetRequestObserver( this );
-        }
     }
 
 // -----------------------------------------------------------------------------
@@ -1028,13 +1009,6 @@
 void CPEParserSSHandler::CreateCliObsL()
     {
     ConnectToSsEngineL();
-    // cli observer and engine 
-    if ( !iCliObserver )
-        {  
-        iCliObserver = iObsContainer->CreateCliObsL();
-        iCli = iSettings->CreateCliObjectL( *iCliObserver );
-        iCli->SetRequestObserver( this );
-        }
     }   
      
 // -----------------------------------------------------------------------------
@@ -1074,11 +1048,6 @@
 //
 void CPEParserSSHandler::ResetVariables()
     {
-    delete iCbObserver;
-    iCbObserver = NULL;
-    delete iCliObserver;
-    iCliObserver = NULL;
-   
     delete iBarring;
     iBarring = NULL;
     
@@ -1086,8 +1055,6 @@
     iCli = NULL;
     delete iSettings;
     iSettings = NULL;
-    delete iObsContainer;
-    iObsContainer = NULL;
     
     iDivert = NULL;
     delete iCallDivertingHandler;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneengine/phonemodel/tsrc/run_auto_tests_qt.bat	Fri Sep 17 08:29:19 2010 +0300
@@ -0,0 +1,194 @@
+rem
+rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+rem All rights reserved.
+rem This component and the accompanying materials are made available
+rem under the terms of "Eclipse Public License v1.0"
+rem which accompanies this distribution, and is available
+rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
+rem
+rem Initial Contributors:
+rem Nokia Corporation - initial contribution.
+rem
+rem Contributors:
+rem
+rem Description:
+rem
+
+@echo off
+setlocal
+goto :startup 
+
+::::::::::::::::::::::::::::::::::::::::::::::::::::::
+:: function DEFAULT
+::
+:: Modify this function
+::  - TESTED_SRC can be changed to match tested code.
+::    Specifies path from testcode group directory to
+::    tested code
+::  - Add test directories to be runned
+::    ie. "call :build ut_projectdirectory" or use
+::    "for /f %%a in ('dir /b ut_*') do call :build %%a"
+::    which compiles, instruments and runs all test directories
+::    starting with "ut_".
+::::::::::::::::::::::::::::::::::::::::::::::::::::::
+:DEFAULT
+set TESTED_SRC=..\..\src\*.cpp
+
+for /f %%a in ('dir /b ut_*') do call :build %%a
+if [%DOMODULESTESTS%] EQU [TRUE] (
+for /f %%a in ('dir /b mt_*') do call :build %%a
+)
+
+call :finish
+goto :END
+
+::::::::::::::::::::::::::::::::::::::::::::::::::::::
+:: function STARTUP
+::
+:: Initializing script
+::::::::::::::::::::::::::::::::::::::::::::::::::::::
+:STARTUP
+
+set BUILDTESTS=TRUE
+set RUNTESTS=TRUE
+set INSTRUMENT=TRUE
+set REMOVEINSTRUMENT=TRUE
+set DOMODULESTESTS=TRUE
+set SBS_CALL=sbs --config winscw_udeb --keepgoing BUILD
+set PATH_TO_DLL=\epoc32\release\winscw\udeb
+set PATH_TO_COVERAGE_DATA=\coverage_data
+set PATH_TO_RESULT=\test_result
+
+if not exist %PATH_TO_COVERAGE_DATA% (
+mkdir %PATH_TO_COVERAGE_DATA%
+)
+
+if not exist %PATH_TO_RESULT% (
+mkdir %PATH_TO_RESULT%
+)
+
+if [%1] EQU [] ( goto default )
+
+call :%1
+call :%2
+call :%3
+call :%4
+call :%5
+echo Running tests = %RUNTESTS%
+echo Instrumenting tests = %INSTRUMENT%
+goto default
+
+:/NOCLEANUP
+set REMOVEINSTRUMENT=FALSE
+goto end
+
+:/NORUN
+set RUNTESTS=FALSE
+set REMOVEINSTRUMENT=FALSE
+goto end
+
+:/NOINSTRUMENT
+set INSTRUMENT=FALSE
+goto end
+
+:/NOBUILD
+set BUILDTESTS=FALSE
+goto end
+
+:/ONLYUNITTESTS
+set DOMODULESTESTS=FALSE
+goto end
+
+::::::::::::::::::::::::::::::::::::::::::::::::::::::
+:: function FINISH
+::
+:: Finishes run_auto_tests.bat
+::::::::::::::::::::::::::::::::::::::::::::::::::::::
+:FINISH
+
+if [%RUNTESTS%] EQU [TRUE] (
+call :runtests
+)
+
+if [%INSTRUMENT%] EQU [TRUE] (
+call :calculatecoverage
+)
+
+if [%REMOVEINSTRUMENT%] EQU [TRUE] (
+call :removecoverage
+)
+goto end
+
+::::::::::::::::::::::::::::::::::::::::::::::::::::::
+:: function BUILD
+::    param directory
+::
+:: builds test from given directory
+::::::::::::::::::::::::::::::::::::::::::::::::::::::
+:BUILD
+setlocal
+if [%BUILDTESTS%] EQU [FALSE] ( goto end )
+echo Building %1
+if not exist %1 ( 
+echo %1 Not found! 
+goto end
+)
+
+pushd .
+call cd %1
+call qmake
+call sbs --config winscw_udeb --keepgoing CLEAN
+if [%INSTRUMENT%] EQU [TRUE] (
+call ctcwrap -2comp -n %PATH_TO_COVERAGE_DATA%\%1 -i d -C "EXCLUDE=*" -C "NO_EXCLUDE=%TESTED_SRC%" "%SBS_CALL%"
+) else (
+call %SBS_CALL%
+)
+
+popd
+endlocal
+goto end
+
+
+::::::::::::::::::::::::::::::::::::::::::::::::::::::
+:: function RUNTESTS
+::
+:: NOTE! Function assumes that test binary is named according to test directory.
+::::::::::::::::::::::::::::::::::::::::::::::::::::::
+:RUNTESTS
+echo Running tests
+for /f %%a in ('dir /b ut_*') do (
+    call %PATH_TO_DLL%\%%a.exe -dtextshell --
+    move \epoc32\winscw\c\data\%%a.log %PATH_TO_RESULT%\%%a.log
+)
+goto end
+
+::::::::::::::::::::::::::::::::::::::::::::::::::::::
+:: function CALCULATECOVERAGE
+::
+:: Calculates test coverage. Generates html
+::::::::::::::::::::::::::::::::::::::::::::::::::::::
+:CALCULATECOVERAGE
+echo Calculating coverage
+ctcpost %PATH_TO_COVERAGE_DATA%\*.sym -p - | ctcmerge -i - -o profile.txt
+call ctc2html -t 70 -i profile.txt -o \coverage_result -nsb
+goto end
+
+::::::::::::::::::::::::::::::::::::::::::::::::::::::
+:: function REMOVECOVERAGE
+::
+:: Removes data from coverage directory
+::::::::::::::::::::::::::::::::::::::::::::::::::::::
+:REMOVECOVERAGE
+echo Removing deleting coverage data
+call del %PATH_TO_COVERAGE_DATA%\*.sym
+call del %PATH_TO_COVERAGE_DATA%\*.dat
+call del profile.txt
+goto end
+
+::::::::::::::::::::::::::::::::::::::::::::::::::::::
+:: function END
+::
+:: Prints done
+::::::::::::::::::::::::::::::::::::::::::::::::::::::
+:END
+echo Done!
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneengine/phonemodel/tsrc/ut_penetworkhandler/bld.inf	Fri Sep 17 08:29:19 2010 +0300
@@ -0,0 +1,41 @@
+// ============================================================================
+// * Makefile for building: ut_penetworkhandler
+// * Generated by qmake (2.01a) (Qt 4.7.0) on: 2010-08-26T13:06:43
+// * This file is generated by qmake and should not be modified by the
+// * user.
+// * Project:  ut_penetworkhandler.pro
+// * Template: app
+// ============================================================================
+
+#define BLD_INF_UT_PENETWORKHANDLER_0987D1D8
+
+
+prj_platforms
+
+WINSCW GCCE ARMV5 ARMV6
+
+
+prj_mmpfiles
+
+ut_penetworkhandler_0xEA9BEFAA.mmp
+
+prj_extensions
+
+START EXTENSION qt/qmake_extra_pre_targetdep.export
+OPTION PREDEP_TARGET Q:/sf/app/phone/phoneengine/phonemodel/tsrc/ut_penetworkhandler/moc_penetworkhandler.cpp
+OPTION DEPS Q:/sf/app/phone/phoneengine/phonemodel/inc/mpephonemodelinternal.h Q:/sf/app/phone/phoneengine/phonemodel/inc/penetworkhandler.h 
+OPTION COMMAND /epoc32/tools/moc.exe  -DSYMBIAN  -DUNICODE -DQT_KEYPAD_NAVIGATION -DQT_SOFTKEYS_ENABLED -DQT_USE_MATH_H_FLOATS -DHB_HAVE_QT_MOBILITY -DHB_EFFECTS_OPENVG -DHB_FILTER_EFFECTS -DHB_HAVE_PROTECTED_CHUNK -DHB_TOUCHFEEDBACK_TYPE_IS_LONGPRESS -DHB_GESTURE_FW -DHB_EFFECTS -DHB_TEXT_MEASUREMENT_UTILITY -DHB_HAVE_QT_MOBILITY -DHB_EFFECTS_OPENVG -DHB_FILTER_EFFECTS -DHB_HAVE_PROTECTED_CHUNK -DHB_TOUCHFEEDBACK_TYPE_IS_LONGPRESS -DHB_GESTURE_FW -DHB_EFFECTS -DHB_TEXT_MEASUREMENT_UTILITY -DQT_SVG_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB  -I"Q:/epoc32/include/mw/QtCore"  -I"Q:/epoc32/include/mw/QtNetwork"  -I"Q:/epoc32/include/mw/QtGui"  -I"Q:/epoc32/include/mw/QtSvg"  -I"Q:/epoc32/include/mw"  -I"Q:/epoc32/include/mw/QtTest"  -I"Q:/sf/mw/qt/mkspecs/common/symbian"  -I"Q:/epoc32/include"  -I"Q:/epoc32/include/stdapis"  -I"Q:/epoc32/include/stdapis/sys"  -I"Q:/epoc32/include/platform/mw"  -I"Q:/epoc32/include/platform"  -I"Q:/epoc32/include/platform/loc"  -I"Q:/epoc32/include/platform/mw/loc"  -I"Q:/epoc32/include/platform/loc/sc"  -I"Q:/epoc32/include/platform/mw/loc/sc"  -I"Q:/sf/app/phone/phoneengine/phonemodel/tsrc/ut_penetworkhandler"  -I"Q:/epoc32/include/platform/app"  -I"Q:/sf/app/phone/phoneengine/inc"  -I"Q:/sf/app/phone/inc"  -I"Q:/sf/app/phone/engineinfo/inc"  -I"Q:/epoc32/include/mw/hb/hbcore"  -I"Q:/epoc32/include/mw/hb/hbwidgets"  -I"Q:/epoc32/include/mw/hb/hbutils"  -I"Q:/epoc32/include/stdapis/stlportv5"  -I"Q:/sf/app/phone/phoneengine/phonemodel/inc"  -I"Q:/sf/app/phone/phoneengine/phonemodel/src" -DSYMBIAN q:/sf/app/phone/phoneengine/phonemodel/inc/penetworkhandler.h -o q:/sf/app/phone/phoneengine/phonemodel/tsrc/ut_penetworkhandler/moc_penetworkhandler.cpp
+END
+START EXTENSION qt/qmake_extra_pre_targetdep.export
+OPTION PREDEP_TARGET Q:/sf/app/phone/phoneengine/phonemodel/tsrc/ut_penetworkhandler/unit_tests.moc
+OPTION DEPS Q:/sf/app/phone/phoneengine/phonemodel/tsrc/ut_penetworkhandler/unit_tests.cpp 
+OPTION COMMAND /epoc32/tools/moc.exe  -DSYMBIAN  -DUNICODE -DQT_KEYPAD_NAVIGATION -DQT_SOFTKEYS_ENABLED -DQT_USE_MATH_H_FLOATS -DHB_HAVE_QT_MOBILITY -DHB_EFFECTS_OPENVG -DHB_FILTER_EFFECTS -DHB_HAVE_PROTECTED_CHUNK -DHB_TOUCHFEEDBACK_TYPE_IS_LONGPRESS -DHB_GESTURE_FW -DHB_EFFECTS -DHB_TEXT_MEASUREMENT_UTILITY -DHB_HAVE_QT_MOBILITY -DHB_EFFECTS_OPENVG -DHB_FILTER_EFFECTS -DHB_HAVE_PROTECTED_CHUNK -DHB_TOUCHFEEDBACK_TYPE_IS_LONGPRESS -DHB_GESTURE_FW -DHB_EFFECTS -DHB_TEXT_MEASUREMENT_UTILITY -DQT_SVG_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB  -I"Q:/epoc32/include/mw/QtCore"  -I"Q:/epoc32/include/mw/QtNetwork"  -I"Q:/epoc32/include/mw/QtGui"  -I"Q:/epoc32/include/mw/QtSvg"  -I"Q:/epoc32/include/mw"  -I"Q:/epoc32/include/mw/QtTest"  -I"Q:/sf/mw/qt/mkspecs/common/symbian"  -I"Q:/epoc32/include"  -I"Q:/epoc32/include/stdapis"  -I"Q:/epoc32/include/stdapis/sys"  -I"Q:/epoc32/include/platform/mw"  -I"Q:/epoc32/include/platform"  -I"Q:/epoc32/include/platform/loc"  -I"Q:/epoc32/include/platform/mw/loc"  -I"Q:/epoc32/include/platform/loc/sc"  -I"Q:/epoc32/include/platform/mw/loc/sc"  -I"Q:/sf/app/phone/phoneengine/phonemodel/tsrc/ut_penetworkhandler"  -I"Q:/epoc32/include/platform/app"  -I"Q:/sf/app/phone/phoneengine/inc"  -I"Q:/sf/app/phone/inc"  -I"Q:/sf/app/phone/engineinfo/inc"  -I"Q:/epoc32/include/mw/hb/hbcore"  -I"Q:/epoc32/include/mw/hb/hbwidgets"  -I"Q:/epoc32/include/mw/hb/hbutils"  -I"Q:/epoc32/include/stdapis/stlportv5"  -I"Q:/sf/app/phone/phoneengine/phonemodel/inc"  -I"Q:/sf/app/phone/phoneengine/phonemodel/src" -DSYMBIAN q:/sf/app/phone/phoneengine/phonemodel/tsrc/ut_penetworkhandler/unit_tests.cpp -o q:/sf/app/phone/phoneengine/phonemodel/tsrc/ut_penetworkhandler/unit_tests.moc
+END
+
+#if defined(WINSCW)
+#endif
+
+START EXTENSION qt/qmake_store_build
+END
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneengine/phonemodel/tsrc/ut_penetworkhandler/ctcerr.txt	Fri Sep 17 08:29:19 2010 +0300
@@ -0,0 +1,844 @@
+
+*******************************************************************************
+
+argv[0]: C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\mwldsym2.exe
+argv[1]: -version
+
+*** CTC++/ctcagent command: set PATH=c:\apps\sbs\win32\mingw\bin;c:\apps\sbs\win32\cygwin\bin;c:\apps\sbs\win32\bin;C:\Program Files\PC Connectivity Solution\;c:\apps\actperl\bin\;c:\apps\rvct22_686\bin;c:\apps\atool;\epoc32\tools;\epoc32\gcc\bin;c:\apps\ue;c:\apps\ccm65\bin;c:\apps\carbide\x86Build\Symbian_Tools\Command_Line_Tools;C:\WINNT\system32;C:\WINNT;C:\WINNT\System32\Wbem;C:\Program Files\Intel\WiFi\bin;S:\ORANT\BIN;C:\Program Files\Rational\common;C:\APPS\pclint;C:\APPS\ctc;C:\APPS\cltools;C:\APPS\ant\bin;C:\APPS\j2sdk_1.3.1_06\bin;C:\APPS\7zip;C:\APPS\unzip;C:\Program Files\TortoiseHg;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Nokia\FastTrace;\epoc32\tools\qt;c:\apps\sbs\bin;C:\APPS\actpython\.;C:\APPS\blocks\bin;C:\APPS\codescanner;C:\APPS\symdec;C:\APPS\bc;\epoc32\gcc_mingw\bin;C:\Program Files\TortoiseGit\bin; && C:\APPS\ctc\ctc -c C:\APPS\ctc\sym_cw\winscw.ini @C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\ctcopts.rsp mwldsym2 -version
+*** CTC++/ctcagent command status: 0
+
+
+*******************************************************************************
+
+argv[0]: C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\mwccsym2.exe
+argv[1]: -version
+
+*** CTC++/ctcagent command: set PATH=c:\apps\sbs\win32\mingw\bin;c:\apps\sbs\win32\cygwin\bin;c:\apps\sbs\win32\bin;C:\Program Files\PC Connectivity Solution\;c:\apps\actperl\bin\;c:\apps\rvct22_686\bin;c:\apps\atool;\epoc32\tools;\epoc32\gcc\bin;c:\apps\ue;c:\apps\ccm65\bin;c:\apps\carbide\x86Build\Symbian_Tools\Command_Line_Tools;C:\WINNT\system32;C:\WINNT;C:\WINNT\System32\Wbem;C:\Program Files\Intel\WiFi\bin;S:\ORANT\BIN;C:\Program Files\Rational\common;C:\APPS\pclint;C:\APPS\ctc;C:\APPS\cltools;C:\APPS\ant\bin;C:\APPS\j2sdk_1.3.1_06\bin;C:\APPS\7zip;C:\APPS\unzip;C:\Program Files\TortoiseHg;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Nokia\FastTrace;\epoc32\tools\qt;c:\apps\sbs\bin;C:\APPS\actpython\.;C:\APPS\blocks\bin;C:\APPS\codescanner;C:\APPS\symdec;C:\APPS\bc;\epoc32\gcc_mingw\bin;C:\Program Files\TortoiseGit\bin; && C:\APPS\ctc\ctc -c C:\APPS\ctc\sym_cw\winscw.ini @C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\ctcopts.rsp mwccsym2 -version
+*** CTC++/ctcagent command status: 0
+
+
+*******************************************************************************
+
+argv[0]: C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\mwccsym2.exe
+argv[1]: -c
+argv[2]: -align
+argv[3]: 4
+argv[4]: -warnings
+argv[5]: on
+argv[6]: -w
+argv[7]: nohidevirtual,nounusedexpr
+argv[8]: -msgstyle
+argv[9]: gcc
+argv[10]: -enum
+argv[11]: int
+argv[12]: -str
+argv[13]: pool
+argv[14]: -exc
+argv[15]: ms
+argv[16]: -trigraphs
+argv[17]: on
+argv[18]: -cwd
+argv[19]: source
+argv[20]: -g
+argv[21]: -O0
+argv[22]: -inline
+argv[23]: off
+argv[24]: -runtime
+argv[25]: staticmulti
+argv[26]: -wchar_t
+argv[27]: on
+argv[28]: -nostdinc
+argv[29]: -gccdepends
+argv[30]: -MD
+argv[31]: -cwd
+argv[32]: include
+argv[33]: -wchar_t
+argv[34]: on
+argv[35]: -d
+argv[36]: __wchar_t_defined
+argv[37]: -d
+argv[38]: __SYMBIAN32__
+argv[39]: -d
+argv[40]: __CW32__
+argv[41]: -d
+argv[42]: __WINS__
+argv[43]: -d
+argv[44]: __WINSCW__
+argv[45]: -d
+argv[46]: __SUPPORT_CPP_EXCEPTIONS__
+argv[47]: -d
+argv[48]: _UNICODE
+argv[49]: -d
+argv[50]: UNICODE
+argv[51]: -d
+argv[52]: QT_KEYPAD_NAVIGATION
+argv[53]: -d
+argv[54]: QT_SOFTKEYS_ENABLED
+argv[55]: -d
+argv[56]: QT_USE_MATH_H_FLOATS
+argv[57]: -d
+argv[58]: HB_HAVE_QT_MOBILITY
+argv[59]: -d
+argv[60]: HB_EFFECTS_OPENVG
+argv[61]: -d
+argv[62]: HB_FILTER_EFFECTS
+argv[63]: -d
+argv[64]: HB_HAVE_PROTECTED_CHUNK
+argv[65]: -d
+argv[66]: HB_TOUCHFEEDBACK_TYPE_IS_LONGPRESS
+argv[67]: -d
+argv[68]: HB_GESTURE_FW
+argv[69]: -d
+argv[70]: HB_EFFECTS
+argv[71]: -d
+argv[72]: HB_TEXT_MEASUREMENT_UTILITY
+argv[73]: -d
+argv[74]: HB_HAVE_QT_MOBILITY
+argv[75]: -d
+argv[76]: HB_EFFECTS_OPENVG
+argv[77]: -d
+argv[78]: HB_FILTER_EFFECTS
+argv[79]: -d
+argv[80]: HB_HAVE_PROTECTED_CHUNK
+argv[81]: -d
+argv[82]: HB_TOUCHFEEDBACK_TYPE_IS_LONGPRESS
+argv[83]: -d
+argv[84]: HB_GESTURE_FW
+argv[85]: -d
+argv[86]: HB_EFFECTS
+argv[87]: -d
+argv[88]: HB_TEXT_MEASUREMENT_UTILITY
+argv[89]: -d
+argv[90]: QT_SVG_LIB
+argv[91]: -d
+argv[92]: QT_GUI_LIB
+argv[93]: -d
+argv[94]: QT_NETWORK_LIB
+argv[95]: -d
+argv[96]: QT_CORE_LIB
+argv[97]: -d
+argv[98]: _DEBUG
+argv[99]: -d
+argv[100]: __SYMBIAN_STDCPP_SUPPORT__
+argv[101]: -d
+argv[102]: __EXE__
+argv[103]: -i-
+argv[104]: -i
+argv[105]: Q:/sf/app/phone/phoneengine/phonemodel/tsrc/ut_penetworkhandler
+argv[106]: -i
+argv[107]: Q:/epoc32/include/mw/QtCore
+argv[108]: -i
+argv[109]: Q:/epoc32/include/mw/QtNetwork
+argv[110]: -i
+argv[111]: Q:/epoc32/include/mw/QtGui
+argv[112]: -i
+argv[113]: Q:/epoc32/include/mw/QtSvg
+argv[114]: -i
+argv[115]: Q:/epoc32/include/mw
+argv[116]: -i
+argv[117]: Q:/epoc32/include/mw/QtTest
+argv[118]: -i
+argv[119]: Q:/sf/mw/qt/mkspecs/common/symbian
+argv[120]: -i
+argv[121]: Q:/epoc32/include
+argv[122]: -i
+argv[123]: Q:/epoc32/include/stdapis
+argv[124]: -i
+argv[125]: Q:/epoc32/include/stdapis/sys
+argv[126]: -i
+argv[127]: Q:/epoc32/include/platform/mw
+argv[128]: -i
+argv[129]: Q:/epoc32/include/platform
+argv[130]: -i
+argv[131]: Q:/epoc32/include/platform/loc
+argv[132]: -i
+argv[133]: Q:/epoc32/include/platform/mw/loc
+argv[134]: -i
+argv[135]: Q:/epoc32/include/platform/loc/sc
+argv[136]: -i
+argv[137]: Q:/epoc32/include/platform/mw/loc/sc
+argv[138]: -i
+argv[139]: Q:/sf/app/phone/phoneengine/phonemodel/tsrc/ut_penetworkhandler
+argv[140]: -i
+argv[141]: Q:/epoc32/include/platform/app
+argv[142]: -i
+argv[143]: Q:/sf/app/phone/phoneengine/inc
+argv[144]: -i
+argv[145]: Q:/sf/app/phone/inc
+argv[146]: -i
+argv[147]: Q:/sf/app/phone/engineinfo/inc
+argv[148]: -i
+argv[149]: Q:/epoc32/include/mw/hb/hbcore
+argv[150]: -i
+argv[151]: Q:/epoc32/include/mw/hb/hbwidgets
+argv[152]: -i
+argv[153]: Q:/epoc32/include/mw/hb/hbutils
+argv[154]: -i
+argv[155]: Q:/epoc32/include/stdapis/stlportv5
+argv[156]: -i
+argv[157]: Q:/sf/app/phone/phoneengine/phonemodel/inc
+argv[158]: -i
+argv[159]: Q:/sf/app/phone/phoneengine/phonemodel/src
+argv[160]: -i
+argv[161]: Q:/epoc32/include
+argv[162]: -i
+argv[163]: Q:/epoc32/include/stdapis
+argv[164]: -include
+argv[165]: feature_settings.hrh
+argv[166]: -o
+argv[167]: Q:/epoc32/build/ut_penetworkhandler/c_2302b1050784449d/ut_penetworkhandler_exe/winscw/udeb/ut_penetworkhandler_UID_.o
+argv[168]: Q:/epoc32/build/ut_penetworkhandler/c_2302b1050784449d/ut_penetworkhandler_edler.cpp
+
+xe/winscw/udeb/ut_penetworkhandler.UID.CPP
+
+*** CTC++/ctcagent command: set PATH=c:\apps\sbs\win32\mingw\bin;c:\apps\sbs\win32\cygwin\bin;c:\apps\sbs\win32\bin;C:\Program Files\PC Connectivity Solution\;c:\apps\actperl\bin\;c:\apps\rvct22_686\bin;c:\apps\atool;\epoc32\tools;\epoc32\gcc\bin;c:\apps\ue;c:\apps\ccm65\bin;c:\apps\carbide\x86Build\Symbian_Tools\Command_Line_Tools;C:\WINNT\system32;C:\WINNT;C:\WINNT\System32\Wbem;C:\Program Files\Intel\WiFi\bin;S:\ORANT\BIN;C:\Program Files\Rational\common;C:\APPS\pclint;C:\APPS\ctc;C:\APPS\cltools;C:\APPS\ant\bin;C:\APPS\j2sdk_1.3.1_06\bin;C:\APPS\7zip;C:\APPS\unzip;C:\Program Files\TortoiseHg;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Nokia\FastTrace;\epoc32\tools\qt;c:\apps\sbs\bin;C:\APPS\actpython\.;C:\APPS\blocks\bin;C:\APPS\codescanner;C:\APPS\symdec;C:\APPS\bc;\epoc32\gcc_mingw\bin;C:\Program Files\TortoiseGit\bin; && C:\APPS\ctc\ctc -c C:\APPS\ctc\sym_cw\winscw.ini @C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\ctcopts.rsp mwccsym2  @ctc-mwccsym2-20036.rsp
+*** CTC++/ctcagent command: set PATH=c:\apps\sbs\win32\mingw\bin;c:\apps\sbs\win32\cygwin\bin;c:\apps\sbs\win32\bin;C:\Program Files\PC Connectivity Solution\;c:\apps\actperl\bin\;c:\apps\rvct22_686\bin;c:\apps\atool;\epoc32\tools;\epoc32\gcc\bin;c:\apps\ue;c:\apps\ccm65\bin;c:\apps\carbide\x86Build\Symbian_Tools\Command_Line_Tools;C:\WINNT\system32;C:\WINNT;C:\WINNT\System32\Wbem;C:\Program Files\Intel\WiFi\bin;S:\ORANT\BIN;C:\Program Files\Rational\common;C:\APPS\pclint;C:\APPS\ctc;C:\APPS\cltools;C:\APPS\ant\bin;C:\APPS\j2sdk_1.3.1_06\bin;C:\APPS\7zip;C:\APPS\unzip;C:\Program Files\TortoiseHg;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Nokia\FastTrace;\epoc32\tools\qt;c:\apps\sbs\bin;C:\APPS\actpython\.;C:\APPS\blocks\bin;C:\APPS\codescanner;C:\APPS\symdec;C:\APPS\bc;\epoc32\gcc_mingw\bin;C:\Program Files\TortoiseGit\bin; && C:\APPS\ctc\ctc -c C:\APPS\ctc\sym_cw\winscw.ini @C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\ctcopts.rsp mwccsym2  @ctc-mwccsym2-21672.rsp
+*** CTC++/ctcagent command: set PATH=c:\apps\sbs\win32\mingw\bin;c:\apps\sbs\win32\cygwin\bin;c:\apps\sbs\win32\bin;C:\Program Files\PC Connectivity Solution\;c:\apps\actperl\bin\;c:\apps\rvct22_686\bin;c:\apps\atool;\epoc32\tools;\epoc32\gcc\bin;c:\apps\ue;c:\apps\ccm65\bin;c:\apps\carbide\x86Build\Symbian_Tools\Command_Line_Tools;C:\WINNT\system32;C:\WINNT;C:\WINNT\System32\Wbem;C:\Program Files\Intel\WiFi\bin;S:\ORANT\BIN;C:\Program Files\Rational\common;C:\APPS\pclint;C:\APPS\ctc;C:\APPS\cltools;C:\APPS\ant\bin;C:\APPS\j2sdk_1.3.1_06\bin;C:\APPS\7zip;C:\APPS\unzip;C:\Program Files\TortoiseHg;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Nokia\FastTrace;\epoc32\tools\qt;c:\apps\sbs\bin;C:\APPS\actpython\.;C:\APPS\blocks\bin;C:\APPS\codescanner;C:\APPS\symdec;C:\APPS\bc;\epoc32\gcc_mingw\bin;C:\Program Files\TortoiseGit\bin; && C:\APPS\ctc\ctc -c C:\APPS\ctc\sym_cw\winscw.ini @C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\ctcopts.rsp mwccsym2  @ctc-mwccsym2-20108.rsp
+
+*******************************************************************************
+
+argv[0]: C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\mwccsym2.exe
+argv[1]: -c
+argv[2]: -align
+argv[3]: 4
+argv[4]: -warnings
+argv[5]: on
+argv[6]: -w
+argv[7]: nohidevirtual,nounusedexpr
+argv[8]: -msgstyle
+argv[9]: gcc
+argv[10]: -enum
+argv[11]: int
+argv[12]: -str
+argv[13]: pool
+argv[14]: -exc
+argv[15]: ms
+argv[16]: -trigraphs
+argv[17]: on
+argv[18]: -cwd
+argv[19]: source
+argv[20]: -g
+argv[21]: -O0
+argv[22]: -inline
+argv[23]: off
+argv[24]: -runtime
+argv[25]: staticmulti
+argv[26]: -wchar_t
+argv[27]: on
+argv[28]: -nostdinc
+argv[29]: -gccdepends
+argv[30]: -MD
+argv[31]: -cwd
+argv[32]: include
+argv[33]: -wchar_t
+argv[34]: on
+argv[35]: -d
+argv[36]: __wchar_t_defined
+argv[37]: -d
+argv[38]: __SYMBIAN32__
+argv[39]: -d
+argv[40]: __CW32__
+argv[41]: -d
+argv[42]: __WINS__
+argv[43]: -d
+argv[44]: __WINSCW__
+argv[45]: -d
+argv[46]: __SUPPORT_CPP_EXCEPTIONS__
+argv[47]: -d
+argv[48]: _UNICODE
+argv[49]: -d
+argv[50]: UNICODE
+argv[51]: -d
+argv[52]: QT_KEYPAD_NAVIGATION
+argv[53]: -d
+argv[54]: QT_SOFTKEYS_ENABLED
+argv[55]: -d
+argv[56]: QT_USE_MATH_H_FLOATS
+argv[57]: -d
+argv[58]: HB_HAVE_QT_MOBILITY
+argv[59]: -d
+argv[60]: HB_EFFECTS_OPENVG
+argv[61]: -d
+argv[62]: HB_FILTER_EFFECTS
+argv[63]: -d
+argv[64]: HB_HAVE_PROTECTED_CHUNK
+argv[65]: -d
+argv[66]: HB_TOUCHFEEDBACK_TYPE_IS_LONGPRESS
+argv[67]: -d
+argv[68]: HB_GESTURE_FW
+argv[69]: -d
+argv[70]: HB_EFFECTS
+argv[71]: -d
+argv[72]: HB_TEXT_MEASUREMENT_UTILITY
+argv[73]: -d
+argv[74]: HB_HAVE_QT_MOBILITY
+argv[75]: -d
+argv[76]: HB_EFFECTS_OPENVG
+argv[77]: -d
+argv[78]: HB_FILTER_EFFECTS
+argv[79]: -d
+argv[80]: HB_HAVE_PROTECTED_CHUNK
+argv[81]: -d
+argv[82]: HB_TOUCHFEEDBACK_TYPE_IS_LONGPRESS
+argv[83]: -d
+argv[84]: HB_GESTURE_FW
+argv[85]: -d
+argv[86]: HB_EFFECTS
+argv[87]: -d
+argv[88]: HB_TEXT_MEASUREMENT_UTILITY
+argv[89]: -d
+argv[90]: QT_SVG_LIB
+argv[91]: -d
+argv[92]: QT_GUI_LIB
+argv[93]: -d
+argv[94]: QT_NETWORK_LIB
+argv[95]: -d
+argv[96]: QT_CORE_LIB
+argv[97]: -d
+argv[98]: _DEBUG
+argv[99]: -d
+argv[100]: __SYMBIAN_STDCPP_SUPPORT__
+argv[101]: -d
+argv[102]: __EXE__
+argv[103]: -i-
+argv[104]: -i
+argv[105]: Q:/sf/app/phone/phoneengine/phonemodel/tsrc/ut_penetworkhandler
+argv[106]: -i
+argv[107]: Q:/epoc32/include/mw/QtCore
+argv[108]: -i
+argv[109]: Q:/epoc32/include/mw/QtNetwork
+argv[110]: -i
+argv[111]: Q:/epoc32/include/mw/QtGui
+argv[112]: -i
+argv[113]: Q:/epoc32/include/mw/QtSvg
+argv[114]: -i
+argv[115]: Q:/epoc32/include/mw
+argv[116]: -i
+argv[117]: Q:/epoc32/include/mw/QtTest
+argv[118]: -i
+argv[119]: Q:/sf/mw/qt/mkspecs/common/symbian
+argv[120]: -i
+argv[121]: Q:/epoc32/include
+argv[122]: -i
+argv[123]: Q:/epoc32/include/stdapis
+argv[124]: -i
+argv[125]: Q:/epoc32/include/stdapis/sys
+argv[126]: -i
+argv[127]: Q:/epoc32/include/platform/mw
+argv[128]: -i
+argv[129]: Q:/epoc32/include/platform
+argv[130]: -i
+argv[131]: Q:/epoc32/include/platform/loc
+argv[132]: -i
+argv[133]: Q:/epoc32/include/platform/mw/loc
+argv[134]: -i
+argv[135]: Q:/epoc32/include/platform/loc/sc
+argv[136]: -i
+argv[137]: Q:/epoc32/include/platform/mw/loc/sc
+argv[138]: -i
+argv[139]: Q:/sf/app/phone/phoneengine/phonemodel/tsrc/ut_penetworkhandler
+argv[140]: -i
+argv[141]: Q:/epoc32/include/platform/app
+argv[142]: -i
+argv[143]: Q:/sf/app/phone/phoneengine/inc
+argv[144]: -i
+argv[145]: Q:/sf/app/phone/inc
+argv[146]: -i
+argv[147]: Q:/sf/app/phone/engineinfo/inc
+argv[148]: -i
+argv[149]: Q:/epoc32/include/mw/hb/hbcore
+argv[150]: -i
+argv[151]: Q:/epoc32/include/mw/hb/hbwidgets
+argv[152]: -i
+argv[153]: Q:/epoc32/include/mw/hb/hbutils
+argv[154]: -i
+argv[155]: Q:/epoc32/include/stdapis/stlportv5
+argv[156]: -i
+argv[157]: Q:/sf/app/phone/phoneengine/phonemodel/inc
+argv[158]: -i
+argv[159]: Q:/sf/app/phone/phoneengine/phonemodel/src
+argv[160]: -i
+argv[161]: Q:/epoc32/include
+argv[162]: -i
+argv[163]: Q:/epoc32/include/stdapis
+argv[164]: -include
+argv[165]: feature_settings.hrh
+argv[166]: -o
+argv[167]: Q:/epoc32/build/ut_penetworkhandler/c_2302b1050784449d/ut_penetworkhandler_exe/winscw/udeb/unit_tests.o
+argv[168]: Q:/sf/app/phone/phoneengine/phonemodel/tsrc/ut_penetworkhandler/unit_tests.cpp
+
+*** CTC++/ctcagent command: set PATH=c:\apps\sbs\win32\mingw\bin;c:\apps\sbs\win32\cygwin\bin;c:\apps\sbs\win32\bin;C:\Program Files\PC Connectivity Solution\;c:\apps\actperl\bin\;c:\apps\rvct22_686\bin;c:\apps\atool;\epoc32\tools;\epoc32\gcc\bin;c:\apps\ue;c:\apps\ccm65\bin;c:\apps\carbide\x86Build\Symbian_Tools\Command_Line_Tools;C:\WINNT\system32;C:\WINNT;C:\WINNT\System32\Wbem;C:\Program Files\Intel\WiFi\bin;S:\ORANT\BIN;C:\Program Files\Rational\common;C:\APPS\pclint;C:\APPS\ctc;C:\APPS\cltools;C:\APPS\ant\bin;C:\APPS\j2sdk_1.3.1_06\bin;C:\APPS\7zip;C:\APPS\unzip;C:\Program Files\TortoiseHg;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Nokia\FastTrace;\epoc32\tools\qt;c:\apps\sbs\bin;C:\APPS\actpython\.;C:\APPS\blocks\bin;C:\APPS\codescanner;C:\APPS\symdec;C:\APPS\bc;\epoc32\gcc_mingw\bin;C:\Program Files\TortoiseGit\bin; && C:\APPS\ctc\ctc -c C:\APPS\ctc\sym_cw\winscw.ini @C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\ctcopts.rsp mwccsym2  @ctc-mwccsym2-20788.rsp
+*** CTC++/ctcagent command status: 0
+
+*** CTC++/ctcagent command status: 0
+
+*** CTC++/ctcagent command status: 0
+
+*** CTC++/ctcagent command status: 0
+
+
+*******************************************************************************
+
+argv[0]: C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\mwldsym2.exe
+argv[1]: -msgstyle
+argv[2]: gcc
+argv[3]: -stdlib
+argv[4]: -subsystem
+argv[5]: windows
+argv[6]: -g
+argv[7]: -heapreserve=8192
+argv[8]: -heapcommit=128
+argv[9]: -m
+argv[10]: ?_E32Bootstrap@@YGXXZ
+argv[11]: Q:/epoc32/release/winscw/udeb/eexe.lib
+argv[12]: Q:/epoc32/release/winscw/udeb/qtmain.lib
+argv[13]: Q:/epoc32/release/winscw/udeb/QtSystemInfo.lib
+argv[14]: Q:/epoc32/release/winscw/udeb/engineinfo.lib
+argv[15]: Q:/epoc32/release/winscw/udeb/QtTest.lib
+argv[16]: Q:/epoc32/release/winscw/udeb/HbCore.lib
+argv[17]: Q:/epoc32/release/winscw/udeb/HbWidgets.lib
+argv[18]: Q:/epoc32/release/winscw/udeb/HbUtils.lib
+argv[19]: Q:/epoc32/release/winscw/udeb/libstdcppv5.lib
+argv[20]: Q:/epoc32/release/winscw/udeb/QtSvg.lib
+argv[21]: Q:/epoc32/release/winscw/udeb/QtGui.lib
+argv[22]: Q:/epoc32/release/winscw/udeb/QtNetwork.lib
+argv[23]: Q:/epoc32/release/winscw/udeb/QtCore.lib
+argv[24]: Q:/epoc32/release/winscw/udeb/libpthread.lib
+argv[25]: Q:/epoc32/release/winscw/udeb/libc.lib
+argv[26]: Q:/epoc32/release/winscw/udeb/libm.lib
+argv[27]: Q:/epoc32/release/winscw/udeb/euser.lib
+argv[28]: Q:/epoc32/release/winscw/udeb/libdl.lib
+argv[29]: -o
+argv[30]: Q:/epoc32/release/winscw/udeb/ut_penetworkhandler.exe
+argv[31]: -noimplib
+argv[32]: -l
+argv[33]: Q:/epoc32/build/ut_penetworkhandler/c_2302b1050784449d/ut_penetworkhandler_exe/winscw/udeb
+argv[34]: -search
+argv[35]: @Q:/epoc32/build/ut_penetworkhandler/c_2302b1050784449d/ut_penetworkhandler_exe/winscw/udeb/ut_penetworkhandler_udeb_objects.lrf
+
+*** CTC++/ctcagent command: set PATH=c:\apps\sbs\win32\mingw\bin;c:\apps\sbs\win32\cygwin\bin;c:\apps\sbs\win32\bin;C:\Program Files\PC Connectivity Solution\;c:\apps\actperl\bin\;c:\apps\rvct22_686\bin;c:\apps\atool;\epoc32\tools;\epoc32\gcc\bin;c:\apps\ue;c:\apps\ccm65\bin;c:\apps\carbide\x86Build\Symbian_Tools\Command_Line_Tools;C:\WINNT\system32;C:\WINNT;C:\WINNT\System32\Wbem;C:\Program Files\Intel\WiFi\bin;S:\ORANT\BIN;C:\Program Files\Rational\common;C:\APPS\pclint;C:\APPS\ctc;C:\APPS\cltools;C:\APPS\ant\bin;C:\APPS\j2sdk_1.3.1_06\bin;C:\APPS\7zip;C:\APPS\unzip;C:\Program Files\TortoiseHg;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Nokia\FastTrace;\epoc32\tools\qt;c:\apps\sbs\bin;C:\APPS\actpython\.;C:\APPS\blocks\bin;C:\APPS\codescanner;C:\APPS\symdec;C:\APPS\bc;\epoc32\gcc_mingw\bin;C:\Program Files\TortoiseGit\bin; && C:\APPS\ctc\ctc -c C:\APPS\ctc\sym_cw\winscw.ini @C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\ctcopts.rsp mwldsym2  @ctc-mwldsym2-19660.rsp
+*** CTC++/ctcagent command status: 0
+
+
+*******************************************************************************
+
+argv[0]: C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\mwldsym2.exe
+argv[1]: -version
+
+*** CTC++/ctcagent command: set PATH=c:\apps\sbs\win32\mingw\bin;c:\apps\sbs\win32\cygwin\bin;c:\apps\sbs\win32\bin;C:\Program Files\PC Connectivity Solution\;c:\apps\actperl\bin\;c:\apps\rvct22_686\bin;c:\apps\atool;\epoc32\tools;\epoc32\gcc\bin;c:\apps\ue;c:\apps\ccm65\bin;c:\apps\carbide\x86Build\Symbian_Tools\Command_Line_Tools;C:\WINNT\system32;C:\WINNT;C:\WINNT\System32\Wbem;C:\Program Files\Intel\WiFi\bin;S:\ORANT\BIN;C:\Program Files\Rational\common;C:\APPS\pclint;C:\APPS\ctc;C:\APPS\cltools;C:\APPS\ant\bin;C:\APPS\j2sdk_1.3.1_06\bin;C:\APPS\7zip;C:\APPS\unzip;C:\Program Files\TortoiseHg;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Nokia\FastTrace;\epoc32\tools\qt;c:\apps\sbs\bin;C:\APPS\actpython\.;C:\APPS\blocks\bin;C:\APPS\codescanner;C:\APPS\symdec;C:\APPS\bc;\epoc32\gcc_mingw\bin;C:\Program Files\TortoiseGit\bin; && C:\APPS\ctc\ctc -c C:\APPS\ctc\sym_cw\winscw.ini @C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\ctcopts.rsp mwldsym2 -version
+*** CTC++/ctcagent command status: 0
+
+
+*******************************************************************************
+
+argv[0]: C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\mwccsym2.exe
+argv[1]: -version
+
+*** CTC++/ctcagent command: set PATH=c:\apps\sbs\win32\mingw\bin;c:\apps\sbs\win32\cygwin\bin;c:\apps\sbs\win32\bin;C:\Program Files\PC Connectivity Solution\;c:\apps\actperl\bin\;c:\apps\rvct22_686\bin;c:\apps\atool;\epoc32\tools;\epoc32\gcc\bin;c:\apps\ue;c:\apps\ccm65\bin;c:\apps\carbide\x86Build\Symbian_Tools\Command_Line_Tools;C:\WINNT\system32;C:\WINNT;C:\WINNT\System32\Wbem;C:\Program Files\Intel\WiFi\bin;S:\ORANT\BIN;C:\Program Files\Rational\common;C:\APPS\pclint;C:\APPS\ctc;C:\APPS\cltools;C:\APPS\ant\bin;C:\APPS\j2sdk_1.3.1_06\bin;C:\APPS\7zip;C:\APPS\unzip;C:\Program Files\TortoiseHg;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Nokia\FastTrace;\epoc32\tools\qt;c:\apps\sbs\bin;C:\APPS\actpython\.;C:\APPS\blocks\bin;C:\APPS\codescanner;C:\APPS\symdec;C:\APPS\bc;\epoc32\gcc_mingw\bin;C:\Program Files\TortoiseGit\bin; && C:\APPS\ctc\ctc -c C:\APPS\ctc\sym_cw\winscw.ini @C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\ctcopts.rsp mwccsym2 -version
+*** CTC++/ctcagent command status: 0
+
+
+*******************************************************************************
+
+argv[0]: C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\mwccsym2.exe
+argv[1]: -c
+argv[2]: -align
+argv[3]: 4
+argv[4]: -warnings
+argv[5]: on
+argv[6]: -w
+argv[7]: nohidevirtual,nounusedexpr
+argv[8]: -msgstyle
+argv[9]: gcc
+argv[10]: -enum
+argv[11]: int
+argv[12]: -str
+argv[13]: pool
+argv[14]: -exc
+argv[15]: ms
+argv[16]: -trigraphs
+argv[17]: on
+argv[18]: -cwd
+argv[19]: source
+argv[20]: -g
+argv[21]: -O0
+argv[22]: -inline
+argv[23]: off
+argv[24]: -runtime
+argv[25]: staticmulti
+argv[26]: -wchar_t
+argv[27]: on
+argv[28]: -nostdinc
+argv[29]: -gccdepends
+argv[30]: -MD
+argv[31]: -cwd
+argv[32]: include
+argv[33]: -wchar_t
+argv[34]: on
+argv[35]: -d
+argv[36]: __wchar_t_defined
+argv[37]: -d
+argv[38]: __SYMBIAN32__
+argv[39]: -d
+argv[40]: __CW32__
+argv[41]: -d
+argv[42]: __WINS__
+argv[43]: -d
+argv[44]: __WINSCW__
+argv[45]: -d
+argv[46]: __SUPPORT_CPP_EXCEPTIONS__
+argv[47]: -d
+argv[48]: _UNICODE
+argv[49]: -d
+argv[50]: UNICODE
+argv[51]: -d
+argv[52]: QT_KEYPAD_NAVIGATION
+argv[53]: -d
+argv[54]: QT_SOFTKEYS_ENABLED
+argv[55]: -d
+argv[56]: QT_USE_MATH_H_FLOATS
+argv[57]: -d
+argv[58]: HB_HAVE_QT_MOBILITY
+argv[59]: -d
+argv[60]: HB_EFFECTS_OPENVG
+argv[61]: -d
+argv[62]: HB_FILTER_EFFECTS
+argv[63]: -d
+argv[64]: HB_HAVE_PROTECTED_CHUNK
+argv[65]: -d
+argv[66]: HB_TOUCHFEEDBACK_TYPE_IS_LONGPRESS
+argv[67]: -d
+argv[68]: HB_GESTURE_FW
+argv[69]: -d
+argv[70]: HB_EFFECTS
+argv[71]: -d
+argv[72]: HB_TEXT_MEASUREMENT_UTILITY
+argv[73]: -d
+argv[74]: HB_HAVE_QT_MOBILITY
+argv[75]: -d
+argv[76]: HB_EFFECTS_OPENVG
+argv[77]: -d
+argv[78]: HB_FILTER_EFFECTS
+argv[79]: -d
+argv[80]: HB_HAVE_PROTECTED_CHUNK
+argv[81]: -d
+argv[82]: HB_TOUCHFEEDBACK_TYPE_IS_LONGPRESS
+argv[83]: -d
+argv[84]: HB_GESTURE_FW
+argv[85]: -d
+argv[86]: HB_EFFECTS
+argv[87]: -d
+argv[88]: HB_TEXT_MEASUREMENT_UTILITY
+argv[89]: -d
+argv[90]: QT_SVG_LIB
+argv[91]: -d
+argv[92]: QT_GUI_LIB
+argv[93]: -d
+argv[94]: QT_NETWORK_LIB
+argv[95]: -d
+argv[96]: QT_CORE_LIB
+argv[97]: -d
+argv[98]: _DEBUG
+argv[99]: -d
+argv[100]: __SYMBIAN_STDCPP_SUPPORT__
+argv[101]: -d
+argv[102]: __EXE__
+argv[103]: -i-
+argv[104]: -i
+argv[105]: Q:/sf/app/phone/phoneengine/phonemodel/tsrc/ut_penetworkhandler
+argv[106]: -i
+argv[107]: Q:/epoc32/include/mw/QtCore
+argv[108]: -i
+argv[109]: Q:/epoc32/include/mw/QtNetwork
+argv[110]: -i
+argv[111]: Q:/epoc32/include/mw/QtGui
+argv[112]: -i
+argv[113]: Q:/epoc32/include/mw/QtSvg
+argv[114]: -i
+argv[115]: Q:/epoc32/include/mw
+argv[116]: -i
+argv[117]: Q:/epoc32/include/mw/QtTest
+argv[118]: -i
+argv[119]: Q:/sf/mw/qt/mkspecs/common/symbian
+argv[120]: -i
+argv[121]: Q:/epoc32/include
+argv[122]: -i
+argv[123]: Q:/epoc32/include/stdapis
+argv[124]: -i
+argv[125]: Q:/epoc32/include/stdapis/sys
+argv[126]: -i
+argv[127]: Q:/epoc32/include/platform/mw
+argv[128]: -i
+argv[129]: Q:/epoc32/include/platform
+argv[130]: -i
+argv[131]: Q:/epoc32/include/platform/loc
+argv[132]: -i
+argv[133]: Q:/epoc32/include/platform/mw/loc
+argv[134]: -i
+argv[135]: Q:/epoc32/include/platform/loc/sc
+argv[136]: -i
+argv[137]: Q:/epoc32/include/platform/mw/loc/sc
+argv[138]: -i
+argv[139]: Q:/sf/app/phone/phoneengine/phonemodel/tsrc/ut_penetworkhandler
+argv[140]: -i
+argv[141]: Q:/epoc32/include/platform/app
+argv[142]: -i
+argv[143]: Q:/sf/app/phone/phoneengine/inc
+argv[144]: -i
+argv[145]: Q:/sf/app/phone/inc
+argv[146]: -i
+argv[147]: Q:/sf/app/phone/engineinfo/inc
+argv[148]: -i
+argv[149]: Q:/epoc32/include/mw/hb/hbcore
+argv[150]: -i
+argv[151]: Q:/epoc32/include/mw/hb/hbwidgets
+argv[152]: -i
+argv[153]: Q:/epoc32/include/mw/hb/hbutils
+argv[154]: -i
+argv[155]: Q:/epoc32/include/stdapis/stlportv5
+argv[156]: -i
+argv[157]: Q:/sf/app/phone/phoneengine/phonemodel/inc
+argv[158]: -i
+argv[159]: Q:/sf/app/phone/phoneengine/phonemodel/src
+argv[160]: -i
+argv[161]: Q:/epoc32/include
+argv[162]: -i
+argv[163]: Q:/epoc32/include/stdapis
+argv[164]: -include
+argv[165]: feature_settings.hrh
+argv[166]: -o
+argv[167]: Q:/epoc32/build/ut_penetworkhandler/c_2302b1050784449d/ut_penetworkhandler_exe/winscw/udeb/penetworkhandler.o
+argv[168]: Q:/sf/app/phone/phoneengine/phonemodel/src/penetworkhandler.cpp
+
+enetworkhandler_edler.cpp
+
+xe/winscw/udeb/ut_penetworkhandler.UID.CPP
+
+*** CTC++/ctcagent command: set PATH=c:\apps\sbs\win32\mingw\bin;c:\apps\sbs\win32\cygwin\bin;c:\apps\sbs\win32\bin;C:\Program Files\PC Connectivity Solution\;c:\apps\actperl\bin\;c:\apps\rvct22_686\bin;c:\apps\atool;\epoc32\tools;\epoc32\gcc\bin;c:\apps\ue;c:\apps\ccm65\bin;c:\apps\carbide\x86Build\Symbian_Tools\Command_Line_Tools;C:\WINNT\system32;C:\WINNT;C:\WINNT\System32\Wbem;C:\Program Files\Intel\WiFi\bin;S:\ORANT\BIN;C:\Program Files\Rational\common;C:\APPS\pclint;C:\APPS\ctc;C:\APPS\cltools;C:\APPS\ant\bin;C:\APPS\j2sdk_1.3.1_06\bin;C:\APPS\7zip;C:\APPS\unzip;C:\Program Files\TortoiseHg;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Nokia\FastTrace;\epoc32\tools\qt;c:\apps\sbs\bin;C:\APPS\actpython\.;C:\APPS\blocks\bin;C:\APPS\codescanner;C:\APPS\symdec;C:\APPS\bc;\epoc32\gcc_mingw\bin;C:\Program Files\TortoiseGit\bin; && C:\APPS\ctc\ctc -c C:\APPS\ctc\sym_cw\winscw.ini @C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\ctcopts.rsp mwccsym2  @ctc-mwccsym2-25540.rsp
+*** CTC++/ctcagent command: set PATH=c:\apps\sbs\win32\mingw\bin;c:\apps\sbs\win32\cygwin\bin;c:\apps\sbs\win32\bin;C:\Program Files\PC Connectivity Solution\;c:\apps\actperl\bin\;c:\apps\rvct22_686\bin;c:\apps\atool;\epoc32\tools;\epoc32\gcc\bin;c:\apps\ue;c:\apps\ccm65\bin;c:\apps\carbide\x86Build\Symbian_Tools\Command_Line_Tools;C:\WINNT\system32;C:\WINNT;C:\WINNT\System32\Wbem;C:\Program Files\Intel\WiFi\bin;S:\ORANT\BIN;C:\Program Files\Rational\common;C:\APPS\pclint;C:\APPS\ctc;C:\APPS\cltools;C:\APPS\ant\bin;C:\APPS\j2sdk_1.3.1_06\bin;C:\APPS\7zip;C:\APPS\unzip;C:\Program Files\TortoiseHg;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Nokia\FastTrace;\epoc32\tools\qt;c:\apps\sbs\bin;C:\APPS\actpython\.;C:\APPS\blocks\bin;C:\APPS\codescanner;C:\APPS\symdec;C:\APPS\bc;\epoc32\gcc_mingw\bin;C:\Program Files\TortoiseGit\bin; && C:\APPS\ctc\ctc -c C:\APPS\ctc\sym_cw\winscw.ini @C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\ctcopts.rsp mwccsym2  @ctc-mwccsym2-23408.rsp
+*** CTC++/ctcagent command: set PATH=c:\apps\sbs\win32\mingw\bin;c:\apps\sbs\win32\cygwin\bin;c:\apps\sbs\win32\bin;C:\Program Files\PC Connectivity Solution\;c:\apps\actperl\bin\;c:\apps\rvct22_686\bin;c:\apps\atool;\epoc32\tools;\epoc32\gcc\bin;c:\apps\ue;c:\apps\ccm65\bin;c:\apps\carbide\x86Build\Symbian_Tools\Command_Line_Tools;C:\WINNT\system32;C:\WINNT;C:\WINNT\System32\Wbem;C:\Program Files\Intel\WiFi\bin;S:\ORANT\BIN;C:\Program Files\Rational\common;C:\APPS\pclint;C:\APPS\ctc;C:\APPS\cltools;C:\APPS\ant\bin;C:\APPS\j2sdk_1.3.1_06\bin;C:\APPS\7zip;C:\APPS\unzip;C:\Program Files\TortoiseHg;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Nokia\FastTrace;\epoc32\tools\qt;c:\apps\sbs\bin;C:\APPS\actpython\.;C:\APPS\blocks\bin;C:\APPS\codescanner;C:\APPS\symdec;C:\APPS\bc;\epoc32\gcc_mingw\bin;C:\Program Files\TortoiseGit\bin; && C:\APPS\ctc\ctc -c C:\APPS\ctc\sym_cw\winscw.ini @C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\ctcopts.rsp mwccsym2  @ctc-mwccsym2-24688.rsp
+
+*******************************************************************************
+
+argv[0]: C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\mwccsym2.exe
+argv[1]: -c
+argv[2]: -align
+argv[3]: 4
+argv[4]: -warnings
+argv[5]: on
+argv[6]: -w
+argv[7]: nohidevirtual,nounusedexpr
+argv[8]: -msgstyle
+argv[9]: gcc
+argv[10]: -enum
+argv[11]: int
+argv[12]: -str
+argv[13]: pool
+argv[14]: -exc
+argv[15]: ms
+argv[16]: -trigraphs
+argv[17]: on
+argv[18]: -cwd
+argv[19]: source
+argv[20]: -g
+argv[21]: -O0
+argv[22]: -inline
+argv[23]: off
+argv[24]: -runtime
+argv[25]: staticmulti
+argv[26]: -wchar_t
+argv[27]: on
+argv[28]: -nostdinc
+argv[29]: -gccdepends
+argv[30]: -MD
+argv[31]: -cwd
+argv[32]: include
+argv[33]: -wchar_t
+argv[34]: on
+argv[35]: -d
+argv[36]: __wchar_t_defined
+argv[37]: -d
+argv[38]: __SYMBIAN32__
+argv[39]: -d
+argv[40]: __CW32__
+argv[41]: -d
+argv[42]: __WINS__
+argv[43]: -d
+argv[44]: __WINSCW__
+argv[45]: -d
+argv[46]: __SUPPORT_CPP_EXCEPTIONS__
+argv[47]: -d
+argv[48]: _UNICODE
+argv[49]: -d
+argv[50]: UNICODE
+argv[51]: -d
+argv[52]: QT_KEYPAD_NAVIGATION
+argv[53]: -d
+argv[54]: QT_SOFTKEYS_ENABLED
+argv[55]: -d
+argv[56]: QT_USE_MATH_H_FLOATS
+argv[57]: -d
+argv[58]: HB_HAVE_QT_MOBILITY
+argv[59]: -d
+argv[60]: HB_EFFECTS_OPENVG
+argv[61]: -d
+argv[62]: HB_FILTER_EFFECTS
+argv[63]: -d
+argv[64]: HB_HAVE_PROTECTED_CHUNK
+argv[65]: -d
+argv[66]: HB_TOUCHFEEDBACK_TYPE_IS_LONGPRESS
+argv[67]: -d
+argv[68]: HB_GESTURE_FW
+argv[69]: -d
+argv[70]: HB_EFFECTS
+argv[71]: -d
+argv[72]: HB_TEXT_MEASUREMENT_UTILITY
+argv[73]: -d
+argv[74]: HB_HAVE_QT_MOBILITY
+argv[75]: -d
+argv[76]: HB_EFFECTS_OPENVG
+argv[77]: -d
+argv[78]: HB_FILTER_EFFECTS
+argv[79]: -d
+argv[80]: HB_HAVE_PROTECTED_CHUNK
+argv[81]: -d
+argv[82]: HB_TOUCHFEEDBACK_TYPE_IS_LONGPRESS
+argv[83]: -d
+argv[84]: HB_GESTURE_FW
+argv[85]: -d
+argv[86]: HB_EFFECTS
+argv[87]: -d
+argv[88]: HB_TEXT_MEASUREMENT_UTILITY
+argv[89]: -d
+argv[90]: QT_SVG_LIB
+argv[91]: -d
+argv[92]: QT_GUI_LIB
+argv[93]: -d
+argv[94]: QT_NETWORK_LIB
+argv[95]: -d
+argv[96]: QT_CORE_LIB
+argv[97]: -d
+argv[98]: _DEBUG
+argv[99]: -d
+argv[100]: __SYMBIAN_STDCPP_SUPPORT__
+argv[101]: -d
+argv[102]: __EXE__
+argv[103]: -i-
+argv[104]: -i
+argv[105]: Q:/sf/app/phone/phoneengine/phonemodel/tsrc/ut_penetworkhandler
+argv[106]: -i
+argv[107]: Q:/epoc32/include/mw/QtCore
+argv[108]: -i
+argv[109]: Q:/epoc32/include/mw/QtNetwork
+argv[110]: -i
+argv[111]: Q:/epoc32/include/mw/QtGui
+argv[112]: -i
+argv[113]: Q:/epoc32/include/mw/QtSvg
+argv[114]: -i
+argv[115]: Q:/epoc32/include/mw
+argv[116]: -i
+argv[117]: Q:/epoc32/include/mw/QtTest
+argv[118]: -i
+argv[119]: Q:/sf/mw/qt/mkspecs/common/symbian
+argv[120]: -i
+argv[121]: Q:/epoc32/include
+argv[122]: -i
+argv[123]: Q:/epoc32/include/stdapis
+argv[124]: -i
+argv[125]: Q:/epoc32/include/stdapis/sys
+argv[126]: -i
+argv[127]: Q:/epoc32/include/platform/mw
+argv[128]: -i
+argv[129]: Q:/epoc32/include/platform
+argv[130]: -i
+argv[131]: Q:/epoc32/include/platform/loc
+argv[132]: -i
+argv[133]: Q:/epoc32/include/platform/mw/loc
+argv[134]: -i
+argv[135]: Q:/epoc32/include/platform/loc/sc
+argv[136]: -i
+argv[137]: Q:/epoc32/include/platform/mw/loc/sc
+argv[138]: -i
+argv[139]: Q:/sf/app/phone/phoneengine/phonemodel/tsrc/ut_penetworkhandler
+argv[140]: -i
+argv[141]: Q:/epoc32/include/platform/app
+argv[142]: -i
+argv[143]: Q:/sf/app/phone/phoneengine/inc
+argv[144]: -i
+argv[145]: Q:/sf/app/phone/inc
+argv[146]: -i
+argv[147]: Q:/sf/app/phone/engineinfo/inc
+argv[148]: -i
+argv[149]: Q:/epoc32/include/mw/hb/hbcore
+argv[150]: -i
+argv[151]: Q:/epoc32/include/mw/hb/hbwidgets
+argv[152]: -i
+argv[153]: Q:/epoc32/include/mw/hb/hbutils
+argv[154]: -i
+argv[155]: Q:/epoc32/include/stdapis/stlportv5
+argv[156]: -i
+argv[157]: Q:/sf/app/phone/phoneengine/phonemodel/inc
+argv[158]: -i
+argv[159]: Q:/sf/app/phone/phoneengine/phonemodel/src
+argv[160]: -i
+argv[161]: Q:/epoc32/include
+argv[162]: -i
+argv[163]: Q:/epoc32/include/stdapis
+argv[164]: -include
+argv[165]: feature_settings.hrh
+argv[166]: -o
+argv[167]: Q:/epoc32/build/ut_penetworkhandler/c_2302b1050784449d/ut_penetworkhandler_exe/winscw/udeb/unit_tests.o
+argv[168]: Q:/sf/app/phone/phoneengine/phonemodel/tsrc/ut_penetworkhandler/unit_tests.cpp
+
+*** CTC++/ctcagent command: set PATH=c:\apps\sbs\win32\mingw\bin;c:\apps\sbs\win32\cygwin\bin;c:\apps\sbs\win32\bin;C:\Program Files\PC Connectivity Solution\;c:\apps\actperl\bin\;c:\apps\rvct22_686\bin;c:\apps\atool;\epoc32\tools;\epoc32\gcc\bin;c:\apps\ue;c:\apps\ccm65\bin;c:\apps\carbide\x86Build\Symbian_Tools\Command_Line_Tools;C:\WINNT\system32;C:\WINNT;C:\WINNT\System32\Wbem;C:\Program Files\Intel\WiFi\bin;S:\ORANT\BIN;C:\Program Files\Rational\common;C:\APPS\pclint;C:\APPS\ctc;C:\APPS\cltools;C:\APPS\ant\bin;C:\APPS\j2sdk_1.3.1_06\bin;C:\APPS\7zip;C:\APPS\unzip;C:\Program Files\TortoiseHg;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Nokia\FastTrace;\epoc32\tools\qt;c:\apps\sbs\bin;C:\APPS\actpython\.;C:\APPS\blocks\bin;C:\APPS\codescanner;C:\APPS\symdec;C:\APPS\bc;\epoc32\gcc_mingw\bin;C:\Program Files\TortoiseGit\bin; && C:\APPS\ctc\ctc -c C:\APPS\ctc\sym_cw\winscw.ini @C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\ctcopts.rsp mwccsym2  @ctc-mwccsym2-26008.rsp
+*** CTC++/ctcagent command status: 0
+
+*** CTC++/ctcagent command status: 0
+
+*** CTC++/ctcagent command status: 0
+
+*** CTC++/ctcagent command status: 0
+
+
+*******************************************************************************
+
+argv[0]: C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\mwldsym2.exe
+argv[1]: -msgstyle
+argv[2]: gcc
+argv[3]: -stdlib
+argv[4]: -subsystem
+argv[5]: windows
+argv[6]: -g
+argv[7]: -heapreserve=8192
+argv[8]: -heapcommit=128
+argv[9]: -m
+argv[10]: ?_E32Bootstrap@@YGXXZ
+argv[11]: Q:/epoc32/release/winscw/udeb/eexe.lib
+argv[12]: Q:/epoc32/release/winscw/udeb/qtmain.lib
+argv[13]: Q:/epoc32/release/winscw/udeb/QtSystemInfo.lib
+argv[14]: Q:/epoc32/release/winscw/udeb/engineinfo.lib
+argv[15]: Q:/epoc32/release/winscw/udeb/QtTest.lib
+argv[16]: Q:/epoc32/release/winscw/udeb/HbCore.lib
+argv[17]: Q:/epoc32/release/winscw/udeb/HbWidgets.lib
+argv[18]: Q:/epoc32/release/winscw/udeb/HbUtils.lib
+argv[19]: Q:/epoc32/release/winscw/udeb/libstdcppv5.lib
+argv[20]: Q:/epoc32/release/winscw/udeb/QtSvg.lib
+argv[21]: Q:/epoc32/release/winscw/udeb/QtGui.lib
+argv[22]: Q:/epoc32/release/winscw/udeb/QtNetwork.lib
+argv[23]: Q:/epoc32/release/winscw/udeb/QtCore.lib
+argv[24]: Q:/epoc32/release/winscw/udeb/libpthread.lib
+argv[25]: Q:/epoc32/release/winscw/udeb/libc.lib
+argv[26]: Q:/epoc32/release/winscw/udeb/libm.lib
+argv[27]: Q:/epoc32/release/winscw/udeb/euser.lib
+argv[28]: Q:/epoc32/release/winscw/udeb/libdl.lib
+argv[29]: -o
+argv[30]: Q:/epoc32/release/winscw/udeb/ut_penetworkhandler.exe
+argv[31]: -noimplib
+argv[32]: -l
+argv[33]: Q:/epoc32/build/ut_penetworkhandler/c_2302b1050784449d/ut_penetworkhandler_exe/winscw/udeb
+argv[34]: -search
+argv[35]: @Q:/epoc32/build/ut_penetworkhandler/c_2302b1050784449d/ut_penetworkhandler_exe/winscw/udeb/ut_penetworkhandler_udeb_objects.lrf
+
+*** CTC++/ctcagent command: set PATH=c:\apps\sbs\win32\mingw\bin;c:\apps\sbs\win32\cygwin\bin;c:\apps\sbs\win32\bin;C:\Program Files\PC Connectivity Solution\;c:\apps\actperl\bin\;c:\apps\rvct22_686\bin;c:\apps\atool;\epoc32\tools;\epoc32\gcc\bin;c:\apps\ue;c:\apps\ccm65\bin;c:\apps\carbide\x86Build\Symbian_Tools\Command_Line_Tools;C:\WINNT\system32;C:\WINNT;C:\WINNT\System32\Wbem;C:\Program Files\Intel\WiFi\bin;S:\ORANT\BIN;C:\Program Files\Rational\common;C:\APPS\pclint;C:\APPS\ctc;C:\APPS\cltools;C:\APPS\ant\bin;C:\APPS\j2sdk_1.3.1_06\bin;C:\APPS\7zip;C:\APPS\unzip;C:\Program Files\TortoiseHg;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Nokia\FastTrace;\epoc32\tools\qt;c:\apps\sbs\bin;C:\APPS\actpython\.;C:\APPS\blocks\bin;C:\APPS\codescanner;C:\APPS\symdec;C:\APPS\bc;\epoc32\gcc_mingw\bin;C:\Program Files\TortoiseGit\bin; && C:\APPS\ctc\ctc -c C:\APPS\ctc\sym_cw\winscw.ini @C:\DOCUME~1\jukkrauh\LOCALS~1\Temp\ctc3\ctcopts.rsp mwldsym2  @ctc-mwldsym2-26056.rsp
+*** CTC++/ctcagent command status: 0
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneengine/phonemodel/tsrc/ut_penetworkhandler/ut_penetworkhandler.rss	Fri Sep 17 08:29:19 2010 +0300
@@ -0,0 +1,21 @@
+// ============================================================================
+// * Generated by qmake (2.01a) (Qt 4.7.0) on: 2010-08-26T13:06:43
+// * This file is generated by qmake and should not be modified by the
+// * user.
+// ============================================================================
+
+#include <appinfo.rh>
+#include <ut_penetworkhandler.loc>
+
+RESOURCE LOCALISABLE_APP_INFO r_localisable_app_info
+	{
+	short_caption = STRING_r_short_caption;
+	caption_and_icon =
+	CAPTION_AND_ICON_INFO
+		{
+		caption = STRING_r_caption;
+		number_of_icons = 0;
+		icon_file = "";
+		};
+	}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneengine/phonemodel/tsrc/ut_penetworkhandler/ut_penetworkhandler_installer.pkg	Fri Sep 17 08:29:19 2010 +0300
@@ -0,0 +1,31 @@
+; Q:/sf/app/phone/phoneengine/phonemodel/tsrc/ut_penetworkhandler//ut_penetworkhandler_installer.pkg generated by qmake at 2010-08-26T13:06:43
+; This file is generated by qmake and should not be modified by the user
+;
+
+; Language
+&EN
+
+
+; SIS header: name, uid, version
+#{"ut_penetworkhandler installer"},(0xA000D7CE),1,0,0
+
+; Localised Vendor name
+%{"Vendor"}
+
+; Unique Vendor name
+:"Vendor"
+
+
+; Manual PKG pre-rules from PRO files
+; Default dependency to Qt libraries
+; Default HW/platform dependencies
+[0x101F7961],0,0,0,{"S60ProductID"}
+[0x102032BE],0,0,0,{"S60ProductID"}
+[0x102752AE],0,0,0,{"S60ProductID"}
+[0x1028315F],0,0,0,{"S60ProductID"}
+[0x20022e6d],0,0,0,{"S60ProductID"}
+ 
+
+
+"Q:/sf/app/phone/phoneengine/phonemodel/tsrc/ut_penetworkhandler/ut_penetworkhandler.sis" - "c:\private\2002CCCE\import\ut_penetworkhandler.sis"
+@"Q:/sf/mw/qt/smartinstaller.sis",(0x2002CCCD)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneengine/phonemodel/tsrc/ut_penetworkhandler/ut_penetworkhandler_reg.rss	Fri Sep 17 08:29:19 2010 +0300
@@ -0,0 +1,18 @@
+// ============================================================================
+// * Generated by qmake (2.01a) (Qt 4.7.0) on: 2010-08-26T13:06:43
+// * This file is generated by qmake and should not be modified by the
+// * user.
+// ============================================================================
+
+#include <ut_penetworkhandler.rsg>
+#include <appinfo.rh>
+
+UID2 KUidAppRegistrationResourceFile
+UID3 0xEA9BEFAA
+
+RESOURCE APP_REGISTRATION_INFO
+	{
+	app_file="ut_penetworkhandler";
+	localisable_resource_file="\\resource\\apps\\ut_penetworkhandler";
+
+	}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneengine/phonemodel/tsrc/ut_penetworkhandler/ut_penetworkhandler_stub.pkg	Fri Sep 17 08:29:19 2010 +0300
@@ -0,0 +1,27 @@
+; Q:/sf/app/phone/phoneengine/phonemodel/tsrc/ut_penetworkhandler//ut_penetworkhandler_stub.pkg generated by qmake at 2010-08-26T13:06:43
+; This file is generated by qmake and should not be modified by the user
+;
+
+; Language
+&EN
+
+
+; SIS header: name, uid, version
+#{"ut_penetworkhandler"},(0xEA9BEFAA),1,0,0
+
+; Localised Vendor name
+%{"Vendor"}
+
+; Unique Vendor name
+:"Vendor"
+
+
+; Manual PKG pre-rules from PRO files
+; Default dependency to Qt libraries
+; Default HW/platform dependencies
+ 
+
+"" - "z:\sys\bin\ut_penetworkhandler.exe"
+"" - "z:\resource\apps\ut_penetworkhandler.rsc"
+"" - "z:\private\10003a3f\import\apps\ut_penetworkhandler_reg.rsc"
+
--- a/phoneengine/phoneservices/src/dtmfservice.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneengine/phoneservices/src/dtmfservice.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -41,7 +41,7 @@
 {
     PHONE_TRACE2("keyToPlay:", keyToPlay);
     if (!hasCapability()) {
-        return;
+        return KErrPermissionDenied;
     }
     m_parameters.SetKeyCode(keyToPlay.unicode());
     TRAPD(ret, m_call.HandlePlayDTMFL() );
@@ -52,7 +52,7 @@
 {
     PHONE_TRACE;
     if (!hasCapability()) {
-        return;
+        return KErrPermissionDenied;
     }
     return m_call.HandleEndDTMF(); 
 }
--- a/phoneengine/phoneservices/tsrc/ut_phoneservices/ut_phoneservices.pro	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneengine/phoneservices/tsrc/ut_phoneservices/ut_phoneservices.pro	Fri Sep 17 08:29:19 2010 +0300
@@ -25,15 +25,12 @@
 QT -= gui
 
 symbian {
-
-    INCLUDEPATH += \epoc32\include\platform \
-                   \epoc32\include\platform\mw \
-                   \epoc32\include\mw \
-                   ../../../phoneuiutils/inc \
+    INCLUDEPATH += $$APP_LAYER_SYSTEMINCLUDE
+    INCLUDEPATH += ../../../phoneuiutils/inc \
                    ../../../phoneuicontrol/inc \
                    ../../../phoneuiqtviewadapter/src \
                    ../../../../inc
-
+                   
     LIBS += -lxqservice \
             -lxqserviceutil
 
--- a/phoneplugins/csplugin/inc/cspaudiohandler.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneplugins/csplugin/inc/cspaudiohandler.h	Fri Sep 17 08:29:19 2010 +0300
@@ -19,23 +19,27 @@
 #define CSPAUDIOHANDLER_H
 
 #include <e32base.h>
+#include "cspaudiohandlerbase.h"
+#include "mtmshandlerobserver.h"
+#include "mcsptimerobserver.h"
 
+//FORWARD DECLARATIONS
 class TmsHandler;
+class CSPTimer;
+
 /**
  * Handles call adding from calls not done by the plugin.
  *
  */
-class CSPAudioHandler : public CBase
+class CSPAudioHandler : public CSPAudioHandlerBase,
+                        public MTmsHandlerObserver,
+                        public MCSPTimerObserver
     {
 public:
     //Constructors and descructor
 
     /**
      * Two-phased constructing for the monitor.
-     *
-     * @param aObserver the observer for getting notification
-     * @param aLine the line to monitor
-     * @param aLineId line identifier
      */
     static CSPAudioHandler* NewL();
 
@@ -43,45 +47,54 @@
      * C++ default destructor.
      */
     virtual ~CSPAudioHandler();
+    
+// from base class CSPAudioHandlerBase     
+
+    /*
+     * From CSPAudioHandlerBase
+     * Set observer to receive call audio stream events.     
+     */
+    void SetObserver(MCSPAudioHandlerObserver& aObserver);
 
     /**
-     * Start audio streams.
+     * From CSPAudioHandlerBase
+     * Start audio streams.     
      */
     void Start();
 
     /**
-     * Stop audio streams.
+     * From CSPAudioHandlerBase
+     * Stop audio streams.     
      */
     void Stop();
 
+    /*
+     * From CSPAudioHandlerBase
+     * Specify timeout after which stream start retry will be terminated.
+     */
+    void ReportAudioFailureAfterTimeout(TInt aTimeout);
+
 protected:
-    // From CActive
-    /**
-     * From CActive
-     * RunL
+    /*
+     * From MTmsHandlerObserver
+     * Indicates call audio stream start success.
      */
-    void RunL();
+    void AudioStreamsStarted();
+
+    /*
+     * From MTmsHandlerObserver
+     * Indicates call audio stream start failure.
+     */
+    void AudioStreamsError(TInt aError);
 
     /**
-     * From CActive
-     * Catches errors if RunL leaves
-     * @param aError error code
-     * @return error code
+     * From MCSPTimerObserver.
      */
-    TInt RunError(TInt aError);
-
-    /**
-     * From CActive
-     * Cancels the monitor
-     */
-    void DoCancel();
+    void TimerEvent();
 
 private:
     /**
      * C++ default constructor
-     * @param aObserver the observer for status change (incoming call)
-     * @param aLine the line associated with the call
-     * @param aLineId line identifier
      */
     CSPAudioHandler();
 
@@ -93,7 +106,6 @@
 private:
     // data
 
-
     /**
      * Audio streams handler.
      */
@@ -103,6 +115,17 @@
      * Call count
      */
     TInt iCallCount;
+
+    /**
+     * Timer waiting for the activation of streams.
+     */
+    CSPTimer* iTimer;
+
+    /*
+     * Observer receiving call audio stream start events.
+     */
+    MCSPAudioHandlerObserver* iObserver;
     };
 
 #endif // CSPAUDIOHANDLER_H
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneplugins/csplugin/inc/cspaudiohandlerbase.h	Fri Sep 17 08:29:19 2010 +0300
@@ -0,0 +1,53 @@
+/*
+ * 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:  Audio stream controlling interface
+ *
+ */
+
+#ifndef CSPAUDIOHANDLERBASE_H_
+#define CSPAUDIOHANDLERBASE_H_
+
+class MCSPAudioHandlerObserver;
+
+/**
+ * Provides interface for controlling audio streams.
+ *
+ */
+class CSPAudioHandlerBase : public CBase
+    {
+public:    
+
+    /*
+     * Set observer to receive call audio stream events.
+     */
+    virtual void SetObserver(MCSPAudioHandlerObserver& aObserver) = 0;
+
+    /**
+     * Start audio streams.
+     */
+    virtual void Start() = 0;
+
+    /**
+     * Stop audio streams.
+     */
+    virtual void Stop() = 0;
+
+    /*
+     * Specify timeout after which stream start retry will be terminated.
+     */
+    virtual void ReportAudioFailureAfterTimeout(TInt aTimeout) = 0;
+
+    };
+
+#endif /* CSPAUDIOHANDLERBASE_H_ */
--- a/phoneplugins/csplugin/inc/cspcall.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneplugins/csplugin/inc/cspcall.h	Fri Sep 17 08:29:19 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2007-2009 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"
@@ -34,7 +34,7 @@
 #include "mcspcallerrorobserver.h"
 #include "mcspuusmessageobserver.h"
 #include "mcspcallcommandhandling.h"
-
+#include "mcspaudiohandlerobserver.h"
 
 class MCCPForwardProvider;
 class CSPForwardProvider;
@@ -46,7 +46,7 @@
 class CSPEtelCallCapsMonitor;
 class CSPTransferProvider;
 class CSPEtelCallCapsMonitor;
-class CSPAudioHandler;
+class CSPAudioHandlerBase;
 class MCSPCommonInfo;
 class CSPUUIMonitor;
 class CSPUUIMessageSender;
@@ -63,32 +63,33 @@
                 public MCSPCallObserver,
                 public MCSPCallErrorObserver,
                 public MCSPUUSMessageObserver,
-                public MCCPCallCommandHandling
+                public MCCPCallCommandHandling,
+                public MCSPAudioHandlerObserver
     {
     public:
         /*
         * C++ default destructor
         */
         virtual ~CSPCall( );
-       
-        /** 
+
+        /**
         * ETel call name accessor.
         * @return system wide error code
         */
         void CallName( TName& aCallName );
-        
+
         /**
         * Sets the audio handler for the call.
         * @param aHandler audio handler
         */
-        void SetAudioHandler( CSPAudioHandler* aHandler );
-        
+        void SetAudioHandler( CSPAudioHandlerBase* aHandler );
+
         /**
          * Security setting change notification.
          * @param aValue new value
          */
         void SecuritySettingChanged( TInt aValue );
-        
+
         /**
          * Remote alerting tone status changed notification.
          * @param aNewStatus New remote alerting tone status.
@@ -100,46 +101,46 @@
          * Set iDontReportTerm flag value to ETrue.
          */
         void DontReportTerminationError();
-        
+
 // from base class MCSPCallObserver
 
         /**
         * Updates the call event for observers.
         * @param aEvent the event to be notified
         */
-        virtual void NotifyForwardEventOccurred( 
+        virtual void NotifyForwardEventOccurred(
                         MCCPForwardObserver::TCCPForwardEvent aEvent );
 
         /**
         * Updates the state change and forwards the state for observer.
-        * @param aState new state (ETel) of the call 
+        * @param aState new state (ETel) of the call
         */
-        virtual void NotifyCallStateChangedETel( 
+        virtual void NotifyCallStateChangedETel(
             RMobileCall::TMobileCallStatus aState );
 
         /**
         * Updates the call event for observers.
         * @param aEvent the event to be notified
         */
-        virtual void NotifyCallEventOccurred( 
+        virtual void NotifyCallEventOccurred(
             MCCPCallObserver::TCCPCallEvent aEvent );
 
         /**
         * Updates the transfer event for observers.
         * @param aEvent the event to be notified
         */
-        virtual void NotifyTransferCallEventOccurred( 
+        virtual void NotifyTransferCallEventOccurred(
                         MCCPTransferObserver::TCCPTransferEvent aEvent );
-        
+
         /**
         * Notifies changed call capabilities.
         * @param aCapsFlags new capability flags
         */
 
         virtual void CallCapsChanged( const TUint32 aCapsFlags );
-        
-// from base class MCSPCallErrorObserver        
-    
+
+// from base class MCSPCallErrorObserver
+
         /**
         * From MCSPCallErrorObserver
         * Dial request failed notification.
@@ -153,7 +154,7 @@
         * @param aErrorCode request failing error code
         */
         void EmergencyDialRequestFailed( TInt aErrorCode );
-        
+
         /**
         * From MCSPCallErrorObserver
         * Notifies about error situation for CCE.
@@ -161,7 +162,7 @@
         virtual void NotifyErrorOccurred( TCCPError aError );
 
 // from base class MCSPUUSMessageObserver
-        
+
         /**
         * From MCSPUUSMessageObserver
         * UUS message received notification. 
@@ -183,14 +184,14 @@
         * From MCCPCSCall
         * Gets the calls data call capabilities
         * @param aCaps TMobileCallDataCapsV1
-        * @return KErrNone if the function member was successful, 
+        * @return KErrNone if the function member was successful,
         *        KErrNotSupported if call doesn't support circuit switched data
         *        KErrNotFound if this call is not a data call
         */
         virtual TInt GetMobileDataCallCaps( TDes8& aCaps ) const;
 
 // from base class MCCPCall
-        
+
         /**
         * From MCCPCall
         * Answers to an incoming call.
@@ -207,8 +208,8 @@
 
         /**
         * From MCCPCall
-        * Reguests plug-in to queue the call.     
-        * @return system wide error code    
+        * Reguests plug-in to queue the call.
+        * @return system wide error code
         */
         virtual TInt Queue();
 
@@ -218,11 +219,11 @@
         * @return system wide error code
         */
         virtual TInt Dial();
-        
+
         /**
         * From MCCPCSCall
         * Starts dialing to recipient
-        * @param aCallParams Call parameters used 
+        * @param aCallParams Call parameters used
         *   by the TSY (TCallParamsPckg)
         * @return system wide error code
         */
@@ -334,28 +335,28 @@
         virtual TBool IsSecured() const;
 
         /**
-        * From MCCPCall 
+        * From MCCPCall
         * Get call's secure specified status.
-        * @return TBool ETrue if secure specified 
+        * @return TBool ETrue if secure specified
         */
         virtual TBool SecureSpecified() const;
 
         /**
-        * From MCCPCall  
+        * From MCCPCall
         * Set call parameters.
         * @param aNewParams New call paramater information.
         */
         virtual void SetParameters( const CCCPCallParameters& aNewParams );
-        
+
         /**
-        * From MCCPCall 
+        * From MCCPCall
         * Cet call parameters.
         * @return Current call paramater information.
         */
         virtual const CCCPCallParameters& Parameters() const;
 
         /**
-        * From MCCPCall 
+        * From MCCPCall
         * Get Forward provider
         * @param aObserver - observer class for forward events
         * @return Pointer to MCCPForwardProvider if succesfull, NULL if not available
@@ -364,19 +365,19 @@
         virtual MCCPForwardProvider* ForwardProviderL( const MCCPForwardObserver& aObserver );
 
         /**
-        * From MCCPCall 
+        * From MCCPCall
         * Get Call transfer provider
         * @param aObserver - observer class for transfer events
         * @return Pointer to MCCPTransferProvider if succesfull, NULL if not available
         * @leave on error case system error code
         */
         virtual MCCPTransferProvider* TransferProviderL( const MCCPTransferObserver& aObserver );
-          
+
         /**
-        * From MCCPCall  
-        * Adds a new observer for MCCECall object. Called in MT call case. In MO 
+        * From MCCPCall
+        * Adds a new observer for MCCECall object. Called in MT call case. In MO
         * case observer will be given at call construction.
-        * Plug-in dependent feature if duplicates or more than one observers 
+        * Plug-in dependent feature if duplicates or more than one observers
         * are allowed or not. Currently CCE will set only one observer.
         * @param aObserver Observer
         * @leave system error if observer adding fails
@@ -384,16 +385,16 @@
         virtual void AddObserverL( const MCCPCallObserver& aObserver );
 
         /**
-        * From MCCPCall  
+        * From MCCPCall
         * Remove an observer.
         * @param aObserver Observer
         * @return KErrNone if removed succesfully. KErrNotFound if observer was not found.
         * Any other system error depending on the error.
         */
         virtual TInt RemoveObserver( const MCCPCallObserver& aObserver );
-        
+
         /**
-        * From MCCPCall 
+        * From MCCPCall
         * Returns the inband tone associated to an error condition or a state transition of a call.
         * See defenition for TCCPTone.
         * @since S60 3.2
@@ -403,38 +404,46 @@
         TCCPTone Tone() const;
 
 // from base class MCCPCSCall
-        
+
         /**
         * From MCCPCSCall
         * Indicates that FDN check is not used for dial.
         */
         virtual void NoFDNCheck( );
-        
+
         /**
-        * From MCCPCSCall 
+        * From MCCPCSCall
         * Log dialed  number. SAT related, check if dialed number is to be logged or not.
         * @since S60 5.0
         * @param None
         * @return Log dialed number or not.
         */
         virtual TBool LogDialedNumber() const;
-    
+
 // from base class MCCPCallCommandHandling
-        
+
         /**
         * Perform answer command.
         * @return system wide error code
         */
         TInt PerformAnswerRequest();
-        
+
         /**
         * Perform dial command.
         * @return system wide error code
         */
         TInt PerformDialRequest();
-        
+
+// from base class MCSPAudioHandlerObserver
+
+        /*
+         * Callback received when call audio control streams fail to start
+         * within timeout specified in ReportAudioFailureAfterTimeout().
+         */
+        void AudioStartingFailed();
+
     protected:
-            
+
         /**
         * Starts dialing to recipient.
         * Bypasses FDN check according to aFdnCheck.
@@ -442,35 +451,35 @@
         * @return system wide error code
         */
         virtual TInt DialFdnCond( TBool aFdnCheck ) = 0;
-                
+
     protected:
-    
+
         /**
-        * C++ default constructor.  
-        * 
-        * @param aLine line of the call 
-        * @param aMobileOriginated is call mobile originated 
+        * C++ default constructor.
+        *
+        * @param aLine line of the call
+        * @param aMobileOriginated is call mobile originated
         * @param aName contains call name (mobile terminated) or phone number (mobile originated)
-        * @param aCommonInfo reference to common info interface 
-        * @param aIsEmergencyCall is emergency call 
+        * @param aCommonInfo reference to common info interface
+        * @param aIsEmergencyCall is emergency call
         */
-        CSPCall(  RMobileLine& aLine, 
+        CSPCall(  RMobileLine& aLine,
                   TBool aMobileOriginated,
                   const TDesC& aName,
                   MCSPCommonInfo& aCommonInfo,
                   TBool aIsEmergencyCall );
-                  
+
         /*
         * Constructing 2nd phase.
-        * @param aParams call parameters  
+        * @param aParams call parameters
         */
         virtual void ConstructL( const CCCECallParameters& aParams );
-        
+
         /*
         * Notifies the ringing state to observers.
         */
         virtual void NotifyRingingState();
-        
+
         /**
         * Mapping ETel state to CCP state.
         * @param aEtelState an ETel state
@@ -485,37 +494,37 @@
         * played by network and forwards the state for observer.
         * @param aState new state of the call
         */
-        virtual void NotifyCallStateChangedWithInband( 
+        virtual void NotifyCallStateChangedWithInband(
             MCCPCallObserver::TCCPCallState aState );
 
         /**
-        * Updates the state change 
+        * Updates the state change
         * and forwards the state for observer.
         * @param aState new state of the call
         */
-        virtual void NotifyCallStateChanged( 
+        virtual void NotifyCallStateChanged(
             MCCPCallObserver::TCCPCallState aState );
-            
+
         /**
         * From MCSPCallObserver
-        * Notify that remote party info has changed.        
+        * Notify that remote party info has changed.
         * @param aRemotePartyName new remote party name
         * @param aRemotePartyNumber new remote party number
         */
-        virtual void NotifyRemotePartyInfoChanged(                
+        virtual void NotifyRemotePartyInfoChanged(
             const TDesC& aRemotePartyName,
             const TDesC& aRemotePartyNumber );
 
         /**
-        * Open call handle.  
-        * Opens a new call handle for MO call  
-        * and an existing handle for MT call.    
+        * Open call handle.
+        * Opens a new call handle for MO call
+        * and an existing handle for MT call.
         */
         virtual void OpenCallHandleL();
 
         /**
-        * Update call info data including call name,  
-        * remote name and number data.  
+        * Update call info data including call name,
+        * remote name and number data.
         */
         virtual void UpdateCallInfo();
         
@@ -541,18 +550,18 @@
         * Check and notify call termination error.
         */
         void CheckAndNotifyTerminationError();
-        
+
         /**
         * Error from iExitCode.
         */
         TInt ExitCodeError() const;
-        
+
         /**
-        * Update call name number info.   
+        * Update call name number info.
         * @param aCallInfo RMobileCall::TMobileCallInfoV3
-        * @param aCallCreatedByMonitor, set:  
+        * @param aCallCreatedByMonitor, set:
         *       EFalse for calls added by plugin owner
-        *       ETrue for calls added by ETel status monitor  
+        *       ETrue for calls added by ETel status monitor
         */
         void UpdateCallNameNumberInfo(
                 const RMobileCall::TMobileCallInfoV3& aCallInfo, 
@@ -560,43 +569,43 @@
 
         /**
         * Open new call.
-        * New call is opened when the plugin owner adds the new 
-        * call (compare to OpenExistingCall where call is added by 
-        * ETel monitor).  
+        * New call is opened when the plugin owner adds the new
+        * call (compare to OpenExistingCall where call is added by
+        * ETel monitor).
         */
-        void OpenNewCall(); 
+        void OpenNewCall();
 
         /**
         * Open existing call.
         * Existing call is opened if one of the ETel
-        * monitors (incoming call monitor or line status monitor) 
-        * has added the call and no new call needs to be 
-        * opened.    
-        * @param aName name of the existing call   
+        * monitors (incoming call monitor or line status monitor)
+        * has added the call and no new call needs to be
+        * opened.
+        * @param aName name of the existing call
         */
-        void OpenExistingCallL( const TDesC& aName ); 
-        
+        void OpenExistingCallL( const TDesC& aName );
+
     private:
 
         /**
-        * Create call handlers for call requests and for 
-        * monitoring call events.   
+        * Create call handlers for call requests and for
+        * monitoring call events.
         */
         void CreateCallHandlersL();
-        
+
         /**
         * Update call state from ETel
-        * @return system wide error code 
+        * @return system wide error code
         */
         int UpdateCallState();
-        
+
         /**
          * Sends a remote party info changed notification
-         * if the remote party number has changed. 
+         * if the remote party number has changed.
          */
         void NotifyRemotePartyNumberChanged();
 
-	private: 
+	private:
 
         enum TCSPCallAudioStatus {
             ECSPCallAudioStatusInactive,
@@ -609,7 +618,7 @@
           * CCP Call Observer array.
           */
           RPointerArray<MCCPCallObserver> iObservers;
-          
+
           /**
           * Actual ETel call handle.
           */
@@ -623,22 +632,22 @@
           /**
           * Determines if the call direction is either MO (ETrue) or MT (EFalse)
           */
-          TBool iMobileOriginated;  
+          TBool iMobileOriginated;
 
           /**
           * Name information of the call.
-          * 
+          *
           * Name information is stored during CSPCall construction
-          * and assigned to iCallName (MT or client call) or 
-          * iRemotePartyNumber (MO call) afterwards.    
+          * and assigned to iCallName (MT or client call) or
+          * iRemotePartyNumber (MO call) afterwards.
           */
           TBuf<KCSPPhoneNumberMaxLength> iName;
-          
+
           /**
           * Remote party name of the call.
           */
           TBuf<KCSPPhoneNumberMaxLength> iRemotePartyNumber;
-          
+
           /**
           * Remote party name of the call.
           */
@@ -648,7 +657,7 @@
           * Dialled party of the call.
           */
           TBuf<KCSPPhoneNumberMaxLength> iDialledParty;
-          
+
           /**
           * Call name for MT call.
           */
@@ -656,14 +665,14 @@
 
           /**
           * Call parameters.
-          */      
-          CCCECallParameters* iParams; 
-         
+          */
+          CCCECallParameters* iParams;
+
           /**
           * Call state in CCP format
           */
           MCCPCallObserver::TCCPCallState iCallState;
-          
+
           /**
           * Capability flags.
           */
@@ -673,17 +682,17 @@
           * Call status monitor
           */
           CSPEtelCallStatusMonitor* iCallStatusMonitor;
-            
+
           /**
           * Call event monitor
           */
           CSPEtelCallEventMonitor* iCallEventMonitor;
-          
+
           /**
           * Call info monitor
           */
           CSPCallInfoMonitor* iCallInfoMonitor;
-          
+
           /**
           * Makes the asynchronic requests for various purposes.
           */
@@ -703,73 +712,73 @@
           * Call termination error notification has been sent.
           */
           TBool iTerminationErrorNotified;
-          
+
           /**
           * Emergency call.
           */
           TBool iIsEmergencyCall;
-    
+
     private:
-        
+
           /**
           * Transfer provider.
           * Own.
           */
           CSPTransferProvider* iTransferProvider;
-          
+
           /**
           * Forward provider. No actual implementation.
           * Own.
-          */          
+          */
           CSPForwardProvider* iForwardProvider;
-          
+
           /**
           * Audio dev sound handler.
           * Not own.
           */
-          CSPAudioHandler* iAudioHandler;
-          
+          CSPAudioHandlerBase* iAudioHandler;
+
           /**
           * FDN check usage status. Default is on. (ETrue)
           */
-          TBool iFdnCheck;          
-          
+          TBool iFdnCheck;
+
           /**
           * Monitors call capabilities from ETel.
           * Own.
           */
           CSPEtelCallCapsMonitor* iCallCapsMonitor;
-                    
-          /*  
+
+          /*
           * UUS monitor
-          */          
+          */
           CSPUUIMonitor* iUUIMonitor;
-          
-          /*  
+
+          /*
           * UUS sender
           */
           CSPUUIMessageSender* iUUIMessageSender;
-          
+
           /**
           * Data for parsed skype id.
           * Own.
           */
           HBufC* iSkypeId;
-          
+
           /**
           * Audio stop requested status. The flag prevents double audio stop.
-          * Stop is executed in Disconnecting state and Idle state 
+          * Stop is executed in Disconnecting state and Idle state
           * if previous state has been DisconnectingWithInband.
           * Audio start status.
           */
           TCSPCallAudioStatus iAudioStatus;
-          
+
           /**
           * Defines whether to report KErrGsmCCNormalUnspecified
           * and KErrGsmCCCallRejected.
           */
           TBool iDontReportTerm;
-          
+
           /**
            * User to user information. Sended to network before dial.
            * Own.
@@ -784,9 +793,8 @@
           
           friend class UT_CSPCall;
           friend class MT_CConvergedCallProvider;
-          
-          
+
     };
 
+#endif // CSPCALL_H
 
-#endif // CSPCALL_H
--- a/phoneplugins/csplugin/inc/cspcalladdedhandler.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneplugins/csplugin/inc/cspcalladdedhandler.h	Fri Sep 17 08:29:19 2010 +0300
@@ -32,7 +32,7 @@
 class CSPEtelLineStatusMonitor; 
 class CSPEtelCallWaitingRequester;
 class MCSPCommonInfo;
-class CSPAudioHandler;
+class CSPAudioHandlerBase;
 
 /**
 * Handles call adding from calls not done by the plugin.
@@ -57,7 +57,7 @@
                 RCSPLineContainer& aLineContainer,
                 CSPCallArray& aCallArray,
                 MCSPCommonInfo& aCommonInfo,
-                CSPAudioHandler& aAudioHandler );
+                CSPAudioHandlerBase& aAudioHandler );
 
         /**
         * C++ default destructor
@@ -111,7 +111,7 @@
                              RCSPLineContainer& aLineContainer,
                              CSPCallArray& aCallArray,
                              MCSPCommonInfo& aCommonInfo,
-                             CSPAudioHandler& aAudioHandler );
+                             CSPAudioHandlerBase& aAudioHandler );
                                           
         /**
         * Constructs the monitor in the second phase.
@@ -160,7 +160,7 @@
         /**
         * Audio Handler reference.
         */
-        CSPAudioHandler& iAudioHandler;
+        CSPAudioHandlerBase& iAudioHandler;
     };
 
 #endif // CSPCALLADDEDHANDLER_H
--- a/phoneplugins/csplugin/inc/csppanic.pan	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneplugins/csplugin/inc/csppanic.pan	Fri Sep 17 08:29:19 2010 +0300
@@ -71,6 +71,7 @@
         ECSPPanicInvalidParameter = 39,
         ECSPPanicDataConnectionInitError = 40,
         ECSPPanicTimerAlreadyActive = 41,
+        ECSPPanicAudioStreamInitFailure = 42,
         
         ECSPPanicMaximum = 100
         };
--- a/phoneplugins/csplugin/inc/csprovider.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneplugins/csplugin/inc/csprovider.h	Fri Sep 17 08:29:19 2010 +0300
@@ -33,6 +33,7 @@
 #include "mcsppubsubobserver.h"
 #include "mcspremotealertingtoneobserver.h"
 #include "mcspconferencestatusobserver.h"
+#include "mcsptestcallprovider.h"
 
 
 // FORWARD DECLARATIONS
@@ -42,7 +43,6 @@
 class CSPEtelCallAddedMonitor;
 class CSPConferenceCall;
 class CSPCallArray;
-class CSPAudioHandler;
 class CSPEtelCallWaitingRequester;
 class CSPSupplementaryServicesMonitor;
 class MCCPSsObserver;
@@ -53,6 +53,8 @@
 class CSPCallCommandHandler;
 class CSPRemoteAlertingToneListener;
 class CSPEtelConferenceStatusMonitor; 
+class CSPAudioHandlerBase;
+
 
 /**
 * Main class for using CS Call Plug-in. Implements the CCP API.
@@ -66,7 +68,8 @@
                    public MCSPSecuritySettingObserver,
                    public MCSPPubSubObserver,
                    public MCSPRemoteAlertingToneObserver, 
-                   public MCSPConferenceStatusObserver
+                   public MCSPConferenceStatusObserver,
+                   public MCSPTestCallProvider
 {
     public:
     
@@ -88,6 +91,21 @@
         */ 
         void NotifySsEvent( RMmCustomAPI::TSsTypeAndMode& aSsTypeAndMode,
                             RMmCustomAPI::TSsInfo& aSsInfo );
+        
+        
+// from base class MCSPTestCallProvider
+        
+        /**
+         * Initializes call provider for testing purposes. 
+         * @since S60 10.1         
+         * @param aObserver general observer
+         * @param aSsObserver observer for events related to supplementary 
+         *        services.
+         * @param aAudioHandler AudioHandler implementation for testing purposes.
+         */
+        void InitializeL( const MCCPObserver& aObserver,
+                          const MCCPSsObserver& aSsObserver,
+                          CSPAudioHandlerBase* aAudioHandler );
 
 
 // from base class CConvergedCallProvider    
@@ -543,10 +561,10 @@
         TUint32 iServiceId;
         
         /**
-        * Dev sound handler.
+        * Audio interface.
         * Own.
         */
-        CSPAudioHandler* iAudioHandler;
+        CSPAudioHandlerBase* iAudioHandler;
         
         /**
         * Call waiting requester.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneplugins/csplugin/inc/mcspaudiohandlerobserver.h	Fri Sep 17 08:29:19 2010 +0300
@@ -0,0 +1,34 @@
+/*
+ * Copyright (c) 2006 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:  Observer interface
+ *
+ */
+
+#ifndef MCSPAUDIOHANDLEROBSERVER_H
+#define MCSPAUDIOHANDLEROBSERVER_H
+
+/**
+ *  Observer for  events.
+ *
+ */
+class MCSPAudioHandlerObserver
+    {
+public:
+    /**
+     * Indicates failure of audio streams start request.
+     */
+    virtual void AudioStartingFailed() = 0;
+    };
+
+#endif // MCSPAUDIOHANDLEROBSERVER_H
--- a/phoneplugins/csplugin/inc/mcspaudiostreamobserver.h	Thu Sep 02 20:26:16 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,49 +0,0 @@
-/*
-* Copyright (c) 2006 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:  Observer interface for getting information on audio streams.
-*
-*/
-
-
-#ifndef MCSPAUDIOSTREAMOBSERVER_H
-#define MCSPAUDIOSTREAMOBSERVER_H
-
-/**
- *  Observer interface for getting information of audio streams.
- *
- */
-NONSHARABLE_CLASS( MCSPAudioStreamObserver )
-    {
-
-public:
-
-    /**
-     * Indication that audio streams has been started. 
-     *
-     */
-    virtual void AudioStreamsStarted() = 0;
-    
-    /**
-     * Indication that audio streams will be closed.
-     *
-     * Client can do operations affected to streams from this method,
-     * but after this method the streams will be closed.
-     *
-     */
-    virtual void AudioStreamsGoingToStop() = 0;
-
-    };
-
-
-#endif // MCSPAUDIOSTREAMOBSERVER_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneplugins/csplugin/inc/mcsptestcallprovider.h	Fri Sep 17 08:29:19 2010 +0300
@@ -0,0 +1,43 @@
+/*
+ * 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:  Interface that enables initializing call provider
+ *               for testing purposes.    
+ *
+ */
+
+#ifndef MCSPTESTCALLPROVIDER_H_
+#define MCSPTESTCALLPROVIDER_H_
+
+class CSPAudioHandlerBase;
+
+/**
+ *  Interface that enables initializing call provider
+ *  with dummy audio handler for testing purposes.   
+ *
+ */
+class MCSPTestCallProvider
+    {
+public:
+    
+    /**
+     * Initializes call provider for testing purposes. 
+     */
+    virtual void InitializeL( const MCCPObserver& aObserver,
+                              const MCCPSsObserver& aSsObserver,
+                              CSPAudioHandlerBase* aAudioHandler ) = 0;
+    };
+
+
+
+#endif /* MCSPTESTCALLPROVIDER_H_ */
--- a/phoneplugins/csplugin/inc/mcsptimerobserver.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneplugins/csplugin/inc/mcsptimerobserver.h	Fri Sep 17 08:29:19 2010 +0300
@@ -1,20 +1,19 @@
 /*
-* Copyright (c) 2006 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:  Observer interface for getting notifes from CSPTimer
-*
-*/
-
+ * Copyright (c) 2006 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:  Observer interface for getting notifes from CSPTimer
+ *
+ */
 
 #ifndef MCSPTIMEROBSERVER_H
 #define MCSPTIMEROBSERVER_H
@@ -25,17 +24,12 @@
  */
 class MCSPTimerObserver
     {
-
 public:
-
     /**
-     * Timer request has completed.
-     *
-     * @since S60 v3.1
+     * Indicates timer timeout event.
      */
     virtual void TimerEvent() = 0;
-
     };
 
+#endif // MCSPTIMEROBSERVER_H
 
-#endif // MCSPTIMEROBSERVER_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneplugins/csplugin/inc/mtmshandlerobserver.h	Fri Sep 17 08:29:19 2010 +0300
@@ -0,0 +1,40 @@
+/*
+ * 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:  Observer interface
+ *
+ */
+
+#ifndef TMSHANDLEROBSERVER_H
+#define TMSHANDLEROBSERVER_H
+
+/**
+ *  Class observing callbacks from TmsHandler.
+ *
+ */
+class MTmsHandlerObserver
+    {
+public:
+    /**
+     * Indicates successful start of call audio streams.
+     */
+    virtual void AudioStreamsStarted() = 0;
+
+    /*
+     * Indicates an error during audio streams startup.
+     */
+    virtual void AudioStreamsError(TInt aError) = 0;
+    };
+
+#endif // TMSHANDLEROBSERVER_H
+
--- a/phoneplugins/csplugin/inc/tmshandler.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneplugins/csplugin/inc/tmshandler.h	Fri Sep 17 08:29:19 2010 +0300
@@ -11,15 +11,14 @@
  *
  * Contributors:
  *
- * Description: Starts and stops audio streams.
+ * Description: Activates TMS call audio control streams.
  *
  */
 
-#ifndef TMSHandler_H
-#define TMSHandler_H
+#ifndef TMSHANDLER_H
+#define TMSHANDLER_H
 
 #include <e32base.h>
-#include "mcsptimerobserver.h"
 #include <tms.h>
 #include <tmsstreamobsrvr.h>
 
@@ -35,15 +34,13 @@
 using namespace TMS;
 
 //FORWARD DECLARATIONS
-class CSPTimer;
+class MTmsHandlerObserver;
 
 /**
- *  Starts and stops TMS audio streams.
- *  If the activation fails then there is a retry timer which
- *  will try the activation later.
+ *  Class responsible for creation and activation of TMS call audio control
+ *  streams.
  */
 NONSHARABLE_CLASS(TmsHandler) : public CBase,
-                                public MCSPTimerObserver,
                                 public TMSStreamObserver
     {
 public:
@@ -51,12 +48,12 @@
     /**
      * Two-phased constructing.
      */
-    static TmsHandler* NewL();
+    static TmsHandler* NewL(MTmsHandlerObserver& aObserver);
 
     /**
      * Two-phased constructing.
      */
-    static TmsHandler* NewLC();
+    static TmsHandler* NewLC(MTmsHandlerObserver& aObserver);
 
     /**
      * C++ default destructor.
@@ -64,80 +61,65 @@
     virtual ~TmsHandler();
 
     /**
-     * Starts audio streams ie inits mic and speaker.
+     * Activates TMS call audio control streams.
      */
-    void StartStreams();
+    TInt StartStreams();
 
     /**
-     * Stops audio streams ie shuts down mic and speaker.
+     * Deactivates TMS call audio control streams.
      */
     void StopStreams();
 
-    /**
-     * From MCSPTimerObserver.
-     * Notify from CSPTimer that timeout passed.
+    /*
+     * Indicates whether both audio streams have been started.
      */
-    void TimerEvent();
+    TBool AreStreamsStarted();
+
+    /*
+     * From TMSStreamObserver
+     * TMS call audio stream control event handler.
+     */
+    void TMSStreamEvent(const TMSStream& stream, TMSSignalEvent event);
 
 protected:
-    // Functions from base classes
-
-    // From TMSStreamObserver
-    void TMSStreamEvent(const TMSStream& stream, TMSSignalEvent event);
-
-private:
 
     /**
      * C++ default constructor.
      */
     TmsHandler();
 
-    void ConstructL();
-
-    static TInt TimerCallBack(TAny* aThisPtr);
-
-    void AudioStreamsStarted();
-
-    void StartTimer();
-
-    void StartMicAndSpeaker();
-
-    TBool IsMicAndSpeakerStarted();
-
-    gint CreateTMSCallControl();
-    gint CreateFactory();
-    gint CreateCall();
-
-    gint CreateUplink();
-    gint CreateDownlink();
-    gint OpenUplink();
-    gint OpenDownlink();
-
-    gint CreateModemSource();
-    gint AddModemSourceToStream();
-    gint CreateModemSink();
-    gint AddModemSinkToStream();
-    gint CreateMicSource();
-    gint AddMicSourceToStream();
-    gint CreateSpeakerSink();
-    gint AddSpeakerSinkToStream();
+    /*
+     * Symbian constructor
+     */
+    void ConstructL(MTmsHandlerObserver& aObserver);
 
 private:
-    // data
 
-    /**
-     * Timer for retrying the activation of streams (mic & speaker) if
-     * there was a failure in activation.
-     * Own.
+    /*
+     * Method creating and activating TMS call control objects.
+     */
+    TInt CreateTMSCallControl();
+
+    /*
+     * Processes Uplink stream state change events.
      */
-    CSPTimer* iTimer;
+    void ProcessUplinkStreamChangeEvent(TInt aState);
+
+    /*
+     * Processes Downlink stream state change events.
+     */
+    void ProcessDownlinkStreamChangeEvent(TInt aState);
+
+private:
 
-    /**
-     * Timeout value used with timer. Timeout value doubles every retry to
-     * activate the streams.
+    /*
+     * Observer to TMS call audio stream events.
      */
-    TInt iTimeout;
+    MTmsHandlerObserver* iObserver;
 
+    /*
+     * Pointers to TMS call audio control objects.
+     */
     TMSFactory* iFactory;
     TMSCall* iTmsCall;
     TMSCallType iCallType;
@@ -147,8 +129,14 @@
     TMSSource* iTmsModemSource;
     TMSSink* iTmsSpeakerSink;
     TMSSink* iTmsModemSink;
-    TBool iUplinkStarted;
-    TBool iDnlinkStarted;
+
+    /*
+     * Stream state control helpers
+     */
+    TBool iStartAfterInitComplete;
+    TBool iUplInitializing;
+    TBool iDnlInitializing;
     };
 
 #endif // TMSHANDLER_H
+
--- a/phoneplugins/csplugin/src/cspaudiohandler.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneplugins/csplugin/src/cspaudiohandler.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -17,7 +17,9 @@
 
 #include "cspaudiohandler.h"
 #include "tmshandler.h"
+#include "csptimer.h"
 #include "csplogger.h"
+#include "mcspaudiohandlerobserver.h"
 
 // ---------------------------------------------------------------------------
 // CSPAudioHandler::NewL.
@@ -25,7 +27,7 @@
 //
 CSPAudioHandler* CSPAudioHandler::NewL()
     {
-    CSPLOGSTRING(CSPOBJECT, "CSPAudioHandler::NewL()" );
+    CSPLOGSTRING(CSPOBJECT, "CSPAudioHandler::NewL()");
     CSPAudioHandler* self = new (ELeave) CSPAudioHandler();
     CleanupStack::PushL(self);
     self->ConstructL();
@@ -39,22 +41,42 @@
 //
 CSPAudioHandler::~CSPAudioHandler()
     {
-    CSPLOGSTRING(CSPOBJECT, "CSPAudioHandler::~CSPAudioHandler()" );
+    CSPLOGSTRING(CSPOBJECT, "CSPAudioHandler::~CSPAudioHandler()");
+    if (iTimer)
+        {
+        iTimer->CancelNotify();
+        delete iTimer;
+        }
     delete iTmsHandler;
     }
 
 // ---------------------------------------------------------------------------
+// CSPAudioHandler::SetObserver
+// ---------------------------------------------------------------------------
+//
+void CSPAudioHandler::SetObserver(MCSPAudioHandlerObserver& aObserver)
+    {
+    CSPLOGSTRING(CSPOBJECT, "CSPAudioHandler::SetObserver()");
+    iObserver = &aObserver;
+    }
+
+// ---------------------------------------------------------------------------
 // CSPAudioHandler::Start
+// Note: Client must pass the observer through SetObserver() prior to calling
+// Start(), otherwise MTmsHandlerObserver callbacks will be missed.
 // ---------------------------------------------------------------------------
 //
 void CSPAudioHandler::Start()
     {
     iCallCount++;
     CSPLOGSTRING2(CSPINT, "CSPAudioHandler::Start callcount: %d", iCallCount);
-
     if (iTmsHandler && iCallCount == 1)
         {
-        iTmsHandler->StartStreams();
+        TInt err = iTmsHandler->StartStreams();
+        if (err != KErrNone)
+            {
+            AudioStreamsError(err);
+            }
         }
     }
 
@@ -65,6 +87,10 @@
 void CSPAudioHandler::Stop()
     {
     CSPLOGSTRING2(CSPINT, "CSPAudioHandler::Stop callcount: %d", iCallCount);
+    if (iTimer)
+        {
+        iTimer->CancelNotify();
+        }
     if (iTmsHandler && iCallCount == 1)
         {
         iTmsHandler->StopStreams();
@@ -77,6 +103,82 @@
     }
 
 // ---------------------------------------------------------------------------
+// CSPAudioHandler::ReportAudioFailureAfterTimeout
+// ---------------------------------------------------------------------------
+//
+void CSPAudioHandler::ReportAudioFailureAfterTimeout(TInt aTimeout)
+    {
+    CSPLOGSTRING(CSPOBJECT, "CSPAudioHandler::ReportAudioFailureAfterTimeout()");
+
+    if (iTmsHandler)
+        {
+        // Make sure audio streams are not already active, so we don't
+        // accidentaly hangup the call by setting the timer.
+        if (iTimer && !iTmsHandler->AreStreamsStarted())
+            {
+            if (iTimer->IsNotifyOngoing())
+                {
+                iTimer->CancelNotify();
+                }
+            iTimer->NotifyAfter(aTimeout, *this);
+            }
+        }
+    }
+
+// ---------------------------------------------------------------------------
+// CSPAudioHandler::AudioStreamsStarted
+// From MTmsHandlerObserver
+// ---------------------------------------------------------------------------
+//
+void CSPAudioHandler::AudioStreamsStarted()
+    {
+    CSPLOGSTRING(CSPOBJECT, "CSPAudioHandler::AudioStreamsStarted()");
+    if (iTimer)
+        {
+        iTimer->CancelNotify();
+        }
+    }
+
+// ---------------------------------------------------------------------------
+// CSPAudioHandler::AudioStreamsError
+// From MTmsHandlerObserver
+// ---------------------------------------------------------------------------
+//
+void CSPAudioHandler::AudioStreamsError(TInt /*aError*/)
+    {
+    CSPLOGSTRING(CSPOBJECT, "CSPAudioHandler::AudioStreamsError()");
+    if (iTimer)
+        {
+        iTimer->CancelNotify();
+        }
+
+    // Note: The observer must be provided in SetObserver() prior to Start()
+    // request, otherwise error conditions will not be propagated to the client.
+    if (iObserver)
+        {
+        iObserver->AudioStartingFailed();
+        }
+    }
+
+// ---------------------------------------------------------------------------
+// CSPAudioHandler::TimerEvent
+// From MCSPTimerObserver
+// ---------------------------------------------------------------------------
+//
+void CSPAudioHandler::TimerEvent()
+    {
+    CSPLOGSTRING(CSPOBJECT, "CSPAudioHandler::TimerEvent()");
+    if (iObserver)
+        {
+        iObserver->AudioStartingFailed();
+        }
+    if (iTmsHandler)
+        {
+        iTmsHandler->StopStreams();
+        }
+    }
+
+// ---------------------------------------------------------------------------
 // Constructs the monitor.
 // ---------------------------------------------------------------------------
 //
@@ -92,10 +194,9 @@
 //
 void CSPAudioHandler::ConstructL()
     {
-    if (!iTmsHandler)
-        {
-        iTmsHandler = TmsHandler::NewL();
-        }
+    CSPLOGSTRING(CSPOBJECT, "CSPAudioHandler::ConstructL()");
+    iTmsHandler = TmsHandler::NewL(*this);
+    iTimer = CSPTimer::NewL();
     }
 
 // End of file
--- a/phoneplugins/csplugin/src/cspcall.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneplugins/csplugin/src/cspcall.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2007-2009 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"
@@ -44,7 +44,7 @@
 #include "cspuuimessagesender.h"
 
 const TInt KTimesToSplitValue = 16;
-
+const TInt KStreamsStartWaitTime = 2000000; //2 sec
 
 // ---------------------------------------------------------------------------
 // CSPCall::~CSPCall
@@ -56,19 +56,19 @@
 
     delete iParams;
     iCommonInfo.IndicateHangupComplete( *this );
-    
-    if ( iAudioHandler 
+
+    if ( iAudioHandler
          && iAudioStatus == ECSPCallAudioStatusActive )
         {
         iAudioStatus = ECSPCallAudioStatusInactive;
         iAudioHandler->Stop();
         }
-    
-    delete iUserToUserInformation;    
-    delete iRequester;    
+
+    delete iUserToUserInformation;
+    delete iRequester;
     delete iCallEventMonitor;
     delete iCallStatusMonitor;
-    delete iCallCapsMonitor; 
+    delete iCallCapsMonitor;
     delete iCallInfoMonitor;
     delete iForwardProvider;
     delete iTransferProvider;
@@ -76,12 +76,12 @@
     delete iUUIMessageSender;
     delete iSkypeId;
 
-    iObservers.Close();        
+    iObservers.Close();
     if ( iCall.SubSessionHandle() )
         {
         iCall.Close();
         }
-    
+
     CSPLOGSTRING(CSPOBJECT, "CSPCall::~CSPCall >");
     }
 
@@ -89,10 +89,15 @@
 // CSPCall::SetAudioHandler
 // ---------------------------------------------------------------------------
 //
-void CSPCall::SetAudioHandler( CSPAudioHandler* aHandler )
+void CSPCall::SetAudioHandler( CSPAudioHandlerBase* aHandler )
     {
     CSPLOGSTRING2(CSPINT, "CSPCall::SetAudioHandler handler: %x", aHandler);
     iAudioHandler = aHandler;
+
+    if (iAudioHandler)
+        {
+        iAudioHandler->SetObserver(*this);
+        }
     }
 
 // ---------------------------------------------------------------------------
@@ -103,61 +108,61 @@
     {
     switch ( aValue )
         {
-        case MCSPSecuritySettingObserver::ESecureCall:         
+        case MCSPSecuritySettingObserver::ESecureCall:
             {
-            CSPLOGSTRING(CSPINT, 
+            CSPLOGSTRING(CSPINT,
                     "CSPCall::SecuritySettingChanged Sending 'secure call' event");
             NotifyCallEventOccurred( MCCPCallObserver::ECCPSecureCall );
-            break; 
-            }            
-        case MCSPSecuritySettingObserver::ENotSecureCall:                     
+            break;
+            }
+        case MCSPSecuritySettingObserver::ENotSecureCall:
             {
-            CSPLOGSTRING(CSPINT, 
+            CSPLOGSTRING(CSPINT,
                     "CSPCall::SecuritySettingChanged Sending 'not secure call' event");
             NotifyCallEventOccurred( MCCPCallObserver::ECCPNotSecureCall );
-            break;  
+            break;
             }
-        case MCSPSecuritySettingObserver::ESecureNotSpecified:                     
+        case MCSPSecuritySettingObserver::ESecureNotSpecified:
             {
-            CSPLOGSTRING(CSPINT, 
+            CSPLOGSTRING(CSPINT,
                     "CSPCall::SecuritySettingChanged Sending SecureNotSpecified");
             NotifyCallEventOccurred( MCCPCallObserver::ECCPSecureNotSpecified );
-            break;  
+            break;
             }
 
-        default: 
+        default:
             {
             CSPLOGSTRING(CSPERROR, "CSPCall::SecuritySettingChanged, \
-                unknown event");            
-            break;  
+                unknown event");
+            break;
             }
         }
     }
 
 // ---------------------------------------------------------------------------
 // CSPCall::RemoteAlertingToneStatusChanged
-// Sends EarlyMediaStarted event to observer if network has started to 
+// Sends EarlyMediaStarted event to observer if network has started to
 // play remote alerting tone. There is only one known use case: Network
-// starts playing alerting tone during connecting state. 
+// starts playing alerting tone during connecting state.
 //
-// This RemoteAlertingToneStatusChanged is called for every call, 
-// so it is calls responsibility to determine if the 
+// This RemoteAlertingToneStatusChanged is called for every call,
+// so it is calls responsibility to determine if the
 // observer should be notified.
 // ---------------------------------------------------------------------------
 //
 void CSPCall::RemoteAlertingToneStatusChanged(
     RMmCustomAPI::TRemoteAlertingToneStatus aNewStatus )
     {
-    CSPLOGSTRING2(CSPINT, 
+    CSPLOGSTRING2(CSPINT,
         "CSPCall::RemoteAlertingToneStatusChanged new status: %d", aNewStatus );
-    
+
     if ( aNewStatus == RMmCustomAPI::EUiStopTone ||
-         aNewStatus == RMmCustomAPI::EUiNoTone ) // NW tells us to stop playing 
+         aNewStatus == RMmCustomAPI::EUiNoTone ) // NW tells us to stop playing
         {
         // Connecting is only state where network starts playing the tone.
         if ( iCallState == MCCPCallObserver::ECCPStateConnecting )
             {
-            NotifyCallEventOccurred( 
+            NotifyCallEventOccurred(
                 MCCPCallObserver::ECCCSPEarlyMediaStarted );
             }
         }
@@ -168,23 +173,23 @@
 // Notifies observers about state changes
 // ---------------------------------------------------------------------------
 //
-void CSPCall::NotifyCallStateChangedETel( RMobileCall::TMobileCallStatus aState ) 
+void CSPCall::NotifyCallStateChangedETel( RMobileCall::TMobileCallStatus aState )
     {
-    CSPLOGSTRING3(CSPINT, 
-                  "CSPCall::NotifyCallStateChangedETel < state: %d this: %x", 
+    CSPLOGSTRING3(CSPINT,
+                  "CSPCall::NotifyCallStateChangedETel < state: %d this: %x",
                   aState, this );
     switch ( aState )
         {
         /*
         Cannot receive any mapping call statuses from ETel to following
         optional states:
-        
+
         ECCPStateForwarding   MO call is being forwarded at receiver end
         ECCPStateQueued       Call is queued locally.
-        
+
         The commented observer calls are for CS specific call states.
         */
-        
+
         // Indicates that the call is idle or unknown.
         case RMobileCall::EStatusIdle:
         case RMobileCall::EStatusUnknown:
@@ -192,21 +197,21 @@
             CSPLOGSTRING(CSPINT, "CSPCall::NotifyCallStateChangedETel Idle");
 
             // If audio still active
-            if ( iAudioStatus == ECSPCallAudioStatusActive 
+            if ( iAudioStatus == ECSPCallAudioStatusActive
                  && iAudioHandler
                  && iParams->CallType() == CCPCall::ECallTypeCSVoice )
                 {
                 iAudioStatus = ECSPCallAudioStatusInactive;
                 iAudioHandler->Stop();
                 }
-                
+
             // Notify error in case not going through disconnecting
-            if ( iCallState != MCCPCallObserver::ECCPStateDisconnecting 
+            if ( iCallState != MCCPCallObserver::ECCPStateDisconnecting
                      && !iTerminationErrorNotified )
                 {
                 CheckAndNotifyTerminationError();
                 }
-            
+
             NotifyCallStateChanged( MCCPCallObserver::ECCPStateIdle );
             iCommonInfo.IndicateHangupComplete( *this );
             break;
@@ -220,12 +225,12 @@
                 iAudioStatus = ECSPCallAudioStatusActive;
                 iAudioHandler->Start();
                 }
-                
+
             iDontReportTerm = EFalse;
             NotifyCallStateChanged( MCCPCallObserver::ECCPStateDialling );
             break;
-            }            
-        //Indicates that the MT call is ringing but not answered yet by 
+            }
+        // Indicates that the MT call is ringing but not answered yet by
         // the local user
         case RMobileCall::EStatusRinging:
             {
@@ -234,13 +239,13 @@
             break;
             }
         // Indicates that the local user has answered the MT call but
-        // the network has not acknowledged the call connection yet. 
+        // the network has not acknowledged the call connection yet.
         case RMobileCall::EStatusAnswering:
             {
             CSPLOGSTRING(CSPINT, "CSPCall::NotifyCallStateChangedETel Answering");
 
             if ( !iMobileOriginated
-                && iAudioHandler 
+                && iAudioHandler
                 && iAudioStatus == ECSPCallAudioStatusInactive
                 && iParams->CallType() == CCPCall::ECallTypeCSVoice )
                 {
@@ -252,11 +257,11 @@
             break;
             }
         // MO Call: the network notifies to the MS that the remote party
-        // is now ringing. 
+        // is now ringing.
         case RMobileCall::EStatusConnecting:
             {
             CSPLOGSTRING(CSPINT, "CSPCall::NotifyCallStateChangedETelConnecting");
-            RMmCustomAPI::TRemoteAlertingToneStatus tone = 
+            RMmCustomAPI::TRemoteAlertingToneStatus tone =
                 iCommonInfo.GetRemoteAlertingToneStatus();
             if ( tone == RMmCustomAPI::EUiNoTone ||
                  tone == RMmCustomAPI::EUiStopTone )
@@ -274,12 +279,21 @@
             {
             CSPLOGSTRING(CSPINT, "CSPCall::NotifyCallStateChangedETel Connected");
 
+            // Expect MCSPAudioHandlerObserver::AudioStartingFailed callback
+            // when call audio control streams fail to start within specified
+            // timeout.
+            if (iAudioHandler && (iParams->CallType() == CCPCall::ECallTypeCSVoice))
+                {
+                iAudioHandler->ReportAudioFailureAfterTimeout(
+                        KStreamsStartWaitTime);
+                }
+
             iDontReportTerm = ETrue;
             NotifyCallStateChanged( MCCPCallObserver::ECCPStateConnected );
-            
+
             // Agreement with TSY is that the
             // COLP number is available in connected state.
-            NotifyRemotePartyNumberChanged();            
+            NotifyRemotePartyNumberChanged();
             break;
             }
         // Indicates that call is disconnecting. (Same as RCall::HangingUp)
@@ -291,8 +305,8 @@
                 {
                 CheckAndNotifyTerminationError();
                 }
-            
-            NotifyCallStateChanged( MCCPCallObserver::ECCPStateDisconnecting );                
+
+            NotifyCallStateChanged( MCCPCallObserver::ECCPStateDisconnecting );
             break;
             }
         // Indicates that the call is disconnecting with inband data
@@ -300,19 +314,19 @@
         // that the call is not to be released until user terminates call
         case RMobileCall::EStatusDisconnectingWithInband:
             {
-            CSPLOGSTRING(CSPINT, 
+            CSPLOGSTRING(CSPINT,
                 "CSPCall::NotifyCallStateChangedETel DisconnectingWithInband");
 
             if ( !iTerminationErrorNotified )
                 {
                 CheckAndNotifyTerminationError();
                 }
-            
-            NotifyCallStateChangedWithInband( 
-                                MCCPCallObserver::ECCPStateDisconnecting );
+
+            NotifyCallStateChangedWithInband(
+                    MCCPCallObserver::ECCPStateDisconnecting );
             break;
             }
-        // Indicates that the call is connected but on hold.  
+        // Indicates that the call is connected but on hold.
         case RMobileCall::EStatusHold:
             {
             CSPLOGSTRING(CSPINT, "CSPCall::NotifyCallStateChangedETel Hold");
@@ -325,25 +339,25 @@
             NotifyCallStateChanged( MCCPCallObserver::ECCPStateTransferring );
             break;
             }
-            
+
         // Indicates that call is undergoing temporary channel loss
-        // and it may or may not be reconnected.  
-        case RMobileCall::EStatusReconnectPending: // fall through 
+        // and it may or may not be reconnected.
+        case RMobileCall::EStatusReconnectPending: // fall through
         //Indicates that the call is the non-active half of an alternating
         // call. This call is waiting for its active half or the remote
         // end to switch alternating call mode.
         case RMobileCall::EStatusWaitingAlternatingCallSwitch: // fall through
         case RMobileCall::EStatusTransferAlerting:
             {
-            CSPLOGSTRING2(CSPINT, 
+            CSPLOGSTRING2(CSPINT,
                     "CSPCall::NotifyCallStateChangedETel no special handling for state %d",
-                    aState);            
+                    aState);
             break;
             }
 
         default:
             {
-            CSPLOGSTRING(CSPERROR, 
+            CSPLOGSTRING(CSPERROR,
                     "CSPCall::NotifyCallStateChangedETel callstate UNKNOWN");
             break;
             }
@@ -356,12 +370,12 @@
 // Notifies observers about call events
 // ---------------------------------------------------------------------------
 //
-void CSPCall::NotifyCallEventOccurred( 
+void CSPCall::NotifyCallEventOccurred(
     MCCPCallObserver::TCCPCallEvent aEvent )
     {
-    CSPLOGSTRING2(CSPINT, 
+    CSPLOGSTRING2(CSPINT,
             "CSPCall::NotifyCallEventOccurred < event: %d", aEvent);
-    
+
     TInt obsCount = iObservers.Count();
     for ( TInt i = 0; i < obsCount; i++ )
         {
@@ -371,10 +385,10 @@
             {
             obs->CallEventOccurred( aEvent, this );
             }
-            
+
         CSPLOGSTRING2(CSPINT, "CSPCall::NotifyCallEventOccurred ok obs=%d",i);
         }
-        
+
     CSPLOGSTRING2(CSPINT, "CSPCall::NotifyCallEventOccurred > event: %d", aEvent);
     }
 
@@ -383,8 +397,8 @@
 // Forward notification of transfer event to it's provider
 // ---------------------------------------------------------------------------
 //
-void CSPCall::NotifyTransferCallEventOccurred( 
-    MCCPTransferObserver::TCCPTransferEvent aEvent ) 
+void CSPCall::NotifyTransferCallEventOccurred(
+    MCCPTransferObserver::TCCPTransferEvent aEvent )
     {
     CSPLOGSTRING2(CSPINT, "CSPCall::NotifyTransferCallEventOccurred %d", aEvent);
     // forward the method call to CSPTransferProvider object
@@ -396,11 +410,11 @@
 // Notifies observers about call events
 // ---------------------------------------------------------------------------
 //
-void CSPCall::NotifyForwardEventOccurred( 
+void CSPCall::NotifyForwardEventOccurred(
     MCCPForwardObserver::TCCPForwardEvent aEvent )
     {
     CSPLOGSTRING2(CSPINT, "CSPCall::NotifyForwardEventOccurred %d", aEvent);
-    iForwardProvider->NotifyForwardEventOccurred( aEvent );    
+    iForwardProvider->NotifyForwardEventOccurred( aEvent );
     }
 
 // ---------------------------------------------------------------------------
@@ -424,19 +438,19 @@
     {
     CSPLOGSTRING(CSPERROR, "CSPCall::DialRequestFailed");
     iDialCompletionCode = aErrorCode;
-    
-    // If state has not changed 
+
+    // If state has not changed
     // ( e.g. in case of dial could not be initiated by network problem)
-    if ( iCallStatusMonitor->State() == 
+    if ( iCallStatusMonitor->State() ==
                    RMobileCall::RMobileCall::EStatusUnknown )
         {
-        NotifyErrorOccurred( iRequester->MapError( aErrorCode ) );              
-        
+        NotifyErrorOccurred( iRequester->MapError( aErrorCode ) );
+
         // Force release since otherwise call remains unreleased
         CSPLOGSTRING(CSPERROR, "CSPCall::DialRequestFailed() Force Idle");
         NotifyCallStateChanged( MCCPCallObserver::ECCPStateIdle );
         }
-    
+
     // If dial request has completed after notifying disconnecting state
     else if ( iCallState == MCCPCallObserver::ECCPStateDisconnecting
              && !iTerminationErrorNotified )
@@ -453,14 +467,14 @@
 void CSPCall::EmergencyDialRequestFailed( TInt /*aErrorCode*/ )
     {
     CSPLOGSTRING(CSPERROR, "CSPCall::EmergencyDialRequestFailed");
-    
+
     // Always same error code for CCE
     NotifyErrorOccurred( ECCPEmergencyFailed );
-    
+
     // Mark that exit code will not be used
     iTerminationErrorNotified = ETrue;
     }
-    
+
 // ---------------------------------------------------------------------------
 // CSPCall::NotifyErrorOccurred
 // Notifies observers about errors
@@ -480,7 +494,7 @@
             }
         }
     }
-    
+
 // ---------------------------------------------------------------------------
 // CSPCall::CallCapsChanged
 // Notifies observers about new capabilities.
@@ -519,7 +533,7 @@
 //
 TInt CSPCall::GetMobileDataCallCaps( TDes8& /*aCaps*/ ) const
     {
-    CSPLOGSTRING(CSPERROR, 
+    CSPLOGSTRING(CSPERROR,
             "CSPCall::GetMobileDataCallCaps ERROR, Not supported");
     return KErrNotSupported;
     }
@@ -558,18 +572,18 @@
     CSPLOGSTRING(CSPREQIN, "CSPCall::RemotePartyName");
     return iRemotePartyName;
     }
-  
+
 // ---------------------------------------------------------------------------
 // From class MCCPCall
 // CSPCall::DialledParty
 // ---------------------------------------------------------------------------
-//  
-const TDesC& CSPCall::DialledParty() const 
+//
+const TDesC& CSPCall::DialledParty() const
     {
     CSPLOGSTRING2(CSPREQIN, "CSPCall::DialledParty %S", &iRemotePartyNumber);
     return iRemotePartyNumber;
     }
-    
+
 // ---------------------------------------------------------------------------
 // From class MCCPCall
 // CSPCall::Answer
@@ -579,15 +593,15 @@
     {
     CSPLOGSTRING(CSPREQIN, "CSPCall::Answer <");
     TInt ret( KErrNone );
-    
-    if ( iCallState == MCCPCallObserver::ECCPStateRinging 
+
+    if ( iCallState == MCCPCallObserver::ECCPStateRinging
          || iCallState == MCCPCallObserver::ECCPStateQueued )
-        {    
+        {
         if( iMobileOriginated )
             {
             ret = KErrGeneral;
             }
-        else if( iCallState != MCCPCallObserver::ECCPStateRinging && 
+        else if( iCallState != MCCPCallObserver::ECCPStateRinging &&
             iCallState != MCCPCallObserver::ECCPStateQueued )
             {
             ret = KErrAccessDenied;
@@ -602,7 +616,7 @@
         // Not correct state for answer
         ret = KErrNotReady;
         }
-    
+
     CSPLOGSTRING2(CSPREQIN, "CSPCall::Answer > ret %d", ret);
     return ret;
     }
@@ -615,9 +629,9 @@
 TInt CSPCall::PerformAnswerRequest()
     {
     CSPLOGSTRING(CSPREQIN, "CSPCall::PerformAnswerRequest");
-    
+
     TInt ret = iRequester->MakeRequest( CSPEtelCallRequester::ERequestTypeAnswer );
-    CSPLOGSTRING3(CSPINT, 
+    CSPLOGSTRING3(CSPINT,
             "CSPCall::Answer request performed, call state %d ret: %d", iCallState, ret);
 
     return ret;
@@ -635,7 +649,7 @@
     if ( iCallState == MCCPCallObserver::ECCPStateRinging
          || iCallState == MCCPCallObserver::ECCPStateQueued
          || iCallState == MCCPCallObserver::ECCPStateAnswering )
-        {        
+        {
         CSPLOGSTRING( CSPREQIN, "CSPCall::Reject 2" );
         ret = HangUp();
         }
@@ -657,7 +671,7 @@
     CSPLOGSTRING(CSPREQIN, "CSPCall::Queue");
     TBool callWaitingState;
     iDontReportTerm = ETrue;
-    
+
     TRAPD( res, iCommonInfo.GetCallWaitingL( *iParams, callWaitingState ) );
     if( res == KErrNone )
         {
@@ -665,7 +679,7 @@
             {
             CSPLOGSTRING(CSPREQIN, "CSPCall::Queue Call Waiting On");
             iCallState = MCCPCallObserver::ECCPStateQueued;
-            
+
             // Notify Queued state
             TInt obsCount = iObservers.Count ( );
             for (TInt i = 0; i < obsCount; i++ )
@@ -687,14 +701,14 @@
         }
     else
         {
-        CSPLOGSTRING2(CSPERROR, 
-                      "CSPCall::Queue Error %d with CR. Call Waiting Off", 
+        CSPLOGSTRING2(CSPERROR,
+                      "CSPCall::Queue Error %d with CR. Call Waiting Off",
                       res);
         }
-    
+
     return KErrNotSupported;
     }
-    
+
 // ---------------------------------------------------------------------------
 // From class MCCPCall
 // CSPCall::Ringing
@@ -704,24 +718,24 @@
     {
     CSPLOGSTRING(CSPREQIN, "CSPCall::Ringing");
     iDontReportTerm = ETrue;
-    
+
     // Ringing state is accepted because MT-call goes to ringing
     // state in the beginning based on ETel state maching.
     if ( iCallState == MCCPCallObserver::ECCPStateIdle ||
-         iCallState == MCCPCallObserver::ECCPStateRinging ) 
+         iCallState == MCCPCallObserver::ECCPStateRinging )
         {
         NotifyRingingState();
         return KErrNone;
         }
     else if ( iCallState == MCCPCallObserver::ECCPStateAnswering )
         {
-        // Do nothing if already in Answering state (autoanswer).   
-        return KErrNone; 
+        // Do nothing if already in Answering state (autoanswer).
+        return KErrNone;
         }
-        
+
     return KErrNotReady;
     }
-    
+
 // ---------------------------------------------------------------------------
 // From class MCCPCall
 // CSPCall::HangUp
@@ -731,9 +745,9 @@
     {
     CSPLOGSTRING2(CSPREQIN, "CSPCall::HangUp this: %x", this);
     TInt ret( KErrNone );
-    
+
     CSPEtelCallRequester::TRequestType req = iRequester->Request();
-    if ( req == CSPEtelCallRequester::ERequestTypeDial || 
+    if ( req == CSPEtelCallRequester::ERequestTypeDial ||
          ( req == CSPEtelCallRequester::ERequestTypeDialEmergency ) )
         {
         CSPLOGSTRING(CSPREQIN, "CSPCall::HangUp 1: Cancel ongoing dial");
@@ -745,7 +759,7 @@
         CSPLOGSTRING(CSPREQIN, "CSPCall::HangUp 2");
         ret = KErrAlreadyExists;
         }
-    else if ( req == CSPEtelCallRequester::ERequestTypeNone 
+    else if ( req == CSPEtelCallRequester::ERequestTypeNone
               && iCallState != MCCPCallObserver::ECCPStateIdle )
         {
         CSPLOGSTRING(CSPREQIN, "CSPCall::HangUp 3");
@@ -765,7 +779,7 @@
         ret = iRequester->MakeRequest( CSPEtelCallRequester::ERequestTypeHangup );
         iCommonInfo.IndicateActiveHangup( *this );
         }
-        
+
     return ret;
     }
 
@@ -779,7 +793,7 @@
     CSPLOGSTRING(CSPREQIN, "CSPCall::Cancel");
     return HangUp();
     }
-        
+
 // ---------------------------------------------------------------------------
 // From class MCCPCall
 // CSPCall::Hold
@@ -789,17 +803,17 @@
     {
     CSPLOGSTRING2(CSPREQIN, "CSPCall::Hold this: %x", this);
     TInt ret;
-        
+
     if ( iCallState == MCCPCallObserver::ECCPStateConnected )
         {
         CSPLOGSTRING(CSPREQOUT, "CSPCall::Hold make request");
 
         // Set call on hold
-        ret = iRequester->MakeRequest( 
+        ret = iRequester->MakeRequest(
                     CSPEtelCallRequester::ERequestTypeHold );
         if ( ret != KErrNone )
             {
-            CSPLOGSTRING2(CSPERROR, 
+            CSPLOGSTRING2(CSPERROR,
                 "CSPCall::Hold ERROR: %d", ret);
             }
         }
@@ -815,7 +829,7 @@
         }
 
     return ret;
-    } 
+    }
 
 // ---------------------------------------------------------------------------
 // From class MCCPCall
@@ -826,12 +840,12 @@
     {
     CSPLOGSTRING2(CSPREQIN, "CSPCall::Resume this: %x", this);
     TInt ret;
-        
+
     if ( iCallState == MCCPCallObserver::ECCPStateHold )
         {
         CSPLOGSTRING(CSPREQOUT, "CSPCall::Resume request");
-        
-        ret = iRequester->MakeRequest( 
+
+        ret = iRequester->MakeRequest(
             CSPEtelCallRequester::ERequestTypeResume );
         if ( KErrNone != ret )
             {
@@ -848,7 +862,7 @@
         CSPLOGSTRING(CSPERROR, "CSPCall::Resume not held state" );
         ret = KErrNotReady;
         }
-    
+
     return ret;
     }
 
@@ -863,7 +877,7 @@
     TInt ret;
     if ( iCallState == MCCPCallObserver::ECCPStateConnected
          || iCallState == MCCPCallObserver::ECCPStateHold )
-        {    
+        {
         ret = iRequester->MakeRequest( CSPEtelCallRequester::ERequestTypeSwap );
         if ( ret )
             {
@@ -920,7 +934,7 @@
     CSPLOGSTRING2(CSPREQIN, "CSPCall::Caps %b", iCapsFlags );
     return (MCCPCallObserver::TCCPCallControlCaps) iCapsFlags;
     }
- 
+
 // ---------------------------------------------------------------------------
 // From class MCCPCall
 // CSPCall::SetParameters
@@ -947,20 +961,20 @@
 // CSPCall::TransferProvider
 // ---------------------------------------------------------------------------
 //
-MCCPTransferProvider* CSPCall::TransferProviderL(const MCCPTransferObserver& 
+MCCPTransferProvider* CSPCall::TransferProviderL(const MCCPTransferObserver&
                                                             aObserver )
     {
     CSPLOGSTRING(CSPREQIN, "CSPCall::TransferProvider");
     iTransferProvider->AddObserverL( aObserver );
     return iTransferProvider;
     }
-    
+
 // ---------------------------------------------------------------------------
 // From class MCCPCall
 // CSPCall::ForwardProvider
 // ---------------------------------------------------------------------------
 //
-MCCPForwardProvider* CSPCall::ForwardProviderL( 
+MCCPForwardProvider* CSPCall::ForwardProviderL(
         const MCCPForwardObserver& aObserver )
     {
     CSPLOGSTRING(CSPREQIN, "CSPCall::ForwardProvider");
@@ -990,14 +1004,14 @@
 TInt CSPCall::RemoveObserver( const MCCPCallObserver& aObserver )
     {
     CSPLOGSTRING2(CSPREQIN, "CSPCall::RemoveObserver %x", &aObserver);
-    
+
     TInt found = iObservers.Find( &aObserver );
     if ( found != KErrNotFound )
         {
         iObservers.Remove( found );
         return KErrNone;
         }
-        
+
     return found;
     }
 
@@ -1030,7 +1044,7 @@
 // ---------------------------------------------------------------------------
 //
 TBool CSPCall::IsSecured( ) const
-    {    
+    {
     CSPLOGSTRING(CSPREQIN, "CSPCall::IsSecured");
     return iCommonInfo.NetworkSecurityStatus();
     }
@@ -1041,7 +1055,7 @@
 // ---------------------------------------------------------------------------
 //
 TBool CSPCall::SecureSpecified( ) const
-    {    
+    {
     CSPLOGSTRING(CSPREQIN, "CSPCall::SecureSpecified");
     return iCommonInfo.SecureSpecified();
     }
@@ -1059,7 +1073,7 @@
     if ( iCallState == MCCPCallObserver::ECCPStateConnecting )
         {
         RMmCustomAPI::TRemoteAlertingToneStatus ts = iCommonInfo.GetRemoteAlertingToneStatus();
-        
+
         if (ts == RMmCustomAPI::EUiRbtTone )
             {
             tone = ECCPRemoteAlerting;
@@ -1068,7 +1082,7 @@
             {
             tone = ECCPNoSoundSequence;
             }
-        else            
+        else
             {
             // No tone
             tone = ECCPNoSoundSequence;
@@ -1076,14 +1090,14 @@
         }
     else
         {
-        // Handle disconnecting tones      
+        // Handle disconnecting tones
         TInt callDisconnectingError = ExitCodeError();
         CSPLOGSTRING2(CSPINT, "CSPCall::Tone exit code err: %d", callDisconnectingError);
 
         switch( callDisconnectingError )
             {
             case KErrNone:
-                // GSM: DIAL TONE (optional) - not used in Nokia phones 
+                // GSM: DIAL TONE (optional) - not used in Nokia phones
                 CSPLOGSTRING(CSPERROR, "CSPCall::Tone: No sound");
                 break;
             case KErrGsmCCUserBusy:
@@ -1098,7 +1112,7 @@
                 // GSM: NONE, Nokia phones: radio path not available
                 tone = ECCPToneRadioPathNotAvailable;
                 CSPLOGSTRING(CSPINT, "CSPCall::Tone: RadioPathNotAvailable");
-                break;      
+                break;
             case KErrGsmCCNoChannelAvailable:
             case KErrGsmCCTemporaryFailure:
             case KErrGsmCCSwitchingEquipmentCongestion:
@@ -1162,11 +1176,11 @@
                 break;
             }
          }
-    
+
     CSPLOGSTRING2(CSPREQIN, "CSPCall::Tone > tone: %d", tone);
     return tone;
     }
-    
+
 // ---------------------------------------------------------------------------
 // From class MCCPCSCall
 // CSPCall::NoFdnCheck
@@ -1177,7 +1191,7 @@
     CSPLOGSTRING(CSPREQIN, "CSPCall::NoFDNCheck");
     iFdnCheck = EFalse;
     }
-    
+
 // ---------------------------------------------------------------------------
 // CSPCall::LogDialedNumber
 // ---------------------------------------------------------------------------
@@ -1187,7 +1201,7 @@
     CSPLOGSTRING(CSPREQIN, "CSPCall::LogDialedNumber true");
     return ETrue;
     }
-    
+
 // ---------------------------------------------------------------------------
 // From class MCCPCSCall
 // CSPCall::Dial
@@ -1209,25 +1223,35 @@
     CSPLOGSTRING(CSPREQIN, "CSPCall::PerformDialRequest");
     iDialCompletionCode = KErrNone;
     iTerminationErrorNotified = EFalse;
-    
+
     // Send the User to User Information.
     if( iUserToUserInformation->Length() )
         {
         iUUIMessageSender->SendUUIMessage( *iUserToUserInformation );
         }
-    
+
     return DialFdnCond( iFdnCheck );
     }
-    
+
+// ---------------------------------------------------------------------------
+// From class MCSPAudioHandlerObserver
+// CSPCall::AudioStartingFailed
+// ---------------------------------------------------------------------------
+//
+void CSPCall::AudioStartingFailed()
+    {
+    HangUp();
+    }
+
 // ---------------------------------------------------------------------------
 // CSPCall::CSPCall
 // ---------------------------------------------------------------------------
 //
-CSPCall::CSPCall( RMobileLine& aLine, 
+CSPCall::CSPCall( RMobileLine& aLine,
                   TBool aMobileOriginated,
                   const TDesC& aName,
                   MCSPCommonInfo& aCommonInfo,
-                  TBool aIsEmergencyCall ) : 
+                  TBool aIsEmergencyCall ) :
                     iLine( aLine ),
                     iMobileOriginated( aMobileOriginated ),
                     iName( aName ), 
@@ -1261,49 +1285,49 @@
 // CSPCall::ConstructL
 // Constructing CSPCall in 2nd phase
 // ---------------------------------------------------------------------------
-//    
+//
 void CSPCall::ConstructL( const CCCECallParameters& aParams )
     {
     CSPLOGSTRING(CSPOBJECT, "CSPCall::ConstructL <");
 
-    // Create cloned copy of call parameters 
+    // Create cloned copy of call parameters
     iParams = static_cast<CCCECallParameters*>( aParams.CloneL() );
-    
-    // Open call handle  
-    OpenCallHandleL(); 
+
+    // Open call handle
+    OpenCallHandleL();
 
-    // Update call info 
-    UpdateCallInfo(); 
-    
-    // Update call state from ETel 
-    UpdateCallState(); 
-    
-    // Create call handlers for call related requests 
-    // and for monitoring call related events 
-    CreateCallHandlersL(); 
-        
+    // Update call info
+    UpdateCallInfo();
+
+    // Update call state from ETel
+    UpdateCallState();
+
+    // Create call handlers for call related requests
+    // and for monitoring call related events
+    CreateCallHandlersL();
+
     CSPLOGSTRING(CSPOBJECT, "CSPCall::ConstructL >");
     }
 
 // ---------------------------------------------------------------------------
 // CSPCall::OpenCallHandleL
-// Open call handle, calls either OpenNewCallL or OpenExistingCallL depending 
-// of the call direction and if the call is a client call       
+// Open call handle, calls either OpenNewCallL or OpenExistingCallL depending
+// of the call direction and if the call is a client call
 // ---------------------------------------------------------------------------
-//    
+//
 void CSPCall::OpenCallHandleL()
     {
     CSPLOGSTRING(CSPINT, "CSPCall::OpenCallHandleL <");
-    
+
     if ( iMobileOriginated )
         {
-        // There is no existing call on line, open new call 
+        // There is no existing call on line, open new call
         OpenNewCall();
         }
     else
         {
-        // Mobile terminated call on line, open existing call 
-        OpenExistingCallL( iName ); 
+        // Mobile terminated call on line, open existing call
+        OpenExistingCallL( iName );
         }
 
     CSPLOGSTRING(CSPINT, "CSPCall::OpenCallHandleL >");
@@ -1311,9 +1335,9 @@
 
 // ---------------------------------------------------------------------------
 // CSPCall::UpdateCallInfoL
-// Update call info including remote party name and number data  
+// Update call info including remote party name and number data
 // ---------------------------------------------------------------------------
-//    
+//
 void CSPCall::UpdateCallInfo()
     {
     CSPLOGSTRING(CSPINT, "CSPCall::UpdateCallInfo <");
@@ -1328,7 +1352,7 @@
 // CSPCall::UpdateCallInfoImpl
 // Implementation for UpdateCallInfo().
 // ---------------------------------------------------------------------------
-//    
+//
 void CSPCall::UpdateCallInfoImpl( const RMobileCall::TMobileCallInfoV7& aCallInfo )
     {
     CSPLOGSTRING(CSPINT, "CSPCall::UpdateCallInfoImpl <");
@@ -1336,14 +1360,14 @@
     if ( iMobileOriginated )
         {
         // Call wasn't added by ETel monitor, update info accordingly
-        UpdateCallNameNumberInfo( aCallInfo, EFalse ); 
+        UpdateCallNameNumberInfo( aCallInfo, EFalse );
         }
     else
         {
         // Call was added by ETel monitor, update info accordingly
         UpdateCallNameNumberInfo( aCallInfo, ETrue );
         }
-    
+
 
     CSPLOGSTRING(CSPINT, "CSPCall::UpdateCallInfoImpl >");
     }
@@ -1352,7 +1376,7 @@
 // CSPCall::UpdateCallOrigin
 // Set call origin to CCCECallParameters.
 // ---------------------------------------------------------------------------
-//    
+//
 void CSPCall::UpdateCallOrigin( const RMobileCall::TMobileCallInfoV7& aCallInfo )
     {
     CSPLOGSTRING(CSPINT, "CSPCall::UpdateCallOrigin <");
@@ -1370,14 +1394,14 @@
 
 // ---------------------------------------------------------------------------
 // CSPCall::UpdateCallStateL
-//   
+//
 // ---------------------------------------------------------------------------
-//    
+//
 int CSPCall::UpdateCallState()
     {
     CSPLOGSTRING(CSPINT, "CSPCall::UpdateCallState <");
-    TInt err( KErrNone ); 
-    
+    TInt err( KErrNone );
+
     // Update call state from ETel
     RMobileCall::TMobileCallStatus etelState;
     err = iCall.GetMobileCallStatus( etelState );
@@ -1386,13 +1410,13 @@
         iCallState = CCPStateFromETelState( etelState );
         }
     CSPLOGSTRING2(CSPINT, "CSPCall::UpdateCallState > res %d", err);
-    
-    return err; 
+
+    return err;
     }
 
 // ---------------------------------------------------------------------------
 // CSPCall::NotifyRemotePartyNumberChanged
-//   
+//
 // ---------------------------------------------------------------------------
 //
 void CSPCall::NotifyRemotePartyNumberChanged()
@@ -1417,9 +1441,9 @@
 
 // ---------------------------------------------------------------------------
 // CSPCall::CreateCallHandlersL
-// Create call handlers for call related requests and call monitoring  
+// Create call handlers for call related requests and call monitoring
 // ---------------------------------------------------------------------------
-//    
+//
 void CSPCall::CreateCallHandlersL()
     {
     CSPLOGSTRING(CSPINT, "CSPCall::CreateCallHandlersL <");
@@ -1430,27 +1454,27 @@
     iCallEventMonitor->StartMonitoring();
     iCallStatusMonitor = CSPEtelCallStatusMonitor::NewL( *this, iCall );
     iCallStatusMonitor->StartMonitoring();
-    
+
     iCallCapsMonitor = CSPEtelCallCapsMonitor::NewL( *this, iCall );
     iCallCapsMonitor->StartMonitoring();
     iCapsFlags = iCallCapsMonitor->FetchCallControlCapsL();
-    
+
     iCallInfoMonitor = CSPCallInfoMonitor::NewL( *this, iCall );
     iCallInfoMonitor->StartMonitoring();
-    
-    // Start UUI monitor and create message sender 
+
+    // Start UUI monitor and create message sender
     iSkypeId = TCSPSkypeIdParser::CreateSkypeIdBufferL();
     iUUIMonitor = CSPUUIMonitor::NewL( iCall,*this );
     iUUIMonitor->StartMonitor();
     iUUIMessageSender = CSPUUIMessageSender::NewL( iCall );
     iUserToUserInformation = iParams->UUSId().AllocL();
-    
+
     // Transfer provider
     iTransferProvider = CSPTransferProvider::NewL( iCall, *this, iCommonInfo );
 
     // Forward provider
     iForwardProvider = CSPForwardProvider::NewL();
-    
+
     CSPLOGSTRING(CSPINT, "CSPCall::CreateCallHandlersL >");
     }
 
@@ -1458,7 +1482,7 @@
 // CSPCall::NotifyRingingState
 // Gets to ringing state
 // ---------------------------------------------------------------------------
-//     
+//
 void CSPCall::NotifyRingingState( )
     {
     CSPLOGSTRING(CSPREQIN, "CSPCall::NotifyRingingState");
@@ -1479,36 +1503,36 @@
 // CSPCall::CCPStateFromETelState
 // Simple mapping between state enumerations.
 // ---------------------------------------------------------------------------
-//     
-MCCPCallObserver::TCCPCallState CSPCall::CCPStateFromETelState( 
-    RMobileCall::TMobileCallStatus aEtelState ) 
+//
+MCCPCallObserver::TCCPCallState CSPCall::CCPStateFromETelState(
+    RMobileCall::TMobileCallStatus aEtelState )
     {
     MCCPCallObserver::TCCPCallState ret = MCCPCallObserver::ECCPStateIdle;
     switch ( aEtelState )
         {
         case RMobileCall::EStatusUnknown:
             {
-            CSPLOGSTRING( CSPREQIN, 
+            CSPLOGSTRING( CSPREQIN,
                 "CSPCall::State > RMobileCall::Unknown" );
             ret = MCCPCallObserver::ECCPStateIdle;
             break;
             }
         case RMobileCall::EStatusIdle:
             {
-            CSPLOGSTRING( CSPREQIN, 
+            CSPLOGSTRING( CSPREQIN,
                 "CSPCall::State > RMobileCall::EStatusIdle" );
             ret = MCCPCallObserver::ECCPStateIdle;
             break;
             }
         case RMobileCall::EStatusRinging:
             {
-            CSPLOGSTRING( CSPREQIN, 
+            CSPLOGSTRING( CSPREQIN,
                 "CSPCall::State > RMobileCall::EStatusRinging" );
             ret = MCCPCallObserver::ECCPStateRinging;
             break;
             }
         // Map the following to connecting status
-        case RMobileCall::EStatusDialling:                
+        case RMobileCall::EStatusDialling:
             {
             CSPLOGSTRING( CSPREQIN, "CSPCall::State > \
                 RMobileCall::EStatusDialling" );
@@ -1527,12 +1551,12 @@
             CSPLOGSTRING( CSPREQIN, "CSPCall::State > \
                 RMobileCall::Answering" );
             ret = MCCPCallObserver::ECCPStateAnswering;
-            break;                
+            break;
             }
         // Call is connected and active.
         case RMobileCall::EStatusConnected:
             {
-            CSPLOGSTRING( CSPREQIN, 
+            CSPLOGSTRING( CSPREQIN,
             "CSPCall::State > RMobileCall::EStatusConnected" );
             ret = MCCPCallObserver::ECCPStateConnected;
             break;
@@ -1540,55 +1564,55 @@
         case RMobileCall::EStatusDisconnectingWithInband:
         case RMobileCall::EStatusDisconnecting:
             {
-            CSPLOGSTRING( CSPREQIN, 
+            CSPLOGSTRING( CSPREQIN,
                  "CSPCall::State > RMobileCall::EStatusDisconnecting/Inband?");
             ret = MCCPCallObserver::ECCPStateDisconnecting;
             break;
             }
         case RMobileCall::EStatusReconnectPending:
             {
-            CSPLOGSTRING( CSPREQIN, 
+            CSPLOGSTRING( CSPREQIN,
             "CSPCall::State > RMobileCall::EStatusHangingUp" );
             ret = MCCPCallObserver::ECCPStateDisconnecting;
             break;
             }
         case RMobileCall::EStatusHold:
             {
-            CSPLOGSTRING( CSPREQIN, 
+            CSPLOGSTRING( CSPREQIN,
             "CSPCall::State > RMobileCall::EStatusHold" );
             ret = MCCPCallObserver::ECCPStateHold;
             break;
             }
-        case RMobileCall::EStatusWaitingAlternatingCallSwitch: 
+        case RMobileCall::EStatusWaitingAlternatingCallSwitch:
             {
             // This state is not used in real life.
-            CSPLOGSTRING( CSPREQIN, 
+            CSPLOGSTRING( CSPREQIN,
             "CSPCall::State > RMobileCall::EStatusWaitingAlternatingCallSwitch" );
             ret = MCCPCallObserver::ECCPStateConnected;
             break;
             }
-        case RMobileCall::EStatusTransferring: 
+        case RMobileCall::EStatusTransferring:
             {
-            CSPLOGSTRING( CSPREQIN, 
+            CSPLOGSTRING( CSPREQIN,
             "CSPCall::State > RMobileCall::EStatusHold" );
             ret = MCCPCallObserver::ECCPStateTransferring;
             break;
             }
-        case RMobileCall::EStatusTransferAlerting: 
+        case RMobileCall::EStatusTransferAlerting:
             {
-            CSPLOGSTRING( CSPREQIN, 
+            CSPLOGSTRING( CSPREQIN,
             "CSPCall::State > RMobileCall::EStatusHold" );
             ret = MCCPCallObserver::ECCPStateTransferring;
             break;
-            }            
+            }
         default:
             {
-            CSPLOGSTRING( CSPREQIN, 
+            CSPLOGSTRING( CSPREQIN,
                 "CSPCall::CCPStateFromETelState unhandled state ");
             }
         }
 
-    CSPLOGSTRING3(CSPINT, 
+    CSPLOGSTRING3(CSPINT,
         "CSPCall::CCPStateFromETelState ETel: %d CCP: %d", aEtelState, ret);
     return ret;
     }
@@ -1598,21 +1622,21 @@
 // Notifies observers about state changes
 // ---------------------------------------------------------------------------
 //
-void CSPCall::NotifyCallStateChanged( MCCPCallObserver::TCCPCallState aState ) 
+void CSPCall::NotifyCallStateChanged( MCCPCallObserver::TCCPCallState aState )
     {
-    CSPLOGSTRING3(CSPINT, 
-            "CSPCall::NotifyCallStateChanged < state: %d this: %x", 
+    CSPLOGSTRING3(CSPINT,
+            "CSPCall::NotifyCallStateChanged < state: %d this: %x",
             aState, this );
-                           
-    iCallState = aState;    
-    TBool notifyObservers( ETrue ); 
+
+    iCallState = aState;
+    TBool notifyObservers( ETrue );
 
     if ( !iMobileOriginated && MCCPCallObserver::ECCPStateRinging == aState )
         {
-        CSPLOGSTRING2(CSPINT, "CSPCall::No notify on ringing MT", aState);        
-        notifyObservers = EFalse; 
+        CSPLOGSTRING2(CSPINT, "CSPCall::No notify on ringing MT", aState);
+        notifyObservers = EFalse;
         }
-    
+
     if ( notifyObservers )
         {
         TInt obsCount = iObservers.Count();
@@ -1620,14 +1644,14 @@
             {
             MCCPCallObserver *obs = iObservers[i];
             if ( obs )
-                {            
+                {
                 obs->CallStateChanged( aState, this );
                 }
             }
         }
-        
-    CSPLOGSTRING3(CSPINT, 
-            "CSPCall::NotifyCallStateChanged > state: %d this: %x", 
+
+    CSPLOGSTRING3(CSPINT,
+            "CSPCall::NotifyCallStateChanged > state: %d this: %x",
             aState, this );
     }
 
@@ -1636,24 +1660,24 @@
 // Notifies observers about state changes
 // ---------------------------------------------------------------------------
 //
-void CSPCall::NotifyCallStateChangedWithInband( 
-        MCCPCallObserver::TCCPCallState aState ) 
+void CSPCall::NotifyCallStateChangedWithInband(
+        MCCPCallObserver::TCCPCallState aState )
     {
-    CSPLOGSTRING3(CSPINT, 
-        "CSPCall::NotifyCallStateChangedWithInBand < state: %d this: %x", 
+    CSPLOGSTRING3(CSPINT,
+        "CSPCall::NotifyCallStateChangedWithInBand < state: %d this: %x",
         aState, this );
-    
+
     iCallState = aState;
-   
+
     if ( !iMobileOriginated && MCCPCallObserver::ECCPStateRinging == aState )
         {
         CSPLOGSTRING2(CSPINT, "CSPCall::No notify on ringing MT", aState);
         }
     else
-        {        
+        {
         TInt obsCount = iObservers.Count();
         for ( TInt i = 0; i < obsCount; i++ )
-            {            
+            {
             MCCPCallObserver *obs = iObservers[i];
             if ( obs )
                 {
@@ -1661,8 +1685,8 @@
                 }
             }
         }
-    CSPLOGSTRING3(CSPINT, 
-            "CSPCall::NotifyCallStateChangedWithInband > state: %d this: %x", 
+    CSPLOGSTRING3(CSPINT,
+            "CSPCall::NotifyCallStateChangedWithInband > state: %d this: %x",
             aState, this);
     }
 
@@ -1674,7 +1698,7 @@
 void CSPCall::ReadRepositoryL( TUid aUid, TUint aKey, TInt& aVal)
     {
     CSPLOGSTRING(CSPINT, "CSPCall::ReadRepositoryL");
-    
+
     CRepository* cr = CRepository::NewL( aUid );
     TInt err = cr->Get( aKey, aVal );
     delete cr;
@@ -1688,53 +1712,53 @@
 //
 void CSPCall::CheckAndNotifyTerminationError()
     {
-    CSPLOGSTRING2(CSPINT, 
-        "CSPCall::CheckAndNotifyTerminationError dial completion code: %d", 
+    CSPLOGSTRING2(CSPINT,
+        "CSPCall::CheckAndNotifyTerminationError dial completion code: %d",
         iDialCompletionCode);
-    
+
     // Emergency error handling is separated into CSPEtelCallRequester
     if ( !iIsEmergencyCall )
         {
         TInt termErr = ExitCodeError();
-        CSPLOGSTRING2(CSPINT, 
-                "CSPCall::CheckAndNotifyTerminationError exit code error: %d", 
+        CSPLOGSTRING2(CSPINT,
+                "CSPCall::CheckAndNotifyTerminationError exit code error: %d",
                 termErr);
-        
+
         if ( termErr == KErrNone )
             {
             // Handle KErrGsmCCUnassignedNumber correctly
             // because the value is not stored in exit code.
             termErr = iDialCompletionCode;
-            CSPLOGSTRING(CSPINT, 
+            CSPLOGSTRING(CSPINT,
                     "CSPCall::CheckAndNotifyTerminationError use dial completion code");
             }
-            
+
         if ( termErr == KErrGsmRRPreEmptiveRelease )
             {
-            // Error KErrGsmRRPreEmptiveRelease occurs when there is active call 
+            // Error KErrGsmRRPreEmptiveRelease occurs when there is active call
             // and user make emergency call, can be ignored.
-            CSPLOGSTRING3( 
-                CSPERROR, 
+            CSPLOGSTRING3(
+                CSPERROR,
                 "CSPCall::CheckAndNotifyTerminationError preemptive release, ignore: %d",
                 termErr,
                 this );
             }
-        else if ( iDontReportTerm 
-                && (  termErr == KErrGsmCCNormalUnspecified 
+        else if ( iDontReportTerm
+                && (  termErr == KErrGsmCCNormalUnspecified
                    || termErr == KErrGsmCCCallRejected ) )
             {
-            // Not an error, since this happens on normal 
+            // Not an error, since this happens on normal
             // call termination situation after connected call.
-            CSPLOGSTRING3(CSPERROR, 
-                    "CSPCall::CheckAndNotifyTerminationError DISCARD this: %x err: %d", 
-                    this, 
-                    termErr);    
-            }        
+            CSPLOGSTRING3(CSPERROR,
+                    "CSPCall::CheckAndNotifyTerminationError DISCARD this: %x err: %d",
+                    this,
+                    termErr);
+            }
         else if ( termErr )
             {
             TCCPError ccpErr(ECCPErrorNone);
 
-            // Only a couple of error codes can have diagnostic information. 
+            // Only a couple of error codes can have diagnostic information.
             // aDiagnostic ought to be undefined in other situatios,
             // but at least in this way we can really guarantee it.
             if ( termErr == KErrGsmCCFacilityRejected ||
@@ -1744,10 +1768,10 @@
                  termErr == KErrGsmCCUserNotInCug )
                 {
                 TName name;
-                CallName( name );        
+                CallName( name );
                 TInt diagErr = iCommonInfo.GetDiagnosticError( name );
                 ccpErr = iRequester->MapError( diagErr );
-    
+
                 // Finally use exit code if diagnostic did not contain
                 // any useful information.
                 if ( ccpErr == ECCPRequestFailure )
@@ -1759,11 +1783,11 @@
                 {
                 ccpErr = iRequester->MapError( termErr );
                 }
-            
+
             NotifyErrorOccurred( ccpErr );
             iTerminationErrorNotified = ETrue;
             }
-        }    
+        }
     }
 
 // ---------------------------------------------------------------------------
@@ -1773,7 +1797,7 @@
 //
 TInt CSPCall::ExitCodeError() const
     {
-    CSPLOGSTRING2(CSPINT, "CSPCall::ExitCodeError < this: %x", 
+    CSPLOGSTRING2(CSPINT, "CSPCall::ExitCodeError < this: %x",
                     this );
     TInt callError;
     RMobileCall::TMobileCallInfoV7Pckg pck( iEtelCallInfo );
@@ -1797,7 +1821,7 @@
             else
                 {
                 callError = ( ( iEtelCallInfo.iExitCode & 0x0000FFFF ) 
-                    | 0xFFFF0000 ); 
+                    | 0xFFFF0000 );
                 }
             }
         }
@@ -1806,14 +1830,14 @@
         {
         callError = KErrNone;
         }
-    else 
+    else
         {
         // No extended error, expand value to full range
         callError = ( iEtelCallInfo.iExitCode | 0xFFFF0000 );
         }
-        
+
     CSPLOGSTRING2(CSPINT, "CSPCall::ExitCodeError > err: %d", callError);
-        
+
     return callError;
     }
 
@@ -1822,20 +1846,20 @@
 // ---------------------------------------------------------------------------
 //
  void CSPCall::UUSMessageReceived( const TDesC& aMessage )
-    {      
+    {
     CSPLOGSTRING(CSPREQIN, "CSPCall::UUSMessageReceived");
     TCSPSkypeIdParser parser;
-           
+
     TPtr ptr = iSkypeId->Des();
     ptr.Zero();
     const TInt error( parser.Parse( aMessage, ptr ) );
-    
-    if ( !error ) 
+
+    if ( !error )
         {
         iRemotePartyName = ptr;
-        NotifyCallEventOccurred( MCCPCallObserver::ECCPNotifyRemotePartyInfoChange );            
+        NotifyCallEventOccurred( MCCPCallObserver::ECCPNotifyRemotePartyInfoChange );
         }
-    CSPLOGSTRING2(CSPINT, "CSPCall::UUSMessageReceived  err: %d",  error );        
+    CSPLOGSTRING2(CSPINT, "CSPCall::UUSMessageReceived  err: %d",  error );
     }
 
 // ---------------------------------------------------------------------------
@@ -1846,16 +1870,16 @@
                                             const TDesC& aRemotePartyNumber )
     {
     CSPLOGSTRING(CSPREQIN, "CSPCall::NotifyRemotePartyInfoChanged");
-    if ( aRemotePartyName.Length() )    
+    if ( aRemotePartyName.Length() )
         {
         iRemotePartyName = aRemotePartyName;
         }
-    
-    if ( aRemotePartyNumber.Length() )    
+
+    if ( aRemotePartyNumber.Length() )
         {
         iRemotePartyNumber = aRemotePartyNumber;
         }
-    
+
     NotifyCallEventOccurred( MCCPCallObserver::ECCPNotifyRemotePartyInfoChange );
     }
 
@@ -1863,7 +1887,7 @@
 // CSPCall::DontReportTerminationError
 // ---------------------------------------------------------------------------
 //
-void CSPCall::DontReportTerminationError() 
+void CSPCall::DontReportTerminationError()
     {
     CSPLOGSTRING(CSPREQIN, "CSPCall::DontReportTerminationError");
     iDontReportTerm = ETrue;
@@ -1883,35 +1907,35 @@
     iCallName.Zero();
     iRemotePartyNumber.Zero();
     iRemotePartyName.Zero();
-    
-    if ( aCallAddedByMonitor )        
+
+    if ( aCallAddedByMonitor )
         {
-        CSPLOGSTRING(CSPINT, 
+        CSPLOGSTRING(CSPINT,
                 "CSPCall::UpdateCallNameNumberInfo call added by monitor");
 
         // If call was created by ETel line status or incoming call monitor
-        // the call name is already known, only remote party info is fetched from 
-        // call info 
+        // the call name is already known, only remote party info is fetched from
+        // call info
         iCallName.Append( iName );
         iRemotePartyName.Append( aCallInfo.iRemoteParty.iCallingName );
         iRemotePartyNumber.Append( aCallInfo.iRemoteParty.iRemoteNumber.iTelNumber );
         }
-    else 
+    else
         {
-        CSPLOGSTRING(CSPINT, 
+        CSPLOGSTRING(CSPINT,
                 "CSPCall::UpdateCallNameNumberInfo call added by plugin owner");
-        
-        // The call was not created by monitor and the remote number is already known, 
-        // fetch only call name from call info  
+
+        // The call was not created by monitor and the remote number is already known,
+        // fetch only call name from call info
         iCallName.Append( aCallInfo.iCallName );
-        iRemotePartyNumber.Append( iName ); 
+        iRemotePartyNumber.Append( iName );
         }
-    
-    CSPLOGSTRING2(CSPINT, 
+
+    CSPLOGSTRING2(CSPINT,
             "CSPCall::UpdateCallNameNumberInfo iCallName: %S", &iCallName );
-    CSPLOGSTRING2(CSPINT, 
+    CSPLOGSTRING2(CSPINT,
             "CSPCall::UpdateCallNameNumberInfo iRemotePartyNumber: %S", &iRemotePartyNumber );
-    CSPLOGSTRING2(CSPINT, 
+    CSPLOGSTRING2(CSPINT,
             "CSPCall::UpdateCallNameNumberInfo iRemotePartyName: %S", &iRemotePartyName );
 
     CSPLOGSTRING(CSPINT, "CSPCall::UpdateCallNameNumberInfo >");
@@ -1919,15 +1943,15 @@
 
 // ---------------------------------------------------------------------------
 // CSPCall::OpenNewCall
-// Open new call 
+// Open new call
 // ---------------------------------------------------------------------------
-//    
+//
 void CSPCall::OpenNewCall()
     {
     CSPLOGSTRING(CSPINT, "CSPCall::OpenNewCall <");
 
-    // Open new call 
-    __ASSERT_ALWAYS( iCall.OpenNewCall( iLine ) == KErrNone, 
+    // Open new call
+    __ASSERT_ALWAYS( iCall.OpenNewCall( iLine ) == KErrNone,
             Panic( ECSPPanicNoEtel ) );
 
     CSPLOGSTRING(CSPINT, "CSPCall::OpenNewCall >");
@@ -1935,21 +1959,21 @@
 
 // ---------------------------------------------------------------------------
 // CSPCall::OpenExistingCallL
-// Open existing call  
+// Open existing call
 // ---------------------------------------------------------------------------
-//    
+//
 void CSPCall::OpenExistingCallL( const TDesC& aName )
     {
-    CSPLOGSTRING2(CSPINT, 
+    CSPLOGSTRING2(CSPINT,
             "CSPCall::OpenExistingCallL < aName: %S", &aName);
-    
-    // Open existing call with given name from current line 
-    TInt err = iCall.OpenExistingCall( iLine, aName ); 
-    
+
+    // Open existing call with given name from current line
+    TInt err = iCall.OpenExistingCall( iLine, aName );
+
     if ( KErrNone != err  )
         {
         CSPLOGSTRING2(CSPERROR,
-            "CSPCall::OpenCallHandleL OpenExistingCall error: %d, leaving", err);    
+            "CSPCall::OpenCallHandleL OpenExistingCall error: %d, leaving", err);
         User::Leave( err );
         }
 
--- a/phoneplugins/csplugin/src/cspcalladdedhandler.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneplugins/csplugin/src/cspcalladdedhandler.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -42,7 +42,7 @@
                                    RCSPLineContainer& aLineContainer,
                                    CSPCallArray& aCallArray,
                                    MCSPCommonInfo& aCommonInfo,
-                                   CSPAudioHandler& aAudioHandler )
+                                   CSPAudioHandlerBase& aAudioHandler )
     {
     CSPLOGSTRING(CSPOBJECT, "CSPCallAddedHandler::NewL()" );
     CSPCallAddedHandler* self = new ( ELeave ) CSPCallAddedHandler( 
@@ -129,7 +129,7 @@
         
         if ( call )
             {
-            // Set audio handler for DevSound
+            // Set audio handler
             call->SetAudioHandler( &iAudioHandler );
             
             MCCPCallObserver::TCCPCallState callState = call->State(); 
@@ -210,7 +210,7 @@
             RCSPLineContainer& aLineContainer,
             CSPCallArray& aCallArray,
             MCSPCommonInfo& aCommonInfo,
-            CSPAudioHandler& aAudioHandler ) :
+            CSPAudioHandlerBase& aAudioHandler ) :
             iLineContainer( aLineContainer ),
             iObserver( aObserver ),            
             iCallArray( aCallArray ),
--- a/phoneplugins/csplugin/src/cspeteldtmfmonitor.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneplugins/csplugin/src/cspeteldtmfmonitor.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -127,7 +127,7 @@
             {
             // Unknown event
             CSPLOGSTRING3( CSPERROR, 
-                "CSPEtelDtmfMonitor::RunL: Unknown event = %¨d, type = %d", 
+                "CSPEtelDtmfMonitor::RunL: Unknown event = %d, type = %d", 
                     iEventData.iEvent, iEventData.iType );
             
             // Refresh and return (no observer notfiying).
--- a/phoneplugins/csplugin/src/csprovider.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneplugins/csplugin/src/csprovider.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -268,6 +268,23 @@
     CSPLOGSTRING(CSPINT, "CSProvider::NotifySsEvent >");    
     }
 
+// ---------------------------------------------------------------------------
+// CSProvider::InitializeL for testing purposes
+// ---------------------------------------------------------------------------
+//
+void CSProvider::InitializeL( const MCCPObserver& aObserver,
+                              const MCCPSsObserver& aSsObserver,
+                              CSPAudioHandlerBase* aAudioHandler )
+    {
+    
+    if (!iAudioHandler)
+        {        
+        iAudioHandler = aAudioHandler;
+        }
+    
+    InitializeL( aObserver, aSsObserver );    
+    }
+
 // From CConvergedCallProvider
 // ---------------------------------------------------------------------------
 // CSProvider::InitializeL
@@ -352,7 +369,10 @@
 
     // Create audio handler
     CSPLOGSTRING(CSPOBJECT, "CSProvider::InitializeL create audio handler");
-    iAudioHandler = CSPAudioHandler::NewL();
+    if (!iAudioHandler)
+        {
+        iAudioHandler = CSPAudioHandler::NewL();
+        }
     
     // Create call added handler for listening ext call creation
     iCallAddedHandler = CSPCallAddedHandler::NewL( 
--- a/phoneplugins/csplugin/src/csptimer.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneplugins/csplugin/src/csptimer.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -1,19 +1,19 @@
 /*
-* Copyright (c) 2006 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:  Timer service
-*
-*/
+ * Copyright (c) 2006 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:  Timer service
+ *
+ */
 
 #include "csptimer.h"
 #include "mcsptimerobserver.h"
@@ -26,7 +26,7 @@
 CSPTimer* CSPTimer::NewL()
     {
     CSPTimer* self = CSPTimer::NewLC();
-    CleanupStack::Pop( self );
+    CleanupStack::Pop(self);
     return self;
     }
 
@@ -36,8 +36,8 @@
 //
 CSPTimer* CSPTimer::NewLC()
     {
-    CSPTimer* self = new( ELeave ) CSPTimer;
-    CleanupStack::PushL( self );
+    CSPTimer* self = new (ELeave) CSPTimer;
+    CleanupStack::PushL(self);
     self->ConstructL();
     return self;
     }
@@ -48,18 +48,17 @@
 //
 CSPTimer::~CSPTimer()
     {
-    Cancel(); 
+    Cancel();
     }
 
 // ---------------------------------------------------------------------------
 // Starts notify request
 // ---------------------------------------------------------------------------
 //
-void CSPTimer::NotifyAfter( TInt aTimeout, 
-        MCSPTimerObserver& aTimerObserver )
+void CSPTimer::NotifyAfter(TInt aTimeout, MCSPTimerObserver& aTimerObserver)
     {
-    __ASSERT_ALWAYS( !IsNotifyOngoing(), Panic( ECSPPanicTimerAlreadyActive ) );
-    After( aTimeout );
+    __ASSERT_ALWAYS(!IsNotifyOngoing(), Panic(ECSPPanicTimerAlreadyActive));
+    After(aTimeout);
     iObserver = &aTimerObserver;
     }
 
@@ -88,20 +87,20 @@
 //
 void CSPTimer::RunL()
     {
-    if( iObserver ) 
+    if (iObserver)
         {
         iObserver->TimerEvent();
         }
     }
-    
+
 // ---------------------------------------------------------------------------
 // Constructor
 // ---------------------------------------------------------------------------
 //
-CSPTimer::CSPTimer() : 
-    CTimer( CActive::EPriorityStandard )
+CSPTimer::CSPTimer() :
+    CTimer(CActive::EPriorityStandard)
     {
-    CActiveScheduler::Add( this );
+    CActiveScheduler::Add(this);
     }
 
 // ---------------------------------------------------------------------------
--- a/phoneplugins/csplugin/src/tmshandler.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneplugins/csplugin/src/tmshandler.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -11,7 +11,7 @@
  *
  * Contributors:
  *
- * Description:  Starts and stops audio streams.
+ * Description: Activates TMS call audio control streams.
  *
  */
 
@@ -20,28 +20,19 @@
 #include <tmsstream.h>
 #include "tmshandler.h"
 #include "csplogger.h"
-#include "csptimer.h"
 #include "csppanic.pan"
+#include "mtmshandlerobserver.h"
 
-/**
- * Timeout initial value.
- */
-const TInt KTimeoutInitial = 200000; // 0.2s
-
-/**
- * Double the timeout for every retry.
- */
-const TInt KTimeoutMultiplier = 2;
-
-// ======== MEMBER FUNCTIONS ========
+const TInt KStreamInitRetry = 1000000; //1 sec
+const TInt KRetryForever = -1;
 
 // ---------------------------------------------------------------------------
 // Static constructor
 // ---------------------------------------------------------------------------
 //
-TmsHandler* TmsHandler::NewL()
+TmsHandler* TmsHandler::NewL(MTmsHandlerObserver& aObserver)
     {
-    TmsHandler* self = TmsHandler::NewLC();
+    TmsHandler* self = TmsHandler::NewLC(aObserver);
     CleanupStack::Pop(self);
     return self;
     }
@@ -50,11 +41,11 @@
 // Static constructor
 // ---------------------------------------------------------------------------
 //
-TmsHandler* TmsHandler::NewLC()
+TmsHandler* TmsHandler::NewLC(MTmsHandlerObserver& aObserver)
     {
     TmsHandler* self = new (ELeave) TmsHandler();
     CleanupStack::PushL(self);
-    self->ConstructL();
+    self->ConstructL(aObserver);
     return self;
     }
 
@@ -64,19 +55,12 @@
 //
 TmsHandler::~TmsHandler()
     {
-    if (iTimer)
-        {
-        iTimer->CancelNotify();
-        delete iTimer;
-        }
     if (iTmsUplink && iTmsCall)
         {
-        // CloseUplink();
         iTmsCall->DeleteStream(iTmsUplink);
         }
     if (iTmsDnlink && iTmsCall)
         {
-        // CloseDownlink();
         iTmsCall->DeleteStream(iTmsDnlink);
         }
     if (iFactory && iTmsCall)
@@ -99,70 +83,104 @@
         {
         iFactory->DeleteSink(iTmsModemSink);
         }
-
     delete iFactory;
-
     }
 
 // ---------------------------------------------------------------------------
-// From class MCSPAudioStream
-// Activates mic and speaker.
+// TmsHandler::StartStreams
+// Activates TMS call audio control streams. If called in the middle of an
+// ongoing stream initialization, the request is cashed in until both streams
+// transition to initialized state.
 // ---------------------------------------------------------------------------
 //
-void TmsHandler::StartStreams()
+TInt TmsHandler::StartStreams()
     {
     CSPLOGSTRING(CSPINT, "TmsHandler::StartStreams");
+    TInt status(TMS_RESULT_SUCCESS);
 
-    StartMicAndSpeaker();
+    if (iTmsUplink)
+        {
+        if (iTmsUplink->GetState() == TMS_STREAM_INITIALIZED)
+            {
+            status = iTmsUplink->Start(KRetryForever);
+            }
+        else if (iUplInitializing)
+            {
+            iStartAfterInitComplete = ETrue;
+            }
+        }
+
+    if (iTmsDnlink && status == TMS_RESULT_SUCCESS)
+        {
+        if (iTmsDnlink->GetState() == TMS_STREAM_INITIALIZED)
+            {
+            status = iTmsDnlink->Start(KRetryForever);
+            }
+        else if (iDnlInitializing)
+            {
+            iStartAfterInitComplete = ETrue;
+            }
+        }
+
+    CSPLOGSTRING2(CSPINT, "TmsHandler::StartStreams status %d", status);
+
+    if (status != TMS_RESULT_SUCCESS)
+        {
+        // Cancel any pending retry and cancel.
+        StopStreams();
+        status = KErrCancel;
+        }
+    return status;
     }
 
 // ---------------------------------------------------------------------------
-// From class MCSPAudioStream
-// Deactivates mic and speaker if the streams are active or they are
-// activating.
+// TmsHandler::StopStreams
+// Deactivates TMS call audio control streams. If streams are not started yet,
+// any pending request on TMS streams will be canceled.
 // ---------------------------------------------------------------------------
 //
 void TmsHandler::StopStreams()
     {
     CSPLOGSTRING(CSPINT, "TmsHandler::StopStreams");
-    gint status(TMS_RESULT_SUCCESS);
-    if (iTimer && IsMicAndSpeakerStarted())
+
+    if (iTmsUplink)
         {
-        CSPLOGSTRING(CSPINT, "TmsHandler::StopStreams Stopping");
-        iTimer->CancelNotify();
-        iTimeout = KTimeoutInitial;
-        status = iTmsUplink->Stop();
-        iUplinkStarted = FALSE;
-        status |= iTmsDnlink->Stop();
-        iDnlinkStarted = FALSE;
-
-        if (status != TMS_RESULT_SUCCESS)
-            {
-            status = TMS_RESULT_GENERAL_ERROR;
-            }
+        iTmsUplink->Stop();
         }
-    CSPLOGSTRING2(CSPINT, "TmsHandler::StopStreams status %d", status);
+    if (iTmsDnlink)
+        {
+        iTmsDnlink->Stop();
+        }
+    iUplInitializing = EFalse;
+    iDnlInitializing = EFalse;
+    iStartAfterInitComplete = EFalse;
     }
 
 // ---------------------------------------------------------------------------
-// From class MCSPTimerObserver
-// Notify from CSPTimer that timeout passed. Try to start mic and
-// speaker again.
+// TmsHandler::AreStreamsStarted
+// Indicates whether both audio control streams have been started.
 // ---------------------------------------------------------------------------
 //
-void TmsHandler::TimerEvent()
+TBool TmsHandler::AreStreamsStarted()
     {
-    CSPLOGSTRING(CSPINT, "TmsHandler.TimerEvent" );
-    iTimeout *= KTimeoutMultiplier;
-    StartMicAndSpeaker();
+    TBool status(EFalse);
+
+    if (iTmsUplink && iTmsDnlink)
+        {
+        if (iTmsUplink->GetState() == TMS_STREAM_STARTED &&
+                iTmsDnlink->GetState() == TMS_STREAM_STARTED)
+            {
+            status = ETrue;
+            }
+        }
+    return status;
     }
 
 // ---------------------------------------------------------------------------
 // Constructor
 // ---------------------------------------------------------------------------
 //
-TmsHandler::TmsHandler() :
-    iTimeout(KTimeoutInitial)
+TmsHandler::TmsHandler()
     {
     }
 
@@ -170,337 +188,184 @@
 // Second phase constructor
 // ---------------------------------------------------------------------------
 //
-void TmsHandler::ConstructL()
+void TmsHandler::ConstructL(MTmsHandlerObserver& aObserver)
     {
     CSPLOGSTRING(CSPINT, "TmsHandler::ConstructL");
-    iTimer = CSPTimer::NewL();
-
-    if (CreateTMSCallControl())
-        {
-        User::LeaveIfError(TMS_RESULT_UNINITIALIZED_OBJECT);
-        }
+    iObserver = &aObserver;
+    User::LeaveIfError(CreateTMSCallControl());
     }
 
 // ---------------------------------------------------------------------------
 // TmsHandler::CreateTMSCallControl()
+// Allocates and initializes all TMS resources needed for call audio control.
 // ---------------------------------------------------------------------------
 //
-gint TmsHandler::CreateTMSCallControl()
+TInt TmsHandler::CreateTMSCallControl()
     {
+    CSPLOGSTRING(CSPINT, "TmsHandler::CreateTMSCallControl");
     TMSVer* v = NULL;
     TInt status;
     status = TMSFactory::CreateFactory(iFactory, *v);
 
-    __ASSERT_ALWAYS(iFactory, Panic( ECSPPanicBadHandle));
+    __ASSERT_ALWAYS(iFactory, Panic(ECSPPanicBadHandle));
 
     status = iFactory->CreateCall(TMS_CALL_CS, iTmsCall, 0);
 
-    status |= CreateUplink();
-    status |= CreateDownlink();
-    status |= CreateMicSource();
-    status |= AddMicSourceToStream();
-    status |= CreateModemSink();
-    status |= AddModemSinkToStream();
-    status |= CreateModemSource();
-    status |= AddModemSourceToStream();
-    status |= CreateSpeakerSink();
-    status |= AddSpeakerSinkToStream();
-    status |= OpenDownlink();
-
-    return status;
-    }
-
-// ---------------------------------------------------------------------------
-// Resets timer
-// ---------------------------------------------------------------------------
-//
-void TmsHandler::AudioStreamsStarted()
-    {
-    CSPLOGSTRING(CSPINT, "TmsHandler::AudioStreamsStarted" );
-    iTimeout = KTimeoutInitial;
-    iTimer->CancelNotify();
-    }
-
-// ---------------------------------------------------------------------------
-// Starts timer
-// ---------------------------------------------------------------------------
-//
-void TmsHandler::StartTimer()
-    {
-    CSPLOGSTRING(CSPINT, "TmsHandler::StartTimer" );
-    iTimer->NotifyAfter(iTimeout, *this);
-    }
-
-// ---------------------------------------------------------------------------
-// Starts mic and speaker
-// ---------------------------------------------------------------------------
-//
-void TmsHandler::StartMicAndSpeaker()
-    {
-    // if speaker and mic is active then activation does not cause any actions.
-    gint status(TMS_RESULT_SUCCESS);
-
-    if (iTmsUplink)
-        {
-        status = iTmsUplink->Start();
-        }
-    CSPLOGSTRING2( CSPINT, "TmsHandler::StartMicAndSpeaker status %d", status );
-    }
-
-// ---------------------------------------------------------------------------
-// Indicated if mic and speaker are started or starting up.
-// ---------------------------------------------------------------------------
-//
-TBool TmsHandler::IsMicAndSpeakerStarted()
-    {
-    return (iUplinkStarted || iDnlinkStarted);
-    }
-
-// ----------------------------------------------------------------------------
-// CreateUplink
-// ----------------------------------------------------------------------------
-//
-gint TmsHandler::CreateUplink()
-    {
-    CSPLOGSTRING(CSPINT, "TmsHandler::CreateUplink");
-    gint status(TMS_RESULT_SUCCESS);
-    if (iTmsCall)
+    if (iTmsCall && status == TMS_RESULT_SUCCESS)
         {
         status = iTmsCall->CreateStream(TMS_STREAM_UPLINK, iTmsUplink);
+        status |= iTmsCall->CreateStream(TMS_STREAM_DOWNLINK, iTmsDnlink);
+        status |= iFactory->CreateSource(TMS_SOURCE_MIC, iTmsMicSource);
+        status |= iFactory->CreateSink(TMS_SINK_MODEM, iTmsModemSink);
+        status |= iFactory->CreateSource(TMS_SOURCE_MODEM, iTmsModemSource);
+        status |= iFactory->CreateSink(TMS_SINK_SPEAKER, iTmsSpeakerSink);
         }
-    return status;
-    }
-
-// ----------------------------------------------------------------------------
-// CreateDownlink
-// ----------------------------------------------------------------------------
-//
-gint TmsHandler::CreateDownlink()
-    {
-    CSPLOGSTRING(CSPINT, "TmsHandler::CreateDownlink");
-    gint status(TMS_RESULT_SUCCESS);
-
-    if (iTmsCall)
+    if (iTmsUplink && iTmsMicSource && iTmsModemSink &&
+            status == TMS_RESULT_SUCCESS)
+        {
+        status = iTmsUplink->AddSource(iTmsMicSource);
+        status |= iTmsUplink->AddSink(iTmsModemSink);
+        status |= iTmsUplink->AddObserver(*this, NULL);
+        status |= iTmsUplink->Init(KStreamInitRetry);
+        }
+    if (iTmsDnlink && iTmsModemSource && iTmsSpeakerSink &&
+            status == TMS_RESULT_SUCCESS)
         {
-        status = iTmsCall->CreateStream(TMS_STREAM_DOWNLINK, iTmsDnlink);
+        status = iTmsDnlink->AddSource(iTmsModemSource);
+        status |= iTmsDnlink->AddSink(iTmsSpeakerSink);
+        status |= iTmsDnlink->AddObserver(*this, NULL);
+        status |= iTmsDnlink->Init(KStreamInitRetry);
+        }
+    if (status == TMS_RESULT_SUCCESS)
+        {
+        iUplInitializing = ETrue;
+        iDnlInitializing = ETrue;
+        }
+    else
+        {
+        status = KErrCancel; // Convert to Symbian error and cancel
         }
     return status;
     }
 
 // ----------------------------------------------------------------------------
-// OpenUplink
-// ----------------------------------------------------------------------------
-//
-gint TmsHandler::OpenUplink()
-    {
-    CSPLOGSTRING(CSPINT, "TmsHandler::OpenUplink");
-    gint status = TMS_RESULT_SUCCESS;
-
-    if (iTmsUplink)
-        {
-        status = iTmsUplink->AddObserver(*this, NULL);
-        if (status == TMS_RESULT_SUCCESS)
-            {
-            status = iTmsUplink->Init();
-            }
-        }
-    return status;
-    }
-
-// ----------------------------------------------------------------------------
-// OpenDownlink
+// TmsHandler::ProcessUplinkStreamChangeEvent
+// Processes Uplink stream state change events.
 // ----------------------------------------------------------------------------
 //
-gint TmsHandler::OpenDownlink()
-    {
-    CSPLOGSTRING(CSPINT, "TmsHandler::OpenDownlink");
-    gint status = TMS_RESULT_SUCCESS;
-
-    if (iTmsDnlink)
-        {
-        status = iTmsDnlink->AddObserver(*this, NULL);
-        if (status == TMS_RESULT_SUCCESS)
-            {
-            status = iTmsDnlink->Init();
-            }
-        }
-    return status;
-    }
-
-// ----------------------------------------------------------------------------
-// CreateModemSource
-// ----------------------------------------------------------------------------
-//
-gint TmsHandler::CreateModemSource()
+void TmsHandler::ProcessUplinkStreamChangeEvent(TInt aState)
     {
-    gint status(TMS_RESULT_SUCCESS);
-
-    if (iFactory && !iTmsModemSource)
+    CSPLOGSTRING(CSPINT, "TmsHandler::ProcessUplinkStreamChangeEvent");
+    switch (aState)
         {
-        status = iFactory->CreateSource(TMS_SOURCE_MODEM, iTmsModemSource);
+        case TMS_STREAM_INITIALIZED:
+            iUplInitializing = EFalse;
+            if (iStartAfterInitComplete)
+                {
+                iStartAfterInitComplete = EFalse;
+                TInt status = StartStreams();
+                if (status != TMS_RESULT_SUCCESS)
+                    {
+                    iObserver->AudioStreamsError(status);
+                    }
+                }
+            break;
+        case TMS_STREAM_UNINITIALIZED:
+            // As result of Deinit() or error
+            iUplInitializing = EFalse;
+            iStartAfterInitComplete = EFalse;
+            break;
+        case TMS_STREAM_PAUSED:
+            break;
+        case TMS_STREAM_STARTED:
+            if (AreStreamsStarted())
+                {
+                iObserver->AudioStreamsStarted();
+                }
+            break;
+        default:
+            break;
         }
-    return status;
-    }
-
-// ----------------------------------------------------------------------------
-// AddModemSourceToStream
-// ----------------------------------------------------------------------------
-//
-gint TmsHandler::AddModemSourceToStream()
-    {
-    gint status(TMS_RESULT_SUCCESS);
-    if (iTmsDnlink && iTmsModemSource)
-        {
-        status = iTmsDnlink->AddSource(iTmsModemSource);
-        }
-    return status;
     }
 
 // ----------------------------------------------------------------------------
-// CreateModemSink
-// ----------------------------------------------------------------------------
-//
-gint TmsHandler::CreateModemSink()
-    {
-    gint status(TMS_RESULT_SUCCESS);
-
-    if (iFactory && !iTmsModemSink)
-        {
-        status = iFactory->CreateSink(TMS_SINK_MODEM, iTmsModemSink);
-        }
-    return status;
-    }
-
-// ----------------------------------------------------------------------------
-// AddModemSinkToStream
-// ----------------------------------------------------------------------------
-//
-gint TmsHandler::AddModemSinkToStream()
-    {
-    gint status(TMS_RESULT_SUCCESS);
-    if (iTmsUplink && iTmsModemSink)
-        {
-        status = iTmsUplink->AddSink(iTmsModemSink);
-        }
-    return status;
-    }
-
-// ----------------------------------------------------------------------------
-// CreateMicSource
+// TmsHandler::ProcessDownlinkStreamChangeEvent
+// Processes Downlink stream state change events.
 // ----------------------------------------------------------------------------
 //
-gint TmsHandler::CreateMicSource()
+void TmsHandler::ProcessDownlinkStreamChangeEvent(TInt aState)
     {
-    gint status(TMS_RESULT_SUCCESS);
-
-    if (iFactory && !iTmsMicSource)
+    CSPLOGSTRING(CSPINT, "TmsHandler::ProcessDownlinkStreamChangeEvent");
+    switch (aState)
         {
-        status = iFactory->CreateSource(TMS_SOURCE_MIC, iTmsMicSource);
-        }
-    return status;
-    }
-
-// ----------------------------------------------------------------------------
-// AddMicSourceToStream
-// ----------------------------------------------------------------------------
-//
-gint TmsHandler::AddMicSourceToStream()
-    {
-    gint status(TMS_RESULT_SUCCESS);
-    if (iTmsUplink && iTmsMicSource)
-        {
-        status = iTmsUplink->AddSource(iTmsMicSource);
+        case TMS_STREAM_INITIALIZED:
+            iDnlInitializing = EFalse;
+            if (iStartAfterInitComplete)
+                {
+                iStartAfterInitComplete = EFalse;
+                TInt status = StartStreams();
+                if (status != TMS_RESULT_SUCCESS)
+                    {
+                    iObserver->AudioStreamsError(status);
+                    }
+                }
+            break;
+        case TMS_STREAM_UNINITIALIZED:
+            // As result of Deinit() or error
+            iDnlInitializing = EFalse;
+            iStartAfterInitComplete = EFalse;
+            break;
+        case TMS_STREAM_PAUSED:
+            break;
+        case TMS_STREAM_STARTED:
+            if (AreStreamsStarted())
+                {
+                iObserver->AudioStreamsStarted();
+                }
+            break;
+        default:
+            break;
         }
-    return status;
-    }
-
-// ----------------------------------------------------------------------------
-// CreateSpeakerSink
-// ----------------------------------------------------------------------------
-//
-gint TmsHandler::CreateSpeakerSink()
-    {
-    gint status(TMS_RESULT_SUCCESS);
-
-    if (iFactory && !iTmsSpeakerSink)
-        {
-        status = iFactory->CreateSink(TMS_SINK_SPEAKER, iTmsSpeakerSink);
-        }
-    return status;
-    }
-
-// ----------------------------------------------------------------------------
-// AddSpeakerSinkToStream
-// ----------------------------------------------------------------------------
-//
-gint TmsHandler::AddSpeakerSinkToStream()
-    {
-    gint status(TMS_RESULT_SUCCESS);
-    if (iTmsDnlink && iTmsSpeakerSink)
-        {
-        status = iTmsDnlink->AddSink(iTmsSpeakerSink);
-        }
-    return status;
     }
 
 // TMS CALLBACKS
 
 // ----------------------------------------------------------------------------
 // TmsHandler::TMSStreamEvent
+// From TMSStreamObserver
+// TMS call audio stream control event handler.
 // ----------------------------------------------------------------------------
 //
 void TmsHandler::TMSStreamEvent(const TMSStream& stream, TMSSignalEvent event)
     {
     CSPLOGSTRING2(CSPINT, "TmsHandler::TMSStreamEvent status %d", event.reason);
 
-    TMSStreamType strmType = const_cast<TMSStream&>(stream).GetStreamType();
+    TMSStreamType strmType = const_cast<TMSStream&> (stream).GetStreamType();
 
-    if (strmType == TMS_STREAM_UPLINK &&
-            event.type == TMS_EVENT_STREAM_STATE_CHANGED)
+    if (strmType == TMS_STREAM_UPLINK)
         {
-        switch (event.curr_state)
+        if (event.type == TMS_EVENT_STREAM_STATE_CHANGED)
             {
-            case TMS_STREAM_INITIALIZED:
-                //notify stream ready state
-                break;
-            case TMS_STREAM_UNINITIALIZED:
-                //notify initialization error
-                break;
-            case TMS_STREAM_PAUSED:
-                break;
-            case TMS_STREAM_STARTED:
-                iUplinkStarted = TRUE;
-                iTmsDnlink->Start();
-                break;
-            default:
-                break;
+            ProcessUplinkStreamChangeEvent(event.curr_state);
+            }
+        else if (event.type == TMS_EVENT_STREAM_STATE_CHANGE_ERROR)
+            {
+#ifndef __WINS__
+            Panic( ECSPPanicAudioStreamInitFailure );
+#endif
             }
         }
-    else if (strmType == TMS_STREAM_DOWNLINK &&
-            event.type == TMS_EVENT_STREAM_STATE_CHANGED)
+    else if (strmType == TMS_STREAM_DOWNLINK)
         {
-        switch (event.curr_state)
+        if (event.type == TMS_EVENT_STREAM_STATE_CHANGED)
             {
-            case TMS_STREAM_INITIALIZED:
-                {
-                if ((iTmsCall->GetCallType() == TMS_CALL_CS)
-                        && (!iUplinkStarted))
-                    {
-                    OpenUplink();
-                    }
-                //notify stream ready state
-                }
-                break;
-            case TMS_STREAM_UNINITIALIZED:
-                //notify initialization error
-                break;
-            case TMS_STREAM_PAUSED:
-                break;
-            case TMS_STREAM_STARTED:
-                iDnlinkStarted = TRUE;
-                break;
-            default:
-                break;
+            ProcessDownlinkStreamChangeEvent(event.curr_state);
+            }
+        else if (event.type == TMS_EVENT_STREAM_STATE_CHANGE_ERROR)
+            {
+#ifndef __WINS__
+            Panic( ECSPPanicAudioStreamInitFailure );
+#endif
             }
         }
     }
--- a/phoneplugins/dialerwidgetplugin/dialerwidgetplugin.pro	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneplugins/dialerwidgetplugin/dialerwidgetplugin.pro	Fri Sep 17 08:29:19 2010 +0300
@@ -27,7 +27,6 @@
 symbian: { 
     LIBS += -lxqservice \
         -lxqserviceutil \
-        -lxqtelephonyservice \
         -lxqsettingsmanager \
         -llogsengine
     TARGET.UID3 = 0x20022F44
--- a/phoneplugins/dialerwidgetplugin/src/dialerwidget.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneplugins/dialerwidgetplugin/src/dialerwidget.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -33,7 +33,6 @@
 #include "qtphonelog.h"
 #include <xqappmgr.h>
 #include <xqservicerequest.h>
-#include <xqcallinfo.h>
 #include <xqpublishandsubscribeutils.h>
 #include <xqrequestinfo.h>
 #include <xqaiwdecl.h>
@@ -84,33 +83,21 @@
     PHONE_TRACE
 #ifdef Q_OS_SYMBIAN
     PHONE_DEBUG("DialerWidget::startDialer");
-    
-    QList<CallInfo> calls;
-    QScopedPointer<XQCallInfo> callInfo(XQCallInfo::create());
-    callInfo->getCalls(calls);
+
     QList<QVariant> args;
     QString service;
     QString interface;
     QString operation;
 
-    if (0 < calls.count()) {
-        PHONE_DEBUG("call ongoing, bring Telephone to foreground");
-        service = "phoneui";
-        interface = "com.nokia.symbian.IStart";
-        operation = "start(int)";
-        int openDialer(0);
-        args << openDialer;
-    } else {
-        PHONE_DEBUG("no calls, open Dialer");
-        service = "logs";
-        interface = XQI_LOGS_VIEW;
-        operation = XQOP_LOGS_SHOW;
-        QVariantMap map;
-        map.insert(XQLOGS_VIEW_INDEX, QVariant(int(XQService::LogsViewAll)));
-        map.insert(XQLOGS_SHOW_DIALPAD, QVariant(true));
-        map.insert(XQLOGS_DIALPAD_TEXT, QVariant(QString()));
-        args.append(QVariant(map));
-    }
+    PHONE_DEBUG("open Dialer");
+    service = "logs";
+    interface = XQI_LOGS_VIEW;
+    operation = XQOP_LOGS_SHOW;
+    QVariantMap map;
+    map.insert(XQLOGS_VIEW_INDEX, QVariant(int(XQService::LogsViewAll)));
+    map.insert(XQLOGS_SHOW_DIALPAD, QVariant(true));
+    map.insert(XQLOGS_DIALPAD_TEXT, QVariant(QString()));
+    args.append(QVariant(map));
 
     XQApplicationManager appManager;
     QScopedPointer<XQAiwRequest> request(appManager.create(service, interface, operation, false));
--- a/phoneplugins/infowidgetplugin/infowidgetplugin.pro	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneplugins/infowidgetplugin/infowidgetplugin.pro	Fri Sep 17 08:29:19 2010 +0300
@@ -51,6 +51,7 @@
 	 "./rom/infowidgetplugin_resources.iby LANGUAGE_APP_LAYER_IBY_EXPORT_PATH(infowidgetplugin_resources.iby)" 
 }
 
+DOCML += resource/infowidget.docml resource/settingsdialog.docml
 RESOURCES = infowidgetplugin.qrc
 
 symbian: PLUGIN_SUBDIR = /private/20022F35/import/widgetregistry/20029F28
--- a/phoneplugins/infowidgetplugin/infowidgetplugin.qrc	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneplugins/infowidgetplugin/infowidgetplugin.qrc	Fri Sep 17 08:29:19 2010 +0300
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <RCC>
     <qresource prefix="/">
-        <file>resource/infowidget.docml</file>
-        <file>resource/settingsdialog.docml</file>        
+        <file alias="resource/infowidget.docml">resource/infowidget.docml.bin</file>
+        <file alias="resource/settingsdialog.docml">resource/settingsdialog.docml.bin</file>
     </qresource>
 </RCC>
--- a/phoneplugins/phoneindicatorplugin/src/phoneindicatorservicesendertask.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneplugins/phoneindicatorplugin/src/phoneindicatorservicesendertask.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -46,7 +46,7 @@
             service = "logs";
             interface = XQI_LOGS_VIEW;
             operation = XQOP_LOGS_SHOW;
-            map.insert(XQLOGS_VIEW_INDEX, QVariant((int)XQService::LogsViewAll));
+            map.insert(XQLOGS_VIEW_INDEX, QVariant((int)XQService::LogsViewMissed));
             map.insert(XQLOGS_SHOW_DIALPAD, QVariant(false));
             map.insert(XQLOGS_DIALPAD_TEXT , QVariant(QString()));
             args.append(QVariant(map));
--- a/phonesettings/cpphonesettingsplugins/barringplugin/inc/cpbarringplugingroup.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/barringplugin/inc/cpbarringplugingroup.h	Fri Sep 17 08:29:19 2010 +0300
@@ -118,6 +118,7 @@
     QQueue<CpSettingFormItemData *> m_barringRequestQueue;
     bool m_barringStatusRequestOngoing;
     int m_activeNoteId;
+    int m_activeProgressNoteId;
     PsUiNotes* m_phoneNotes;
     QValidator *m_barringPasswordValidator;
     bool m_delayedBarringActivationNote;
--- a/phonesettings/cpphonesettingsplugins/barringplugin/src/cpbarringplugingroup.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/barringplugin/src/cpbarringplugingroup.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -46,6 +46,7 @@
     m_editBarringPasswordItem(0),
     m_barringStatusRequestOngoing(false),
     m_activeNoteId(0),
+    m_activeProgressNoteId(0),
     m_phoneNotes(0),
     m_barringPasswordValidator(0),
     m_delayedBarringActivationNote(false),
@@ -131,7 +132,6 @@
     DPRINT << ": OUT";
 }
 
-
 /*!
   CpBarringPluginGroup::setupConnectionsToWrapper.
  */
@@ -296,6 +296,8 @@
         // query again for uncompleted items when user expands/opens barring 
         // settings group again.
         m_phoneNotes->cancelNote(m_activeNoteId);
+        m_phoneNotes->cancelNote(m_activeProgressNoteId);
+        m_activeProgressNoteId = 0;
         m_phoneNotes->showGlobalErrorNote(m_activeNoteId, result);
         m_barringRequestQueue.clear();
         return;
@@ -324,6 +326,8 @@
     }
     if (m_barringRequestQueue.isEmpty()) {
         m_phoneNotes->cancelNote(m_activeNoteId);
+        m_phoneNotes->cancelNote(m_activeProgressNoteId);
+        m_activeProgressNoteId = 0;
         if (m_delayedBarringActivationNote) {
             m_delayedBarringActivationNote = false;
             m_phoneNotes->showNotificationDialog(hbTrId("txt_phone_info_barring_activated"));
@@ -452,10 +456,10 @@
         
         m_barringStatusRequestOngoing = true;
         
-        if (!m_phoneNotes->noteShowing()) {
+        if (!m_activeProgressNoteId && !m_phoneNotes->noteShowing()) {
             // Launch progress note only once for status update.
             m_phoneNotes->showGlobalProgressNote(
-                m_activeNoteId, hbTrId("txt_common_info_requesting"));
+                m_activeProgressNoteId, hbTrId("txt_common_info_requesting"));
         }
     }
     
--- a/phonesettings/cpphonesettingsplugins/callsplugin/src/cpcallsplugingroup.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/callsplugin/src/cpcallsplugingroup.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -385,7 +385,7 @@
         emit showGlobalNote(
             m_activeNoteId, 
             emit hbTrId("txt_phone_info_not_allowed"), 
-            HbMessageBox::MessageTypeInformation);
+            HbMessageBox::MessageTypeWarning);
     } else {
         if (showCallDurationText == hbTrId("txt_phone_setlabel_val_yes")) {
             m_cpSettingsWrapper->setShowCallDuration(true);
--- a/phonesettings/cpphonesettingsplugins/cpnetworkplugin/src/cpnetworkpluginform.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/cpnetworkplugin/src/cpnetworkpluginform.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -294,14 +294,14 @@
         emit showGlobalNote(
             m_activeNoteId, 
             emit hbTrId("Off-line, not allowed"), 
-            HbMessageBox::MessageTypeInformation);
+            HbMessageBox::MessageTypeWarning);
     } else if(m_cpSettingsWrapper->isOngoingCall()) {
         // ongoing call.
         m_psetNetworkWrapper->getNetworkAccessMode();
         emit showGlobalNote(
             m_activeNoteId, 
             emit hbTrId("txt_cp_info_active_calls_must_be_disconnected_befo"), 
-            HbMessageBox::MessageTypeInformation);
+            HbMessageBox::MessageTypeWarning);
     } else {
         // ok case
         if(index == 0) {
@@ -331,14 +331,14 @@
         emit showGlobalNote(
             m_activeNoteId, 
             emit hbTrId("txt_cp_info_operator_selection_is_not_possible_in"), 
-            HbMessageBox::MessageTypeInformation);
+            HbMessageBox::MessageTypeWarning);
     } else if(m_cpSettingsWrapper->isOngoingCall()) {
         // ongoing call.
         restoreOperatorSelectionUi();
         emit showGlobalNote(
             m_activeNoteId, 
             emit hbTrId("txt_cp_info_active_calls_must_be_disconnected_befo"), 
-            HbMessageBox::MessageTypeInformation);
+            HbMessageBox::MessageTypeWarning);
     } else {
         // ok case
         PSetNetworkWrapper::NetworkSelectionMode mode;
@@ -559,7 +559,7 @@
             break;
     }
     emit showGlobalNote(
-        m_activeNoteId, text, HbMessageBox::MessageTypeInformation);
+        m_activeNoteId, text, HbMessageBox::MessageTypeWarning);
     
     // Update UI
     if(type == PSetNetworkWrapper::RequestSetNetworkMode) {
@@ -662,10 +662,9 @@
         }
             break; 
     }
-    
-    emit showGlobalNote(
-        m_activeNoteId, text, HbMessageBox::MessageTypeInformation);
-    
+
+    emit showNotificationDialog(text);
+
     DPRINT << ": OUT";
 }
 
@@ -916,6 +915,12 @@
         &notes, 
         SLOT(showGlobalNote(
             int &, const QString&, HbMessageBox::MessageBoxType)));
+
+    QObject::connect(
+        this, 
+        SIGNAL(showNotificationDialog( const QString&)),
+        &notes, 
+        SLOT(showNotificationDialog( const QString&)));
     
     QObject::connect(
         this, 
--- a/phonesettings/cpphonesettingsplugins/cpnetworkplugin/src/cpnetworkpluginform.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/cpnetworkplugin/src/cpnetworkpluginform.h	Fri Sep 17 08:29:19 2010 +0300
@@ -47,6 +47,7 @@
     void showGlobalProgressNote(int &noteId, const QString& text);
     void showGlobalNote(
         int &noteId, const QString& text, HbMessageBox::MessageBoxType msgBoxType);
+    void showNotificationDialog(const QString& text);
     void cancelNote(int noteId);
 
 public slots:
--- a/phonesettings/cpphonesettingsplugins/cpnetworkplugin/src/cpnetworkstatus.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/cpnetworkplugin/src/cpnetworkstatus.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -18,6 +18,7 @@
 #include <hbicon.h>
 #include "cpnetworkstatus.h"
 #include "cppluginlogging.h"
+#include "cpplugincommon.h"
 
 
 /*!
@@ -25,6 +26,7 @@
  */
 CpNetworkStatus::CpNetworkStatus() : 
     QObject(0),
+    m_cpSettingsWrapper(NULL),
     m_settingFormItemData(NULL)
 {
     DPRINT << ": IN";
@@ -48,7 +50,9 @@
             SLOT(networkStatusChanged(
                     QSystemNetworkInfo::NetworkMode, 
                     QSystemNetworkInfo::NetworkStatus)));
-        
+
+    m_cpSettingsWrapper = new CpSettingsWrapper;
+
     DPRINT << ": OUT";
 }
 
@@ -75,6 +79,9 @@
             SLOT(networkStatusChanged(
                     QSystemNetworkInfo::NetworkMode, 
                     QSystemNetworkInfo::NetworkStatus)));
+
+    delete m_cpSettingsWrapper;
+    m_cpSettingsWrapper = NULL;
     
     DPRINT << ": OUT";
 }
@@ -90,7 +97,7 @@
     QString statusText;
     
     if ((QSystemDeviceInfo::SimNotAvailable == m_deviceInfo->simStatus()) ||
-        (QSystemDeviceInfo::OfflineProfile == m_deviceInfo->currentProfile())) {   
+        ( m_cpSettingsWrapper->isPhoneOffline())) {
         statusText = hbTrId("txt_cp_dblist_mobile_network_val_off");
     } else if (connectedToNetwork()) {
         statusText = m_networkInfo->networkName(QSystemNetworkInfo::WcdmaMode);
@@ -128,7 +135,7 @@
     QString statusIcon("");
     
     if ((QSystemDeviceInfo::SimNotAvailable == m_deviceInfo->simStatus()) ||
-        (QSystemDeviceInfo::OfflineProfile == m_deviceInfo->currentProfile())) {   
+       (m_cpSettingsWrapper->isPhoneOffline())) {
         statusIcon = QString("qtg_large_network_off");
     } else if (connectedToNetwork()) {
         statusIcon = QString("qtg_large_network");
--- a/phonesettings/cpphonesettingsplugins/cpnetworkplugin/src/cpnetworkstatus.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/cpnetworkplugin/src/cpnetworkstatus.h	Fri Sep 17 08:29:19 2010 +0300
@@ -25,6 +25,7 @@
 
 class CpSettingFormItemData;
 class HbIcon;
+class CpSettingsWrapper;
 
 class CpNetworkStatus 
     : public QObject
@@ -63,8 +64,8 @@
 private:
     
     QScopedPointer<QSystemNetworkInfo> m_networkInfo;
-    
     QScopedPointer<QSystemDeviceInfo> m_deviceInfo;
+    CpSettingsWrapper *m_cpSettingsWrapper;
         
     // Not own
     CpSettingFormItemData *m_settingFormItemData;
--- a/phonesettings/cpphonesettingsplugins/cpnetworkplugin/tsrc/ut_cpnetworkstatus/ut_cpnetworkstatus.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/cpnetworkplugin/tsrc/ut_cpnetworkstatus/ut_cpnetworkstatus.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -51,7 +51,7 @@
     QT_TRAP_THROWING(SmcDefaultValue<HbIcon>::SetL(HbIcon("")));
     QT_TRAP_THROWING(SmcDefaultValue< QSystemNetworkInfo::NetworkStatus >::SetL(QSystemNetworkInfo::Connected));
     QT_TRAP_THROWING(SmcDefaultValue< QSystemDeviceInfo::SimStatus >::SetL(QSystemDeviceInfo::SingleSimAvailable ));
-    QT_TRAP_THROWING(SmcDefaultValue< QSystemDeviceInfo::Profile >::SetL(QSystemDeviceInfo::NormalProfile ));
+//    QT_TRAP_THROWING(SmcDefaultValue< QSystemDeviceInfo::Profile >::SetL(QSystemDeviceInfo::NormalProfile ));
     
     m_networkStatus = new CpNetworkStatus;
 }
@@ -76,7 +76,6 @@
     EXPECT( QtMobility::QSystemNetworkInfo, networkStatus ).with ( QSystemNetworkInfo::WcdmaMode );
     EXPECT( QtMobility::QSystemNetworkInfo, networkStatus ).with ( QSystemNetworkInfo::GsmMode );
     EXPECT( QtMobility::QSystemDeviceInfo, simStatus );
-    EXPECT( QtMobility::QSystemDeviceInfo, currentProfile );
     EXPECT( QtMobility::QSystemNetworkInfo, networkName );
     m_networkStatus->statusText();
     QVERIFY(verify());
@@ -84,7 +83,6 @@
     EXPECT( QtMobility::QSystemNetworkInfo, networkStatus ).with ( QSystemNetworkInfo::WcdmaMode );
     EXPECT( QtMobility::QSystemNetworkInfo, networkStatus ).with ( QSystemNetworkInfo::GsmMode );
     EXPECT( QtMobility::QSystemDeviceInfo, simStatus );
-    EXPECT( QtMobility::QSystemDeviceInfo, currentProfile );
     EXPECT( QtMobility::QSystemNetworkInfo, networkName );
     QT_TRAP_THROWING(SmcDefaultValue<QString>::SetL(QString("")));
     m_networkStatus->statusText();
@@ -97,7 +95,6 @@
     QVERIFY(verify());
     
     EXPECT( QtMobility::QSystemDeviceInfo, simStatus );
-    EXPECT( QtMobility::QSystemDeviceInfo, currentProfile );
     EXPECT( QtMobility::QSystemNetworkInfo, networkStatus ).with ( QSystemNetworkInfo::WcdmaMode );
     EXPECT( QtMobility::QSystemNetworkInfo, networkStatus ).with ( QSystemNetworkInfo::GsmMode );
     EXPECT( QtMobility::QSystemNetworkInfo, networkName ).times(0);
@@ -115,7 +112,6 @@
     EXPECT( QtMobility::QSystemNetworkInfo, networkStatus ).with ( QSystemNetworkInfo::WcdmaMode );
     EXPECT( QtMobility::QSystemNetworkInfo, networkStatus ).with ( QSystemNetworkInfo::GsmMode );
     EXPECT( QtMobility::QSystemDeviceInfo, simStatus );
-    EXPECT( QtMobility::QSystemDeviceInfo, currentProfile );
     m_networkStatus->statusIcon();
     QVERIFY(verify());
     
@@ -125,7 +121,6 @@
     QVERIFY(verify());
     
     EXPECT( QtMobility::QSystemDeviceInfo, simStatus );
-    EXPECT( QtMobility::QSystemDeviceInfo, currentProfile );
     EXPECT( QtMobility::QSystemNetworkInfo, networkStatus ).with ( QSystemNetworkInfo::WcdmaMode );
     EXPECT( QtMobility::QSystemNetworkInfo, networkStatus ).with ( QSystemNetworkInfo::GsmMode );
     QT_TRAP_THROWING(SmcDefaultValue< QSystemDeviceInfo::SimStatus >::SetL(QSystemDeviceInfo::SingleSimAvailable ));
--- a/phonesettings/cpphonesettingsplugins/cpnetworkplugin/tsrc/ut_cpnetworkstatus/ut_cpnetworkstatus.pro	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/cpnetworkplugin/tsrc/ut_cpnetworkstatus/ut_cpnetworkstatus.pro	Fri Sep 17 08:29:19 2010 +0300
@@ -23,7 +23,8 @@
 INCLUDEPATH +=../../../inc 
 INCLUDEPATH +=../../../cptelephonyutils/inc
 INCLUDEPATH += ../../../tsrc/common
-DEFINES += BUILD_NETWORKPLUGIN BUILD_CPTELEPHONYUTILS QT_BUILD_SYSINFO_LIB QT_MAKEDLL
+DEFINES += BUILD_NETWORKPLUGIN BUILD_CPTELEPHONYUTILS BUILD_PSETWRAPPER \
+           QT_BUILD_SYSINFO_LIB QT_MAKEDLL
 MOBILITY += systeminfo
 
 QT -= gui
@@ -31,9 +32,7 @@
 
 symbian: {
   CONFIG += no_icon
-  INCLUDEPATH += /epoc32/include/mw/QtTest \
-        /epoc32/include/platform/mw \
-        /epoc32/include/mw/qt
+  INCLUDEPATH +=  $$APP_LAYER_SYSTEMINCLUDE
   LIBS += -lmocklib \
         -lsymbianmock \
         -lcpframework
@@ -45,11 +44,13 @@
 
 # code to be tested
 HEADERS += ../../src/cpnetworkstatus.h \
+           ../../../cptelephonyutils/inc/cpplugincommon.h \
            /epoc32/include/mw/qsysteminfo.h
        
 SOURCES += ../../src/cpnetworkstatus.cpp 
 
 # mocks needed for testing
-SOURCES += ../../../tsrc/mocks/mock_hbicon.cpp
-SOURCES += ../../../tsrc/mocks/mock_cpsettingformentryitemdata.cpp
-SOURCES += ../../../tsrc/mocks/mock_qsysteminfo.cpp
+SOURCES += ../../../tsrc/mocks/mock_cpplugincommon.cpp \
+           ../../../tsrc/mocks/mock_hbicon.cpp \
+           ../../../tsrc/mocks/mock_cpsettingformentryitemdata.cpp \
+           ../../../tsrc/mocks/mock_qsysteminfo.cpp
--- a/phonesettings/cpphonesettingsplugins/cptelephonyutils/bwins/cptelephonyutilsu.def	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/cptelephonyutils/bwins/cptelephonyutilsu.def	Fri Sep 17 08:29:19 2010 +0300
@@ -19,37 +19,36 @@
 	?videoSupported@Tools@@SA_NXZ @ 18 NONAME ; bool Tools::videoSupported(void)
 	?showCallDuration@CpSettingsWrapper@@QAE_NXZ @ 19 NONAME ; bool CpSettingsWrapper::showCallDuration(void)
 	?isPhoneOffline@CpSettingsWrapper@@QBE_NXZ @ 20 NONAME ; bool CpSettingsWrapper::isPhoneOffline(void) const
-	?errorCodeTextMapping@Tools@@SA_NHAAVQString@@@Z @ 21 NONAME ; bool Tools::errorCodeTextMapping(int, class QString &)
-	?qt_metacall@CpPhoneLocalisation@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 22 NONAME ; int CpPhoneLocalisation::qt_metacall(enum QMetaObject::Call, int, void * *)
-	?writeVtVideoSending@CpSettingsWrapper@@QAEHH@Z @ 23 NONAME ; int CpSettingsWrapper::writeVtVideoSending(int)
-	?readCenrepString@CpSettingsWrapper@@ABE?AVQString@@JK@Z @ 24 NONAME ; class QString CpSettingsWrapper::readCenrepString(long, unsigned long) const
-	?writeSoftRejectText@CpSettingsWrapper@@QAEHABVQString@@_N@Z @ 25 NONAME ; int CpSettingsWrapper::writeSoftRejectText(class QString const &, bool)
-	?setShowCallDuration@CpSettingsWrapper@@QAEH_N@Z @ 26 NONAME ; int CpSettingsWrapper::setShowCallDuration(bool)
-	?qt_metacall@Tools@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 27 NONAME ; int Tools::qt_metacall(enum QMetaObject::Call, int, void * *)
-	?trUtf8@CpSettingsWrapper@@SA?AVQString@@PBD0@Z @ 28 NONAME ; class QString CpSettingsWrapper::trUtf8(char const *, char const *)
-	??1CpPhoneLocalisation@@UAE@XZ @ 29 NONAME ; CpPhoneLocalisation::~CpPhoneLocalisation(void)
-	??_ECpSettingsWrapper@@UAE@I@Z @ 30 NONAME ; CpSettingsWrapper::~CpSettingsWrapper(unsigned int)
-	?trUtf8@CpSettingsWrapper@@SA?AVQString@@PBD0H@Z @ 31 NONAME ; class QString CpSettingsWrapper::trUtf8(char const *, char const *, int)
-	?trUtf8@CpPhoneLocalisation@@SA?AVQString@@PBD0@Z @ 32 NONAME ; class QString CpPhoneLocalisation::trUtf8(char const *, char const *)
-	?tr@Tools@@SA?AVQString@@PBD0@Z @ 33 NONAME ; class QString Tools::tr(char const *, char const *)
-	?voipSupported@Tools@@SA_NXZ @ 34 NONAME ; bool Tools::voipSupported(void)
+	?qt_metacall@CpPhoneLocalisation@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 21 NONAME ; int CpPhoneLocalisation::qt_metacall(enum QMetaObject::Call, int, void * *)
+	?writeVtVideoSending@CpSettingsWrapper@@QAEHH@Z @ 22 NONAME ; int CpSettingsWrapper::writeVtVideoSending(int)
+	?readCenrepString@CpSettingsWrapper@@ABE?AVQString@@JK@Z @ 23 NONAME ; class QString CpSettingsWrapper::readCenrepString(long, unsigned long) const
+	?writeSoftRejectText@CpSettingsWrapper@@QAEHABVQString@@_N@Z @ 24 NONAME ; int CpSettingsWrapper::writeSoftRejectText(class QString const &, bool)
+	?setShowCallDuration@CpSettingsWrapper@@QAEH_N@Z @ 25 NONAME ; int CpSettingsWrapper::setShowCallDuration(bool)
+	?qt_metacall@Tools@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 26 NONAME ; int Tools::qt_metacall(enum QMetaObject::Call, int, void * *)
+	?trUtf8@CpSettingsWrapper@@SA?AVQString@@PBD0@Z @ 27 NONAME ; class QString CpSettingsWrapper::trUtf8(char const *, char const *)
+	??1CpPhoneLocalisation@@UAE@XZ @ 28 NONAME ; CpPhoneLocalisation::~CpPhoneLocalisation(void)
+	??_ECpSettingsWrapper@@UAE@I@Z @ 29 NONAME ; CpSettingsWrapper::~CpSettingsWrapper(unsigned int)
+	?trUtf8@CpSettingsWrapper@@SA?AVQString@@PBD0H@Z @ 30 NONAME ; class QString CpSettingsWrapper::trUtf8(char const *, char const *, int)
+	?trUtf8@CpPhoneLocalisation@@SA?AVQString@@PBD0@Z @ 31 NONAME ; class QString CpPhoneLocalisation::trUtf8(char const *, char const *)
+	?tr@Tools@@SA?AVQString@@PBD0@Z @ 32 NONAME ; class QString Tools::tr(char const *, char const *)
+	?voipSupported@Tools@@SA_NXZ @ 33 NONAME ; bool Tools::voipSupported(void)
+	?qt_metacast@Tools@@UAEPAXPBD@Z @ 34 NONAME ; void * Tools::qt_metacast(char const *)
 	?staticMetaObject@CpPhoneLocalisation@@2UQMetaObject@@B @ 35 NONAME ; struct QMetaObject const CpPhoneLocalisation::staticMetaObject
-	?qt_metacast@Tools@@UAEPAXPBD@Z @ 36 NONAME ; void * Tools::qt_metacast(char const *)
-	?readCenrepValue@CpSettingsWrapper@@ABE?AVQVariant@@JK@Z @ 37 NONAME ; class QVariant CpSettingsWrapper::readCenrepValue(long, unsigned long) const
-	?trUtf8@Tools@@SA?AVQString@@PBD0H@Z @ 38 NONAME ; class QString Tools::trUtf8(char const *, char const *, int)
-	?getStaticMetaObject@CpPhoneLocalisation@@SAABUQMetaObject@@XZ @ 39 NONAME ; struct QMetaObject const & CpPhoneLocalisation::getStaticMetaObject(void)
-	?tr@Tools@@SA?AVQString@@PBD0H@Z @ 40 NONAME ; class QString Tools::tr(char const *, char const *, int)
-	?qt_metacall@CpSettingsWrapper@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 41 NONAME ; int CpSettingsWrapper::qt_metacall(enum QMetaObject::Call, int, void * *)
-	??0CpPhoneLocalisation@@QAE@PAVQObject@@@Z @ 42 NONAME ; CpPhoneLocalisation::CpPhoneLocalisation(class QObject *)
-	??_ECpPhoneLocalisation@@UAE@I@Z @ 43 NONAME ; CpPhoneLocalisation::~CpPhoneLocalisation(unsigned int)
-	?removeTranslators@CpPhoneLocalisation@@QAEXXZ @ 44 NONAME ; void CpPhoneLocalisation::removeTranslators(void)
-	?numberGroupingSupported@CpSettingsWrapper@@QBE_NXZ @ 45 NONAME ; bool CpSettingsWrapper::numberGroupingSupported(void) const
-	?tr@CpSettingsWrapper@@SA?AVQString@@PBD0@Z @ 46 NONAME ; class QString CpSettingsWrapper::tr(char const *, char const *)
-	?isFeatureCallWaitingDistiquishNotProvisionedEnabled@CpSettingsWrapper@@QAE_NXZ @ 47 NONAME ; bool CpSettingsWrapper::isFeatureCallWaitingDistiquishNotProvisionedEnabled(void)
-	?writeCenrepValue@CpSettingsWrapper@@ABEHJKABVQVariant@@@Z @ 48 NONAME ; int CpSettingsWrapper::writeCenrepValue(long, unsigned long, class QVariant const &) const
+	?readCenrepValue@CpSettingsWrapper@@ABE?AVQVariant@@JK@Z @ 36 NONAME ; class QVariant CpSettingsWrapper::readCenrepValue(long, unsigned long) const
+	?trUtf8@Tools@@SA?AVQString@@PBD0H@Z @ 37 NONAME ; class QString Tools::trUtf8(char const *, char const *, int)
+	?getStaticMetaObject@CpPhoneLocalisation@@SAABUQMetaObject@@XZ @ 38 NONAME ; struct QMetaObject const & CpPhoneLocalisation::getStaticMetaObject(void)
+	?tr@Tools@@SA?AVQString@@PBD0H@Z @ 39 NONAME ; class QString Tools::tr(char const *, char const *, int)
+	?qt_metacall@CpSettingsWrapper@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 40 NONAME ; int CpSettingsWrapper::qt_metacall(enum QMetaObject::Call, int, void * *)
+	??0CpPhoneLocalisation@@QAE@PAVQObject@@@Z @ 41 NONAME ; CpPhoneLocalisation::CpPhoneLocalisation(class QObject *)
+	??_ECpPhoneLocalisation@@UAE@I@Z @ 42 NONAME ; CpPhoneLocalisation::~CpPhoneLocalisation(unsigned int)
+	?removeTranslators@CpPhoneLocalisation@@QAEXXZ @ 43 NONAME ; void CpPhoneLocalisation::removeTranslators(void)
+	?numberGroupingSupported@CpSettingsWrapper@@QBE_NXZ @ 44 NONAME ; bool CpSettingsWrapper::numberGroupingSupported(void) const
+	?tr@CpSettingsWrapper@@SA?AVQString@@PBD0@Z @ 45 NONAME ; class QString CpSettingsWrapper::tr(char const *, char const *)
+	?isFeatureCallWaitingDistiquishNotProvisionedEnabled@CpSettingsWrapper@@QAE_NXZ @ 46 NONAME ; bool CpSettingsWrapper::isFeatureCallWaitingDistiquishNotProvisionedEnabled(void)
+	?writeCenrepValue@CpSettingsWrapper@@ABEHJKABVQVariant@@@Z @ 47 NONAME ; int CpSettingsWrapper::writeCenrepValue(long, unsigned long, class QVariant const &) const
+	?readVtVideoSending@CpSettingsWrapper@@QAEHXZ @ 48 NONAME ; int CpSettingsWrapper::readVtVideoSending(void)
 	?staticMetaObject@Tools@@2UQMetaObject@@B @ 49 NONAME ; struct QMetaObject const Tools::staticMetaObject
-	?readVtVideoSending@CpSettingsWrapper@@QAEHXZ @ 50 NONAME ; int CpSettingsWrapper::readVtVideoSending(void)
-	?trUtf8@Tools@@SA?AVQString@@PBD0@Z @ 51 NONAME ; class QString Tools::trUtf8(char const *, char const *)
+	?trUtf8@Tools@@SA?AVQString@@PBD0@Z @ 50 NONAME ; class QString Tools::trUtf8(char const *, char const *)
+	??0CpSettingsWrapper@@QAE@PAVQObject@@@Z @ 51 NONAME ; CpSettingsWrapper::CpSettingsWrapper(class QObject *)
 	?staticMetaObject@CpSettingsWrapper@@2UQMetaObject@@B @ 52 NONAME ; struct QMetaObject const CpSettingsWrapper::staticMetaObject
-	??0CpSettingsWrapper@@QAE@PAVQObject@@@Z @ 53 NONAME ; CpSettingsWrapper::CpSettingsWrapper(class QObject *)
 
--- a/phonesettings/cpphonesettingsplugins/cptelephonyutils/eabi/cptelephonyutilsu.def	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/cptelephonyutils/eabi/cptelephonyutilsu.def	Fri Sep 17 08:29:19 2010 +0300
@@ -32,22 +32,21 @@
 	_ZN5Tools14videoSupportedEv @ 31 NONAME
 	_ZN5Tools16staticMetaObjectE @ 32 NONAME DATA 16
 	_ZN5Tools19getStaticMetaObjectEv @ 33 NONAME
-	_ZN5Tools20errorCodeTextMappingEiR7QString @ 34 NONAME
-	_ZNK17CpSettingsWrapper10metaObjectEv @ 35 NONAME
-	_ZNK17CpSettingsWrapper13isOngoingCallEv @ 36 NONAME
-	_ZNK17CpSettingsWrapper14isPhoneOfflineEv @ 37 NONAME
-	_ZNK17CpSettingsWrapper15readCenrepValueElm @ 38 NONAME
-	_ZNK17CpSettingsWrapper15readPubSubValueElm @ 39 NONAME
-	_ZNK17CpSettingsWrapper16readCenrepStringElm @ 40 NONAME
-	_ZNK17CpSettingsWrapper16writeCenrepValueElmRK8QVariant @ 41 NONAME
-	_ZNK17CpSettingsWrapper22forbiddenIconSupportedEv @ 42 NONAME
-	_ZNK17CpSettingsWrapper23numberGroupingSupportedEv @ 43 NONAME
-	_ZNK19CpPhoneLocalisation10metaObjectEv @ 44 NONAME
-	_ZNK5Tools10metaObjectEv @ 45 NONAME
-	_ZTI17CpSettingsWrapper @ 46 NONAME
-	_ZTI19CpPhoneLocalisation @ 47 NONAME
-	_ZTI5Tools @ 48 NONAME
-	_ZTV17CpSettingsWrapper @ 49 NONAME
-	_ZTV19CpPhoneLocalisation @ 50 NONAME
-	_ZTV5Tools @ 51 NONAME
+	_ZNK17CpSettingsWrapper10metaObjectEv @ 34 NONAME
+	_ZNK17CpSettingsWrapper13isOngoingCallEv @ 35 NONAME
+	_ZNK17CpSettingsWrapper14isPhoneOfflineEv @ 36 NONAME
+	_ZNK17CpSettingsWrapper15readCenrepValueElm @ 37 NONAME
+	_ZNK17CpSettingsWrapper15readPubSubValueElm @ 38 NONAME
+	_ZNK17CpSettingsWrapper16readCenrepStringElm @ 39 NONAME
+	_ZNK17CpSettingsWrapper16writeCenrepValueElmRK8QVariant @ 40 NONAME
+	_ZNK17CpSettingsWrapper22forbiddenIconSupportedEv @ 41 NONAME
+	_ZNK17CpSettingsWrapper23numberGroupingSupportedEv @ 42 NONAME
+	_ZNK19CpPhoneLocalisation10metaObjectEv @ 43 NONAME
+	_ZNK5Tools10metaObjectEv @ 44 NONAME
+	_ZTI17CpSettingsWrapper @ 45 NONAME
+	_ZTI19CpPhoneLocalisation @ 46 NONAME
+	_ZTI5Tools @ 47 NONAME
+	_ZTV17CpSettingsWrapper @ 48 NONAME
+	_ZTV19CpPhoneLocalisation @ 49 NONAME
+	_ZTV5Tools @ 50 NONAME
 
--- a/phonesettings/cpphonesettingsplugins/cptelephonyutils/inc/cpplugincommon.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/cptelephonyutils/inc/cpplugincommon.h	Fri Sep 17 08:29:19 2010 +0300
@@ -46,11 +46,6 @@
       */
     static bool videoSupported();
 
-    /*!
-      Error code text conversion
-      */
-    static bool errorCodeTextMapping(const int errorcode, QString &errorText);
-
 };
 
 /*!
--- a/phonesettings/cpphonesettingsplugins/cptelephonyutils/src/cpplugincommon.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/cptelephonyutils/src/cpplugincommon.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -59,82 +59,6 @@
     return XQSysInfo::isSupported(KFeatureIdCsVideoTelephony);
 }
 
-/*!
-  Tools::errorCodeTextMapping.
- */
-bool Tools::errorCodeTextMapping(const int errorcode, QString &errorText)
-{
-    DPRINT;
-    errorText.clear();
-    bool errorTextFound(true);
-
-    switch(errorcode){
-        case KErrGsmSSSubscriptionViolation:
-            errorText = hbTrId("txt_phone_info_barring_operation_not_successful");
-            break;
-        case KErrGsmSSUnknownSubscriber:
-        case KErrGsmSSAbsentSubscriber:
-        case KErrGsmSSIllegalOperation:
-        case KErrGsmSSIllegalSubscriber:
-        case KErrGsmSSIllegalEquipment:
-        case KErrGsmSSCallBarred:
-        case KErrGsmSSDataMissing:
-            errorText = hbTrId("txt_phone_info_not_allowed");
-            break;
-        case KErrGsmSSIncompatibility:
-            errorText = hbTrId("txt_phone_info_conflict_error");
-            break;
-        case KErrGsmSSSystemFailure:
-            errorText = hbTrId("txt_phone_info_result_unknown");
-            break;
-        case KErrGsmSSUnexpectedDataValue:
-        case KErrGsmSSResourcesUnavailable:
-            errorText = hbTrId("txt_phone_info_request_rejected");
-            break;
-        case KErrGsmSSNegativePasswordCheck:
-        case KErrGsmSSPasswordRegistrationFailure:
-            errorText = hbTrId("Password error");
-            break;
-        case KErrGsmSSPasswordAttemptsViolation:
-            errorText = hbTrId("txt_phone_info_barring_password_blocked");
-            break;
-        case KErrGsmSMSNoNetworkService:
-        case KErrGsmNoService:
-            errorText = hbTrId("No network coverage");
-            break;
-        case KErrSsActivationDataLost:
-            errorText = hbTrId("Check network services");
-            break;
-        case KErrGsmOfflineOpNotAllowed:
-            if(XQSysInfo::isSupported(KFeatureIdOfflineMode)){
-                XQSettingsManager *xqsettingsManager = new XQSettingsManager();
-                XQSettingsKey key(XQSettingsKey::TargetPublishAndSubscribe,
-                        KPSUidBluetoothSapConnectionState.iUid,
-                        KBTSapConnectionState);
-                QVariant startupValue = xqsettingsManager->readItemValue(key);
-                int value = startupValue.toInt();
-                delete xqsettingsManager;
-                xqsettingsManager = NULL;
-                if (value == EBTSapConnected){
-                    errorText = hbTrId("Operation not possible in SIM access profile mode");
-                } else {
-                    errorText = hbTrId("Operation not possible in Off-line mode");
-                }
-            } else {
-                errorText = hbTrId("txt_phone_info_request_not_completed");
-            }
-            break;
-        case KErrGsmSSUnknownAlphabet:
-            errorText = hbTrId("txt_phone_info_invalid_phone_number");
-            break;
-        default:
-            errorText = hbTrId("txt_phone_info_request_not_completed");
-            break;
-    }
-
-    return errorTextFound;
-}
-
 CpSettingsWrapper::CpSettingsWrapper(QObject *parent): 
     QObject(parent),
     m_settings(NULL),
--- a/phonesettings/cpphonesettingsplugins/cptelephonyutils/src/cpplugincommon_s.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/cptelephonyutils/src/cpplugincommon_s.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -41,20 +41,6 @@
     return Unknown;
 }
 
-
-/*!
-  Tools::errorCodeTextMapping.
- */
-bool Tools::errorCodeTextMapping(const int errorcode, QString &errorText)
-{
-    DPRINT << "DUMMY WRAPPER";
-    errorText.clear();
-    bool errorTextFound(true);
-    errorText = hbTrId("Not done");
-    return errorTextFound;
-}
-
-
 CpSettingsWrapper::CpSettingsWrapper(QObject *parent): 
     QObject(parent)
 {
--- a/phonesettings/cpphonesettingsplugins/cptelephonyutils/tsrc/ut_cpplugincommon/ut_cpplugincommon.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/cptelephonyutils/tsrc/ut_cpplugincommon/ut_cpplugincommon.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -174,96 +174,6 @@
 }
 
 /*!
-  UT_CpPluginCommon::t_errorCodeTextMapping
- */
-void UT_CpPluginCommon::t_errorCodeTextMapping()
-{
-    QString text = "";
-    Tools::errorCodeTextMapping(KErrGsmSSSubscriptionViolation, text);
-    QCOMPARE( text, QString(
-            "txt_phone_info_barring_operation_not_successful"));
-    Tools::errorCodeTextMapping(KErrGsmSSUnknownSubscriber, text);
-    QCOMPARE( text, QString(
-            "txt_phone_info_not_allowed"));
-    Tools::errorCodeTextMapping(KErrGsmSSAbsentSubscriber, text);
-    QCOMPARE( text, QString(
-            "txt_phone_info_not_allowed"));
-    Tools::errorCodeTextMapping(KErrGsmSSIllegalOperation, text);
-    QCOMPARE( text, QString(
-            "txt_phone_info_not_allowed"));
-    Tools::errorCodeTextMapping(KErrGsmSSIllegalSubscriber, text);
-    QCOMPARE( text, QString(
-            "txt_phone_info_not_allowed"));
-    Tools::errorCodeTextMapping(KErrGsmSSIllegalEquipment, text);
-    QCOMPARE( text, QString(
-            "txt_phone_info_not_allowed"));
-    Tools::errorCodeTextMapping(KErrGsmSSCallBarred, text);
-    QCOMPARE( text, QString(
-            "txt_phone_info_not_allowed"));
-    Tools::errorCodeTextMapping(KErrGsmSSDataMissing, text);
-    QCOMPARE( text, QString(
-            "txt_phone_info_not_allowed"));
-    Tools::errorCodeTextMapping(KErrGsmSSIncompatibility, text);
-    QCOMPARE( text, QString(
-            "txt_phone_info_conflict_error"));
-    Tools::errorCodeTextMapping(KErrGsmSSSystemFailure, text);
-    QCOMPARE( text, QString(
-            "txt_phone_info_result_unknown"));
-    Tools::errorCodeTextMapping(KErrGsmSSUnexpectedDataValue, text);
-    QCOMPARE( text, QString(
-            "txt_phone_info_request_rejected"));
-    Tools::errorCodeTextMapping(KErrGsmSSResourcesUnavailable, text);
-    QCOMPARE( text, QString(
-            "txt_phone_info_request_rejected"));
-    Tools::errorCodeTextMapping(KErrGsmSSNegativePasswordCheck, text);
-    QCOMPARE( text, QString(
-            "Password error"));
-    Tools::errorCodeTextMapping(KErrGsmSSPasswordRegistrationFailure, text);
-    QCOMPARE( text, QString(
-            "Password error"));
-    Tools::errorCodeTextMapping(KErrGsmSSPasswordAttemptsViolation, text);
-    QCOMPARE( text, QString(
-            "txt_phone_info_barring_password_blocked"));
-    Tools::errorCodeTextMapping(KErrGsmSMSNoNetworkService, text);
-    QCOMPARE( text, QString(
-            "No network coverage"));
-    Tools::errorCodeTextMapping(KErrGsmNoService, text);
-    QCOMPARE( text, QString(
-            "No network coverage"));
-    Tools::errorCodeTextMapping(KErrSsActivationDataLost, text);
-    QCOMPARE( text, QString(
-            "Check network services"));
-    Tools::errorCodeTextMapping(KErrGsmSSUnknownAlphabet, text);
-    QCOMPARE( text, QString("txt_phone_info_invalid_phone_number"));
-    
-    EXPECT(XQSysInfo, isSupported).returns(false);
-    Tools::errorCodeTextMapping(KErrGsmOfflineOpNotAllowed, text);
-    QCOMPARE( text, QString(
-            "txt_phone_info_request_not_completed"));
-    QVERIFY( verify() );
-    
-    EXPECT(XQSysInfo, isSupported).returns(true);
-    EXPECT(XQSettingsManager, readItemValue).returns(QVariant(EBTSapConnected));
-    Tools::errorCodeTextMapping(KErrGsmOfflineOpNotAllowed, text);
-    QCOMPARE( text, QString(
-            "Operation not possible in SIM access profile mode"));
-    QVERIFY( verify() );
-    
-    EXPECT(XQSysInfo, isSupported).returns(true);
-    EXPECT(XQSettingsManager, readItemValue).returns(QVariant(EBTSapNotConnected));
-    Tools::errorCodeTextMapping(KErrGsmOfflineOpNotAllowed, text);
-    QCOMPARE( text, QString(
-            "Operation not possible in Off-line mode"));
-    
-    Tools::errorCodeTextMapping(-1, text);
-    QCOMPARE( text, QString(
-            "txt_phone_info_request_not_completed"));
-    
-    QVERIFY( verify() );
-        
-}
-
-/*!
   UT_CpPluginCommon::t_readVtVideoSending
  */
 void UT_CpPluginCommon::t_readVtVideoSending()
--- a/phonesettings/cpphonesettingsplugins/cptelephonyutils/tsrc/ut_cpplugincommon/ut_cpplugincommon.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/cptelephonyutils/tsrc/ut_cpplugincommon/ut_cpplugincommon.h	Fri Sep 17 08:29:19 2010 +0300
@@ -46,7 +46,6 @@
     
     void t_voipSupported();
     void t_videoSupported();
-    void t_errorCodeTextMapping();
     
     void t_readVtVideoSending();
     void t_writeVtVideoSending();
--- a/phonesettings/cpphonesettingsplugins/divertplugin/divertplugin.pro	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/divertplugin/divertplugin.pro	Fri Sep 17 08:29:19 2010 +0300
@@ -35,11 +35,13 @@
 # Input
 SOURCES += src/cpdivertplugingroup.cpp \
     src/cpdivertplugin.cpp \
-    src/cpdivertitemdata.cpp
+    src/cpdivertitemdata.cpp \
+    src/cpdivertquery.cpp
 
 HEADERS += src/cpdivertplugingroup.h \
     src/cpdivertplugin.h \
-    src/cpdivertitemdata.h
+    src/cpdivertitemdata.h \
+    src/cpdivertquery.h
 
 include(../cpplugincommon.pri)
 
--- a/phonesettings/cpphonesettingsplugins/divertplugin/src/cpdivertplugingroup.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/divertplugin/src/cpdivertplugingroup.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -17,30 +17,19 @@
 
 #include <hbdataformmodel.h>
 #include <hbdataformmodelitem.h>
-#include <hblineedit.h>
-#include <hbinputeditorinterface.h>
-#include <hbcombobox.h>
-#include <hbdeviceprogressdialog.h>
 #include <sssettingswrapper.h>
 #include <psetwrapper.h>
-#include <hbaction.h>
-#include <hblistwidget.h>
-#include <hblistwidgetitem.h>
-#include <hblabel.h>
-#include <hbparameterlengthlimiter.h>
 #include <cpitemdatahelper.h>
 #include <psuinotes.h>
 #include "cpdivertplugingroup.h"
 #include "cpplugincommon.h"
 #include "cppluginlogging.h"
 #include "cpdivertitemdata.h"
+#include "cpdivertquery.h"
 
 Q_DECLARE_METATYPE(PsCallDivertingCondition)
 Q_DECLARE_METATYPE(PsServiceGroup)
 
-// CONSTANTS 
-const QString KOtherNumber("otherNumber");
-
 /*!
   CpDivertPluginGroup::CpDivertPluginGroup.
  */
@@ -60,8 +49,7 @@
        m_activeNoteId(0),
        m_activeProgressNoteId(0),
        m_helper(helper),
-       m_activateDivertPhase(NonePhase),
-       m_dialog(NULL)
+       m_activateDivertPopUp(0)
 {
     DPRINT << ": IN";
     
@@ -102,6 +90,25 @@
         this,
         SLOT(divertRequestProcessed()));
     
+    m_activateDivertPopUp = new CpDivertQuery(*m_callDivertingWrapper);
+    QObject::connect(
+        m_activateDivertPopUp, 
+        SIGNAL(result(PSCallDivertingCommand &)),
+        this,
+        SLOT(divertQueryOk(PSCallDivertingCommand &)));
+    
+    QObject::connect(
+        m_activateDivertPopUp, 
+        SIGNAL(cancelled(PSCallDivertingCommand &)),
+        this,
+        SLOT(divertQueryCancelled(PSCallDivertingCommand &)));
+
+    QObject::connect(
+        m_activateDivertPopUp, 
+        SIGNAL(handleDivertingError(int)),
+        this, 
+        SLOT(handleDivertingError(int)));
+    
     // Listen form item visibility change
     m_helper.connectToForm(
             SIGNAL(itemShown(QModelIndex)), this, SLOT(itemShown(QModelIndex)));
@@ -109,7 +116,7 @@
     // Create grouped setting items
     createVoiceCallItems(this);
     createVideoCallItems(this);
-        
+
     DPRINT << ": OUT";
 }
 
@@ -119,7 +126,7 @@
 CpDivertPluginGroup::~CpDivertPluginGroup()
 {
     DPRINT << ": IN";
-
+    delete m_activateDivertPopUp;
     delete m_pSetWrapper;
     delete m_ssSettingsWrapper;
     
@@ -135,7 +142,7 @@
     CpSettingFormItemData *page = new CpSettingFormItemData(
                 HbDataFormModelItem::GroupPageItem,
                 hbTrId("txt_phone_setlabel_service_val_voice_divert"),
-                this);
+                parent);
     page->setObjectName("voiceCallSettingsGroupItem");
 
     m_DataItemVoiceAllCalls = createDivertItem(
@@ -176,6 +183,7 @@
             hbTrId("txt_phone_setlabel_if_not_available"),
             hbTrId("txt_phone_setlabel_if_not_available"), true,
             page);
+    
     m_DataItemVoiceIfNotAvailable->setObjectName("voiceIfNotAvailableDataItem");
 
     DPRINT << ": OUT";
@@ -191,7 +199,7 @@
     CpSettingFormItemData *page = new CpSettingFormItemData(
             HbDataFormModelItem::GroupPageItem,
             hbTrId("txt_phone_setlabel_service_val_video_divert"),
-            this);
+            parent);
     page->setObjectName("videoCallSettingsGroupItem"); 
     
     m_DataItemVideoAllCalls = createDivertItem(
@@ -232,6 +240,7 @@
             hbTrId("txt_phone_setlabel_if_not_available"),
             hbTrId("txt_phone_setlabel_if_not_available"), true,
             page);
+    
     m_DataItemVideoIfNotAvailable->setObjectName("videoIfNotAvailableDataItem");
     
     DPRINT << ": OUT";
@@ -303,6 +312,28 @@
     DPRINT << ": OUT";
 }
 
+
+/*!
+  CpDivertPluginGroup::divertQueryOk.
+ */
+void CpDivertPluginGroup::divertQueryOk(PSCallDivertingCommand &command)
+{
+    DPRINT << ": IN";
+    setCallDiverting(command);
+    DPRINT << ": OUT";
+}
+
+/*!
+  CpDivertPluginGroup::divertQueryCancelled.
+ */
+void CpDivertPluginGroup::divertQueryCancelled(PSCallDivertingCommand &command)
+{
+    DPRINT << ": IN";
+    revertItemData(command.iServiceGroup, command.iCondition);
+    divertRequestProcessed();
+    DPRINT << ": OUT";
+}
+
 /*!
   CpDivertPluginGroup::addToDivertingRequestQueue.
  */
@@ -318,6 +349,7 @@
 
     if (m_divertRequestQueue.count() == 1) {
         // Process if first item was added, process other later
+		disableDivertItems();
         processDivertingRequestQueue();
     }
 
@@ -330,7 +362,6 @@
 void CpDivertPluginGroup::divertRequestProcessed()
 {
     DPRINT << ": IN";
-    
     // Remove previous request and process next one
     if (!m_divertRequestQueue.isEmpty()) {
         m_divertRequestQueue.dequeue();
@@ -340,6 +371,9 @@
     if (m_divertRequestQueue.isEmpty()) {
         // Queue empty so cancel process note
         PsUiNotes::instance()->cancelNote(m_activeProgressNoteId);
+        m_activeProgressNoteId = 0;
+        enableDivertItems();
+        updateDependentDivertOptions();
     }
     
     DPRINT << ": OUT";
@@ -400,7 +434,6 @@
                 }
             }
             itemData->setContentWidgetData("checkState", itemState);
-            itemData->setEnabled(true);
         }
         
         if (serviceGroup & ServiceGroupData) {
@@ -415,7 +448,6 @@
                 }
             }
             itemData->setContentWidgetData("checkState", itemState);
-            itemData->setEnabled(true);
         }
         
         break;
@@ -512,6 +544,72 @@
 }
 
 /*!
+  CpDivertPluginGroup::disableDivertItems.
+ */
+void CpDivertPluginGroup::disableDivertItems(){
+    DPRINT << ": IN";
+    
+    m_DataItemVoiceAllCalls->setEnabled(false);
+    m_DataItemVoiceIfBusy->setEnabled(false);
+    m_DataItemVoiceIfNotAnswered->setEnabled(false);
+    m_DataItemVoiceIfOutOfReach->setEnabled(false);
+    m_DataItemVoiceIfNotAvailable->setEnabled(false);
+    
+    m_DataItemVideoAllCalls->setEnabled(false);
+    m_DataItemVideoIfBusy->setEnabled(false);
+    m_DataItemVideoIfNotAnswered->setEnabled(false);
+    m_DataItemVideoIfOutOfReach->setEnabled(false);
+    m_DataItemVideoIfNotAvailable->setEnabled(false);
+    
+    DPRINT << ": OUT";
+}
+
+/*!
+  CpDivertPluginGroup::enableDivertItems.
+ */
+void CpDivertPluginGroup::enableDivertItems(){
+    DPRINT << ": IN";
+    
+    // all calls divert activation deactivates automatically other diverts
+    QVariant itemState = m_DataItemVoiceAllCalls->contentWidgetData("checkState");
+    if ((itemState.isValid()) && 
+        (itemState.toInt() == Qt::Checked) &&
+                (m_DataItemVoiceAllCalls->contentWidgetData("text") != "")) {
+        m_DataItemVoiceAllCalls->setEnabled(true);
+        deactivateDependentDivertOption(m_DataItemVoiceIfBusy);
+        deactivateDependentDivertOption(m_DataItemVoiceIfNotAnswered);
+        deactivateDependentDivertOption(m_DataItemVoiceIfOutOfReach);
+        deactivateDependentDivertOption(m_DataItemVoiceIfNotAvailable);
+    }else{
+        m_DataItemVoiceAllCalls->setEnabled(true);
+        m_DataItemVoiceIfBusy->setEnabled(true);
+        m_DataItemVoiceIfNotAnswered->setEnabled(true);
+        m_DataItemVoiceIfOutOfReach->setEnabled(true);
+        m_DataItemVoiceIfNotAvailable->setEnabled(true);
+    }
+    
+    // all calls divert activation deactivates automatically other diverts
+    itemState = m_DataItemVideoAllCalls->contentWidgetData("checkState");
+    if ((itemState.isValid()) && 
+            (itemState.toInt() == Qt::Checked) &&
+                    (m_DataItemVideoAllCalls->contentWidgetData("text") != "")) {
+        m_DataItemVideoAllCalls->setEnabled(true);
+        deactivateDependentDivertOption(m_DataItemVideoIfBusy);
+        deactivateDependentDivertOption(m_DataItemVideoIfNotAnswered);
+        deactivateDependentDivertOption(m_DataItemVideoIfOutOfReach);
+        deactivateDependentDivertOption(m_DataItemVideoIfNotAvailable);
+    }else{
+        m_DataItemVideoAllCalls->setEnabled(true);
+        m_DataItemVideoIfBusy->setEnabled(true);
+        m_DataItemVideoIfNotAnswered->setEnabled(true);
+        m_DataItemVideoIfOutOfReach->setEnabled(true);
+        m_DataItemVideoIfNotAvailable->setEnabled(true);
+    }
+    
+    DPRINT << ": OUT";
+}
+
+/*!
   CpDivertPluginGroup::processDivertingRequestQueue.
  */
 void CpDivertPluginGroup::processDivertingRequestQueue()
@@ -523,38 +621,38 @@
     }
     CpDivertRequestQueueItem request = m_divertRequestQueue.head();
     // Command param
-    m_divertCommand.iServiceGroup = qvariant_cast<PsServiceGroup>(
+    PSCallDivertingCommand command;
+    command.iServiceGroup = qvariant_cast<PsServiceGroup>(
             request.item->property("serviceGroup"));
-    m_divertCommand.iCondition = qvariant_cast<PsCallDivertingCondition>(
+    command.iCondition = qvariant_cast<PsCallDivertingCondition>(
             request.item->property("condition"));
-    m_divertCommand.iStatus = DivertingStatusUnknown;
-    m_divertCommand.iNumber = "";
-    m_divertCommand.iNoReplyTimer = 0;
+    command.iStatus = DivertingStatusUnknown;
+    command.iNumber = "";
+    command.iNoReplyTimer = 0;
 
     switch (request.request) {
         case ActivateDivert: {
             DPRINT << "activate";
-            m_divertCommand.iSetting = RegisterDiverting;
-            m_activateDivertPhase = PopUpVoiceNumberListQueryPhase;
-            popUpVoiceNumberListQuery(
-                request.item->property("queryLabel").toString(),
-                        m_divertCommand.iServiceGroup);
+            command.iSetting = RegisterDiverting;
+            m_activateDivertPopUp->show(
+                    request.item->property("queryLabel").toString(),
+                    command,
+                    request.item->property("needTimeoutInfo").toBool());
         }
             break;
         case DeactivateDivert: {
             DPRINT << "deactivate";
-            m_divertCommand.iSetting = EraseDiverting;
-            setCallDiverting(m_divertCommand);
+            command.iSetting = EraseDiverting;
+            setCallDiverting(command);
         }
             break;
         case CheckDivertStatus: {
             DPRINT << "check status";
             m_callDivertingWrapper->getCallDivertingStatus(
-                m_divertCommand.iServiceGroup,
-                m_divertCommand.iCondition,
-                bscParam(m_divertCommand.iServiceGroup) );
-            
-            if (!PsUiNotes::instance()->noteShowing()) {
+                command.iServiceGroup,
+                command.iCondition,
+                bscParam(command.iServiceGroup) );
+            if (!m_activeProgressNoteId && !PsUiNotes::instance()->noteShowing()) {
                 PsUiNotes::instance()->showGlobalProgressNote(
                         m_activeProgressNoteId, 
                         hbTrId("txt_common_info_requesting"));
@@ -690,7 +788,7 @@
 void CpDivertPluginGroup::handleDivertingError(int aReason)
 {
     DPRINT << ": IN : aReason:" << aReason;
-    
+
     // Update view item for failed request
     if (m_divertRequestQueue.count()) {
         revertItemData(
@@ -709,228 +807,11 @@
     // Show error note
     PsUiNotes::instance()->showGlobalErrorNote(m_activeNoteId, aReason);
     
-    DPRINT << ": OUT";
-}
-
-/*!
-  CpDivertPluginGroup::popUpVoiceNumberListQuery.
- */
-void CpDivertPluginGroup::popUpVoiceNumberListQuery(
-        const QString& heading, PsServiceGroup serviceGroup)
-{
-    DPRINT << ": IN";
-    if (m_dialog) {
-        m_dialog->deleteLater();
-        m_dialog = NULL;
-    }
-
-    m_divertCommand.iNumber.clear();
-    QStringList defNumbers;
-    QScopedPointer<HbDialog> dialog(createDialog(heading));
-    HbListWidget *list = new HbListWidget(dialog.data());
-    
-    QString vmbxNumber;
-    int vmbxErr = 0;
-    if (serviceGroup == ServiceGroupVoice) {
-        vmbxErr = m_callDivertingWrapper->getVoiceMailBoxNumber(
-                vmbxNumber, ServiceGroupVoice);
-        
-    } else if(serviceGroup == ServiceGroupData) {
-        vmbxErr = m_callDivertingWrapper->getVoiceMailBoxNumber(
-                vmbxNumber, ServiceGroupData);
-        
-    } else {
-        vmbxErr = -1;
-        // Skip
-    }
-    
-    if (!vmbxErr) {
-        if (serviceGroup == ServiceGroupVoice) {
-            addItemToListWidget(
-                list, 
-                hbTrId("txt_phone_setlabel_voice_mbx"), 
-                vmbxNumber );
-                
-        } else {
-            addItemToListWidget(
-                list, 
-                hbTrId("txt_phone_setlabel_video_mbx"), 
-                vmbxNumber );
-        }
-    }
-
-    // Add "old" divert number to list
-    m_callDivertingWrapper->getDefaultNumbers(defNumbers);
-    int count(defNumbers.count());
-    for (int i = 0; i < count; i++) {
-        addItemToListWidget(list, defNumbers[i], defNumbers[i]);
-    }
-    addItemToListWidget(
-            list, 
-            hbTrId("txt_phone_list_enter_number_manually"), 
-            KOtherNumber );
-    dialog->setContentWidget(list);
-    
-    // Connect list item activation signal to close the popup
-    QObject::connect(list, 
-            SIGNAL(activated(HbListWidgetItem*)), 
-            dialog.data(), 
-            SLOT(close()), 
-            Qt::UniqueConnection);
-    
-    // Sets the "Cancel"-action/button
-    HbAction *cancelAction = new HbAction(hbTrId(
-            "txt_common_button_cancel"), 
-            dialog.data());
-    dialog->addAction(cancelAction);
-    QObject::connect(cancelAction, 
-            SIGNAL(triggered(bool)), 
-            dialog.data(), 
-            SLOT(close()));
-    
-    dialog->open(this, SLOT(voiceNumberListQueryClosed(HbAction *)));
-    m_dialog = dialog.take();
-    DPRINT << ": OUT";
-}
-
-/*!
-    CpDivertPluginGroup::voiceNumberListQueryClosed()
-*/
-void CpDivertPluginGroup::voiceNumberListQueryClosed(HbAction* action)
-{
-    DPRINT << ": IN";
-    HbListWidget *list(NULL);
-    m_divertCommand.iNumber.clear();
-    bool processNextPhase(true);
-    
-    if (m_dialog) {
-        bool err = QObject::disconnect(m_dialog->contentWidget(), 
-            SIGNAL(activated(HbListWidgetItem*)), 
-            m_dialog, 
-            SLOT(close()));
-        list = qobject_cast<HbListWidget*>(m_dialog->contentWidget());
-        m_dialog->deleteLater();
-        m_dialog = NULL;
-    }
-    
-    // Enter if cancel wasn't selected 
-    if (!action && list) {
-        // Update the view with selected text
-        QString data = list->currentItem()->data().toString();
-        QString text = list->currentItem()->text();
-
-        DPRINT << ": data: " << data; 
-        DPRINT << ": text: " << text; 
-
-        if (data == KOtherNumber) {
-            DPRINT << ": open popUpNumberEditor";
-            processNextPhase = false;
-            popUpNumberEditor(hbTrId("txt_phone_info_number"));
-        } else if (text == hbTrId("txt_phone_setlabel_voice_mbx")) {
-            DPRINT << ": get voicemailboxnumber";
-            m_callDivertingWrapper->getVoiceMailBoxNumber(
-                m_divertCommand.iNumber, ServiceGroupVoice);
-            if (m_divertCommand.iNumber.isEmpty()) {
-                DPRINT << ": voicemailboxnumber query";
-                m_callDivertingWrapper->queryVoiceMailBoxNumber(
-                    m_divertCommand.iNumber, ServiceGroupVoice);
-            }
-        } else if (text == hbTrId("txt_phone_setlabel_video_mbx")) {
-            DPRINT << ": get videomailboxnumber";
-            m_callDivertingWrapper->getVoiceMailBoxNumber(
-                m_divertCommand.iNumber, ServiceGroupData);
-            if (m_divertCommand.iNumber.isEmpty()) {
-                DPRINT << ": videomailboxnumber query";
-                m_callDivertingWrapper->queryVoiceMailBoxNumber(
-                    m_divertCommand.iNumber, ServiceGroupData);
-            }
-        }  else {
-            //TODO if matched contact name not work
-            DPRINT << ": else";
-            m_divertCommand.iNumber = data;
-        }        
-    }
-    DPRINT << ": processNextPhase: " << processNextPhase; 
-    DPRINT << ": m_divertCommand.iNumber: " << m_divertCommand.iNumber; 
-    if (processNextPhase) {
-        if (m_divertCommand.iNumber.isEmpty()) {
-            nextPhaseForActivateDivert(false);
-        } else {
-            nextPhaseForActivateDivert(true);
-        }
-    }
+    divertRequestProcessed();
     
     DPRINT << ": OUT";
 }
 
-/*!
-  CpDivertPluginGroup::popUpNumberEditor.
- */
-void CpDivertPluginGroup::popUpNumberEditor(
-        const QString& heading)
-{
-    DPRINT << ": IN";
-
-    if (m_dialog) {
-        m_dialog->deleteLater();
-        m_dialog = NULL;
-    }
-    QScopedPointer<HbDialog> dialog(createDialog(heading));
-
-    HbLineEdit *editor = new HbLineEdit(dialog.data());
-    editor->setInputMethodHints(Qt::ImhDialableCharactersOnly);    
-    //Ownership is transferred
-    dialog->setContentWidget(editor);
-    
-    HbAction *okAction = new HbAction(
-            hbTrId("txt_common_button_ok"), 
-            dialog.data());
-    dialog->addAction(okAction);
-    
-    HbAction *cancelAction = new HbAction(
-            hbTrId("txt_common_button_cancel"), 
-            dialog.data());
-    dialog->addAction(cancelAction);
-    dialog->open(this, SLOT(popUpNumberEditorClosed(HbAction*)));
-    m_dialog = dialog.take();
-    DPRINT << ": OUT";
-}
-
-/*!
-  CpDivertPluginGroup::popUpNumberEditorClosed.
- */
-void CpDivertPluginGroup::popUpNumberEditorClosed(HbAction* action)
-{
-    DPRINT << ": IN";
-    bool cancelled(true); 
-    if (action) {
-        if (action->text() == hbTrId("txt_common_button_ok")) {
-            cancelled = false;  
-            DPRINT << ": ok selected";
-        }
-    }
-    
-    if (!cancelled) {
-        HbLineEdit *editor = qobject_cast<HbLineEdit *>(m_dialog->contentWidget());
-        if (editor) {
-            m_divertCommand.iNumber = editor->text();
-        }
-        
-        DPRINT << ": m_divertCommand.iNumber "
-            << m_divertCommand.iNumber;
-        if (m_divertCommand.iNumber.isEmpty()) {
-            PsUiNotes::instance()->showNotificationDialog(hbTrId("txt_phone_info_invalid_phone_number"));
-        }
-    }
-    if (m_dialog) {
-        m_dialog->deleteLater();
-        m_dialog = NULL;
-    }
-    
-    nextPhaseForActivateDivert(!cancelled);
-    
-    DPRINT << ": OUT";
-}
 
 /*!
   CpDivertPluginGroup::setCallDiverting.
@@ -960,83 +841,6 @@
 }
 
 /*!
-  CpDivertPluginGroup::popUpTimerQuery.
- */
-void CpDivertPluginGroup::popUpTimerQuery() 
-{
-    DPRINT << ": IN";
-    
-    m_divertCommand.iNoReplyTimer = 0; 
-    
-    QScopedPointer<HbDialog> dialog(createDialog(hbTrId("txt_phone_title_delay")));
-    HbListWidget *list = new HbListWidget(dialog.data());
-    
-    HbParameterLengthLimiter pluralLimiter;
-    pluralLimiter = HbParameterLengthLimiter("txt_phone_list_ln_seconds", 5);
-    addItemToListWidget(list, pluralLimiter, 5 );
-    pluralLimiter = HbParameterLengthLimiter("txt_phone_list_ln_seconds", 10);
-    addItemToListWidget(list, pluralLimiter, 10);
-    pluralLimiter = HbParameterLengthLimiter("txt_phone_list_ln_seconds", 15);
-    addItemToListWidget(list, pluralLimiter, 15);
-    pluralLimiter = HbParameterLengthLimiter("txt_phone_list_ln_seconds", 20);
-    addItemToListWidget(list, pluralLimiter, 20);
-    pluralLimiter = HbParameterLengthLimiter("txt_phone_list_ln_seconds", 25);
-    addItemToListWidget(list, pluralLimiter, 25);
-    pluralLimiter = HbParameterLengthLimiter("txt_phone_list_ln_seconds", 30);
-    addItemToListWidget(list, pluralLimiter, 30);
-    
-    // Connect list item activation signal to close the popup
-    QObject::connect(
-            list, SIGNAL(activated(HbListWidgetItem*)), 
-            dialog.data(), SLOT(close()), 
-            Qt::UniqueConnection);
-    
-    // Sets the "Cancel"-action/button
-    HbAction *cancelAction = new HbAction(hbTrId("txt_common_button_cancel"));
-    dialog->addAction(cancelAction);
-    dialog->setContentWidget(list);
-
-    dialog->open(this, SLOT(popUpTimerQueryClosed(HbAction *)));
-    if (m_dialog) {
-        m_dialog->deleteLater();
-        m_dialog = NULL;
-    }
-    m_dialog = dialog.take();
-    
-    DPRINT << ": OUT";
-}
-
-/*!
-  CpDivertPluginGroup::popUpTimerQueryClosed.
- */
-void CpDivertPluginGroup::popUpTimerQueryClosed(HbAction* action)
-{
-    DPRINT << ": IN";
-    
-    // If not cancel action selected 
-    bool cancelled(true);
-    if (!action) {
-        cancelled = false;
-        // Update the view with selected text
-        HbListWidget *list = qobject_cast<HbListWidget*>(m_dialog->contentWidget());
-        if (list && list->currentItem()) {
-            m_divertCommand.iNoReplyTimer = 
-                    list->currentItem()->data().toInt();
-        }
-    }
-    
-    if (m_dialog) {
-        m_dialog->deleteLater();
-        m_dialog = NULL;
-    }
-    
-    nextPhaseForActivateDivert(!cancelled);
-
-    DPRINT << ": OUT: timeout: " << m_divertCommand.iNoReplyTimer;
-}
-
-
-/*!
   CpDivertPluginGroup::bscParam.
  */
 int CpDivertPluginGroup::bscParam(PsServiceGroup serviceGroup)
@@ -1071,54 +875,6 @@
 }
 
 /*!
-  CpDivertPluginGroup::createDialog.
- */
-HbDialog* CpDivertPluginGroup::createDialog( const QString& heading ) const
-{
-    DPRINT << ": IN";
- 
-    HbDialog *dialog = new HbDialog();
-    dialog->setDismissPolicy(HbDialog::NoDismiss);
-    dialog->setTimeout(HbDialog::NoTimeout);
-    dialog->setHeadingWidget(new HbLabel(heading));
-    
-    DPRINT << ": OUT";
-    return dialog;
-}
-
-/*!
-  CpDivertPluginGroup::addItemToListWidget.
- */
-void CpDivertPluginGroup::addItemToListWidget(HbListWidget* w,
-        const QString& item, const QString& data) const
-{
-    DPRINT << ": IN";
- 
-    HbListWidgetItem* o = new HbListWidgetItem();
-    o->setText(item);
-    o->setData(data);
-    w->addItem(o);
-    
-    DPRINT << ": OUT";
-}
-
-/*!
-  CpDivertPluginGroup::addItemToListWidget.
- */
-void CpDivertPluginGroup::addItemToListWidget(HbListWidget* w,
-        const QString& item, const int& data) const
-{
-    DPRINT << ": IN";
- 
-    HbListWidgetItem* o = new HbListWidgetItem();
-    o->setText(item);
-    o->setData(data);
-    w->addItem(o);
-    
-    DPRINT << ": OUT";
-}
-
-/*!
   CpDivertPluginGroup::updateDependentDivertOptions.
   Updates statuses of diverts which are dependent from the status of some
   other divert. Logic for dependent changes are:
@@ -1136,7 +892,8 @@
     // all calls divert activation deactivates automatically other diverts
     QVariant itemState = m_DataItemVoiceAllCalls->contentWidgetData("checkState");
     if ((itemState.isValid()) && 
-        (itemState.toInt() == Qt::Checked)) {
+        (itemState.toInt() == Qt::Checked) &&
+        (m_DataItemVoiceAllCalls->contentWidgetData("text") != "")) {
         deactivateDependentDivertOption(m_DataItemVoiceIfBusy);
         deactivateDependentDivertOption(m_DataItemVoiceIfNotAnswered);
         deactivateDependentDivertOption(m_DataItemVoiceIfOutOfReach);
@@ -1152,7 +909,8 @@
     // all calls divert activation deactivates automatically other diverts
     itemState = m_DataItemVideoAllCalls->contentWidgetData("checkState");
     if ((itemState.isValid()) && 
-        (itemState.toInt() == Qt::Checked)) {
+        (itemState.toInt() == Qt::Checked) &&
+        (m_DataItemVideoAllCalls->contentWidgetData("text") != "")) {
         deactivateDependentDivertOption(m_DataItemVideoIfBusy);
         deactivateDependentDivertOption(m_DataItemVideoIfNotAnswered);
         deactivateDependentDivertOption(m_DataItemVideoIfOutOfReach);
@@ -1205,7 +963,6 @@
             fetchFromNetwork) {
         addToDivertingRequestQueue(CheckDivertStatus, *item);
     }
-    item->setEnabled(true);
     
     DPRINT << ": OUT";
 }
@@ -1289,43 +1046,6 @@
     DPRINT << ": OUT";
 }
 
-void CpDivertPluginGroup::nextPhaseForActivateDivert(bool ok)
-{
-    DPRINT << ": IN";
-    
-    if (ok) {
-        switch (m_activateDivertPhase) {
-            case PopUpVoiceNumberListQueryPhase: {
-                CpDivertRequestQueueItem request = m_divertRequestQueue.head();
-                if (request.item->property("needTimeoutInfo").toBool()) {
-                    m_activateDivertPhase = PopUpTimerQueryPhase;
-                    popUpTimerQuery();
-                } else {
-                    m_activateDivertPhase = NonePhase;
-                    setCallDiverting(m_divertCommand);
-                    }
-            }
-                break;
-            case PopUpTimerQueryPhase: {
-                m_activateDivertPhase = NonePhase;
-                setCallDiverting(m_divertCommand);
-            }
-                break;
-            default:
-                DPRINT << "Error: unknown enum value";
-                break;
-        }
-    } else {
-        // Query was cancelled
-        revertItemData(
-            m_divertCommand.iServiceGroup, 
-            m_divertCommand.iCondition);
-        m_divertRequestQueue.clear();
-        m_activateDivertPhase = NonePhase;
-    }
-    
-    DPRINT << ": OUT";
-}
 
 /*!
   CpDivertPluginGroup::itemShown.
--- a/phonesettings/cpphonesettingsplugins/divertplugin/src/cpdivertplugingroup.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/divertplugin/src/cpdivertplugingroup.h	Fri Sep 17 08:29:19 2010 +0300
@@ -20,7 +20,6 @@
 #include <QMap>
 #include <QString>
 #include <QQueue>
-#include <hbdevicemessagebox.h>
 #include <cpsettingformitemdata.h>
 #include <psetcalldivertingwrapper.h>
 #include "cptelephonyutilsdefs.h"
@@ -37,6 +36,8 @@
 class QEventLoop; 
 class HbLineEdit; 
 class HbDataFormModelItem;
+class CpDivertQuery;
+class QModelIndex;
 
 using namespace CpTelephonyUtils;
 
@@ -60,14 +61,7 @@
         DivertRequest request;
         CpDivertItemData *item;
     };
-    
-    // Activate divert phases
-    enum ActivateDivertPhases
-    {
-        NonePhase,
-        PopUpVoiceNumberListQueryPhase,
-        PopUpTimerQueryPhase
-    };
+
     
 public:
 
@@ -112,10 +106,11 @@
      */
     void itemShown(const QModelIndex& item);
     
-    void voiceNumberListQueryClosed(HbAction* action);
-    void popUpNumberEditorClosed(HbAction* action);
-    void popUpTimerQueryClosed(HbAction* action);
-    
+    /**
+     Slot which handles activate divert query result
+     */
+    void divertQueryOk(PSCallDivertingCommand &command);
+    void divertQueryCancelled(PSCallDivertingCommand &command);
 private:     
     
     /**
@@ -140,29 +135,11 @@
             CpSettingFormItemData *parent = 0);
     
     /**
-     Show to user divert number query list.
-     */
-    void popUpVoiceNumberListQuery(
-            const QString& heading, PsServiceGroup serviceGroup);
-    
-    /**
-     Show to user number query.
-     */
-    void popUpNumberEditor(
-            const QString& heading);
-    
-    
-    /**
      Send comand to psetwrappercalldiverting.
      */
     void setCallDiverting(PSCallDivertingCommand& command);
     
     /**
-     Show to user divert time out query list.
-     */
-    void popUpTimerQuery();
-    
-    /**
      Desides which bsc parameters to use.
      */
     int bscParam(PsServiceGroup serviceGroup);
@@ -206,24 +183,18 @@
      */
     CpSettingFormItemData* item(
             PsService service, PsCallDivertingCondition condition);
-private:
     
     /**
-     Creates dialog with default parameters
-     */
-    HbDialog* createDialog( const QString& heading ) const;
-
-    /**
-     Adds item to given list widget
+     Helper function which dims divert items when divert request is ongoing.
      */
-    void addItemToListWidget(HbListWidget* w,
-        const QString& item, const QString& data) const;
-
+    void disableDivertItems();
+    
     /**
-     Adds item to given list widget
+     Helper function which enables divert items when divert request is complete.
      */
-    void addItemToListWidget(HbListWidget* w,
-        const QString& item, const int& data) const;
+    void enableDivertItems();
+    
+private:
 
     /**
      Synchronizes content and status of divert options dependent from the 
@@ -238,8 +209,7 @@
      statuses of CFB, CFNry and CFNrc.
      */
     void updateNotAvailableDivertOption();
-    
-    void nextPhaseForActivateDivert(bool ok);
+
     
     bool isDivertSettingsItem(HbDataFormModelItem* modelItem);
      
@@ -274,12 +244,10 @@
     QQueue<CpDivertRequestQueueItem> m_divertRequestQueue;
 
     CpItemDataHelper &m_helper;
-    
-    ActivateDivertPhases m_activateDivertPhase;
-    PSCallDivertingCommand m_divertCommand;
+
     int m_timerId;
-    HbDialog *m_dialog;
 
+    CpDivertQuery *m_activateDivertPopUp;
 };
 
 #endif // CPDIVERTPLUGINGROUP_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phonesettings/cpphonesettingsplugins/divertplugin/src/cpdivertquery.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -0,0 +1,441 @@
+/*
+ * cpdivertquery.cpp
+ *
+ *  Created on: Aug 10, 2010
+ *      Author: jahelaak
+ */
+
+#include "cpdivertquery.h"
+#include "cpplugincommon.h"
+#include "cppluginlogging.h"
+#include <psuinotes.h>
+#include <hblineedit.h>
+#include <hbinputeditorinterface.h>
+#include <hbcombobox.h>
+#include <hbdeviceprogressdialog.h>
+#include <hbaction.h>
+#include <hblistwidget.h>
+#include <hblistwidgetitem.h>
+#include <hblabel.h>
+#include <hbdevicemessagebox.h>
+#include <hbparameterlengthlimiter.h>
+
+
+// CONSTANTS 
+const QString KOtherNumber("otherNumber");
+
+CpDivertQuery::CpDivertQuery(PSetCallDivertingWrapper &callDivertingWrapper) :
+    m_callDivertingWrapper(callDivertingWrapper),
+    m_activateDivertPhase(NonePhase),
+    m_needTimeOutInfo(false),
+    m_dialog(0)
+{
+
+}
+
+CpDivertQuery::~CpDivertQuery()
+{
+    delete m_dialog;
+}
+
+
+void CpDivertQuery::show(
+        const QString &heading,
+        PSCallDivertingCommand command,
+        bool needTimeOutInfo)
+{
+    m_divertCommand = command;
+    m_needTimeOutInfo = needTimeOutInfo;
+    m_activateDivertPhase = PopUpVoiceNumberListQueryPhase;
+    popUpVoiceNumberListQuery(heading, m_divertCommand.iServiceGroup);
+}
+
+/*!
+  CpDivertQuery::popUpVoiceNumberListQuery.
+ */
+void CpDivertQuery::popUpVoiceNumberListQuery(
+        const QString& heading, PsServiceGroup serviceGroup)
+{
+    DPRINT << ": IN";
+    if (m_dialog) {
+        m_dialog->deleteLater();
+        m_dialog = NULL;
+    }
+
+    m_divertCommand.iNumber.clear();
+    QStringList defNumbers;
+    QScopedPointer<HbDialog> dialog(createDialog(heading));
+    HbListWidget *list = new HbListWidget(dialog.data());
+    
+    QString vmbxNumber;
+    int vmbxErr = 0;
+    if (serviceGroup == ServiceGroupVoice) {
+        vmbxErr = m_callDivertingWrapper.getVoiceMailBoxNumber(
+                vmbxNumber, ServiceGroupVoice);
+        
+    } else if(serviceGroup == ServiceGroupData) {
+        vmbxErr = m_callDivertingWrapper.getVoiceMailBoxNumber(
+                vmbxNumber, ServiceGroupData);
+        
+    } else {
+        vmbxErr = -1;
+        // Skip
+    }
+    
+    if (!vmbxErr) {
+        if (serviceGroup == ServiceGroupVoice) {
+            addItemToListWidget(
+                list, 
+                hbTrId("txt_phone_list_to_voice_mailbox"),
+                vmbxNumber );
+                
+        } else {
+            addItemToListWidget(
+                list, 
+                hbTrId("txt_phone_setlabel_video_mbx"), 
+                vmbxNumber );
+        }
+    }
+
+    // Add "old" divert number to list
+    m_callDivertingWrapper.getDefaultNumbers(defNumbers);
+    int count(defNumbers.count());
+    for (int i = 0; i < count; i++) {
+        addItemToListWidget(list, defNumbers[i], defNumbers[i]);
+    }
+    addItemToListWidget(
+            list, 
+            hbTrId("txt_phone_list_enter_number_manually"), 
+            KOtherNumber );
+    dialog->setContentWidget(list);
+    
+    // Connect list item activation signal to close the popup
+    QObject::connect(list, 
+            SIGNAL(activated(HbListWidgetItem*)), 
+            dialog.data(), 
+            SLOT(close()), 
+            Qt::UniqueConnection);
+    
+    // Sets the "Cancel"-action/button
+    HbAction *cancelAction = new HbAction(hbTrId(
+            "txt_common_button_cancel"), 
+            dialog.data());
+    dialog->addAction(cancelAction);
+    QObject::connect(cancelAction, 
+            SIGNAL(triggered(bool)), 
+            dialog.data(), 
+            SLOT(close()));
+    
+    dialog->open(this, SLOT(voiceNumberListQueryClosed(HbAction *)));
+    m_dialog = dialog.take();
+    DPRINT << ": OUT";
+}
+
+
+/*!
+    CpDivertQuery::voiceNumberListQueryClosed()
+*/
+void CpDivertQuery::voiceNumberListQueryClosed(HbAction* action)
+{
+    DPRINT << ": IN";
+    HbListWidget *list(NULL);
+    m_divertCommand.iNumber.clear();
+    bool processNextPhase(true);
+    int queryResult(0); 
+    
+    if (m_dialog) {
+        bool err = QObject::disconnect(m_dialog->contentWidget(), 
+            SIGNAL(activated(HbListWidgetItem*)), 
+            m_dialog, 
+            SLOT(close()));
+        list = qobject_cast<HbListWidget*>(m_dialog->contentWidget());
+        m_dialog->deleteLater();
+        m_dialog = NULL;
+    }
+    
+    // Enter if cancel wasn't selected 
+    if (!action && list) {
+        // Update the view with selected text
+        QString data = list->currentItem()->data().toString();
+        QString text = list->currentItem()->text();
+
+        DPRINT << ": data: " << data; 
+        DPRINT << ": text: " << text; 
+
+        if (data == KOtherNumber) {
+            DPRINT << ": open popUpNumberEditor";
+            processNextPhase = false;
+            popUpNumberEditor(hbTrId("txt_phone_info_number"));
+        } else if (text == hbTrId("txt_phone_list_to_voice_mailbox")) {
+            DPRINT << ": get voicemailboxnumber";
+            m_callDivertingWrapper.getVoiceMailBoxNumber(
+                m_divertCommand.iNumber, ServiceGroupVoice);
+            if (m_divertCommand.iNumber.isEmpty()) {
+                DPRINT << ": voicemailboxnumber query";
+                queryResult = m_callDivertingWrapper.queryVoiceMailBoxNumber(
+                                    m_divertCommand.iNumber, ServiceGroupVoice);
+            }
+        } else if (text == hbTrId("txt_phone_setlabel_video_mbx")) {
+            DPRINT << ": get videomailboxnumber";
+            m_callDivertingWrapper.getVoiceMailBoxNumber(
+                m_divertCommand.iNumber, ServiceGroupData);
+            if (m_divertCommand.iNumber.isEmpty()) {
+                DPRINT << ": videomailboxnumber query";
+                queryResult = m_callDivertingWrapper.queryVoiceMailBoxNumber(
+                                    m_divertCommand.iNumber, ServiceGroupData);
+            }
+        }  else {
+            //TODO if matched contact name not work
+            DPRINT << ": else";
+            m_divertCommand.iNumber = data;
+        }        
+    }
+    if(KErrNone != queryResult){
+        emit handleDivertingError(queryResult);
+        processNextPhase = false;
+        m_activateDivertPhase = NonePhase;
+    }
+    DPRINT << ": processNextPhase: " << processNextPhase; 
+    DPRINT << ": m_divertCommand.iNumber: " << m_divertCommand.iNumber; 
+    if (processNextPhase) {
+        if (m_divertCommand.iNumber.isEmpty()) {
+            nextPhaseForActivateDivert(false);
+        } else {
+            nextPhaseForActivateDivert(true);
+        }
+    }
+    
+    DPRINT << ": OUT";
+}
+
+
+/*!
+  CpDivertQuery::popUpNumberEditor.
+ */
+void CpDivertQuery::popUpNumberEditor(
+        const QString& heading)
+{
+    DPRINT << ": IN";
+
+    if (m_dialog) {
+        m_dialog->deleteLater();
+        m_dialog = NULL;
+    }
+    QScopedPointer<HbDialog> dialog(createDialog(heading));
+
+    HbLineEdit *editor = new HbLineEdit(dialog.data());
+    editor->setInputMethodHints(Qt::ImhDialableCharactersOnly);    
+    //Ownership is transferred
+    dialog->setContentWidget(editor);
+    
+    HbAction *okAction = new HbAction(
+            hbTrId("txt_common_button_ok"), 
+            dialog.data());
+    dialog->addAction(okAction);
+    
+    HbAction *cancelAction = new HbAction(
+            hbTrId("txt_common_button_cancel"), 
+            dialog.data());
+    dialog->addAction(cancelAction);
+    dialog->open(this, SLOT(popUpNumberEditorClosed(HbAction*)));
+    m_dialog = dialog.take();
+    DPRINT << ": OUT";
+}
+
+/*!
+  CpDivertQuery::popUpNumberEditorClosed.
+ */
+void CpDivertQuery::popUpNumberEditorClosed(HbAction* action)
+{
+    DPRINT << ": IN";
+    bool cancelled(true); 
+    if (action) {
+        if (action->text() == hbTrId("txt_common_button_ok")) {
+            cancelled = false;  
+            DPRINT << ": ok selected";
+        }
+    }
+    
+    if (!cancelled) {
+        HbLineEdit *editor = qobject_cast<HbLineEdit *>(m_dialog->contentWidget());
+        if (editor) {
+            m_divertCommand.iNumber = editor->text();
+        }
+        
+        DPRINT << ": m_divertCommand.iNumber "
+            << m_divertCommand.iNumber;
+        if (m_divertCommand.iNumber.isEmpty()) {
+            PsUiNotes::instance()->showNotificationDialog(
+                    hbTrId("txt_phone_info_invalid_phone_number"));
+        }
+    }
+    if (m_dialog) {
+        m_dialog->deleteLater();
+        m_dialog = NULL;
+    }
+    
+    nextPhaseForActivateDivert(!cancelled);
+    
+    DPRINT << ": OUT";
+}
+
+
+/*!
+  CpDivertQuery::popUpTimerQuery.
+ */
+void CpDivertQuery::popUpTimerQuery() 
+{
+    DPRINT << ": IN";
+    
+    m_divertCommand.iNoReplyTimer = 0; 
+    
+    QScopedPointer<HbDialog> dialog(createDialog(hbTrId("txt_phone_title_delay")));
+    HbListWidget *list = new HbListWidget(dialog.data());
+    
+    HbParameterLengthLimiter pluralLimiter;
+    pluralLimiter = HbParameterLengthLimiter("txt_phone_list_ln_seconds", 5);
+    addItemToListWidget(list, pluralLimiter, 5 );
+    pluralLimiter = HbParameterLengthLimiter("txt_phone_list_ln_seconds", 10);
+    addItemToListWidget(list, pluralLimiter, 10);
+    pluralLimiter = HbParameterLengthLimiter("txt_phone_list_ln_seconds", 15);
+    addItemToListWidget(list, pluralLimiter, 15);
+    pluralLimiter = HbParameterLengthLimiter("txt_phone_list_ln_seconds", 20);
+    addItemToListWidget(list, pluralLimiter, 20);
+    pluralLimiter = HbParameterLengthLimiter("txt_phone_list_ln_seconds", 25);
+    addItemToListWidget(list, pluralLimiter, 25);
+    pluralLimiter = HbParameterLengthLimiter("txt_phone_list_ln_seconds", 30);
+    addItemToListWidget(list, pluralLimiter, 30);
+    
+    // Connect list item activation signal to close the popup
+    QObject::connect(
+            list, SIGNAL(activated(HbListWidgetItem*)), 
+            dialog.data(), SLOT(close()), 
+            Qt::UniqueConnection);
+    
+    // Sets the "Cancel"-action/button
+    HbAction *cancelAction = new HbAction(hbTrId("txt_common_button_cancel"));
+    dialog->addAction(cancelAction);
+    dialog->setContentWidget(list);
+
+    dialog->open(this, SLOT(popUpTimerQueryClosed(HbAction *)));
+    if (m_dialog) {
+        m_dialog->deleteLater();
+        m_dialog = NULL;
+    }
+    m_dialog = dialog.take();
+    
+    DPRINT << ": OUT";
+}
+
+/*!
+  CpDivertQuery::popUpTimerQueryClosed.
+ */
+void CpDivertQuery::popUpTimerQueryClosed(HbAction* action)
+{
+    DPRINT << ": IN";
+    
+    // If not cancel action selected 
+    bool cancelled(true);
+    if (!action) {
+        cancelled = false;
+        // Update the view with selected text
+        HbListWidget *list = qobject_cast<HbListWidget*>(m_dialog->contentWidget());
+        if (list && list->currentItem()) {
+            m_divertCommand.iNoReplyTimer = 
+                    list->currentItem()->data().toInt();
+        }
+    }
+    
+    if (m_dialog) {
+        m_dialog->deleteLater();
+        m_dialog = NULL;
+    }
+    
+    nextPhaseForActivateDivert(!cancelled);
+
+    DPRINT << ": OUT: timeout: " << m_divertCommand.iNoReplyTimer;
+}
+
+
+void CpDivertQuery::nextPhaseForActivateDivert(bool ok)
+{
+    DPRINT << ": IN";
+    
+    if (ok) {
+        switch (m_activateDivertPhase) {
+            case PopUpVoiceNumberListQueryPhase: {
+                if (m_needTimeOutInfo) {
+                    m_activateDivertPhase = PopUpTimerQueryPhase;
+                    popUpTimerQuery();
+                } else {
+                    m_activateDivertPhase = NonePhase;
+                    emit result(m_divertCommand);
+                    }
+            }
+                break;
+            case PopUpTimerQueryPhase: {
+                m_activateDivertPhase = NonePhase;
+                emit result(m_divertCommand);
+            }
+                break;
+            default:
+                DPRINT << "Error: unknown enum value";
+                break;
+        }
+    } else {
+        // Query was cancelled
+        m_activateDivertPhase = NonePhase;
+        emit cancelled(m_divertCommand);
+    }
+    
+    DPRINT << ": OUT";
+}
+
+/*!
+  CpDivertQuery::createDialog.
+ */
+HbDialog* CpDivertQuery::createDialog( const QString& heading ) const
+{
+    DPRINT << ": IN";
+ 
+    HbDialog *dialog = new HbDialog();
+    dialog->setDismissPolicy(HbDialog::NoDismiss);
+    dialog->setTimeout(HbDialog::NoTimeout);
+    dialog->setHeadingWidget(new HbLabel(heading));
+    
+    DPRINT << ": OUT";
+    return dialog;
+}
+
+/*!
+  CpDivertQuery::addItemToListWidget.
+ */
+void CpDivertQuery::addItemToListWidget(HbListWidget* w,
+        const QString& item, const QString& data) const
+{
+    DPRINT << ": IN";
+ 
+    HbListWidgetItem* o = new HbListWidgetItem();
+    o->setText(item);
+    o->setData(data);
+    w->addItem(o);
+    
+    DPRINT << ": OUT";
+}
+
+/*!
+  CpDivertQuery::addItemToListWidget.
+ */
+void CpDivertQuery::addItemToListWidget(HbListWidget* w,
+        const QString& item, const int& data) const
+{
+    DPRINT << ": IN";
+ 
+    HbListWidgetItem* o = new HbListWidgetItem();
+    o->setText(item);
+    o->setData(data);
+    w->addItem(o);
+    
+    DPRINT << ": OUT";
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phonesettings/cpphonesettingsplugins/divertplugin/src/cpdivertquery.h	Fri Sep 17 08:29:19 2010 +0300
@@ -0,0 +1,98 @@
+/*
+ * cpdivertquery.h
+ *
+ *  Created on: Aug 10, 2010
+ *      Author: jahelaak
+ */
+
+#ifndef CPDIVERTQUERY_H_
+#define CPDIVERTQUERY_H_
+
+#include <qobject.h>
+#include <psetcalldivertingwrapper.h>
+
+class HbAction;
+class QString;
+class HbListWidget;
+class HbDialog;
+
+class CpDivertQuery : public QObject
+{
+    Q_OBJECT
+    
+    // Activate divert phases
+    enum ActivateDivertPhases
+    {
+        NonePhase,
+        PopUpVoiceNumberListQueryPhase,
+        PopUpTimerQueryPhase
+    };
+    
+public:
+    CpDivertQuery(PSetCallDivertingWrapper &callDivertingWrapper);
+    virtual ~CpDivertQuery();
+    
+    
+    void show(
+            const QString &heading,
+            PSCallDivertingCommand command,
+            bool needTimeOutInfo);
+    
+signals:
+    void result(PSCallDivertingCommand &command);
+    void cancelled(PSCallDivertingCommand &command);
+    void handleDivertingError(int aReason);
+    
+private slots:
+    void voiceNumberListQueryClosed(HbAction* action);
+    void popUpNumberEditorClosed(HbAction* action);
+    void popUpTimerQueryClosed(HbAction* action);
+
+private:
+    /**
+     Show to user divert number query list.
+     */
+    void popUpVoiceNumberListQuery(
+            const QString& heading, PsServiceGroup serviceGroup);
+    
+    /**
+     Show to user number query.
+     */
+    void popUpNumberEditor(const QString& heading);
+    
+    /**
+     Show to user divert time out query list.
+     */
+    void popUpTimerQuery();
+    
+    
+    void nextPhaseForActivateDivert(bool ok);
+    
+private:
+    
+    /**
+     Creates dialog with default parameters
+     */
+    HbDialog* createDialog( const QString& heading ) const;
+
+    /**
+     Adds item to given list widget
+     */
+    void addItemToListWidget(HbListWidget* w,
+        const QString& item, const QString& data) const;
+
+    /**
+     Adds item to given list widget
+     */
+    void addItemToListWidget(HbListWidget* w,
+        const QString& item, const int& data) const;
+    
+private:
+    PSetCallDivertingWrapper &m_callDivertingWrapper;
+    ActivateDivertPhases m_activateDivertPhase;
+    PSCallDivertingCommand m_divertCommand;
+    bool m_needTimeOutInfo;
+    HbDialog *m_dialog;
+};
+
+#endif /* CPDIVERTQUERY_H_ */
--- a/phonesettings/cpphonesettingsplugins/divertplugin/tsrc/ut_cpdivertplugin/ut_cpdivertplugin.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/divertplugin/tsrc/ut_cpdivertplugin/ut_cpdivertplugin.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -18,6 +18,9 @@
 #include "ut_cpdivertplugin.h"
 #include "qtestmains60ui.h"
 #include <psetcalldivertingwrapper.h>
+#include <psetwrapper.h> 
+#include <psuinotes.h> 
+#include <sssettingswrapper.h> 
 #include <hbdialog.h>
 #include <qaction>
 #include <hblabel.h>
@@ -84,7 +87,7 @@
     CPsetContainer tmpPsetContainer;
     PSetCallDivertingWrapper *tmpDivWrapper = 
             new PSetCallDivertingWrapper(tmpPsetContainer, this);
-    expect("PSetWrapper::callDivertingWrapper").returns(tmpDivWrapper); // FIXME to mock framework
+    EXPECT(PSetWrapper, callDivertingWrapper).returns(tmpDivWrapper); // FIXME to mock framework
     m_divertplugin = (CpDivertPlugin*)qt_plugin_instance();
     
     QVERIFY(m_divertplugin);
@@ -138,7 +141,7 @@
     CPsetContainer tmpContainer;
     PSetCallDivertingWrapper tmpDivWrapper(tmpContainer); 
     
-    expect("PSetWrapper::callDivertingWrapper").returns(&tmpDivWrapper); 
+    EXPECT(PSetWrapper, callDivertingWrapper).returns(&tmpDivWrapper); 
     
     CpDivertPlugin* p = (CpDivertPlugin*)qt_plugin_instance(); // Get static
     QList<CpSettingFormItemData*> list;
@@ -153,9 +156,9 @@
 void UT_CpDivertPlugin::t_changeDivertingStateRequested()
 {
     //except user cancels
-    /*
+    
     appendAction("txt_phone_setlabel_all_calls", selectAction, "Cancel");
-    expect("PSetCallDivertingWrapper::getDefaultNumbers");
+    EXPECT(PSetCallDivertingWrapper, getDefaultNumbers);
     m_divertpluginGroup->m_DataItemVoiceAllCalls->setContentWidgetData("text", "");
     m_divertpluginGroup->m_DataItemVoiceAllCalls->setContentWidgetData(
         "checkState", Qt::Checked);
@@ -165,12 +168,12 @@
     
     //except user selects vmb
     appendAction("txt_phone_setlabel_all_calls", selectItem, "txt_phone_setlabel_voice_mbx");
-    expect("PSetCallDivertingWrapper::getDefaultNumbers");
-    expect("PSetCallDivertingWrapper::queryVoiceMailBoxNumber").willOnce(invoke(fillNumber)).returns(0);
-    expect("SsSettingsWrapper::get");
-    expect("PSetCallDivertingWrapper::setCallDiverting");
-    expect("PsUiNotes::noteShowing").returns(false);
-    expect("PsUiNotes::showGlobalProgressNote");
+    EXPECT(PSetCallDivertingWrapper, getDefaultNumbers);
+    EXPECT(PSetCallDivertingWrapper, queryVoiceMailBoxNumber).willOnce(invoke(fillNumber)).returns(0);
+    EXPECT(SsSettingsWrapper, get);
+    EXPECT(PSetCallDivertingWrapper, setCallDiverting);
+    EXPECT(PsUiNotes, noteShowing).returns(false);
+    EXPECT(PsUiNotes, showGlobalProgressNote);
     m_divertpluginGroup->m_DataItemVoiceAllCalls->setContentWidgetData(
         "checkState", Qt::Checked);
     m_divertpluginGroup->m_DataItemVoiceAllCalls->thisItemClicked();
@@ -182,9 +185,9 @@
     command.iCondition = qvariant_cast<PsCallDivertingCondition>(
             m_divertpluginGroup->m_DataItemVoiceAllCalls->property("condition"));
     command.iServiceGroup = ServiceGroupVoice;
-    expect("PsUiNotes::showNotificationDialog");
+    EXPECT(PsUiNotes, showNotificationDialog);
     m_divertpluginGroup->handleDivertingChanged(command, false);
-    expect("PsUiNotes::cancelNote");
+    EXPECT(PsUiNotes,cancelNote);
     m_divertpluginGroup->divertRequestProcessed();
     QVERIFY(verify()); // Verify result processing
 
@@ -193,11 +196,11 @@
     m_divertpluginGroup->m_DataItemVoiceAllCalls->setContentWidgetData(
         "checkState", Qt::Checked);
     appendAction("txt_phone_setlabel_all_calls", selectItem, "0401234567");
-    expect("PSetCallDivertingWrapper::getDefaultNumbers");
-    expect("SsSettingsWrapper::get");
-    expect("PSetCallDivertingWrapper::setCallDiverting");
-    expect("PsUiNotes::noteShowing").returns(false);
-    expect("PsUiNotes::showGlobalProgressNote");
+    EXPECT(PSetCallDivertingWrapper,getDefaultNumbers);
+    EXPECT(SsSettingsWrapper,get);
+    EXPECT(PSetCallDivertingWrapper,setCallDiverting);
+    EXPECT(PsUiNotes, noteShowing).returns(false);
+    EXPECT(PsUiNotes, showGlobalProgressNote);
     m_divertpluginGroup->m_DataItemVoiceAllCalls->thisItemClicked();
     waitForQueueEmpty();
     command.iNumber = "0401234567";
@@ -205,19 +208,19 @@
     command.iCondition = qvariant_cast<PsCallDivertingCondition>(
             m_divertpluginGroup->m_DataItemVoiceAllCalls->property("condition"));
     command.iServiceGroup = ServiceGroupVoice;
-    expect("PsUiNotes::cancelNote");
-    expect("PsUiNotes::showNotificationDialog");
-    expect("PSetCallDivertingWrapper::setNewDefaultNumber").with(QString("0401234567"));
+    EXPECT(PsUiNotes, cancelNote);
+    EXPECT(PsUiNotes, showNotificationDialog);
+    EXPECT(PSetCallDivertingWrapper, setNewDefaultNumber).with(QString("0401234567"));
     m_divertpluginGroup->handleDivertingChanged(command, true);
-    expect("PsUiNotes::cancelNote");
+    EXPECT(PsUiNotes, cancelNote);
     m_divertpluginGroup->divertRequestProcessed();
     QVERIFY(verify());
     
     // Divert is disabled
-    expect("SsSettingsWrapper::get");
-    expect("PSetCallDivertingWrapper::setCallDiverting"); // Disable divert
-    expect("PsUiNotes::noteShowing").returns(false);
-    expect("PsUiNotes::showGlobalProgressNote");
+    EXPECT(SsSettingsWrapper, get);
+    EXPECT(PSetCallDivertingWrapper, setCallDiverting); // Disable divert
+    EXPECT(PsUiNotes, noteShowing).returns(false);
+    EXPECT(PsUiNotes, showGlobalProgressNote);
     m_divertpluginGroup->m_DataItemVoiceAllCalls->setContentWidgetData(
         "checkState", Qt::Unchecked);
     m_divertpluginGroup->m_DataItemVoiceAllCalls->thisItemClicked();
@@ -227,19 +230,19 @@
     command.iCondition = qvariant_cast<PsCallDivertingCondition>(
             m_divertpluginGroup->m_DataItemVoiceAllCalls->property("condition"));
     command.iServiceGroup = ServiceGroupVoice;
-    expect("PsUiNotes::showNotificationDialog");
+    EXPECT(PsUiNotes, showNotificationDialog);
     m_divertpluginGroup->handleDivertingChanged(command, false);
-    //expect("PsUiNotes::cancelNote");
+    //EXPECT(PsUiNotes, cancelNote);
     m_divertpluginGroup->divertRequestProcessed();
     QVERIFY(verify());
-    */
+    
     //except user selects other number, inserts number and cancels
     /* BUG in framework (Crash in QGestureManager::getState due to QWeakPointer) */
     /*
     appendAction("All voice calls:", selectItem, "Other number");
     appendAction("Number:", insertText, "12345");
     appendAction("Number:", selectAction, "Cancel");
-    expect("PSetCallDivertingWrapper::getDefaultNumbers");
+    EXPECT(PSetCallDivertingWrapper, getDefaultNumbers);
     m_divertpluginGroup->m_DataItemVoiceAllCalls->thisItemClicked();
     waitForQueueEmpty();
     QVERIFY(verify());
@@ -251,9 +254,9 @@
  */
 void UT_CpDivertPlugin::t_itemShown()
 {
-    expect("PSetCallDivertingWrapper::getCallDivertingStatus");
-    expect("PsUiNotes::noteShowing").returns(false);
-    expect("PsUiNotes::showGlobalProgressNote");
+    EXPECT(PSetCallDivertingWrapper, getCallDivertingStatus);
+    EXPECT(PsUiNotes, noteShowing).returns(false);
+    EXPECT(PsUiNotes, showGlobalProgressNote);
     m_divertpluginGroup->itemShown(
             m_dataForm->indexFromItem(m_divertpluginGroup->m_DataItemVoiceAllCalls));
     m_divertpluginGroup->itemShown(
@@ -319,9 +322,9 @@
     appendAction("txt_phone_info_number", selectAction, "OK");
     appendAction("txt_phone_title_delay", selectItem, delayLnString);
     // expect user chooses other number and inserts number and timeout
-    expect("PSetCallDivertingWrapper::getDefaultNumbers");    
-    expect("SsSettingsWrapper::get");
-    expect("PSetCallDivertingWrapper::setCallDiverting");
+    EXPECT(PSetCallDivertingWrapper, getDefaultNumbers);    
+    EXPECT(SsSettingsWrapper, get);
+    EXPECT(PSetCallDivertingWrapper, setCallDiverting);
     m_divertpluginGroup->m_DataItemVoiceIfNotAnswered->setContentWidgetData(
         "checkState", Qt::Checked);
     m_divertpluginGroup->m_DataItemVoiceIfNotAnswered->thisItemClicked();
@@ -333,14 +336,14 @@
     command.iCondition = qvariant_cast<PsCallDivertingCondition>(
             m_divertpluginGroup->m_DataItemVoiceIfNotAnswered->property("condition"));
     command.iServiceGroup = ServiceGroupVoice;
-    expect("PsUiNotes::showNotificationDialog");
+    EXPECT(PsUiNotes, showNotificationDialog);
     m_divertpluginGroup->handleDivertingChanged(command, false);
-    expect("PsUiNotes::cancelNote");
+    EXPECT(PsUiNotes, cancelNote);
     m_divertpluginGroup->divertRequestProcessed();
     QVERIFY(verify());
     
-    expect("SsSettingsWrapper::get");
-    expect("PSetCallDivertingWrapper::setCallDiverting");
+    EXPECT(SsSettingsWrapper, get);
+    EXPECT(PSetCallDivertingWrapper, setCallDiverting);
     m_divertpluginGroup->m_DataItemVoiceIfNotAnswered->setContentWidgetData(
         "checkState", Qt::Unchecked);
     m_divertpluginGroup->m_DataItemVoiceIfNotAnswered->thisItemClicked();
@@ -351,9 +354,9 @@
     command.iCondition = qvariant_cast<PsCallDivertingCondition>(
             m_divertpluginGroup->m_DataItemVoiceIfNotAnswered->property("condition"));
     command.iServiceGroup = ServiceGroupVoice;
-    expect("PsUiNotes::showNotificationDialog");
+    EXPECT(PsUiNotes, showNotificationDialog);
     m_divertpluginGroup->handleDivertingChanged(command, false);
-    expect("PsUiNotes::cancelNote");
+    EXPECT(PsUiNotes, cancelNote);
     m_divertpluginGroup->divertRequestProcessed();
     QVERIFY(verify());
 
@@ -369,7 +372,7 @@
     c.iStatus = DivertingStatusActive;
     c.iServiceGroup = ServiceGroupAllTeleservices;
     c.iNumber = QString("0401234567890");
-    expect("PSetCallDivertingWrapper::setNewDefaultNumber");
+    EXPECT(PSetCallDivertingWrapper, setNewDefaultNumber);
     m_divertpluginGroup->handleDivertingChanged(c, true);
     
     QVERIFY(verify());
@@ -377,7 +380,7 @@
     c.iServiceGroup = ServiceGroupAllTeleservices;
     c.iCondition = DivertConditionUnconditional;
     c.iNumber = QString("0401234567890");
-    expect("PSetCallDivertingWrapper::setNewDefaultNumber");
+    EXPECT(PSetCallDivertingWrapper, setNewDefaultNumber);
     m_divertpluginGroup->handleDivertingChanged(c, false);
     
     QVERIFY(verify());
--- a/phonesettings/cpphonesettingsplugins/divertplugin/tsrc/ut_cpdivertplugin/ut_cpdivertplugin.pro	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/divertplugin/tsrc/ut_cpdivertplugin/ut_cpdivertplugin.pro	Fri Sep 17 08:29:19 2010 +0300
@@ -42,6 +42,7 @@
 # code to be tested
 HEADERS += ../../src/cpdivertplugin.h \
            ../../src/cpdivertplugingroup.h \
+           ../../src/cpdivertquery.h \
            ../../src/cpdivertitemdata.h \
            ../../../cptelephonyutils/inc/cpplugincommon.h \
            /epoc32/include/platform/mw/psetwrapper.h \
@@ -54,6 +55,7 @@
            
 SOURCES += ../../src/cpdivertplugin.cpp \
            ../../src/cpdivertplugingroup.cpp \
+           ../../src/cpdivertquery.cpp \
            ../../src/cpdivertitemdata.cpp
 
 # mocks needed for testing
--- a/phonesettings/cpphonesettingsplugins/tsrc/mocks/mock_cpplugincommon.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phonesettings/cpphonesettingsplugins/tsrc/mocks/mock_cpplugincommon.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -185,16 +185,3 @@
     }
 
 
-// -----------------------------------------------------------------------------
-// Tools::errorCodeTextMapping
-// -----------------------------------------------------------------------------
-//
-bool Tools::errorCodeTextMapping( 
-        const int errorcode,
-        QString & errorText )
-    {
-    SMC_MOCK_METHOD2( bool, const int, errorcode, 
-        QString &, errorText )
-    }
-
-
--- a/phoneuis/bubblemanager2/bubblecore/src/bubbleexpandedhandler.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneuis/bubblemanager2/bubblecore/src/bubbleexpandedhandler.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -84,7 +84,7 @@
 
     if (!mHeader->callImage().isEmpty() ||
         header.showDefaultAvatar()) {
-        mImage->setImage(header.callImage());
+        mImage->setImageName(header.callImage());
         mImage->show();
     } else {
         mImage->hide();
--- a/phoneuis/bubblemanager2/bubblecore/src/bubbleheadingwidget.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneuis/bubblemanager2/bubblecore/src/bubbleheadingwidget.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -30,8 +30,8 @@
 #include "bubbleheader.h"
 
 BubbleHeadingWidget::BubbleHeadingWidget(QGraphicsItem* item)
-    : HbWidget(item), mIndicator1(0), mIndicator2(0),
-      mText1(0), mText2(0), mText3(0)
+    : HbWidget(item), mLineCount(0), mIndicator1(0),
+      mIndicator2(0), mText1(0), mText2(0), mText3(0)
 {
     createPrimitives();
 
@@ -44,7 +44,6 @@
     mCliFont = new HbFontSpec(HbFontSpec::Primary);
     mTextFont = new HbFontSpec(HbFontSpec::Secondary);
 
-    HbDeviceProfile profile;
     mCliFont->setTextHeight(4*HbDeviceProfile::current().unitValue());
     mTextFont->setTextHeight(4*HbDeviceProfile::current().unitValue());
 }
@@ -100,11 +99,11 @@
         // update text lines
         int cliLine = 0;
 
-        if (lines==3) {
+        if (mLineCount==3) {
             BubbleUtils::setCallHeaderTexts3Lines(
                 *mHeader, *mText1, *mText2, *mText3, cliLine,
                 mCallTimerTextLine );
-        } else if (lines==2) {
+        } else if (mLineCount==2) {
             BubbleUtils::setCallHeaderTexts2Lines(
                 *mHeader, *mText1, *mText2, cliLine,
                 mCallTimerTextLine );
@@ -134,17 +133,17 @@
 {
     QString layout;
 
-    if (lines == 3) {
+    if (mLineCount == 3) {
         layout = QLatin1String("three_lines");
         mText1->setVisible(true);
         mText2->setVisible(true);
         mText3->setVisible(true);
-    } else if (lines == 2) {
+    } else if (mLineCount == 2) {
         layout = QLatin1String("two_lines");
         mText1->setVisible(true);
         mText2->setVisible(true);
         mText3->setVisible(false);
-    } else if (lines == 1) {
+    } else if (mLineCount == 1) {
         layout = QLatin1String("one_line");
         mText1->setVisible(true);
         mText2->setVisible(true);
@@ -157,32 +156,32 @@
         layout.append(QLatin1String("_1"));
     }
 
-    setLayout(layout);
+    setLayoutOption(layout);
 
     HbWidget::polish(params);
 }
 
 int BubbleHeadingWidget::lineCount() const
 {
-    return lines;
+    return mLineCount;
 }
 
 void BubbleHeadingWidget::setLineCount(int count)
 {
-    lines = count;
+    mLineCount = count;
     if (isVisible()) {
         repolish();
     }
 }
 
-QString BubbleHeadingWidget::layout() const
+QString BubbleHeadingWidget::layoutOption() const
 {
-    return layoutOption;
+    return mLayoutOption;
 }
 
-void BubbleHeadingWidget::setLayout(const QString& layout)
+void BubbleHeadingWidget::setLayoutOption(const QString& option)
 {
-    layoutOption = layout;
+    mLayoutOption = option;
 }
 
 void BubbleHeadingWidget::updateTimerDisplayNow()
@@ -197,3 +196,28 @@
         }
     }
 }
+
+QString BubbleHeadingWidget::textLine1() const
+{
+    return mText1->text();
+}
+
+QString BubbleHeadingWidget::textLine2() const
+{
+    return mText2->text();
+}
+
+QString BubbleHeadingWidget::textLine3() const
+{
+    return mText3->text();
+}
+
+QString BubbleHeadingWidget::indicator1() const
+{
+    return mIndicator1->iconName();
+}
+
+QString BubbleHeadingWidget::indicator2() const
+{
+    return mIndicator2->iconName();
+}
--- a/phoneuis/bubblemanager2/bubblecore/src/bubbleheadingwidget.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneuis/bubblemanager2/bubblecore/src/bubbleheadingwidget.h	Fri Sep 17 08:29:19 2010 +0300
@@ -28,8 +28,13 @@
 class BubbleHeadingWidget : public HbWidget
 {
     Q_OBJECT
-    Q_PROPERTY(int lines READ lineCount WRITE setLineCount)
-    Q_PROPERTY(QString layoutOption READ layout WRITE setLayout)
+    Q_PROPERTY(int lineCount READ lineCount WRITE setLineCount)
+    Q_PROPERTY(QString layoutOption READ layoutOption WRITE setLayoutOption)
+    Q_PROPERTY(QString textLine1 READ textLine1)
+    Q_PROPERTY(QString textLine2 READ textLine2)
+    Q_PROPERTY(QString textLine3 READ textLine3)
+    Q_PROPERTY(QString indicator1 READ indicator1)
+    Q_PROPERTY(QString indicator2 READ indicator2)
 
 public:
     BubbleHeadingWidget(QGraphicsItem* item=0);
@@ -38,8 +43,18 @@
     int lineCount() const;
     void setLineCount(int count);
 
-    QString layout() const;
-    void setLayout(const QString& layout);
+    QString layoutOption() const;
+    void setLayoutOption(const QString& option);
+
+    QString textLine1() const;
+
+    QString textLine2() const;
+
+    QString textLine3() const;
+
+    QString indicator1() const;
+
+    QString indicator2() const;
 
     void reset();
     void readBubbleHeader(const BubbleHeader& header);
@@ -53,8 +68,8 @@
     void polish(HbStyleParameters &params);
 
 private:
-    int lines;
-    QString layoutOption;
+    int mLineCount;
+    QString mLayoutOption;
 
     const BubbleHeader* mHeader;
 
--- a/phoneuis/bubblemanager2/bubblecore/src/bubbleimagewidget.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneuis/bubblemanager2/bubblecore/src/bubbleimagewidget.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -57,7 +57,7 @@
 {
 }
 
-void BubbleImageWidget::setImage(const QString& name)
+void BubbleImageWidget::setImageName(const QString& name)
 {
     mImageName = name;
 
@@ -71,6 +71,15 @@
     }
 }
 
+QString BubbleImageWidget::imageName() const
+{
+    if (!mImageName.isEmpty()) {
+        return mImageName;
+    } else {
+        return mDefaultAvatar->iconName();
+    }
+}
+
 void BubbleImageWidget::imageLoaded(QString imageFileName)
 {
     if (imageFileName==mImageName) {
--- a/phoneuis/bubblemanager2/bubblecore/src/bubbleimagewidget.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneuis/bubblemanager2/bubblecore/src/bubbleimagewidget.h	Fri Sep 17 08:29:19 2010 +0300
@@ -28,6 +28,7 @@
     Q_OBJECT
 
     Q_PROPERTY(bool keepSquareShape READ keepSquareShape WRITE setKeepSquareShape)
+    Q_PROPERTY(QString imageName READ imageName WRITE setImageName)
     
 public:
     explicit BubbleImageWidget(
@@ -35,7 +36,8 @@
         QGraphicsItem* parent = 0 );
     virtual ~BubbleImageWidget();
 
-    void setImage(const QString& name);
+    void setImageName(const QString& name);
+    QString imageName() const;
 
     bool keepSquareShape() const;
     void setKeepSquareShape(bool keepSquare);
--- a/phoneuis/bubblemanager2/bubblecore/xml/bubble_layout_1.docml	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneuis/bubblemanager2/bubblecore/xml/bubble_layout_1.docml	Fri Sep 17 08:29:19 2010 +0300
@@ -3,7 +3,7 @@
     <widget name="content" type="HbWidget">
         <widget name="expandedBubble" type="BubbleContainerWidget">
             <widget name="eb:bubbleHeading" type="BubbleHeadingWidget">
-                <integer name="lines" value="3"/>
+                <integer name="lineCount" value="3"/>
             </widget>
             <widget name="eb:callImage" type="BubbleImageWidget">
                 <bool name="keepSquareShape" value="TRUE"/>
--- a/phoneuis/bubblemanager2/bubblecore/xml/bubble_layout_2.docml	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneuis/bubblemanager2/bubblecore/xml/bubble_layout_2.docml	Fri Sep 17 08:29:19 2010 +0300
@@ -7,7 +7,7 @@
         </widget>        
         <widget name="expandedBubble" type="BubbleContainerWidget">
             <widget name="eb:bubbleHeading" type="BubbleHeadingWidget">
-                <integer name="lines" value="3"/>
+                <integer name="lineCount" value="3"/>
             </widget>
             <widget name="eb:callImage" type="BubbleImageWidget">
                 <bool name="keepSquareShape" value="TRUE"/>
@@ -35,7 +35,7 @@
     </widget>		
     
     <widget name="cb:bubbleHeading" type="BubbleHeadingWidget">
-        <integer name="lines" value="2"/>
+        <integer name="lineCount" value="2"/>
     </widget>    
 
     <layout type="anchor" widget="content">
@@ -80,7 +80,7 @@
     </widget>		
         
     <widget name="cb:bubbleHeading" type="BubbleHeadingWidget">
-        <integer name="lines" value="1"/>
+        <integer name="lineCount" value="1"/>
     </widget>
 
     <layout type="anchor" widget="content">
--- a/phoneuis/bubblemanager2/bubblecore/xml/bubble_layout_3.docml	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneuis/bubblemanager2/bubblecore/xml/bubble_layout_3.docml	Fri Sep 17 08:29:19 2010 +0300
@@ -39,7 +39,7 @@
     </widget>
     
     <widget name="cb2:bubbleHeading" type="BubbleHeadingWidget">
-        <integer name="lines" value="2"/>
+        <integer name="lineCount" value="2"/>
     </widget>
     
     <widget name="collapsedBubble" type="BubbleContainerWidget">
@@ -47,11 +47,11 @@
     </widget>
     
     <widget name="cb:bubbleHeading" type="BubbleHeadingWidget">
-        <integer name="lines" value="2"/>
+        <integer name="lineCount" value="2"/>
     </widget>    
 
     <widget name="eb:bubbleHeading" type="BubbleHeadingWidget">
-        <integer name="lines" value="3"/>
+        <integer name="lineCount" value="3"/>
     </widget>
     
     <widget name="eb:centerButton" type="BubbleButton">
@@ -118,7 +118,7 @@
     </widget>
     
     <widget name="cb2:bubbleHeading" type="BubbleHeadingWidget">
-        <integer name="lines" value="1"/>
+        <integer name="lineCount" value="1"/>
     </widget>
     
 
@@ -127,11 +127,11 @@
     </widget>
     
     <widget name="cb:bubbleHeading" type="BubbleHeadingWidget">
-        <integer name="lines" value="1"/>
+        <integer name="lineCount" value="1"/>
     </widget>        
 
     <widget name="eb:bubbleHeading" type="BubbleHeadingWidget">
-        <integer name="lines" value="3"/>
+        <integer name="lineCount" value="3"/>
     </widget>
     
     <widget name="eb:centerButton" type="BubbleButton">
--- a/phoneuis/bubblemanager2/bubblecore/xml/bubble_layout_4.docml	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneuis/bubblemanager2/bubblecore/xml/bubble_layout_4.docml	Fri Sep 17 08:29:19 2010 +0300
@@ -6,12 +6,9 @@
             </widget>
             <widget name="eb:groupBox" type="HbGroupBox">            
 		            <widget name="eb:bubbleHeading"  role="HbGroupBox:contentWidget" type="BubbleHeadingWidget">
-		                <integer name="lines" value="2"/>
+		                <integer name="lineCount" value="2"/>
 		            </widget>
 		        </widget>    
-            <widget name="eb:cipheringIcon" type="HbLabel">
-                <sizehint height="var(hb-param-graphic-size-secondary)" width="var(hb-param-graphic-size-secondary)" type="FIXED"/>
-            </widget>                        
             <widget name="eb:centerButton" type="BubbleButton">
                 <sizehint height="9.0un" type="FIXED"/>
                 <sizehint width="24.5un" type="PREFERRED"/>
@@ -33,7 +30,7 @@
     </widget>
 
     <widget name="eb:bubbleHeading" type="BubbleHeadingWidget">
-        <integer name="lines" value="2"/>
+        <integer name="lineCount" value="2"/>
     </widget>
 
     <layout type="anchor" widget="content">
@@ -72,7 +69,7 @@
     </widget>
 
     <widget name="eb:bubbleHeading" type="BubbleHeadingWidget">
-        <integer name="lines" value="1"/>
+        <integer name="lineCount" value="1"/>
     </widget>
 
     <layout type="anchor" widget="content">
--- a/phoneuis/bubblemanager2/tsrc/bubbletest2/bubbletestview.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneuis/bubblemanager2/tsrc/bubbletest2/bubbletestview.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -17,6 +17,15 @@
 
 #include <QtGui>
 #include <QDebug>
+
+//#define BUBBLETEST_ENABLE_TESTABILITY
+#ifdef BUBBLETEST_ENABLE_TESTABILITY
+    #include <QtPlugin>
+    #include <QPluginLoader>
+    #include <QLibraryInfo>
+    #include "testabilityinterface.h"
+#endif
+
 #include <hbaction.h>
 #include <hbtoolbar.h>
 #include <bubblemanager2.h>
@@ -25,6 +34,7 @@
 #include "bubbletestview.h"
 #include <hbeffect.h>
 
+
 BubbleTestView::BubbleTestView(HbMainWindow& window, QGraphicsItem *parent) :
     HbView (parent), mMainWindow(window), mMuted(0), mConfBubbleId(-1),
     mProvideJoin(false)
@@ -32,6 +42,8 @@
     setFlags (QGraphicsItem::ItemIsFocusable);
     setFocusPolicy (Qt::StrongFocus);
     setTitle("BubbleTest2");
+
+    loadTestabilityPlugin();
     
     // the widget under the test
     mBubbleManager = new BubbleManager (this);
@@ -362,8 +374,34 @@
                 }
             }
         }
+        break;
     }
-    
+
+    case 'C': { // ciphering
+        mCipheringOff->setChecked(!mCipheringOff->isChecked());
+        break;
+    }
+
+    case 'D': { // divert
+        mCallDivert->setChecked(!mCallDivert->isChecked());
+        break;
+    }
+
+    case 'I': { // image
+        mContactPicture->setChecked(!mContactPicture->isChecked());
+        break;
+    }
+
+    case 'N': { // remote name
+        mContactName->setChecked(!mContactName->isChecked());
+        break;
+    }
+
+    case 'T': { // timer
+        mCallTimer->setChecked(!mCallTimer->isChecked());
+        break;
+    }
+
     default:
     break;
     }
@@ -1021,3 +1059,34 @@
     }
 }
 
+void BubbleTestView::loadTestabilityPlugin()
+{
+#ifdef BUBBLETEST_ENABLE_TESTABILITY
+    QString testabilityPlugin = "testability/testability";
+    QString testabilityPluginPostfix = ".dll";
+
+    testabilityPlugin = QLibraryInfo::location(QLibraryInfo::PluginsPath) +
+                                               QObject::tr("/") + testabilityPlugin +
+                                               testabilityPluginPostfix;
+
+    QPluginLoader loader(testabilityPlugin.toLatin1().data());
+
+    QObject *plugin = loader.instance();
+    if (plugin) {
+            qDebug("Testability plugin loaded successfully!");
+            mTestabilityInterface = qobject_cast<TestabilityInterface *>(plugin);
+
+            if (mTestabilityInterface) {
+                    qDebug("Testability interface obtained!");
+                    mTestabilityInterface->Initialize();
+            } else {
+                    qDebug("Failed to get testability interface!");
+            }
+    } else {
+            qDebug("Testability plugin %s load failed with error:%s",
+                   testabilityPlugin.toLatin1().data(),
+                   loader.errorString().toLatin1().data());
+    }
+#endif
+}
+
--- a/phoneuis/bubblemanager2/tsrc/bubbletest2/bubbletestview.h	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneuis/bubblemanager2/tsrc/bubbletest2/bubbletestview.h	Fri Sep 17 08:29:19 2010 +0300
@@ -27,6 +27,10 @@
 class HbToolBar;
 class BubbleManager;
 
+QT_BEGIN_NAMESPACE
+class TestabilityInterface;
+QT_END_NAMESPACE
+
 class BubbleTestView : public HbView
 {
     Q_OBJECT
@@ -79,6 +83,7 @@
     void conferenceWizard();
     void sendKeyEvent(int key);
     void toggleHoldConference();
+    void loadTestabilityPlugin();
 
 private:
     HbMainWindow&     mMainWindow;
@@ -139,6 +144,8 @@
     QMap<QString, int> mTestBubbleIds;
     int mConfBubbleId;
     bool mProvideJoin;
+
+    TestabilityInterface* mTestabilityInterface;
 };
 
 #endif // BUBBLETESTVIEW_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneuis/bubblemanager2/tsrc/bubbletest2/tdriver/tc_bubblemanager2.rb	Fri Sep 17 08:29:19 2010 +0300
@@ -0,0 +1,165 @@
+############################################################################
+## 
+## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). 
+## All rights reserved. 
+## 
+## This file is part of BubbleManager2. Reference TDriver test script. 
+## 
+## 
+############################################################################
+
+require 'matti'
+require 'orbitbehaviours.rb'
+include MattiVerify
+
+require 'test/unit'
+
+class TC_BubbleManager2 < Test::Unit::TestCase
+  
+  # setup and teardown methods are always executed before each and after each test case method
+  def setup
+    # get the calculator app running 
+    @sut = MATTI.sut(:Id => "sut_qt")    
+    @testapp = @sut.run(:name => "bubbletest2")
+    
+  end
+  
+  def teardown   
+    @testapp.close        
+  end
+  
+  def test_mobile_terminated_call
+    
+    # create incoming call
+    @testapp.BubbleTestView.press_key(:kC) # ciphering
+    @testapp.BubbleTestView.press_key(:kD) # divert    
+    @testapp.BubbleTestView.press_key(:k1)
+    
+    verify( 5, "Incoming bubble shown" ) { @testapp.BubbleContainerWidget(:objectName => 'expandedBubble' )}
+    # check heading
+    verify { @testapp.BubbleHeadingWidget(:objectName => 'eb:bubbleHeading',
+                                          :textLine1 => '+35850123456789',
+                                          :textLine2 => 'calling',
+                                          :indicator1 => 'qtg_mono_ciphering_off',
+                                          :indicator2 => 'qtg_mono_call_diverted' ) }
+    # check image
+    verify { @testapp.BubbleImageWidget(:objectName => 'eb:callImage', 
+                                        :imageName => 'qtg_large_avatar' ) }
+                                        
+    # answer the call
+    @testapp.BubbleButton(:objectName => 'eb:leftButton').tap
+    
+    # check heading
+    verify { @testapp.BubbleHeadingWidget(:objectName => 'eb:bubbleHeading',
+                                          :textLine1 => '+35850123456789',
+                                          :textLine2 => '',
+                                          :indicator1 => 'qtg_mono_ciphering_off',
+                                          :indicator2 => '' ) }
+                                          
+    # test mute
+    verify_not { @testapp.HbLabel(:objectName => 'mutedIcon' ) }    
+    @testapp.BubbleButton(:objectName => 'eb:leftButton').tap
+    verify { @testapp.HbLabel(:objectName => 'mutedIcon' ) }
+    @testapp.BubbleButton(:objectName => 'eb:leftButton').tap
+    verify_not { @testapp.HbLabel(:objectName => 'mutedIcon' ) }
+                                          
+    # end the call
+    @testapp.BubbleButton(:objectName => 'eb:rightButton').tap
+    verify_not { @testapp.BubbleContainerWidget(:objectName => 'expandedBubble')}
+                                                                                                                                                                                              
+  end  
+  
+  def test_mobile_terminated_call_with_contact
+    
+    # create incoming call
+    @testapp.BubbleTestView.press_key(:kI) # image
+    @testapp.BubbleTestView.press_key(:kN) # name
+    @testapp.BubbleTestView.press_key(:k1)
+    
+    verify( 5, "Incoming bubble shown" ) { @testapp.BubbleContainerWidget(:objectName => 'expandedBubble' )}
+    # check heading
+    verify { @testapp.BubbleHeadingWidget(:objectName => 'eb:bubbleHeading',
+                                          :textLine1 => 'Gloria Andersson',
+                                          :textLine2 => '+35850123456789',
+                                          :textLine3 => 'calling',
+                                          :indicator1 => '',
+                                          :indicator2 => '' ) }
+    # check image
+    verify { @testapp.BubbleImageWidget(:objectName => 'eb:callImage', 
+                                        :imageName => ':resources/contactpic.jpg' ) }
+                                        
+    # reject the call
+    @testapp.BubbleButton(:objectName => 'eb:rightButton').tap
+    
+    verify_not { @testapp.BubbleContainerWidget(:objectName => 'expandedBubble')}
+                                                                                                                                                                                              
+  end  
+  
+  def test_waiting_call
+    
+    # create active call
+    @testapp.BubbleTestView.press_key(:k1)
+    @testapp.BubbleTestView.press_key(:k3)
+    
+    # waiting call
+    @testapp.BubbleTestView.press_key(:k1)
+    
+    verify( 5, "Active bubble shown" ) { @testapp.BubbleContainerWidget(:objectName => 'collapsedBubble' )}
+    verify( 5, "Waiting bubble shown" ) { @testapp.BubbleContainerWidget(:objectName => 'expandedBubble' )}
+    
+    # check ongoing call heading
+    verify { @testapp.BubbleHeadingWidget(:objectName => 'cb:bubbleHeading',
+                                          :textLine1 => '+35850123456789',
+                                          :textLine2 => '' ) }    
+    
+    # check waiting call heading
+    verify { @testapp.BubbleHeadingWidget(:objectName => 'eb:bubbleHeading',
+                                          :textLine1 => '+35840987654321',
+                                          :textLine2 => 'waiting' ) }
+                                          
+    # check image
+    verify { @testapp.BubbleImageWidget(:objectName => 'eb:callImage', 
+                                        :imageName => 'qtg_large_avatar' ) }
+                                        
+                                        
+    # answer the call
+    @testapp.BubbleButton(:objectName => 'eb:leftButton').tap
+    
+    # check held call heading
+    verify { @testapp.BubbleHeadingWidget(:objectName => 'cb:bubbleHeading',
+                                          :textLine1 => '+35850123456789',
+                                          :textLine2 => 'on hold' ) }     
+    
+    # check active call heading
+    verify { @testapp.BubbleHeadingWidget(:objectName => 'eb:bubbleHeading',
+                                          :textLine1 => '+35840987654321',
+                                          :textLine2 => '' ) }                                            
+    
+  end  
+  
+  def test_conference_call
+    
+    # create conference call
+    @testapp.BubbleTestView.press_key(:kT)
+    @testapp.BubbleTestView.press_key(:k1)
+    @testapp.BubbleTestView.press_key(:k3)
+    @testapp.BubbleTestView.press_key(:k1)
+    @testapp.BubbleTestView.press_key(:k3)
+    @testapp.BubbleTestView.press_key(:k7) # join
+    
+    verify( 5, "Active bubble shown" ) { @testapp.BubbleContainerWidget(:objectName => 'expandedBubble' )}
+    verify { @testapp.BubbleHeadingWidget(:objectName => 'eb:bubbleHeading',
+                                          :textLine1 => 'Conference call',
+                                          :textLine2 => '00:00:00' ) }    
+                                          
+    # check that calls are present in participant list
+    verify { @testapp.HbGroupBox(:heading => '+35850123456789' ) }
+    verify { @testapp.HbGroupBox(:heading => '+35840987654321' ) }
+
+    # reject the call
+    @testapp.BubbleButton(:objectName => 'eb:rightButton').tap    
+    verify_not { @testapp.BubbleContainerWidget(:objectName => 'expandedBubble')}
+                                                
+  end
+  
+end
--- a/phoneuis/bubblemanager2/tsrc/unit/ut_bubbleheadingwidget/ut_bubbleheadingwidget.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneuis/bubblemanager2/tsrc/unit/ut_bubbleheadingwidget/ut_bubbleheadingwidget.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -109,16 +109,18 @@
     mHeading->readBubbleHeader(header);
     mHeading->show();
     QTest::qWait(200);
-    QVERIFY(mHeading->layout()=="three_lines_1");
+    QVERIFY(mHeading->layoutOption()=="three_lines_1");
 
-    QVERIFY(mText1->text()=="John Doe");
-    QVERIFY(mText2->text()=="12345");
+    QVERIFY(mHeading->textLine1()=="John Doe");
+    QVERIFY(mHeading->textLine2()=="12345");
     QVERIFY(mText2->alignment()&Qt::AlignLeft);
-    QVERIFY(mText3->text()=="0:00");
+    QVERIFY(mHeading->textLine3()=="0:00");
+    QVERIFY(mHeading->indicator1()==QLatin1String("qtg_mono_ciphering_off"));
+    QVERIFY(mHeading->indicator2()==QLatin1String(""));
 
     header.setTimerCost("0:01");
     mHeading->updateTimerDisplayNow();
-    QVERIFY(mText3->text()=="0:01");
+    QVERIFY(mHeading->textLine3()=="0:01");
 
     header.setCallState(BubbleManagerIF::Incoming);
     header.setCallFlag(BubbleManagerIF::NoCiphering);
@@ -126,13 +128,15 @@
     mHeading->readBubbleHeader(header);
     mHeading->show();
     QTest::qWait(200);
-    QVERIFY(mHeading->layout()=="three_lines_2");
+    QVERIFY(mHeading->layoutOption()=="three_lines_2");
+    QVERIFY(mHeading->indicator1()==QLatin1String("qtg_mono_ciphering_off"));
+    QVERIFY(mHeading->indicator2()==QLatin1String("qtg_mono_call_diverted"));
 
     header.setCallFlags(BubbleManagerIF::Normal);
     mHeading->readBubbleHeader(header);
     mHeading->show();
     QTest::qWait(200);
-    QVERIFY(mHeading->layout()=="three_lines");
+    QVERIFY(mHeading->layoutOption()=="three_lines");
 }
 
 void ut_BubbleHeadingWidget::testTwoLinedHeading()
@@ -150,30 +154,33 @@
     mHeading->readBubbleHeader(header);
     mHeading->show();
     QTest::qWait(200);
-    QVERIFY(mHeading->layout()=="two_lines_1");
+    QVERIFY(mHeading->layoutOption()=="two_lines_1");
+    QVERIFY(mHeading->indicator1()==QLatin1String("qtg_mono_ciphering_off"));
+    QVERIFY(mHeading->indicator2()==QLatin1String(""));
 
-    QVERIFY(mText1->text()=="John Doe");
-    QVERIFY(mText2->text()=="0:00");
+    QVERIFY(mHeading->textLine1()=="John Doe");
+    QVERIFY(mHeading->textLine2()=="0:00");
     QVERIFY(mText2->alignment()&Qt::AlignLeft);
     QVERIFY(!mText3->isVisible());
 
     header.setTimerCost("0:01");
     mHeading->updateTimerDisplayNow();
-    QVERIFY(mText2->text()=="0:01");
+    QVERIFY(mHeading->textLine2()=="0:01");
 
     header.setCallState(BubbleManagerIF::Incoming);
-    header.setCallFlag(BubbleManagerIF::NoCiphering);
+    header.removeCallFlag(BubbleManagerIF::NoCiphering);
     header.setCallFlag(BubbleManagerIF::Diverted);
     mHeading->readBubbleHeader(header);
     mHeading->show();
     QTest::qWait(200);
-    QVERIFY(mHeading->layout()=="two_lines_2");
+    QVERIFY(mHeading->layoutOption()=="two_lines_1");
+    QVERIFY(mHeading->indicator1()==QLatin1String("qtg_mono_call_diverted"));
 
     header.setCallFlags(BubbleManagerIF::Normal);
     mHeading->readBubbleHeader(header);
     mHeading->show();
     QTest::qWait(200);
-    QVERIFY(mHeading->layout()=="two_lines");
+    QVERIFY(mHeading->layoutOption()=="two_lines");
 
 }
 
@@ -192,15 +199,15 @@
     mHeading->readBubbleHeader(header);
     mHeading->show();
     QTest::qWait(200);
-    QVERIFY(mHeading->layout()=="one_line_1");
-    QVERIFY(mText1->text()=="John Doe");
-    QVERIFY(mText2->text()=="0:00");
+    QVERIFY(mHeading->layoutOption()=="one_line_1");
+    QVERIFY(mHeading->textLine1()=="John Doe");
+    QVERIFY(mHeading->textLine2()=="0:00");
     QVERIFY(mText2->alignment()&Qt::AlignRight);
     QVERIFY(!mText3->isVisible());
 
     header.setTimerCost("0:01");
     mHeading->updateTimerDisplayNow();
-    QVERIFY(mText2->text()=="0:01");
+    QVERIFY(mHeading->textLine2()=="0:01");
 
     header.setCallState(BubbleManagerIF::Incoming);
     header.setCallFlag(BubbleManagerIF::NoCiphering);
@@ -209,7 +216,7 @@
     mHeading->readBubbleHeader(header);
     mHeading->show();
     QTest::qWait(200);
-    QVERIFY(mHeading->layout()=="one_line_2");
+    QVERIFY(mHeading->layoutOption()=="one_line_2");
     QVERIFY(mText2->alignment()&Qt::AlignRight);
 
     header.setCallFlags(BubbleManagerIF::Normal);
@@ -217,7 +224,7 @@
     mHeading->readBubbleHeader(header);
     mHeading->show();
     QTest::qWait(200);
-    QVERIFY(mHeading->layout()=="one_line");
+    QVERIFY(mHeading->layoutOption()=="one_line");
     QVERIFY(mText2->alignment()&Qt::AlignRight);
 }
 
--- a/phoneuis/bubblemanager2/tsrc/unit/ut_bubbleimagewidget/ut_bubbleimagewidget.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneuis/bubblemanager2/tsrc/unit/ut_bubbleimagewidget/ut_bubbleimagewidget.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -77,12 +77,13 @@
 
 void ut_BubbleImageWidget::testSetImage()
 {
-    mImage->setImage("");
-    QVERIFY(mAvatar->iconName()=="qtg_large_avatar");
+    mImage->setImageName("");
+    QVERIFY(mImage->imageName()=="qtg_large_avatar");
     QVERIFY(mAvatar->isVisible());
 
     QSignalSpy spy( mImageManager, SIGNAL(pixmapReady(QString)));
-    mImage->setImage(":/data/pixmap.png");
+    mImage->setImageName(":/data/pixmap.png");
+    QVERIFY(mImage->imageName()==":/data/pixmap.png");
     QVERIFY(mAvatar->isNull());
     QVERIFY(!mAvatar->isVisible());
     QVERIFY(spy.count()==1);
--- a/phoneuis/ussdeditor/rom/ussdeditor.iby	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneuis/ussdeditor/rom/ussdeditor.iby	Fri Sep 17 08:29:19 2010 +0300
@@ -22,7 +22,6 @@
 
 file=ABI_DIR\BUILD_DIR\ussdeditor.exe                  SHARED_LIB_DIR\ussdeditor.exe
 data=ZSYSTEM\install\ussdeditor_stub.sis               system\install\ussdeditor_stub.sis
-data=DATAZ_\resource\apps\ussdeditor.rsc               resource\apps\ussdeditor.rsc
 data=ZPRIVATE\10003a3f\import\apps\ussdeditor_reg.rsc  private\10003a3f\import\apps\ussdeditor_reg.rsc
 
 #endif
--- a/phoneuis/ussdeditor/rom/ussdeditor.pkg	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneuis/ussdeditor/rom/ussdeditor.pkg	Fri Sep 17 08:29:19 2010 +0300
@@ -28,7 +28,6 @@
 
 ; Executable and default resource files
 "/epoc32/release/armv5/urel/ussdeditor.exe"    - "!:\sys\bin\ussdeditor.exe"
-"/epoc32/data/z/resource/apps/ussdeditor.rsc"    - "!:\resource\apps\ussdeditor.rsc"
 "/epoc32/data/z/private/10003a3f/import/apps/ussdeditor_reg.rsc"    - "!:\private\10003a3f\import\apps\ussdeditor_reg.rsc"
 
 ; Manual PKG post-rules from PRO files
--- a/phoneuis/ussdeditor/rom/ussdeditor_stub.pkg	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneuis/ussdeditor/rom/ussdeditor_stub.pkg	Fri Sep 17 08:29:19 2010 +0300
@@ -27,5 +27,4 @@
 
 ; Files
 ""-"z:\sys\bin\ussdeditor.exe"
-""-"z:\resource\apps\ussdeditor.rsc"
 ""-"z:\private\10003a3f\import\apps\ussdeditor_reg.rsc"
Binary file phoneuis/ussdeditor/rom/ussdeditor_stub.sis has changed
--- a/phoneuis/ussdeditor/src/ussdeditorquery.cpp	Thu Sep 02 20:26:16 2010 +0300
+++ b/phoneuis/ussdeditor/src/ussdeditorquery.cpp	Fri Sep 17 08:29:19 2010 +0300
@@ -17,12 +17,8 @@
 */
 
 // INCLUDE FILES
-#include <hbinputeditorinterface.h>
 #include <hbaction.h>
-#include <hbinputstandardfilters.h>
-#include <hbinputfilter.h> 
-#include <hbinputstate.h> 
-#include <hbinputvkbhost.h>
+#include <hbinputmethod.h>
 #include <hbapplication.h>
 #include <cphcltussdint.h>
 
@@ -53,11 +49,9 @@
         lineEdit()->setMaxLength(KUssdEditorMaxLength);
         lineEdit()->setMaxRows(KUssdMaxNumberOfEditorLines);
         lineEdit()->setText(QString());
-        lineEdit()->setFocus();
 
         // 0-9, *, +, #
-        HbEditorInterface inputMode(lineEdit());
-        inputMode.setFilter(HbPhoneNumberFilter::instance());
+        lineEdit()->setInputMethodHints(Qt::ImhDialableCharactersOnly);
 
         mComms.appStarting();
         // Disable Ok key by default