lib/eo/efl_object_override.eo.cs
elementary_eolian_blacklisted_files = \
-lib/elementary/elm_web.eo.cs \
+lib/elementary/elm_web_eo.cs \
lib/elementary/elm_map_eo.cs \
lib/elementary/elm_combobox.eo.cs \
lib/elementary/elm_list_eo.cs \
lib/elementary/elm_atspi_app_object.eo \
lib/elementary/elm_atspi_proxy.eo \
lib/elementary/efl_ui_image_zoomable_pan.eo \
- lib/elementary/elm_web.eo \
lib/elementary/elm_widget_item.eo \
lib/elementary/elm_widget_item_container.eo \
$(NULL)
lib/elementary/elm_toolbar_item_eo.legacy.c \
lib/elementary/elm_view_form_eo.c \
lib/elementary/elm_view_list_eo.c \
+lib/elementary/elm_web_eo.c \
+lib/elementary/elm_web_eo.legacy.c \
$(NULL)
elm_legacy_eo_headers = \
lib/elementary/elm_view_form_eo.legacy.h \
lib/elementary/elm_view_list_eo.h \
lib/elementary/elm_view_list_eo.legacy.h \
+lib/elementary/elm_web_eo.h \
+lib/elementary/elm_web_eo.legacy.h \
$(NULL)
install_moduleweb_nonepkgLTLIBRARIES = install-moduleweb_nonepkgLTLIBRARIES
$(install_moduleweb_nonepkgLTLIBRARIES): install-libLTLIBRARIES
-elm_web_none_eolian_files = modules/elementary/web/none/elm_web_none.eo
-elm_web_none_eolian_c = $(elm_web_none_eolian_files:%.eo=%.eo.c)
-elm_web_none_eolian_h = $(elm_web_none_eolian_files:%.eo=%.eo.h)
-
-EXTRA_DIST2 += $(elm_web_none_eolian_files)
-BUILT_SOURCES += $(elm_web_none_eolian_c) $(elm_web_none_eolian_h)
+EXTRA_DIST2 += \
+modules/elementary/web/none/elm_web_none_eo.c \
+modules/elementary/web/none/elm_web_none_eo.h
modules_elementary_web_none_module_la_SOURCES = \
modules/elementary/web/none/elm_web_none.c
+++ /dev/null
-type Elm_Web_Console_Message: __undefined_type; [[Elementary web console message type]]
-type Elm_Web_Window_Open: __undefined_type; [[Elementary web window open type]]
-type Elm_Web_Dialog_File_Selector: __undefined_type; [[Elementary web dialog file selector type]]
-type Elm_Web_Dialog_Confirm: __undefined_type; [[Elementary web dialog confirm type]]
-type Elm_Web_Dialog_Prompt: __undefined_type; [[Elementary web dialog prompt type]]
-type Elm_Web_Dialog_Alert: __undefined_type; [[Elementary web dialog alert type]]
-
-abstract Elm.Web extends Efl.Ui.Widget implements Efl.Ui.Legacy, Efl.Ui.Zoom
-{
- [[Elementary web view class]]
- legacy_prefix: elm_web;
- eo_prefix: elm_obj_web;
- event_prefix: elm_web;
- methods {
- @property text_matches_highlight @pure_virtual {
- set {
- [[Sets whether to highlight the matched marks.
-
- If enabled, marks set with @.text_matches_mark will be
- highlighted.
- ]]
- return: bool; [[$true on success, $false otherwise]]
- }
- get {
- [[Get whether highlighting marks is enabled.]]
- }
- values {
- highlight: bool; [[Whether to highlight the marks or not.]]
- }
- }
- @property useragent @pure_virtual {
- set {
- [[Change useragent of a elm_web object.]]
- }
- get {
- [[Return current useragent of elm_web object.]]
- }
- values {
- user_agent: string; [[String for useragent.]]
- }
- }
- @property url @pure_virtual {
- set {
- [[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
- ]]
- return: bool; [[$true on success, $false otherwise]]
- }
- get {
- [[Get the current URL for the object.
-
- The returned string must not be freed and is guaranteed to be
- stringshared.
- ]]
- }
- values {
- url: string; [[The URL to set.]]
- }
- }
- @property bg_color @pure_virtual {
- set {
- [[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.
- ]]
- }
- get {
- [[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.
- ]]
- }
- values {
- r: int; [[Red component.]]
- g: int; [[Green component.]]
- b: int; [[Blue component.]]
- a: int; [[Alpha component.]]
- }
- }
- @property inwin_mode @pure_virtual {
- set {
- [[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.
- ]]
- }
- get {
- [[Get whether Inwin mode is set for the current object.]]
- }
- values {
- value: bool; [[$true if dialog will be opened as Inwin, $false otherwise]]
- }
- }
- @property tab_propagate @pure_virtual {
- set {
- [[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.
- ]]
- }
- get {
- [[Get the status of the tab propagation.]]
- }
- values {
- propagate: bool; [[Whether to propagate Tab keys to Elementary or not.]]
- }
- }
- @property history_enabled @pure_virtual {
- set {
- [[Enables or disables the browsing history.]]
- }
- get {
- [[Get whether browsing history is enabled for the given object.]]
- }
- values {
- enable: bool; [[Whether to enable or disable the browsing history.]]
- }
- }
- @property console_message_hook {
- set @pure_virtual {
- [[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.
- ]]
- }
- values {
- func: Elm_Web_Console_Message; [[The callback function to be used.]]
- data: void_ptr; [[User data.]]
- }
- }
- @property window_create_hook {
- set @pure_virtual {
- [[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.
- ]]
- }
- values {
- func: Elm_Web_Window_Open @nullable; [[The hook function to be called when a window is requested.]]
- data: void_ptr @optional; [[User data.]]
- }
- }
- @property dialog_file_selector_hook {
- set @pure_virtual {
- [[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.
- ]]
- }
- values {
- func: Elm_Web_Dialog_File_Selector @nullable; [[The callback function to be used.]]
- data: void_ptr @optional; [[User data.]]
- }
- }
- @property dialog_confirm_hook {
- set @pure_virtual {
- [[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.
- ]]
- }
- values {
- func: Elm_Web_Dialog_Confirm @nullable; [[The callback function to be used.]]
- data: void_ptr @optional; [[User data.]]
- }
- }
- @property popup_selected {
- set @pure_virtual {
- [[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.
- ]]
- }
- values {
- idx: int; [[The index selected.]]
- }
- }
- @property dialog_prompt_hook {
- set @pure_virtual {
- [[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.
- ]]
- }
- values {
- func: Elm_Web_Dialog_Prompt @nullable; [[The callback function to be used.]]
- data: void_ptr @optional; [[User data.]]
- }
- }
- @property dialog_alert_hook {
- set @pure_virtual {
- [[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.
- ]]
- }
- values {
- func: Elm_Web_Dialog_Alert @nullable; [[Callback function to be used.]]
- data: void_ptr @optional; [[User data.]]
- }
- }
- @property forward_possible {
- get @pure_virtual {
- [[Queries whether it's possible to go forward in history.]]
- return: bool; [[$true if it is possible to go forward, $false otherwise]]
- }
- }
- @property webkit_view {
- get @pure_virtual {
- [[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.
- ]]
- return: Efl.Canvas.Object; [[The internal ewk_view object or $null
- if it does not exist. (Failure to
- create or Elementary compiled
- without ewebkit)]]
- }
- }
- @property back_possible {
- get @pure_virtual {
- [[Queries whether it's possible to go back in history.]]
- return: bool; [[$true if it is possible to go back, $false otherwise]]
- }
- }
- @property load_progress {
- get @pure_virtual {
- [[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.
- ]]
- return: double; [[A value between 0.0 and 1.0 indicating the
- progress, or -1.0 on failure.]]
- }
- }
- @property selection {
- get @pure_virtual {
- [[Get a copy of the currently selected text.
-
- The string returned must be freed by the user when it's done
- with it.
- ]]
- return: mstring @owned @warn_unused; [[A newly allocated string, or
- $null if nothing is selected
- or an error occurred.]]
- }
- }
- @property title {
- get @pure_virtual {
- [[Get the current title.
-
- The returned string must not be freed and is guaranteed to be
- stringshared.
- ]]
- return: stringshare @owned @warn_unused; [[
- A stringshared internal string with the current title, or $null on
- failure.
- ]]
- }
- }
- navigate @pure_virtual {
- [[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.
- ]]
- return: bool; [[$true on success, $false on error or if not enough
- history exists to jump the given number of steps]]
- params {
- @in steps: int; [[The number of steps to jump.]]
- }
- }
- back @pure_virtual {
- [[Goes back one step in the browsing history.
-
- This is equivalent to calling elm_web_object_navigate(obj, -1);
- ]]
- return: bool; [[$true on success, $false otherwise]]
- }
- html_string_load @pure_virtual {
- [[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.
-
- @since 1.9
- ]]
- return: bool; [[$true on success, $false otherwise]]
- params {
- @in html: string; [[HTML data to load.]]
- @in base_url: string @optional; [[Base URL used for relative paths to external objects (optional).]]
- @in unreachable_url: string @optional; [[URL that could not be reached (optional).]]
- }
- }
- text_search @const @pure_virtual {
- [[Searches the given string in a document.]]
- return: bool; [[$true if the given string was found, $false if not
- or failure.]]
- params {
- @in string: string; [[String to search.]]
- @in case_sensitive: bool; [[If search should be case sensitive or not.]]
- @in forward: bool; [[If search is from cursor and on or backwards.]]
- @in wrap: bool; [[If search should wrap at the end.]]
- }
- }
- popup_destroy @pure_virtual {
- [[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.
- ]]
- return: bool; [[$true if the menu was successfully destroyed, or
- $false if there was no menu to destroy.]]
- }
- region_show @pure_virtual {
- [[Shows the given region in the web object.]]
- params {
- @in x: int; [[The x coordinate of the region to show.]]
- @in y: int; [[The y coordinate of the region to show.]]
- @in w: int; [[The width of the region to show.]]
- @in h: int; [[The height of the region to show.]]
- }
- }
- forward @pure_virtual {
- [[Goes forward one step in the browsing history.
-
- This is equivalent to calling elm_web_object_navigate(obj, 1);
-
- See also @.history_enabled.set, @.forward_possible.get,
- @.back, @.navigate.
- ]]
- return: bool; [[$true on success, $false otherwise.]]
- }
- text_matches_mark @pure_virtual {
- [[Marks matches of the given string in a document.]]
- return: uint; [[Number of matched $string.]]
- params {
- @in string: string; [[String to match.]]
- @in case_sensitive: bool; [[If match should be case sensitive or not.]]
- @in highlight: bool; [[If matches should be highlighted.]]
- @in limit: uint; [[Maximum amount of matches, or zero to unlimited.]]
- }
- }
- region_bring_in @pure_virtual {
- [[Brings in the region to the visible area.
-
- Like @.region_show, but it animates the scrolling of the object
- to show the area.
- ]]
- params {
- @in x: int; [[The x coordinate of the region to show.]]
- @in y: int; [[The y coordinate of the region to show.]]
- @in w: int; [[The width of the region to show.]]
- @in h: int; [[The height of the region to show.]]
- }
- }
- stop @pure_virtual {
- [[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.
- ]]
- return: bool; [[$true if the cancel was successful, $false otherwise.]]
- }
- navigate_possible_get @pure_virtual {
- [[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.
- ]]
- return: bool; [[$true if enough history exists to perform the
- given jump, $false otherwise.]]
- params {
- @in steps: int; [[The number of steps to check for.]]
- }
- }
- reload_full @pure_virtual {
- [[Requests a reload of the current document, avoiding any
- existing caches.
- ]]
- return: bool; [[$true on success, $false otherwise.]]
- }
- text_matches_unmark_all @pure_virtual {
- [[Clears all marked matches in the document.]]
- return: bool; [[$true on success, $false otherwise.]]
- }
- reload @pure_virtual {
- [[Requests a reload of the current document in the object.]]
- return: bool; [[$true on success, $false otherwise.]]
- }
- }
- implements {
- class.constructor;
- Efl.Object.constructor;
- }
- events {
- /* FIXME: Nobody is emitting these
- uri,changed; [[Called when URI changed]]
- url,changed; [[Called when URL changed]]
- windows,close,request; [[Called when window closed event was received]]
- */
- }
-}
#undef ELM_WEB_CLASS
#define ELM_WEB_CLASS elm_web_class_get()
-#include "elm_web.eo.c"
+#include "elm_web_eo.c"
--- /dev/null
+
+static Eina_Error
+__eolian_elm_web_text_matches_highlight_set_reflect(Eo *obj, Eina_Value val)
+{
+ Eina_Error r = 0; Eina_Bool cval;
+ if (!eina_value_bool_convert(&val, &cval))
+ {
+ r = EINA_ERROR_VALUE_FAILED;
+ goto end;
+ }
+ elm_obj_web_text_matches_highlight_set(obj, cval);
+ end:
+ eina_value_flush(&val);
+ return r;
+}
+
+EOAPI EFL_FUNC_BODYV(elm_obj_web_text_matches_highlight_set, Eina_Bool, 0, EFL_FUNC_CALL(highlight), Eina_Bool highlight);
+
+static Eina_Value
+__eolian_elm_web_text_matches_highlight_get_reflect(Eo *obj)
+{
+ Eina_Bool val = elm_obj_web_text_matches_highlight_get(obj);
+ return eina_value_bool_init(val);
+}
+
+EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_text_matches_highlight_get, Eina_Bool, 0);
+
+static Eina_Error
+__eolian_elm_web_useragent_set_reflect(Eo *obj, Eina_Value val)
+{
+ Eina_Error r = 0; const char *cval;
+ if (!eina_value_string_convert(&val, &cval))
+ {
+ r = EINA_ERROR_VALUE_FAILED;
+ goto end;
+ }
+ elm_obj_web_useragent_set(obj, cval);
+ end:
+ eina_value_flush(&val);
+ return r;
+}
+
+EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_useragent_set, EFL_FUNC_CALL(user_agent), const char *user_agent);
+
+static Eina_Value
+__eolian_elm_web_useragent_get_reflect(Eo *obj)
+{
+ const char *val = elm_obj_web_useragent_get(obj);
+ return eina_value_string_init(val);
+}
+
+EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_useragent_get, const char *, NULL);
+
+static Eina_Error
+__eolian_elm_web_url_set_reflect(Eo *obj, Eina_Value val)
+{
+ Eina_Error r = 0; const char *cval;
+ if (!eina_value_string_convert(&val, &cval))
+ {
+ r = EINA_ERROR_VALUE_FAILED;
+ goto end;
+ }
+ elm_obj_web_url_set(obj, cval);
+ end:
+ eina_value_flush(&val);
+ return r;
+}
+
+EOAPI EFL_FUNC_BODYV(elm_obj_web_url_set, Eina_Bool, 0, EFL_FUNC_CALL(url), const char *url);
+
+static Eina_Value
+__eolian_elm_web_url_get_reflect(Eo *obj)
+{
+ const char *val = elm_obj_web_url_get(obj);
+ return eina_value_string_init(val);
+}
+
+EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_url_get, const char *, NULL);
+EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_bg_color_set, EFL_FUNC_CALL(r, g, b, a), int r, int g, int b, int a);
+EOAPI EFL_VOID_FUNC_BODYV_CONST(elm_obj_web_bg_color_get, EFL_FUNC_CALL(r, g, b, a), int *r, int *g, int *b, int *a);
+
+static Eina_Error
+__eolian_elm_web_inwin_mode_set_reflect(Eo *obj, Eina_Value val)
+{
+ Eina_Error r = 0; Eina_Bool cval;
+ if (!eina_value_bool_convert(&val, &cval))
+ {
+ r = EINA_ERROR_VALUE_FAILED;
+ goto end;
+ }
+ elm_obj_web_inwin_mode_set(obj, cval);
+ end:
+ eina_value_flush(&val);
+ return r;
+}
+
+EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_inwin_mode_set, EFL_FUNC_CALL(value), Eina_Bool value);
+
+static Eina_Value
+__eolian_elm_web_inwin_mode_get_reflect(Eo *obj)
+{
+ Eina_Bool val = elm_obj_web_inwin_mode_get(obj);
+ return eina_value_bool_init(val);
+}
+
+EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_inwin_mode_get, Eina_Bool, 0);
+
+static Eina_Error
+__eolian_elm_web_tab_propagate_set_reflect(Eo *obj, Eina_Value val)
+{
+ Eina_Error r = 0; Eina_Bool cval;
+ if (!eina_value_bool_convert(&val, &cval))
+ {
+ r = EINA_ERROR_VALUE_FAILED;
+ goto end;
+ }
+ elm_obj_web_tab_propagate_set(obj, cval);
+ end:
+ eina_value_flush(&val);
+ return r;
+}
+
+EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_tab_propagate_set, EFL_FUNC_CALL(propagate), Eina_Bool propagate);
+
+static Eina_Value
+__eolian_elm_web_tab_propagate_get_reflect(Eo *obj)
+{
+ Eina_Bool val = elm_obj_web_tab_propagate_get(obj);
+ return eina_value_bool_init(val);
+}
+
+EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_tab_propagate_get, Eina_Bool, 0);
+
+static Eina_Error
+__eolian_elm_web_history_enabled_set_reflect(Eo *obj, Eina_Value val)
+{
+ Eina_Error r = 0; Eina_Bool cval;
+ if (!eina_value_bool_convert(&val, &cval))
+ {
+ r = EINA_ERROR_VALUE_FAILED;
+ goto end;
+ }
+ elm_obj_web_history_enabled_set(obj, cval);
+ end:
+ eina_value_flush(&val);
+ return r;
+}
+
+EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_history_enabled_set, EFL_FUNC_CALL(enable), Eina_Bool enable);
+
+static Eina_Value
+__eolian_elm_web_history_enabled_get_reflect(Eo *obj)
+{
+ Eina_Bool val = elm_obj_web_history_enabled_get(obj);
+ return eina_value_bool_init(val);
+}
+
+EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_history_enabled_get, Eina_Bool, 0);
+EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_console_message_hook_set, EFL_FUNC_CALL(func, data), Elm_Web_Console_Message func, void *data);
+EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_window_create_hook_set, EFL_FUNC_CALL(func, data), Elm_Web_Window_Open func, void *data);
+EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_dialog_file_selector_hook_set, EFL_FUNC_CALL(func, data), Elm_Web_Dialog_File_Selector func, void *data);
+EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_dialog_confirm_hook_set, EFL_FUNC_CALL(func, data), Elm_Web_Dialog_Confirm func, void *data);
+
+static Eina_Error
+__eolian_elm_web_popup_selected_set_reflect(Eo *obj, Eina_Value val)
+{
+ Eina_Error r = 0; int cval;
+ if (!eina_value_int_convert(&val, &cval))
+ {
+ r = EINA_ERROR_VALUE_FAILED;
+ goto end;
+ }
+ elm_obj_web_popup_selected_set(obj, cval);
+ end:
+ eina_value_flush(&val);
+ return r;
+}
+
+EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_popup_selected_set, EFL_FUNC_CALL(idx), int idx);
+EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_dialog_prompt_hook_set, EFL_FUNC_CALL(func, data), Elm_Web_Dialog_Prompt func, void *data);
+EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_dialog_alert_hook_set, EFL_FUNC_CALL(func, data), Elm_Web_Dialog_Alert func, void *data);
+EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_forward_possible_get, Eina_Bool, 0);
+EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_webkit_view_get, Efl_Canvas_Object *, NULL);
+EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_back_possible_get, Eina_Bool, 0);
+EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_load_progress_get, double, 0);
+EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_selection_get, char *, NULL);
+EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_title_get, Eina_Stringshare *, NULL);
+EOAPI EFL_FUNC_BODYV(elm_obj_web_navigate, Eina_Bool, 0, EFL_FUNC_CALL(steps), int steps);
+EOAPI EFL_FUNC_BODY(elm_obj_web_back, Eina_Bool, 0);
+EOAPI EFL_FUNC_BODYV(elm_obj_web_html_string_load, Eina_Bool, 0, EFL_FUNC_CALL(html, base_url, unreachable_url), const char *html, const char *base_url, const char *unreachable_url);
+EOAPI EFL_FUNC_BODYV_CONST(elm_obj_web_text_search, Eina_Bool, 0, EFL_FUNC_CALL(string, case_sensitive, forward, wrap), const char *string, Eina_Bool case_sensitive, Eina_Bool forward, Eina_Bool wrap);
+EOAPI EFL_FUNC_BODY(elm_obj_web_popup_destroy, Eina_Bool, 0);
+EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_region_show, EFL_FUNC_CALL(x, y, w, h), int x, int y, int w, int h);
+EOAPI EFL_FUNC_BODY(elm_obj_web_forward, Eina_Bool, 0);
+EOAPI EFL_FUNC_BODYV(elm_obj_web_text_matches_mark, unsigned int, 0, EFL_FUNC_CALL(string, case_sensitive, highlight, limit), const char *string, Eina_Bool case_sensitive, Eina_Bool highlight, unsigned int limit);
+EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_region_bring_in, EFL_FUNC_CALL(x, y, w, h), int x, int y, int w, int h);
+EOAPI EFL_FUNC_BODY(elm_obj_web_stop, Eina_Bool, 0);
+EOAPI EFL_FUNC_BODYV(elm_obj_web_navigate_possible_get, Eina_Bool, 0, EFL_FUNC_CALL(steps), int steps);
+EOAPI EFL_FUNC_BODY(elm_obj_web_reload_full, Eina_Bool, 0);
+EOAPI EFL_FUNC_BODY(elm_obj_web_text_matches_unmark_all, Eina_Bool, 0);
+EOAPI EFL_FUNC_BODY(elm_obj_web_reload, Eina_Bool, 0);
+
+Efl_Object *_elm_web_efl_object_constructor(Eo *obj, Elm_Web_Data *pd);
+
+
+static Eina_Bool
+_elm_web_class_initializer(Efl_Class *klass)
+{
+ const Efl_Object_Ops *opsp = NULL;
+
+ const Efl_Object_Property_Reflection_Ops *ropsp = NULL;
+
+#ifndef ELM_WEB_EXTRA_OPS
+#define ELM_WEB_EXTRA_OPS
+#endif
+
+ EFL_OPS_DEFINE(ops,
+ EFL_OBJECT_OP_FUNC(elm_obj_web_text_matches_highlight_set, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_text_matches_highlight_get, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_useragent_set, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_useragent_get, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_url_set, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_url_get, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_bg_color_set, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_bg_color_get, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_inwin_mode_set, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_inwin_mode_get, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_tab_propagate_set, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_tab_propagate_get, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_history_enabled_set, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_history_enabled_get, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_console_message_hook_set, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_window_create_hook_set, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_dialog_file_selector_hook_set, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_dialog_confirm_hook_set, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_popup_selected_set, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_dialog_prompt_hook_set, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_dialog_alert_hook_set, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_forward_possible_get, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_webkit_view_get, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_back_possible_get, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_load_progress_get, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_selection_get, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_title_get, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_navigate, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_back, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_html_string_load, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_text_search, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_popup_destroy, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_region_show, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_forward, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_text_matches_mark, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_region_bring_in, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_stop, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_navigate_possible_get, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_reload_full, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_text_matches_unmark_all, NULL),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_reload, NULL),
+ EFL_OBJECT_OP_FUNC(efl_constructor, _elm_web_efl_object_constructor),
+ ELM_WEB_EXTRA_OPS
+ );
+ opsp = &ops;
+
+ static const Efl_Object_Property_Reflection refl_table[] = {
+ {"text_matches_highlight", __eolian_elm_web_text_matches_highlight_set_reflect, __eolian_elm_web_text_matches_highlight_get_reflect},
+ {"useragent", __eolian_elm_web_useragent_set_reflect, __eolian_elm_web_useragent_get_reflect},
+ {"url", __eolian_elm_web_url_set_reflect, __eolian_elm_web_url_get_reflect},
+ {"inwin_mode", __eolian_elm_web_inwin_mode_set_reflect, __eolian_elm_web_inwin_mode_get_reflect},
+ {"tab_propagate", __eolian_elm_web_tab_propagate_set_reflect, __eolian_elm_web_tab_propagate_get_reflect},
+ {"history_enabled", __eolian_elm_web_history_enabled_set_reflect, __eolian_elm_web_history_enabled_get_reflect},
+ {"popup_selected", __eolian_elm_web_popup_selected_set_reflect, NULL},
+ };
+ static const Efl_Object_Property_Reflection_Ops rops = {
+ refl_table, EINA_C_ARRAY_LENGTH(refl_table)
+ };
+ ropsp = &rops;
+
+ return efl_class_functions_set(klass, opsp, ropsp);
+}
+
+static const Efl_Class_Description _elm_web_class_desc = {
+ EO_VERSION,
+ "Elm.Web",
+ EFL_CLASS_TYPE_REGULAR_NO_INSTANT,
+ sizeof(Elm_Web_Data),
+ _elm_web_class_initializer,
+ _elm_web_class_constructor,
+ NULL
+};
+
+EFL_DEFINE_CLASS(elm_web_class_get, &_elm_web_class_desc, EFL_UI_WIDGET_CLASS, EFL_UI_LEGACY_INTERFACE, EFL_UI_ZOOM_INTERFACE, NULL);
+
+#include "elm_web_eo.legacy.c"
-#include "elm_web.eo.h"
\ No newline at end of file
+#ifndef _ELM_WEB_EO_H_
+#define _ELM_WEB_EO_H_
+
+#ifndef _ELM_WEB_EO_CLASS_TYPE
+#define _ELM_WEB_EO_CLASS_TYPE
+
+typedef Eo Elm_Web;
+
+#endif
+
+#ifndef _ELM_WEB_EO_TYPES
+#define _ELM_WEB_EO_TYPES
+
+
+#endif
+/** Elementary web view class
+ *
+ * @ingroup Elm_Web
+ */
+#define ELM_WEB_CLASS elm_web_class_get()
+
+EWAPI const Efl_Class *elm_web_class_get(void);
+
+/**
+ * @brief Sets whether to highlight the matched marks.
+ *
+ * If enabled, marks set with @ref elm_obj_web_text_matches_mark will be
+ * highlighted.
+ *
+ * @param[in] obj The object.
+ * @param[in] highlight Whether to highlight the marks or not.
+ *
+ * @return @c true on success, @c false otherwise
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI Eina_Bool elm_obj_web_text_matches_highlight_set(Eo *obj, Eina_Bool highlight);
+
+/**
+ * @brief Get whether highlighting marks is enabled.
+ *
+ * @param[in] obj The object.
+ *
+ * @return Whether to highlight the marks or not.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI Eina_Bool elm_obj_web_text_matches_highlight_get(const Eo *obj);
+
+/**
+ * @brief Change useragent of a elm_web object.
+ *
+ * @param[in] obj The object.
+ * @param[in] user_agent String for useragent.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI void elm_obj_web_useragent_set(Eo *obj, const char *user_agent);
+
+/**
+ * @brief Return current useragent of elm_web object.
+ *
+ * @param[in] obj The object.
+ *
+ * @return String for useragent.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI const char *elm_obj_web_useragent_get(const Eo *obj);
+
+/**
+ * @brief 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
+ *
+ * @param[in] obj The object.
+ * @param[in] url The URL to set.
+ *
+ * @return @c true on success, @c false otherwise
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI Eina_Bool elm_obj_web_url_set(Eo *obj, const char *url);
+
+/**
+ * @brief Get the current URL for the object.
+ *
+ * The returned string must not be freed and is guaranteed to be stringshared.
+ *
+ * @param[in] obj The object.
+ *
+ * @return The URL to set.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI const char *elm_obj_web_url_get(const Eo *obj);
+
+/**
+ * @brief 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.
+ *
+ * @param[in] obj The object.
+ * @param[in] r Red component.
+ * @param[in] g Green component.
+ * @param[in] b Blue component.
+ * @param[in] a Alpha component.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI void elm_obj_web_bg_color_set(Eo *obj, int r, int g, int b, int a);
+
+/**
+ * @brief 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.
+ *
+ * @param[in] obj The object.
+ * @param[out] r Red component.
+ * @param[out] g Green component.
+ * @param[out] b Blue component.
+ * @param[out] a Alpha component.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI void elm_obj_web_bg_color_get(const Eo *obj, int *r, int *g, int *b, int *a);
+
+/**
+ * @brief 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.
+ *
+ * @param[in] obj The object.
+ * @param[in] value @c true if dialog will be opened as Inwin, @c false
+ * otherwise
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI void elm_obj_web_inwin_mode_set(Eo *obj, Eina_Bool value);
+
+/**
+ * @brief Get whether Inwin mode is set for the current object.
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c true if dialog will be opened as Inwin, @c false otherwise
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI Eina_Bool elm_obj_web_inwin_mode_get(const Eo *obj);
+
+/**
+ * @brief 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.
+ *
+ * @param[in] obj The object.
+ * @param[in] propagate Whether to propagate Tab keys to Elementary or not.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI void elm_obj_web_tab_propagate_set(Eo *obj, Eina_Bool propagate);
+
+/**
+ * @brief Get the status of the tab propagation.
+ *
+ * @param[in] obj The object.
+ *
+ * @return Whether to propagate Tab keys to Elementary or not.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI Eina_Bool elm_obj_web_tab_propagate_get(const Eo *obj);
+
+/**
+ * @brief Enables or disables the browsing history.
+ *
+ * @param[in] obj The object.
+ * @param[in] enable Whether to enable or disable the browsing history.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI void elm_obj_web_history_enabled_set(Eo *obj, Eina_Bool enable);
+
+/**
+ * @brief Get whether browsing history is enabled for the given object.
+ *
+ * @param[in] obj The object.
+ *
+ * @return Whether to enable or disable the browsing history.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI Eina_Bool elm_obj_web_history_enabled_get(const Eo *obj);
+
+/**
+ * @brief 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.
+ *
+ * @param[in] obj The object.
+ * @param[in] func The callback function to be used.
+ * @param[in] data User data.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI void elm_obj_web_console_message_hook_set(Eo *obj, Elm_Web_Console_Message func, void *data);
+
+/**
+ * @brief 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 @c null in @c func will prevent
+ * new windows from opening.
+ *
+ * @param[in] obj The object.
+ * @param[in] func The hook function to be called when a window is requested.
+ * @param[in] data User data.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI void elm_obj_web_window_create_hook_set(Eo *obj, Elm_Web_Window_Open func, void *data);
+
+/**
+ * @brief 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 @c null is passed in @c func, the
+ * default implementation will take place.
+ *
+ * @param[in] obj The object.
+ * @param[in] func The callback function to be used.
+ * @param[in] data User data.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI void elm_obj_web_dialog_file_selector_hook_set(Eo *obj, Elm_Web_Dialog_File_Selector func, void *data);
+
+/**
+ * @brief 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 @c null is passed in @c func, the default
+ * implementation will take place.
+ *
+ * @param[in] obj The object.
+ * @param[in] func The callback function to be used.
+ * @param[in] data User data.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI void elm_obj_web_dialog_confirm_hook_set(Eo *obj, Elm_Web_Dialog_Confirm func, void *data);
+
+/**
+ * @brief 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.
+ *
+ * @param[in] obj The object.
+ * @param[in] idx The index selected.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI void elm_obj_web_popup_selected_set(Eo *obj, int idx);
+
+/**
+ * @brief 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 @c null is passed in @c func, the default implementation
+ * will take place.
+ *
+ * @param[in] obj The object.
+ * @param[in] func The callback function to be used.
+ * @param[in] data User data.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI void elm_obj_web_dialog_prompt_hook_set(Eo *obj, Elm_Web_Dialog_Prompt func, void *data);
+
+/**
+ * @brief 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 @c null is passed in @c func, the default implementation
+ * will take place.
+ *
+ * @param[in] obj The object.
+ * @param[in] func Callback function to be used.
+ * @param[in] data User data.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI void elm_obj_web_dialog_alert_hook_set(Eo *obj, Elm_Web_Dialog_Alert func, void *data);
+
+/**
+ * @brief Queries whether it's possible to go forward in history.
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c true if it is possible to go forward, @c false otherwise
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI Eina_Bool elm_obj_web_forward_possible_get(const Eo *obj);
+
+/**
+ * @brief 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.
+ *
+ * @param[in] obj The object.
+ *
+ * @return The internal ewk_view object or @c null if it does not exist.
+ * (Failure to create or Elementary compiled without ewebkit)
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI Efl_Canvas_Object *elm_obj_web_webkit_view_get(const Eo *obj);
+
+/**
+ * @brief Queries whether it's possible to go back in history.
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c true if it is possible to go back, @c false otherwise
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI Eina_Bool elm_obj_web_back_possible_get(const Eo *obj);
+
+/**
+ * @brief 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.
+ *
+ * @param[in] obj The object.
+ *
+ * @return A value between 0.0 and 1.0 indicating the progress, or -1.0 on
+ * failure.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI double elm_obj_web_load_progress_get(const Eo *obj);
+
+/**
+ * @brief Get a copy of the currently selected text.
+ *
+ * The string returned must be freed by the user when it's done with it.
+ *
+ * @param[in] obj The object.
+ *
+ * @return A newly allocated string, or @c null if nothing is selected or an
+ * error occurred.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI char *elm_obj_web_selection_get(const Eo *obj) EINA_WARN_UNUSED_RESULT;
+
+/**
+ * @brief Get the current title.
+ *
+ * The returned string must not be freed and is guaranteed to be stringshared.
+ *
+ * @param[in] obj The object.
+ *
+ * @return A stringshared internal string with the current title, or @c null on
+ * failure.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI Eina_Stringshare *elm_obj_web_title_get(const Eo *obj) EINA_WARN_UNUSED_RESULT;
+
+/**
+ * @brief Jumps the given number of steps in the browsing history.
+ *
+ * The @c steps value can be a negative integer to back in history, or a
+ * positive to move forward.
+ *
+ * @param[in] obj The object.
+ * @param[in] steps The number of steps to jump.
+ *
+ * @return @c true on success, @c false on error or if not enough history
+ * exists to jump the given number of steps
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI Eina_Bool elm_obj_web_navigate(Eo *obj, int steps);
+
+/**
+ * @brief Goes back one step in the browsing history.
+ *
+ * This is equivalent to calling elm_web_object_navigate(obj, -1);
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c true on success, @c false otherwise
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI Eina_Bool elm_obj_web_back(Eo *obj);
+
+/**
+ * @brief Loads the specified @c 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 @c base_url.
+ *
+ * If an @c 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.
+ *
+ * @param[in] obj The object.
+ * @param[in] html HTML data to load.
+ * @param[in] base_url Base URL used for relative paths to external objects
+ * (optional).
+ * @param[in] unreachable_url URL that could not be reached (optional).
+ *
+ * @return @c true on success, @c false otherwise
+ *
+ * @since 1.9
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI Eina_Bool elm_obj_web_html_string_load(Eo *obj, const char *html, const char *base_url, const char *unreachable_url);
+
+/**
+ * @brief Searches the given string in a document.
+ *
+ * @param[in] obj The object.
+ * @param[in] string String to search.
+ * @param[in] case_sensitive If search should be case sensitive or not.
+ * @param[in] forward If search is from cursor and on or backwards.
+ * @param[in] wrap If search should wrap at the end.
+ *
+ * @return @c true if the given string was found, @c false if not or failure.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI Eina_Bool elm_obj_web_text_search(const Eo *obj, const char *string, Eina_Bool case_sensitive, Eina_Bool forward, Eina_Bool wrap);
+
+/**
+ * @brief 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.
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c true if the menu was successfully destroyed, or @c false if there
+ * was no menu to destroy.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI Eina_Bool elm_obj_web_popup_destroy(Eo *obj);
+
+/**
+ * @brief Shows the given region in the web object.
+ *
+ * @param[in] obj The object.
+ * @param[in] x The x coordinate of the region to show.
+ * @param[in] y The y coordinate of the region to show.
+ * @param[in] w The width of the region to show.
+ * @param[in] h The height of the region to show.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI void elm_obj_web_region_show(Eo *obj, int x, int y, int w, int h);
+
+/**
+ * @brief Goes forward one step in the browsing history.
+ *
+ * This is equivalent to calling elm_web_object_navigate(obj, 1);
+ *
+ * See also @ref elm_obj_web_history_enabled_set,
+ * @ref elm_obj_web_forward_possible_get, @ref elm_obj_web_back,
+ * @ref elm_obj_web_navigate.
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c true on success, @c false otherwise.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI Eina_Bool elm_obj_web_forward(Eo *obj);
+
+/**
+ * @brief Marks matches of the given string in a document.
+ *
+ * @param[in] obj The object.
+ * @param[in] string String to match.
+ * @param[in] case_sensitive If match should be case sensitive or not.
+ * @param[in] highlight If matches should be highlighted.
+ * @param[in] limit Maximum amount of matches, or zero to unlimited.
+ *
+ * @return Number of matched @c string.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI unsigned int elm_obj_web_text_matches_mark(Eo *obj, const char *string, Eina_Bool case_sensitive, Eina_Bool highlight, unsigned int limit);
+
+/**
+ * @brief Brings in the region to the visible area.
+ *
+ * Like @ref elm_obj_web_region_show, but it animates the scrolling of the
+ * object to show the area.
+ *
+ * @param[in] obj The object.
+ * @param[in] x The x coordinate of the region to show.
+ * @param[in] y The y coordinate of the region to show.
+ * @param[in] w The width of the region to show.
+ * @param[in] h The height of the region to show.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI void elm_obj_web_region_bring_in(Eo *obj, int x, int y, int w, int h);
+
+/**
+ * @brief 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
+ * @c true.
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c true if the cancel was successful, @c false otherwise.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI Eina_Bool elm_obj_web_stop(Eo *obj);
+
+/**
+ * @brief Queries whether it's possible to jump the given number of steps.
+ *
+ * The @c steps value can be a negative integer to back in history, or positive
+ * to move forward.
+ *
+ * @param[in] obj The object.
+ * @param[in] steps The number of steps to check for.
+ *
+ * @return @c true if enough history exists to perform the given jump, @c false
+ * otherwise.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI Eina_Bool elm_obj_web_navigate_possible_get(Eo *obj, int steps);
+
+/**
+ * @brief Requests a reload of the current document, avoiding any existing
+ * caches.
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c true on success, @c false otherwise.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI Eina_Bool elm_obj_web_reload_full(Eo *obj);
+
+/**
+ * @brief Clears all marked matches in the document.
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c true on success, @c false otherwise.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI Eina_Bool elm_obj_web_text_matches_unmark_all(Eo *obj);
+
+/**
+ * @brief Requests a reload of the current document in the object.
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c true on success, @c false otherwise.
+ *
+ * @ingroup Elm_Web
+ */
+EOAPI Eina_Bool elm_obj_web_reload(Eo *obj);
+
+#endif
--- /dev/null
+
+EAPI Eina_Bool
+elm_web_text_matches_highlight_set(Elm_Web *obj, Eina_Bool highlight)
+{
+ return elm_obj_web_text_matches_highlight_set(obj, highlight);
+}
+
+EAPI Eina_Bool
+elm_web_text_matches_highlight_get(const Elm_Web *obj)
+{
+ return elm_obj_web_text_matches_highlight_get(obj);
+}
+
+EAPI void
+elm_web_useragent_set(Elm_Web *obj, const char *user_agent)
+{
+ elm_obj_web_useragent_set(obj, user_agent);
+}
+
+EAPI const char *
+elm_web_useragent_get(const Elm_Web *obj)
+{
+ return elm_obj_web_useragent_get(obj);
+}
+
+EAPI Eina_Bool
+elm_web_url_set(Elm_Web *obj, const char *url)
+{
+ return elm_obj_web_url_set(obj, url);
+}
+
+EAPI const char *
+elm_web_url_get(const Elm_Web *obj)
+{
+ return elm_obj_web_url_get(obj);
+}
+
+EAPI void
+elm_web_bg_color_set(Elm_Web *obj, int r, int g, int b, int a)
+{
+ elm_obj_web_bg_color_set(obj, r, g, b, a);
+}
+
+EAPI void
+elm_web_bg_color_get(const Elm_Web *obj, int *r, int *g, int *b, int *a)
+{
+ elm_obj_web_bg_color_get(obj, r, g, b, a);
+}
+
+EAPI void
+elm_web_inwin_mode_set(Elm_Web *obj, Eina_Bool value)
+{
+ elm_obj_web_inwin_mode_set(obj, value);
+}
+
+EAPI Eina_Bool
+elm_web_inwin_mode_get(const Elm_Web *obj)
+{
+ return elm_obj_web_inwin_mode_get(obj);
+}
+
+EAPI void
+elm_web_tab_propagate_set(Elm_Web *obj, Eina_Bool propagate)
+{
+ elm_obj_web_tab_propagate_set(obj, propagate);
+}
+
+EAPI Eina_Bool
+elm_web_tab_propagate_get(const Elm_Web *obj)
+{
+ return elm_obj_web_tab_propagate_get(obj);
+}
+
+EAPI void
+elm_web_history_enabled_set(Elm_Web *obj, Eina_Bool enable)
+{
+ elm_obj_web_history_enabled_set(obj, enable);
+}
+
+EAPI Eina_Bool
+elm_web_history_enabled_get(const Elm_Web *obj)
+{
+ return elm_obj_web_history_enabled_get(obj);
+}
+
+EAPI void
+elm_web_console_message_hook_set(Elm_Web *obj, Elm_Web_Console_Message func, void *data)
+{
+ elm_obj_web_console_message_hook_set(obj, func, data);
+}
+
+EAPI void
+elm_web_window_create_hook_set(Elm_Web *obj, Elm_Web_Window_Open func, void *data)
+{
+ elm_obj_web_window_create_hook_set(obj, func, data);
+}
+
+EAPI void
+elm_web_dialog_file_selector_hook_set(Elm_Web *obj, Elm_Web_Dialog_File_Selector func, void *data)
+{
+ elm_obj_web_dialog_file_selector_hook_set(obj, func, data);
+}
+
+EAPI void
+elm_web_dialog_confirm_hook_set(Elm_Web *obj, Elm_Web_Dialog_Confirm func, void *data)
+{
+ elm_obj_web_dialog_confirm_hook_set(obj, func, data);
+}
+
+EAPI void
+elm_web_popup_selected_set(Elm_Web *obj, int idx)
+{
+ elm_obj_web_popup_selected_set(obj, idx);
+}
+
+EAPI void
+elm_web_dialog_prompt_hook_set(Elm_Web *obj, Elm_Web_Dialog_Prompt func, void *data)
+{
+ elm_obj_web_dialog_prompt_hook_set(obj, func, data);
+}
+
+EAPI void
+elm_web_dialog_alert_hook_set(Elm_Web *obj, Elm_Web_Dialog_Alert func, void *data)
+{
+ elm_obj_web_dialog_alert_hook_set(obj, func, data);
+}
+
+EAPI Eina_Bool
+elm_web_forward_possible_get(const Elm_Web *obj)
+{
+ return elm_obj_web_forward_possible_get(obj);
+}
+
+EAPI Efl_Canvas_Object *
+elm_web_webkit_view_get(const Elm_Web *obj)
+{
+ return elm_obj_web_webkit_view_get(obj);
+}
+
+EAPI Eina_Bool
+elm_web_back_possible_get(const Elm_Web *obj)
+{
+ return elm_obj_web_back_possible_get(obj);
+}
+
+EAPI double
+elm_web_load_progress_get(const Elm_Web *obj)
+{
+ return elm_obj_web_load_progress_get(obj);
+}
+
+EAPI char *
+elm_web_selection_get(const Elm_Web *obj)
+{
+ return elm_obj_web_selection_get(obj);
+}
+
+EAPI Eina_Stringshare *
+elm_web_title_get(const Elm_Web *obj)
+{
+ return elm_obj_web_title_get(obj);
+}
+
+EAPI Eina_Bool
+elm_web_navigate(Elm_Web *obj, int steps)
+{
+ return elm_obj_web_navigate(obj, steps);
+}
+
+EAPI Eina_Bool
+elm_web_back(Elm_Web *obj)
+{
+ return elm_obj_web_back(obj);
+}
+
+EAPI Eina_Bool
+elm_web_html_string_load(Elm_Web *obj, const char *html, const char *base_url, const char *unreachable_url)
+{
+ return elm_obj_web_html_string_load(obj, html, base_url, unreachable_url);
+}
+
+EAPI Eina_Bool
+elm_web_text_search(const Elm_Web *obj, const char *string, Eina_Bool case_sensitive, Eina_Bool forward, Eina_Bool wrap)
+{
+ return elm_obj_web_text_search(obj, string, case_sensitive, forward, wrap);
+}
+
+EAPI Eina_Bool
+elm_web_popup_destroy(Elm_Web *obj)
+{
+ return elm_obj_web_popup_destroy(obj);
+}
+
+EAPI void
+elm_web_region_show(Elm_Web *obj, int x, int y, int w, int h)
+{
+ elm_obj_web_region_show(obj, x, y, w, h);
+}
+
+EAPI Eina_Bool
+elm_web_forward(Elm_Web *obj)
+{
+ return elm_obj_web_forward(obj);
+}
+
+EAPI unsigned int
+elm_web_text_matches_mark(Elm_Web *obj, const char *string, Eina_Bool case_sensitive, Eina_Bool highlight, unsigned int limit)
+{
+ return elm_obj_web_text_matches_mark(obj, string, case_sensitive, highlight, limit);
+}
+
+EAPI void
+elm_web_region_bring_in(Elm_Web *obj, int x, int y, int w, int h)
+{
+ elm_obj_web_region_bring_in(obj, x, y, w, h);
+}
+
+EAPI Eina_Bool
+elm_web_stop(Elm_Web *obj)
+{
+ return elm_obj_web_stop(obj);
+}
+
+EAPI Eina_Bool
+elm_web_navigate_possible_get(Elm_Web *obj, int steps)
+{
+ return elm_obj_web_navigate_possible_get(obj, steps);
+}
+
+EAPI Eina_Bool
+elm_web_reload_full(Elm_Web *obj)
+{
+ return elm_obj_web_reload_full(obj);
+}
+
+EAPI Eina_Bool
+elm_web_text_matches_unmark_all(Elm_Web *obj)
+{
+ return elm_obj_web_text_matches_unmark_all(obj);
+}
+
+EAPI Eina_Bool
+elm_web_reload(Elm_Web *obj)
+{
+ return elm_obj_web_reload(obj);
+}
--- /dev/null
+#ifndef _ELM_WEB_EO_LEGACY_H_
+#define _ELM_WEB_EO_LEGACY_H_
+
+#ifndef _ELM_WEB_EO_CLASS_TYPE
+#define _ELM_WEB_EO_CLASS_TYPE
+
+typedef Eo Elm_Web;
+
+#endif
+
+#ifndef _ELM_WEB_EO_TYPES
+#define _ELM_WEB_EO_TYPES
+
+
+#endif
+
+/**
+ * @brief Sets whether to highlight the matched marks.
+ *
+ * If enabled, marks set with @ref elm_web_text_matches_mark will be
+ * highlighted.
+ *
+ * @param[in] obj The object.
+ * @param[in] highlight Whether to highlight the marks or not.
+ *
+ * @return @c true on success, @c false otherwise
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI Eina_Bool elm_web_text_matches_highlight_set(Elm_Web *obj, Eina_Bool highlight);
+
+/**
+ * @brief Get whether highlighting marks is enabled.
+ *
+ * @param[in] obj The object.
+ *
+ * @return Whether to highlight the marks or not.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI Eina_Bool elm_web_text_matches_highlight_get(const Elm_Web *obj);
+
+/**
+ * @brief Change useragent of a elm_web object.
+ *
+ * @param[in] obj The object.
+ * @param[in] user_agent String for useragent.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI void elm_web_useragent_set(Elm_Web *obj, const char *user_agent);
+
+/**
+ * @brief Return current useragent of elm_web object.
+ *
+ * @param[in] obj The object.
+ *
+ * @return String for useragent.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI const char *elm_web_useragent_get(const Elm_Web *obj);
+
+/**
+ * @brief 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
+ *
+ * @param[in] obj The object.
+ * @param[in] url The URL to set.
+ *
+ * @return @c true on success, @c false otherwise
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI Eina_Bool elm_web_url_set(Elm_Web *obj, const char *url);
+
+/**
+ * @brief Get the current URL for the object.
+ *
+ * The returned string must not be freed and is guaranteed to be stringshared.
+ *
+ * @param[in] obj The object.
+ *
+ * @return The URL to set.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI const char *elm_web_url_get(const Elm_Web *obj);
+
+/**
+ * @brief 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.
+ *
+ * @param[in] obj The object.
+ * @param[in] r Red component.
+ * @param[in] g Green component.
+ * @param[in] b Blue component.
+ * @param[in] a Alpha component.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI void elm_web_bg_color_set(Elm_Web *obj, int r, int g, int b, int a);
+
+/**
+ * @brief 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.
+ *
+ * @param[in] obj The object.
+ * @param[out] r Red component.
+ * @param[out] g Green component.
+ * @param[out] b Blue component.
+ * @param[out] a Alpha component.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI void elm_web_bg_color_get(const Elm_Web *obj, int *r, int *g, int *b, int *a);
+
+/**
+ * @brief 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.
+ *
+ * @param[in] obj The object.
+ * @param[in] value @c true if dialog will be opened as Inwin, @c false
+ * otherwise
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI void elm_web_inwin_mode_set(Elm_Web *obj, Eina_Bool value);
+
+/**
+ * @brief Get whether Inwin mode is set for the current object.
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c true if dialog will be opened as Inwin, @c false otherwise
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI Eina_Bool elm_web_inwin_mode_get(const Elm_Web *obj);
+
+/**
+ * @brief 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.
+ *
+ * @param[in] obj The object.
+ * @param[in] propagate Whether to propagate Tab keys to Elementary or not.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI void elm_web_tab_propagate_set(Elm_Web *obj, Eina_Bool propagate);
+
+/**
+ * @brief Get the status of the tab propagation.
+ *
+ * @param[in] obj The object.
+ *
+ * @return Whether to propagate Tab keys to Elementary or not.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI Eina_Bool elm_web_tab_propagate_get(const Elm_Web *obj);
+
+/**
+ * @brief Enables or disables the browsing history.
+ *
+ * @param[in] obj The object.
+ * @param[in] enable Whether to enable or disable the browsing history.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI void elm_web_history_enabled_set(Elm_Web *obj, Eina_Bool enable);
+
+/**
+ * @brief Get whether browsing history is enabled for the given object.
+ *
+ * @param[in] obj The object.
+ *
+ * @return Whether to enable or disable the browsing history.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI Eina_Bool elm_web_history_enabled_get(const Elm_Web *obj);
+
+/**
+ * @brief 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.
+ *
+ * @param[in] obj The object.
+ * @param[in] func The callback function to be used.
+ * @param[in] data User data.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI void elm_web_console_message_hook_set(Elm_Web *obj, Elm_Web_Console_Message func, void *data);
+
+/**
+ * @brief 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 @c null in @c func will prevent
+ * new windows from opening.
+ *
+ * @param[in] obj The object.
+ * @param[in] func The hook function to be called when a window is requested.
+ * @param[in] data User data.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI void elm_web_window_create_hook_set(Elm_Web *obj, Elm_Web_Window_Open func, void *data);
+
+/**
+ * @brief 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 @c null is passed in @c func, the
+ * default implementation will take place.
+ *
+ * @param[in] obj The object.
+ * @param[in] func The callback function to be used.
+ * @param[in] data User data.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI void elm_web_dialog_file_selector_hook_set(Elm_Web *obj, Elm_Web_Dialog_File_Selector func, void *data);
+
+/**
+ * @brief 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 @c null is passed in @c func, the default
+ * implementation will take place.
+ *
+ * @param[in] obj The object.
+ * @param[in] func The callback function to be used.
+ * @param[in] data User data.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI void elm_web_dialog_confirm_hook_set(Elm_Web *obj, Elm_Web_Dialog_Confirm func, void *data);
+
+/**
+ * @brief 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.
+ *
+ * @param[in] obj The object.
+ * @param[in] idx The index selected.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI void elm_web_popup_selected_set(Elm_Web *obj, int idx);
+
+/**
+ * @brief 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 @c null is passed in @c func, the default implementation
+ * will take place.
+ *
+ * @param[in] obj The object.
+ * @param[in] func The callback function to be used.
+ * @param[in] data User data.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI void elm_web_dialog_prompt_hook_set(Elm_Web *obj, Elm_Web_Dialog_Prompt func, void *data);
+
+/**
+ * @brief 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 @c null is passed in @c func, the default implementation
+ * will take place.
+ *
+ * @param[in] obj The object.
+ * @param[in] func Callback function to be used.
+ * @param[in] data User data.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI void elm_web_dialog_alert_hook_set(Elm_Web *obj, Elm_Web_Dialog_Alert func, void *data);
+
+/**
+ * @brief Queries whether it's possible to go forward in history.
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c true if it is possible to go forward, @c false otherwise
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI Eina_Bool elm_web_forward_possible_get(const Elm_Web *obj);
+
+/**
+ * @brief 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.
+ *
+ * @param[in] obj The object.
+ *
+ * @return The internal ewk_view object or @c null if it does not exist.
+ * (Failure to create or Elementary compiled without ewebkit)
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI Efl_Canvas_Object *elm_web_webkit_view_get(const Elm_Web *obj);
+
+/**
+ * @brief Queries whether it's possible to go back in history.
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c true if it is possible to go back, @c false otherwise
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI Eina_Bool elm_web_back_possible_get(const Elm_Web *obj);
+
+/**
+ * @brief 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.
+ *
+ * @param[in] obj The object.
+ *
+ * @return A value between 0.0 and 1.0 indicating the progress, or -1.0 on
+ * failure.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI double elm_web_load_progress_get(const Elm_Web *obj);
+
+/**
+ * @brief Get a copy of the currently selected text.
+ *
+ * The string returned must be freed by the user when it's done with it.
+ *
+ * @param[in] obj The object.
+ *
+ * @return A newly allocated string, or @c null if nothing is selected or an
+ * error occurred.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI char *elm_web_selection_get(const Elm_Web *obj) EINA_WARN_UNUSED_RESULT;
+
+/**
+ * @brief Get the current title.
+ *
+ * The returned string must not be freed and is guaranteed to be stringshared.
+ *
+ * @param[in] obj The object.
+ *
+ * @return A stringshared internal string with the current title, or @c null on
+ * failure.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI Eina_Stringshare *elm_web_title_get(const Elm_Web *obj) EINA_WARN_UNUSED_RESULT;
+
+/**
+ * @brief Jumps the given number of steps in the browsing history.
+ *
+ * The @c steps value can be a negative integer to back in history, or a
+ * positive to move forward.
+ *
+ * @param[in] obj The object.
+ * @param[in] steps The number of steps to jump.
+ *
+ * @return @c true on success, @c false on error or if not enough history
+ * exists to jump the given number of steps
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI Eina_Bool elm_web_navigate(Elm_Web *obj, int steps);
+
+/**
+ * @brief Goes back one step in the browsing history.
+ *
+ * This is equivalent to calling elm_web_object_navigate(obj, -1);
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c true on success, @c false otherwise
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI Eina_Bool elm_web_back(Elm_Web *obj);
+
+/**
+ * @brief Loads the specified @c 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 @c base_url.
+ *
+ * If an @c 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.
+ *
+ * @param[in] obj The object.
+ * @param[in] html HTML data to load.
+ * @param[in] base_url Base URL used for relative paths to external objects
+ * (optional).
+ * @param[in] unreachable_url URL that could not be reached (optional).
+ *
+ * @return @c true on success, @c false otherwise
+ *
+ * @since 1.9
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI Eina_Bool elm_web_html_string_load(Elm_Web *obj, const char *html, const char *base_url, const char *unreachable_url);
+
+/**
+ * @brief Searches the given string in a document.
+ *
+ * @param[in] obj The object.
+ * @param[in] string String to search.
+ * @param[in] case_sensitive If search should be case sensitive or not.
+ * @param[in] forward If search is from cursor and on or backwards.
+ * @param[in] wrap If search should wrap at the end.
+ *
+ * @return @c true if the given string was found, @c false if not or failure.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI Eina_Bool elm_web_text_search(const Elm_Web *obj, const char *string, Eina_Bool case_sensitive, Eina_Bool forward, Eina_Bool wrap);
+
+/**
+ * @brief 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.
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c true if the menu was successfully destroyed, or @c false if there
+ * was no menu to destroy.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI Eina_Bool elm_web_popup_destroy(Elm_Web *obj);
+
+/**
+ * @brief Shows the given region in the web object.
+ *
+ * @param[in] obj The object.
+ * @param[in] x The x coordinate of the region to show.
+ * @param[in] y The y coordinate of the region to show.
+ * @param[in] w The width of the region to show.
+ * @param[in] h The height of the region to show.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI void elm_web_region_show(Elm_Web *obj, int x, int y, int w, int h);
+
+/**
+ * @brief Goes forward one step in the browsing history.
+ *
+ * This is equivalent to calling elm_web_object_navigate(obj, 1);
+ *
+ * See also @ref elm_web_history_enabled_set,
+ * @ref elm_web_forward_possible_get, @ref elm_web_back, @ref elm_web_navigate.
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c true on success, @c false otherwise.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI Eina_Bool elm_web_forward(Elm_Web *obj);
+
+/**
+ * @brief Marks matches of the given string in a document.
+ *
+ * @param[in] obj The object.
+ * @param[in] string String to match.
+ * @param[in] case_sensitive If match should be case sensitive or not.
+ * @param[in] highlight If matches should be highlighted.
+ * @param[in] limit Maximum amount of matches, or zero to unlimited.
+ *
+ * @return Number of matched @c string.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI unsigned int elm_web_text_matches_mark(Elm_Web *obj, const char *string, Eina_Bool case_sensitive, Eina_Bool highlight, unsigned int limit);
+
+/**
+ * @brief Brings in the region to the visible area.
+ *
+ * Like @ref elm_web_region_show, but it animates the scrolling of the object
+ * to show the area.
+ *
+ * @param[in] obj The object.
+ * @param[in] x The x coordinate of the region to show.
+ * @param[in] y The y coordinate of the region to show.
+ * @param[in] w The width of the region to show.
+ * @param[in] h The height of the region to show.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI void elm_web_region_bring_in(Elm_Web *obj, int x, int y, int w, int h);
+
+/**
+ * @brief 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
+ * @c true.
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c true if the cancel was successful, @c false otherwise.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI Eina_Bool elm_web_stop(Elm_Web *obj);
+
+/**
+ * @brief Queries whether it's possible to jump the given number of steps.
+ *
+ * The @c steps value can be a negative integer to back in history, or positive
+ * to move forward.
+ *
+ * @param[in] obj The object.
+ * @param[in] steps The number of steps to check for.
+ *
+ * @return @c true if enough history exists to perform the given jump, @c false
+ * otherwise.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI Eina_Bool elm_web_navigate_possible_get(Elm_Web *obj, int steps);
+
+/**
+ * @brief Requests a reload of the current document, avoiding any existing
+ * caches.
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c true on success, @c false otherwise.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI Eina_Bool elm_web_reload_full(Elm_Web *obj);
+
+/**
+ * @brief Clears all marked matches in the document.
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c true on success, @c false otherwise.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI Eina_Bool elm_web_text_matches_unmark_all(Elm_Web *obj);
+
+/**
+ * @brief Requests a reload of the current document in the object.
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c true on success, @c false otherwise.
+ *
+ * @ingroup Elm_Web_Group
+ */
+EAPI Eina_Bool elm_web_reload(Elm_Web *obj);
+
+#endif
* @ingroup Elm_Web
*/
EAPI double elm_web_zoom_get(const Evas_Object *obj);
-#include "elm_web.eo.legacy.h"
+#include "elm_web_eo.legacy.h"
'elm_atspi_bridge.eo',
'elm_atspi_app_object.eo',
'efl_ui_image_zoomable_pan.eo',
- 'elm_web.eo',
'elm_widget_item.eo',
'efl_ui_text_part.eo',
'efl_ui_caching_factory.eo',
'elm_view_form_eo.legacy.h',
'elm_view_list_eo.h',
'elm_view_list_eo.legacy.h',
+ 'elm_web_eo.h',
+ 'elm_web_eo.legacy.h',
]
elementary_header_src = [
#define ELEMENTARY_BUILD
#include "elm_module_helper.h"
-#include "elm_web_none.eo.h"
+#include "elm_web_none_eo.h"
#define MY_CLASS ELM_WEB_CLASS
#define ELM_WEB_NONE_EXTRA_OPS \
EFL_CANVAS_GROUP_ADD_OPS(elm_web_none)
-#include "elm_web_none.eo.c"
+#include "elm_web_none_eo.c"
+++ /dev/null
-class Elm.Web.None extends Elm.Web implements Efl.Ui.Legacy
-{
- [[Elementary web module class]]
- implements {
- Elm.Web.tab_propagate { get; set; }
- Elm.Web.webkit_view { get; }
- Elm.Web.window_create_hook { set; }
- Elm.Web.dialog_alert_hook { set; }
- Elm.Web.dialog_confirm_hook { set; }
- Elm.Web.dialog_prompt_hook { set; }
- Elm.Web.dialog_file_selector_hook { set; }
- Elm.Web.console_message_hook { set; }
- Elm.Web.useragent { get; set; }
- Elm.Web.url { get; set; }
- Elm.Web.html_string_load;
- Elm.Web.title { get; }
- Elm.Web.bg_color { get; set; }
- Elm.Web.selection { get; }
- Elm.Web.popup_selected { set; }
- Elm.Web.popup_destroy;
- Elm.Web.text_search;
- Elm.Web.text_matches_mark;
- Elm.Web.text_matches_unmark_all;
- Elm.Web.text_matches_highlight { get; set; }
- Elm.Web.load_progress { get; }
- Elm.Web.stop;
- Elm.Web.reload;
- Elm.Web.reload_full;
- Elm.Web.back;
- Elm.Web.forward;
- Elm.Web.navigate;
- Elm.Web.back_possible { get; }
- Elm.Web.forward_possible { get; }
- Elm.Web.navigate_possible_get;
- Elm.Web.history_enabled { get; set; }
- Efl.Ui.Zoom.zoom_level { get; set; }
- Efl.Ui.Zoom.zoom_mode { get; set; }
- Elm.Web.region_show;
- Elm.Web.region_bring_in;
- Elm.Web.inwin_mode { get; set; }
- }
-}
--- /dev/null
+
+void _elm_web_none_elm_web_tab_propagate_set(Eo *obj, Elm_Web_None_Data *pd, Eina_Bool propagate);
+
+
+Eina_Bool _elm_web_none_elm_web_tab_propagate_get(const Eo *obj, Elm_Web_None_Data *pd);
+
+
+Efl_Canvas_Object *_elm_web_none_elm_web_webkit_view_get(const Eo *obj, Elm_Web_None_Data *pd);
+
+
+void _elm_web_none_elm_web_window_create_hook_set(Eo *obj, Elm_Web_None_Data *pd, Elm_Web_Window_Open func, void *data);
+
+
+void _elm_web_none_elm_web_dialog_alert_hook_set(Eo *obj, Elm_Web_None_Data *pd, Elm_Web_Dialog_Alert func, void *data);
+
+
+void _elm_web_none_elm_web_dialog_confirm_hook_set(Eo *obj, Elm_Web_None_Data *pd, Elm_Web_Dialog_Confirm func, void *data);
+
+
+void _elm_web_none_elm_web_dialog_prompt_hook_set(Eo *obj, Elm_Web_None_Data *pd, Elm_Web_Dialog_Prompt func, void *data);
+
+
+void _elm_web_none_elm_web_dialog_file_selector_hook_set(Eo *obj, Elm_Web_None_Data *pd, Elm_Web_Dialog_File_Selector func, void *data);
+
+
+void _elm_web_none_elm_web_console_message_hook_set(Eo *obj, Elm_Web_None_Data *pd, Elm_Web_Console_Message func, void *data);
+
+
+void _elm_web_none_elm_web_useragent_set(Eo *obj, Elm_Web_None_Data *pd, const char *user_agent);
+
+
+const char *_elm_web_none_elm_web_useragent_get(const Eo *obj, Elm_Web_None_Data *pd);
+
+
+Eina_Bool _elm_web_none_elm_web_url_set(Eo *obj, Elm_Web_None_Data *pd, const char *url);
+
+
+const char *_elm_web_none_elm_web_url_get(const Eo *obj, Elm_Web_None_Data *pd);
+
+
+Eina_Bool _elm_web_none_elm_web_html_string_load(Eo *obj, Elm_Web_None_Data *pd, const char *html, const char *base_url, const char *unreachable_url);
+
+
+Eina_Stringshare *_elm_web_none_elm_web_title_get(const Eo *obj, Elm_Web_None_Data *pd);
+
+
+void _elm_web_none_elm_web_bg_color_set(Eo *obj, Elm_Web_None_Data *pd, int r, int g, int b, int a);
+
+
+void _elm_web_none_elm_web_bg_color_get(const Eo *obj, Elm_Web_None_Data *pd, int *r, int *g, int *b, int *a);
+
+
+char *_elm_web_none_elm_web_selection_get(const Eo *obj, Elm_Web_None_Data *pd);
+
+
+void _elm_web_none_elm_web_popup_selected_set(Eo *obj, Elm_Web_None_Data *pd, int idx);
+
+
+Eina_Bool _elm_web_none_elm_web_popup_destroy(Eo *obj, Elm_Web_None_Data *pd);
+
+
+Eina_Bool _elm_web_none_elm_web_text_search(const Eo *obj, Elm_Web_None_Data *pd, const char *string, Eina_Bool case_sensitive, Eina_Bool forward, Eina_Bool wrap);
+
+
+unsigned int _elm_web_none_elm_web_text_matches_mark(Eo *obj, Elm_Web_None_Data *pd, const char *string, Eina_Bool case_sensitive, Eina_Bool highlight, unsigned int limit);
+
+
+Eina_Bool _elm_web_none_elm_web_text_matches_unmark_all(Eo *obj, Elm_Web_None_Data *pd);
+
+
+Eina_Bool _elm_web_none_elm_web_text_matches_highlight_set(Eo *obj, Elm_Web_None_Data *pd, Eina_Bool highlight);
+
+
+Eina_Bool _elm_web_none_elm_web_text_matches_highlight_get(const Eo *obj, Elm_Web_None_Data *pd);
+
+
+double _elm_web_none_elm_web_load_progress_get(const Eo *obj, Elm_Web_None_Data *pd);
+
+
+Eina_Bool _elm_web_none_elm_web_stop(Eo *obj, Elm_Web_None_Data *pd);
+
+
+Eina_Bool _elm_web_none_elm_web_reload(Eo *obj, Elm_Web_None_Data *pd);
+
+
+Eina_Bool _elm_web_none_elm_web_reload_full(Eo *obj, Elm_Web_None_Data *pd);
+
+
+Eina_Bool _elm_web_none_elm_web_back(Eo *obj, Elm_Web_None_Data *pd);
+
+
+Eina_Bool _elm_web_none_elm_web_forward(Eo *obj, Elm_Web_None_Data *pd);
+
+
+Eina_Bool _elm_web_none_elm_web_navigate(Eo *obj, Elm_Web_None_Data *pd, int steps);
+
+
+Eina_Bool _elm_web_none_elm_web_back_possible_get(const Eo *obj, Elm_Web_None_Data *pd);
+
+
+Eina_Bool _elm_web_none_elm_web_forward_possible_get(const Eo *obj, Elm_Web_None_Data *pd);
+
+
+Eina_Bool _elm_web_none_elm_web_navigate_possible_get(Eo *obj, Elm_Web_None_Data *pd, int steps);
+
+
+void _elm_web_none_elm_web_history_enabled_set(Eo *obj, Elm_Web_None_Data *pd, Eina_Bool enable);
+
+
+Eina_Bool _elm_web_none_elm_web_history_enabled_get(const Eo *obj, Elm_Web_None_Data *pd);
+
+
+void _elm_web_none_efl_ui_zoom_zoom_level_set(Eo *obj, Elm_Web_None_Data *pd, double zoom);
+
+
+double _elm_web_none_efl_ui_zoom_zoom_level_get(const Eo *obj, Elm_Web_None_Data *pd);
+
+
+void _elm_web_none_efl_ui_zoom_zoom_mode_set(Eo *obj, Elm_Web_None_Data *pd, Efl_Ui_Zoom_Mode mode);
+
+
+Efl_Ui_Zoom_Mode _elm_web_none_efl_ui_zoom_zoom_mode_get(const Eo *obj, Elm_Web_None_Data *pd);
+
+
+void _elm_web_none_elm_web_region_show(Eo *obj, Elm_Web_None_Data *pd, int x, int y, int w, int h);
+
+
+void _elm_web_none_elm_web_region_bring_in(Eo *obj, Elm_Web_None_Data *pd, int x, int y, int w, int h);
+
+
+void _elm_web_none_elm_web_inwin_mode_set(Eo *obj, Elm_Web_None_Data *pd, Eina_Bool value);
+
+
+Eina_Bool _elm_web_none_elm_web_inwin_mode_get(const Eo *obj, Elm_Web_None_Data *pd);
+
+
+static Eina_Bool
+_elm_web_none_class_initializer(Efl_Class *klass)
+{
+ const Efl_Object_Ops *opsp = NULL;
+
+ const Efl_Object_Property_Reflection_Ops *ropsp = NULL;
+
+#ifndef ELM_WEB_NONE_EXTRA_OPS
+#define ELM_WEB_NONE_EXTRA_OPS
+#endif
+
+ EFL_OPS_DEFINE(ops,
+ EFL_OBJECT_OP_FUNC(elm_obj_web_tab_propagate_set, _elm_web_none_elm_web_tab_propagate_set),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_tab_propagate_get, _elm_web_none_elm_web_tab_propagate_get),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_webkit_view_get, _elm_web_none_elm_web_webkit_view_get),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_window_create_hook_set, _elm_web_none_elm_web_window_create_hook_set),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_dialog_alert_hook_set, _elm_web_none_elm_web_dialog_alert_hook_set),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_dialog_confirm_hook_set, _elm_web_none_elm_web_dialog_confirm_hook_set),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_dialog_prompt_hook_set, _elm_web_none_elm_web_dialog_prompt_hook_set),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_dialog_file_selector_hook_set, _elm_web_none_elm_web_dialog_file_selector_hook_set),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_console_message_hook_set, _elm_web_none_elm_web_console_message_hook_set),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_useragent_set, _elm_web_none_elm_web_useragent_set),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_useragent_get, _elm_web_none_elm_web_useragent_get),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_url_set, _elm_web_none_elm_web_url_set),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_url_get, _elm_web_none_elm_web_url_get),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_html_string_load, _elm_web_none_elm_web_html_string_load),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_title_get, _elm_web_none_elm_web_title_get),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_bg_color_set, _elm_web_none_elm_web_bg_color_set),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_bg_color_get, _elm_web_none_elm_web_bg_color_get),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_selection_get, _elm_web_none_elm_web_selection_get),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_popup_selected_set, _elm_web_none_elm_web_popup_selected_set),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_popup_destroy, _elm_web_none_elm_web_popup_destroy),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_text_search, _elm_web_none_elm_web_text_search),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_text_matches_mark, _elm_web_none_elm_web_text_matches_mark),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_text_matches_unmark_all, _elm_web_none_elm_web_text_matches_unmark_all),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_text_matches_highlight_set, _elm_web_none_elm_web_text_matches_highlight_set),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_text_matches_highlight_get, _elm_web_none_elm_web_text_matches_highlight_get),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_load_progress_get, _elm_web_none_elm_web_load_progress_get),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_stop, _elm_web_none_elm_web_stop),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_reload, _elm_web_none_elm_web_reload),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_reload_full, _elm_web_none_elm_web_reload_full),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_back, _elm_web_none_elm_web_back),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_forward, _elm_web_none_elm_web_forward),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_navigate, _elm_web_none_elm_web_navigate),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_back_possible_get, _elm_web_none_elm_web_back_possible_get),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_forward_possible_get, _elm_web_none_elm_web_forward_possible_get),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_navigate_possible_get, _elm_web_none_elm_web_navigate_possible_get),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_history_enabled_set, _elm_web_none_elm_web_history_enabled_set),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_history_enabled_get, _elm_web_none_elm_web_history_enabled_get),
+ EFL_OBJECT_OP_FUNC(efl_ui_zoom_level_set, _elm_web_none_efl_ui_zoom_zoom_level_set),
+ EFL_OBJECT_OP_FUNC(efl_ui_zoom_level_get, _elm_web_none_efl_ui_zoom_zoom_level_get),
+ EFL_OBJECT_OP_FUNC(efl_ui_zoom_mode_set, _elm_web_none_efl_ui_zoom_zoom_mode_set),
+ EFL_OBJECT_OP_FUNC(efl_ui_zoom_mode_get, _elm_web_none_efl_ui_zoom_zoom_mode_get),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_region_show, _elm_web_none_elm_web_region_show),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_region_bring_in, _elm_web_none_elm_web_region_bring_in),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_inwin_mode_set, _elm_web_none_elm_web_inwin_mode_set),
+ EFL_OBJECT_OP_FUNC(elm_obj_web_inwin_mode_get, _elm_web_none_elm_web_inwin_mode_get),
+ ELM_WEB_NONE_EXTRA_OPS
+ );
+ opsp = &ops;
+
+ return efl_class_functions_set(klass, opsp, ropsp);
+}
+
+static const Efl_Class_Description _elm_web_none_class_desc = {
+ EO_VERSION,
+ "Elm.Web.None",
+ EFL_CLASS_TYPE_REGULAR,
+ sizeof(Elm_Web_None_Data),
+ _elm_web_none_class_initializer,
+ NULL,
+ NULL
+};
+
+EFL_DEFINE_CLASS(elm_web_none_class_get, &_elm_web_none_class_desc, ELM_WEB_CLASS, EFL_UI_LEGACY_INTERFACE, NULL);
--- /dev/null
+#ifndef _ELM_WEB_NONE_EO_H_
+#define _ELM_WEB_NONE_EO_H_
+
+#ifndef _ELM_WEB_NONE_EO_CLASS_TYPE
+#define _ELM_WEB_NONE_EO_CLASS_TYPE
+
+typedef Eo Elm_Web_None;
+
+#endif
+
+#ifndef _ELM_WEB_NONE_EO_TYPES
+#define _ELM_WEB_NONE_EO_TYPES
+
+
+#endif
+/** Elementary web module class
+ *
+ * @ingroup Elm_Web_None
+ */
+#define ELM_WEB_NONE_CLASS elm_web_none_class_get()
+
+EWAPI const Efl_Class *elm_web_none_class_get(void);
+
+#endif
-pub_eo_files = [
- 'elm_web_none.eo'
-]
-
-
-foreach eo_file : pub_eo_files
- pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
- input : eo_file,
- output : [eo_file + '.h'],
- depfile : eo_file + '.d',
- install : true,
- install_dir : dir_package_include,
- command : eolian_gen + [ '-I', meson.current_source_dir(), eolian_include_directories,
- '-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
- '-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
- '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
- '-gchd', '@INPUT@'])
-endforeach
-
-
src = files([
'elm_web_none.c'
-]) + pub_eo_file_target
+])
shared_module('none',
src,