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*&)>;
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&)>;
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
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
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.
return GetImplementation(*this).SendWheelEvent(event);
}
+void WebEngine::ExitFullscreen()
+{
+ GetImplementation(*this).ExitFullscreen();
+}
+
void WebEngine::SetFocus(bool focused)
{
GetImplementation(*this).SetFocus(focused);
GetImplementation(*this).RegisterNavigationPolicyDecidedCallback(callback);
}
+void WebEngine::RegisterNewWindowPolicyDecidedCallback(Dali::WebEnginePlugin::WebEngineNewWindowPolicyDecidedCallback callback)
+{
+ GetImplementation(*this).RegisterNewWindowPolicyDecidedCallback(callback);
+}
+
void WebEngine::RegisterNewWindowCreatedCallback(Dali::WebEnginePlugin::WebEngineNewWindowCreatedCallback callback)
{
GetImplementation(*this).RegisterNewWindowCreatedCallback(callback);
GetImplementation(*this).RegisterContextMenuHiddenCallback(callback);
}
+void WebEngine::RegisterFullscreenEnteredCallback(Dali::WebEnginePlugin::WebEngineFullscreenEnteredCallback callback)
+{
+ GetImplementation(*this).RegisterFullscreenEnteredCallback(callback);
+}
+
+void WebEngine::RegisterFullscreenExitedCallback(Dali::WebEnginePlugin::WebEngineFullscreenExitedCallback callback)
+{
+ GetImplementation(*this).RegisterFullscreenExitedCallback(callback);
+}
+
+void WebEngine::RegisterTextFoundCallback(Dali::WebEnginePlugin::WebEngineTextFoundCallback callback)
+{
+ GetImplementation(*this).RegisterTextFoundCallback(callback);
+}
+
void WebEngine::GetPlainTextAsynchronously(Dali::WebEnginePlugin::PlainTextReceivedCallback callback)
{
GetImplementation(*this).GetPlainTextAsynchronously(callback);
bool SendWheelEvent(const WheelEvent& event);
/**
+ * @brief Exit full-screen.
+ */
+ void ExitFullscreen();
+
+ /**
* @brief Callback to be called when frame would be rendered.
*
* @param[in] callback
void RegisterNavigationPolicyDecidedCallback(Dali::WebEnginePlugin::WebEngineNavigationPolicyDecidedCallback callback);
/**
+ * @brief Callback to be called when new window policy would be decided.
+ *
+ * @param[in] callback
+ */
+ void RegisterNewWindowPolicyDecidedCallback(Dali::WebEnginePlugin::WebEngineNewWindowPolicyDecidedCallback callback);
+
+ /**
* @brief Callback to be called when a new window would be created.
*
* @param[in] callback
void RegisterContextMenuHiddenCallback(Dali::WebEnginePlugin::WebEngineContextMenuHiddenCallback callback);
/**
+ * @brief Callback to be called when fullscreen would be entered.
+ *
+ * @param[in] callback
+ */
+ void RegisterFullscreenEnteredCallback(Dali::WebEnginePlugin::WebEngineFullscreenEnteredCallback callback);
+
+ /**
+ * @brief Callback to be called when fullscreen would be exited.
+ *
+ * @param[in] callback
+ */
+ void RegisterFullscreenExitedCallback(Dali::WebEnginePlugin::WebEngineFullscreenExitedCallback callback);
+
+ /**
+ * @brief Callback to be called when text would be found.
+ *
+ * @param[in] callback
+ */
+ void RegisterTextFoundCallback(Dali::WebEnginePlugin::WebEngineTextFoundCallback callback);
+
+ /**
* @brief Get a plain text of current web page asynchronously.
*
* @param[in] callback The callback function called asynchronously.
return mPlugin->SendWheelEvent(event);
}
+void WebEngine::ExitFullscreen()
+{
+ mPlugin->ExitFullscreen();
+}
+
void WebEngine::RegisterFrameRenderedCallback(Dali::WebEnginePlugin::WebEngineFrameRenderedCallback callback)
{
mPlugin->RegisterFrameRenderedCallback(callback);
mPlugin->RegisterNavigationPolicyDecidedCallback(callback);
}
+void WebEngine::RegisterNewWindowPolicyDecidedCallback(Dali::WebEnginePlugin::WebEngineNewWindowPolicyDecidedCallback callback)
+{
+ mPlugin->RegisterNewWindowPolicyDecidedCallback(callback);
+}
+
void WebEngine::RegisterNewWindowCreatedCallback(Dali::WebEnginePlugin::WebEngineNewWindowCreatedCallback callback)
{
mPlugin->RegisterNewWindowCreatedCallback(callback);
mPlugin->RegisterContextMenuHiddenCallback(callback);
}
+void WebEngine::RegisterFullscreenEnteredCallback(Dali::WebEnginePlugin::WebEngineFullscreenEnteredCallback callback)
+{
+ mPlugin->RegisterFullscreenEnteredCallback(callback);
+}
+
+void WebEngine::RegisterFullscreenExitedCallback(Dali::WebEnginePlugin::WebEngineFullscreenExitedCallback callback)
+{
+ mPlugin->RegisterFullscreenExitedCallback(callback);
+}
+
+void WebEngine::RegisterTextFoundCallback(Dali::WebEnginePlugin::WebEngineTextFoundCallback callback)
+{
+ mPlugin->RegisterTextFoundCallback(callback);
+}
+
void WebEngine::GetPlainTextAsynchronously(Dali::WebEnginePlugin::PlainTextReceivedCallback callback)
{
mPlugin->GetPlainTextAsynchronously(callback);
bool SendWheelEvent(const Dali::WheelEvent& event);
/**
+ * @copydoc Dali::WebEngine::ExitFullscreen()
+ */
+ void ExitFullscreen();
+
+ /**
@copydoc Dali::WebEngine::RegisterFrameRenderedCallback()
*/
void RegisterFrameRenderedCallback(Dali::WebEnginePlugin::WebEngineFrameRenderedCallback callback);
void RegisterNavigationPolicyDecidedCallback(Dali::WebEnginePlugin::WebEngineNavigationPolicyDecidedCallback callback);
/**
+ @copydoc Dali::WebEngine::RegisterNewWindowPolicyDecidedCallback()
+ */
+ void RegisterNewWindowPolicyDecidedCallback(Dali::WebEnginePlugin::WebEngineNewWindowPolicyDecidedCallback callback);
+
+ /**
@copydoc Dali::WebEngine::RegisterNewWindowCreatedCallback()
*/
void RegisterNewWindowCreatedCallback(Dali::WebEnginePlugin::WebEngineNewWindowCreatedCallback callback);
void RegisterContextMenuHiddenCallback(Dali::WebEnginePlugin::WebEngineContextMenuHiddenCallback callback);
/**
+ * @copydoc Dali::WebEngine::RegisterFullscreenEnteredCallback()
+ */
+ void RegisterFullscreenEnteredCallback(Dali::WebEnginePlugin::WebEngineFullscreenEnteredCallback callback);
+
+ /**
+ * @copydoc Dali::WebEngine::RegisterFullscreenExitedCallback()
+ */
+ void RegisterFullscreenExitedCallback(Dali::WebEnginePlugin::WebEngineFullscreenExitedCallback callback);
+
+ /**
+ * @copydoc Dali::WebEngine::RegisterTextFoundCallback()
+ */
+ void RegisterTextFoundCallback(Dali::WebEnginePlugin::WebEngineTextFoundCallback callback);
+
+ /**
* @copydoc Dali::WebEngine::GetPlainTextAsynchronously()
*/
void GetPlainTextAsynchronously(Dali::WebEnginePlugin::PlainTextReceivedCallback callback);