Web
Elementary

## Data Structures

struct | _Elm_Web_Frame_Load_Error
| Structure used to report load errors. More...
struct | _Elm_Web_Menu_Item
| Structure describing the items in a menu. More...
struct | _Elm_Web_Menu
| Structure describing the menu of a popup. More...
struct | _Elm_Web_Download

## Macros

#define | ELM_WEB_CLASS elm_web_class_get()
| Elementary web view class.

## Typedefs

typedef struct _Elm_Web_Frame_Load_Error | Elm_Web_Frame_Load_Error
| Structure used to report load errors.
typedef struct _Elm_Web_Menu_Item | Elm_Web_Menu_Item
| Structure describing the items in a menu.
typedef struct _Elm_Web_Menu | Elm_Web_Menu
| Structure describing the menu of a popup.
typedef struct _Elm_Web_Download | Elm_Web_Download
typedef struct _Elm_Web_Window_Features | Elm_Web_Window_Features
| Opaque handler containing the features (such as statusbar, menubar, etc) that are to be set on a newly requested window.
typedef Evas_Object *(* | Elm_Web_Window_Open) (void *data, Evas_Object *obj, Eina_Bool js, const Elm_Web_Window_Features *window_features)
| Callback type for the create_window hook.
typedef Evas_Object *(* | Elm_Web_Dialog_Alert) (void *data, Evas_Object *obj, const char *message)
| Callback type for the JS alert hook.
typedef Evas_Object *(* | Elm_Web_Dialog_Confirm) (void *data, Evas_Object *obj, const char *message, Eina_Bool *ret)
| Callback type for the JS confirm hook.
typedef Evas_Object *(* | Elm_Web_Dialog_Prompt) (void *data, Evas_Object *obj, const char *message, const char *def_value, const char **value, Eina_Bool *ret)
| Callback type for the JS prompt hook.
typedef Evas_Object *(* | Elm_Web_Dialog_File_Selector) (void *data, Evas_Object *obj, Eina_Bool allows_multiple, Eina_List *accept_types, Eina_List **selected, Eina_Bool *ret)
| Callback type for the JS file selector hook.
typedef void(* | Elm_Web_Console_Message) (void *data, Evas_Object *obj, const char *message, unsigned int line_number, const char *source_id)
| Callback type for the JS console message hook.

## Enumerations

enum | Elm_Web_Menu_Item_Type { ELM_WEB_MENU_SEPARATOR , ELM_WEB_MENU_GROUP , ELM_WEB_MENU_OPTION }
| The possibles types that the items in a menu can be.
enum | Elm_Web_Window_Feature_Flag { ELM_WEB_WINDOW_FEATURE_TOOLBAR , ELM_WEB_WINDOW_FEATURE_STATUSBAR , ELM_WEB_WINDOW_FEATURE_SCROLLBARS , ELM_WEB_WINDOW_FEATURE_MENUBAR , ELM_WEB_WINDOW_FEATURE_LOCATIONBAR , ELM_WEB_WINDOW_FEATURE_FULLSCREEN }
| Definitions of web window features.
enum | Elm_Web_Zoom_Mode { ELM_WEB_ZOOM_MODE_MANUAL = 0 , ELM_WEB_ZOOM_MODE_AUTO_FIT , ELM_WEB_ZOOM_MODE_AUTO_FILL , ELM_WEB_ZOOM_MODE_LAST }
| Types of zoom available. More...

## Functions

