#define __DALI_INTERNAL_ADAPTOR_IMPL_H__
/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
// INTERNAL INCLUDES
#include <dali/integration-api/adaptor.h>
-#include <dali/devel-api/adaptor-framework/render-surface.h>
#include <dali/public-api/adaptor-framework/tts-player.h>
-#include <dali/devel-api/adaptor-framework/imf-manager.h>
#include <dali/devel-api/adaptor-framework/clipboard.h>
#include <dali/internal/legacy/common/tizen-platform-abstraction.h>
/**
* @copydoc Dali::Adaptor::AddIdle()
*/
- virtual bool AddIdle( CallbackBase* callback, bool forceAdd );
+ virtual bool AddIdle( CallbackBase* callback, bool hasReturnValue, bool forceAdd );
/**
* @copydoc Dali::Adaptor::RemoveIdle()
*/
virtual void RemoveIdle( CallbackBase* callback );
+ /**
+ * Sets a pre-render callback.
+ */
+ void SetPreRenderCallback( CallbackBase* callback );
+
public:
/**
Any GetNativeWindowHandle();
/**
+ * Get the native display associated with the graphics backend
+ *
+ * @return A handle to the native display
+ */
+ Any GetGraphicsDisplay();
+
+ /**
* Sets use remote surface for eglSurface output
* @param[in] useRemoteSurface True if the remote surface is used
*/
/**
* Sends an notification message from main loop idle handler
*/
- void ProcessCoreEventsFromIdle();
+ bool ProcessCoreEventsFromIdle();
/**
* Gets path for data/resource storage.
*/
void SetupSystemInformation();
+ /**
+ * Adds a callback to be run when entering an idle state.
+ *
+ * A callback of the following type should be used:
+ * @code
+ * bool MyFunction();
+ * @endcode
+ * This callback will be called repeatedly as long as it returns true. A return of 0 deletes this callback.
+ */
+ bool AddIdleEnterer( CallbackBase* callback, bool forceAdd );
+
+ /**
+ * Removes a previously added the idle enterer callback.
+ */
+ void RemoveIdleEnterer( CallbackBase* callback );
+
private:
/**