#include <FBaseSysLog.h>
#include <FBase_StringConverter.h>
#include <FGrpRectangle.h>
+#include <FUiAnim_DisplayManager.h>
#include "FUi_AccessibilityManager.h"
#include "FUi_Window.h"
#include "FShell_AppWidgetBuffer.h"
: __isReleased(false)
, __size(size)
, __pAppWidgetBuffer(new (std::nothrow) _AppWidgetBuffer)
+ , __type(0)
, __pEcoreEvas(null)
, __pEvasObject(null)
, __providerId(providerId)
SysTryReturn(NID_SHELL, pEvas, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory is insufficient.");
evas_event_callback_add(pEvas, EVAS_CALLBACK_RENDER_PRE, PreRender, this);
-// evas_event_callback_add(pEvas, EVAS_CALLBACK_RENDER_POST, PostRender, this);
+ evas_event_callback_add(pEvas, EVAS_CALLBACK_RENDER_POST, PostRender, this);
unique_ptr<Evas_Object, _EvasObjectDeleter> pEvasObject(evas_object_rectangle_add(pEvas));
SysTryReturn(NID_SHELL, pEvasObject, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory is insufficient.");
SysTryReturnVoidResult(NID_SHELL, r == E_SUCCESS, r, "[%s] Propagating.", GetErrorMessage(r));
}
- SysLog(NID_SHELL, "ENTER");
+ SysLog(NID_SHELL, "ENTER (%d)", __type);
r = Sync(__size);
SysTryReturnVoidResult(NID_SHELL, r == E_SUCCESS, r, "[%s] Propagating.", GetErrorMessage(r));
void
_AppWidgetLayer::OnNativeCanvasPreRendered(void)
{
- SysLog(NID_SHELL, "ENTER");
+ SysLog(NID_SHELL, "ENTER (%d)", __type);
__pAppWidgetBuffer->LockBuffer();
+
+ if(_DisplayManager::GetInstance())
+ {
+ _DisplayManager::GetInstance()->Render(*GetRootVisualElement());
+ }
}
void
_AppWidgetLayer::OnNativeCanvasPostRendered(void)
{
+ SysLog(NID_SHELL, "ENTER (%d)", __type);
+
+ __pAppWidgetBuffer->UnlockBuffer();
}
result
SysTryReturn(NID_SHELL, !__providerId.IsEmpty(), E_INVALID_ARG, E_INVALID_ARG, "[E_INVALID_ARG] The argument is invalid.");
#if defined(_DUMP_BUFFER)
- __pAppWidgetBuffer->Dump("Box");
+ if (__type == 0)
+ {
+ __pAppWidgetBuffer->Dump("Box");
+ }
+ else
+ {
+ __pAppWidgetBuffer->Dump("Popup");
+ }
#endif //_DUMP_BUFFER
result r = _AppWidgetProviderManagerImpl::GetInstance()->RequestSyncSharedMemory(__providerId, size.width, size.height);
{
bool needed = IsFlushNeeded();
+ __pAppWidgetBuffer->LockBuffer();
+
if (needed)
{
Evas* pEvas = ecore_evas_get(__pEcoreEvas.get());