// INTERNAL INCLUDES
#include <dali/devel-api/adaptor-framework/mouse-in-out-event.h>
#include <dali/devel-api/adaptor-framework/mouse-relative-event.h>
+#include <dali/devel-api/adaptor-framework/pointer-constraints-event.h>
#include <dali/public-api/adaptor-framework/window-enumerations.h>
#include <dali/public-api/adaptor-framework/window.h>
#include <dali/public-api/common/vector-wrapper.h>
{
class KeyEvent;
class TouchEvent;
+class HoverEvent;
class WheelEvent;
class RenderTaskList;
struct TouchPoint;
typedef Signal<void(Window, Dali::Window::WindowPosition)> MoveCompletedSignalType; ///< Window Moved by Server signal type
typedef Signal<void(Window, Dali::Window::WindowSize)> ResizeCompletedSignalType; ///< Window Resized by Server signal type
typedef Signal<void(WindowInsetsPartType, WindowInsetsPartState, const Extents&)> InsetsChangedSignalType; ///< InsetsChanged signal type
+typedef Signal<void(Window, const Dali::DevelWindow::PointerConstraintsEvent&)> PointerConstraintsSignalType; ///< PointerConstraintsEvent signal type
/**
* @brief Creates an initialized handle to a new Window.
DALI_ADAPTOR_API const TouchEvent& GetLastTouchEvent(Window window);
/**
+ * @brief Gets the last hover event the window gets.
+ *
+ * @param[in] window The window instance.
+ * @return The last hover event the window gets.
+ * @note It returns the raw event the window gets. There is no hit-actor and local position information.
+ */
+DALI_ADAPTOR_API const HoverEvent& GetLastHoverEvent(Window window);
+
+/**
* @brief Sets the pointer constraints lock.
*
* @param[in] window The window instance.
DALI_ADAPTOR_API bool KeyboardUnGrab(Window window);
/**
+ * @brief Sets full screen sized window.
+ * If full screen size is set for the window,
+ * window will be resized with full screen size.
+ * In addition, the full screen sized window's z-order is the highest.
+ *
+ * @param[in] window The window instance.
+ * @param[in] fullscreen true to set fullscreen, false to unset.
+ */
+DALI_ADAPTOR_API void SetFullScreen(Window window, bool fullscreen);
+
+/**
+ * @brief Gets whether the full screen sized window or not
+ *
+ * @param[in] window The window instance.
+ * @return Returns true if the full screen sized window is.
+ */
+DALI_ADAPTOR_API bool GetFullScreen(Window window);
+
+/**
+ * @brief Enables or disables front buffer rendering.
+ *
+ * @param[in] window The window instance.
+ * @param[in] enable true to enable front buffer rendering, false to disable.
+ */
+DALI_ADAPTOR_API void SetFrontBufferRendering(Window window, bool enable);
+
+/**
+ * @brief Gets whether front buffer rendering is enabled.
+ *
+ * @param[in] window The window instance.
+ * @return Whether front buffer rendering has been enabled or not.
+ */
+DALI_ADAPTOR_API bool GetFrontBufferRendering(Window window);
+
+/**
* @brief The user would connect to this signal to intercept a KeyEvent at window.
*
* Intercepts KeyEvents in the window before dispatching KeyEvents to the control.
*/
DALI_ADAPTOR_API InsetsChangedSignalType& InsetsChangedSignal(Window window);
+/**
+ * @brief This signal is emitted when pointer is locked/unlocked
+ *
+ * @param[in] window The window instance
+ * @return The signal to connect to
+ */
+DALI_ADAPTOR_API PointerConstraintsSignalType& PointerConstraintsSignal(Window window);
+
} // namespace DevelWindow
} // namespace Dali