Eina_Bool | elm_need_web (void)
| Request that your elementary application needs web support.
Eina_Bool | elm_web_window_features_property_get (const Elm_Web_Window_Features *wf, Elm_Web_Window_Feature_Flag flag)
| Get boolean properties from Elm_Web_Window_Features (such as statusbar, menubar, etc) that are on a window.
void | elm_web_window_features_region_get (const Elm_Web_Window_Features *wf, Evas_Coord *x, Evas_Coord *y, Evas_Coord *w, Evas_Coord *h)
| TODO : Add documentation.
void | elm_web_window_features_ref (Elm_Web_Window_Features *wf)
void | elm_web_window_features_unref (Elm_Web_Window_Features *wf)
EOAPI Eina_Bool | elm_obj_web_text_matches_highlight_set (Eo *obj, Eina_Bool highlight)
| Sets whether to highlight the matched marks.
EOAPI Eina_Bool | elm_obj_web_text_matches_highlight_get (const Eo *obj)
| Get whether highlighting marks is enabled.
EOAPI void | elm_obj_web_useragent_set (Eo *obj, const char *user_agent)
| Change useragent of a elm_web object.
EOAPI const char * | elm_obj_web_useragent_get (const Eo *obj)
| Return current useragent of elm_web object.
EOAPI Eina_Bool | elm_obj_web_url_set (Eo *obj, const char *url)
| Sets the URL for the web object.
EOAPI const char * | elm_obj_web_url_get (const Eo *obj)
| Get the current URL for the object.
EOAPI void | elm_obj_web_bg_color_set (Eo *obj, int r, int g, int b, int a)
| Sets the background color to be used by the web object.
EOAPI void | elm_obj_web_bg_color_get (const Eo *obj, int *r, int *g, int *b, int *a)
| Get the background color to be used by the web object.
EOAPI void | elm_obj_web_inwin_mode_set (Eo *obj, Eina_Bool value)
| Sets the default dialogs to use an Inwin instead of a normal window.
EOAPI Eina_Bool | elm_obj_web_inwin_mode_get (const Eo *obj)
| Get whether Inwin mode is set for the current object.
EOAPI void | elm_obj_web_tab_propagate_set (Eo *obj, Eina_Bool propagate)
| Sets whether to use tab propagation.
EOAPI Eina_Bool | elm_obj_web_tab_propagate_get (const Eo *obj)
| Get the status of the tab propagation.
EOAPI void | elm_obj_web_history_enabled_set (Eo *obj, Eina_Bool enable)
| Enables or disables the browsing history.
EOAPI Eina_Bool | elm_obj_web_history_enabled_get (const Eo *obj)
| Get whether browsing history is enabled for the given object.
EOAPI void | elm_obj_web_console_message_hook_set (Eo *obj, Elm_Web_Console_Message func, void *data)
| Sets the function to call when a console message is emitted from JS.
EOAPI void | elm_obj_web_window_create_hook_set (Eo *obj, Elm_Web_Window_Open func, void *data)
| Sets the function to call when a new window is requested.
EOAPI void | elm_obj_web_dialog_file_selector_hook_set (Eo *obj, Elm_Web_Dialog_File_Selector func, void *data)
| Sets the function to call when an file selector dialog.
EOAPI void | elm_obj_web_dialog_confirm_hook_set (Eo *obj, Elm_Web_Dialog_Confirm func, void *data)
| Sets the function to call when an confirm dialog.
EOAPI void | elm_obj_web_popup_selected_set (Eo *obj, int idx)
| Tells the web object which index in the currently open popup was selected.
EOAPI void | elm_obj_web_dialog_prompt_hook_set (Eo *obj, Elm_Web_Dialog_Prompt func, void *data)
| Sets the function to call when an prompt dialog.
EOAPI void | elm_obj_web_dialog_alert_hook_set (Eo *obj, Elm_Web_Dialog_Alert func, void *data)
| Sets the function to call when an alert dialog.
EOAPI Eina_Bool | elm_obj_web_forward_possible_get (const Eo *obj)
| Queries whether it's possible to go forward in history.
EOAPI Efl_Canvas_Object * | elm_obj_web_webkit_view_get (const Eo *obj)
| Get internal ewk_view object from web object.
EOAPI Eina_Bool | elm_obj_web_back_possible_get (const Eo *obj)
| Queries whether it's possible to go back in history.
EOAPI double | elm_obj_web_load_progress_get (const Eo *obj)
| Get the overall loading progress of the page.
EOAPI char * | elm_obj_web_selection_get (const Eo *obj)
| Get a copy of the currently selected text.
EOAPI Eina_Stringshare * | elm_obj_web_title_get (const Eo *obj)
| Get the current title.
EOAPI Eina_Bool | elm_obj_web_navigate (Eo *obj, int steps)
| Jumps the given number of steps in the browsing history.
EOAPI Eina_Bool | elm_obj_web_back (Eo *obj)
| Goes back one step in the browsing history.
EOAPI Eina_Bool | elm_obj_web_html_string_load (Eo *obj, const char *html, const char *base_url, const char *unreachable_url)
| Loads the specified `html` string as the content of the web object.
EOAPI Eina_Bool | elm_obj_web_text_search (const Eo *obj, const char *string, Eina_Bool case_sensitive, Eina_Bool forward, Eina_Bool wrap)
| Searches the given string in a document.
EOAPI Eina_Bool | elm_obj_web_popup_destroy (Eo *obj)
| Dismisses an open dropdown popup.
EOAPI void | elm_obj_web_region_show (Eo *obj, int x, int y, int w, int h)
| Shows the given region in the web object.
EOAPI Eina_Bool | elm_obj_web_forward (Eo *obj)
| Goes forward one step in the browsing history.
EOAPI unsigned int | elm_obj_web_text_matches_mark (Eo *obj, const char *string, Eina_Bool case_sensitive, Eina_Bool highlight, unsigned int limit)
| Marks matches of the given string in a document.
EOAPI void | elm_obj_web_region_bring_in (Eo *obj, int x, int y, int w, int h)
| Brings in the region to the visible area.
EOAPI Eina_Bool | elm_obj_web_stop (Eo *obj)
| Stops loading the current page.
EOAPI Eina_Bool | elm_obj_web_navigate_possible_get (Eo *obj, int steps)
| Queries whether it's possible to jump the given number of steps.
EOAPI Eina_Bool | elm_obj_web_reload_full (Eo *obj)
| Requests a reload of the current document, avoiding any existing caches.
EOAPI Eina_Bool | elm_obj_web_text_matches_unmark_all (Eo *obj)
| Clears all marked matches in the document.
EOAPI Eina_Bool | elm_obj_web_reload (Eo *obj)
| Requests a reload of the current document in the object.
Evas_Object * | elm_web_add (Evas_Object *parent)
| Add a new web object to the parent.
EINA_DEPRECATED Eina_Bool | elm_web_uri_set (Evas_Object *obj, const char *uri)
| Sets the URI for the web object.
EINA_DEPRECATED const char * | elm_web_uri_get (const Evas_Object *obj)
| Get the current URI for the object.
void | elm_web_zoom_mode_set (Evas_Object *obj, Elm_Web_Zoom_Mode mode)
| Sets the zoom mode to use.
Elm_Web_Zoom_Mode | elm_web_zoom_mode_get (const Evas_Object *obj)
| Get the currently set zoom mode.
void | elm_web_zoom_set (Evas_Object *obj, double zoom)
| Sets the zoom level of the web object.
double | elm_web_zoom_get (const Evas_Object *obj)
| Get the current zoom level set on the web object.

