, __pTouchActionTimer(null)
, __pMagneticScrollTimer(null)
, __pAnimationTimer(null)
+ , __pRunningAnimationCheckTimer(null)
, __magneticScrollAnimation()
, __isTouchAnimationEnabled(true)
, __previousTouchAnimatinEnabled(true)
, __moveTransactionId(0)
, __firstTouchMove(true)
, __firstTouchMoveDirection(ICON_LIST_VIEW_SCROLL_DIRECTION_VERTICAL)
+ , __runningAnimationBackupIndex(INVALID_INDEX)
{
}
delete __pAnimationTimer;
__pAnimationTimer = null;
+ delete __pRunningAnimationCheckTimer;
+ __pRunningAnimationCheckTimer = null;
+
if (__pRemoveItemVE != null)
{
__pRemoveItemVE->Destroy();
case LIST_REFRESH_TYPE_ITEM_MODIFY:
{
+ if (__isSelectAnimationRunning && __selectedIndex == index)
+ {
+ __runningAnimationBackupIndex = index;
+ return StartRunningAnimationCheckTimer();
+ }
+
if (__pListModel->IsLoadedItem(DEFAULT_GROUP_INDEX , index) == false)
return r;
return E_SUCCESS;
}
+result
+_IconListPresenter::StartRunningAnimationCheckTimer(void)
+{
+ result r = E_SUCCESS;
+
+ if (__pRunningAnimationCheckTimer == null)
+ {
+ __pRunningAnimationCheckTimer = new (std::nothrow) Timer;
+ SysTryReturn(NID_UI_CTRL, (__pRunningAnimationCheckTimer != null), E_OUT_OF_MEMORY, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
+
+ r = __pRunningAnimationCheckTimer->Construct(*this);
+ SysTryCatch(NID_UI, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
+ }
+ else
+ {
+ __pRunningAnimationCheckTimer->Cancel();
+ }
+
+ r = __pRunningAnimationCheckTimer->Start(10);
+ SysTryCatch(NID_UI, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
+
+ return r;
+
+CATCH:
+ ResetRunningAnimationCheckTimer();
+ return r;
+
+}
+
+result
+_IconListPresenter::ResetRunningAnimationCheckTimer(void)
+{
+ delete __pRunningAnimationCheckTimer;
+ __pRunningAnimationCheckTimer = null;
+
+ return E_SUCCESS;
+}
+
// Tizen::Ui::_ControlImpl
void
_IconListPresenter::OnBoundsChanged(void)
AddAnimation(*pItem, index);
}
+ else if (&timer == __pRunningAnimationCheckTimer)
+ {
+ if (!__isSelectAnimationRunning)
+ {
+ ResetRunningAnimationCheckTimer();
+ RefreshList(__runningAnimationBackupIndex, LIST_REFRESH_TYPE_ITEM_MODIFY);
+ __runningAnimationBackupIndex = INVALID_INDEX;
+ }
+ else
+ {
+ StartRunningAnimationCheckTimer();
+ }
+ }
}
void
result StartAnimationTimer(int delay);
result ResetAnimationTimer(void);
+ result StartRunningAnimationCheckTimer(void);
+ result ResetRunningAnimationCheckTimer(void);
+
void StartSelectAnimation(int index);
void StartCheckAnimation(int index);
result DrawCheckAnimation(int index);
Tizen::Base::Runtime::Timer* __pTouchActionTimer;
Tizen::Base::Runtime::Timer* __pMagneticScrollTimer;
Tizen::Base::Runtime::Timer* __pAnimationTimer;
+ Tizen::Base::Runtime::Timer* __pRunningAnimationCheckTimer;
_IconListUtils::MagneticScrollAnimation __magneticScrollAnimation;
bool __isTouchAnimationEnabled;
bool __previousTouchAnimatinEnabled;
bool __firstTouchMove;
IconListViewScrollDirection __firstTouchMoveDirection;
+ int __runningAnimationBackupIndex;
}; // _IconListPresenter
}}} // Tizen::Ui::Controls