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=572688b40708819a145dbe3a2fb908e2aebb342b;hp=476911041d1a1b8315b7db729ca4516f7441db1a;hb=8d7facdc053ca256566f8e91c180b9027692ef2a;hpb=d30d320c158f38d9c1ff49e01627467d3950698d 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 4769110..572688b 100755 --- a/dali-toolkit/internal/controls/web-view/web-view-impl.h +++ b/dali-toolkit/internal/controls/web-view/web-view-impl.h @@ -22,11 +22,13 @@ #include #include #include +#include // INTERNAL INCLUDES #include #include #include +#include namespace Dali { @@ -53,6 +55,8 @@ protected: WebView( const std::string& locale, const std::string& timezoneId ); + WebView( int argc, char** argv ); + virtual ~WebView(); public: @@ -88,6 +92,18 @@ public: Dali::Toolkit::WebBackForwardList* GetBackForwardList() const; /** + * @copydoc Dali::Toolkit::WebView::New( int, char** ) + */ + static Toolkit::WebView New( int argc, char** argv ); + + /** + * @brief Get Favicon of web page. + * + * @return Handle to a fav icon + */ + Dali::Toolkit::ImageView& GetFavicon(); + + /** * @copydoc Dali::Toolkit::WebView::LoadUrl() */ void LoadUrl( const std::string& url ); @@ -153,6 +169,11 @@ public: void AddJavaScriptMessageHandler( const std::string& exposedObjectName, std::function< void( const std::string& ) > handler ); /** + * @brief Clears all tiles resources of Web. + */ + void ClearAllTilesResources(); + + /** * @copydoc Dali::Toolkit::WebView::ClearHistory() */ void ClearHistory(); @@ -221,11 +242,6 @@ private: // From Control Vector3 GetNaturalSize() override; /** - * @copydoc Toolkit::Control::OnRelayout() - */ - void OnRelayout( const Vector2& size, RelayoutContainer& container ) override; - - /** * Signal occurs when the Web View has been touched. * @param[in] actor The Actor Touched * @param[in] touch The Touch Data. @@ -248,6 +264,11 @@ private: // From Control */ void OnKeyInputFocusLost() override; + /** + * @copydoc Toolkit::Control::OnSceneConnection() + */ + void OnSceneConnection( int depth ) override; + private: // Undefined @@ -267,21 +288,28 @@ private: * @param[out] x The coordinate x of scroll * @param[out] y The coordinate y of scroll */ - void GetScrollPosition( int& x, int& y ) const; + Dali::Vector2 GetScrollPosition() const; /** * @brief Gets the possible scroll size of the given view. * @param[out] width The width of scroll size * @param[out] height The height of scroll size */ - void GetScrollSize( int& width, int& height ) const; + Dali::Vector2 GetScrollSize() const; /** * @brief Gets the last known content's size. * @param[out] width The width of content's size * @param[out] height The height of content's size */ - void GetContentSize( int& width, int& height ) const; + Dali::Vector2 GetContentSize() const; + + /** + * @brief Returns the title of the Web. + * + * @return The title of web page + */ + std::string GetTitle() const; /** * @brief Get user agent string. @@ -296,6 +324,24 @@ private: void SetUserAgent( const std::string& userAgent ); /** + * @brief Updates display area of web view. + * @param[in] source The soource triggers Notification. + */ + void UpdateDisplayArea( Dali::PropertyNotification& source ); + + /** + * @brief Enable/Disable video hole for video playing. + * @param[in] enabled True if video hole is enabled, false otherwise. + */ + void EnableVideoHole( bool enabled ); + + /** + * @brief Enable blend mode. + * @param[in] blendEnabled True if turn on blend mode, false otherwise. + */ + void EnableBlendMode( bool blendEnabled ); + + /** * @brief Callback function to be called when page load started. * @param[in] url The url currently being loaded */ @@ -336,6 +382,13 @@ private: 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; + bool mVideoHoleEnabled; + Dali::Rect< int > mWebViewArea; }; } // namespace Internal