## Detailed Description

A web widget is used for displaying web pages (HTML/CSS/JS) using WebKit-EFL. You must have compiled Elementary with ewebkit support.

Signals that you can add callbacks for are:

- "download,request": A file download has been requested. Event info is a pointer to a Elm_Web_Download
- "editorclient,contents,changed": Editor client's contents changed
- "editorclient,selection,changed": Editor client's selection changed
- "frame,created": A new frame was created. Event info is an Evas_Object which can be handled with WebKit's ewk_frame API
- "icon,received": An icon was received by the main frame
- "inputmethod,changed": Input method changed. Event info is an Eina_Bool indicating whether it's enabled or not
- "js,windowobject,clear": JS window object has been cleared
- "link,hover,in": Mouse cursor is hovering over a link. Event info is a char *link[2], where the first string contains the URL the link points to, and the second one the title of the link
- "link,hover,out": Mouse cursor left the link
- "load,document,finished": Loading of a document finished. Event info is the frame that finished loading
- "load,error": Load failed. Event info is a pointer to Elm_Web_Frame_Load_Error
- "load,finished": Load finished. Event info is NULL on success, on error it's a pointer to Elm_Web_Frame_Load_Error
- "load,newwindow,show": A new window was created and is ready to be shown
- "load,progress": Overall load progress. Event info is a pointer to a double containing a value between 0.0 and 1.0
- "load,provisional": Started provisional load
- "load,started": Loading of a document started
- "menubar,visible,get": Queries if the menubar is visible. Event info is a pointer to Eina_Bool where the callback should set `EINA_TRUE` if the menubar is visible, or `EINA_FALSE` in case it's not
- "menubar,visible,set": Informs menubar visibility. Event info is an Eina_Bool indicating the visibility
- "popup,created": A dropdown widget was activated, requesting its popup menu to be created. Event info is a pointer to Elm_Web_Menu
- "popup,willdelete": The web object is ready to destroy the popup object created. Event info is a pointer to Elm_Web_Menu
- "ready": Page is fully loaded
- "scrollbars,visible,get": Queries visibility of scrollbars. Event info is a pointer to Eina_Bool where the visibility state should be set
- "scrollbars,visible,set": Informs scrollbars visibility. Event info is an Eina_Bool with the visibility state set
- "statusbar,text,set": Text of the statusbar changed. Even info is a string with the new text
- "statusbar,visible,get": Queries visibility of the status bar. Event info is a pointer to Eina_Bool where the visibility state should be set.
- "statusbar,visible,set": Informs statusbar visibility. Event info is an Eina_Bool with the visibility value
- "title,changed": Title of the main frame changed. Event info is a string with the new title
- "toolbars,visible,get": Queries visibility of toolbars. Event info is a pointer to Eina_Bool where the visibility state should be set
- "toolbars,visible,set": Informs the visibility of toolbars. Event info is an Eina_Bool with the visibility state
- "tooltip,text,set": Show and set text of a tooltip. Event info is a string with the text to show
- "uri,changed": URI of the main frame changed. Event info is a string (deprecated. use "url,changed" instead)
- "url,changed": URL of the main frame changed. Event info is a string with the new URI
- "view,resized": The web object internal's view changed sized
- "windows,close,request": A JavaScript request to close the current window was requested
- "zoom,animated,end": Animated zoom finished
- "focused" : When the web has received focus. (since 1.8)
- "unfocused" : When the web has lost focus. (since 1.8)

available styles:

- default

An example of use of web:

- web_example_01
- Web - Simple example

## Typedef Documentation

## Elm_Web_Frame_Load_Error

typedef struct _Elm_Web_Frame_Load_Error Elm_Web_Frame_Load_Error

Structure used to report load errors.

Load errors are reported as signal by elm_web. All the strings are temporary references and should not be used after the signal callback returns. If it's required, make copies with strdup() or eina_stringshare_add() (they are not even guaranteed to be stringshared, so must use eina_stringshare_add() and not eina_stringshare_ref()).

## Elm_Web_Menu

typedef struct _Elm_Web_Menu Elm_Web_Menu

Structure describing the menu of a popup.

This structure will be passed as the `event_info` for the "popup,create" signal, which is emitted when a dropdown menu is opened. Users wanting to handle these popups by themselves should listen to this signal and set the `handled` property of the struct to `EINA_TRUE`. Leaving this property as `EINA_FALSE` means that the user will not handle the popup and the default implementation will be used.

When the popup is ready to be dismissed, a "popup,willdelete" signal will be emitted to notify the user that it can destroy any objects and free all data related to it.

See also
  elm_web_popup_selected_set()
  elm_web_popup_destroy()

## Elm_Web_Window_Open

typedef Evas_Object *(* Elm_Web_Window_Open) (void *data, Evas_Object *obj, Eina_Bool js, const Elm_Web_Window_Features *window_features)

Callback type for the create_window hook.

Parameters

  data | User data pointer set when setting the hook function.
  obj | The elm_web object requesting the new window.
  js | Set to `EINA_TRUE` if the request was originated from JavaScript. `EINA_FALSE` otherwise.
  window_features | A pointer of Elm_Web_Window_Features indicating the features requested for the new window.

Returns
  The `elm_web` widget where the request will be loaded. That is, if a new window or tab is created, the elm_web widget in it should be returned, and NOT the window object. Returning `NULL` should cancel the request.

