X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Fweb-view%2Fweb-view-impl.h;h=a5cefa4685555fea92d5d814cbc7103fd5c5dc9e;hp=cf5319f6d6c247a6bf893b1564ab1a4c06501290;hb=6315cd1b3658b13e89d0ca4e1b4ce5028cdd393f;hpb=03d087167ceac9acf09a9cb7eb86bc06c0a5d4e7 diff --git a/dali-toolkit/internal/controls/web-view/web-view-impl.h b/dali-toolkit/internal/controls/web-view/web-view-impl.h index cf5319f..a5cefa4 100755 --- a/dali-toolkit/internal/controls/web-view/web-view-impl.h +++ b/dali-toolkit/internal/controls/web-view/web-view-impl.h @@ -52,7 +52,7 @@ protected: WebView(const std::string& locale, const std::string& timezoneId); - WebView(int argc, char** argv); + WebView(uint32_t argc, char** argv); virtual ~WebView(); @@ -68,36 +68,34 @@ public: static Toolkit::WebView New(const std::string& locale, const std::string& timezoneId); /** - * @copydoc Dali::Toolkit::WebView::New( int, char** ) + * @copydoc Dali::Toolkit::WebView::New( uint32_t, char** ) */ - static Toolkit::WebView New(int argc, char** argv); + static Toolkit::WebView New(uint32_t argc, char** argv); /** - * @brief Get settings of WebEngine. + * @copydoc Dali::Toolkit::WebView::GetSettings() */ Dali::Toolkit::WebSettings* GetSettings() const; /** - * @brief Get context of WebEngine. + * @copydoc Dali::Toolkit::WebView::GetContext() */ Dali::Toolkit::WebContext* GetContext() const; /** - * @brief Get cookie manager of WebEngine. + * @copydoc Dali::Toolkit::WebView::GetCookieManager() */ Dali::Toolkit::WebCookieManager* GetCookieManager() const; /** - * @brief Get WebBackForwardList of WebEngine. + * @copydoc Dali::Toolkit::WebView::GetBackForwardList() */ Dali::Toolkit::WebBackForwardList* GetBackForwardList() const; /** - * @brief Get Favicon of web page. - * - * @return Handle to a fav icon + * @copydoc Dali::Toolkit::WebView::GetFavicon() */ - Dali::Toolkit::ImageView& GetFavicon(); + Dali::Toolkit::ImageView GetFavicon() const; /** * @copydoc Dali::Toolkit::WebView::LoadUrl() @@ -177,12 +175,12 @@ public: /** * @copydoc Dali::Toolkit::WebView::ScrollBy() */ - void ScrollBy(int deltaX, int deltaY); + void ScrollBy(int32_t deltaX, int32_t deltaY); /** * @copydoc Dali::WebEngine::ScrollEdgeBy() */ - bool ScrollEdgeBy(int deltaX, int deltaY); + bool ScrollEdgeBy(int32_t deltaX, int32_t deltaY); /** * @copydoc Dali::Toolkit::WebView::CanGoForward() @@ -245,6 +243,16 @@ public: void JavaScriptPromptReply(const std::string& result); /** + * @copydoc Dali::Toolkit::WebView::CreateHitTest() + */ + std::unique_ptr CreateHitTest(int32_t x, int32_t y, Dali::WebEngineHitTest::HitTestMode mode); + + /** + * @copydoc Dali::Toolkit::WebView::CreateHitTestAsynchronously() + */ + bool CreateHitTestAsynchronously(int32_t x, int32_t y, Dali::WebEngineHitTest::HitTestMode mode, Dali::WebEnginePlugin::WebEngineHitTestCreatedCallback callback); + + /** * @copydoc Dali::Toolkit::WebView::ClearHistory() */ void ClearHistory(); @@ -282,12 +290,12 @@ public: /** * @copydoc Dali::Toolkit::WebView::GetScreenshot() */ - Dali::Toolkit::ImageView GetScreenshot(Dali::Rect viewArea, float scaleFactor); + Dali::Toolkit::ImageView GetScreenshot(Dali::Rect viewArea, float scaleFactor); /** * @copydoc Dali::Toolkit::WebView::GetScreenshotAsynchronously() */ - bool GetScreenshotAsynchronously(Dali::Rect viewArea, float scaleFactor, Dali::Toolkit::WebView::WebViewScreenshotCapturedCallback callback); + bool GetScreenshotAsynchronously(Dali::Rect viewArea, float scaleFactor, Dali::Toolkit::WebView::WebViewScreenshotCapturedCallback callback); /** * @copydoc Dali::Toolkit::WebView::CheckVideoPlayingAsynchronously() @@ -349,6 +357,36 @@ public: */ Dali::Toolkit::WebView::WebViewConsoleMessageSignalType& ConsoleMessageSignal(); + /** + * @copydoc Dali::Toolkit::WebView::ResponsePolicyDecisionSignal() + */ + Dali::Toolkit::WebView::WebViewResponsePolicyDecisionSignalType& ResponsePolicyDecisionSignal(); + + /** + * @copydoc Dali::Toolkit::WebView::CertificateConfirmSignal() + */ + Dali::Toolkit::WebView::WebViewCertificateSignalType& CertificateConfirmSignal(); + + /** + * @copydoc Dali::Toolkit::WebView::SslCertificateChangedSignal() + */ + Dali::Toolkit::WebView::WebViewCertificateSignalType& SslCertificateChangedSignal(); + + /** + * @copydoc Dali::Toolkit::WebView::HttpAuthHandlerSignal() + */ + Dali::Toolkit::WebView::WebViewHttpAuthHandlerSignalType& HttpAuthHandlerSignal(); + + /** + * @copydoc Dali::Toolkit::WebView::ContextMenuCustomizedSignal() + */ + Dali::Toolkit::WebView::WebViewContextMenuCustomizedSignalType& ContextMenuCustomizedSignal(); + + /** + * @copydoc Dali::Toolkit::WebView::ContextMenuItemSelectedSignal() + */ + Dali::Toolkit::WebView::WebViewContextMenuItemSelectedSignalType& ContextMenuItemSelectedSignal(); + public: // Properties /** * @brief Called when a property of an object of this type is set. @@ -421,10 +459,10 @@ private: * @param[in] x The coordinate x of scroll * @param[in] y The coordinate y of scroll */ - void SetScrollPosition(int x, int y); + void SetScrollPosition(int32_t x, int32_t y); /** - * @brief Gets the current scroll position of the given view. + * @brief Get the current scroll position of the given view. * @param[out] x The coordinate x of scroll * @param[out] y The coordinate y of scroll */ @@ -570,7 +608,7 @@ private: * @param[in] pixel Pixel data * @return The new image view */ - Dali::Toolkit::ImageView CreateImageView(Dali::PixelData pixel); + Dali::Toolkit::ImageView CreateImageView(Dali::PixelData pixel) const; /** * @brief Callback function to be called when page load started. @@ -599,7 +637,7 @@ private: /** * @brief Callback function to be called when scroll edge is reached. - * @param[in] e The scroll edge reached. + * @param[in] edge The scroll edge reached. */ void OnScrollEdgeReached(Dali::WebEnginePlugin::ScrollEdge edge); @@ -610,7 +648,7 @@ private: void OnUrlChanged(const std::string& url); /** - * Signal occurs when the Web View has been touched. + * @brief Signal occurs when the Web View has been touched. * @param[in] actor The Actor Touched * @param[in] touch The Touch Data. * @return Whether to consume event or not. @@ -618,7 +656,7 @@ private: bool OnTouchEvent(Actor actor, const Dali::TouchEvent& touch); /** - * Signal occurs when the Web View has been hovered. + * @brief Signal occurs when the Web View has been hovered. * @param[in] actor The Actor Hovered * @param[in] hover The Hover Data. * @return Whether to consume event or not. @@ -626,7 +664,7 @@ private: bool OnHoverEvent(Actor actor, const Dali::HoverEvent& hover); /** - * Signal occurs when the Web View receives wheel event. + * @brief Signal occurs when the Web View receives wheel event. * @param[in] actor The Actor that receives Wheel event. * @param[in] wheel The Wheel Data. * @return Whether to consume event or not. @@ -670,35 +708,75 @@ private: */ void OnConsoleMessage(std::shared_ptr message); + /** + * @brief Callback function to be called when response policy need be decided. + * @param[in] decision The policy decided. + */ + void OnResponsePolicyDecided(std::shared_ptr decision); + + /** + * @brief Callback function to be called when certificate need be confirmed. + * @param[in] certificate The certificate policy decision. + */ + void OnCertificateConfirm(std::shared_ptr certificate); + + /** + * @brief Callback function to be called when ssl certificate is changed. + * @param[in] certificate The certificate information received. + */ + void OnSslCertificateChanged(std::shared_ptr 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 handler); + + /** + * @brief Callback function to be called when context menu would be customized. + * @param[in] e The scroll edge reached. + */ + void OnContextMenuCustomized(std::shared_ptr menu); + + /** + * @brief Callback function to be called when context menu item is selected. + * @param[in] url The url currently being loaded + */ + void OnContextMenuItemSelected(std::shared_ptr item); + private: std::string mUrl; 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::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::WebViewContextMenuCustomizedSignalType mContextMenuCustomizedSignal; + Dali::Toolkit::WebView::WebViewContextMenuItemSelectedSignalType mContextMenuItemSelectedSignal; std::unique_ptr mWebContext; std::unique_ptr mWebCookieManager; std::unique_ptr mWebSettings; std::unique_ptr mWebBackForwardList; - Dali::Toolkit::ImageView mFaviconView; - Dali::PropertyNotification mPositionUpdateNotification; Dali::PropertyNotification mSizeUpdateNotification; Dali::PropertyNotification mScaleUpdateNotification; + Dali::Rect mWebViewArea; bool mVideoHoleEnabled; - Dali::Rect mWebViewArea; bool mMouseEventsEnabled; bool mKeyEventsEnabled;