}
+void
+_UiAppImpl::RaiseFrame(Frame& frame)
+{
+ _FrameImpl* pFrameImpl = _FrameImpl::GetInstance(frame);
+
+ if (pFrameImpl)
+ {
+ // [N_SE-39536] Window raise is requested as synchronous due to B/S issue
+ _EcoreEvas* pEvas = GetEcoreEvasMgr()->GetEcoreEvas();
+ pEvas->ActivateWindow(pFrameImpl->GetCore());
+ }
+}
+
+
static int
TransientResponseCb(void* pData)
{
// [FIXME] Multi window handling
if (pFrameImpl != null)
{
- // N_SE-24616, N_SE-24383 for OnForground() and visibility issue
- OnResume();
-
//pEvas->ActivateWindow(pFrameImpl->GetCore());
unique_ptr<ArrayList> pEventArgs(new (std::nothrow) ArrayList());
pString.release();
pEventArgs.release();
+
+ // N_SE-24616, N_SE-24383 for OnForground() and visibility issue
+ OnResume();
}
}
}
}
-void
-_UiAppImpl::OnDeviceOrientationChanged(app_device_orientation_e orientation)
+result
+_UiAppImpl::OnFrameRaiseRequested(void)
{
- SysLog(NID_APP, "System device orientation event.");
+ SysLog(NID_APP, "Frame raise is requested.");
- _ControlImplManager* pControlImplManager = _ControlImplManager::GetInstance();
- if (pControlImplManager == null)
+ Frame* pFrame = dynamic_cast<Frame*>(__pFrameList->GetAt(0));
+ if (pFrame == null)
+ {
+ SysLog(NID_APP, "No frame is available.");
+ return E_SUCCESS;
+ }
+
+ if (__appUiState == APP_UI_STATE_FOREGROUND)
{
- SysLog(NID_APP, "Device orientation event arrived too early.");
- return;
+ SysLog(NID_APP, "Already foreground state.");
+ return E_SUCCESS;
}
- pControlImplManager->OnScreenRotated(orientation);
+ RaiseFrame(*pFrame);
+ return E_SUCCESS;
}
#ifndef _FAPP_INTERNAL_UI_APP_IMPL_H_
#define _FAPP_INTERNAL_UI_APP_IMPL_H_
-#include <app.h>
-
#include <FAppUiApp.h>
#include <FBaseRtIEventListener.h>
virtual void OnTerminate(void);
/**
- * Called when an orintation event occurs.
- *
- * @since 2.1
- * @param[in] orientation The information about the orientation event
+ * Called when the window is requested to be raised
*/
- virtual void OnDeviceOrientationChanged(app_device_orientation_e orientation);
+ virtual result OnFrameRaiseRequested(void);
/**
* Called when the application's state changes to Tizen::App::AppState::INITIALIZING. @n
void OnBackground(void);
+ /**
+ * Requests to raise current frame
+ */
+ void RaiseFrame(Tizen::Ui::Controls::Frame& frame);
+
private:
static _UiAppImpl* __pUiAppImpl;