typedef Signal<void(WindowEffectState, WindowEffectType)> TransitionEffectEventSignalType;
typedef Signal<void()> KeyboardRepeatSettingsChangedSignalType;
typedef Signal<void()> WindowRedrawRequestSignalType;
+ typedef Signal<void(Dali::PositionSize&)> UpdatePositionSizeType;
// Input events
typedef Signal<void(Integration::Point&, uint32_t)> TouchEventSignalType;
virtual void SetType(Dali::WindowType type) = 0;
/**
+ * @copydoc Dali::Window::GetType()
+ */
+ virtual Dali::WindowType GetType() const = 0;
+
+ /**
* @copydoc Dali::Window::SetNotificationLevel()
*/
virtual Dali::WindowOperationResult SetNotificationLevel(Dali::WindowNotificationLevel level) = 0;
virtual void WindowRotationCompleted(int degree, int width, int height) = 0;
/**
+ * @brief starts the window is moved by display server
+ */
+ virtual void RequestMoveToServer() = 0;
+
+ /**
+ * @brief starts the window is resized by display server
+ *
+ * @param[in] direction It is direction of the started edge/side.
+ */
+ virtual void RequestResizeToServer(WindowResizeDirection direction) = 0;
+
+ /**
+ * @brief Enables the floating mode of window.
+ *
+ * The floating mode is to support making partial size window easliy.
+ * It is useful to make popup style window
+ * and this window is always upper than the other normal window.
+ *
+ * A special display server(as a Tizen display server) supports this mode.
+ *
+ * @param[in] enable Enable floating mode or not.
+ */
+ virtual void EnableFloatingMode(bool enable) = 0;
+
+ /**
+ * @brief Gets whether floating mode is enabled or not.
+ */
+ virtual bool IsFloatingModeEnabled() const = 0;
+
+ /**
* @copydoc Dali::Window::SetTransparency()
*/
virtual void SetTransparency(bool transparent) = 0;
*/
virtual int CreateFramePresentedSyncFence() = 0;
+ /**
+ * @copydoc Dali::Window::SetPositionSizeWithAngle()
+ */
+ virtual void SetPositionSizeWithAngle(PositionSize positionSize, int angle) = 0;
+
+ /**
+ * @brief Initialize for Ime window.
+ * It should be called when the window is only used for Ime keyboard window.
+ */
+ virtual void InitializeIme() = 0;
+
+ /**
+ * @brief Send the signal to display server for Ime Window is ready to render.
+ * It is used for compositing by display server.
+ */
+ virtual void ImeWindowReadyToRender() = 0;
+
// Signals
/**
*/
WindowRedrawRequestSignalType& WindowRedrawRequestSignal();
+ /**
+ * @brief This signal is emitted when the window is resized or moved by display server.
+ */
+ UpdatePositionSizeType& UpdatePositionSizeSignal();
+
protected:
// Undefined
WindowBase(const WindowBase&) = delete;
TransitionEffectEventSignalType mTransitionEffectEventSignal;
KeyboardRepeatSettingsChangedSignalType mKeyboardRepeatSettingsChangedSignal;
WindowRedrawRequestSignalType mWindowRedrawRequestSignal;
+ UpdatePositionSizeType mUpdatePositionSizeSignal;
};
} // namespace Adaptor