Fix for DateTimeBar Focus issues
authorBhavya Kumili <bhavya.k@samsung.com>
Tue, 9 Jul 2013 06:52:36 +0000 (12:22 +0530)
committerBhavya Kumili <bhavya.k@samsung.com>
Tue, 9 Jul 2013 06:59:24 +0000 (12:29 +0530)
Change-Id: I3cad8263d02756c4c2258cd010d67c7d7025128e

src/ui/controls/FUiCtrl_DateTimeBarPresenter.cpp

index 1c475c4..8cfade2 100644 (file)
@@ -1049,6 +1049,24 @@ _DateTimeBarPresenter::OnKeyPressed(const _Control& source, const _KeyInfo& keyI
 {
        _KeyCode keyCode = keyInfo.GetKeyCode();
 
+       if (!__isFocused && keyCode == _KEY_ENTER)
+       {
+               return true;
+       }
+
+       if (!__isFocused)
+       {
+               ResetFlickAnimationTimer();
+               RemoveAllItems();
+               __pDateTimeBar->SetInitialValue(GetMinimumValue(), GetMaximumValue(), __focusedValue, __pDateTimeBar->GetSelectedBoxId());
+               __distance = (GetItemWidth() * (-1.0f));
+               LoadItems();
+               AdjustItemPosition(__distance);
+               ValidateAndAdjustStartPosition();
+               SetFocusedItemBounds();
+               __isFocused = true;
+       }
+
        switch (keyCode)
        {
                case KEY_UP:
@@ -1171,6 +1189,11 @@ _DateTimeBarPresenter::OnKeyReleased(const _Control& source, const _KeyInfo& key
 bool
 _DateTimeBarPresenter::OnTouchPressed(const _Control& source, const _TouchInfo& touchinfo)
 {
+       if (__isFocused)
+       {
+               FocusModeChanged();
+       }
+
        if (&source != __pDateTimeBar)
        {
                return false;