BuildRequires: pkgconfig(capi-system-runtime-info)
BuildRequires: pkgconfig(bundle)
BuildRequires: pkgconfig(appcore-common)
+BuildRequires: pkgconfig(sensor)
BuildRequires: pkgconfig(appsvc)
BuildRequires: pkgconfig(cairo)
BuildRequires: pkgconfig(chromium)
/usr/include
/usr/include/appfw
/usr/include/appcore
+ /usr/include/sensor
/usr/include/glib-2.0
/usr/lib/glib-2.0/include
/usr/include/cairo
status = ORIENTATION_STATUS_PORTRAIT_REVERSE;
break;
case _CONTROL_ROTATION_90:
- status = ORIENTATION_STATUS_LANDSCAPE_REVERSE;
+ status = ORIENTATION_STATUS_LANDSCAPE_REVERSE;
break;
}
}
switch (mode)
{
case ORIENTATION_PORTRAIT:
- status = ORIENTATION_STATUS_PORTRAIT;
+ status = ORIENTATION_STATUS_PORTRAIT;
break;
case ORIENTATION_LANDSCAPE:
- status = ORIENTATION_STATUS_LANDSCAPE;
+ status = ORIENTATION_STATUS_LANDSCAPE;
break;
case ORIENTATION_PORTRAIT_REVERSE:
status = ORIENTATION_STATUS_PORTRAIT_REVERSE;
#include <new>
#include <app.h>
+#include <sensor.h>
+#include <sensor_accel.h>
#include <runtime_info.h>
#include <Ecore_X.h>
#include <Elementary.h>
else
{
#if defined(WINDOW_BASE_ROTATE)
- int degree = app_get_device_orientation();
- SysLog(NID_UI, "[Window Manager Rotation] device_orientation = %d", degree);
+// int degree = app_get_device_orientation();
- return ::Convert(degree);
+ unsigned long rotationState = 0;
+ int ret = sf_check_rotation(&rotationState);
+ int device_rotation = 0;
+
+ if (ret == 0)
+ {
+ switch (rotationState)
+ {
+ case ROTATION_EVENT_0:
+ device_rotation = 0;
+ break;
+ case ROTATION_EVENT_90:
+ device_rotation = 270;
+ break;
+ case ROTATION_EVENT_180:
+ device_rotation = 180;
+ break;
+ case ROTATION_EVENT_270:
+ device_rotation = 90;
+ break;
+ default:
+ break;
+ }
+
+ SysLog(NID_UI, "[Window Manager Rotation] device_rotation = %d", device_rotation);
+ }
+ else
+ {
+ SysLog(NID_UI, "[Window Manager Rotation] device_rotation = error");
+ }
+
+ return ::Convert(device_rotation);
#else
return __screenRotation;
#endif
if (pRootWindow)
{
pEcoreEvas->RotateWindow(*pRootWindow, ::Convert(screenRotation));
- //pRootWindow->SetRotation(::Convert(screenRotation));
+ pRootWindow->SetRotation(::Convert(screenRotation));
}
#if !defined(WINDOW_BASE_ROTATE)
// Request rotation to window manager -> async -> Update VEs
// Window(not rotation) -> sync -> UpdateVEs
+ SysLog(NID_UI, "[Window Manager Rotation] ---------- Update : START ----------");
+
_ControlImplManager* pImplManager = _ControlImplManager::GetInstance();
SysAssert(pImplManager);
__draw = draw;
// }
+
+ SysLog(NID_UI, "[Window Manager Rotation] ---------- Update : END ----------");
#else
_ControlImplManager* pImplManager = _ControlImplManager::GetInstance();
SysAssert(pImplManager);
// Update window bounds
// Invalidate
+ SysLog(NID_UI, "[Window Manager Rotation] ---------- UpdateOrientation : START ----------");
+
_EcoreEvas* pEcoreEvas = GetEcoreEvasMgr()->GetEcoreEvas();
if (!pEcoreEvas)
{
Rectangle bounds = pRootWindow->GetBounds();
SysLog(NID_UI, "[Window Manager Rotation][Window : 0x%x, rot = %d, %d, %d, %d, %d] Update Orientation.", pRootWindow->GetNativeHandle(), rotation, bounds.x, bounds.y, bounds.width, bounds.height);
+
+ SysLog(NID_UI, "[Window Manager Rotation] ---------- UpdateOrientation : END ----------");
}
#endif
#include "FUiCtrl_FooterImpl.h"
#include "FUiCtrl_Form.h"
#include "FUiCtrl_Frame.h"
+#include "FUiCtrl_FrameImpl.h"
#include "FUiCtrl_TabImpl.h"
#include "FUiCtrl_Indicator.h"
const FloatDimension portraitSize = _ControlManager::GetInstance()->_ControlManager::GetScreenSizeF();
const FloatDimension landscapeSize = FloatDimension(portraitSize.height, portraitSize.width);
+ // Adjust the position of the partial Frame.
+ _FrameImpl* pFrameImpl = dynamic_cast<_FrameImpl*>(GetParent());
+ if (pFrameImpl)
+ {
+ FrameShowMode frameShowMode = pFrameImpl->GetShowMode();
+
+ if ((frameShowMode == FRAME_SHOW_MODE_PARTIAL_SCREEN) || (frameShowMode == FRAME_SHOW_MODE_PARTIAL_SCREEN_FLOATING))
+ {
+ bool movable = pFrameImpl->GetCore().IsMovable();
+ pFrameImpl->GetCore().SetMovable(true);
+
+ FloatPoint prevPoint = pFrameImpl->GetPositionF();
+ FloatPoint curPoint(0.0f, 0.0f);
+
+ if (orientation == _CONTROL_ORIENTATION_PORTRAIT)
+ {
+ curPoint.x = portraitSize.width / portraitSize.height * prevPoint.x;
+ curPoint.y = portraitSize.height / portraitSize.width * prevPoint.y;
+ }
+ else
+ {
+ curPoint.x = portraitSize.height / portraitSize.width * prevPoint.x;
+ curPoint.y = portraitSize.width / portraitSize.height * prevPoint.y;
+ }
+
+ pFrameImpl->SetPosition(curPoint);
+
+ pFrameImpl->GetCore().SetMovable(movable);
+ }
+ }
+
// Change layout.
_ContainerImpl::OnChangeLayout(orientation);
SysTryReturnVoidResult(NID_UI_CTRL, GetLastResult() == E_SUCCESS, GetLastResult(), "[%s] Propagating.", GetErrorMessage(GetLastResult()));
SysAssert(pCoreManager);
const FloatDimension& screenSize = pCoreManager->GetScreenSizeF();
- if (GetCore().GetShowMode() == FRAME_SHOW_MODE_FULL_SCREEN)
+ FrameShowMode frameShowMode = GetCore().GetShowMode();
+
+ if (frameShowMode == FRAME_SHOW_MODE_FULL_SCREEN)
{
if (orientation == _CONTROL_ORIENTATION_PORTRAIT)
{
SetSize(FloatDimension(screenSize.height, screenSize.width));
}
}
+ else if ((frameShowMode == FRAME_SHOW_MODE_PARTIAL_SCREEN) || (frameShowMode == FRAME_SHOW_MODE_PARTIAL_SCREEN_FLOATING))
+ {
+ // Adjust the position of the partial Frame.
+ bool movable = IsMovable();
+ SetMovable(true);
+
+ FloatPoint prevPoint = GetPositionF();
+ FloatPoint curPoint(0.0f, 0.0f);
+
+ if (orientation == _CONTROL_ORIENTATION_PORTRAIT)
+ {
+ curPoint.x = screenSize.width / screenSize.height * prevPoint.x;
+ curPoint.y = screenSize.height / screenSize.width * prevPoint.y;
+ }
+ else
+ {
+ curPoint.x = screenSize.height / screenSize.width * prevPoint.x;
+ curPoint.y = screenSize.width / screenSize.height * prevPoint.y;
+ }
+
+ SetPosition(curPoint);
+
+ SetMovable(movable);
+ }
SetResizable(resizable);
}
TARGET_LINK_LIBRARIES(${this_target} "-lcapi-appfw-application" )
TARGET_LINK_LIBRARIES(${this_target} "-lappcore-common" )
TARGET_LINK_LIBRARIES(${this_target} "-lappsvc" )
+TARGET_LINK_LIBRARIES(${this_target} "-lsensor" )
TARGET_LINK_LIBRARIES(${this_target} "-lelementary" )
TARGET_LINK_LIBRARIES(${this_target} "-lX11" )
TARGET_LINK_LIBRARIES(${this_target} "-lXdamage" )