diff -r 94dc1107e8b2 -r 40a3f856b14d phoneapp/phoneuicontrol/src/cphonekeyeventforwarder.cpp --- a/phoneapp/phoneuicontrol/src/cphonekeyeventforwarder.cpp Thu Jul 15 18:38:16 2010 +0300 +++ b/phoneapp/phoneuicontrol/src/cphonekeyeventforwarder.cpp Thu Aug 19 09:54:27 2010 +0300 @@ -156,11 +156,18 @@ ret = OfferKeyEventBeforeControlStackL( aKeyEvent, aType ); - if ( !aKeyEvent.iRepeats ) + if ( !aKeyEvent.iRepeats && aKeyEvent.iCode != EKeyEscape ) { // Convert event. Use already converted iKeyPressedDown. TKeyEvent keyEvent = aKeyEvent; - keyEvent.iCode = iKeyPressedDown; + if ( keyEvent.iScanCode == EStdKeyApplication0 ) + { + keyEvent.iCode = EKeyApplication0; + } + else + { + keyEvent.iCode = iKeyPressedDown; + } // Do not handle dtmf tone if the type is EEventKey but we are not // expecting key up event. This happens if the key up event has been @@ -533,8 +540,8 @@ EPhoneViewIsDisplayingMenuOrDialog ) == EPhoneViewResponseSuccess ) || ( iMenu && iMenu->IsDisplayed() ); - // Consume dialer simulated key events, pass others on - return ( IsKeySimulatedByTouchDialer( aKeyEvent ) ? EKeyWasConsumed : EKeyWasNotConsumed ); + + return ( EKeyWasNotConsumed ); } // ----------------------------------------------------------- @@ -646,7 +653,7 @@ iPreviousScanCode = iScanCode; // Consume dialer simulated key events, pass others on - return ( IsKeySimulatedByTouchDialer( aKeyEvent ) ? EKeyWasConsumed : EKeyWasNotConsumed ); + return EKeyWasNotConsumed; } // ---------------------------------------------------------