refactoring
[framework/osp/appwidget-service.git] / src / FShell_AppWidgetContext.cpp
index 23baf02..750eb47 100644 (file)
@@ -205,12 +205,13 @@ _AppWidgetContext::OnUpdate(const String& argument)
 }
 
 result
-_AppWidgetContext::OnUpdateAsync(const String& argument)
+_AppWidgetContext::OnUpdateAsync(_AppContext* pAppContext, const String& argument)
 {
        ArrayList* pArray = new (std::nothrow) ArrayList();
        SysTryReturnResult(NID_SHELL, pArray, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY]");
 
        pArray->Construct();
+       pArray->Add(pAppContext);
        pArray->Add(this);
        pArray->Add(new String(argument));
 
@@ -245,17 +246,15 @@ _AppWidgetContext::OnForeground(void)
 
        if (__hasPendingRequest == true)
        {
-               SysLog(NID_SHELL, "There is pending update request.");
-//             OnUpdateAsync(__pendingArgument);
-               OnUpdate(__pendingArgument);
+               SysLog(NID_SHELL, "There is pending request.");
+               OnUpdateAsync(__pAppContext, __pendingArgument);
        }
        else
        {
                if (IsUpdatePeriodExpired() == true)
                {
                        SysLog(NID_SHELL, "The period is expired.");
-//                     OnUpdateAsync(L"");
-                       OnUpdate(L"");
+                       OnUpdateAsync(__pAppContext, L"");
                }
        }
 }
@@ -404,6 +403,15 @@ _AppWidgetContext::SyncRemoteBuffer(int width, int height)
 }
 
 result
+_AppWidgetContext::SyncRemoteBufferForPD(void) const
+{
+       _AppWidgetPopupContext* pPopupContext = GetAppWidgetPopup();
+       SysSecureTryReturnResult(NID_SHELL, pPopupContext , E_SYSTEM, "pPopupContext is null for (%ls)", GetProviderId().GetPointer());
+
+       return pPopupContext->SyncRemoteBuffer();
+}
+
+result
 _AppWidgetContext::SendAccessStatus(int accessStatus) const
 {
        std::unique_ptr<char[]> providerId(_StringConverter::CopyToCharArrayN(GetProviderId()));
@@ -565,4 +573,16 @@ _AppWidgetContext::AcquireRemoteBuffer(int w, int h) const
        return id;
 }
 
+int
+_AppWidgetContext::AcquireRemoteBufferForPD(int w, int h) const
+{
+       _AppWidgetPopupContext* pPopupContext = GetAppWidgetPopup();
+       SysSecureTryReturnResult(NID_SHELL, pPopupContext , E_SYSTEM, "pPopupContext is null for (%ls)", GetProviderId().GetPointer());
+
+       int bufferId = pPopupContext->AcquireRemoteBuffer(w, h);
+       SysSecureTryReturnResult(NID_SHELL, bufferId != -1, E_SYSTEM, "Failed to AcquireRemoteBuffer for (%ls)", GetProviderId().GetPointer());
+
+       return bufferId;
+}
+
 }}}  // Tizen::Shell::App