Add APIs for floating mode (app-in-app)
[framework/uifw/elementary.git] / src / lib / elm_web.h
index d5d44ef..b465906 100644 (file)
@@ -1,10 +1,11 @@
 /**
  * @defgroup Web Web
+ * @ingroup Elementary
  *
  * @image html img/widget/web/preview-00.png
  * @image latex img/widget/web/preview-00.eps
  *
- * A web object is used for displaying web pages (HTML/CSS/JS)
+ * A web widget is used for displaying web pages (HTML/CSS/JS)
  * using WebKit-EFL. You must have compiled Elementary with
  * ewebkit support.
  *
@@ -109,7 +110,7 @@ typedef struct _Elm_Web_Frame_Load_Error Elm_Web_Frame_Load_Error;
 struct _Elm_Web_Frame_Load_Error
 {
    int          code; /**< Numeric error code */
-   Eina_Bool    is_cancellation; /**< Error produced by cancelling a request */
+   Eina_Bool    is_cancellation; /**< Error produced by canceling a request */
    const char  *domain; /**< Error domain name */
    const char  *description; /**< Error description (already localized) */
    const char  *failing_url; /**< The URL that failed to load */
@@ -119,7 +120,7 @@ struct _Elm_Web_Frame_Load_Error
 /**
  * The possibles types that the items in a menu can be
  */
