diff -r aecbbf00d063 -r d48ab3b357f1 uifw/AvKon/src/aknchoicelist.cpp --- a/uifw/AvKon/src/aknchoicelist.cpp Tue Aug 31 15:28:30 2010 +0300 +++ b/uifw/AvKon/src/aknchoicelist.cpp Wed Sep 01 12:16:19 2010 +0100 @@ -119,7 +119,7 @@ if ( AknsUtils::AvkonSkinEnabled() ) { AknsUtils::GetCachedColor( AknsUtils::SkinInstance(), - color, KAknsIIDQsnTextColors, EAknsCIQsnTextColorsCG8 ); + color, KAknsIIDQsnTextColors, EAknsCIQsnTextColorsCG19 ); } ItemDrawer()->SetTextColor( color ); @@ -128,7 +128,7 @@ if ( AknsUtils::AvkonSkinEnabled() ) { AknsUtils::GetCachedColor( AknsUtils::SkinInstance(), - color, KAknsIIDQsnTextColors, EAknsCIQsnTextColorsCG8 ); + color, KAknsIIDQsnTextColors, EAknsCIQsnTextColorsCG19 ); } ItemDrawer()->SetHighlightedTextColor( color ); @@ -165,7 +165,8 @@ */ NONSHARABLE_CLASS( CAknChoiceListPopup ) : public CCoeControl, public MEikListBoxObserver, - MEikCommandObserver + MEikCommandObserver, + public MCoeForegroundObserver { public: CAknChoiceListPopup() : iIndex( -1 ), iCancelled( EFalse ) @@ -245,6 +246,8 @@ iAvkonAppUi->RemoveFromStack( this ); iEikonEnv->BringForwards( EFalse ); AknGlobalPopupPriorityController::ShowPopup(*this, EFalse); + DrawableWindow()->SetNonFading( EFalse ); + iCoeEnv->RemoveForegroundObserver( *this ); if ( AknLayoutUtils::PenEnabled() ) { @@ -292,9 +295,6 @@ { TRAP_IGNORE( iList->ScrollBarFrame()->SetScrollBarVisibilityL( CEikScrollBarFrame::EOff, CEikScrollBarFrame::EOff) ); - - // Enable scrolling - iList->DisableScrolling( EFalse ); } layoutRect.LayoutRect( rectParent, @@ -391,7 +391,9 @@ iEikonEnv->BringForwards( ETrue ); DrawableWindow()->SetOrdinalPosition( 0 ); AknGlobalPopupPriorityController::ShowPopup(*this, ETrue); - + DrawableWindow()->SetNonFading( ETrue ); + iCoeEnv->AddForegroundObserverL( *this ); + // this will fix possibly corrupted index if ( iIndex < iList->Model()->ItemTextArray()->MdcaCount() && iIndex >= 0 ) { @@ -469,7 +471,8 @@ if ( aKeyEvent.iScanCode == EStdKeyUpArrow || aKeyEvent.iScanCode == EStdKeyDownArrow || aKeyEvent.iScanCode == EStdKeyEnter || - aKeyEvent.iScanCode == EStdKeyDevice3 ) + aKeyEvent.iScanCode == EStdKeyDevice3 || + aKeyEvent.iScanCode == EStdKeyNkpEnter ) { return iList->OfferKeyEventL(aKeyEvent, aType); } @@ -481,6 +484,15 @@ } return EKeyWasNotConsumed; } + + void HandleGainingForeground() + { + } + + void HandleLosingForeground() + { + CloseChoiceList(); + } private: @@ -516,13 +528,6 @@ if ( AknLayoutUtils::PenEnabled() ) { - - // Make sure that scrolling is enabled for choicelist - if ( iList->ScrollingDisabled() ) - { - iList->DisableScrolling( EFalse ); - } - TRect ctrlArea = iList->Rect(); if ( aPointerEvent.iType == TPointerEvent::EButton1Down ) @@ -783,7 +788,7 @@ TRgb textColor; if ( AknsUtils::GetCachedColor( AknsUtils::SkinInstance(), textColor, - KAknsIIDQsnTextColors, EAknsCIQsnTextColorsCG8) == KErrNone ) + KAknsIIDQsnTextColors, EAknsCIQsnTextColorsCG6) == KErrNone ) { TRAP_IGNORE( AknLayoutUtils::OverrideControlColorL( *iLabel, EColorLabelText, textColor) ); @@ -1065,7 +1070,7 @@ TRgb textColor; if ( AknsUtils::GetCachedColor( AknsUtils::SkinInstance(), textColor, - KAknsIIDQsnTextColors, EAknsCIQsnTextColorsCG8) == KErrNone ) + KAknsIIDQsnTextColors, EAknsCIQsnTextColorsCG6) == KErrNone ) { TRAP_IGNORE( AknLayoutUtils::OverrideControlColorL( @@ -1128,7 +1133,7 @@ { feedback->InstantFeedback( this, - ETouchFeedbackBasicItem, + ETouchFeedbackList, aPointerEvent ); } if ( Rect().Contains( aPointerEvent.iPosition )) @@ -1156,7 +1161,7 @@ { feedback->InstantFeedback( this, - ETouchFeedbackPopupOpen, + ETouchFeedbackIncreasingPopUp, aPointerEvent ); } else @@ -1500,7 +1505,7 @@ TRgb textColor; if ( AknsUtils::GetCachedColor( AknsUtils::SkinInstance(), textColor, - KAknsIIDQsnTextColors, EAknsCIQsnTextColorsCG8) == KErrNone ) + KAknsIIDQsnTextColors, EAknsCIQsnTextColorsCG6) == KErrNone ) { TRAP_IGNORE( AknLayoutUtils::OverrideControlColorL( *iLabel, EColorLabelText, textColor) );