See also
  elm_web_window_create_hook_set()

## Elm_Web_Dialog_Alert

typedef Evas_Object *(* Elm_Web_Dialog_Alert) (void *data, Evas_Object *obj, const char *message)

Callback type for the JS alert hook.

Parameters

  data | User data pointer set when setting the hook function.
  obj | The elm_web object requesting the new window.
  message | The message to show in the alert dialog.

Returns
  The object representing the alert dialog. Elm_Web will run a second main loop to handle the dialog and normal flow of the application will be restored when the object is deleted, so the user should handle the popup properly in order to delete the object when the action is finished. If the function returns `NULL` the popup will be ignored.

See also
  elm_web_dialog_alert_hook_set()

## Elm_Web_Dialog_Confirm

typedef Evas_Object *(* Elm_Web_Dialog_Confirm) (void *data, Evas_Object *obj, const char *message, Eina_Bool *ret)

Callback type for the JS confirm hook.

Parameters

  data | User data pointer set when setting the hook function.
  obj | The elm_web object requesting the new window.
  message | The message to show in the confirm dialog.
  ret | Pointer to store the user selection. `EINA_TRUE` if the user selected `Ok`, `EINA_FALSE` otherwise.

Returns
  The object representing the confirm dialog. Elm_Web will run a second main loop to handle the dialog and normal flow of the application will be restored when the object is deleted, so the user should handle the popup properly in order to delete the object when the action is finished. If the function returns `NULL` the popup will be ignored.

See also
  elm_web_dialog_confirm_hook_set()

## Elm_Web_Dialog_Prompt

typedef Evas_Object *(* Elm_Web_Dialog_Prompt) (void *data, Evas_Object *obj, const char *message, const char *def_value, const char **value, Eina_Bool *ret)

Callback type for the JS prompt hook.

Parameters

  data | User data pointer set when setting the hook function.
  obj | The elm_web object requesting the new window.
  message | The message to show in the prompt dialog.
  def_value | The default value to present the user in the entry
  value | Pointer to store the value given by the user. Must be a malloc'ed string or `NULL` if the user canceled the popup.
  ret | Pointer to store the user selection. `EINA_TRUE` if the user selected `Ok`, `EINA_FALSE` otherwise.

Returns
  The object representing the prompt dialog. Elm_Web will run a second main loop to handle the dialog and normal flow of the application will be restored when the object is deleted, so the user should handle the popup properly in order to delete the object when the action is finished. If the function returns `NULL` the popup will be ignored.

See also
  elm_web_dialog_prompt_hook_set()

## Elm_Web_Dialog_File_Selector

typedef Evas_Object *(* Elm_Web_Dialog_File_Selector) (void *data, Evas_Object *obj, Eina_Bool allows_multiple, Eina_List *accept_types, Eina_List **selected, Eina_Bool *ret)

Callback type for the JS file selector hook.

Parameters

  data | User data pointer set when setting the hook function.
  obj | The elm_web object requesting the new window.
  allows_multiple | `EINA_TRUE` if multiple files can be selected.
  accept_types | Mime types accepted.
  selected | Pointer to store the list of malloc'ed strings containing the path to each file selected. Must be `NULL` if the file dialog is canceled.
  ret | Pointer to store the user selection. `EINA_TRUE` if the user selected `Ok`, `EINA_FALSE` otherwise.

Returns
  The object representing the file selector dialog. Elm_Web will run a second main loop to handle the dialog and normal flow of the application will be restored when the object is deleted, so the user should handle the popup properly in order to delete the object when the action is finished. If the function returns `NULL` the popup will be ignored.

See also
  elm_web_dialog_file selector_hook_set()

## Elm_Web_Console_Message

typedef void(* Elm_Web_Console_Message) (void *data, Evas_Object *obj, const char *message, unsigned int line_number, const char *source_id)

Callback type for the JS console message hook.

When a console message is added from JavaScript, any set function to the console message hook will be called for the user to handle. There is no default implementation of this hook.

Parameters

  data | User data pointer set when setting the hook function.
  obj | The elm_web object that originated the message.
  message | The message sent.
  line_number | The line number.
  source_id | Source id.

See also
  elm_web_console_message_hook_set()

## Enumeration Type Documentation

## Elm_Web_Zoom_Mode

enum Elm_Web_Zoom_Mode

Types of zoom available.

Enumerator
ELM_WEB_ZOOM_MODE_MANUAL | Zoom controlled normally by elm_web_zoom_set.
ELM_WEB_ZOOM_MODE_AUTO_FIT | Zoom until content fits in web object.
ELM_WEB_ZOOM_MODE_AUTO_FILL | Zoom until content fills web object.
ELM_WEB_ZOOM_MODE_LAST | Sentinel value to indicate last enum field during iteration.

## Function Documentation

## elm_need_web()

Eina_Bool elm_need_web | ( | void |  | ) |

Request that your elementary application needs web support.

This initializes the Ewebkit library when called and if support exists it returns `EINA_TRUE`, otherwise returns `EINA_FALSE`. This must be called before any other function that deals with elm_web objects or ewk_view instances.

Examples
  web_example_02.c.

References EINA_FALSE.

## elm_web_window_features_property_get()

Eina_Bool elm_web_window_features_property_get | ( | const Elm_Web_Window_Features * | wf,
|  | Elm_Web_Window_Feature_Flag | flag )

Get boolean properties from Elm_Web_Window_Features (such as statusbar, menubar, etc) that are on a window.