-typedef enum _Elm_Web_Menu_Item_Type
+typedef enum
 {
    ELM_WEB_MENU_SEPARATOR,
    ELM_WEB_MENU_GROUP,
@@ -156,6 +157,8 @@ struct _Elm_Web_Menu_Item
  *
  * @see elm_web_popup_selected_set()
  * @see elm_web_popup_destroy()
+ *
+ * @ingroup Web
  */
 typedef struct _Elm_Web_Menu Elm_Web_Menu;
 
@@ -175,6 +178,8 @@ typedef struct _Elm_Web_Menu Elm_Web_Menu;
  *
  * @see elm_web_popup_selected_set()
  * @see elm_web_popup_destroy()
+ *
+ * @ingroup Web
  */
 struct _Elm_Web_Menu
 {
@@ -196,7 +201,7 @@ struct _Elm_Web_Download
 /**
  * Types of zoom available.
  */
-typedef enum _Elm_Web_Zoom_Mode
+typedef enum
 {
    ELM_WEB_ZOOM_MODE_MANUAL = 0, /**< Zoom controlled normally by elm_web_zoom_set */
    ELM_WEB_ZOOM_MODE_AUTO_FIT, /**< Zoom until content fits in web object */
@@ -210,6 +215,21 @@ typedef enum _Elm_Web_Zoom_Mode
  */
 typedef struct _Elm_Web_Window_Features Elm_Web_Window_Features;
 
+
+/**
+ * Definitions of web window features.
+ *
+ */
+typedef enum
+{
+   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
+} Elm_Web_Window_Feature_Flag;
+
 /**
  * Callback type for the create_window hook.
  *
@@ -228,6 +248,8 @@ typedef struct _Elm_Web_Window_Features Elm_Web_Window_Features;
  * Returning @c NULL should cancel the request.
  *
  * @see elm_web_window_create_hook_set()
+ *
+ * @ingroup Web
  */
 typedef Evas_Object *(*Elm_Web_Window_Open)(void *data, Evas_Object *obj, Eina_Bool js, const Elm_Web_Window_Features *window_features);
 
@@ -247,6 +269,8 @@ typedef Evas_Object *(*Elm_Web_Window_Open)(void *data, Evas_Object *obj, Eina_B
  * If the function returns @c NULL the popup will be ignored.
  *
  * @see elm_web_dialog_alert_hook_set()
+ *
+ * @ingroup Web
  */
 typedef Evas_Object *(*Elm_Web_Dialog_Alert)(void *data, Evas_Object *obj, const char *message);
 
@@ -257,7 +281,7 @@ typedef Evas_Object *(*Elm_Web_Dialog_Alert)(void *data, Evas_Object *obj, const
  * @li @p data User data pointer set when setting the hook function
  * @li @p obj The elm_web object requesting the new window
  * @li @p message The message to show in the confirm dialog
- * @li @p ret Pointer where to store the user selection. @c EINA_TRUE if
+ * @li @p ret Pointer to store the user selection. @c EINA_TRUE if
  * the user selected @c Ok, @c EINA_FALSE otherwise.
  *
  * The function should return the object representing the confirm dialog.
@@ -268,6 +292,8 @@ typedef Evas_Object *(*Elm_Web_Dialog_Alert)(void *data, Evas_Object *obj, const
  * If the function returns @c NULL the popup will be ignored.
  *
  * @see elm_web_dialog_confirm_hook_set()
+ *
+ * @ingroup Web
  */
 typedef Evas_Object *(*Elm_Web_Dialog_Confirm)(void *data, Evas_Object *obj, const char *message, Eina_Bool *ret);
 
@@ -279,9 +305,9 @@ typedef Evas_Object *(*Elm_Web_Dialog_Confirm)(void *data, Evas_Object *obj, con
  * @li @p obj The elm_web object requesting the new window
  * @li @p message The message to show in the prompt dialog
  * @li @p def_value The default value to present the user in the entry
- * @li @p value Pointer where to store the value given by the user. Must
- * be a malloc'ed string or @c NULL if the user cancelled the popup.
- * @li @p ret Pointer where to store the user selection. @c EINA_TRUE if
+ * @li @p value Pointer to store the value given by the user. Must
+ * be a malloc'ed string or @c NULL if the user canceled the popup.
+ * @li @p ret Pointer to store the user selection. @c EINA_TRUE if
  * the user selected @c Ok, @c EINA_FALSE otherwise.
  *
  * The function should return the object representing the prompt dialog.
@@ -292,6 +318,8 @@ typedef Evas_Object *(*Elm_Web_Dialog_Confirm)(void *data, Evas_Object *obj, con
  * If the function returns @c NULL the popup will be ignored.
  *
  * @see elm_web_dialog_prompt_hook_set()
+ *
+ * @ingroup Web
  */
 typedef Evas_Object *(*Elm_Web_Dialog_Prompt)(void *data, Evas_Object *obj, const char *message, const char *def_value, char **value, Eina_Bool *ret);
 
@@ -303,10 +331,10 @@ typedef Evas_Object *(*Elm_Web_Dialog_Prompt)(void *data, Evas_Object *obj, cons
  * @li @p obj The elm_web object requesting the new window
  * @li @p allows_multiple @c EINA_TRUE if multiple files can be selected.
  * @li @p accept_types Mime types accepted
- * @li @p selected Pointer where to store the list of malloc'ed strings
+ * @li @p selected Pointer to store the list of malloc'ed strings
  * containing the path to each file selected. Must be @c NULL if the file
- * dialog is cancelled
- * @li @p ret Pointer where to store the user selection. @c EINA_TRUE if
+ * dialog is canceled
+ * @li @p ret Pointer to store the user selection. @c EINA_TRUE if
  * the user selected @c Ok, @c EINA_FALSE otherwise.
  *
  * The function should return the object representing the file selector
@@ -318,6 +346,8 @@ typedef Evas_Object *(*Elm_Web_Dialog_Prompt)(void *data, Evas_Object *obj, cons
  * If the function returns @c NULL the popup will be ignored.
  *
  * @see elm_web_dialog_file selector_hook_set()
+ *
+ * @ingroup Web
  */
 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);
 
@@ -336,6 +366,8 @@ typedef Evas_Object *(*Elm_Web_Dialog_File_Selector)(void *data, Evas_Object *ob
  * @li @p source_id Source id
  *
  * @see elm_web_console_message_hook_set()
+ *
+ * @ingroup Web
  */
 typedef void (*Elm_Web_Console_Message)(void *data, Evas_Object *obj, const char *message, unsigned int line_number, const char *source_id);
 
@@ -347,10 +379,30 @@ typedef void (*Elm_Web_Console_Message)(void *data, Evas_Object *obj, const char
  *
  * @see elm_web_uri_set()
  * @see elm_web_webkit_view_get()
+ *
+ * @ingroup Web
+ */
+EAPI Evas_Object      *elm_web_add(Evas_Object *parent);
+
+/**
+ * Change useragent of a elm_web object
+ *
+ * @param obj The object
+ * @param user_agent String for useragent
+ *
+ * @ingroup Web
  */
-EAPI Evas_Object *
-                       elm_web_add(Evas_Object *parent)
-EINA_ARG_NONNULL(1);
+EAPI void elm_web_useragent_set(Evas_Object *obj, const char *user_agent);
+
+/**
+ * Return current useragent of elm_web object
+ *
+ * @param obj The object
+ * @return Useragent string
+ *
+ * @ingroup Web
+ */
+EAPI const char* elm_web_useragent_get(const Evas_Object *obj);
 
 /**
  * Get internal ewk_view object from web object.
@@ -366,8 +418,10 @@ EINA_ARG_NONNULL(1);
  *         ewebkit)
  *
  * @see elm_web_add()
+ *
+ * @ingroup Web
  */
-EAPI Evas_Object      *elm_web_webkit_view_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+EAPI Evas_Object      *elm_web_webkit_view_get(const Evas_Object *obj);
 
 /**
  * Sets the function to call when a new window is requested
@@ -381,6 +435,8 @@ EAPI Evas_Object      *elm_web_webkit_view_get(const Evas_Object *obj) EINA_ARG_
  * @param obj The web object where to set the hook function
  * @param func The hook function to be called when a window is requested
  * @param data User data
+ *
+ * @ingroup Web
  */
 EAPI void              elm_web_window_create_hook_set(Evas_Object *obj, Elm_Web_Window_Open func, void *data);
 
@@ -396,6 +452,8 @@ EAPI void              elm_web_window_create_hook_set(Evas_Object *obj, Elm_Web_
  * @param data User data
  *
  * @see elm_web_inwin_mode_set()
+ *
+ * @ingroup Web
  */
 EAPI void              elm_web_dialog_alert_hook_set(Evas_Object *obj, Elm_Web_Dialog_Alert func, void *data);
 
@@ -411,6 +469,8 @@ EAPI void              elm_web_dialog_alert_hook_set(Evas_Object *obj, Elm_Web_D
  * @param data User data
  *
  * @see elm_web_inwin_mode_set()
+ *
+ * @ingroup Web
  */
 EAPI void              elm_web_dialog_confirm_hook_set(Evas_Object *obj, Elm_Web_Dialog_Confirm func, void *data);
 
@@ -426,6 +486,8 @@ EAPI void              elm_web_dialog_confirm_hook_set(Evas_Object *obj, Elm_Web
  * @param data User data
  *
  * @see elm_web_inwin_mode_set()
+ *
+ * @ingroup Web
  */
 EAPI void              elm_web_dialog_prompt_hook_set(Evas_Object *obj, Elm_Web_Dialog_Prompt func, void *data);
 
@@ -442,6 +504,8 @@ EAPI void              elm_web_dialog_prompt_hook_set(Evas_Object *obj, Elm_Web_
  * @param data User data
  *
  * @see elm_web_inwin_mode_set()
+ *
+ * @ingroup Web
  */
 EAPI void              elm_web_dialog_file_selector_hook_set(Evas_Object *obj, Elm_Web_Dialog_File_Selector func, void *data);
 
@@ -454,6 +518,8 @@ EAPI void              elm_web_dialog_file_selector_hook_set(Evas_Object *obj, E
  * @param obj The web object where to set the hook function
  * @param func The callback function to be used
  * @param data User data
+ *
+ * @ingroup Web
  */
 EAPI void              elm_web_console_message_hook_set(Evas_Object *obj, Elm_Web_Console_Message func, void *data);
 
@@ -464,6 +530,8 @@ EAPI void              elm_web_console_message_hook_set(Evas_Object *obj, Elm_We
  * @return EINA_TRUE if tab propagation is enabled, EINA_FALSE otherwise
  *
  * @see elm_web_tab_propagate_set()
+ *
+ * @ingroup Web
  */
 EAPI Eina_Bool         elm_web_tab_propagate_get(const Evas_Object *obj);
 
@@ -478,6 +546,8 @@ EAPI Eina_Bool         elm_web_tab_propagate_get(const Evas_Object *obj);
  *
  * @param obj The web object
  * @param propagate Whether to propagate Tab keys to Elementary or not
+ *
+ * @ingroup Web
  */
 EAPI void              elm_web_tab_propagate_set(Evas_Object *obj, Eina_Bool propagate);
 
@@ -489,7 +559,9 @@ EAPI void              elm_web_tab_propagate_set(Evas_Object *obj, Eina_Bool pro
  *
  * @param obj The web object
  * @param uri The URI to set
- * @return EINA_TRUE if the URI could be, EINA_FALSE if an error occurred
+ * @return EINA_TRUE if the URI could be set, EINA_FALSE if an error occurred
+ *
+ * @ingroup Web
  */
 EAPI Eina_Bool         elm_web_uri_set(Evas_Object *obj, const char *uri);
 
@@ -502,6 +574,8 @@ EAPI Eina_Bool         elm_web_uri_set(Evas_Object *obj, const char *uri);
  * @param obj The web object
  * @return A stringshared internal string with the current URI, or NULL on
  * failure
+ *
+ * @ingroup Web
  */
 EAPI const char       *elm_web_uri_get(const Evas_Object *obj);
 
@@ -514,6 +588,8 @@ EAPI const char       *elm_web_uri_get(const Evas_Object *obj);
  * @param obj The web object
  * @return A stringshared internal string with the current title, or NULL on
  * failure
+ *
+ * @ingroup Web
  */
 EAPI const char       *elm_web_title_get(const Evas_Object *obj);
 
@@ -528,6 +604,8 @@ EAPI const char       *elm_web_title_get(const Evas_Object *obj);
  * @param g Green component
  * @param b Blue component
  * @param a Alpha component
+ *
+ * @ingroup Web
  */
 EAPI void              elm_web_bg_color_set(Evas_Object *obj, int r, int g, int b, int a);
 
@@ -542,6 +620,8 @@ EAPI void              elm_web_bg_color_set(Evas_Object *obj, int r, int g, int
  * @param g Green component
  * @param b Blue component
  * @param a Alpha component
+ *
+ * @ingroup Web
  */
 EAPI void              elm_web_bg_color_get(const Evas_Object *obj, int *r, int *g, int *b, int *a);
 
@@ -553,8 +633,10 @@ EAPI void              elm_web_bg_color_get(const Evas_Object *obj, int *r, int
  * @param obj The web object
  * @return A newly allocated string, or NULL if nothing is selected or an
  * error occurred
+ * 
+ * @ingroup Web
  */
-EAPI char             *elm_view_selection_get(const Evas_Object *obj);
+EAPI char             *elm_web_selection_get(const Evas_Object *obj);
 
 /**
  * Tells the web object which index in the currently open popup was selected
@@ -567,6 +649,8 @@ EAPI char             *elm_view_selection_get(const Evas_Object *obj);
  * @param index The index selected
  *
  * @see elm_web_popup_destroy()
+ * 
+ * @ingroup Web
  */
 EAPI void              elm_web_popup_selected_set(Evas_Object *obj, int index);
 
@@ -581,6 +665,8 @@ EAPI void              elm_web_popup_selected_set(Evas_Object *obj, int index);
  * @param obj The web object
  * @return EINA_TRUE if the menu was successfully destroyed, or EINA_FALSE
  * if there was no menu to destroy
+ * 
+ * @ingroup Web
  */
 EAPI Eina_Bool         elm_web_popup_destroy(Evas_Object *obj);
 
@@ -595,6 +681,8 @@ EAPI Eina_Bool         elm_web_popup_destroy(Evas_Object *obj);
  *
  * @return @c EINA_TRUE if the given string was found, @c EINA_FALSE if not
  * or failure
+ * 
+ * @ingroup Web
  */
 EAPI Eina_Bool         elm_web_text_search(const Evas_Object *obj, const char *string, Eina_Bool case_sensitive, Eina_Bool forward, Eina_Bool wrap);
 
@@ -608,6 +696,8 @@ EAPI Eina_Bool         elm_web_text_search(const Evas_Object *obj, const char *s
  * @param limit Maximum amount of matches, or zero to unlimited
  *
  * @return number of matched @a string
+ * 
+ * @ingroup Web
  */
 EAPI unsigned int      elm_web_text_matches_mark(Evas_Object *obj, const char *string, Eina_Bool case_sensitive, Eina_Bool highlight, unsigned int limit);
 
@@ -617,6 +707,8 @@ EAPI unsigned int      elm_web_text_matches_mark(Evas_Object *obj, const char *s
  * @param obj The web object
  *
  * @return EINA_TRUE on success, EINA_FALSE otherwise
+ * 
+ * @ingroup Web
  */
 EAPI Eina_Bool         elm_web_text_matches_unmark_all(Evas_Object *obj);
 
@@ -630,16 +722,20 @@ EAPI Eina_Bool         elm_web_text_matches_unmark_all(Evas_Object *obj);
  * @param highlight Whether to highlight the marks or not
  *
  * @return EINA_TRUE on success, EINA_FALSE otherwise
+ * 
+ * @ingroup Web
  */
 EAPI Eina_Bool         elm_web_text_matches_highlight_set(Evas_Object *obj, Eina_Bool highlight);
 
 /**
  * Gets whether highlighting marks is enabled
  *
- * @param The web object
+ * @param obj The web object
  *
  * @return EINA_TRUE is marks are set to be highlighted, EINA_FALSE
  * otherwise
+ * 
+ * @ingroup Web
  */
 EAPI Eina_Bool         elm_web_text_matches_highlight_get(const Evas_Object *obj);
 
@@ -650,10 +746,12 @@ EAPI Eina_Bool         elm_web_text_matches_highlight_get(const Evas_Object *obj
  * 0.0 and 1.0. This is an estimated progress accounting for all the frames
  * included in the page.
  *
- * @param The web object
+ * @param obj The web object
  *
  * @return A value between 0.0 and 1.0 indicating the progress, or -1.0 on
  * failure
+ * 
+ * @ingroup Web
  */
 EAPI double            elm_web_load_progress_get(const Evas_Object *obj);
 
@@ -667,6 +765,8 @@ EAPI double            elm_web_load_progress_get(const Evas_Object *obj);
  * @param obj The web object
  *
  * @return EINA_TRUE if the cancel was successful, EINA_FALSE otherwise
+ * 
+ * @ingroup Web
  */
 EAPI Eina_Bool         elm_web_stop(Evas_Object *obj);
 
@@ -676,6 +776,8 @@ EAPI Eina_Bool         elm_web_stop(Evas_Object *obj);
  * @param obj The web object
  *
  * @return EINA_TRUE on success, EINA_FALSE otherwise
+ * 
+ * @ingroup Web
  */
 EAPI Eina_Bool         elm_web_reload(Evas_Object *obj);
 
@@ -685,6 +787,8 @@ EAPI Eina_Bool         elm_web_reload(Evas_Object *obj);
  * @param obj The web object
  *
  * @return EINA_TRUE on success, EINA_FALSE otherwise
+ * 
+ * @ingroup Web
  */
 EAPI Eina_Bool         elm_web_reload_full(Evas_Object *obj);
 
@@ -697,10 +801,12 @@ EAPI Eina_Bool         elm_web_reload_full(Evas_Object *obj);
  *
  * @return EINA_TRUE on success, EINA_FALSE otherwise
  *
- * @see elm_web_history_enable_set()
+ * @see elm_web_history_enabled_set()
  * @see elm_web_back_possible()
  * @see elm_web_forward()
  * @see elm_web_navigate()
+ * 
+ * @ingroup Web
  */
 EAPI Eina_Bool         elm_web_back(Evas_Object *obj);
 
@@ -713,10 +819,12 @@ EAPI Eina_Bool         elm_web_back(Evas_Object *obj);
  *
  * @return EINA_TRUE on success, EINA_FALSE otherwise
  *
- * @see elm_web_history_enable_set()
- * @see elm_web_forward_possible()
+ * @see elm_web_history_enabled_set()
+ * @see elm_web_forward_possible_get()
  * @see elm_web_back()
  * @see elm_web_navigate()
+ *
+ * @ingroup Web
  */
 EAPI Eina_Bool         elm_web_forward(Evas_Object *obj);
 
@@ -732,10 +840,11 @@ EAPI Eina_Bool         elm_web_forward(Evas_Object *obj);
  * @return EINA_TRUE on success, EINA_FALSE on error or if not enough
  * history exists to jump the given number of steps
  *
- * @see elm_web_history_enable_set()
- * @see elm_web_navigate_possible()
+ * @see elm_web_history_enabled_set()
  * @see elm_web_back()
  * @see elm_web_forward()
+ *
+ * @ingroup Web
  */
 EAPI Eina_Bool         elm_web_navigate(Evas_Object *obj, int steps);
 
@@ -746,8 +855,10 @@ EAPI Eina_Bool         elm_web_navigate(Evas_Object *obj, int steps);
  *
  * @return EINA_TRUE if it's possible to back in history, EINA_FALSE
  * otherwise
+ *
+ * @ingroup Web
  */
-EAPI Eina_Bool         elm_web_back_possible(Evas_Object *obj);
+EAPI Eina_Bool         elm_web_back_possible_get(Evas_Object *obj);
 
 /**
  * Queries whether it's possible to go forward in history
@@ -756,8 +867,10 @@ EAPI Eina_Bool         elm_web_back_possible(Evas_Object *obj);
  *
  * @return EINA_TRUE if it's possible to forward in history, EINA_FALSE
  * otherwise
+ *
+ * @ingroup Web
  */
-EAPI Eina_Bool         elm_web_forward_possible(Evas_Object *obj);
+EAPI Eina_Bool         elm_web_forward_possible_get(Evas_Object *obj);
 
 /**
  * Queries whether it's possible to jump the given number of steps
@@ -770,8 +883,10 @@ EAPI Eina_Bool         elm_web_forward_possible(Evas_Object *obj);
  *
  * @return EINA_TRUE if enough history exists to perform the given jump,
  * EINA_FALSE otherwise
+ *
+ * @ingroup Web
  */
-EAPI Eina_Bool         elm_web_navigate_possible(Evas_Object *obj, int steps);
+EAPI Eina_Bool         elm_web_navigate_possible_get(Evas_Object *obj, int steps);
 
 /**
  * Gets whether browsing history is enabled for the given object
@@ -779,16 +894,20 @@ EAPI Eina_Bool         elm_web_navigate_possible(Evas_Object *obj, int steps);
  * @param obj The web object
  *
  * @return EINA_TRUE if history is enabled, EINA_FALSE otherwise
+ *
+ * @ingroup Web
  */
-EAPI Eina_Bool         elm_web_history_enable_get(const Evas_Object *obj);
+EAPI Eina_Bool         elm_web_history_enabled_get(const Evas_Object *obj);
 
 /**
  * Enables or disables the browsing history
  *
  * @param obj The web object
- * @param enable Whether to enable or disable the browsing history
+ * @param enabled Whether to enable or disable the browsing history
+ *
+ * @ingroup Web
  */
-EAPI void              elm_web_history_enable_set(Evas_Object *obj, Eina_Bool enable);
+EAPI void              elm_web_history_enabled_set(Evas_Object *obj, Eina_Bool enabled);
 
 /**
  * Sets the zoom level of the web object
@@ -800,6 +919,8 @@ EAPI void              elm_web_history_enable_set(Evas_Object *obj, Eina_Bool en
  *
  * @param obj The web object
  * @param zoom The zoom level to set
+ *
+ * @ingroup Web
  */
 EAPI void              elm_web_zoom_set(Evas_Object *obj, double zoom);
 
@@ -815,6 +936,8 @@ EAPI void              elm_web_zoom_set(Evas_Object *obj, double zoom);
  * @param obj The web object
  *
  * @return The zoom level set on the object
+ *
+ * @ingroup Web
  */
 EAPI double            elm_web_zoom_get(const Evas_Object *obj);
 
@@ -834,6 +957,8 @@ EAPI double            elm_web_zoom_get(const Evas_Object *obj);
  *
  * @param obj The web object
  * @param mode The mode to set
+ *
+ * @ingroup Web
  */
 EAPI void              elm_web_zoom_mode_set(Evas_Object *obj, Elm_Web_Zoom_Mode mode);
 
@@ -844,6 +969,8 @@ EAPI void              elm_web_zoom_mode_set(Evas_Object *obj, Elm_Web_Zoom_Mode
  *
  * @return The current zoom mode set for the object, or
  * ::ELM_WEB_ZOOM_MODE_LAST on error
+ *
+ * @ingroup Web
  */
 EAPI Elm_Web_Zoom_Mode elm_web_zoom_mode_get(const Evas_Object *obj);
 
@@ -855,6 +982,8 @@ EAPI Elm_Web_Zoom_Mode elm_web_zoom_mode_get(const Evas_Object *obj);
  * @param y The y coordinate of the region to show
  * @param w The width of the region to show
  * @param h The height of the region to show
+ *
+ * @ingroup Web
  */
 EAPI void              elm_web_region_show(Evas_Object *obj, int x, int y, int w, int h);
 
@@ -869,6 +998,8 @@ EAPI void              elm_web_region_show(Evas_Object *obj, int x, int y, int w
  * @param y The y coordinate of the region to show
  * @param w The width of the region to show
  * @param h The height of the region to show
+ *
+ * @ingroup Web
  */
 EAPI void              elm_web_region_bring_in(Evas_Object *obj, int x, int y, int w, int h);
 
@@ -881,6 +1012,8 @@ EAPI void              elm_web_region_bring_in(Evas_Object *obj, int x, int y, i
  *
  * @param obj The web object
  * @param value EINA_TRUE to use Inwin, EINA_FALSE to use a normal window
+ *
+ * @ingroup Web
  */
 EAPI void              elm_web_inwin_mode_set(Evas_Object *obj, Eina_Bool value);
 
@@ -890,13 +1023,37 @@ EAPI void              elm_web_inwin_mode_set(Evas_Object *obj, Eina_Bool value)
  * @param obj The web object
  *
  * @return EINA_TRUE if Inwin mode is set, EINA_FALSE otherwise
+ *
+ * @ingroup Web
  */
 EAPI Eina_Bool         elm_web_inwin_mode_get(const Evas_Object *obj);
 
 EAPI void              elm_web_window_features_ref(Elm_Web_Window_Features *wf);
 EAPI void              elm_web_window_features_unref(Elm_Web_Window_Features *wf);
-EAPI void              elm_web_window_features_bool_property_get(const Elm_Web_Window_Features *wf, Eina_Bool *toolbar_visible, Eina_Bool *statusbar_visible, Eina_Bool *scrollbars_visible, Eina_Bool *menubar_visible, Eina_Bool *locationbar_visble, Eina_Bool *fullscreen);
-EAPI void              elm_web_window_features_int_property_get(const Elm_Web_Window_Features *wf, int *x, int *y, int *w, int *h);
+
+/**
+ * Gets boolean properties from Elm_Web_Window_Features
+ * (such as statusbar, menubar, etc) that are on a window.
+ *
+ * @param wf The web window features object
+ * @param flag The web window feature flag whose value is required.
+ *
+ * @return EINA_TRUE if the flag is set, EINA_FALSE otherwise
+ *
+ * @ingroup Web
+ */
+EAPI Eina_Bool              elm_web_window_features_property_get(const Elm_Web_Window_Features *wf, Elm_Web_Window_Feature_Flag flag);
+
+/**
+ *
+ * TODO : Add documentation.
+ *
+ * @param wf The web window features object
+ * @param x, y, w, h - the co-ordinates of the web view window.
+ *
+ * @ingroup Web
+ */
+EAPI 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);
 
 /**
  * @}