X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Fdevel-api%2Fcontrols%2Fweb-view%2Fweb-view.h;h=55908e8e0838124d86147a80e5427ec6f18da896;hp=0d0904e72462bc63b5c92390593e95e05534b0db;hb=a0389a25a5ce0e8b539c75a6f37b75d3286dacef;hpb=21080c3c8107e51c71da5b319d83162a57c171b4 diff --git a/dali-toolkit/devel-api/controls/web-view/web-view.h b/dali-toolkit/devel-api/controls/web-view/web-view.h index 0d0904e..55908e8 100755 --- a/dali-toolkit/devel-api/controls/web-view/web-view.h +++ b/dali-toolkit/devel-api/controls/web-view/web-view.h @@ -2,7 +2,7 @@ #define DALI_TOOLKIT_WEB_VIEW_H /* - * Copyright (c) 2021 Samsung Electronics Co., Ltd. + * Copyright (c) 2022 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. @@ -24,7 +24,7 @@ // INTERNAL INCLUDES #include -#include +#include namespace Dali { @@ -33,9 +33,7 @@ namespace Toolkit class ImageView; class WebBackForwardList; class WebContext; -class WebContextMenu; class WebCookieManager; -class WebFormRepostDecision; class WebSettings; namespace Internal DALI_INTERNAL @@ -192,71 +190,6 @@ public: */ using WebViewScreenshotCapturedCallback = std::function; - /** - * @brief WebView signal type related with page loading. - */ - using WebViewPageLoadSignalType = Signal; - - /** - * @brief WebView signal type related with page loading error. - */ - using WebViewPageLoadErrorSignalType = Signal)>; - - /** - * @brief WebView signal type related with scroll edge reached. - */ - using WebViewScrollEdgeReachedSignalType = Signal; - - /** - * @brief WebView signal type related with url changed. - */ - using WebViewUrlChangedSignalType = Signal; - - /** - * @brief WebView signal type related with form repost decision. - */ - using WebViewFormRepostDecisionSignalType = Signal)>; - - /** - * @brief WebView signal type related with frame rendered. - */ - using WebViewFrameRenderedSignalType = Signal; - - /** - * @brief WebView signal type related with http request interceptor. - */ - using WebViewRequestInterceptorSignalType = Signal)>; - - /** - * @brief WebView signal type related with console message. - */ - using WebViewConsoleMessageSignalType = Signal)>; - - /** - * @brief WebView signal type related with response policy decision. - */ - using WebViewResponsePolicyDecisionSignalType = Signal)>; - - /** - * @brief WebView signal type related with certificate changed. - */ - using WebViewCertificateSignalType = Signal)>; - - /** - * @brief WebView signal type related with http authentication. - */ - using WebViewHttpAuthHandlerSignalType = Signal)>; - - /** - * @brief WebView signal type related with context menu shown. - */ - using WebViewContextMenuShownSignalType = Signal)>; - - /** - * @brief WebView signal type related with context menu hidden. - */ - using WebViewContextMenuHiddenSignalType = Signal)>; - public: /** * @brief Create an initialized WebView. @@ -500,9 +433,9 @@ public: * @brief Evaluate JavaScript code represented as a string. * * @param[in] script The JavaScript code - * @param[in] resultHandler The callback function to be called by the JavaScript runtime. This carries evaluation result + * @param[in] resultHandler The callback to be called by the JavaScript runtime. This carries evaluation result */ - void EvaluateJavaScript(const std::string& script, std::function resultHandler); + void EvaluateJavaScript(const std::string& script, Dali::WebEnginePlugin::JavaScriptMessageHandlerCallback resultHandler); /** * @brief Evaluate JavaScript code represented as a string. @@ -535,7 +468,7 @@ public: * @param[in] exposedObjectName The name of exposed object * @param[in] handler The callback function */ - void AddJavaScriptMessageHandler(const std::string& exposedObjectName, std::function handler); + void AddJavaScriptMessageHandler(const std::string& exposedObjectName, Dali::WebEnginePlugin::JavaScriptMessageHandlerCallback handler); /** * @brief Register alert callback for javascript. @@ -689,116 +622,123 @@ public: void SetTtsFocus(bool focused); /** - * @brief Connect to this signal to be notified when page loading is started. + * @brief Callback to be called when page loading is started. + * + * @param[in] callback + */ + void RegisterPageLoadStartedCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback); + + /** + * @brief Callback to be called when page loading is in progress. * - * @return A signal object to connect with + * @param[in] callback */ - WebViewPageLoadSignalType& PageLoadStartedSignal(); + void RegisterPageLoadInProgressCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback); /** - * @brief Connect to this signal to be notified when page loading is in progress. + * @brief Callback to be called when page loading is finished. * - * @return A signal object to connect with + * @param[in] callback */ - WebViewPageLoadSignalType& PageLoadInProgressSignal(); + void RegisterPageLoadFinishedCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback); /** - * @brief Connect to this signal to be notified when page loading is finished. + * @brief Callback to be called when an error occurs in page loading. * - * @return A signal object to connect with + * @param[in] callback */ - WebViewPageLoadSignalType& PageLoadFinishedSignal(); + void RegisterPageLoadErrorCallback(Dali::WebEnginePlugin::WebEnginePageLoadErrorCallback callback); /** - * @brief Connect to this signal to be notified when an error occurs in page loading. + * @brief Callback to be called when scroll edge is reached. * - * @return A signal object to connect with + * @param[in] callback */ - WebViewPageLoadErrorSignalType& PageLoadErrorSignal(); + void RegisterScrollEdgeReachedCallback(Dali::WebEnginePlugin::WebEngineScrollEdgeReachedCallback callback); /** - * @brief Connect to this signal to be notified when scroll edge is reached. + * @brief Callback to be called when url is changed. * - * @return A signal object to connect with + * @param[in] callback */ - WebViewScrollEdgeReachedSignalType& ScrollEdgeReachedSignal(); + void RegisterUrlChangedCallback(Dali::WebEnginePlugin::WebEngineUrlChangedCallback callback); /** - * @brief Connect to this signal to be notified when url is changed. + * @brief Callback to be called when form repost decision is requested. * - * @return A signal object to connect with + * @param[in] callback */ - WebViewUrlChangedSignalType& UrlChangedSignal(); + void RegisterFormRepostDecidedCallback(Dali::WebEnginePlugin::WebEngineFormRepostDecidedCallback callback); /** - * @brief Connect to this signal to be notified when form repost decision is requested. + * @brief Callback to be called when frame is rendered. * - * @return A signal object to connect with. + * @param[in] callback */ - WebViewFormRepostDecisionSignalType& FormRepostDecisionSignal(); + void RegisterFrameRenderedCallback(Dali::WebEnginePlugin::WebEngineFrameRenderedCallback callback); /** - * @brief Connect to this signal to be notified when frame is rendered. + * @brief Callback to be called when console message will be logged. * - * @return A signal object to connect with. + * @param[in] callback */ - WebViewFrameRenderedSignalType& FrameRenderedSignal(); + void RegisterConsoleMessageReceivedCallback(Dali::WebEnginePlugin::WebEngineConsoleMessageReceivedCallback callback); /** - * @brief Connect to this signal to be notified when http request need be intercepted. + * @brief Callback to be called when response policy would be decided. * - * @return A signal object to connect with. + * @param[in] callback */ - WebViewRequestInterceptorSignalType& RequestInterceptorSignal(); + void RegisterResponsePolicyDecidedCallback(Dali::WebEnginePlugin::WebEngineResponsePolicyDecidedCallback callback); /** - * @brief Connect to this signal to be notified when console message will be logged. + * @brief Callback to be called when navigation policy would be decided. * - * @return A signal object to connect with. + * @param[in] callback */ - WebViewConsoleMessageSignalType& ConsoleMessageSignal(); + void RegisterNavigationPolicyDecidedCallback(Dali::WebEnginePlugin::WebEngineNavigationPolicyDecidedCallback callback); /** - * @brief Connect to this signal to be notified when response policy would be decided. + * @brief Callback to be called when certificate need be confirmed. * - * @return A signal object to connect with. + * @param[in] callback */ - WebViewResponsePolicyDecisionSignalType& ResponsePolicyDecisionSignal(); + void RegisterCertificateConfirmedCallback(Dali::WebEnginePlugin::WebEngineCertificateCallback callback); /** - * @brief Connect to this signal to be notified when certificate need be confirmed. + * @brief Callback to be called when ssl certificate is changed. * - * @return A signal object to connect with. + * @param[in] callback */ - WebViewCertificateSignalType& CertificateConfirmSignal(); + void RegisterSslCertificateChangedCallback(Dali::WebEnginePlugin::WebEngineCertificateCallback callback); /** - * @brief Connect to this signal to be notified when ssl certificate is changed. + * @brief Callback to be called when http authentication need be confirmed. * - * @return A signal object to connect with. + * @param[in] callback */ - WebViewCertificateSignalType& SslCertificateChangedSignal(); + void RegisterHttpAuthHandlerCallback(Dali::WebEnginePlugin::WebEngineHttpAuthHandlerCallback callback); /** - * @brief Connect to this signal to be notified when http authentication need be confirmed. + * @brief Callback to be called when context menu would be shown. * - * @return A signal object to connect with. + * @param[in] callback */ - WebViewHttpAuthHandlerSignalType& HttpAuthHandlerSignal(); + void RegisterContextMenuShownCallback(Dali::WebEnginePlugin::WebEngineContextMenuShownCallback callback); /** - * @brief Connect to this signal to be notified when context menu would be shown. + * @brief Callback to be called when context menu would be hidden. * - * @return A signal object to connect with. + * @param[in] callback */ - WebViewContextMenuShownSignalType& ContextMenuShownSignal(); + void RegisterContextMenuHiddenCallback(Dali::WebEnginePlugin::WebEngineContextMenuHiddenCallback callback); /** - * @brief Connect to this signal to be notified when context menu would be hidden. + * @brief Get a plain text of current web page asynchronously. * - * @return A signal object to connect with. + * @param[in] callback The callback function called asynchronously. */ - WebViewContextMenuHiddenSignalType& ContextMenuHiddenSignal(); + void GetPlainTextAsynchronously(Dali::WebEnginePlugin::PlainTextReceivedCallback callback); public: // Not intended for application developers /// @cond internal