diff -r efd4f1afd43e -r d620048b4810 emailuis/uicomponents/src/fstreevisualizerbase.cpp --- a/emailuis/uicomponents/src/fstreevisualizerbase.cpp Mon Jun 21 15:20:54 2010 +0300 +++ b/emailuis/uicomponents/src/fstreevisualizerbase.cpp Thu Jul 15 18:19:25 2010 +0300 @@ -1530,7 +1530,7 @@ // void CFsTreeVisualizerBase::SetFocusVisibility( TBool aShow ) { - if ( iFocusVisible != aShow ) + if ( ( iFocusVisible && !aShow ) || ( !iFocusVisible && aShow ) ) { iFocusVisible = aShow; TRAP_IGNORE( @@ -1549,9 +1549,9 @@ if (iDragHandler && iOwnerControl->ControlGroup()->AcceptInput()) { TPointerEvent::TType type = aEvent.PointerEvent().iType; - const TInt id(EventItemId(aEvent)); + const TFsTreeItemId id(EventItemId(aEvent)); INFO_1("visual: $%x", aEvent.Visual()); - if (KErrNotFound != id || type == TPointerEvent::EDrag || + if ( KFsTreeNoneID != id || type == TPointerEvent::EDrag || type == TPointerEvent::EButtonRepeat || type == TPointerEvent::EButton1Up || type == TPointerEvent::EButton1Down) @@ -1597,6 +1597,7 @@ }*/ iDragHandler->PointerUp( aEvent.PointerEvent(), id ); iFlags.Clear(EIgnorePointerUpAction); + iFlags.Clear( EListPanning ); break; } case TPointerEvent::EDrag: @@ -1684,7 +1685,7 @@ TFsTreeItemId CFsTreeVisualizerBase::VisualItemId(const CAlfVisual* aVisual) const { FUNC_LOG; - TInt itemId(KErrNotFound); + TFsTreeItemId itemId( KFsTreeNoneID ); if (aVisual) { aVisual->PropertyFindInteger(KPropertyItemId(), &itemId); @@ -2887,7 +2888,7 @@ void CFsTreeVisualizerBase::RemoveItemL(TFsTreeItemId aItemId) { FUNC_LOG; - TInt removedindex = iWorld.IndexOfItem(aItemId); + const TInt removedindex(iWorld.IndexOfItem(aItemId)); iWorld.RemoveL(aItemId); if (iFocusedItem == aItemId) { @@ -5051,7 +5052,9 @@ void CFsTreeVisualizerBase::SetPanningPosition(const TPoint& aDelta) { FUNC_LOG; - iPhysics->RegisterPanningPosition(aDelta); + iPhysics->RegisterPanningPosition(aDelta); + iFlags.Set( EListPanning ); + SetFocusVisibility( EFalse ); } // --------------------------------------------------------------------------- @@ -5228,7 +5231,7 @@ // CFsTreeVisualizerBase::CDragHandler* CFsTreeVisualizerBase::CDragHandler::NewL( CFsTreeVisualizerBase& aTree, const TInt aHighlightTimeout, - const TBitFlagsT& aFlags) + const TBitFlags& aFlags) { FUNC_LOG; CDragHandler* self = new (ELeave) CDragHandler(aTree, aHighlightTimeout, @@ -5427,7 +5430,7 @@ // CFsTreeVisualizerBase::CDragHandler::CDragHandler( CFsTreeVisualizerBase& aTree, const TInt aHighlightTimeout, - const TBitFlagsT& aFlags) : + const TBitFlags& aFlags) : iTree(aTree), iHighlightTimeout(aHighlightTimeout * 1000), iTreeVisualizerFlags(aFlags) { @@ -5462,12 +5465,7 @@ // TBool CFsTreeVisualizerBase::IsFocusShown() { - if( iTouchPressed || iFocusVisible ) - { - return ETrue; - } - - return EFalse; + return ( iTouchPressed || iFocusVisible ) && iFlags.IsClear( EListPanning ); }