{
public:
- using JavaScriptEvaluatedResultCallback = std::function<void(const std::string&)>;
-
WebEngine()
: mUrl()
, mCurrentPlusOnePos( 0 )
}
}
- Dali::WebEnginePlugin::WebEnginePageLoadSignalType& PageLoadStartedSignal()
+ Dali::WebEnginePlugin::WebEngineFrameRenderedSignalType& FrameRenderedSignal()
{
- return mPageLoadStartedSignal;
+ return mFrameRenderedSignal;
}
- Dali::WebEnginePlugin::WebEnginePageLoadSignalType& PageLoadInProgressSignal()
+ void RegisterPageLoadStartedCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback)
{
- return mPageLoadInProgressSignal;
+ mPageLoadStartedCallback = callback;
}
- Dali::WebEnginePlugin::WebEnginePageLoadSignalType& PageLoadFinishedSignal()
+ void RegisterPageLoadInProgressCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback)
{
- return mPageLoadFinishedSignal;
+ mPageLoadInProgressCallback = callback;
}
- Dali::WebEnginePlugin::WebEnginePageLoadErrorSignalType& PageLoadErrorSignal()
+ void RegisterPageLoadFinishedCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback)
{
- return mPageLoadErrorSignal;
+ mPageLoadFinishedCallback = callback;
}
- Dali::WebEnginePlugin::WebEngineScrollEdgeReachedSignalType& ScrollEdgeReachedSignal()
+ void RegisterPageLoadErrorCallback(Dali::WebEnginePlugin::WebEnginePageLoadErrorCallback callback)
{
- return mScrollEdgeReachedSignal;
+ mPageLoadErrorCallback = callback;
}
- Dali::WebEnginePlugin::WebEngineUrlChangedSignalType& UrlChangedSignal()
+ void RegisterScrollEdgeReachedCallback(Dali::WebEnginePlugin::WebEngineScrollEdgeReachedCallback callback)
{
- return mUrlChangedSignal;
+ mScrollEdgeReachedCallback = callback;
}
- Dali::WebEnginePlugin::WebEngineFormRepostDecisionSignalType& FormRepostDecisionSignal()
+ void RegisterUrlChangedCallback(Dali::WebEnginePlugin::WebEngineUrlChangedCallback callback)
{
- return mFormRepostDecisionSignal;
+ mUrlChangedCallback = callback;
}
- Dali::WebEnginePlugin::WebEngineFrameRenderedSignalType& FrameRenderedSignal()
+ void RegisterFormRepostDecidedCallback(Dali::WebEnginePlugin::WebEngineFormRepostDecidedCallback callback)
{
- return mFrameRenderedSignal;
+ mFormRepostDecidedCallback = callback;
}
- Dali::WebEnginePlugin::WebEngineRequestInterceptorSignalType& RequestInterceptorSignal()
+ void RegisterRequestInterceptorCallback(Dali::WebEnginePlugin::WebEngineRequestInterceptorCallback callback)
{
- return mRequestInterceptorSignal;
+ mRequestInterceptorCallback = callback;
}
- Dali::WebEnginePlugin::WebEngineConsoleMessageSignalType& ConsoleMessageSignal()
+ void RegisterConsoleMessageReceivedCallback(Dali::WebEnginePlugin::WebEngineConsoleMessageReceivedCallback callback)
{
- return mConsoleMessageSignal;
+ mConsoleMessageCallback = callback;
}
- Dali::WebEnginePlugin::WebEngineResponsePolicyDecisionSignalType& ResponsePolicyDecisionSignal()
+ void RegisterResponsePolicyDecidedCallback(Dali::WebEnginePlugin::WebEngineResponsePolicyDecidedCallback callback)
{
- return mResponsePolicyDecisionSignal;
+ mResponsePolicyDecisionCallback = callback;
}
- Dali::WebEnginePlugin::WebEngineCertificateSignalType& CertificateConfirmSignal()
+ void RegisterCertificateConfirmedCallback(Dali::WebEnginePlugin::WebEngineCertificateCallback callback)
{
- return mCertificateConfirmSignal;
+ mCertificateConfirmCallback = callback;
}
- Dali::WebEnginePlugin::WebEngineCertificateSignalType& SslCertificateChangedSignal()
+ void RegisterSslCertificateChangedCallback(Dali::WebEnginePlugin::WebEngineCertificateCallback callback)
{
- return mSslCertificateChangedSignal;
+ mSslCertificateChangedCallback = callback;
}
- Dali::WebEnginePlugin::WebEngineHttpAuthHandlerSignalType& HttpAuthHandlerSignal()
+ void RegisterHttpAuthHandlerCallback(Dali::WebEnginePlugin::WebEngineHttpAuthHandlerCallback callback)
{
- return mHttpAuthHandlerSignal;
+ mHttpAuthHandlerCallback = callback;
}
- Dali::WebEnginePlugin::WebEngineContextMenuShownSignalType& ContextMenuShownSignal()
+ void RegisterContextMenuShownCallback(Dali::WebEnginePlugin::WebEngineContextMenuShownCallback callback)
{
- return mContextMenuShownSignal;
+ mContextMenuShownCallback = callback;
}
- Dali::WebEnginePlugin::WebEngineContextMenuHiddenSignalType& ContextMenuHiddenSignal()
+ void RegisterContextMenuHiddenCallback(Dali::WebEnginePlugin::WebEngineContextMenuHiddenCallback callback)
{
- return mContextMenuHiddenSignal;
+ mContextMenuHiddenCallback = callback;
}
std::string mUrl;
size_t mCurrentPlusOnePos;
std::string mUserAgent;
- Dali::WebEnginePlugin::WebEnginePageLoadSignalType mPageLoadStartedSignal;
- Dali::WebEnginePlugin::WebEnginePageLoadSignalType mPageLoadInProgressSignal;
- Dali::WebEnginePlugin::WebEnginePageLoadSignalType mPageLoadFinishedSignal;
- Dali::WebEnginePlugin::WebEnginePageLoadErrorSignalType mPageLoadErrorSignal;
- Dali::WebEnginePlugin::WebEngineScrollEdgeReachedSignalType mScrollEdgeReachedSignal;
- Dali::WebEnginePlugin::WebEngineUrlChangedSignalType mUrlChangedSignal;
- Dali::WebEnginePlugin::WebEngineFormRepostDecisionSignalType mFormRepostDecisionSignal;
- Dali::WebEnginePlugin::WebEngineFrameRenderedSignalType mFrameRenderedSignal;
- Dali::WebEnginePlugin::WebEngineRequestInterceptorSignalType mRequestInterceptorSignal;
- Dali::WebEnginePlugin::WebEngineConsoleMessageSignalType mConsoleMessageSignal;
- Dali::WebEnginePlugin::WebEngineResponsePolicyDecisionSignalType mResponsePolicyDecisionSignal;
- Dali::WebEnginePlugin::WebEngineCertificateSignalType mCertificateConfirmSignal;
- Dali::WebEnginePlugin::WebEngineCertificateSignalType mSslCertificateChangedSignal;
- Dali::WebEnginePlugin::WebEngineHttpAuthHandlerSignalType mHttpAuthHandlerSignal;
- Dali::WebEnginePlugin::WebEngineContextMenuShownSignalType mContextMenuShownSignal;
- Dali::WebEnginePlugin::WebEngineContextMenuHiddenSignalType mContextMenuHiddenSignal;
+ Dali::WebEnginePlugin::WebEngineFrameRenderedSignalType mFrameRenderedSignal;
bool mEvaluating;
float mPageZoomFactor;
WebEngineCookieManager* mockWebEngineCookieManager;
WebEngineSettings* mockWebEngineSettings;
- std::vector<JavaScriptEvaluatedResultCallback> mResultCallbacks;
- Dali::WebEnginePlugin::JavaScriptAlertCallback mJavaScriptAlertCallback;
- Dali::WebEnginePlugin::JavaScriptConfirmCallback mJavaScriptConfirmCallback;
- Dali::WebEnginePlugin::JavaScriptPromptCallback mJavaScriptPromptCallback;
- Dali::WebEnginePlugin::ScreenshotCapturedCallback mScreenshotCapturedCallback;
- Dali::WebEnginePlugin::VideoPlayingCallback mVideoPlayingCallback;
- Dali::WebEnginePlugin::GeolocationPermissionCallback mGeolocationPermissionCallback;
- Dali::WebEnginePlugin::WebEngineHitTestCreatedCallback mHitTestCreatedCallback;
+ std::vector<Dali::WebEnginePlugin::JavaScriptMessageHandlerCallback> mResultCallbacks;
+
+ Dali::WebEnginePlugin::WebEnginePageLoadCallback mPageLoadStartedCallback;
+ Dali::WebEnginePlugin::WebEnginePageLoadCallback mPageLoadInProgressCallback;
+ Dali::WebEnginePlugin::WebEnginePageLoadCallback mPageLoadFinishedCallback;
+ Dali::WebEnginePlugin::WebEnginePageLoadErrorCallback mPageLoadErrorCallback;
+ Dali::WebEnginePlugin::WebEngineScrollEdgeReachedCallback mScrollEdgeReachedCallback;
+ Dali::WebEnginePlugin::WebEngineUrlChangedCallback mUrlChangedCallback;
+ Dali::WebEnginePlugin::WebEngineFormRepostDecidedCallback mFormRepostDecidedCallback;
+ Dali::WebEnginePlugin::WebEngineFrameRenderedCallback mFrameRenderedCallback;
+ Dali::WebEnginePlugin::WebEngineRequestInterceptorCallback mRequestInterceptorCallback;
+ Dali::WebEnginePlugin::WebEngineConsoleMessageReceivedCallback mConsoleMessageCallback;
+ Dali::WebEnginePlugin::WebEngineResponsePolicyDecidedCallback mResponsePolicyDecisionCallback;
+ Dali::WebEnginePlugin::WebEngineCertificateCallback mCertificateConfirmCallback;
+ Dali::WebEnginePlugin::WebEngineCertificateCallback mSslCertificateChangedCallback;
+ Dali::WebEnginePlugin::WebEngineHttpAuthHandlerCallback mHttpAuthHandlerCallback;
+ Dali::WebEnginePlugin::WebEngineContextMenuShownCallback mContextMenuShownCallback;
+ Dali::WebEnginePlugin::WebEngineContextMenuHiddenCallback mContextMenuHiddenCallback;
+ Dali::WebEnginePlugin::JavaScriptAlertCallback mJavaScriptAlertCallback;
+ Dali::WebEnginePlugin::JavaScriptConfirmCallback mJavaScriptConfirmCallback;
+ Dali::WebEnginePlugin::JavaScriptPromptCallback mJavaScriptPromptCallback;
+ Dali::WebEnginePlugin::ScreenshotCapturedCallback mScreenshotCapturedCallback;
+ Dali::WebEnginePlugin::VideoPlayingCallback mVideoPlayingCallback;
+ Dali::WebEnginePlugin::GeolocationPermissionCallback mGeolocationPermissionCallback;
+ Dali::WebEnginePlugin::WebEngineHitTestCreatedCallback mHitTestCreatedCallback;
};
}
gInstance->mHistory.push_back( gInstance->mUrl );
gInstance->mCurrentPlusOnePos++;
- gInstance->mPageLoadStartedSignal.Emit( gInstance->mUrl );
- gInstance->mPageLoadInProgressSignal.Emit( gInstance->mUrl );
- gInstance->mPageLoadFinishedSignal.Emit( gInstance->mUrl );
- gInstance->mUrlChangedSignal.Emit( "http://new-test" );
-
- std::shared_ptr<Dali::WebEngineFormRepostDecision> repostDecision(new MockWebEngineFormRepostDecision());
- gInstance->mFormRepostDecisionSignal.Emit(std::move(repostDecision));
+ if (gInstance->mPageLoadStartedCallback)
+ {
+ gInstance->mPageLoadStartedCallback( gInstance->mUrl );
+ }
+ if (gInstance->mPageLoadInProgressCallback)
+ {
+ gInstance->mPageLoadInProgressCallback( gInstance->mUrl );
+ }
+ if (gInstance->mPageLoadFinishedCallback)
+ {
+ gInstance->mPageLoadFinishedCallback( gInstance->mUrl );
+ }
+ if (gInstance->mPageLoadErrorCallback)
+ {
+ std::unique_ptr<Dali::WebEngineLoadError> error(new MockWebEngineLoadError(gInstance->mUrl));
+ gInstance->mPageLoadErrorCallback(std::move(error));
+ }
+ if (gInstance->mUrlChangedCallback)
+ {
+ gInstance->mUrlChangedCallback( "http://new-test" );
+ }
+ if (gInstance->mFormRepostDecidedCallback)
+ {
+ std::unique_ptr<Dali::WebEngineFormRepostDecision> repostDecision(new MockWebEngineFormRepostDecision());
+ gInstance->mFormRepostDecidedCallback(std::move(repostDecision));
+ }
gInstance->mFrameRenderedSignal.Emit();
- std::shared_ptr<Dali::WebEngineRequestInterceptor> interceptor(new MockWebEngineRequestInterceptor());
- gInstance->mRequestInterceptorSignal.Emit(std::move(interceptor));
-
- std::shared_ptr<Dali::WebEngineLoadError> error(new MockWebEngineLoadError(gInstance->mUrl));
- gInstance->mPageLoadErrorSignal.Emit(std::move(error));
- std::shared_ptr<Dali::WebEngineConsoleMessage> message(new MockWebEngineConsoleMessage());
- gInstance->mConsoleMessageSignal.Emit(std::move(message));
- std::shared_ptr<Dali::WebEnginePolicyDecision> policyDecision(new MockWebEnginePolicyDecision());
- gInstance->mResponsePolicyDecisionSignal.Emit(std::move(policyDecision));
-
- std::shared_ptr<Dali::WebEngineCertificate> certificate(new MockWebEngineCertificate());
- gInstance->mCertificateConfirmSignal.Emit(std::move(certificate));
- std::shared_ptr<Dali::WebEngineCertificate> sslCertificate(new MockWebEngineCertificate());
- gInstance->mSslCertificateChangedSignal.Emit(std::move(sslCertificate));
- std::shared_ptr<Dali::WebEngineHttpAuthHandler> handler(new MockWebEngineHttpAuthHandler());
- gInstance->mHttpAuthHandlerSignal.Emit(std::move(handler));
-
- std::shared_ptr<Dali::WebEngineContextMenu> menu(new MockWebEngineContextMenu());
- gInstance->mContextMenuShownSignal.Emit(std::move(menu));
- std::shared_ptr<Dali::WebEngineContextMenu> hiddenMenu(new MockWebEngineContextMenu());
- gInstance->mContextMenuHiddenSignal.Emit(std::move(hiddenMenu));
+ if (gInstance->mFrameRenderedCallback)
+ {
+ gInstance->mFrameRenderedCallback();
+ }
+ if (gInstance->mRequestInterceptorCallback)
+ {
+ std::unique_ptr<Dali::WebEngineRequestInterceptor> interceptor(new MockWebEngineRequestInterceptor());
+ gInstance->mRequestInterceptorCallback(std::move(interceptor));
+ }
+ if (gInstance->mConsoleMessageCallback)
+ {
+ std::unique_ptr<Dali::WebEngineConsoleMessage> message(new MockWebEngineConsoleMessage());
+ gInstance->mConsoleMessageCallback(std::move(message));
+ }
+ if (gInstance->mResponsePolicyDecisionCallback)
+ {
+ std::unique_ptr<Dali::WebEnginePolicyDecision> policyDecision(new MockWebEnginePolicyDecision());
+ gInstance->mResponsePolicyDecisionCallback(std::move(policyDecision));
+ }
+ if (gInstance->mCertificateConfirmCallback)
+ {
+ std::unique_ptr<Dali::WebEngineCertificate> certificate(new MockWebEngineCertificate());
+ gInstance->mCertificateConfirmCallback(std::move(certificate));
+ }
+ if (gInstance->mSslCertificateChangedCallback)
+ {
+ std::unique_ptr<Dali::WebEngineCertificate> sslCertificate(new MockWebEngineCertificate());
+ gInstance->mSslCertificateChangedCallback(std::move(sslCertificate));
+ }
+ if (gInstance->mHttpAuthHandlerCallback)
+ {
+ std::unique_ptr<Dali::WebEngineHttpAuthHandler> handler(new MockWebEngineHttpAuthHandler());
+ gInstance->mHttpAuthHandlerCallback(std::move(handler));
+ }
+ if (gInstance->mContextMenuShownCallback)
+ {
+ std::unique_ptr<Dali::WebEngineContextMenu> menu(new MockWebEngineContextMenu());
+ gInstance->mContextMenuShownCallback(std::move(menu));
+ }
+ if (gInstance->mContextMenuHiddenCallback)
+ {
+ std::unique_ptr<Dali::WebEngineContextMenu> hiddenMenu(new MockWebEngineContextMenu());
+ gInstance->mContextMenuHiddenCallback(std::move(hiddenMenu));
+ }
}
return false;
}
{
DisconnectFromGlobalSignal( &OnScrollEdge );
- if( gInstance )
+ if( gInstance && gInstance->mScrollEdgeReachedCallback )
{
- gInstance->mScrollEdgeReachedSignal.Emit( Dali::WebEnginePlugin::ScrollEdge::BOTTOM );
+ gInstance->mScrollEdgeReachedCallback( Dali::WebEnginePlugin::ScrollEdge::BOTTOM );
}
return false;
{
}
-Dali::WebEnginePlugin::WebEnginePageLoadSignalType& WebEngine::PageLoadStartedSignal()
+Dali::WebEnginePlugin::WebEngineFrameRenderedSignalType& WebEngine::FrameRenderedSignal()
{
- return Internal::Adaptor::GetImplementation( *this ).PageLoadStartedSignal();
+ return Internal::Adaptor::GetImplementation(*this).FrameRenderedSignal();
}
-Dali::WebEnginePlugin::WebEnginePageLoadSignalType& WebEngine::PageLoadInProgressSignal()
+void WebEngine::RegisterPageLoadStartedCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback)
{
- return Internal::Adaptor::GetImplementation( *this ).PageLoadInProgressSignal();
+ Internal::Adaptor::GetImplementation( *this ).RegisterPageLoadStartedCallback(callback);
}
-Dali::WebEnginePlugin::WebEnginePageLoadSignalType& WebEngine::PageLoadFinishedSignal()
+void WebEngine::RegisterPageLoadInProgressCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback)
{
- return Internal::Adaptor::GetImplementation( *this ).PageLoadFinishedSignal();
+ Internal::Adaptor::GetImplementation( *this ).RegisterPageLoadInProgressCallback(callback);
}
-Dali::WebEnginePlugin::WebEnginePageLoadErrorSignalType& WebEngine::PageLoadErrorSignal()
+void WebEngine::RegisterPageLoadFinishedCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback)
{
- return Internal::Adaptor::GetImplementation( *this ).PageLoadErrorSignal();
+ Internal::Adaptor::GetImplementation( *this ).RegisterPageLoadFinishedCallback(callback);
}
-Dali::WebEnginePlugin::WebEngineScrollEdgeReachedSignalType& WebEngine::ScrollEdgeReachedSignal()
+void WebEngine::RegisterPageLoadErrorCallback(Dali::WebEnginePlugin::WebEnginePageLoadErrorCallback callback)
{
- return Internal::Adaptor::GetImplementation( *this ).ScrollEdgeReachedSignal();
+ Internal::Adaptor::GetImplementation( *this ).RegisterPageLoadErrorCallback(callback);
}
-Dali::WebEnginePlugin::WebEngineUrlChangedSignalType& WebEngine::UrlChangedSignal()
+void WebEngine::RegisterScrollEdgeReachedCallback(Dali::WebEnginePlugin::WebEngineScrollEdgeReachedCallback callback)
{
- return Internal::Adaptor::GetImplementation( *this ).UrlChangedSignal();
+ Internal::Adaptor::GetImplementation( *this ).RegisterScrollEdgeReachedCallback(callback);
}
-Dali::WebEnginePlugin::WebEngineFormRepostDecisionSignalType& WebEngine::FormRepostDecisionSignal()
+void WebEngine::RegisterUrlChangedCallback(Dali::WebEnginePlugin::WebEngineUrlChangedCallback callback)
{
- return Internal::Adaptor::GetImplementation(*this).FormRepostDecisionSignal();
+ Internal::Adaptor::GetImplementation( *this ).RegisterUrlChangedCallback(callback);
}
-Dali::WebEnginePlugin::WebEngineFrameRenderedSignalType& WebEngine::FrameRenderedSignal()
+void WebEngine::RegisterFormRepostDecidedCallback(Dali::WebEnginePlugin::WebEngineFormRepostDecidedCallback callback)
{
- return Internal::Adaptor::GetImplementation(*this).FrameRenderedSignal();
+ Internal::Adaptor::GetImplementation( *this ).RegisterFormRepostDecidedCallback(callback);
}
-Dali::WebEnginePlugin::WebEngineRequestInterceptorSignalType& WebEngine::RequestInterceptorSignal()
+void WebEngine::RegisterRequestInterceptorCallback(Dali::WebEnginePlugin::WebEngineRequestInterceptorCallback callback)
{
- return Internal::Adaptor::GetImplementation(*this).RequestInterceptorSignal();
+ Internal::Adaptor::GetImplementation( *this ).RegisterRequestInterceptorCallback(callback);
}
-Dali::WebEnginePlugin::WebEngineConsoleMessageSignalType& WebEngine::ConsoleMessageSignal()
+void WebEngine::RegisterConsoleMessageReceivedCallback(Dali::WebEnginePlugin::WebEngineConsoleMessageReceivedCallback callback)
{
- return Internal::Adaptor::GetImplementation(*this).ConsoleMessageSignal();
+ Internal::Adaptor::GetImplementation( *this ).RegisterConsoleMessageReceivedCallback(callback);
}
-Dali::WebEnginePlugin::WebEngineResponsePolicyDecisionSignalType& WebEngine::ResponsePolicyDecisionSignal()
+void WebEngine::RegisterResponsePolicyDecidedCallback(Dali::WebEnginePlugin::WebEngineResponsePolicyDecidedCallback callback)
{
- return Internal::Adaptor::GetImplementation(*this).ResponsePolicyDecisionSignal();
+ Internal::Adaptor::GetImplementation( *this ).RegisterResponsePolicyDecidedCallback(callback);
}
-Dali::WebEnginePlugin::WebEngineCertificateSignalType& WebEngine::CertificateConfirmSignal()
+void WebEngine::RegisterCertificateConfirmedCallback(Dali::WebEnginePlugin::WebEngineCertificateCallback callback)
{
- return Internal::Adaptor::GetImplementation(*this).CertificateConfirmSignal();
+ Internal::Adaptor::GetImplementation( *this ).RegisterCertificateConfirmedCallback(callback);
}
-Dali::WebEnginePlugin::WebEngineCertificateSignalType& WebEngine::SslCertificateChangedSignal()
+void WebEngine::RegisterSslCertificateChangedCallback(Dali::WebEnginePlugin::WebEngineCertificateCallback callback)
{
- return Internal::Adaptor::GetImplementation(*this).SslCertificateChangedSignal();
+ Internal::Adaptor::GetImplementation( *this ).RegisterSslCertificateChangedCallback(callback);
}
-Dali::WebEnginePlugin::WebEngineHttpAuthHandlerSignalType& WebEngine::HttpAuthHandlerSignal()
+void WebEngine::RegisterHttpAuthHandlerCallback(Dali::WebEnginePlugin::WebEngineHttpAuthHandlerCallback callback)
{
- return Internal::Adaptor::GetImplementation(*this).HttpAuthHandlerSignal();
+ Internal::Adaptor::GetImplementation( *this ).RegisterHttpAuthHandlerCallback(callback);
}
-Dali::WebEnginePlugin::WebEngineContextMenuShownSignalType& WebEngine::ContextMenuShownSignal()
+void WebEngine::RegisterContextMenuShownCallback(Dali::WebEnginePlugin::WebEngineContextMenuShownCallback callback)
{
- return Internal::Adaptor::GetImplementation( *this ).ContextMenuShownSignal();
+ Internal::Adaptor::GetImplementation( *this ).RegisterContextMenuShownCallback(callback);
}
-Dali::WebEnginePlugin::WebEngineContextMenuHiddenSignalType& WebEngine::ContextMenuHiddenSignal()
+void WebEngine::RegisterContextMenuHiddenCallback(Dali::WebEnginePlugin::WebEngineContextMenuHiddenCallback callback)
{
- return Internal::Adaptor::GetImplementation( *this ).ContextMenuHiddenSignal();
+ Internal::Adaptor::GetImplementation( *this ).RegisterContextMenuHiddenCallback(callback);
}
} // namespace Dali;
static int gPageLoadInProgressCallbackCalled = 0;
static int gPageLoadFinishedCallbackCalled = 0;
static int gPageLoadErrorCallbackCalled = 0;
-static std::shared_ptr<Dali::WebEngineLoadError> gPageLoadErrorInstance = nullptr;
+static std::unique_ptr<Dali::WebEngineLoadError> gPageLoadErrorInstance = nullptr;
static int gScrollEdgeReachedCallbackCalled = 0;
static int gUrlChangedCallbackCalled = 0;
static int gEvaluateJavaScriptCallbackCalled = 0;
static bool gTouched = false;
static bool gHovered = false;
static bool gWheelEventHandled = false;
-static int gFormRepostDecisionCallbackCalled = 0;
-static std::shared_ptr<Dali::WebEngineFormRepostDecision> gFormRepostDecisionInstance = nullptr;
+static int gFormRepostDecidedCallbackCalled = 0;
+static std::unique_ptr<Dali::WebEngineFormRepostDecision> gFormRepostDecidedInstance = nullptr;
static int gFrameRenderedCallbackCalled = 0;
static int gRequestInterceptorCallbackCalled = 0;
-static std::shared_ptr<Dali::WebEngineRequestInterceptor> gRequestInterceptorInstance = nullptr;
+static std::unique_ptr<Dali::WebEngineRequestInterceptor> gRequestInterceptorInstance = nullptr;
static int gConsoleMessageCallbackCalled = 0;
-static std::shared_ptr<Dali::WebEngineConsoleMessage> gConsoleMessageInstance = nullptr;
+static std::unique_ptr<Dali::WebEngineConsoleMessage> gConsoleMessageInstance = nullptr;
static int gResponsePolicyDecidedCallbackCalled = 0;
-static std::shared_ptr<Dali::WebEnginePolicyDecision> gResponsePolicyDecisionInstance = nullptr;
+static std::unique_ptr<Dali::WebEnginePolicyDecision> gResponsePolicyDecisionInstance = nullptr;
static int gCertificateConfirmCallbackCalled = 0;
-static std::shared_ptr<Dali::WebEngineCertificate> gCertificateConfirmInstance = nullptr;
+static std::unique_ptr<Dali::WebEngineCertificate> gCertificateConfirmInstance = nullptr;
static int gSslCertificateChangedCallbackCalled = 0;
-static std::shared_ptr<Dali::WebEngineCertificate> gSslCertificateInstance = nullptr;
+static std::unique_ptr<Dali::WebEngineCertificate> gSslCertificateInstance = nullptr;
static int gHttpAuthHandlerCallbackCalled = 0;
-static std::shared_ptr<Dali::WebEngineHttpAuthHandler> gHttpAuthInstance = nullptr;
+static std::unique_ptr<Dali::WebEngineHttpAuthHandler> gHttpAuthInstance = nullptr;
static int gSecurityOriginsAcquiredCallbackCalled = 0;
static int gStorageUsageAcquiredCallbackCalled = 0;
static int gFormPasswordsAcquiredCallbackCalled = 0;
static std::vector<std::unique_ptr<Dali::WebEngineSecurityOrigin>> gSecurityOriginList;
static std::vector<std::unique_ptr<Dali::WebEngineContext::PasswordData>> gPasswordDataList;
static int gContextMenuShownCallbackCalled = 0;
-static std::shared_ptr<Dali::WebEngineContextMenu> gContextMenuShownInstance = nullptr;
+static std::unique_ptr<Dali::WebEngineContextMenu> gContextMenuShownInstance = nullptr;
static int gContextMenuHiddenCallbackCalled = 0;
-static std::shared_ptr<Dali::WebEngineContextMenu> gContextMenuHiddenInstance = nullptr;
+static std::unique_ptr<Dali::WebEngineContextMenu> gContextMenuHiddenInstance = nullptr;
static int gHitTestCreatedCallbackCalled = 0;
static int gCookieManagerChangsWatchCallbackCalled = 0;
bool* mCallbackFlag;
};
-static void OnPageLoadStarted( WebView view, const std::string& url )
+static void OnPageLoadStarted(const std::string& url)
{
gPageLoadStartedCallbackCalled++;
}
-static void OnPageLoadInProgress( WebView view, const std::string& url )
+static void OnPageLoadInProgress(const std::string& url)
{
gPageLoadInProgressCallbackCalled++;
}
-static void OnPageLoadFinished( WebView view, const std::string& url )
+static void OnPageLoadFinished(const std::string& url)
{
gPageLoadFinishedCallbackCalled++;
}
-static void OnScrollEdgeReached( WebView view, Dali::WebEnginePlugin::ScrollEdge edge )
+static void OnScrollEdgeReached(Dali::WebEnginePlugin::ScrollEdge edge)
{
gScrollEdgeReachedCallbackCalled++;
}
-static void OnResponsePolicyDecided(WebView view, std::shared_ptr<Dali::WebEnginePolicyDecision> decision)
+static void OnResponsePolicyDecided(std::unique_ptr<Dali::WebEnginePolicyDecision> decision)
{
gResponsePolicyDecidedCallbackCalled++;
gResponsePolicyDecisionInstance = std::move(decision);
}
-static void OnUrlChanged( WebView view, const std::string& url )
+static void OnUrlChanged(const std::string& url)
{
gUrlChangedCallbackCalled++;
}
return true;
}
-static void OnPageLoadError(WebView view, std::shared_ptr<Dali::WebEngineLoadError> error)
+static void OnPageLoadError(std::unique_ptr<Dali::WebEngineLoadError> error)
{
gPageLoadErrorCallbackCalled++;
gPageLoadErrorInstance = std::move(error);
}
-static void OnEvaluateJavaScript( const std::string& result )
+static void OnEvaluateJavaScript(const std::string& result)
{
gEvaluateJavaScriptCallbackCalled++;
}
-static bool OnJavaScriptAlert( const std::string& result )
+static bool OnJavaScriptAlert(const std::string& result)
{
gJavaScriptAlertCallbackCalled++;
return true;
}
-static bool OnJavaScriptConfirm( const std::string& result )
+static bool OnJavaScriptConfirm(const std::string& result)
{
gJavaScriptConfirmCallbackCalled++;
return true;
}
-static bool OnJavaScriptPrompt( const std::string& meesage1, const std::string& message2 )
+static bool OnJavaScriptPrompt(const std::string& meesage1, const std::string& message2)
{
gJavaScriptPromptCallbackCalled++;
return true;
gCookieManagerChangsWatchCallbackCalled++;
}
-static bool OnHovered( Actor actor, const Dali::HoverEvent& hover )
+static bool OnHovered(Actor actor, const Dali::HoverEvent& hover)
{
gHovered = true;
return true;
}
-static bool OnWheelEvent( Actor actor, const Dali::WheelEvent& wheel )
+static bool OnWheelEvent(Actor actor, const Dali::WheelEvent& wheel)
{
gWheelEventHandled = true;
return true;
}
-static void OnFormRepostDecision(WebView, std::shared_ptr<Dali::WebEngineFormRepostDecision> decision)
+static void OnFormRepostDecided(std::unique_ptr<Dali::WebEngineFormRepostDecision> decision)
{
- gFormRepostDecisionCallbackCalled++;
- gFormRepostDecisionInstance = std::move(decision);
+ gFormRepostDecidedCallbackCalled++;
+ gFormRepostDecidedInstance = std::move(decision);
}
-static void OnFrameRendered(WebView)
+static void OnFrameRendered()
{
gFrameRenderedCallbackCalled++;
}
-static void OnRequestInterceptor(WebView view, std::shared_ptr<Dali::WebEngineRequestInterceptor> interceptor)
+static void OnRequestInterceptor(std::unique_ptr<Dali::WebEngineRequestInterceptor> interceptor)
{
gRequestInterceptorCallbackCalled++;
gRequestInterceptorInstance = std::move(interceptor);
}
-static void OnConsoleMessage(WebView view, std::shared_ptr<Dali::WebEngineConsoleMessage> message)
+static void OnConsoleMessage(std::unique_ptr<Dali::WebEngineConsoleMessage> message)
{
gConsoleMessageCallbackCalled++;
gConsoleMessageInstance = std::move(message);
}
-static void OnCertificateConfirm(WebView view, std::shared_ptr<Dali::WebEngineCertificate> certificate )
+static void OnCertificateConfirm(std::unique_ptr<Dali::WebEngineCertificate> certificate)
{
gCertificateConfirmCallbackCalled++;
gCertificateConfirmInstance = std::move(certificate);
}
-static void OnSslCertificateChanged(WebView view, std::shared_ptr<Dali::WebEngineCertificate> certificate )
+static void OnSslCertificateChanged(std::unique_ptr<Dali::WebEngineCertificate> certificate)
{
gSslCertificateChangedCallbackCalled++;
gSslCertificateInstance = std::move(certificate);
}
-static void OnHttpAuthHandler( WebView view, std::shared_ptr<Dali::WebEngineHttpAuthHandler> hander )
+static void OnHttpAuthHandler(std::unique_ptr<Dali::WebEngineHttpAuthHandler> hander)
{
gHttpAuthHandlerCallbackCalled++;
gHttpAuthInstance = std::move(hander);
return false;
}
-static void OnContextMenuShown(WebView view, std::shared_ptr<Dali::WebEngineContextMenu> menu)
+static void OnContextMenuShown(std::unique_ptr<Dali::WebEngineContextMenu> menu)
{
gContextMenuShownCallbackCalled++;
gContextMenuShownInstance = std::move(menu);
}
-static void OnContextMenuHidden(WebView view, std::shared_ptr<Dali::WebEngineContextMenu> menu)
+static void OnContextMenuHidden(std::unique_ptr<Dali::WebEngineContextMenu> menu)
{
gContextMenuHiddenCallbackCalled++;
gContextMenuHiddenInstance = std::move(menu);
application.Render();
DALI_TEST_CHECK( view );
- ConnectionTracker* testTracker = new ConnectionTracker();
- view.PageLoadStartedSignal().Connect( &OnPageLoadStarted );
- view.PageLoadInProgressSignal().Connect( &OnPageLoadInProgress );
- view.PageLoadFinishedSignal().Connect( &OnPageLoadFinished );
- view.UrlChangedSignal().Connect( &OnUrlChanged );
- bool signal1 = false;
- bool signal2 = false;
- bool signal3 = false;
- bool signal4 = false;
- bool signal5 = false;
- view.ConnectSignal( testTracker, "pageLoadStarted", CallbackFunctor(&signal1) );
- view.ConnectSignal( testTracker, "pageLoadInProgress", CallbackFunctor(&signal2) );
- view.ConnectSignal( testTracker, "pageLoadFinished", CallbackFunctor(&signal3) );
- view.ConnectSignal( testTracker, "urlChanged", CallbackFunctor(&signal4) );
- view.ConnectSignal( testTracker, "invalidname", CallbackFunctor(&signal5) );
+ view.RegisterPageLoadStartedCallback( &OnPageLoadStarted );
+ view.RegisterPageLoadInProgressCallback( &OnPageLoadInProgress );
+ view.RegisterPageLoadFinishedCallback( &OnPageLoadFinished );
+ view.RegisterUrlChangedCallback( &OnUrlChanged );
DALI_TEST_EQUALS( gPageLoadStartedCallbackCalled, 0, TEST_LOCATION );
DALI_TEST_EQUALS( gPageLoadInProgressCallbackCalled, 0, TEST_LOCATION );
DALI_TEST_EQUALS( gPageLoadFinishedCallbackCalled, 0, TEST_LOCATION );
DALI_TEST_EQUALS( gPageLoadInProgressCallbackCalled, 1, TEST_LOCATION );
DALI_TEST_EQUALS( gPageLoadFinishedCallbackCalled, 1, TEST_LOCATION );
DALI_TEST_EQUALS( gUrlChangedCallbackCalled, 1, TEST_LOCATION );
- DALI_TEST_CHECK( signal1 & signal2 & signal3 & signal4 );
- DALI_TEST_CHECK( !signal5 );
view.LoadUrl( TEST_URL2 );
view.Suspend();
application.Render();
DALI_TEST_CHECK( view );
- ConnectionTracker* testTracker = new ConnectionTracker();
- view.PageLoadErrorSignal().Connect( &OnPageLoadError );
- view.ConsoleMessageSignal().Connect( &OnConsoleMessage );
- bool signal1 = false;
- bool signal2 = false;
- view.ConnectSignal( testTracker, "pageLoadError", CallbackFunctor(&signal1) );
- view.ConnectSignal( testTracker, "consoleMessage", CallbackFunctor(&signal2) );
+ view.RegisterPageLoadErrorCallback( &OnPageLoadError );
+ view.RegisterConsoleMessageReceivedCallback( &OnConsoleMessage );
DALI_TEST_EQUALS( gPageLoadErrorCallbackCalled, 0, TEST_LOCATION );
DALI_TEST_EQUALS( gConsoleMessageCallbackCalled, 0, TEST_LOCATION );
Test::EmitGlobalTimerSignal();
DALI_TEST_EQUALS( gPageLoadErrorCallbackCalled, 1, TEST_LOCATION );
DALI_TEST_EQUALS( gConsoleMessageCallbackCalled, 1, TEST_LOCATION );
- DALI_TEST_CHECK( signal1 & signal2);
// error code.
DALI_TEST_CHECK(gPageLoadErrorInstance);
END_TEST;
}
-int UtcDaliWebViewFormRepostDecisionFrameRendering(void)
+int UtcDaliWebViewFormRepostDecidedFrameRendering(void)
{
ToolkitTestApplication application;
application.Render();
DALI_TEST_CHECK( view );
- ConnectionTracker* testTracker = new ConnectionTracker();
- view.FormRepostDecisionSignal().Connect(&OnFormRepostDecision);
- view.FrameRenderedSignal().Connect(&OnFrameRendered);
- bool signal1 = false;
- bool signal2 = false;
- view.ConnectSignal( testTracker, "formRepostDecision", CallbackFunctor(&signal1) );
- view.ConnectSignal( testTracker, "frameRendered", CallbackFunctor(&signal2) );
- DALI_TEST_EQUALS( gFormRepostDecisionCallbackCalled, 0, TEST_LOCATION );
+ view.RegisterFormRepostDecidedCallback(&OnFormRepostDecided);
+ view.RegisterFrameRenderedCallback(&OnFrameRendered);
+ DALI_TEST_EQUALS( gFormRepostDecidedCallbackCalled, 0, TEST_LOCATION );
DALI_TEST_EQUALS( gFrameRenderedCallbackCalled, 0, TEST_LOCATION );
view.LoadUrl( TEST_URL1 );
Test::EmitGlobalTimerSignal();
- DALI_TEST_EQUALS( gFormRepostDecisionCallbackCalled, 1, TEST_LOCATION );
+ DALI_TEST_EQUALS( gFormRepostDecidedCallbackCalled, 1, TEST_LOCATION );
DALI_TEST_EQUALS( gFrameRenderedCallbackCalled, 1, TEST_LOCATION );
- DALI_TEST_CHECK( signal1 & signal2);
// form repost decision.
- DALI_TEST_CHECK(gFormRepostDecisionInstance);
- gFormRepostDecisionInstance->Reply(true);
+ DALI_TEST_CHECK(gFormRepostDecidedInstance);
+ gFormRepostDecidedInstance->Reply(true);
// reset
- gFormRepostDecisionInstance = nullptr;
+ gFormRepostDecidedInstance = nullptr;
END_TEST;
}
application.Render();
DALI_TEST_CHECK( view );
- ConnectionTracker* testTracker = new ConnectionTracker();
- view.CertificateConfirmSignal().Connect(&OnCertificateConfirm);
- view.SslCertificateChangedSignal().Connect(&OnSslCertificateChanged);
- view.HttpAuthHandlerSignal().Connect(&OnHttpAuthHandler);
- bool signal1 = false;
- bool signal2 = false;
- bool signal3 = false;
- view.ConnectSignal( testTracker, "certificateConfirm", CallbackFunctor(&signal1) );
- view.ConnectSignal( testTracker, "sslCertificateChanged", CallbackFunctor(&signal2) );
- view.ConnectSignal( testTracker, "httpAuthRequest", CallbackFunctor(&signal3) );
+ view.RegisterCertificateConfirmedCallback(&OnCertificateConfirm);
+ view.RegisterSslCertificateChangedCallback(&OnSslCertificateChanged);
+ view.RegisterHttpAuthHandlerCallback(&OnHttpAuthHandler);
DALI_TEST_EQUALS( gCertificateConfirmCallbackCalled, 0, TEST_LOCATION );
DALI_TEST_EQUALS( gSslCertificateChangedCallbackCalled, 0, TEST_LOCATION );
DALI_TEST_EQUALS( gHttpAuthHandlerCallbackCalled, 0, TEST_LOCATION );
DALI_TEST_EQUALS( gCertificateConfirmCallbackCalled, 1, TEST_LOCATION );
DALI_TEST_EQUALS( gSslCertificateChangedCallbackCalled, 1, TEST_LOCATION );
DALI_TEST_EQUALS( gHttpAuthHandlerCallbackCalled, 1, TEST_LOCATION );
- DALI_TEST_CHECK( signal1 & signal2 & signal3);
// certificate.
DALI_TEST_CHECK(gCertificateConfirmInstance);
DALI_TEST_CHECK( view );
// load url.
- ConnectionTracker* testTracker = new ConnectionTracker();
- view.ContextMenuShownSignal().Connect( &OnContextMenuShown );
- view.ContextMenuHiddenSignal().Connect( &OnContextMenuHidden );
- bool signal1 = false;
- bool signal2 = false;
- view.ConnectSignal( testTracker, "contextMenuShown", CallbackFunctor(&signal1) );
- view.ConnectSignal( testTracker, "contextMenuHidden", CallbackFunctor(&signal2) );
+ view.RegisterContextMenuShownCallback( &OnContextMenuShown );
+ view.RegisterContextMenuHiddenCallback( &OnContextMenuHidden );
DALI_TEST_EQUALS( gContextMenuShownCallbackCalled, 0, TEST_LOCATION );
DALI_TEST_EQUALS( gContextMenuHiddenCallbackCalled, 0, TEST_LOCATION );
DALI_TEST_CHECK(gContextMenuShownInstance == 0);
Test::EmitGlobalTimerSignal();
DALI_TEST_EQUALS( gContextMenuShownCallbackCalled, 1, TEST_LOCATION );
DALI_TEST_EQUALS( gContextMenuHiddenCallbackCalled, 1, TEST_LOCATION );
- DALI_TEST_CHECK( signal1 );
- DALI_TEST_CHECK( signal2 );
// check context meun & its items.
DALI_TEST_CHECK(gContextMenuShownInstance != 0);
DALI_TEST_CHECK( view );
// load url.
- ConnectionTracker* testTracker = new ConnectionTracker();
- view.ScrollEdgeReachedSignal().Connect( &OnScrollEdgeReached );
- bool signal1 = false;
- view.ConnectSignal( testTracker, "scrollEdgeReached", CallbackFunctor(&signal1) );
+ view.RegisterScrollEdgeReachedCallback( &OnScrollEdgeReached );
DALI_TEST_EQUALS( gScrollEdgeReachedCallbackCalled, 0, TEST_LOCATION );
view.LoadUrl( TEST_URL1 );
view.GetProperty( WebView::Property::SCROLL_POSITION ).Get( output );
DALI_TEST_CHECK( output.x == 150 && output.y == 150 );
DALI_TEST_EQUALS( gScrollEdgeReachedCallbackCalled, 1, TEST_LOCATION );
- DALI_TEST_CHECK( signal1 );
// scroll by and trigger scrollEdgeReached event.
bool result = view.ScrollEdgeBy( 50, 50 );
view.GetProperty( WebView::Property::SCROLL_POSITION ).Get( output );
DALI_TEST_CHECK( output.x == 200 && output.y == 200 );
DALI_TEST_EQUALS( gScrollEdgeReachedCallbackCalled, 2, TEST_LOCATION );
- DALI_TEST_CHECK( signal1 );
END_TEST;
}
DALI_TEST_CHECK( view );
// load url.
- ConnectionTracker* testTracker = new ConnectionTracker();
- view.RequestInterceptorSignal().Connect( &OnRequestInterceptor );
- bool signal1 = false;
- view.ConnectSignal( testTracker, "requestInterceptor", CallbackFunctor(&signal1) );
+ view.RegisterRequestInterceptorCallback( &OnRequestInterceptor );
DALI_TEST_EQUALS( gRequestInterceptorCallbackCalled, 0, TEST_LOCATION );
DALI_TEST_CHECK(gRequestInterceptorInstance == 0);
view.LoadUrl( TEST_URL1 );
Test::EmitGlobalTimerSignal();
DALI_TEST_EQUALS( gRequestInterceptorCallbackCalled, 1, TEST_LOCATION );
- DALI_TEST_CHECK( signal1 );
// check request interceptor.
DALI_TEST_CHECK(gRequestInterceptorInstance != 0);
DALI_TEST_CHECK( view );
// load url.
- ConnectionTracker* testTracker = new ConnectionTracker();
- view.ResponsePolicyDecisionSignal().Connect( &OnResponsePolicyDecided );
- bool signal1 = false;
- view.ConnectSignal( testTracker, "responsePolicyDecided", CallbackFunctor(&signal1) );
+ view.RegisterResponsePolicyDecidedCallback( &OnResponsePolicyDecided );
DALI_TEST_EQUALS( gResponsePolicyDecidedCallbackCalled, 0, TEST_LOCATION );
DALI_TEST_CHECK(gResponsePolicyDecisionInstance == 0);
view.LoadUrl( TEST_URL1 );
Test::EmitGlobalTimerSignal();
DALI_TEST_EQUALS( gResponsePolicyDecidedCallbackCalled, 1, TEST_LOCATION );
- DALI_TEST_CHECK( signal1 );
// check response policy decision & its frame.
DALI_TEST_CHECK(gResponsePolicyDecisionInstance != 0);
Dali::Toolkit::GetImpl(*this).GoBack();
}
-void WebView::EvaluateJavaScript(const std::string& script, std::function<void(const std::string&)> resultHandler)
+void WebView::EvaluateJavaScript(const std::string& script, Dali::WebEnginePlugin::JavaScriptMessageHandlerCallback resultHandler)
{
Dali::Toolkit::GetImpl(*this).EvaluateJavaScript(script, resultHandler);
}
Dali::Toolkit::GetImpl(*this).EvaluateJavaScript(script, nullptr);
}
-void WebView::AddJavaScriptMessageHandler(const std::string& exposedObjectName, std::function<void(const std::string&)> handler)
+void WebView::AddJavaScriptMessageHandler(const std::string& exposedObjectName, Dali::WebEnginePlugin::JavaScriptMessageHandlerCallback handler)
{
Dali::Toolkit::GetImpl(*this).AddJavaScriptMessageHandler(exposedObjectName, handler);
}
Dali::Toolkit::GetImpl(*this).SetTtsFocus(focused);
}
-WebView::WebViewPageLoadSignalType& WebView::PageLoadStartedSignal()
+void WebView::RegisterPageLoadStartedCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback)
{
- return Dali::Toolkit::GetImpl(*this).PageLoadStartedSignal();
+ Dali::Toolkit::GetImpl(*this).RegisterPageLoadStartedCallback(callback);
}
-WebView::WebViewPageLoadSignalType& WebView::PageLoadInProgressSignal()
+void WebView::RegisterPageLoadInProgressCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback)
{
- return Dali::Toolkit::GetImpl(*this).PageLoadInProgressSignal();
+ Dali::Toolkit::GetImpl(*this).RegisterPageLoadInProgressCallback(callback);
}
-WebView::WebViewPageLoadSignalType& WebView::PageLoadFinishedSignal()
+void WebView::RegisterPageLoadFinishedCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback)
{
- return Dali::Toolkit::GetImpl(*this).PageLoadFinishedSignal();
+ Dali::Toolkit::GetImpl(*this).RegisterPageLoadFinishedCallback(callback);
}
-WebView::WebViewPageLoadErrorSignalType& WebView::PageLoadErrorSignal()
+void WebView::RegisterPageLoadErrorCallback(Dali::WebEnginePlugin::WebEnginePageLoadErrorCallback callback)
{
- return Dali::Toolkit::GetImpl(*this).PageLoadErrorSignal();
+ Dali::Toolkit::GetImpl(*this).RegisterPageLoadErrorCallback(callback);
}
-WebView::WebViewScrollEdgeReachedSignalType& WebView::ScrollEdgeReachedSignal()
+void WebView::RegisterScrollEdgeReachedCallback(Dali::WebEnginePlugin::WebEngineScrollEdgeReachedCallback callback)
{
- return Dali::Toolkit::GetImpl(*this).ScrollEdgeReachedSignal();
+ Dali::Toolkit::GetImpl(*this).RegisterScrollEdgeReachedCallback(callback);
}
-WebView::WebViewUrlChangedSignalType& WebView::UrlChangedSignal()
+void WebView::RegisterUrlChangedCallback(Dali::WebEnginePlugin::WebEngineUrlChangedCallback callback)
{
- return Dali::Toolkit::GetImpl(*this).UrlChangedSignal();
+ Dali::Toolkit::GetImpl(*this).RegisterUrlChangedCallback(callback);
}
-WebView::WebViewFormRepostDecisionSignalType& WebView::FormRepostDecisionSignal()
+void WebView::RegisterFormRepostDecidedCallback(Dali::WebEnginePlugin::WebEngineFormRepostDecidedCallback callback)
{
- return Dali::Toolkit::GetImpl(*this).FormRepostDecisionSignal();
+ Dali::Toolkit::GetImpl(*this).RegisterFormRepostDecidedCallback(callback);
}
-WebView::WebViewFrameRenderedSignalType& WebView::FrameRenderedSignal()
+void WebView::RegisterFrameRenderedCallback(Dali::WebEnginePlugin::WebEngineFrameRenderedCallback callback)
{
- return Dali::Toolkit::GetImpl(*this).FrameRenderedSignal();
+ Dali::Toolkit::GetImpl(*this).RegisterFrameRenderedCallback(callback);
}
-WebView::WebViewRequestInterceptorSignalType& WebView::RequestInterceptorSignal()
+void WebView::RegisterRequestInterceptorCallback(Dali::WebEnginePlugin::WebEngineRequestInterceptorCallback callback)
{
- return Dali::Toolkit::GetImpl(*this).RequestInterceptorSignal();
+ Dali::Toolkit::GetImpl(*this).RegisterRequestInterceptorCallback(callback);
}
-WebView::WebViewConsoleMessageSignalType& WebView::ConsoleMessageSignal()
+void WebView::RegisterConsoleMessageReceivedCallback(Dali::WebEnginePlugin::WebEngineConsoleMessageReceivedCallback callback)
{
- return Dali::Toolkit::GetImpl(*this).ConsoleMessageSignal();
+ Dali::Toolkit::GetImpl(*this).RegisterConsoleMessageReceivedCallback(callback);
}
-WebView::WebViewResponsePolicyDecisionSignalType& WebView::ResponsePolicyDecisionSignal()
+void WebView::RegisterResponsePolicyDecidedCallback(Dali::WebEnginePlugin::WebEngineResponsePolicyDecidedCallback callback)
{
- return Dali::Toolkit::GetImpl(*this).ResponsePolicyDecisionSignal();
+ Dali::Toolkit::GetImpl(*this).RegisterResponsePolicyDecidedCallback(callback);
}
-WebView::WebViewCertificateSignalType& WebView::CertificateConfirmSignal()
+void WebView::RegisterCertificateConfirmedCallback(Dali::WebEnginePlugin::WebEngineCertificateCallback callback)
{
- return Dali::Toolkit::GetImpl(*this).CertificateConfirmSignal();
+ Dali::Toolkit::GetImpl(*this).RegisterCertificateConfirmedCallback(callback);
}
-WebView::WebViewCertificateSignalType& WebView::SslCertificateChangedSignal()
+void WebView::RegisterSslCertificateChangedCallback(Dali::WebEnginePlugin::WebEngineCertificateCallback callback)
{
- return Dali::Toolkit::GetImpl(*this).SslCertificateChangedSignal();
+ Dali::Toolkit::GetImpl(*this).RegisterSslCertificateChangedCallback(callback);
}
-WebView::WebViewHttpAuthHandlerSignalType& WebView::HttpAuthHandlerSignal()
+void WebView::RegisterHttpAuthHandlerCallback(Dali::WebEnginePlugin::WebEngineHttpAuthHandlerCallback callback)
{
- return Dali::Toolkit::GetImpl(*this).HttpAuthHandlerSignal();
+ Dali::Toolkit::GetImpl(*this).RegisterHttpAuthHandlerCallback(callback);
}
-WebView::WebViewContextMenuShownSignalType& WebView::ContextMenuShownSignal()
+void WebView::RegisterContextMenuShownCallback(Dali::WebEnginePlugin::WebEngineContextMenuShownCallback callback)
{
- return Dali::Toolkit::GetImpl(*this).ContextMenuShownSignal();
+ Dali::Toolkit::GetImpl(*this).RegisterContextMenuShownCallback(callback);
}
-WebView::WebViewContextMenuHiddenSignalType& WebView::ContextMenuHiddenSignal()
+void WebView::RegisterContextMenuHiddenCallback(Dali::WebEnginePlugin::WebEngineContextMenuHiddenCallback callback)
{
- return Dali::Toolkit::GetImpl(*this).ContextMenuHiddenSignal();
+ Dali::Toolkit::GetImpl(*this).RegisterContextMenuHiddenCallback(callback);
}
WebView::WebView(Internal::WebView& implementation)
class ImageView;
class WebBackForwardList;
class WebContext;
-class WebContextMenu;
class WebCookieManager;
-class WebFormRepostDecision;
class WebSettings;
namespace Internal DALI_INTERNAL
*/
using WebViewScreenshotCapturedCallback = std::function<void(Dali::Toolkit::ImageView)>;
- /**
- * @brief WebView signal type related with page loading.
- */
- using WebViewPageLoadSignalType = Signal<void(WebView, const std::string&)>;
-
- /**
- * @brief WebView signal type related with page loading error.
- */
- using WebViewPageLoadErrorSignalType = Signal<void(WebView, std::shared_ptr<Dali::WebEngineLoadError>)>;
-
- /**
- * @brief WebView signal type related with scroll edge reached.
- */
- using WebViewScrollEdgeReachedSignalType = Signal<void(WebView, Dali::WebEnginePlugin::ScrollEdge)>;
-
- /**
- * @brief WebView signal type related with url changed.
- */
- using WebViewUrlChangedSignalType = Signal<void(WebView, const std::string&)>;
-
- /**
- * @brief WebView signal type related with form repost decision.
- */
- using WebViewFormRepostDecisionSignalType = Signal<void(WebView, std::shared_ptr<Dali::WebEngineFormRepostDecision>)>;
-
- /**
- * @brief WebView signal type related with frame rendered.
- */
- using WebViewFrameRenderedSignalType = Signal<void(WebView)>;
-
- /**
- * @brief WebView signal type related with http request interceptor.
- */
- using WebViewRequestInterceptorSignalType = Signal<void(WebView, std::shared_ptr<Dali::WebEngineRequestInterceptor>)>;
-
- /**
- * @brief WebView signal type related with console message.
- */
- using WebViewConsoleMessageSignalType = Signal<void(WebView, std::shared_ptr<Dali::WebEngineConsoleMessage>)>;
-
- /**
- * @brief WebView signal type related with response policy decision.
- */
- using WebViewResponsePolicyDecisionSignalType = Signal<void(WebView, std::shared_ptr<Dali::WebEnginePolicyDecision>)>;
-
- /**
- * @brief WebView signal type related with certificate changed.
- */
- using WebViewCertificateSignalType = Signal<void(WebView, std::shared_ptr<Dali::WebEngineCertificate>)>;
-
- /**
- * @brief WebView signal type related with http authentication.
- */
- using WebViewHttpAuthHandlerSignalType = Signal<void(WebView, std::shared_ptr<Dali::WebEngineHttpAuthHandler>)>;
-
- /**
- * @brief WebView signal type related with context menu shown.
- */
- using WebViewContextMenuShownSignalType = Signal<void(WebView, std::shared_ptr<Dali::WebEngineContextMenu>)>;
-
- /**
- * @brief WebView signal type related with context menu hidden.
- */
- using WebViewContextMenuHiddenSignalType = Signal<void(WebView, std::shared_ptr<Dali::WebEngineContextMenu>)>;
-
public:
/**
* @brief Create an initialized WebView.
* @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<void(const std::string&)> resultHandler);
+ void EvaluateJavaScript(const std::string& script, Dali::WebEnginePlugin::JavaScriptMessageHandlerCallback resultHandler);
/**
* @brief Evaluate JavaScript code represented as a string.
* @param[in] exposedObjectName The name of exposed object
* @param[in] handler The callback function
*/
- void AddJavaScriptMessageHandler(const std::string& exposedObjectName, std::function<void(const std::string&)> handler);
+ void AddJavaScriptMessageHandler(const std::string& exposedObjectName, Dali::WebEnginePlugin::JavaScriptMessageHandlerCallback handler);
/**
* @brief Register alert callback for javascript.
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.
*
- * @return A signal object to connect with
+ * @param[in] callback
*/
- WebViewPageLoadSignalType& PageLoadStartedSignal();
+ void RegisterPageLoadStartedCallback(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 in progress.
*
- * @return A signal object to connect with
+ * @param[in] callback
*/
- WebViewPageLoadSignalType& PageLoadInProgressSignal();
+ void RegisterPageLoadInProgressCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback);
/**
- * @brief Connect to this signal to be notified when page loading is finished.
+ * @brief Callback to be called when page loading is finished.
*
- * @return A signal object to connect with
+ * @param[in] callback
*/
- WebViewPageLoadSignalType& PageLoadFinishedSignal();
+ void RegisterPageLoadFinishedCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback);
/**
- * @brief Connect to this signal to be notified when an error occurs in page loading.
+ * @brief Callback to be called when an error occurs in page loading.
*
- * @return A signal object to connect with
+ * @param[in] callback
*/
- WebViewPageLoadErrorSignalType& PageLoadErrorSignal();
+ void RegisterPageLoadErrorCallback(Dali::WebEnginePlugin::WebEnginePageLoadErrorCallback callback);
/**
- * @brief Connect to this signal to be notified when scroll edge is reached.
+ * @brief Callback to be called when scroll edge is reached.
*
- * @return A signal object to connect with
+ * @param[in] callback
*/
- WebViewScrollEdgeReachedSignalType& ScrollEdgeReachedSignal();
+ void RegisterScrollEdgeReachedCallback(Dali::WebEnginePlugin::WebEngineScrollEdgeReachedCallback callback);
/**
- * @brief Connect to this signal to be notified when url is changed.
+ * @brief Callback to be called when url is changed.
*
- * @return A signal object to connect with
+ * @param[in] callback
*/
- WebViewUrlChangedSignalType& UrlChangedSignal();
+ void RegisterUrlChangedCallback(Dali::WebEnginePlugin::WebEngineUrlChangedCallback callback);
/**
- * @brief Connect to this signal to be notified when form repost decision is requested.
+ * @brief Callback to be called when form repost decision is requested.
*
- * @return A signal object to connect with.
+ * @param[in] callback
*/
- WebViewFormRepostDecisionSignalType& FormRepostDecisionSignal();
+ void RegisterFormRepostDecidedCallback(Dali::WebEnginePlugin::WebEngineFormRepostDecidedCallback callback);
/**
- * @brief Connect to this signal to be notified when frame is rendered.
+ * @brief Callback to be called when frame is rendered.
*
- * @return A signal object to connect with.
+ * @param[in] callback
*/
- WebViewFrameRenderedSignalType& FrameRenderedSignal();
+ void RegisterFrameRenderedCallback(Dali::WebEnginePlugin::WebEngineFrameRenderedCallback callback);
/**
- * @brief Connect to this signal to be notified when http request need be intercepted.
+ * @brief Callback to be called when http request need be intercepted.
*
- * @return A signal object to connect with.
+ * @param[in] callback
*/
- WebViewRequestInterceptorSignalType& RequestInterceptorSignal();
+ void RegisterRequestInterceptorCallback(Dali::WebEnginePlugin::WebEngineRequestInterceptorCallback callback);
/**
- * @brief Connect to this signal to be notified when console message will be logged.
+ * @brief Callback to be called when console message will be logged.
*
- * @return A signal object to connect with.
+ * @param[in] callback
*/
- WebViewConsoleMessageSignalType& ConsoleMessageSignal();
+ void RegisterConsoleMessageReceivedCallback(Dali::WebEnginePlugin::WebEngineConsoleMessageReceivedCallback callback);
/**
- * @brief Connect to this signal to be notified when response policy would be decided.
+ * @brief Callback to be called when response policy would be decided.
*
- * @return A signal object to connect with.
+ * @param[in] callback
*/
- WebViewResponsePolicyDecisionSignalType& ResponsePolicyDecisionSignal();
+ void RegisterResponsePolicyDecidedCallback(Dali::WebEnginePlugin::WebEngineResponsePolicyDecidedCallback callback);
/**
- * @brief Connect to this signal to be notified when certificate need be confirmed.
+ * @brief Callback to be called when certificate need be confirmed.
*
- * @return A signal object to connect with.
+ * @param[in] callback
*/
- WebViewCertificateSignalType& CertificateConfirmSignal();
+ void RegisterCertificateConfirmedCallback(Dali::WebEnginePlugin::WebEngineCertificateCallback callback);
/**
- * @brief Connect to this signal to be notified when ssl certificate is changed.
+ * @brief Callback to be called when ssl certificate is changed.
*
- * @return A signal object to connect with.
+ * @param[in] callback
*/
- WebViewCertificateSignalType& SslCertificateChangedSignal();
+ void RegisterSslCertificateChangedCallback(Dali::WebEnginePlugin::WebEngineCertificateCallback callback);
/**
- * @brief Connect to this signal to be notified when http authentication need be confirmed.
+ * @brief Callback to be called when http authentication need be confirmed.
*
- * @return A signal object to connect with.
+ * @param[in] callback
*/
- WebViewHttpAuthHandlerSignalType& HttpAuthHandlerSignal();
+ void RegisterHttpAuthHandlerCallback(Dali::WebEnginePlugin::WebEngineHttpAuthHandlerCallback 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 shown.
*
- * @return A signal object to connect with.
+ * @param[in] callback
*/
- WebViewContextMenuShownSignalType& ContextMenuShownSignal();
+ void RegisterContextMenuShownCallback(Dali::WebEnginePlugin::WebEngineContextMenuShownCallback callback);
/**
- * @brief Connect to this signal to be notified when context menu would be hidden.
+ * @brief Callback to be called when context menu would be hidden.
*
- * @return A signal object to connect with.
+ * @param[in] callback
*/
- WebViewContextMenuHiddenSignalType& ContextMenuHiddenSignal();
+ void RegisterContextMenuHiddenCallback(Dali::WebEnginePlugin::WebEngineContextMenuHiddenCallback callback);
public: // Not intended for application developers
/// @cond internal
DALI_PROPERTY_REGISTRATION(Toolkit, WebView, "textZoomFactor", FLOAT, TEXT_ZOOM_FACTOR )
DALI_PROPERTY_REGISTRATION(Toolkit, WebView, "loadProgressPercentage", FLOAT, LOAD_PROGRESS_PERCENTAGE )
-DALI_SIGNAL_REGISTRATION(Toolkit, WebView, "pageLoadStarted", PAGE_LOAD_STARTED_SIGNAL )
-DALI_SIGNAL_REGISTRATION(Toolkit, WebView, "pageLoadInProgress", PAGE_LOAD_IN_PROGRESS_SIGNAL )
-DALI_SIGNAL_REGISTRATION(Toolkit, WebView, "pageLoadFinished", PAGE_LOAD_FINISHED_SIGNAL )
-DALI_SIGNAL_REGISTRATION(Toolkit, WebView, "pageLoadError", PAGE_LOAD_ERROR_SIGNAL )
-DALI_SIGNAL_REGISTRATION(Toolkit, WebView, "scrollEdgeReached", SCROLL_EDGE_REACHED_SIGNAL )
-DALI_SIGNAL_REGISTRATION(Toolkit, WebView, "urlChanged", URL_CHANGED_SIGNAL )
-DALI_SIGNAL_REGISTRATION(Toolkit, WebView, "formRepostDecision", FORM_REPOST_DECISION_SIGNAL )
-DALI_SIGNAL_REGISTRATION(Toolkit, WebView, "frameRendered", FRAME_RENDERED_SIGNAL )
-DALI_SIGNAL_REGISTRATION(Toolkit, WebView, "requestInterceptor", REQUEST_INTERCEPTOR_SIGNAL )
-DALI_SIGNAL_REGISTRATION(Toolkit, WebView, "consoleMessage", CONSOLE_MESSAGE_SIGNAL )
-DALI_SIGNAL_REGISTRATION(Toolkit, WebView, "responsePolicyDecided", POLICY_DECISION )
-DALI_SIGNAL_REGISTRATION(Toolkit, WebView, "certificateConfirm", CERTIFICATE_CONFIRM_SIGNAL )
-DALI_SIGNAL_REGISTRATION(Toolkit, WebView, "sslCertificateChanged", SSL_CERTIFICATE_CHANGED_SIGNAL)
-DALI_SIGNAL_REGISTRATION(Toolkit, WebView, "httpAuthRequest", HTTP_AUTH_REQUEST_SIGNAL )
-DALI_SIGNAL_REGISTRATION(Toolkit, WebView, "contextMenuShown", CONTEXT_MENU_SHOWN_SIGNAL )
-DALI_SIGNAL_REGISTRATION(Toolkit, WebView, "contextMenuHidden", CONTEXT_MENU_HIDDEN_SIGNAL )
-
DALI_TYPE_REGISTRATION_END()
// clang-format on
mVisual(),
mWebViewSize(Stage::GetCurrent().GetSize()),
mWebEngine(),
- mPageLoadStartedSignal(),
- mPageLoadFinishedSignal(),
- mPageLoadErrorSignal(),
- mUrlChangedSignal(),
mWebViewArea(0, 0, mWebViewSize.width, mWebViewSize.height),
mVideoHoleEnabled(true),
mMouseEventsEnabled(true),
mVisual(),
mWebViewSize(Stage::GetCurrent().GetSize()),
mWebEngine(),
- mPageLoadStartedSignal(),
- mPageLoadFinishedSignal(),
- mPageLoadErrorSignal(),
- mUrlChangedSignal(),
mWebViewArea(0, 0, mWebViewSize.width, mWebViewSize.height),
mVideoHoleEnabled(true),
mMouseEventsEnabled(true),
{
if(mWebEngine)
{
+ mWebEngine.FrameRenderedSignal().Disconnect(this, &WebView::OnFrameRendered);
mWebEngine.Destroy();
}
}
if(mWebEngine)
{
- mWebEngine.PageLoadStartedSignal().Connect(this, &WebView::OnPageLoadStarted);
- mWebEngine.PageLoadInProgressSignal().Connect(this, &WebView::OnPageLoadInProgress);
- mWebEngine.PageLoadFinishedSignal().Connect(this, &WebView::OnPageLoadFinished);
- mWebEngine.PageLoadErrorSignal().Connect(this, &WebView::OnPageLoadError);
- mWebEngine.ScrollEdgeReachedSignal().Connect(this, &WebView::OnScrollEdgeReached);
- mWebEngine.UrlChangedSignal().Connect(this, &WebView::OnUrlChanged);
- mWebEngine.FormRepostDecisionSignal().Connect(this, &WebView::OnFormRepostDecision);
mWebEngine.FrameRenderedSignal().Connect(this, &WebView::OnFrameRendered);
- mWebEngine.RequestInterceptorSignal().Connect(this, &WebView::OnInterceptRequest);
- mWebEngine.ConsoleMessageSignal().Connect(this, &WebView::OnConsoleMessage);
- mWebEngine.ResponsePolicyDecisionSignal().Connect(this, &WebView::OnResponsePolicyDecided);
- mWebEngine.CertificateConfirmSignal().Connect(this, &WebView::OnCertificateConfirm);
- mWebEngine.SslCertificateChangedSignal().Connect(this, &WebView::OnSslCertificateChanged);
- mWebEngine.HttpAuthHandlerSignal().Connect(this, &WebView::OnHttpAuthenticationRequest);
- mWebEngine.ContextMenuShownSignal().Connect(this, &WebView::OnContextMenuShown);
- mWebEngine.ContextMenuHiddenSignal().Connect(this, &WebView::OnContextMenuHidden);
-
mWebContext = std::unique_ptr<Dali::Toolkit::WebContext>(new WebContext(mWebEngine.GetContext()));
mWebCookieManager = std::unique_ptr<Dali::Toolkit::WebCookieManager>(new WebCookieManager(mWebEngine.GetCookieManager()));
mWebSettings = std::unique_ptr<Dali::Toolkit::WebSettings>(new WebSettings(mWebEngine.GetSettings()));
return imageView;
}
-Dali::Toolkit::WebView::WebViewPageLoadSignalType& WebView::PageLoadStartedSignal()
+void WebView::RegisterPageLoadStartedCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback)
{
- return mPageLoadStartedSignal;
-}
-
-Dali::Toolkit::WebView::WebViewPageLoadSignalType& WebView::PageLoadInProgressSignal()
-{
- return mPageLoadInProgressSignal;
-}
-
-Dali::Toolkit::WebView::WebViewPageLoadSignalType& WebView::PageLoadFinishedSignal()
-{
- return mPageLoadFinishedSignal;
-}
-
-Dali::Toolkit::WebView::WebViewPageLoadErrorSignalType& WebView::PageLoadErrorSignal()
-{
- return mPageLoadErrorSignal;
-}
-
-Dali::Toolkit::WebView::WebViewScrollEdgeReachedSignalType& WebView::ScrollEdgeReachedSignal()
-{
- return mScrollEdgeReachedSignal;
-}
-
-Dali::Toolkit::WebView::WebViewUrlChangedSignalType& WebView::UrlChangedSignal()
-{
- return mUrlChangedSignal;
-}
-
-Dali::Toolkit::WebView::WebViewFormRepostDecisionSignalType& WebView::FormRepostDecisionSignal()
-{
- return mFormRepostDecisionSignal;
-}
-
-Dali::Toolkit::WebView::WebViewFrameRenderedSignalType& WebView::FrameRenderedSignal()
-{
- return mFrameRenderedSignal;
+ if(mWebEngine)
+ {
+ mWebEngine.RegisterPageLoadStartedCallback(callback);
+ }
}
-Dali::Toolkit::WebView::WebViewRequestInterceptorSignalType& WebView::RequestInterceptorSignal()
+void WebView::RegisterPageLoadInProgressCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback)
{
- return mRequestInterceptorSignal;
+ if(mWebEngine)
+ {
+ mWebEngine.RegisterPageLoadInProgressCallback(callback);
+ }
}
-Dali::Toolkit::WebView::WebViewConsoleMessageSignalType& WebView::ConsoleMessageSignal()
+void WebView::RegisterPageLoadFinishedCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback)
{
- return mConsoleMessageSignal;
+ if(mWebEngine)
+ {
+ mWebEngine.RegisterPageLoadFinishedCallback(callback);
+ }
}
-Dali::Toolkit::WebView::WebViewResponsePolicyDecisionSignalType& WebView::ResponsePolicyDecisionSignal()
+void WebView::RegisterPageLoadErrorCallback(Dali::WebEnginePlugin::WebEnginePageLoadErrorCallback callback)
{
- return mResponsePolicyDecisionSignal;
+ if(mWebEngine)
+ {
+ mWebEngine.RegisterPageLoadErrorCallback(callback);
+ }
}
-Dali::Toolkit::WebView::WebViewCertificateSignalType& WebView::CertificateConfirmSignal()
+void WebView::RegisterScrollEdgeReachedCallback(Dali::WebEnginePlugin::WebEngineScrollEdgeReachedCallback callback)
{
- return mCertificateConfirmSignal;
+ if(mWebEngine)
+ {
+ mWebEngine.RegisterScrollEdgeReachedCallback(callback);
+ }
}
-Dali::Toolkit::WebView::WebViewCertificateSignalType& WebView::SslCertificateChangedSignal()
+void WebView::RegisterUrlChangedCallback(Dali::WebEnginePlugin::WebEngineUrlChangedCallback callback)
{
- return mSslCertificateChangedSignal;
+ if(mWebEngine)
+ {
+ mWebEngine.RegisterUrlChangedCallback(callback);
+ }
}
-Dali::Toolkit::WebView::WebViewHttpAuthHandlerSignalType& WebView::HttpAuthHandlerSignal()
+void WebView::RegisterFormRepostDecidedCallback(Dali::WebEnginePlugin::WebEngineFormRepostDecidedCallback callback)
{
- return mHttpAuthHandlerSignal;
+ if(mWebEngine)
+ {
+ mWebEngine.RegisterFormRepostDecidedCallback(callback);
+ }
}
-Dali::Toolkit::WebView::WebViewContextMenuShownSignalType& WebView::ContextMenuShownSignal()
+void WebView::RegisterFrameRenderedCallback(Dali::WebEnginePlugin::WebEngineFrameRenderedCallback callback)
{
- return mContextMenuShownSignal;
+ mFrameRenderedCallback = callback;
}
-Dali::Toolkit::WebView::WebViewContextMenuHiddenSignalType& WebView::ContextMenuHiddenSignal()
+void WebView::RegisterRequestInterceptorCallback(Dali::WebEnginePlugin::WebEngineRequestInterceptorCallback callback)
{
- return mContextMenuHiddenSignal;
+ if(mWebEngine)
+ {
+ mWebEngine.RegisterRequestInterceptorCallback(callback);
+ }
}
-void WebView::OnPageLoadStarted(const std::string& url)
+void WebView::RegisterConsoleMessageReceivedCallback(Dali::WebEnginePlugin::WebEngineConsoleMessageReceivedCallback callback)
{
- if(!mPageLoadStartedSignal.Empty())
+ if(mWebEngine)
{
- Dali::Toolkit::WebView handle(GetOwner());
- mPageLoadStartedSignal.Emit(handle, url);
+ mWebEngine.RegisterConsoleMessageReceivedCallback(callback);
}
}
-void WebView::OnPageLoadInProgress(const std::string& url)
+void WebView::RegisterResponsePolicyDecidedCallback(Dali::WebEnginePlugin::WebEngineResponsePolicyDecidedCallback callback)
{
- if(!mPageLoadInProgressSignal.Empty())
+ if(mWebEngine)
{
- Dali::Toolkit::WebView handle(GetOwner());
- mPageLoadInProgressSignal.Emit(handle, url);
+ mWebEngine.RegisterResponsePolicyDecidedCallback(callback);
}
}
-void WebView::OnPageLoadFinished(const std::string& url)
+void WebView::RegisterCertificateConfirmedCallback(Dali::WebEnginePlugin::WebEngineCertificateCallback callback)
{
- if(!mPageLoadFinishedSignal.Empty())
+ if(mWebEngine)
{
- Dali::Toolkit::WebView handle(GetOwner());
- mPageLoadFinishedSignal.Emit(handle, url);
+ mWebEngine.RegisterCertificateConfirmedCallback(callback);
}
}
-void WebView::OnPageLoadError(std::shared_ptr<Dali::WebEngineLoadError> error)
+void WebView::RegisterSslCertificateChangedCallback(Dali::WebEnginePlugin::WebEngineCertificateCallback callback)
{
- if(!mPageLoadErrorSignal.Empty())
+ if(mWebEngine)
{
- Dali::Toolkit::WebView handle(GetOwner());
- mPageLoadErrorSignal.Emit(handle, std::move(error));
+ mWebEngine.RegisterSslCertificateChangedCallback(callback);
}
}
-void WebView::OnScrollEdgeReached(Dali::WebEnginePlugin::ScrollEdge edge)
+void WebView::RegisterHttpAuthHandlerCallback(Dali::WebEnginePlugin::WebEngineHttpAuthHandlerCallback callback)
{
- if(!mScrollEdgeReachedSignal.Empty())
+ if(mWebEngine)
{
- Dali::Toolkit::WebView handle(GetOwner());
- mScrollEdgeReachedSignal.Emit(handle, edge);
+ mWebEngine.RegisterHttpAuthHandlerCallback(callback);
}
}
-void WebView::OnUrlChanged(const std::string& url)
+void WebView::RegisterContextMenuShownCallback(Dali::WebEnginePlugin::WebEngineContextMenuShownCallback callback)
{
- if(!mUrlChangedSignal.Empty())
+ if(mWebEngine)
{
- Dali::Toolkit::WebView handle(GetOwner());
- mUrlChangedSignal.Emit(handle, url);
+ mWebEngine.RegisterContextMenuShownCallback(callback);
}
}
-void WebView::OnFormRepostDecision(std::shared_ptr<Dali::WebEngineFormRepostDecision> decision)
+void WebView::RegisterContextMenuHiddenCallback(Dali::WebEnginePlugin::WebEngineContextMenuHiddenCallback callback)
{
- if(!mFormRepostDecisionSignal.Empty())
+ if(mWebEngine)
{
- Dali::Toolkit::WebView handle(GetOwner());
- mFormRepostDecisionSignal.Emit(handle, std::move(decision));
+ mWebEngine.RegisterContextMenuHiddenCallback(callback);
}
}
void WebView::OnFrameRendered()
{
- if(!mFrameRenderedSignal.Empty())
+ if(mFrameRenderedCallback)
{
- Dali::Toolkit::WebView handle(GetOwner());
- mFrameRenderedSignal.Emit(handle);
+ mFrameRenderedCallback();
}
}
}
}
-void WebView::OnInterceptRequest(std::shared_ptr<Dali::WebEngineRequestInterceptor> interceptor)
+void WebView::OnSceneConnection(int depth)
{
- if(!mRequestInterceptorSignal.Empty())
- {
- Dali::Toolkit::WebView handle(GetOwner());
- mRequestInterceptorSignal.Emit(handle, std::move(interceptor));
- }
+ Control::OnSceneConnection(depth);
+ EnableBlendMode(!mVideoHoleEnabled);
}
-void WebView::OnConsoleMessage(std::shared_ptr<Dali::WebEngineConsoleMessage> message)
+bool WebView::OnTouchEvent(Actor actor, const Dali::TouchEvent& touch)
{
- if(!mConsoleMessageSignal.Empty())
- {
- Dali::Toolkit::WebView handle(GetOwner());
- mConsoleMessageSignal.Emit(handle, std::move(message));
- }
-}
+ bool result = false;
-void WebView::OnResponsePolicyDecided(std::shared_ptr<Dali::WebEnginePolicyDecision> decision)
-{
- if(!mResponsePolicyDecisionSignal.Empty())
+ if(mWebEngine)
{
- Dali::Toolkit::WebView handle(GetOwner());
- mResponsePolicyDecisionSignal.Emit(handle, std::move(decision));
+ result = mWebEngine.SendTouchEvent(touch);
}
+ return result;
}
-void WebView::OnCertificateConfirm(std::shared_ptr<Dali::WebEngineCertificate> certificate)
+bool WebView::OnKeyEvent(const Dali::KeyEvent& event)
{
- if(!mCertificateConfirmSignal.Empty())
- {
- Dali::Toolkit::WebView handle(GetOwner());
- mCertificateConfirmSignal.Emit(handle, std::move(certificate));
- }
-}
+ bool result = false;
-void WebView::OnSslCertificateChanged(std::shared_ptr<Dali::WebEngineCertificate> certificate)
-{
- if(!mSslCertificateChangedSignal.Empty())
+ if(mWebEngine)
{
- Dali::Toolkit::WebView handle(GetOwner());
- mSslCertificateChangedSignal.Emit(handle, std::move(certificate));
+ result = mWebEngine.SendKeyEvent(event);
}
+ return result;
}
-void WebView::OnHttpAuthenticationRequest(std::shared_ptr<Dali::WebEngineHttpAuthHandler> handler)
+bool WebView::OnHoverEvent(Actor actor, const Dali::HoverEvent& hover)
{
- if(!mHttpAuthHandlerSignal.Empty())
+ bool result = false;
+ if(mWebEngine && mMouseEventsEnabled)
{
- Dali::Toolkit::WebView handle(GetOwner());
- mHttpAuthHandlerSignal.Emit(handle, std::move(handler));
+ result = mWebEngine.SendHoverEvent(hover);
}
+ return result;
}
-void WebView::OnContextMenuShown(std::shared_ptr<Dali::WebEngineContextMenu> menu)
+bool WebView::OnWheelEvent(Actor actor, const Dali::WheelEvent& wheel)
{
- if(!mContextMenuShownSignal.Empty())
+ bool result = false;
+ if(mWebEngine && mMouseEventsEnabled)
{
- Dali::Toolkit::WebView handle(GetOwner());
- mContextMenuShownSignal.Emit(handle, std::move(menu));
+ result = mWebEngine.SendWheelEvent(wheel);
}
+ return result;
}
-void WebView::OnContextMenuHidden(std::shared_ptr<Dali::WebEngineContextMenu> menu)
+void WebView::OnKeyInputFocusGained()
{
- if(!mContextMenuHiddenSignal.Empty())
+ if(mWebEngine)
{
- Dali::Toolkit::WebView handle(GetOwner());
- mContextMenuHiddenSignal.Emit(handle, std::move(menu));
+ mWebEngine.SetFocus(true);
}
+
+ EmitKeyInputFocusSignal(true); // Calls back into the Control hence done last.
}
-bool WebView::DoConnectSignal(BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& signalName, FunctorDelegate* functor)
+void WebView::OnKeyInputFocusLost()
{
- Dali::BaseHandle handle(object);
-
- bool connected = false;
- Toolkit::WebView webView = Toolkit::WebView::DownCast(handle);
-
- if(0 == strcmp(signalName.c_str(), PAGE_LOAD_STARTED_SIGNAL))
- {
- webView.PageLoadStartedSignal().Connect(tracker, functor);
- connected = true;
- }
- else if(0 == strcmp(signalName.c_str(), PAGE_LOAD_IN_PROGRESS_SIGNAL))
- {
- webView.PageLoadInProgressSignal().Connect(tracker, functor);
- connected = true;
- }
- else if(0 == strcmp(signalName.c_str(), PAGE_LOAD_FINISHED_SIGNAL))
- {
- webView.PageLoadFinishedSignal().Connect(tracker, functor);
- connected = true;
- }
- else if(0 == strcmp(signalName.c_str(), PAGE_LOAD_ERROR_SIGNAL))
- {
- webView.PageLoadErrorSignal().Connect(tracker, functor);
- connected = true;
- }
- else if(0 == strcmp(signalName.c_str(), SCROLL_EDGE_REACHED_SIGNAL))
- {
- webView.ScrollEdgeReachedSignal().Connect(tracker, functor);
- connected = true;
- }
- else if(0 == strcmp(signalName.c_str(), URL_CHANGED_SIGNAL))
- {
- webView.UrlChangedSignal().Connect(tracker, functor);
- connected = true;
- }
- else if(0 == strcmp(signalName.c_str(), FORM_REPOST_DECISION_SIGNAL))
- {
- webView.FormRepostDecisionSignal().Connect(tracker, functor);
- connected = true;
- }
- else if(0 == strcmp(signalName.c_str(), FRAME_RENDERED_SIGNAL))
- {
- webView.FrameRenderedSignal().Connect(tracker, functor);
- connected = true;
- }
- else if(0 == strcmp(signalName.c_str(), REQUEST_INTERCEPTOR_SIGNAL))
- {
- webView.RequestInterceptorSignal().Connect(tracker, functor);
- connected = true;
- }
- else if(0 == strcmp(signalName.c_str(), CONSOLE_MESSAGE_SIGNAL))
- {
- webView.ConsoleMessageSignal().Connect(tracker, functor);
- connected = true;
- }
- else if(0 == strcmp(signalName.c_str(), POLICY_DECISION))
- {
- webView.ResponsePolicyDecisionSignal().Connect(tracker, functor);
- connected = true;
- }
- else if(0 == strcmp(signalName.c_str(), CERTIFICATE_CONFIRM_SIGNAL))
- {
- webView.CertificateConfirmSignal().Connect(tracker, functor);
- connected = true;
- }
- else if(0 == strcmp(signalName.c_str(), SSL_CERTIFICATE_CHANGED_SIGNAL))
- {
- webView.SslCertificateChangedSignal().Connect(tracker, functor);
- connected = true;
- }
- else if(0 == strcmp(signalName.c_str(), HTTP_AUTH_REQUEST_SIGNAL))
- {
- webView.HttpAuthHandlerSignal().Connect(tracker, functor);
- connected = true;
- }
- else if(0 == strcmp(signalName.c_str(), CONTEXT_MENU_SHOWN_SIGNAL))
- {
- webView.ContextMenuShownSignal().Connect(tracker, functor);
- connected = true;
- }
- else if(0 == strcmp(signalName.c_str(), CONTEXT_MENU_HIDDEN_SIGNAL))
+ if(mWebEngine)
{
- webView.ContextMenuHiddenSignal().Connect(tracker, functor);
- connected = true;
+ mWebEngine.SetFocus(false);
}
- return connected;
+ EmitKeyInputFocusSignal(false); // Calls back into the Control hence done last.
}
Vector3 WebView::GetNaturalSize()
return Vector3(mWebViewSize);
}
-void WebView::OnSceneConnection(int depth)
-{
- Control::OnSceneConnection(depth);
-
- EnableBlendMode(!mVideoHoleEnabled);
-}
-
void WebView::SetProperty(BaseObject* object, Property::Index index, const Property::Value& value)
{
Toolkit::WebView webView = Toolkit::WebView::DownCast(Dali::BaseHandle(object));
return value;
}
-bool WebView::OnTouchEvent(Actor actor, const Dali::TouchEvent& touch)
-{
- bool result = false;
-
- if(mWebEngine)
- {
- result = mWebEngine.SendTouchEvent(touch);
- }
- return result;
-}
-
-bool WebView::OnKeyEvent(const Dali::KeyEvent& event)
-{
- bool result = false;
-
- if(mWebEngine)
- {
- result = mWebEngine.SendKeyEvent(event);
- }
- return result;
-}
-
-bool WebView::OnHoverEvent(Actor actor, const Dali::HoverEvent& hover)
-{
- bool result = false;
- if(mWebEngine && mMouseEventsEnabled)
- {
- result = mWebEngine.SendHoverEvent(hover);
- }
- return result;
-}
-
-bool WebView::OnWheelEvent(Actor actor, const Dali::WheelEvent& wheel)
-{
- bool result = false;
- if(mWebEngine && mMouseEventsEnabled)
- {
- result = mWebEngine.SendWheelEvent(wheel);
- }
- return result;
-}
-
-void WebView::OnKeyInputFocusGained()
-{
- if(mWebEngine)
- {
- mWebEngine.SetFocus(true);
- }
-
- EmitKeyInputFocusSignal(true); // Calls back into the Control hence done last.
-}
-
-void WebView::OnKeyInputFocusLost()
-{
- if(mWebEngine)
- {
- mWebEngine.SetFocus(false);
- }
-
- EmitKeyInputFocusSignal(false); // Calls back into the Control hence done last.
-}
-
void WebView::SetScrollPosition(int32_t x, int32_t y)
{
if(mWebEngine)
/**
* @copydoc Dali::Toolkit::WebView::EvaluateJavaScript()
*/
- void EvaluateJavaScript(const std::string& script, std::function<void(const std::string&)> resultHandler);
+ void EvaluateJavaScript(const std::string& script, Dali::WebEnginePlugin::JavaScriptMessageHandlerCallback resultHandler);
/**
* @copydoc Dali::Toolkit::WebView::AddJavaScriptMessageHandler()
*/
- void AddJavaScriptMessageHandler(const std::string& exposedObjectName, std::function<void(const std::string&)> handler);
+ void AddJavaScriptMessageHandler(const std::string& exposedObjectName, Dali::WebEnginePlugin::JavaScriptMessageHandlerCallback handler);
/**
* @copydoc Dali::Toolkit::WebView::RegisterJavaScriptAlertCallback()
void SetTtsFocus(bool focused);
/**
- * @copydoc Dali::Toolkit::WebView::PageLoadStartedSignal()
+ * @copydoc Dali::Toolkit::WebView::RegisterPageLoadStartedCallback()
*/
- Dali::Toolkit::WebView::WebViewPageLoadSignalType& PageLoadStartedSignal();
+ void RegisterPageLoadStartedCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback);
/**
- * @copydoc Dali::Toolkit::WebView::PageLoadInProgressSignal()
+ * @copydoc Dali::Toolkit::WebView::RegisterPageLoadInProgressCallback()
*/
- Dali::Toolkit::WebView::WebViewPageLoadSignalType& PageLoadInProgressSignal();
+ void RegisterPageLoadInProgressCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback);
/**
- * @copydoc Dali::Toolkit::WebView::PageLoadFinishedSignal()
+ * @copydoc Dali::Toolkit::WebView::RegisterPageLoadFinishedCallback()
*/
- Dali::Toolkit::WebView::WebViewPageLoadSignalType& PageLoadFinishedSignal();
+ void RegisterPageLoadFinishedCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback);
/**
- * @copydoc Dali::Toolkit::WebView::PageLoadErrorSignal()
+ * @copydoc Dali::Toolkit::WebView::RegisterPageLoadErrorCallback()
*/
- Dali::Toolkit::WebView::WebViewPageLoadErrorSignalType& PageLoadErrorSignal();
+ void RegisterPageLoadErrorCallback(Dali::WebEnginePlugin::WebEnginePageLoadErrorCallback callback);
/**
- * @copydoc Dali::Toolkit::WebView::ScrollEdgeReachedSignal()
+ * @copydoc Dali::Toolkit::WebView::RegisterScrollEdgeReachedCallback()
*/
- Dali::Toolkit::WebView::WebViewScrollEdgeReachedSignalType& ScrollEdgeReachedSignal();
+ void RegisterScrollEdgeReachedCallback(Dali::WebEnginePlugin::WebEngineScrollEdgeReachedCallback callback);
/**
- * @copydoc Dali::Toolkit::WebView::UrlChangedSignal()
+ * @copydoc Dali::Toolkit::WebView::RegisterUrlChangedCallback()
*/
- Dali::Toolkit::WebView::WebViewUrlChangedSignalType& UrlChangedSignal();
+ void RegisterUrlChangedCallback(Dali::WebEnginePlugin::WebEngineUrlChangedCallback callback);
/**
- * @copydoc Dali::Toolkit::WebView::FormRepostDecisionSignal()
+ * @copydoc Dali::Toolkit::WebView::RegisterFormRepostDecidedCallback()
*/
- Dali::Toolkit::WebView::WebViewFormRepostDecisionSignalType& FormRepostDecisionSignal();
+ void RegisterFormRepostDecidedCallback(Dali::WebEnginePlugin::WebEngineFormRepostDecidedCallback callback);
/**
- * @copydoc Dali::Toolkit::WebView::FrameRenderedSignal()
+ * @copydoc Dali::Toolkit::WebView::RegisterFrameRenderedCallback()
*/
- Dali::Toolkit::WebView::WebViewFrameRenderedSignalType& FrameRenderedSignal();
+ void RegisterFrameRenderedCallback(Dali::WebEnginePlugin::WebEngineFrameRenderedCallback callback);
/**
- * @copydoc Dali::Toolkit::WebView::RequestInterceptorSignal()
+ * @copydoc Dali::Toolkit::WebView::RegisterRequestInterceptorCallback()
*/
- Dali::Toolkit::WebView::WebViewRequestInterceptorSignalType& RequestInterceptorSignal();
+ void RegisterRequestInterceptorCallback(Dali::WebEnginePlugin::WebEngineRequestInterceptorCallback callback);
/**
- * @copydoc Dali::Toolkit::WebView::ConsoleMessageSignal()
+ * @copydoc Dali::Toolkit::WebView::RegisterConsoleMessageReceivedCallback()
*/
- Dali::Toolkit::WebView::WebViewConsoleMessageSignalType& ConsoleMessageSignal();
+ void RegisterConsoleMessageReceivedCallback(Dali::WebEnginePlugin::WebEngineConsoleMessageReceivedCallback callback);
/**
- * @copydoc Dali::Toolkit::WebView::ResponsePolicyDecisionSignal()
+ * @copydoc Dali::Toolkit::WebView::RegisterResponsePolicyDecidedCallback()
*/
- Dali::Toolkit::WebView::WebViewResponsePolicyDecisionSignalType& ResponsePolicyDecisionSignal();
+ void RegisterResponsePolicyDecidedCallback(Dali::WebEnginePlugin::WebEngineResponsePolicyDecidedCallback callback);
/**
- * @copydoc Dali::Toolkit::WebView::CertificateConfirmSignal()
+ * @copydoc Dali::Toolkit::WebView::RegisterCertificateConfirmedCallback()
*/
- Dali::Toolkit::WebView::WebViewCertificateSignalType& CertificateConfirmSignal();
+ void RegisterCertificateConfirmedCallback(Dali::WebEnginePlugin::WebEngineCertificateCallback callback);
/**
- * @copydoc Dali::Toolkit::WebView::SslCertificateChangedSignal()
+ * @copydoc Dali::Toolkit::WebView::RegisterSslCertificateChangedCallback()
*/
- Dali::Toolkit::WebView::WebViewCertificateSignalType& SslCertificateChangedSignal();
+ void RegisterSslCertificateChangedCallback(Dali::WebEnginePlugin::WebEngineCertificateCallback callback);
/**
- * @copydoc Dali::Toolkit::WebView::HttpAuthHandlerSignal()
+ * @copydoc Dali::Toolkit::WebView::RegisterHttpAuthHandlerCallback()
*/
- Dali::Toolkit::WebView::WebViewHttpAuthHandlerSignalType& HttpAuthHandlerSignal();
+ void RegisterHttpAuthHandlerCallback(Dali::WebEnginePlugin::WebEngineHttpAuthHandlerCallback callback);
/**
- * @copydoc Dali::Toolkit::WebView::ContextMenuShownSignal()
+ * @copydoc Dali::Toolkit::WebView::RegisterContextMenuShownCallback()
*/
- Dali::Toolkit::WebView::WebViewContextMenuShownSignalType& ContextMenuShownSignal();
+ void RegisterContextMenuShownCallback(Dali::WebEnginePlugin::WebEngineContextMenuShownCallback callback);
/**
- * @copydoc Dali::Toolkit::WebView::ContextMenuHiddenSignal()
+ * @copydoc Dali::Toolkit::WebView::RegisterContextMenuHiddenCallback()
*/
- Dali::Toolkit::WebView::WebViewContextMenuHiddenSignalType& ContextMenuHiddenSignal();
+ void RegisterContextMenuHiddenCallback(Dali::WebEnginePlugin::WebEngineContextMenuHiddenCallback callback);
public: // Properties
/**
*/
static Dali::Property::Value GetProperty(Dali::BaseObject* object, Dali::Property::Index propertyIndex);
- /**
- * Connects a callback function with the object's signals.
- * @param[in] object The object providing the signal.
- * @param[in] tracker Used to disconnect the signal.
- * @param[in] signalName The signal to connect to.
- * @param[in] functor A newly allocated FunctorDelegate.
- * @return True if the signal was connected.
- * @post If a signal was connected, ownership of functor was passed to CallbackBase. Otherwise the c
- */
- static bool DoConnectSignal(BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& signalName, FunctorDelegate* functor);
-
private: // From Control
/**
* @copydoc Toolkit::Control::OnInitialize()
Dali::Toolkit::ImageView CreateImageView(Dali::PixelData pixel) const;
/**
- * @brief Callback function to be called when page load started.
- * @param[in] url The url currently being loaded
- */
- void OnPageLoadStarted(const std::string& url);
-
- /**
- * @brief Callback function to be called when page is loading in progress.
- * @param[in] url The url currently being loaded
- */
- void OnPageLoadInProgress(const std::string& url);
-
- /**
- * @brief Callback function to be called when page load finished.
- * @param[in] url The url currently being loaded
- */
- void OnPageLoadFinished(const std::string& url);
-
- /**
- * @brief Callback function to be called when there is an error in page loading.
- * @param[in] url The url currently being loaded
- * @param[in] errorCode The error code
- */
- void OnPageLoadError(std::shared_ptr<Dali::WebEngineLoadError> error);
-
- /**
- * @brief Callback function to be called when scroll edge is reached.
- * @param[in] edge The scroll edge reached.
- */
- void OnScrollEdgeReached(Dali::WebEnginePlugin::ScrollEdge edge);
-
- /**
- * @brief Callback function to be called when url is changed.
- * @param[in] url The url currently being loaded
- */
- void OnUrlChanged(const std::string& url);
-
- /**
* @brief Signal occurs when the Web View has been touched.
* @param[in] actor The Actor Touched
* @param[in] touch The Touch Data.
bool OnWheelEvent(Actor actor, const Dali::WheelEvent& wheel);
/**
- * @brief Callback function to be called when form repost decision need be checked.
- * @param[in] decision The new decision for form repost
- */
- void OnFormRepostDecision(std::shared_ptr<Dali::WebEngineFormRepostDecision> decision);
-
- /**
* @brief Callback function to be called when frame is rendered.
*/
void OnFrameRendered();
*/
void OnScreenshotCaptured(Dali::PixelData pixel);
- /**
- * @brief Callback function to be called when http request need be intercepted.
- * @param [in] request The http request interceptor.
- */
- void OnInterceptRequest(std::shared_ptr<Dali::WebEngineRequestInterceptor> interceptor);
-
- /**
- * @brief Callback function to be called when console message will be logged.
- * @param[in] message The message logged.
- */
- void OnConsoleMessage(std::shared_ptr<Dali::WebEngineConsoleMessage> message);
-
- /**
- * @brief Callback function to be called when response policy need be decided.
- * @param[in] decision The policy decided.
- */
- void OnResponsePolicyDecided(std::shared_ptr<Dali::WebEnginePolicyDecision> decision);
-
- /**
- * @brief Callback function to be called when certificate need be confirmed.
- * @param[in] certificate The certificate policy decision.
- */
- void OnCertificateConfirm(std::shared_ptr<Dali::WebEngineCertificate> certificate);
-
- /**
- * @brief Callback function to be called when ssl certificate is changed.
- * @param[in] certificate The certificate information received.
- */
- void OnSslCertificateChanged(std::shared_ptr<Dali::WebEngineCertificate> certificate);
-
- /**
- * @brief Callback function to be called when http authentication need be confirmed.
- * @param[in] handler The handler for http authentication
- */
- void OnHttpAuthenticationRequest(std::shared_ptr<Dali::WebEngineHttpAuthHandler> handler);
-
- /**
- * @brief Callback function to be called when context menu would be shown.
- * @param[in] e The scroll edge reached.
- */
- void OnContextMenuShown(std::shared_ptr<Dali::WebEngineContextMenu> menu);
-
- /**
- * @brief Callback function to be called when context menu would be hidden.
- * @param[in] url The url currently being loaded
- */
- void OnContextMenuHidden(std::shared_ptr<Dali::WebEngineContextMenu> menu);
-
private:
Dali::Toolkit::Visual::Base mVisual;
Dali::Size mWebViewSize;
Dali::WebEngine mWebEngine;
- Dali::Toolkit::WebView::WebViewPageLoadSignalType mPageLoadStartedSignal;
- Dali::Toolkit::WebView::WebViewPageLoadSignalType mPageLoadInProgressSignal;
- Dali::Toolkit::WebView::WebViewPageLoadSignalType mPageLoadFinishedSignal;
- Dali::Toolkit::WebView::WebViewPageLoadErrorSignalType mPageLoadErrorSignal;
- Dali::Toolkit::WebView::WebViewUrlChangedSignalType mUrlChangedSignal;
- Dali::Toolkit::WebView::WebViewScrollEdgeReachedSignalType mScrollEdgeReachedSignal;
- Dali::Toolkit::WebView::WebViewFormRepostDecisionSignalType mFormRepostDecisionSignal;
- Dali::Toolkit::WebView::WebViewFrameRenderedSignalType mFrameRenderedSignal;
- Dali::Toolkit::WebView::WebViewRequestInterceptorSignalType mRequestInterceptorSignal;
- Dali::Toolkit::WebView::WebViewConsoleMessageSignalType mConsoleMessageSignal;
- Dali::Toolkit::WebView::WebViewResponsePolicyDecisionSignalType mResponsePolicyDecisionSignal;
- Dali::Toolkit::WebView::WebViewCertificateSignalType mCertificateConfirmSignal;
- Dali::Toolkit::WebView::WebViewCertificateSignalType mSslCertificateChangedSignal;
- Dali::Toolkit::WebView::WebViewHttpAuthHandlerSignalType mHttpAuthHandlerSignal;
- Dali::Toolkit::WebView::WebViewContextMenuShownSignalType mContextMenuShownSignal;
- Dali::Toolkit::WebView::WebViewContextMenuHiddenSignalType mContextMenuHiddenSignal;
-
std::unique_ptr<Dali::Toolkit::WebContext> mWebContext;
std::unique_ptr<Dali::Toolkit::WebCookieManager> mWebCookieManager;
std::unique_ptr<Dali::Toolkit::WebSettings> mWebSettings;
bool mKeyEventsEnabled;
Dali::Toolkit::WebView::WebViewScreenshotCapturedCallback mScreenshotCapturedCallback;
+ Dali::WebEnginePlugin::WebEngineFrameRenderedCallback mFrameRenderedCallback;
};
} // namespace Internal