Fix for client rect issue
authorhyun lee <hyunn.lee@samsung.com>
Fri, 13 Sep 2013 02:59:12 +0000 (11:59 +0900)
committerhyun lee <hyunn.lee@samsung.com>
Fri, 13 Sep 2013 03:01:00 +0000 (12:01 +0900)
Change-Id: I3891839d85709a55fd4346541ac75d88ec923fca
Signed-off-by: hyun lee <hyunn.lee@samsung.com>
src/controls/FWebCtrl_WebImpl.cpp

index 8a90585..73f8320 100755 (executable)
@@ -1669,6 +1669,7 @@ OnWebKeypadStateChanged(void* pUserData, Evas_Object* pView, void* pEventInfo)
                                pImpl->GetWebKeypadEventListener()->OnWebKeypadWillOpen(*dynamic_cast< Web* >(&pImpl->GetPublic()));
                        }
                }
+
                pImpl->SetPreviousKeypadBounds(rect);
        }
        else
@@ -4955,6 +4956,15 @@ _WebImpl::OnChangeLayout(_ControlOrientation orientation)
                pWebNotification = static_cast< _WebNotification* >(pEnum->GetCurrent());
                pWebNotification->OnChangeLayout();
        }
+
+       if (IsKeypadVisible())
+       {
+               _ICoordinateSystemTransformer* pXformer = _CoordinateSystem::GetInstance()->GetInverseTransformer();
+               SysAssertf(pXformer, "Failed to get CoordinateTransformer");
+
+               _FormImpl* pFormImpl = GetParentFormImpl(dynamic_cast< _ControlImpl* >(this));
+               pFormImpl->DeflateClientRectHeight(pXformer->TransformVertical(GetPreviousKeypadBounds().height));
+       }
 }