Parameters

  wf | The web window features object
  flag | The web window feature flag whose value is required.

Returns
  `EINA_TRUE` if the flag is set, `EINA_FALSE` otherwise

References EINA_FALSE.

## elm_web_window_features_region_get()

void elm_web_window_features_region_get | ( | const Elm_Web_Window_Features * | wf,
|  | Evas_Coord * | x,
|  | Evas_Coord * | y,
|  | Evas_Coord * | w,
|  | Evas_Coord * | h )

TODO : Add documentation.

Parameters

  wf | The web window features object
  x,y,w,h | - the co-ordinates of the web view window.

## elm_obj_web_text_matches_highlight_set()

EOAPI Eina_Bool elm_obj_web_text_matches_highlight_set | ( | Eo * | obj,
|  | Eina_Bool | highlight )

Sets whether to highlight the matched marks.

If enabled, marks set with elm_obj_web_text_matches_mark will be highlighted.

Parameters

  [in] | obj | The object.
  [in] | highlight | Whether to highlight the marks or not.

Returns
  `true` on success, `false` otherwise

## elm_obj_web_text_matches_highlight_get()

EOAPI Eina_Bool elm_obj_web_text_matches_highlight_get | ( | const Eo * | obj | ) |

Get whether highlighting marks is enabled.

Parameters

  [in] | obj | The object.

Returns
  Whether to highlight the marks or not.

## elm_obj_web_useragent_set()

EOAPI void elm_obj_web_useragent_set | ( | Eo * | obj,
|  | const char * | user_agent )

Change useragent of a elm_web object.

Parameters

  [in] | obj | The object.
  [in] | user_agent | String for useragent.

## elm_obj_web_useragent_get()

EOAPI const char * elm_obj_web_useragent_get | ( | const Eo * | obj | ) |

Return current useragent of elm_web object.

Parameters

  [in] | obj | The object.

Returns
  String for useragent.

## elm_obj_web_url_set()

EOAPI Eina_Bool elm_obj_web_url_set | ( | Eo * | obj,
|  | const char * | url )

Sets the URL for the web object.

It must be a full URL, with resource included, in the form http://www.enlightenment.org or file:///tmp/something.html

Parameters

  [in] | obj | The object.
  [in] | url | The URL to set.

Returns
  `true` on success, `false` otherwise

Referenced by elm_web_uri_set().

## elm_obj_web_url_get()

EOAPI const char * elm_obj_web_url_get | ( | const Eo * | obj | ) |

Get the current URL for the object.

The returned string must not be freed and is guaranteed to be stringshared.

Parameters

  [in] | obj | The object.

Returns
  The URL to set.

Referenced by elm_web_uri_get().

## elm_obj_web_bg_color_set()

EOAPI void elm_obj_web_bg_color_set | ( | Eo * | obj,
|  | int | r,
|  | int | g,
|  | int | b,
|  | int | a )

Sets the background color to be used by the web object.

This is the color that will be used by default when the loaded page does not set it's own. Color values are pre-multiplied.

Parameters

  [in] | obj | The object.
  [in] | r | Red component.
  [in] | g | Green component.
  [in] | b | Blue component.
  [in] | a | Alpha component.

## elm_obj_web_bg_color_get()

EOAPI void elm_obj_web_bg_color_get | ( | const Eo * | obj,
|  | int * | r,
|  | int * | g,
|  | int * | b,
|  | int * | a )

Get the background color to be used by the web object.

This is the color that will be used by default when the loaded page does not set it's own. Color values are pre-multiplied.

Parameters

  [in] | obj | The object.
  [out] | r | Red component.
  [out] | g | Green component.
  [out] | b | Blue component.
  [out] | a | Alpha component.

## elm_obj_web_inwin_mode_set()

EOAPI void elm_obj_web_inwin_mode_set | ( | Eo * | obj,
|  | Eina_Bool | value )

Sets the default dialogs to use an Inwin instead of a normal window.

If set, then the default implementation for the JavaScript dialogs and file selector will be opened in an Inwin. Otherwise they will use a normal separated window.

Parameters

  [in] | obj | The object.
  [in] | value | `true` if dialog will be opened as Inwin, `false` otherwise

## elm_obj_web_inwin_mode_get()

EOAPI Eina_Bool elm_obj_web_inwin_mode_get | ( | const Eo * | obj | ) |

Get whether Inwin mode is set for the current object.

Parameters

  [in] | obj | The object.

Returns
  `true` if dialog will be opened as Inwin, `false` otherwise

## elm_obj_web_tab_propagate_set()

EOAPI void elm_obj_web_tab_propagate_set | ( | Eo * | obj,
|  | Eina_Bool | propagate )

Sets whether to use tab propagation.

If tab propagation is enabled, whenever the user presses the Tab key, Elementary will handle it and switch focus to the next widget. The default value is disabled, where WebKit will handle the Tab key to cycle focus though its internal objects, jumping to the next widget only when that cycle ends.

Parameters

  [in] | obj | The object.
  [in] | propagate | Whether to propagate Tab keys to Elementary or not.

## elm_obj_web_tab_propagate_get()

EOAPI Eina_Bool elm_obj_web_tab_propagate_get | ( | const Eo * | obj | ) |

Get the status of the tab propagation.

Parameters

  [in] | obj | The object.

Returns
  Whether to propagate Tab keys to Elementary or not.

## elm_obj_web_history_enabled_set()

