Fix for issue N_SE-37365
authorKunal Sinha <kunal.sinha@samsung.com>
Tue, 7 May 2013 15:43:42 +0000 (21:13 +0530)
committerKunal Sinha <kunal.sinha@samsung.com>
Tue, 7 May 2013 15:55:01 +0000 (21:25 +0530)
Change-Id: I59bad2b080a359f85c754ba7cf9f081d4ccc1b7e
Signed-off-by: Kunal Sinha <kunal.sinha@samsung.com>
src/ui/controls/FUiCtrl_TokenEdit.cpp
src/ui/controls/FUiCtrl_TokenEditPresenter.cpp
src/ui/inc/FUiCtrl_TokenEditPresenter.h

index 54355df..c7c60a5 100644 (file)
@@ -161,7 +161,7 @@ _TokenEdit::GetTokenCount(void) const
 {
        SysAssertf(__pTokenEditPresenter != null, "_TokenEditPresenter instance is null");
 
-       return __pTokenEditPresenter->GetTokenCount();
+       return __pTokenEditPresenter->GetTokenCount(true);
 }
 
 int
index 4cb4269..387e735 100644 (file)
@@ -303,6 +303,7 @@ _TokenEditPresenter::_TokenEditPresenter(void)
        , __touchPressInfo(FloatPoint(-1.0f, -1.0f))
        , __editContentFontSize(0.0f)
        , __trackTokenIndex(-1)
+       , __isAnimationInProgress(false)
 {
 }
 
@@ -1073,9 +1074,24 @@ _TokenEditPresenter::GetTokenAt(int index) const
 }
 
 int
-_TokenEditPresenter::GetTokenCount(void) const
+_TokenEditPresenter::GetTokenCount(bool aAppCalled) const
 {
-       return __pTokenList->GetCount();
+
+       if (!aAppCalled)
+       {
+               return __pTokenList->GetCount();
+       }
+       else
+       {
+               if(__isAnimationInProgress)
+               {
+                       return __pTokenList->GetCount() -1;
+               }
+               else
+               {
+                       return __pTokenList->GetCount();
+               }
+       }
 }
 
 int
@@ -3204,6 +3220,7 @@ _TokenEditPresenter::OnSurroundingTextDeleted(int offset, int charCount)
 
                                if (pTokenVisualElement && __animatingIndex >= 0)
                                {
+                                       __isAnimationInProgress = true;
                                        VisualElementAnimation* pAnimation = CreateAnimationN(*pTokenVisualElement, false);
                                        pTokenVisualElement->AddAnimation(L"TokenAnimation", *pAnimation);
                                        delete pAnimation;
@@ -3520,6 +3537,7 @@ _TokenEditPresenter::OnTouchMoved(const _Control& source, const _TouchInfo& touc
 void
 _TokenEditPresenter::OnVisualElementAnimationFinished (const Tizen::Ui::Animations::VisualElementAnimation &animation, const Tizen::Base::String &keyName, Tizen::Ui::Animations::VisualElement &target, bool completedNormally)
 {
+       __isAnimationInProgress = false;
        RemoveTokenAt(GetTokenCount() - 1);
        CalculateTokenPositionFromIndex(GetTokenCount() - 1);
 
index a782c0d..56d9fea 100644 (file)
@@ -74,7 +74,7 @@ public:
 
        Tizen::Base::String GetTokenAt(int index) const;
 
-       int GetTokenCount(void) const;
+       int GetTokenCount(bool aAppCalled = false) const;
 
        int GetSelectedTokenIndex(void) const;
 
@@ -262,6 +262,8 @@ private:
 
        int __trackTokenIndex;
 
+       bool __isAnimationInProgress;
+
 };     // _TokenEditPresenter
 
 }}} // Tizen::Ui::Controls