[Tizen] Add WebView APIs for fullscreen, text found, etc.
[platform/core/uifw/dali-adaptor.git] / dali / devel-api / adaptor-framework / web-engine / web-engine-plugin.h
index 4c631bf..6d900cb 100755 (executable)
@@ -166,6 +166,11 @@ public:
   using WebEngineNavigationPolicyDecidedCallback = std::function<void(std::unique_ptr<Dali::WebEnginePolicyDecision>)>;
 
   /**
+   * @brief WebView callback related with new window policy would be decided.
+   */
+  using WebEngineNewWindowPolicyDecidedCallback = std::function<void(std::unique_ptr<Dali::WebEnginePolicyDecision>)>;
+
+  /**
    * @brief WebView callback related with a new window would be created.
    */
   using WebEngineNewWindowCreatedCallback = std::function<void(Dali::WebEnginePlugin*&)>;
@@ -176,6 +181,21 @@ public:
   using WebEngineHitTestCreatedCallback = std::function<bool(std::unique_ptr<Dali::WebEngineHitTest>)>;
 
   /**
+   * @brief WebView callback called after fullscreen is entered.
+   */
+  using WebEngineFullscreenEnteredCallback = std::function<void(void)>;
+
+  /**
+   * @brief WebView callback called after fullscreen is exited.
+   */
+  using WebEngineFullscreenExitedCallback = std::function<void(void)>;
+
+  /**
+   * @brief WebView callback called after text is found.
+   */
+  using WebEngineTextFoundCallback = std::function<void(uint32_t)>;
+
+  /**
    * @brief The callback to be called when the web engine received a plain text of current web page.
    */
   using PlainTextReceivedCallback = std::function<void(const std::string&)>;
@@ -757,6 +777,11 @@ public:
   virtual bool SendWheelEvent(const WheelEvent& event) = 0;
 
   /**
+   * @brief Exit fullscreen.
+   */
+  virtual void ExitFullscreen() = 0;
+
+  /**
    * @brief Callback to be called when frame would be rendered.
    *
    * @param[in] callback
@@ -834,6 +859,13 @@ public:
   virtual void RegisterNavigationPolicyDecidedCallback(WebEngineNavigationPolicyDecidedCallback callback) = 0;
 
   /**
+   * @brief Callback to be called when new window policy would be decided.
+   *
+   * @param[in] callback
+   */
+  virtual void RegisterNewWindowPolicyDecidedCallback(WebEngineNewWindowPolicyDecidedCallback callback) = 0;
+
+  /**
    * @brief Callback to be called when a new window would be created.
    *
    * @param[in] callback
@@ -876,6 +908,27 @@ public:
   virtual void RegisterContextMenuHiddenCallback(WebEngineContextMenuHiddenCallback callback) = 0;
 
   /**
+   * @brief Callback to be called when fullscreen would be entered.
+   *
+   * @param[in] callback
+   */
+  virtual void RegisterFullscreenEnteredCallback(WebEngineFullscreenEnteredCallback callback) = 0;
+
+  /**
+   * @brief Callback to be called when fullscreen would be exited.
+   *
+   * @param[in] callback
+   */
+  virtual void RegisterFullscreenExitedCallback(WebEngineFullscreenExitedCallback callback) = 0;
+
+  /**
+   * @brief Callback to be called when text would be found.
+   *
+   * @param[in] callback
+   */
+  virtual void RegisterTextFoundCallback(WebEngineTextFoundCallback callback) = 0;
+
+  /**
    * @brief Get a plain text of current web page asynchronously.
    *
    * @param[in] callback The callback function called asynchronously.