EOAPI void elm_obj_web_history_enabled_set | ( | Eo * | obj,
|  | Eina_Bool | enable )

Enables or disables the browsing history.

Parameters

  [in] | obj | The object.
  [in] | enable | Whether to enable or disable the browsing history.

## elm_obj_web_history_enabled_get()

EOAPI Eina_Bool elm_obj_web_history_enabled_get | ( | const Eo * | obj | ) |

Get whether browsing history is enabled for the given object.

Parameters

  [in] | obj | The object.

Returns
  Whether to enable or disable the browsing history.

## elm_obj_web_console_message_hook_set()

EOAPI void elm_obj_web_console_message_hook_set | ( | Eo * | obj,
|  | Elm_Web_Console_Message | func,
|  | void * | data )

Sets the function to call when a console message is emitted from JS.

This hook will be called when a console message is emitted from JavaScript. There is no default implementation for this feature.

Parameters

  [in] | obj | The object.
  [in] | func | The callback function to be used.
  [in] | data | User data.

## elm_obj_web_window_create_hook_set()

EOAPI void elm_obj_web_window_create_hook_set | ( | Eo * | obj,
|  | Elm_Web_Window_Open | func,
|  | void * | data )

Sets the function to call when a new window is requested.

This hook will be called when a request to create a new window is issued from the web page loaded. There is no default implementation for this feature, so leaving this unset or passing `null` in `func` will prevent new windows from opening.

Parameters

  [in] | obj | The object.
  [in] | func | The hook function to be called when a window is requested.
  [in] | data | User data.

## elm_obj_web_dialog_file_selector_hook_set()

EOAPI void elm_obj_web_dialog_file_selector_hook_set | ( | Eo * | obj,
|  | Elm_Web_Dialog_File_Selector | func,
|  | void * | data )

Sets the function to call when an file selector dialog.

This hook will be called when a JavaScript file selector dialog is requested. If no function is set or `null` is passed in `func`, the default implementation will take place.

Parameters

  [in] | obj | The object.
  [in] | func | The callback function to be used.
  [in] | data | User data.

## elm_obj_web_dialog_confirm_hook_set()

EOAPI void elm_obj_web_dialog_confirm_hook_set | ( | Eo * | obj,
|  | Elm_Web_Dialog_Confirm | func,
|  | void * | data )

Sets the function to call when an confirm dialog.

This hook will be called when a JavaScript confirm dialog is requested. If no function is set or `null` is passed in `func`, the default implementation will take place.

Parameters

  [in] | obj | The object.
  [in] | func | The callback function to be used.
  [in] | data | User data.

## elm_obj_web_popup_selected_set()

EOAPI void elm_obj_web_popup_selected_set | ( | Eo * | obj,
|  | int | idx )

Tells the web object which index in the currently open popup was selected.

When the user handles the popup creation from the "popup,created" signal, it needs to tell the web object which item was selected by calling this function with the index corresponding to the item.

Parameters

  [in] | obj | The object.
  [in] | idx | The index selected.

## elm_obj_web_dialog_prompt_hook_set()

EOAPI void elm_obj_web_dialog_prompt_hook_set | ( | Eo * | obj,
|  | Elm_Web_Dialog_Prompt | func,
|  | void * | data )

Sets the function to call when an prompt dialog.

This hook will be called when a JavaScript prompt dialog is requested. If no function is set or `null` is passed in `func`, the default implementation will take place.

Parameters

  [in] | obj | The object.
  [in] | func | The callback function to be used.
  [in] | data | User data.

## elm_obj_web_dialog_alert_hook_set()

EOAPI void elm_obj_web_dialog_alert_hook_set | ( | Eo * | obj,
|  | Elm_Web_Dialog_Alert | func,
|  | void * | data )

Sets the function to call when an alert dialog.

This hook will be called when a JavaScript alert dialog is requested. If no function is set or `null` is passed in `func`, the default implementation will take place.

Parameters

  [in] | obj | The object.
  [in] | func | Callback function to be used.
  [in] | data | User data.

## elm_obj_web_forward_possible_get()

EOAPI Eina_Bool elm_obj_web_forward_possible_get | ( | const Eo * | obj | ) |

Queries whether it's possible to go forward in history.

Parameters

  [in] | obj | The object.

Returns
  `true` if it is possible to go forward, `false` otherwise

## elm_obj_web_webkit_view_get()

EOAPI Efl_Canvas_Object * elm_obj_web_webkit_view_get | ( | const Eo * | obj | ) |

Get internal ewk_view object from web object.

Elementary may not provide some low level features of EWebKit, instead of cluttering the API with proxy methods we opted to return the internal reference. Be careful using it as it may interfere with elm_web behavior.

Parameters

  [in] | obj | The object.

Returns
  The internal ewk_view object or `null` if it does not exist. (Failure to create or Elementary compiled without ewebkit)

## elm_obj_web_back_possible_get()

EOAPI Eina_Bool elm_obj_web_back_possible_get | ( | const Eo * | obj | ) |

Queries whether it's possible to go back in history.

Parameters

  [in] | obj | The object.

Returns
  `true` if it is possible to go back, `false` otherwise

## elm_obj_web_load_progress_get()

EOAPI double elm_obj_web_load_progress_get | ( | const Eo * | obj | ) |

Get the overall loading progress of the page.

Returns the estimated loading progress of the page, with a value between 0.0 and 1.0. This is an estimated progress accounting for all the frames included in the page.

Parameters

  [in] | obj | The object.

