2 // Open Service Platform
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
5 // Licensed under the Apache License, Version 2.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
9 // http://www.apache.org/licenses/LICENSE-2.0
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an "AS IS" BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
20 * @brief This is the header file for the %Web class.
22 * This header file contains the declarations of the %Web class.
24 #ifndef _FWEB_CTRL_WEB_H_
25 #define _FWEB_CTRL_WEB_H_
27 #include <FBaseBuffer.h>
28 #include <FBaseResult.h>
29 #include <FBaseString.h>
30 #include <FUiContainer.h>
32 namespace Tizen { namespace Graphics
39 namespace Tizen { namespace Net { namespace Http
42 }}} // Tizen::Net::Http
44 namespace Tizen { namespace Web { namespace Controls
46 class IJavaScriptBridge;
47 class ILoadingListener;
48 class ITextSearchListener;
49 class IWebDownloadListener;
50 class IWebKeypadEventListener;
51 class IWebUiEventListener;
52 class IWebUiEventListenerF;
54 class HitElementResult;
55 class PageNavigationList;
58 }}} // Tizen::Web::Controls
60 namespace Tizen { namespace Web { namespace Controls
65 * @brief This class provides methods for embedding a browser in an application.
69 * The %Web class provides methods for embedding a browser in an application to load and render various types of %Web content. Similar to adding UI controls, the %Web content can be added to the application by adding a %Web control.
71 * For more information on the class features and %Web browser feature limitations, see <a href="../org.tizen.native.appprogramming/html/guide/web/controls_namespace.htm">Web Controls Guide</a> and <a href="../org.tizen.native.appprogramming/html/guide/web/supported_web_features.htm">Supported Features in the Web Control</a>.
73 * The following example demonstrates how to use the %Web class.
75 // Sample code for WebSample.h
80 public Tizen::Ui::Controls::Form
84 virtual ~WebSample(void) {};
90 Tizen::Web::Controls::Web *__pWeb;
93 virtual result OnInitializing(void);
96 // Sample code for WebSample.cpp
97 #include "WebSample.h"
99 using namespace Tizen::Ui;
100 using namespace Tizen::Ui::Controls;
101 using namespace Tizen::Web::Controls;
104 WebSample::OnInitializing(void)
106 result r = E_SUCCESS;
109 __pWeb->Construct(GetClientAreaBounds());
116 // Calls LoadUrl() with the URL of the Web content to display it on the Web control
118 WebSample::LoadUrl(void)
120 Tizen::Base::String url(L"http://www.tizen.org");
122 __pWeb->LoadUrl(url);
127 class _OSP_EXPORT_ Web
128 : public Tizen::Ui::Container
132 * The object is not fully constructed after this constructor is called. For full construction, the Construct() method must be called right after calling this constructor.
139 * This destructor overrides Tizen::Base::Object::~Object().
146 * Initializes this instance of the %Web control with the specified parameters.
151 * @privilege %http://tizen.org/privilege/web.service
153 * @return An error code
154 * @param[in] rect The rectangle size of the control
155 * @exception E_SUCCESS The method is successful.
156 * @exception E_SYSTEM The method has failed.
157 * @exception E_INVALID_ARG The specified @c rect is invalid.
158 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
159 * @exception E_USER_NOT_CONSENTED The user blocks an application from calling this method. @b Since: @b 2.1
161 result Construct(const Tizen::Graphics::Rectangle& rect);
164 * Initializes this instance of the %Web control with the specified parameters.
169 * @privilege %http://tizen.org/privilege/web.service
171 * @return An error code
172 * @param[in] rect The rectangle size of the control
173 * @exception E_SUCCESS The method is successful.
174 * @exception E_SYSTEM The method has failed.
175 * @exception E_INVALID_ARG The specified @c rect is invalid.
176 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
177 * @exception E_USER_NOT_CONSENTED The user blocks an application from calling this method.
179 result Construct(const Tizen::Graphics::FloatRectangle& rect);
182 * Loads the resource specified by the URL.
187 * @privilege %http://tizen.org/privilege/web.service
189 * @param[in] url The resource to load
190 * @exception E_SUCCESS The method is successful.
191 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
192 * @exception E_USER_NOT_CONSENTED The user blocks an application from calling this method. @b Since: @b 2.1
193 * @remarks The specific error code can be accessed using the GetLastResult() method.
195 void LoadUrl(const Tizen::Base::String& url);
198 * Loads the resource specified by the URL with the given header of HTTP request.
203 * @privilege %http://tizen.org/privilege/web.service
205 * @return An error code
206 * @param[in] url The resource to load
207 * @param[in] header The header of the HTTP request
208 * @exception E_SUCCESS The method is successful.
209 * @exception E_INVALID_HEADER The header object does not contain any header fields.
210 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
211 * @exception E_USER_NOT_CONSENTED The user blocks an application from calling this method. @b Since: @b 2.1
213 result LoadUrl(const Tizen::Base::String& url, const Tizen::Net::Http::HttpHeader& header);
216 * Load the resource specified by the URL with the given header and body of HTTP request. @n
217 * The header must include content-type entity-header field that is needed to check mime-type of the message body.
222 * @privilege %http://tizen.org/privilege/web.service
224 * @return An error code
225 * @param[in] url The resource to load
226 * @param[in] header The header of the HTTP request
227 * @param[in] body The message body of the HTTP request
228 * @exception E_SUCCESS The method is successful.
229 * @exception E_INVALID_HEADER The header object does not contain any header fields.
230 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
231 * @exception E_USER_NOT_CONSENTED The user blocks an application from calling this method. @b Since: @b 2.1
233 result LoadUrlWithPostRequest(const Tizen::Base::String& url, const Tizen::Net::Http::HttpHeader& header, const Tizen::Base::ByteBuffer& body);
236 * Loads the content of the specified buffer.
241 * @privilege %http://tizen.org/privilege/web.service
243 * @param[in] baseUrl The uniform resource locator (URL) of the content
244 * @param[in] content The content
245 * @param[in] mime The MIME type of the content
246 * @param[in] encoding The <a href= "../org.tizen.native.appprogramming/html/guide/web/supported_web_features.htm">text encoding</a> of the content
247 * @exception E_SUCCESS The method is successful.
248 * @exception E_INVALID_ARG The content buffer is empty @b Since: @b 2.1
249 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
250 * @exception E_USER_NOT_CONSENTED The user blocks an application from calling this method. @b Since: @b 2.1
251 * @remarks The specific error code can be accessed using the GetLastResult() method.
253 void LoadData(const Tizen::Base::String& baseUrl, const Tizen::Base::ByteBuffer& content, const Tizen::Base::String& mime, const Tizen::Base::String& encoding = "UTF-8");
256 * Stops the current loading operation.
261 * @privilege %http://tizen.org/privilege/web.service
263 * @exception E_SUCCESS The method is successful.
264 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
265 * @exception E_USER_NOT_CONSENTED The user blocks an application from calling this method. @b Since: @b 2.1
266 * @remarks The specific error code can be accessed using the GetLastResult() method.
268 void StopLoading(void);
271 * Reloads the current page.
276 * @privilege %http://tizen.org/privilege/web.service
278 * @exception E_SUCCESS The method is successful.
279 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
280 * @exception E_USER_NOT_CONSENTED The user blocks an application from calling this method. @b Since: @b 2.1
281 * @remarks The specific error code can be accessed using the GetLastResult() method.
286 * Checks whether the page is loading.
290 * @return @c true if a page is loading, @n
293 bool IsLoading(void) const;
296 * Checks whether the current %Web control has a back history item.
300 * @return @c true if a back history item exists, @n
303 bool CanGoBack(void) const;
306 * Checks whether the current %Web control has a forward history item.
310 * @return @c true if a forward history item exists, @n
313 bool CanGoForward(void) const;
316 * Goes to the back history of the current %Web control.
321 * @privilege %http://tizen.org/privilege/web.service
323 * @exception E_SUCCESS The method is successful.
324 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
325 * @exception E_USER_NOT_CONSENTED The user blocks an application from calling this method. @b Since: @b 2.1
326 * @remarks The specific error code can be accessed using the GetLastResult() method.
331 * Goes to the forward history of the current %Web control.
336 * @privilege %http://tizen.org/privilege/web.service
338 * @exception E_SUCCESS The method is successful.
339 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
340 * @exception E_USER_NOT_CONSENTED The user blocks an application from calling this method. @b Since: @b 2.1
341 * @remarks The specific error code can be accessed using the GetLastResult() method.
343 void GoForward(void);
346 * Gets the backward and forward navigation list of the %Web control.
350 * @return A pointer to PageNavigationList containing the history items of the %Web control
351 * @exception E_SUCCESS The method is successful.
352 * @exception E_SYSTEM The method cannot proceed due to a severe system error.
353 * @remarks The specific error code can be accessed using the GetLastResult() method.
355 Tizen::Web::Controls::PageNavigationList* GetBackForwardListN(void) const;
358 * Searches for a word on the current page. @n
359 * When called again, it searches for the next instance of the word on the page. Set @c searchForward to @c false to search for the word in the backward
364 * @return @c true if the specified @c word is found, @n
366 * @param[in] word The string to search for
367 * @param[in] searchForward Set to @c true to search for the word in the forward direction from the current position, @n
368 * else @c false to search for the word in the backward direction from the current position
370 bool SearchText(const Tizen::Base::String& word, bool searchForward = true);
373 * Sets the new values for the default setting. @n
374 * It fails to change the setting during data load.
379 * @privilege %http://tizen.org/privilege/web.service
381 * @return An error code
382 * @param[in] setting The setting to update
383 * @exception E_SUCCESS The method is successful.
384 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
385 * @exception E_USER_NOT_CONSENTED The user blocks an application from calling this method. @b Since: @b 2.1
387 result SetSetting(const Tizen::Web::Controls::WebSetting& setting);
390 * Gets the setting of the %Web control.
394 * @return An instance of WebSetting
396 Tizen::Web::Controls::WebSetting GetSetting(void) const;
400 * Gets the information of the element pointed by the specified coordinates.
404 * @return A HitElementResult of the pointed element
405 * @param[in] point The x and y coordinates
406 * @exception E_SUCCESS The method is successful.
407 * @exception E_INVALID_ARG The specified @c point is invalid.
408 * @exception E_UNSUPPORTED_FORMAT The image format is not supported.
409 * @exception E_SYSTEM The method cannot proceed due to a severe system error.
410 * @remarks The specific error code can be accessed using the GetLastResult() method.
412 Tizen::Web::Controls::HitElementResult* GetElementByPointN(const Tizen::Graphics::Point& point) const;
415 * Gets the information of the element pointed by the specified coordinates.
419 * @return A HitElementResult of the pointed element
420 * @param[in] point The x and y coordinates
421 * @exception E_SUCCESS The method is successful.
422 * @exception E_INVALID_ARG The specified @c point is invalid.
423 * @exception E_UNSUPPORTED_FORMAT The image format is not supported.
424 * @exception E_SYSTEM The method cannot proceed due to a severe system error.
425 * @remarks The specific error code can be accessed using the GetLastResult() method.
427 Tizen::Web::Controls::HitElementResult* GetElementByPointN(const Tizen::Graphics::FloatPoint& point) const;
430 * Evaluates the JavaScript string and returns the result.
435 * @privilege %http://tizen.org/privilege/web.service
437 * @return The result of the evaluated JavaScript, @n
438 * else an empty string if an error occurs
439 * @param[in] scriptCode The JavaScript code as string
440 * @exception E_SUCCESS The method is successful.
441 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
442 * @exception E_USER_NOT_CONSENTED The user blocks an application from calling this method. @b Since: @b 2.1
443 * @remarks The specific error code can be accessed using the GetLastResult() method.
445 Tizen::Base::String* EvaluateJavascriptN(const Tizen::Base::String& scriptCode);
448 * Sets the zoom-out level as a ratio.
452 * @return An error code
453 * @param[in] level The zoom-out level @n
454 * The value ranges between @c 0.3 and @c 2.0. When the page view is at its original size, the level is @c 1.0. @n If the
455 * specified level is less than @c 1.0, the page view is reduced. @n If the specified level is greater than @c 1.0, the page view is
457 * @exception E_SUCCESS The method is successful.
458 * @exception E_OUT_OF_RANGE The specified @c level is less than @c 0.3 or greater than @c 2.0.
460 result SetZoomLevel(float level);
463 * Gets the zoom level of a page as a percentage.
467 * @return The value ranges between @c 0.3 and @c 2.0
469 float GetZoomLevel(void) const;
472 * Gets the title of the current page.
476 * @return The title of the current page
478 Tizen::Base::String GetTitle(void) const;
481 * Gets the URL of the current page.
485 * @return The URL of the current page
487 Tizen::Base::String GetUrl(void) const;
490 * Checks whether the specified multipurpose internet mail extensions (MIME) type is supported by %Tizen.
494 * @return @c true if the specified MIME type is supported, @n
496 * @param[in] mime The MIME type
498 bool IsMimeSupported(const Tizen::Base::String& mime) const;
501 * Sets a load event listener.
506 * @privilege %http://tizen.org/privilege/web.service
508 * @param[in] pLoadingListener The listener receives the events that occurs while loading the data
509 * @exception E_SUCCESS The method is successful.
510 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
511 * @exception E_USER_NOT_CONSENTED The user blocks an application from calling this method. @b Since: @b 2.1
512 * @remarks The specific error code can be accessed using the GetLastResult() method.
514 void SetLoadingListener(Tizen::Web::Controls::ILoadingListener* pLoadingListener);
517 * Sets a download event listener.
522 * @privilege %http://tizen.org/privilege/web.service
524 * @param[in] pDownLoadListener The listener to receive the data from a network incrementally
525 * @exception E_SUCCESS The method is successful.
526 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
527 * @exception E_USER_NOT_CONSENTED The user blocks an application from calling this method. @b Since: @b 2.1
528 * @remarks The specific error code can be accessed using the GetLastResult() method.
530 void SetDownloadListener(Tizen::Web::Controls::IWebDownloadListener* pDownLoadListener);
533 * Sets the starting point for the text selection block. @n
534 * It sets the selection block around the nearest word bound.
538 * @return An error code
539 * @param[in] startPoint The starting point for the text selection block
540 * @exception E_SUCCESS The method is successful.
541 * @exception E_INVALID_ARG There is nothing to select from the starting point specified.
543 result SetBlockSelectionPosition(const Tizen::Graphics::Point& startPoint);
546 * Sets the starting point for the text selection block. @n
547 * It sets the selection block around the nearest word bound.
551 * @return An error code
552 * @param[in] startPoint The starting point for the text selection block
553 * @exception E_SUCCESS The method is successful.
554 * @exception E_INVALID_ARG There is nothing to select from the starting point specified.
556 result SetBlockSelectionPosition(const Tizen::Graphics::FloatPoint& startPoint);
559 * Releases the currently selected block.
563 * @return An error code
564 * @exception E_SUCCESS The method is successful.
567 result ReleaseBlock(void);
570 * Gets the starting point and the ending point of the selected text block. @n
571 * When the %GetBlockRange() method is called without the selection block, the @c startPoint and @c endPoint have (0,0) values for the x and y coordinates.
575 * @return An error code
576 * @param[out] startPoint The starting point of the selected text block
577 * @param[out] endPoint The ending point of the selected text block
578 * @exception E_SUCCESS The method is successful.
580 result GetBlockRange(Tizen::Graphics::Point& startPoint, Tizen::Graphics::Point& endPoint) const;
583 * Gets the starting point and the ending point of the selected text block. @n
584 * When this method is called without the selection block, the startPoint and endPoint have (0.0,0.0) values for the x and y coordinates.
588 * @return An error code
589 * @param[out] startPoint The starting point of the selected text block
590 * @param[out] endPoint The ending point of the selected text block
591 * @exception E_SUCCESS The method is successful.
593 result GetBlockRange(Tizen::Graphics::FloatPoint& startPoint, Tizen::Graphics::FloatPoint& endPoint) const;
597 * Gets the text of the selected text block.
601 * @return The selected text, @n
602 * else an empty string if there is no selection block
604 Tizen::Base::String GetTextFromBlock(void) const;
607 * Enables or disables the vertical and horizontal scrolls.
611 * @param[in] enable Set to @c true to enable the scrolling of the web page, @n
613 * @exception E_SUCCESS The method is successful.
614 * @remarks This method doesn't affect javascript touch event.
616 result SetScrollEnabled(bool enable);
620 * Checks whether the web page scroll is enabled.
624 * @return @c true if the web page scroll is enabled, @n
627 bool IsScrollEnabled(void) const;
630 * Registers a user interface (UI) event listener.
634 * @param[in] pUiEventListener The listener to receive the user interface (UI) related events
636 void SetWebUiEventListener(Tizen::Web::Controls::IWebUiEventListener* pUiEventListener);
639 * Registers a user interface (UI) event listener.
643 * @param[in] pUiEventListener The listener to receive the user interface (UI) related events
645 void SetWebUiEventListenerF(Tizen::Web::Controls::IWebUiEventListenerF* pUiEventListener);
648 * Checks whether the %Web control uses private browsing.
652 * @return @c true if private browsing is enabled, @n
655 bool IsPrivateBrowsingEnabled(void) const;
658 * Sets the private browsing and returns the result.
663 * @privilege %http://tizen.org/privilege/web.service
665 * @return The result of setting the private browsing
666 * @param[in] enable Set to @c true to enable private browsing, @n
668 * @exception E_SUCCESS The method is successful.
669 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
670 * @exception E_USER_NOT_CONSENTED The user blocks an application from calling this method. @b Since: @b 2.1
672 result SetPrivateBrowsingEnabled(bool enable);
675 * Clears the back and forward navigation list.
680 * @privilege %http://tizen.org/privilege/web.service
682 * @return An error code
683 * @exception E_SUCCESS The method is successful.
684 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
685 * @exception E_USER_NOT_CONSENTED The user blocks an application from calling this method.
687 * @see CanGoForward()
691 result ClearHistory(void);
694 * Clears the application's cache.
699 * @privilege %http://tizen.org/privilege/web.service
701 * @return An error code
702 * @exception E_SUCCESS The method is successful.
703 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
704 * @exception E_USER_NOT_CONSENTED The user blocks an application from calling this method. @b Since: @b 2.1
706 result ClearCache(void);
709 * Clears the application's cookie.
714 * @privilege %http://tizen.org/privilege/web.service
716 * @return An error code
717 * @exception E_SUCCESS The method is successful.
718 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
719 * @exception E_USER_NOT_CONSENTED The user blocks an application from calling this method. @b Since: @b 2.1
721 result ClearCookie(void);
724 * Clears the application's all stored form datas.
729 * @privilege %http://tizen.org/privilege/web.service
731 * @return An error code
732 * @exception E_SUCCESS The method is successful.
733 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
734 * @exception E_USER_NOT_CONSENTED The user blocks an application from calling this method.
736 result ClearFormData(void);
739 * Clears the application's all stored id/password datas.
744 * @privilege %http://tizen.org/privilege/web.service
746 * @return An error code
747 * @exception E_SUCCESS The method is successful.
748 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
749 * @exception E_USER_NOT_CONSENTED The user blocks an application from calling this method.
751 result ClearLoginFormData(void);
754 * Checks whether the %Web control allows cookie. @n
755 * Returns @c true if cookie is enabled.
759 * @return @c true if cookie is allowed, @n
762 bool IsCookieEnabled(void) const;
765 * Enables or disables a cookie.
770 * @privilege %http://tizen.org/privilege/web.service
772 * @return The result of enabling or disabling cookie
773 * @param[in] enable Set to @c true if the web control allows a cookie, @n
775 * @exception E_SUCCESS The method is successful.
776 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
777 * @exception E_USER_NOT_CONSENTED The user blocks an application from calling this method. @b Since: @b 2.1
779 result SetCookieEnabled(bool enable);
782 * Saves the current web page as a pdf file. @n The size parameter is used to set size of the pdf file using millimeter.
786 * @return An error code
787 * @param[in] filePath The path of the pdf file that is created
788 * @param[in] pSize The width and height of the pdf file in millimeter. The width and height must be greater than @c 0. @n
789 * If the parameter contains @c null, the method uses the default size of the web page that is shown on the screen.
790 * @exception E_SUCCESS The method is successful.
791 * @exception E_INVALID_ARG Either of the following conditions has occurred: @n
792 * - The specified path is invalid.
793 * - The specified size is invalid.
794 * @exception E_INACCESSIBLE_PATH The file path is not allowed for the application to write.
796 result SavePageAsPdf(const Tizen::Base::String& filePath, const Tizen::Graphics::Dimension* pSize = null);
799 * Adds a JavaScript bridge instance.
803 * @return An error code
804 * @param[in] jsBridge The JavaScript bridge to add
805 * @exception E_SUCCESS The method is successful.
806 * @exception E_OBJ_ALREADY_EXIST A JavaScript bridge with the same name already exists.
808 result AddJavaScriptBridge(const IJavaScriptBridge& jsBridge);
811 * Removes a JavaScript bridge instance.
815 * @return An error code
816 * @param[in] jsBridge The JavaScript bridge to remove
817 * @exception E_SUCCESS The method is successful.
818 * @exception E_OBJ_NOT_FOUND The specified element is not found.
820 result RemoveJavaScriptBridge(const IJavaScriptBridge& jsBridge);
823 * Registers a keypad event listener. @n
824 * The registered listener is notified when the keypad associated with <input> tag or with <textarea> tag is opened or closed.
828 * @param[in] pKeypadEventListener The event listener to set
829 * @remarks The interfaces of IWebKeypadEventListener are called only when the input style of the keypad is @c INPUT_STYLE_OVERLAY.
830 * @see WebSetting::SetInputStyle()
832 void SetWebKeypadEventListener(IWebKeypadEventListener* pKeypadEventListener);
835 * Searches for all instances of the text on the current page and then highlights them. @n
836 * The current matched block will indicate the first match.
840 * @return An error code
842 * @param[in] text The string to search for
843 * @param[in] caseSensitive Set to @c true to search for the text with case-sensitive mode, @n
844 * else @c false to search for the text in the backward direction from the current position
845 * @exception E_SUCCESS The method is successful.
846 * @exception E_INVALID_ARG The specified @c text is invalid.
847 * @remarks This method operates asynchronously.
848 * @see Tizen::Web::Controls::ITextSearchListener::OnTextFound()
850 result SearchTextAllAsync(const Tizen::Base::String& text, bool caseSensitive);
853 * Scrolls the current matched block to the next text matched by SearchTextAllAsync().
857 * @return An error code
859 * @param[in] searchForward Set to @c true to search for the text in the forward direction from the current position, @n
860 * @exception E_SUCCESS The method is successful.
861 * @exception E_OBJ_NOT_FOUND The next instance is not found.
862 * @exception E_INVALID_OPERATION The SearchTextAllAsync() method is not called.
863 * @remarks This method operates asynchronously.
864 * @see Tizen::Web::Controls::ITextSearchListener::OnTextFound()
866 result SearchNextAsync(bool searchForward = true);
869 * Sets a text search listener.
873 * @param[in] pTextSearchListener The result of the search operation made by asynchronous methods
875 void SetTextSearchListener(ITextSearchListener* pTextSearchListener);
878 * Gets the favicon image from current page.
883 * @see Tizen::Web::Controls::ILoadingListener::OnFaviconReceived()
885 Tizen::Graphics::Bitmap* GetFaviconN(void) const;
888 * Informs the browser engine to stop the screen operations such as updating a screen until %Web calls the Resume() method. @n
889 * It is useful when a %Web control is not visible and does not need to update its screen.
896 * Informs the browser engine to resume the handling of screen operations.
903 * Scrolls the web page with the given coordinates.
907 * @param[in] diff The x and y coordinates
909 void ScrollBy(const Tizen::Graphics::Point& diff);
912 * Sets the scrolled position of the web page.
916 * @param[in] dest The x and y coordinates
918 void ScrollTo(const Tizen::Graphics::Point& dest);
921 * Gets the current scroll position of the web page.
925 * @return The x and y coordinates
927 Tizen::Graphics::Point GetScrollPosition(void) const;
930 * Gets the real size of the current web page.
934 * @return The size of the current web page
935 * @remarks If an application want to get the displayed size, the return value should be multiplied by the zoom factor.
936 * @see GetZoomLevel()
938 Tizen::Graphics::Dimension GetPageSize(void) const;
942 // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
944 // @param[in] item The instance of the %Web class to copy from
945 // @remarks This constructor is hidden.
947 Web(const Web& item);
950 // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
952 // @param[in] item The instance of the %Web class to assign from
953 // @remarks This operator is hidden.
955 Web& operator =(const Web& item);
958 }}} // Tizen::Web::Controls
959 #endif // _FWEB_CTRL_WEB_H_