1dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block/* 2dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Copyright (C) 2009-2010 ProFUSION embedded systems 3dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Copyright (C) 2009-2010 Samsung Electronics 4dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 5dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block This library is free software; you can redistribute it and/or 6dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block modify it under the terms of the GNU Library General Public 7dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block License as published by the Free Software Foundation; either 8dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block version 2 of the License, or (at your option) any later version. 9dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 10dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block This library is distributed in the hope that it will be useful, 11dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block but WITHOUT ANY WARRANTY; without even the implied warranty of 12dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Library General Public License for more details. 14dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 15dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block You should have received a copy of the GNU Library General Public License 16dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block along with this library; see the file COPYING.LIB. If not, write to 17dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 18dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Boston, MA 02110-1301, USA. 19dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block*/ 20dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 21dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block#ifndef ewk_view_h 22dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block#define ewk_view_h 23dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 24f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick#include "ewk_frame.h" 2506ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen#include "ewk_history.h" 2606ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen#include "ewk_window_features.h" 2706ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen 28dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block#include <Evas.h> 29dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block#include <cairo.h> 30dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 31dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block#ifdef __cplusplus 32dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Blockextern "C" { 33dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block#endif 34dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 35dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block/** 36dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * @brief WebKit main smart object. 37dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * 38dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * This object is the high level access to WebKit-EFL browser 39dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * component. It is responsible for managing the main frame and other 40dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * critical resources. 41dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * 42dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * Every ewk_view has at least one frame, called "main frame" and 43dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * retrieved with ewk_view_frame_main_get(). Direct frame access is 44dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * often discouraged, it is recommended to use ewk_view functions 45dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * instead. 46dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * 47dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * The following signals (see evas_object_smart_callback_add()) are emitted: 48dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * 49dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "ready", void: page is fully loaded. 50dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "title,changed", const char*: title of the main frame changed. 51dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "uri,changed", const char*: uri of the main frame changed. 52dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "load,started", void: frame started loading. 53dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "load,progress", double*: load progress changed (overall value 54dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * from 0.0 to 1.0, connect to individual frames for fine grained). 55dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "load,finished", const Ewk_Frame_Load_Error*: reports load 56dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * finished and as argument @c NULL if successfully or pointer to 57dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * structure defining the error. 58dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "load,provisional", void: view started provisional load. 59dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "load,error", const Ewk_Frame_Load_Error*: reports load failed 60dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * and as argument a pointer to structure defining the error. 61dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "frame,created", Evas_Object*: when frames are created, they are 62dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * emitted in this signal. 63dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "zoom,animated,end", void: requested animated zoom is finished. 64dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "menubar,visible,set", Eina_Bool: set menubar visibility. 65dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "menubar,visible,get", Eina_Bool *: expects a @c EINA_TRUE if menubar is 66dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * visible; otherwise, @c EINA_FALSE. 67dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "menubar,visible,set", Eina_Bool: set menubar visibility. 68dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "menubar,visible,get", Eina_Bool *: expects a @c EINA_TRUE if menubar is 69dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * visible; @c EINA_FALSE, otherwise. 70dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "scrollbars,visible,set", Eina_Bool: set scrollbars visibility. 71dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "scrollbars,visible,get", Eina_Bool *: expects a @c EINA_TRUE if scrollbars 72dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * are visible; @c EINA_FALSE, otherwise. 73dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "statusbar,visible,set", Eina_Bool: set statusbar visibility. 74dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "statusbar,visible,get", Eina_Bool *: expects a @c EINA_TRUE if statusbar is 75dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * visible; @c EINA_FALSE, otherwise. 76dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "toolbar,visible,set", Eina_Bool: set toolbar visibility. 77dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "toolbar,visible,get", Eina_Bool *: expects a @c EINA_TRUE if toolbar 78dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * is visible; @c EINA_FALSE, otherwise. 79dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "link,hover,in", const char *link[2]: reports mouse is over a link and as 80dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * argument gives the url in link[0] and link's title in link[1]. 81dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "link,hover,out", const char *link[2]: reports mouse moved out from a link 82dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * and as argument gives the url in link[0] and link's title in link[1]. 83dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "popup,create", Ewk_Menu: reports that a new menu was created. 84dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "popup,willdeleted", Ewk_Menu: reports that a previously created menu is 85dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * about to be deleted. 86dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "download,request", Ewk_Download: reports a download is being requested 87dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * and as arguments gives its details. 88dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * - "icon,received", void: main frame received an icon. 89e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke * - "viewport,changed", void: Report that viewport has changed. 900617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen * - "inputmethods,changed" with a boolean indicating whether it's enabled or not. 915ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen * - "view,resized", void: view object's size has changed. 92dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block */ 93dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 94dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Blocktypedef struct _Ewk_View_Smart_Data Ewk_View_Smart_Data; 95dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 96dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block/** 97dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * Ewk view's class, to be overridden by sub-classes. 98dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block */ 99dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Blocktypedef struct _Ewk_View_Smart_Class Ewk_View_Smart_Class; 100dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Blockstruct _Ewk_View_Smart_Class { 101dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Evas_Smart_Class sc; /**< all but 'data' is free to be changed. */ 102dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block unsigned long version; 103dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 10406ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen Evas_Object *(*window_create)(Ewk_View_Smart_Data *sd, Eina_Bool javascript, const Ewk_Window_Features *window_features); /**< creates a new window, requested by webkit */ 1050617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen void (*window_close)(Ewk_View_Smart_Data *sd); /**< creates a new window, requested by webkit */ 106dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block // hooks to allow different backing stores 107dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Evas_Object *(*backing_store_add)(Ewk_View_Smart_Data *sd); /**< must be defined */ 108dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool (*scrolls_process)(Ewk_View_Smart_Data *sd); /**< must be defined */ 109dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool (*repaints_process)(Ewk_View_Smart_Data *sd); /**< must be defined */ 110dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool (*contents_resize)(Ewk_View_Smart_Data *sd, int w, int h); 111dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool (*zoom_set)(Ewk_View_Smart_Data *sd, float zoom, Evas_Coord cx, Evas_Coord cy); 112dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool (*zoom_weak_set)(Ewk_View_Smart_Data *sd, float zoom, Evas_Coord cx, Evas_Coord cy); 113dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block void (*zoom_weak_smooth_scale_set)(Ewk_View_Smart_Data *sd, Eina_Bool smooth_scale); 114dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block void (*bg_color_set)(Ewk_View_Smart_Data *sd, unsigned char r, unsigned char g, unsigned char b, unsigned char a); 115dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block void (*flush)(Ewk_View_Smart_Data *sd); 116dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool (*pre_render_region)(Ewk_View_Smart_Data *sd, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h, float zoom); 1174576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) Wang Eina_Bool (*pre_render_relative_radius)(Ewk_View_Smart_Data *sd, unsigned int n, float zoom); 118dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block void (*pre_render_cancel)(Ewk_View_Smart_Data *sd); 1194576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) Wang Eina_Bool (*disable_render)(Ewk_View_Smart_Data *sd); 1204576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) Wang Eina_Bool (*enable_render)(Ewk_View_Smart_Data *sd); 1214576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) Wang 122dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block // event handling: 123dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block // - returns true if handled 124dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block // - if overridden, have to call parent method if desired 125dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool (*focus_in)(Ewk_View_Smart_Data *sd); 126dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool (*focus_out)(Ewk_View_Smart_Data *sd); 127dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool (*mouse_wheel)(Ewk_View_Smart_Data *sd, const Evas_Event_Mouse_Wheel *ev); 128dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool (*mouse_down)(Ewk_View_Smart_Data *sd, const Evas_Event_Mouse_Down *ev); 129dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool (*mouse_up)(Ewk_View_Smart_Data *sd, const Evas_Event_Mouse_Up *ev); 130dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool (*mouse_move)(Ewk_View_Smart_Data *sd, const Evas_Event_Mouse_Move *ev); 131dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool (*key_down)(Ewk_View_Smart_Data *sd, const Evas_Event_Key_Down *ev); 132dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool (*key_up)(Ewk_View_Smart_Data *sd, const Evas_Event_Key_Up *ev); 133dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 134dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block void (*add_console_message)(Ewk_View_Smart_Data *sd, const char *message, unsigned int lineNumber, const char *sourceID); 135dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block void (*run_javascript_alert)(Ewk_View_Smart_Data *sd, Evas_Object *frame, const char *message); 136dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool (*run_javascript_confirm)(Ewk_View_Smart_Data *sd, Evas_Object *frame, const char *message); 137dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool (*run_javascript_prompt)(Ewk_View_Smart_Data *sd, Evas_Object *frame, const char *message, const char *defaultValue, char **value); 138dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool (*should_interrupt_javascript)(Ewk_View_Smart_Data *sd); 1395af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke uint64_t (*exceeded_database_quota)(Ewk_View_Smart_Data *sd, Evas_Object *frame, const char *databaseName, uint64_t current_size, uint64_t expected_size); 140dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 141dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool (*run_open_panel)(Ewk_View_Smart_Data *sd, Evas_Object *frame, Eina_Bool allows_multiple_files, const Eina_List *suggested_filenames, Eina_List **selected_filenames); 142f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick 143f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick Eina_Bool (*navigation_policy_decision)(Ewk_View_Smart_Data *sd, Ewk_Frame_Resource_Request *request); 144dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block}; 145dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 146dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block#define EWK_VIEW_SMART_CLASS_VERSION 1UL /** the version you have to put into the version field in the Ewk_View_Smart_Class structure */ 147dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 148dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block/** 149dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * Initializer for whole Ewk_View_Smart_Class structure. 150dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * 151dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * @param smart_class_init initializer to use for the "base" field 152dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * (Evas_Smart_Class). 153dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * 154dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * @see EWK_VIEW_SMART_CLASS_INIT_NULL 155dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * @see EWK_VIEW_SMART_CLASS_INIT_VERSION 156dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * @see EWK_VIEW_SMART_CLASS_INIT_NAME_VERSION 157dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block */ 158cad810f21b803229eb11403f9209855525a25d57Steve Block#define EWK_VIEW_SMART_CLASS_INIT(smart_class_init) {smart_class_init, EWK_VIEW_SMART_CLASS_VERSION, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} 159dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 160dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block/** 161dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * Initializer to zero a whole Ewk_View_Smart_Class structure. 162dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * 163dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * @see EWK_VIEW_SMART_CLASS_INIT_VERSION 164dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * @see EWK_VIEW_SMART_CLASS_INIT_NAME_VERSION 165dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * @see EWK_VIEW_SMART_CLASS_INIT 166dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block */ 167dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block#define EWK_VIEW_SMART_CLASS_INIT_NULL EWK_VIEW_SMART_CLASS_INIT(EVAS_SMART_CLASS_INIT_NULL) 168dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 169dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block/** 170dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * Initializer to zero a whole Ewk_View_Smart_Class structure and set version. 171dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * 172dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * Similar to EWK_VIEW_SMART_CLASS_INIT_NULL, but will set version field of 173dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * Evas_Smart_Class (base field) to latest EVAS_SMART_CLASS_VERSION 174dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * 175dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * @see EWK_VIEW_SMART_CLASS_INIT_NULL 176dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * @see EWK_VIEW_SMART_CLASS_INIT_NAME_VERSION 177dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * @see EWK_VIEW_SMART_CLASS_INIT 178dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block */ 179dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block#define EWK_VIEW_SMART_CLASS_INIT_VERSION EWK_VIEW_SMART_CLASS_INIT(EVAS_SMART_CLASS_INIT_VERSION) 180dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 181dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block/** 182dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * Initializer to zero a whole Ewk_View_Smart_Class structure and set 183dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * name and version. 184dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * 185dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * Similar to EWK_VIEW_SMART_CLASS_INIT_NULL, but will set version field of 186dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * Evas_Smart_Class (base field) to latest EVAS_SMART_CLASS_VERSION and name 187dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * to the specific value. 188dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * 189dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * It will keep a reference to name field as a "const char *", that is, 190dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * name must be available while the structure is used (hint: static or global!) 191dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * and will not be modified. 192dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * 193dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * @see EWK_VIEW_SMART_CLASS_INIT_NULL 194dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * @see EWK_VIEW_SMART_CLASS_INIT_VERSION 195dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * @see EWK_VIEW_SMART_CLASS_INIT 196dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block */ 197dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block#define EWK_VIEW_SMART_CLASS_INIT_NAME_VERSION(name) EWK_VIEW_SMART_CLASS_INIT(EVAS_SMART_CLASS_INIT_NAME_VERSION(name)) 198dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 1990617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsenenum _Ewk_Imh { 2000617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen EWK_IMH_TELEPHONE = (1 << 0), 2010617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen EWK_IMH_NUMBER = (1 << 1), 2020617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen EWK_IMH_EMAIL = (1 << 2), 2030617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen EWK_IMH_URL = (1 << 3), 2040617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen EWK_IMH_PASSWORD = (1 << 4) 2050617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen}; 2060617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsentypedef enum _Ewk_Imh Ewk_Imh; 2070617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen 208dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block/** 209dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * @internal 210dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * 211dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * private data that is used internally by EFL WebKit and should never 212dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * be modified from outside. 213dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block */ 214dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Blocktypedef struct _Ewk_View_Private_Data Ewk_View_Private_Data; 215dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 216dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Blockenum _Ewk_Menu_Item_Type { 217dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block EWK_MENU_SEPARATOR, 218dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block EWK_MENU_GROUP, 219dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block EWK_MENU_OPTION 220dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block}; 221dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Blocktypedef enum _Ewk_Menu_Item_Type Ewk_Menu_Item_Type; 222dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 223dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 224dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block/** 225dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * Structure do contain data of each menu item 226dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block */ 227dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Blocktypedef struct _Ewk_Menu_Item Ewk_Menu_Item; 228dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Blockstruct _Ewk_Menu_Item { 229dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block const char *text; /**< Item's text */ 230dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Ewk_Menu_Item_Type type; /** Item's type */ 231dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block}; 232dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 233dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block/** 234dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * Structure to contain Popup menu data. 235dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block */ 236dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Blocktypedef struct _Ewk_Menu Ewk_Menu; 237dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Blockstruct _Ewk_Menu { 238dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_List* items; 239dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block int x; 240dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block int y; 241dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block int width; 242dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block int height; 243dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block}; 244dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 245dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block/** 246dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * Structure to contain Download data 247dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block */ 248dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Blocktypedef struct _Ewk_Download Ewk_Download; 249dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Blockstruct _Ewk_Download { 250dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block const char* url; 251dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block /* to be extended */ 252dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block}; 253dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 254dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block/** 255dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * Scroll request that should be processed by subclass implementations. 256dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block */ 257dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Blocktypedef struct _Ewk_Scroll_Request Ewk_Scroll_Request; 258dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Blockstruct _Ewk_Scroll_Request { 259dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Evas_Coord dx, dy; 260dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Evas_Coord x, y, w, h, x2, y2; 261dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool main_scroll; 262dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block}; 263dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 264dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block/** 265dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * Structure to contain internal View data, it is to be considered 266dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * private by users, but may be extended or changed by sub-classes 267dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * (that's why it's in public header file). 268dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block */ 269dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Blockstruct _Ewk_View_Smart_Data { 270dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Evas_Object_Smart_Clipped_Data base; 271dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block const Ewk_View_Smart_Class *api; /**< reference to casted class instance */ 272dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Evas_Object *self; /**< reference to owner object */ 273dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Evas_Object *main_frame; /**< reference to main frame object */ 274dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Evas_Object *backing_store; /**< reference to backing store */ 2754576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) Wang Evas_Object *events_rect; /**< rectangle that should receive mouse events */ 276dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Ewk_View_Private_Data *_priv; /**< should never be accessed, c++ stuff */ 277dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block struct { 278dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Evas_Coord x, y, w, h; /**< last used viewport */ 279dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block } view; 280dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block struct { 281dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block struct { 282dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block float start; 283dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block float end; 284dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block float current; /**< if > 0.0, then doing animated zoom. */ 285dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block } zoom; 286dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block } animated_zoom; 287dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block struct { 288dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block unsigned char r, g, b, a; 289dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block } bg_color; 290dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool zoom_weak_smooth_scale:1; 291dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block struct { /**< what changed since last smart_calculate */ 292dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool any:1; 293dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool size:1; 294dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool position:1; 295dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block Eina_Bool frame_rect:1; 296dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block } changed; 297dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block}; 298dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 2994576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) Wang/** 3004576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) Wang * Cache (pool) that contains unused tiles for ewk_view_tiled. 3014576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) Wang * 3024576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) Wang * This cache will maintain unused tiles and flush them when the total 3034576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) Wang * memory exceeds the set amount when 3044576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) Wang * ewk_tile_unused_cache_auto_flush() or explicitly set value when 3054576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) Wang * ewk_tile_unused_cache_flush() is called. 3064576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) Wang * 3074576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) Wang * The tile may be shared among different ewk_view_tiled instances to 3084576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) Wang * group maximum unused memory resident in the system. 3094576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) Wang */ 3104576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) Wangtypedef struct _Ewk_Tile_Unused_Cache Ewk_Tile_Unused_Cache; 3114576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) WangEAPI void ewk_tile_unused_cache_max_set(Ewk_Tile_Unused_Cache *tuc, size_t max); 3124576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) WangEAPI size_t ewk_tile_unused_cache_max_get(const Ewk_Tile_Unused_Cache *tuc); 3134576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) WangEAPI size_t ewk_tile_unused_cache_used_get(const Ewk_Tile_Unused_Cache *tuc); 3144576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) WangEAPI size_t ewk_tile_unused_cache_flush(Ewk_Tile_Unused_Cache *tuc, size_t bytes); 3154576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) WangEAPI void ewk_tile_unused_cache_auto_flush(Ewk_Tile_Unused_Cache *tuc); 3164576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) Wang 317dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_base_smart_set(Ewk_View_Smart_Class *api); 318dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_single_smart_set(Ewk_View_Smart_Class *api); 3194576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) WangEAPI Eina_Bool ewk_view_tiled_smart_set(Ewk_View_Smart_Class *api); 320dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 321dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Evas_Object *ewk_view_single_add(Evas *e); 3224576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) WangEAPI Evas_Object *ewk_view_tiled_add(Evas *e); 3234576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) Wang 3244576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) WangEAPI Ewk_Tile_Unused_Cache *ewk_view_tiled_unused_cache_get(const Evas_Object *o); 3254576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) WangEAPI void ewk_view_tiled_unused_cache_set(Evas_Object *o, Ewk_Tile_Unused_Cache *cache); 3264576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) Wang 3274576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) Wang// FIXME: this function should be removed later, when we find the best flag to use. 3284576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) WangEAPI void ewk_view_tiled_process_entire_queue_set(Evas_Object *o, Eina_Bool flag); 329dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 330dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI void ewk_view_fixed_layout_size_set(Evas_Object *o, Evas_Coord w, Evas_Coord h); 331dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI void ewk_view_fixed_layout_size_get(Evas_Object *o, Evas_Coord *w, Evas_Coord *h); 332dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 333dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI void ewk_view_theme_set(Evas_Object *o, const char *path); 334dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI const char *ewk_view_theme_get(Evas_Object *o); 335dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 336dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Evas_Object *ewk_view_frame_main_get(const Evas_Object *o); 337dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Evas_Object *ewk_view_frame_focused_get(const Evas_Object *o); 338dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 339dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_uri_set(Evas_Object *o, const char *uri); 340dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI const char *ewk_view_uri_get(const Evas_Object *o); 341dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI const char *ewk_view_title_get(const Evas_Object *o); 342dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 343dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_editable_get(const Evas_Object *o); 344dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_editable_set(Evas_Object *o, Eina_Bool editable); 345dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 346dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI void ewk_view_bg_color_set(Evas_Object *o, int r, int g, int b, int a); 347dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI void ewk_view_bg_color_get(const Evas_Object *o, int *r, int *g, int *b, int *a); 348dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 349dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI char *ewk_view_selection_get(const Evas_Object *o); 350dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_select_none(Evas_Object *o); 351dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_select_all(Evas_Object *o); 352dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_select_paragraph(Evas_Object *o); 353dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_select_sentence(Evas_Object *o); 354dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_select_line(Evas_Object *o); 355dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_select_word(Evas_Object *o); 356dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 3575af96e2c7b73ebc627c6894727826a7576d31758Leon ClarkeEAPI Eina_Bool ewk_view_context_menu_forward_event(Evas_Object *o, const Evas_Event_Mouse_Down *ev); 3585af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke 359dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI void ewk_view_popup_selected_set(Evas_Object *o, int index); 360dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_popup_destroy(Evas_Object *o); 361dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 362dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_text_search(const Evas_Object *o, const char *string, Eina_Bool case_sensitive, Eina_Bool forward, Eina_Bool wrap); 363dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 364dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI unsigned int ewk_view_text_matches_mark(Evas_Object *o, const char *string, Eina_Bool case_sensitive, Eina_Bool highlight, unsigned int limit); 365dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_text_matches_unmark_all(Evas_Object *o); 366dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_text_matches_highlight_set(Evas_Object *o, Eina_Bool highlight); 367dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_text_matches_highlight_get(const Evas_Object *o); 368dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 369dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI double ewk_view_load_progress_get(const Evas_Object *o); 370dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 371dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_stop(Evas_Object *o); 372dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_reload(Evas_Object *o); 373dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_reload_full(Evas_Object *o); 374dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 375dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_back(Evas_Object *o); 376dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_forward(Evas_Object *o); 377dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_navigate(Evas_Object *o, int steps); 378dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 379dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_back_possible(Evas_Object *o); 380dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_forward_possible(Evas_Object *o); 381dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_navigate_possible(Evas_Object *o, int steps); 382dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 383dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_history_enable_get(const Evas_Object *o); 384dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_history_enable_set(Evas_Object *o, Eina_Bool enable); 385dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Ewk_History *ewk_view_history_get(const Evas_Object *o); 386dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 387dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI float ewk_view_zoom_get(const Evas_Object *o); 388dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_zoom_set(Evas_Object *o, float zoom, Evas_Coord cx, Evas_Coord cy); 389dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 390dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_zoom_weak_smooth_scale_get(const Evas_Object *o); 391dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI void ewk_view_zoom_weak_smooth_scale_set(Evas_Object *o, Eina_Bool smooth_scale); 392dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 393dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_zoom_weak_set(Evas_Object *o, float zoom, Evas_Coord cx, Evas_Coord cy); 394dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_zoom_animated_mark_start(Evas_Object *o, float zoom); 395dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_zoom_animated_mark_end(Evas_Object *o, float zoom); 396dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_zoom_animated_mark_current(Evas_Object *o, float zoom); 397dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_zoom_animated_mark_stop(Evas_Object *o); 398dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 399dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_zoom_animated_set(Evas_Object *o, float zoom, float duration, Evas_Coord cx, Evas_Coord cy); 400dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_zoom_text_only_get(const Evas_Object *o); 401dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_zoom_text_only_set(Evas_Object *o, Eina_Bool setting); 402dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 403dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_pre_render_region(Evas_Object *o, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h, float zoom); 4044576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) WangEAPI Eina_Bool ewk_view_pre_render_relative_radius(Evas_Object *o, unsigned int n); 405dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI void ewk_view_pre_render_cancel(Evas_Object *o); 4064576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) WangEAPI Eina_Bool ewk_view_enable_render(const Evas_Object *o); 4074576aa36e9a9671459299c7963ac95aa94beaea9Shimeng (Simon) WangEAPI Eina_Bool ewk_view_disable_render(const Evas_Object *o); 408dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 4090617145a89917ae7735fe1c9538688ab9a577df5Kristian MonsenEAPI unsigned int ewk_view_imh_get(Evas_Object *o); 4100617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen 411dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block/* settings */ 412dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI const char *ewk_view_setting_user_agent_get(const Evas_Object *o); 413dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_user_agent_set(Evas_Object *o, const char *user_agent); 414dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 415dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_auto_load_images_get(const Evas_Object *o); 416dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_auto_load_images_set(Evas_Object *o, Eina_Bool automatic); 417dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 418dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_auto_shrink_images_get(const Evas_Object *o); 419dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_auto_shrink_images_set(Evas_Object *o, Eina_Bool automatic); 420dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 421a94275402997c11dd2e778633dacf4b7e630a35dBen MurdochEAPI Eina_Bool ewk_view_setting_enable_auto_resize_window_get(const Evas_Object *o); 422a94275402997c11dd2e778633dacf4b7e630a35dBen MurdochEAPI Eina_Bool ewk_view_setting_enable_auto_resize_window_set(Evas_Object *o, Eina_Bool resizable); 423dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_enable_scripts_get(const Evas_Object *o); 424dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_enable_scripts_set(Evas_Object *o, Eina_Bool enable); 425dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 426dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_enable_plugins_get(const Evas_Object *o); 427dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_enable_plugins_set(Evas_Object *o, Eina_Bool enable); 428dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 429e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockEAPI Eina_Bool ewk_view_setting_enable_frame_flattening_get(const Evas_Object* o); 430e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockEAPI Eina_Bool ewk_view_setting_enable_frame_flattening_set(Evas_Object* o, Eina_Bool enable); 431e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 432dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_scripts_window_open_get(const Evas_Object *o); 433dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_scripts_window_open_set(Evas_Object *o, Eina_Bool allow); 434dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 435dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_resizable_textareas_get(const Evas_Object *o); 436dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_resizable_textareas_set(Evas_Object *o, Eina_Bool enable); 437dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 438dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI const char *ewk_view_setting_user_stylesheet_get(const Evas_Object *o); 439dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_user_stylesheet_set(Evas_Object *o, const char *uri); 440dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 441dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_private_browsing_get(const Evas_Object *o); 442dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_private_browsing_set(Evas_Object *o, Eina_Bool enable); 4435ddde30071f639962dd557c453f2ad01f8f0fd00Kristian MonsenEAPI Eina_Bool ewk_view_setting_offline_app_cache_get(const Evas_Object *o); 4445ddde30071f639962dd557c453f2ad01f8f0fd00Kristian MonsenEAPI Eina_Bool ewk_view_setting_offline_app_cache_set(Evas_Object *o, Eina_Bool enable); 445dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 446dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_caret_browsing_get(const Evas_Object *o); 447dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_caret_browsing_set(Evas_Object *o, Eina_Bool enable); 448dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 449dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI const char *ewk_view_setting_encoding_custom_get(const Evas_Object *o); 450dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_encoding_custom_set(Evas_Object *o, const char *encoding); 451dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI const char *ewk_view_setting_encoding_default_get(const Evas_Object *o); 452dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_encoding_default_set(Evas_Object *o, const char *encoding); 453dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 454dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI int ewk_view_setting_font_minimum_size_get(const Evas_Object *o); 455dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_font_minimum_size_set(Evas_Object *o, int size); 456dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI int ewk_view_setting_font_minimum_logical_size_get(const Evas_Object *o); 457dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_font_minimum_logical_size_set(Evas_Object *o, int size); 458dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI int ewk_view_setting_font_default_size_get(const Evas_Object *o); 459dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_font_default_size_set(Evas_Object *o, int size); 460dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI int ewk_view_setting_font_monospace_size_get(const Evas_Object *o); 461dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_font_monospace_size_set(Evas_Object *o, int size); 462dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 463dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI const char *ewk_view_setting_font_standard_get(const Evas_Object *o); 464dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_font_standard_set(Evas_Object *o, const char *family); 465dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 466dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI const char *ewk_view_setting_font_cursive_get(const Evas_Object *o); 467dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_font_cursive_set(Evas_Object *o, const char *family); 468dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 469dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI const char *ewk_view_setting_font_monospace_get(const Evas_Object *o); 470dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_font_monospace_set(Evas_Object *o, const char *family); 471dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 472dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI const char *ewk_view_setting_font_fantasy_get(const Evas_Object *o); 473dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_font_fantasy_set(Evas_Object *o, const char *family); 474dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 475dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI const char *ewk_view_setting_font_serif_get(const Evas_Object *o); 476dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_font_serif_set(Evas_Object *o, const char *family); 477dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 478dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI const char *ewk_view_setting_font_sans_serif_get(const Evas_Object *o); 479dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_setting_font_sans_serif_set(Evas_Object *o, const char *family); 480dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 481f486d19d62f1bc33246748b14b14a9dfa617b57fIain MerrickEAPI Eina_Bool ewk_view_setting_spatial_navigation_get(Evas_Object* o); 482f486d19d62f1bc33246748b14b14a9dfa617b57fIain MerrickEAPI Eina_Bool ewk_view_setting_spatial_navigation_set(Evas_Object* o, Eina_Bool enable); 483f486d19d62f1bc33246748b14b14a9dfa617b57fIain Merrick 4845ddde30071f639962dd557c453f2ad01f8f0fd00Kristian MonsenEAPI Eina_Bool ewk_view_setting_local_storage_get(Evas_Object* o); 4855ddde30071f639962dd557c453f2ad01f8f0fd00Kristian MonsenEAPI Eina_Bool ewk_view_setting_local_storage_set(Evas_Object* o, Eina_Bool enable); 486bec39347bb3bb5bf1187ccaf471d26247f28b585Kristian MonsenEAPI const char *ewk_view_setting_local_storage_database_path_get(const Evas_Object *o); 487bec39347bb3bb5bf1187ccaf471d26247f28b585Kristian MonsenEAPI Eina_Bool ewk_view_setting_local_storage_database_path_set(Evas_Object *o, const char *path); 4885ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen 48968513a70bcd92384395513322f1b801e7bf9c729Steve BlockEAPI Eina_Bool ewk_view_setting_page_cache_get(Evas_Object* o); 49068513a70bcd92384395513322f1b801e7bf9c729Steve BlockEAPI Eina_Bool ewk_view_setting_page_cache_set(Evas_Object* o, Eina_Bool enable); 49168513a70bcd92384395513322f1b801e7bf9c729Steve Block 492a94275402997c11dd2e778633dacf4b7e630a35dBen MurdochEAPI Eina_Bool ewk_view_setting_encoding_detector_get(Evas_Object* o); 493a94275402997c11dd2e778633dacf4b7e630a35dBen MurdochEAPI Eina_Bool ewk_view_setting_encoding_detector_set(Evas_Object* o, Eina_Bool enable); 494a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch 495dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block/* to be used by subclass implementations */ 496dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Ewk_View_Smart_Data *ewk_view_smart_data_get(const Evas_Object *o); 497dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 498dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI const Eina_Rectangle *ewk_view_repaints_get(const Ewk_View_Private_Data *priv, size_t *count); 499dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI const Ewk_Scroll_Request *ewk_view_scroll_requests_get(const Ewk_View_Private_Data *priv, size_t *count); 500dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 501dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI void ewk_view_repaint_add(Ewk_View_Private_Data *priv, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h); 502dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 503dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI void ewk_view_layout_if_needed_recursive(Ewk_View_Private_Data *priv); 504dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 505dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI void ewk_view_scrolls_process(Ewk_View_Smart_Data *sd); 506dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 507dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block/** 508dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * Structure that keeps paint context. 509dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * 510dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * @note this is not for general use but just for subclasses that want 511dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block * to define their own backing store. 512dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block */ 513dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Blocktypedef struct _Ewk_View_Paint_Context Ewk_View_Paint_Context; 514dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 515dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Ewk_View_Paint_Context *ewk_view_paint_context_new(Ewk_View_Private_Data *priv, cairo_t *cr); 516dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI void ewk_view_paint_context_free(Ewk_View_Paint_Context *ctxt); 517dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 518dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI void ewk_view_paint_context_save(Ewk_View_Paint_Context *ctxt); 519dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI void ewk_view_paint_context_restore(Ewk_View_Paint_Context *ctxt); 520dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI void ewk_view_paint_context_clip(Ewk_View_Paint_Context *ctxt, const Eina_Rectangle *area); 521dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI void ewk_view_paint_context_paint(Ewk_View_Paint_Context *ctxt, const Eina_Rectangle *area); 522dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI void ewk_view_paint_context_paint_contents(Ewk_View_Paint_Context *ctxt, const Eina_Rectangle *area); 523dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI void ewk_view_paint_context_scale(Ewk_View_Paint_Context *ctxt, float scale_x, float scale_y); 524dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI void ewk_view_paint_context_translate(Ewk_View_Paint_Context *ctxt, float x, float y); 525dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 526dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_paint(Ewk_View_Private_Data *priv, cairo_t *cr, const Eina_Rectangle *area); 527dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve BlockEAPI Eina_Bool ewk_view_paint_contents(Ewk_View_Private_Data *priv, cairo_t *cr, const Eina_Rectangle *area); 528dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block 529a94275402997c11dd2e778633dacf4b7e630a35dBen MurdochEAPI void ewk_view_viewport_attributes_get(Evas_Object *o, float* w, float* h, float* init_scale, float* max_scale, float* min_scale, float* device_pixel_ratio , Eina_Bool* user_scalable); 530e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEAPI Eina_Bool ewk_view_zoom_range_set(Evas_Object* o, float min_scale, float max_scale); 531e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEAPI float ewk_view_zoom_range_min_get(Evas_Object* o); 532e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEAPI float ewk_view_zoom_range_max_get(Evas_Object* o); 533e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEAPI void ewk_view_user_scalable_set(Evas_Object* o, Eina_Bool user_scalable); 534e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEAPI Eina_Bool ewk_view_user_scalable_get(Evas_Object* o); 535a94275402997c11dd2e778633dacf4b7e630a35dBen MurdochEAPI float ewk_view_device_pixel_ratio_get(Evas_Object* o); 536e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 537dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block#ifdef __cplusplus 538dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block} 539dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block#endif 540dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block#endif // ewk_view_h 541