Returns
  A value between 0.0 and 1.0 indicating the progress, or -1.0 on failure.

## elm_obj_web_selection_get()

EOAPI char * elm_obj_web_selection_get | ( | const Eo * | obj | ) |

Get a copy of the currently selected text.

The string returned must be freed by the user when it's done with it.

Parameters

  [in] | obj | The object.

Returns
  A newly allocated string, or `null` if nothing is selected or an error occurred.

References EINA_WARN_UNUSED_RESULT.

## elm_obj_web_title_get()

EOAPI Eina_Stringshare * elm_obj_web_title_get | ( | const Eo * | obj | ) |

Get the current title.

The returned string must not be freed and is guaranteed to be stringshared.

Parameters

  [in] | obj | The object.

Returns
  A stringshared internal string with the current title, or `null` on failure.

References EINA_WARN_UNUSED_RESULT.

## elm_obj_web_navigate()

EOAPI Eina_Bool elm_obj_web_navigate | ( | Eo * | obj,
|  | int | steps )

Jumps the given number of steps in the browsing history.

The `steps` value can be a negative integer to back in history, or a positive to move forward.

Parameters

  [in] | obj | The object.
  [in] | steps | The number of steps to jump.

Returns
  `true` on success, `false` on error or if not enough history exists to jump the given number of steps

## elm_obj_web_back()

EOAPI Eina_Bool elm_obj_web_back | ( | Eo * | obj | ) |

Goes back one step in the browsing history.

This is equivalent to calling elm_web_object_navigate(obj, -1);

Parameters

  [in] | obj | The object.

Returns
  `true` on success, `false` otherwise

## elm_obj_web_html_string_load()

EOAPI Eina_Bool elm_obj_web_html_string_load | ( | Eo * | obj,
|  | const char * | html,
|  | const char * | base_url,
|  | const char * | unreachable_url )

Loads the specified `html` string as the content of the web object.

External objects such as stylesheets or images referenced in the HTML document are located relative to `base_url`.

If an `unreachable_url` is passed it is used as the url for the loaded content. This is typically used to display error pages for a failed load.

Parameters

  [in] | obj | The object.
  [in] | html | HTML data to load.
  [in] | base_url | Base URL used for relative paths to external objects (optional).
  [in] | unreachable_url | URL that could not be reached (optional).

Returns
  `true` on success, `false` otherwise

Since
  1.9

## elm_obj_web_text_search()

EOAPI Eina_Bool elm_obj_web_text_search | ( | const Eo * | obj,
|  | const char * | string,
|  | Eina_Bool | case_sensitive,
|  | Eina_Bool | forward,
|  | Eina_Bool | wrap )

Searches the given string in a document.

Parameters

  [in] | obj | The object.
  [in] | string | String to search.
  [in] | case_sensitive | If search should be case sensitive or not.
  [in] | forward | If search is from cursor and on or backwards.
  [in] | wrap | If search should wrap at the end.

Returns
  `true` if the given string was found, `false` if not or failure.

## elm_obj_web_popup_destroy()

EOAPI Eina_Bool elm_obj_web_popup_destroy | ( | Eo * | obj | ) |

Dismisses an open dropdown popup.

When the popup from a dropdown widget is to be dismissed, either after selecting an option or to cancel it, this function must be called, which will later emit an "popup,willdelete" signal to notify the user that any memory and objects related to this popup can be freed.

Parameters

  [in] | obj | The object.

Returns
  `true` if the menu was successfully destroyed, or `false` if there was no menu to destroy.

## elm_obj_web_region_show()

EOAPI void elm_obj_web_region_show | ( | Eo * | obj,
|  | int | x,
|  | int | y,
|  | int | w,
|  | int | h )

Shows the given region in the web object.

Parameters

  [in] | obj | The object.
  [in] | x | The x coordinate of the region to show.
  [in] | y | The y coordinate of the region to show.
  [in] | w | The width of the region to show.
  [in] | h | The height of the region to show.

## elm_obj_web_forward()

EOAPI Eina_Bool elm_obj_web_forward | ( | Eo * | obj | ) |

Goes forward one step in the browsing history.

This is equivalent to calling elm_web_object_navigate(obj, 1);

See also elm_obj_web_history_enabled_set, elm_obj_web_forward_possible_get, elm_obj_web_back, elm_obj_web_navigate.

Parameters

  [in] | obj | The object.

Returns
  `true` on success, `false` otherwise.

## elm_obj_web_text_matches_mark()

EOAPI unsigned int elm_obj_web_text_matches_mark | ( | Eo * | obj,
|  | const char * | string,
|  | Eina_Bool | case_sensitive,
|  | Eina_Bool | highlight,
|  | unsigned int | limit )

Marks matches of the given string in a document.

Parameters

  [in] | obj | The object.
  [in] | string | String to match.
  [in] | case_sensitive | If match should be case sensitive or not.
  [in] | highlight | If matches should be highlighted.
  [in] | limit | Maximum amount of matches, or zero to unlimited.

Returns
  Number of matched `string`.

## elm_obj_web_region_bring_in()

EOAPI void elm_obj_web_region_bring_in | ( | Eo * | obj,
|  | int | x,
|  | int | y,
|  | int | w,
|  | int | h )

Brings in the region to the visible area.

Like elm_obj_web_region_show, but it animates the scrolling of the object to show the area.

Parameters

  [in] | obj | The object.
  [in] | x | The x coordinate of the region to show.
  [in] | y | The y coordinate of the region to show.
  [in] | w | The width of the region to show.
  [in] | h | The height of the region to show.

## elm_obj_web_stop()

EOAPI Eina_Bool elm_obj_web_stop | ( | Eo * | obj | ) |

Stops loading the current page.

Cancels the loading of the current page in the web object. This will cause a "load,error" signal to be emitted, with the is_cancellation flag set to `true`.

Parameters

  [in] | obj | The object.

Returns
  `true` if the cancel was successful, `false` otherwise.

## elm_obj_web_navigate_possible_get()

EOAPI Eina_Bool elm_obj_web_navigate_possible_get | ( | Eo * | obj,
|  | int | steps )

Queries whether it's possible to jump the given number of steps.

The `steps` value can be a negative integer to back in history, or positive to move forward.

Parameters

  [in] | obj | The object.
  [in] | steps | The number of steps to check for.

Returns
  `true` if enough history exists to perform the given jump, `false` otherwise.

## elm_obj_web_reload_full()

EOAPI Eina_Bool elm_obj_web_reload_full | ( | Eo * | obj | ) |

Requests a reload of the current document, avoiding any existing caches.

Parameters

  [in] | obj | The object.

Returns
  `true` on success, `false` otherwise.

## elm_obj_web_text_matches_unmark_all()

EOAPI Eina_Bool elm_obj_web_text_matches_unmark_all | ( | Eo * | obj | ) |

Clears all marked matches in the document.

Parameters

  [in] | obj | The object.

Returns
  `true` on success, `false` otherwise.

## elm_obj_web_reload()

EOAPI Eina_Bool elm_obj_web_reload | ( | Eo * | obj | ) |

Requests a reload of the current document in the object.

Parameters

  [in] | obj | The object.

Returns
  `true` on success, `false` otherwise.

## elm_web_add()

Evas_Object * elm_web_add | ( | Evas_Object * | parent | ) |

Add a new web object to the parent.

Parameters

  parent | The parent object.

Returns
  The new object or `NULL` if it cannot be created.

See also
  elm_web_url_set()
  elm_web_webkit_view_get()

## elm_web_uri_set()

EINA_DEPRECATED Eina_Bool elm_web_uri_set | ( | Evas_Object * | obj,
|  | const char * | uri )

Sets the URI for the web object.

It must be a full URI, with resource included, in the form http://www.enlightenment.org or file:///tmp/something.html

Parameters

  obj | The web object
  uri | The URI to set

Returns
  `EINA_TRUE` if the URI could be set, `EINA_FALSE` if an error occurred.

Deprecated
  Use elm_web_url_set() instead

See also
  elm_web_url_set()

References EINA_FALSE, and elm_obj_web_url_set().

## elm_web_uri_get()

EINA_DEPRECATED const char * elm_web_uri_get | ( | const Evas_Object * | obj | ) |

Get the current URI for the object.

The returned string must not be freed and is guaranteed to be stringshared.

Parameters

  obj | The web object

Returns
  A stringshared internal string with the current URI, or `NULL` on failure

Deprecated
  Use elm_web_url_get() instead

See also
  elm_web_url_get()

References elm_obj_web_url_get().

## elm_web_zoom_mode_set()

void elm_web_zoom_mode_set | ( | Evas_Object * | obj,
|  | Elm_Web_Zoom_Mode | mode )

Sets the zoom mode to use.

The modes can be any of those defined in .Elm_Web_Zoom_Mode, except .ELM_WEB_ZOOM_MODE_LAST. The default is .ELM_WEB_ZOOM_MODE_MANUAL.

.ELM_WEB_ZOOM_MODE_MANUAL means the zoom level will be controlled with the elm_web_zoom_set function.

.ELM_WEB_ZOOM_MODE_AUTO_FIT will calculate the needed zoom level to make sure the entirety of the web object's contents are shown.

.ELM_WEB_ZOOM_MODE_AUTO_FILL will calculate the needed zoom level to fit the contents in the web object's size, without leaving any space unused.

Parameters

  [in] | obj | The object.
  [in] | mode | The mode to set.

References EINA_FALSE.

## elm_web_zoom_mode_get()

Elm_Web_Zoom_Mode elm_web_zoom_mode_get | ( | const Evas_Object * | obj | ) |

Get the currently set zoom mode.

Parameters

  [in] | obj | The object.

Returns
  The mode to set.

References EINA_TRUE, and ELM_WEB_ZOOM_MODE_MANUAL.

## elm_web_zoom_set()

void elm_web_zoom_set | ( | Evas_Object * | obj,
|  | double | zoom )

Sets the zoom level of the web object.

Zoom level matches the Webkit API, so 1.0 means normal zoom, with higher values meaning zoom in and lower meaning zoom out. This function will only affect the zoom level if the mode set with elm_web_zoom_mode_set is .ELM_WEB_ZOOM_MODE_MANUAL.

Parameters

  [in] | obj | The object.
  [in] | zoom | The zoom level to set.

## elm_web_zoom_get()

double elm_web_zoom_get | ( | const Evas_Object * | obj | ) |

Get the current zoom level set on the web object.

Note that this is the zoom level set on the web object and not that of the underlying Webkit one. In the .ELM_WEB_ZOOM_MODE_MANUAL mode, the two zoom levels should match, but for the other two modes the Webkit zoom is calculated internally to match the chosen mode without changing the zoom level set for the web object.

Parameters

  [in] | obj | The object.

Returns
  The zoom level to set.