summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMike Blumenkrantz <zmike@samsung.com>2019-03-05 17:00:37 -0500
committerCedric BAIL <cedric.bail@free.fr>2019-03-07 14:16:39 -0800
commit5ba8a21b51462811c49d2da90ffe022a05746ef3 (patch)
treee9ad35ea61975c8826535c5b121892ecf857b7a9 /src
parent57a69262a1d40f3a5adf4585f088395f0af9278d (diff)
elm_web: remove all legacy usage from eo files
this takes the current generated output from eolian for legacy code in efl and adds it to the tree, then removes legacy references from the corresponding eo files. in the case where the entire eo file was for a legacy object, that eo file has been removed from the tree ref T7724 Reviewed-by: Cedric BAIL <cedric.bail@free.fr> Differential Revision: https://phab.enlightenment.org/D8208
Diffstat (limited to 'src')
-rw-r--r--src/Makefile_Efl_Mono.am2
-rw-r--r--src/Makefile_Elementary.am14
-rw-r--r--src/lib/elementary/elm_web.eo450
-rw-r--r--src/lib/elementary/elm_web2.c2
-rw-r--r--src/lib/elementary/elm_web_eo.c293
-rw-r--r--src/lib/elementary/elm_web_eo.h603
-rw-r--r--src/lib/elementary/elm_web_eo.legacy.c246
-rw-r--r--src/lib/elementary/elm_web_eo.legacy.h594
-rw-r--r--src/lib/elementary/elm_web_legacy.h2
-rw-r--r--src/lib/elementary/meson.build3
-rw-r--r--src/modules/elementary/web/none/elm_web_none.c4
-rw-r--r--src/modules/elementary/web/none/elm_web_none.eo42
-rw-r--r--src/modules/elementary/web/none/elm_web_none_eo.c211
-rw-r--r--src/modules/elementary/web/none/elm_web_none_eo.h24
-rw-r--r--src/modules/elementary/web/none/meson.build22
15 files changed, 1985 insertions, 527 deletions
diff --git a/src/Makefile_Efl_Mono.am b/src/Makefile_Efl_Mono.am
index 1f09ba1..e6d330c 100644
--- a/src/Makefile_Efl_Mono.am
+++ b/src/Makefile_Efl_Mono.am
@@ -169,7 +169,7 @@ eo_eolian_blacklisted_files = \
169lib/eo/efl_object_override.eo.cs 169lib/eo/efl_object_override.eo.cs
170 170
171elementary_eolian_blacklisted_files = \ 171elementary_eolian_blacklisted_files = \
172lib/elementary/elm_web.eo.cs \ 172lib/elementary/elm_web_eo.cs \
173lib/elementary/elm_map_eo.cs \ 173lib/elementary/elm_map_eo.cs \
174lib/elementary/elm_combobox.eo.cs \ 174lib/elementary/elm_combobox.eo.cs \
175lib/elementary/elm_list_eo.cs \ 175lib/elementary/elm_list_eo.cs \
diff --git a/src/Makefile_Elementary.am b/src/Makefile_Elementary.am
index 13566cb..6a0385a 100644
--- a/src/Makefile_Elementary.am
+++ b/src/Makefile_Elementary.am
@@ -146,7 +146,6 @@ elm_public_eolian_files += \
146 lib/elementary/elm_atspi_bridge.eo \ 146 lib/elementary/elm_atspi_bridge.eo \
147 lib/elementary/elm_atspi_app_object.eo \ 147 lib/elementary/elm_atspi_app_object.eo \
148 lib/elementary/efl_ui_image_zoomable_pan.eo \ 148 lib/elementary/efl_ui_image_zoomable_pan.eo \
149 lib/elementary/elm_web.eo \
150 lib/elementary/elm_widget_item.eo \ 149 lib/elementary/elm_widget_item.eo \
151 lib/elementary/elm_widget_item_container.eo \ 150 lib/elementary/elm_widget_item_container.eo \
152 $(NULL) 151 $(NULL)
@@ -394,6 +393,8 @@ lib/elementary/elm_toolbar_item_eo.c \
394lib/elementary/elm_toolbar_item_eo.legacy.c \ 393lib/elementary/elm_toolbar_item_eo.legacy.c \
395lib/elementary/elm_view_form_eo.c \ 394lib/elementary/elm_view_form_eo.c \
396lib/elementary/elm_view_list_eo.c \ 395lib/elementary/elm_view_list_eo.c \
396lib/elementary/elm_web_eo.c \
397lib/elementary/elm_web_eo.legacy.c \
397$(NULL) 398$(NULL)
398 399
399elm_legacy_eo_headers = \ 400elm_legacy_eo_headers = \
@@ -605,6 +606,8 @@ lib/elementary/elm_view_form_eo.h \
605lib/elementary/elm_view_form_eo.legacy.h \ 606lib/elementary/elm_view_form_eo.legacy.h \
606lib/elementary/elm_view_list_eo.h \ 607lib/elementary/elm_view_list_eo.h \
607lib/elementary/elm_view_list_eo.legacy.h \ 608lib/elementary/elm_view_list_eo.legacy.h \
609lib/elementary/elm_web_eo.h \
610lib/elementary/elm_web_eo.legacy.h \
608$(NULL) 611$(NULL)
609 612
610 613
@@ -1686,13 +1689,10 @@ moduleweb_nonepkg_LTLIBRARIES = modules/elementary/web/none/module.la
1686install_moduleweb_nonepkgLTLIBRARIES = install-moduleweb_nonepkgLTLIBRARIES 1689install_moduleweb_nonepkgLTLIBRARIES = install-moduleweb_nonepkgLTLIBRARIES
1687$(install_moduleweb_nonepkgLTLIBRARIES): install-libLTLIBRARIES 1690$(install_moduleweb_nonepkgLTLIBRARIES): install-libLTLIBRARIES
1688 1691
1689elm_web_none_eolian_files = modules/elementary/web/none/elm_web_none.eo
1690 1692
1691elm_web_none_eolian_c = $(elm_web_none_eolian_files:%.eo=%.eo.c) 1693EXTRA_DIST2 += \
1692elm_web_none_eolian_h = $(elm_web_none_eolian_files:%.eo=%.eo.h) 1694modules/elementary/web/none/elm_web_none_eo.c \
1693 1695modules/elementary/web/none/elm_web_none_eo.h
1694EXTRA_DIST2 += $(elm_web_none_eolian_files)
1695BUILT_SOURCES += $(elm_web_none_eolian_c) $(elm_web_none_eolian_h)
1696 1696
1697modules_elementary_web_none_module_la_SOURCES = \ 1697modules_elementary_web_none_module_la_SOURCES = \
1698 modules/elementary/web/none/elm_web_none.c 1698 modules/elementary/web/none/elm_web_none.c
diff --git a/src/lib/elementary/elm_web.eo b/src/lib/elementary/elm_web.eo
deleted file mode 100644
index 00cdc72..0000000
--- a/src/lib/elementary/elm_web.eo
+++ /dev/null
@@ -1,450 +0,0 @@
1type Elm_Web_Console_Message: __undefined_type; [[Elementary web console message type]]
2type Elm_Web_Window_Open: __undefined_type; [[Elementary web window open type]]
3type Elm_Web_Dialog_File_Selector: __undefined_type; [[Elementary web dialog file selector type]]
4type Elm_Web_Dialog_Confirm: __undefined_type; [[Elementary web dialog confirm type]]
5type Elm_Web_Dialog_Prompt: __undefined_type; [[Elementary web dialog prompt type]]
6type Elm_Web_Dialog_Alert: __undefined_type; [[Elementary web dialog alert type]]
7
8abstract Elm.Web extends Efl.Ui.Widget implements Efl.Ui.Legacy, Efl.Ui.Zoom
9{
10 [[Elementary web view class]]
11 legacy_prefix: elm_web;
12 eo_prefix: elm_obj_web;
13 event_prefix: elm_web;
14 methods {
15 @property text_matches_highlight @pure_virtual {
16 set {
17 [[Sets whether to highlight the matched marks.
18
19 If enabled, marks set with @.text_matches_mark will be
20 highlighted.
21 ]]
22 return: bool; [[$true on success, $false otherwise]]
23 }
24 get {
25 [[Get whether highlighting marks is enabled.]]
26 }
27 values {
28 highlight: bool; [[Whether to highlight the marks or not.]]
29 }
30 }
31 @property useragent @pure_virtual {
32 set {
33 [[Change useragent of a elm_web object.]]
34 }
35 get {
36 [[Return current useragent of elm_web object.]]
37 }
38 values {
39 user_agent: string; [[String for useragent.]]
40 }
41 }
42 @property url @pure_virtual {
43 set {
44 [[Sets the URL for the web object.
45
46 It must be a full URL, with resource included, in the form
47 http://www.enlightenment.org or file:///tmp/something.html
48 ]]
49 return: bool; [[$true on success, $false otherwise]]
50 }
51 get {
52 [[Get the current URL for the object.
53
54 The returned string must not be freed and is guaranteed to be
55 stringshared.
56 ]]
57 }
58 values {
59 url: string; [[The URL to set.]]
60 }
61 }
62 @property bg_color @pure_virtual {
63 set {
64 [[Sets the background color to be used by the web object.
65
66 This is the color that will be used by default when the
67 loaded page does not set it's own. Color values are
68 pre-multiplied.
69 ]]
70 }
71 get {
72 [[Get the background color to be used by the web object.
73
74 This is the color that will be used by default when the
75 loaded page does not set it's own. Color values are
76 pre-multiplied.
77 ]]
78 }
79 values {
80 r: int; [[Red component.]]
81 g: int; [[Green component.]]
82 b: int; [[Blue component.]]
83 a: int; [[Alpha component.]]
84 }
85 }
86 @property inwin_mode @pure_virtual {
87 set {
88 [[Sets the default dialogs to use an Inwin instead of a
89 normal window.
90
91 If set, then the default implementation for the JavaScript
92 dialogs and file selector will be opened in an Inwin.
93 Otherwise they will use a normal separated window.
94 ]]
95 }
96 get {
97 [[Get whether Inwin mode is set for the current object.]]
98 }
99 values {
100 value: bool; [[$true if dialog will be opened as Inwin, $false otherwise]]
101 }
102 }
103 @property tab_propagate @pure_virtual {
104 set {
105 [[Sets whether to use tab propagation.
106
107 If tab propagation is enabled, whenever the user presses the
108 Tab key, Elementary will handle it and switch focus to the
109 next widget. The default value is disabled, where WebKit
110 will handle the Tab key to cycle focus though its internal
111 objects, jumping to the next widget only when that cycle ends.
112 ]]
113 }
114 get {
115 [[Get the status of the tab propagation.]]
116 }
117 values {
118 propagate: bool; [[Whether to propagate Tab keys to Elementary or not.]]
119 }
120 }
121 @property history_enabled @pure_virtual {
122 set {
123 [[Enables or disables the browsing history.]]
124 }
125 get {
126 [[Get whether browsing history is enabled for the given object.]]
127 }
128 values {
129 enable: bool; [[Whether to enable or disable the browsing history.]]
130 }
131 }
132 @property console_message_hook {
133 set @pure_virtual {
134 [[Sets the function to call when a console message is emitted
135 from JS.
136
137 This hook will be called when a console message is emitted
138 from JavaScript. There is no default implementation for
139 this feature.
140 ]]
141 }
142 values {
143 func: Elm_Web_Console_Message; [[The callback function to be used.]]
144 data: void_ptr; [[User data.]]
145 }
146 }
147 @property window_create_hook {
148 set @pure_virtual {
149 [[Sets the function to call when a new window is requested.
150
151 This hook will be called when a request to create a new
152 window is issued from the web page loaded.
153 There is no default implementation for this feature, so
154 leaving this unset or passing $null in $func will prevent
155 new windows from opening.
156 ]]
157 }
158 values {
159 func: Elm_Web_Window_Open @nullable; [[The hook function to be called when a window is requested.]]
160 data: void_ptr @optional; [[User data.]]
161 }
162 }
163 @property dialog_file_selector_hook {
164 set @pure_virtual {
165 [[Sets the function to call when an file selector dialog.
166
167 This hook will be called when a JavaScript file selector
168 dialog is requested.
169 If no function is set or $null is passed in $func, the default
170 implementation will take place.
171 ]]
172 }
173 values {
174 func: Elm_Web_Dialog_File_Selector @nullable; [[The callback function to be used.]]
175 data: void_ptr @optional; [[User data.]]
176 }
177 }
178 @property dialog_confirm_hook {
179 set @pure_virtual {
180 [[Sets the function to call when an confirm dialog.
181
182 This hook will be called when a JavaScript confirm dialog is
183 requested. If no function is set or $null is passed in $func,
184 the default implementation will take place.
185 ]]
186 }
187 values {
188 func: Elm_Web_Dialog_Confirm @nullable; [[The callback function to be used.]]
189 data: void_ptr @optional; [[User data.]]
190 }
191 }
192 @property popup_selected {
193 set @pure_virtual {
194 [[Tells the web object which index in the currently open popup
195 was selected.
196
197 When the user handles the popup creation from the
198 "popup,created" signal, it needs to tell the web object
199 which item was selected by calling this function with
200 the index corresponding to the item.
201 ]]
202 }
203 values {
204 idx: int; [[The index selected.]]
205 }
206 }
207 @property dialog_prompt_hook {
208 set @pure_virtual {
209 [[Sets the function to call when an prompt dialog.
210
211 This hook will be called when a JavaScript prompt dialog is
212 requested. If no function is set or $null is passed in $func,
213 the default implementation will take place.
214 ]]
215 }
216 values {
217 func: Elm_Web_Dialog_Prompt @nullable; [[The callback function to be used.]]
218 data: void_ptr @optional; [[User data.]]
219 }
220 }
221 @property dialog_alert_hook {
222 set @pure_virtual {
223 [[Sets the function to call when an alert dialog.
224
225 This hook will be called when a JavaScript alert dialog is
226 requested. If no function is set or $null is passed in $func,
227 the default implementation will take place.
228 ]]
229 }
230 values {
231 func: Elm_Web_Dialog_Alert @nullable; [[Callback function to be used.]]
232 data: void_ptr @optional; [[User data.]]
233 }
234 }
235 @property forward_possible {
236 get @pure_virtual {
237 [[Queries whether it's possible to go forward in history.]]
238 return: bool; [[$true if it is possible to go forward, $false otherwise]]
239 }
240 }
241 @property webkit_view {
242 get @pure_virtual {
243 [[Get internal ewk_view object from web object.
244
245 Elementary may not provide some low level features of EWebKit,
246 instead of cluttering the API with proxy methods we opted to
247 return the internal reference. Be careful using it as it may
248 interfere with elm_web behavior.
249 ]]
250 return: Efl.Canvas.Object; [[The internal ewk_view object or $null
251 if it does not exist. (Failure to
252 create or Elementary compiled
253 without ewebkit)]]
254 }
255 }
256 @property back_possible {
257 get @pure_virtual {
258 [[Queries whether it's possible to go back in history.]]
259 return: bool; [[$true if it is possible to go back, $false otherwise]]
260 }
261 }
262 @property load_progress {
263 get @pure_virtual {
264 [[Get the overall loading progress of the page.
265
266 Returns the estimated loading progress of the page, with a
267 value between 0.0 and 1.0. This is an estimated progress
268 accounting for all the frames included in the page.
269 ]]
270 return: double; [[A value between 0.0 and 1.0 indicating the
271 progress, or -1.0 on failure.]]
272 }
273 }
274 @property selection {
275 get @pure_virtual {
276 [[Get a copy of the currently selected text.
277
278 The string returned must be freed by the user when it's done
279 with it.
280 ]]
281 return: mstring @owned @warn_unused; [[A newly allocated string, or
282 $null if nothing is selected
283 or an error occurred.]]
284 }
285 }
286 @property title {
287 get @pure_virtual {
288 [[Get the current title.
289
290 The returned string must not be freed and is guaranteed to be
291 stringshared.
292 ]]
293 return: stringshare @owned @warn_unused; [[
294 A stringshared internal string with the current title, or $null on
295 failure.
296 ]]
297 }
298 }
299 navigate @pure_virtual {
300 [[Jumps the given number of steps in the browsing history.
301
302 The $steps value can be a negative integer to back in history,
303 or a positive to move forward.
304 ]]
305 return: bool; [[$true on success, $false on error or if not enough
306 history exists to jump the given number of steps]]
307 params {
308 @in steps: int; [[The number of steps to jump.]]
309 }
310 }
311 back @pure_virtual {
312 [[Goes back one step in the browsing history.
313
314 This is equivalent to calling elm_web_object_navigate(obj, -1);
315 ]]
316 return: bool; [[$true on success, $false otherwise]]
317 }
318 html_string_load @pure_virtual {
319 [[Loads the specified $html string as the content of the web
320 object.
321
322 External objects such as stylesheets or images referenced in
323 the HTML document are located relative to $base_url.
324
325 If an $unreachable_url is passed it is used as the url for the
326 loaded content. This is typically used to display error pages
327 for a failed load.
328
329 @since 1.9
330 ]]
331 return: bool; [[$true on success, $false otherwise]]
332 params {
333 @in html: string; [[HTML data to load.]]
334 @in base_url: string @optional; [[Base URL used for relative paths to external objects (optional).]]
335 @in unreachable_url: string @optional; [[URL that could not be reached (optional).]]
336 }
337 }
338 text_search @const @pure_virtual {
339 [[Searches the given string in a document.]]
340 return: bool; [[$true if the given string was found, $false if not
341 or failure.]]
342 params {
343 @in string: string; [[String to search.]]
344 @in case_sensitive: bool; [[If search should be case sensitive or not.]]
345 @in forward: bool; [[If search is from cursor and on or backwards.]]
346 @in wrap: bool; [[If search should wrap at the end.]]
347 }
348 }
349 popup_destroy @pure_virtual {
350 [[Dismisses an open dropdown popup
351
352 When the popup from a dropdown widget is to be dismissed, either
353 after selecting an option or to cancel it, this function must be
354 called, which will later emit an "popup,willdelete" signal to
355 notify the user that any memory and objects related to this
356 popup can be freed.
357 ]]
358 return: bool; [[$true if the menu was successfully destroyed, or
359 $false if there was no menu to destroy.]]
360 }
361 region_show @pure_virtual {
362 [[Shows the given region in the web object.]]
363 params {
364 @in x: int; [[The x coordinate of the region to show.]]
365 @in y: int; [[The y coordinate of the region to show.]]
366 @in w: int; [[The width of the region to show.]]
367 @in h: int; [[The height of the region to show.]]
368 }
369 }
370 forward @pure_virtual {
371 [[Goes forward one step in the browsing history.
372
373 This is equivalent to calling elm_web_object_navigate(obj, 1);
374
375 See also @.history_enabled.set, @.forward_possible.get,
376 @.back, @.navigate.
377 ]]
378 return: bool; [[$true on success, $false otherwise.]]
379 }
380 text_matches_mark @pure_virtual {
381 [[Marks matches of the given string in a document.]]
382 return: uint; [[Number of matched $string.]]
383 params {
384 @in string: string; [[String to match.]]
385 @in case_sensitive: bool; [[If match should be case sensitive or not.]]
386 @in highlight: bool; [[If matches should be highlighted.]]
387 @in limit: uint; [[Maximum amount of matches, or zero to unlimited.]]
388 }
389 }
390 region_bring_in @pure_virtual {
391 [[Brings in the region to the visible area.
392
393 Like @.region_show, but it animates the scrolling of the object
394 to show the area.
395 ]]
396 params {
397 @in x: int; [[The x coordinate of the region to show.]]
398 @in y: int; [[The y coordinate of the region to show.]]
399 @in w: int; [[The width of the region to show.]]
400 @in h: int; [[The height of the region to show.]]
401 }
402 }
403 stop @pure_virtual {
404 [[Stops loading the current page.
405
406 Cancels the loading of the current page in the web object. This
407 will cause a "load,error" signal to be emitted, with the
408 is_cancellation flag set to $true.
409 ]]
410 return: bool; [[$true if the cancel was successful, $false otherwise.]]
411 }
412 navigate_possible_get @pure_virtual {
413 [[Queries whether it's possible to jump the given number of steps.
414
415 The $steps value can be a negative integer to back in history,
416 or positive to move forward.
417 ]]
418 return: bool; [[$true if enough history exists to perform the
419 given jump, $false otherwise.]]
420 params {
421 @in steps: int; [[The number of steps to check for.]]
422 }
423 }
424 reload_full @pure_virtual {
425 [[Requests a reload of the current document, avoiding any
426 existing caches.
427 ]]
428 return: bool; [[$true on success, $false otherwise.]]
429 }
430 text_matches_unmark_all @pure_virtual {
431 [[Clears all marked matches in the document.]]
432 return: bool; [[$true on success, $false otherwise.]]
433 }
434 reload @pure_virtual {
435 [[Requests a reload of the current document in the object.]]
436 return: bool; [[$true on success, $false otherwise.]]
437 }
438 }
439 implements {
440 class.constructor;
441 Efl.Object.constructor;
442 }
443 events {
444 /* FIXME: Nobody is emitting these
445 uri,changed; [[Called when URI changed]]
446 url,changed; [[Called when URL changed]]
447 windows,close,request; [[Called when window closed event was received]]
448 */
449 }
450}
diff --git a/src/lib/elementary/elm_web2.c b/src/lib/elementary/elm_web2.c
index 3c82d92..90e454c 100644
--- a/src/lib/elementary/elm_web2.c
+++ b/src/lib/elementary/elm_web2.c
@@ -281,4 +281,4 @@ _elm_web_init(const char *engine)
281#undef ELM_WEB_CLASS 281#undef ELM_WEB_CLASS
282#define ELM_WEB_CLASS elm_web_class_get() 282#define ELM_WEB_CLASS elm_web_class_get()
283 283
284#include "elm_web.eo.c" 284#include "elm_web_eo.c"
diff --git a/src/lib/elementary/elm_web_eo.c b/src/lib/elementary/elm_web_eo.c
new file mode 100644
index 0000000..20d25ee
--- /dev/null
+++ b/src/lib/elementary/elm_web_eo.c
@@ -0,0 +1,293 @@
1
2static Eina_Error
3__eolian_elm_web_text_matches_highlight_set_reflect(Eo *obj, Eina_Value val)
4{
5 Eina_Error r = 0; Eina_Bool cval;
6 if (!eina_value_bool_convert(&val, &cval))
7 {
8 r = EINA_ERROR_VALUE_FAILED;
9 goto end;
10 }
11 elm_obj_web_text_matches_highlight_set(obj, cval);
12 end:
13 eina_value_flush(&val);
14 return r;
15}
16
17EOAPI EFL_FUNC_BODYV(elm_obj_web_text_matches_highlight_set, Eina_Bool, 0, EFL_FUNC_CALL(highlight), Eina_Bool highlight);
18
19static Eina_Value
20__eolian_elm_web_text_matches_highlight_get_reflect(Eo *obj)
21{
22 Eina_Bool val = elm_obj_web_text_matches_highlight_get(obj);
23 return eina_value_bool_init(val);
24}
25
26EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_text_matches_highlight_get, Eina_Bool, 0);
27
28static Eina_Error
29__eolian_elm_web_useragent_set_reflect(Eo *obj, Eina_Value val)
30{
31 Eina_Error r = 0; const char *cval;
32 if (!eina_value_string_convert(&val, &cval))
33 {
34 r = EINA_ERROR_VALUE_FAILED;
35 goto end;
36 }
37 elm_obj_web_useragent_set(obj, cval);
38 end:
39 eina_value_flush(&val);
40 return r;
41}
42
43EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_useragent_set, EFL_FUNC_CALL(user_agent), const char *user_agent);
44
45static Eina_Value
46__eolian_elm_web_useragent_get_reflect(Eo *obj)
47{
48 const char *val = elm_obj_web_useragent_get(obj);
49 return eina_value_string_init(val);
50}
51
52EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_useragent_get, const char *, NULL);
53
54static Eina_Error
55__eolian_elm_web_url_set_reflect(Eo *obj, Eina_Value val)
56{
57 Eina_Error r = 0; const char *cval;
58 if (!eina_value_string_convert(&val, &cval))
59 {
60 r = EINA_ERROR_VALUE_FAILED;
61 goto end;
62 }
63 elm_obj_web_url_set(obj, cval);
64 end:
65 eina_value_flush(&val);
66 return r;
67}
68
69EOAPI EFL_FUNC_BODYV(elm_obj_web_url_set, Eina_Bool, 0, EFL_FUNC_CALL(url), const char *url);
70
71static Eina_Value
72__eolian_elm_web_url_get_reflect(Eo *obj)
73{
74 const char *val = elm_obj_web_url_get(obj);
75 return eina_value_string_init(val);
76}
77
78EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_url_get, const char *, NULL);
79EOAPI 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);
80EOAPI 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);
81
82static Eina_Error
83__eolian_elm_web_inwin_mode_set_reflect(Eo *obj, Eina_Value val)
84{
85 Eina_Error r = 0; Eina_Bool cval;
86 if (!eina_value_bool_convert(&val, &cval))
87 {
88 r = EINA_ERROR_VALUE_FAILED;
89 goto end;
90 }
91 elm_obj_web_inwin_mode_set(obj, cval);
92 end:
93 eina_value_flush(&val);
94 return r;
95}
96
97EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_inwin_mode_set, EFL_FUNC_CALL(value), Eina_Bool value);
98
99static Eina_Value
100__eolian_elm_web_inwin_mode_get_reflect(Eo *obj)
101{
102 Eina_Bool val = elm_obj_web_inwin_mode_get(obj);
103 return eina_value_bool_init(val);
104}
105
106EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_inwin_mode_get, Eina_Bool, 0);
107
108static Eina_Error
109__eolian_elm_web_tab_propagate_set_reflect(Eo *obj, Eina_Value val)
110{
111 Eina_Error r = 0; Eina_Bool cval;
112 if (!eina_value_bool_convert(&val, &cval))
113 {
114 r = EINA_ERROR_VALUE_FAILED;
115 goto end;
116 }
117 elm_obj_web_tab_propagate_set(obj, cval);
118 end:
119 eina_value_flush(&val);
120 return r;
121}
122
123EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_tab_propagate_set, EFL_FUNC_CALL(propagate), Eina_Bool propagate);
124
125static Eina_Value
126__eolian_elm_web_tab_propagate_get_reflect(Eo *obj)
127{
128 Eina_Bool val = elm_obj_web_tab_propagate_get(obj);
129 return eina_value_bool_init(val);
130}
131
132EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_tab_propagate_get, Eina_Bool, 0);
133
134static Eina_Error
135__eolian_elm_web_history_enabled_set_reflect(Eo *obj, Eina_Value val)
136{
137 Eina_Error r = 0; Eina_Bool cval;
138 if (!eina_value_bool_convert(&val, &cval))
139 {
140 r = EINA_ERROR_VALUE_FAILED;
141 goto end;
142 }
143 elm_obj_web_history_enabled_set(obj, cval);
144 end:
145 eina_value_flush(&val);
146 return r;
147}
148
149EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_history_enabled_set, EFL_FUNC_CALL(enable), Eina_Bool enable);
150
151static Eina_Value
152__eolian_elm_web_history_enabled_get_reflect(Eo *obj)
153{
154 Eina_Bool val = elm_obj_web_history_enabled_get(obj);
155 return eina_value_bool_init(val);
156}
157
158EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_history_enabled_get, Eina_Bool, 0);
159EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_console_message_hook_set, EFL_FUNC_CALL(func, data), Elm_Web_Console_Message func, void *data);
160EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_window_create_hook_set, EFL_FUNC_CALL(func, data), Elm_Web_Window_Open func, void *data);
161EOAPI 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);
162EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_dialog_confirm_hook_set, EFL_FUNC_CALL(func, data), Elm_Web_Dialog_Confirm func, void *data);
163
164static Eina_Error
165__eolian_elm_web_popup_selected_set_reflect(Eo *obj, Eina_Value val)
166{
167 Eina_Error r = 0; int cval;
168 if (!eina_value_int_convert(&val, &cval))
169 {
170 r = EINA_ERROR_VALUE_FAILED;
171 goto end;
172 }
173 elm_obj_web_popup_selected_set(obj, cval);
174 end:
175 eina_value_flush(&val);
176 return r;
177}
178
179EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_popup_selected_set, EFL_FUNC_CALL(idx), int idx);
180EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_dialog_prompt_hook_set, EFL_FUNC_CALL(func, data), Elm_Web_Dialog_Prompt func, void *data);
181EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_dialog_alert_hook_set, EFL_FUNC_CALL(func, data), Elm_Web_Dialog_Alert func, void *data);
182EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_forward_possible_get, Eina_Bool, 0);
183EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_webkit_view_get, Efl_Canvas_Object *, NULL);
184EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_back_possible_get, Eina_Bool, 0);
185EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_load_progress_get, double, 0);
186EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_selection_get, char *, NULL);
187EOAPI EFL_FUNC_BODY_CONST(elm_obj_web_title_get, Eina_Stringshare *, NULL);
188EOAPI EFL_FUNC_BODYV(elm_obj_web_navigate, Eina_Bool, 0, EFL_FUNC_CALL(steps), int steps);
189EOAPI EFL_FUNC_BODY(elm_obj_web_back, Eina_Bool, 0);
190EOAPI 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);
191EOAPI 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);
192EOAPI EFL_FUNC_BODY(elm_obj_web_popup_destroy, Eina_Bool, 0);
193EOAPI EFL_VOID_FUNC_BODYV(elm_obj_web_region_show, EFL_FUNC_CALL(x, y, w, h), int x, int y, int w, int h);
194EOAPI EFL_FUNC_BODY(elm_obj_web_forward, Eina_Bool, 0);
195EOAPI 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);
196EOAPI 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);
197EOAPI EFL_FUNC_BODY(elm_obj_web_stop, Eina_Bool, 0);
198EOAPI EFL_FUNC_BODYV(elm_obj_web_navigate_possible_get, Eina_Bool, 0, EFL_FUNC_CALL(steps), int steps);
199EOAPI EFL_FUNC_BODY(elm_obj_web_reload_full, Eina_Bool, 0);
200EOAPI EFL_FUNC_BODY(elm_obj_web_text_matches_unmark_all, Eina_Bool, 0);
201EOAPI EFL_FUNC_BODY(elm_obj_web_reload, Eina_Bool, 0);
202
203Efl_Object *_elm_web_efl_object_constructor(Eo *obj, Elm_Web_Data *pd);
204
205
206static Eina_Bool
207_elm_web_class_initializer(Efl_Class *klass)
208{
209 const Efl_Object_Ops *opsp = NULL;
210
211 const Efl_Object_Property_Reflection_Ops *ropsp = NULL;
212
213#ifndef ELM_WEB_EXTRA_OPS
214#define ELM_WEB_EXTRA_OPS
215#endif
216
217 EFL_OPS_DEFINE(ops,
218 EFL_OBJECT_OP_FUNC(elm_obj_web_text_matches_highlight_set, NULL),
219 EFL_OBJECT_OP_FUNC(elm_obj_web_text_matches_highlight_get, NULL),
220 EFL_OBJECT_OP_FUNC(elm_obj_web_useragent_set, NULL),
221 EFL_OBJECT_OP_FUNC(elm_obj_web_useragent_get, NULL),
222 EFL_OBJECT_OP_FUNC(elm_obj_web_url_set, NULL),
223 EFL_OBJECT_OP_FUNC(elm_obj_web_url_get, NULL),
224 EFL_OBJECT_OP_FUNC(elm_obj_web_bg_color_set, NULL),
225 EFL_OBJECT_OP_FUNC(elm_obj_web_bg_color_get, NULL),
226 EFL_OBJECT_OP_FUNC(elm_obj_web_inwin_mode_set, NULL),
227 EFL_OBJECT_OP_FUNC(elm_obj_web_inwin_mode_get, NULL),
228 EFL_OBJECT_OP_FUNC(elm_obj_web_tab_propagate_set, NULL),
229 EFL_OBJECT_OP_FUNC(elm_obj_web_tab_propagate_get, NULL),
230 EFL_OBJECT_OP_FUNC(elm_obj_web_history_enabled_set, NULL),
231 EFL_OBJECT_OP_FUNC(elm_obj_web_history_enabled_get, NULL),
232 EFL_OBJECT_OP_FUNC(elm_obj_web_console_message_hook_set, NULL),
233 EFL_OBJECT_OP_FUNC(elm_obj_web_window_create_hook_set, NULL),
234 EFL_OBJECT_OP_FUNC(elm_obj_web_dialog_file_selector_hook_set, NULL),
235 EFL_OBJECT_OP_FUNC(elm_obj_web_dialog_confirm_hook_set, NULL),
236 EFL_OBJECT_OP_FUNC(elm_obj_web_popup_selected_set, NULL),
237 EFL_OBJECT_OP_FUNC(elm_obj_web_dialog_prompt_hook_set, NULL),
238 EFL_OBJECT_OP_FUNC(elm_obj_web_dialog_alert_hook_set, NULL),
239 EFL_OBJECT_OP_FUNC(elm_obj_web_forward_possible_get, NULL),
240 EFL_OBJECT_OP_FUNC(elm_obj_web_webkit_view_get, NULL),
241 EFL_OBJECT_OP_FUNC(elm_obj_web_back_possible_get, NULL),
242 EFL_OBJECT_OP_FUNC(elm_obj_web_load_progress_get, NULL),
243 EFL_OBJECT_OP_FUNC(elm_obj_web_selection_get, NULL),
244 EFL_OBJECT_OP_FUNC(elm_obj_web_title_get, NULL),
245 EFL_OBJECT_OP_FUNC(elm_obj_web_navigate, NULL),
246 EFL_OBJECT_OP_FUNC(elm_obj_web_back, NULL),
247 EFL_OBJECT_OP_FUNC(elm_obj_web_html_string_load, NULL),
248 EFL_OBJECT_OP_FUNC(elm_obj_web_text_search, NULL),
249 EFL_OBJECT_OP_FUNC(elm_obj_web_popup_destroy, NULL),
250 EFL_OBJECT_OP_FUNC(elm_obj_web_region_show, NULL),
251 EFL_OBJECT_OP_FUNC(elm_obj_web_forward, NULL),
252 EFL_OBJECT_OP_FUNC(elm_obj_web_text_matches_mark, NULL),
253 EFL_OBJECT_OP_FUNC(elm_obj_web_region_bring_in, NULL),
254 EFL_OBJECT_OP_FUNC(elm_obj_web_stop, NULL),
255 EFL_OBJECT_OP_FUNC(elm_obj_web_navigate_possible_get, NULL),
256 EFL_OBJECT_OP_FUNC(elm_obj_web_reload_full, NULL),
257 EFL_OBJECT_OP_FUNC(elm_obj_web_text_matches_unmark_all, NULL),
258 EFL_OBJECT_OP_FUNC(elm_obj_web_reload, NULL),
259 EFL_OBJECT_OP_FUNC(efl_constructor, _elm_web_efl_object_constructor),
260 ELM_WEB_EXTRA_OPS
261 );
262 opsp = &ops;
263
264 static const Efl_Object_Property_Reflection refl_table[] = {
265 {"text_matches_highlight", __eolian_elm_web_text_matches_highlight_set_reflect, __eolian_elm_web_text_matches_highlight_get_reflect},
266 {"useragent", __eolian_elm_web_useragent_set_reflect, __eolian_elm_web_useragent_get_reflect},
267 {"url", __eolian_elm_web_url_set_reflect, __eolian_elm_web_url_get_reflect},
268 {"inwin_mode", __eolian_elm_web_inwin_mode_set_reflect, __eolian_elm_web_inwin_mode_get_reflect},
269 {"tab_propagate", __eolian_elm_web_tab_propagate_set_reflect, __eolian_elm_web_tab_propagate_get_reflect},
270 {"history_enabled", __eolian_elm_web_history_enabled_set_reflect, __eolian_elm_web_history_enabled_get_reflect},
271 {"popup_selected", __eolian_elm_web_popup_selected_set_reflect, NULL},
272 };
273 static const Efl_Object_Property_Reflection_Ops rops = {
274 refl_table, EINA_C_ARRAY_LENGTH(refl_table)
275 };
276 ropsp = &rops;
277
278 return efl_class_functions_set(klass, opsp, ropsp);
279}
280
281static const Efl_Class_Description _elm_web_class_desc = {
282 EO_VERSION,
283 "Elm.Web",
284 EFL_CLASS_TYPE_REGULAR_NO_INSTANT,
285 sizeof(Elm_Web_Data),
286 _elm_web_class_initializer,
287 _elm_web_class_constructor,
288 NULL
289};
290
291EFL_DEFINE_CLASS(elm_web_class_get, &_elm_web_class_desc, EFL_UI_WIDGET_CLASS, EFL_UI_LEGACY_INTERFACE, EFL_UI_ZOOM_INTERFACE, NULL);
292
293#include "elm_web_eo.legacy.c"
diff --git a/src/lib/elementary/elm_web_eo.h b/src/lib/elementary/elm_web_eo.h
index 33b3f7e..0407b40 100644
--- a/src/lib/elementary/elm_web_eo.h
+++ b/src/lib/elementary/elm_web_eo.h
@@ -1 +1,602 @@
1#include "elm_web.eo.h" \ No newline at end of file 1#ifndef _ELM_WEB_EO_H_
2#define _ELM_WEB_EO_H_
3
4#ifndef _ELM_WEB_EO_CLASS_TYPE
5#define _ELM_WEB_EO_CLASS_TYPE
6
7typedef Eo Elm_Web;
8
9#endif
10
11#ifndef _ELM_WEB_EO_TYPES
12#define _ELM_WEB_EO_TYPES
13
14
15#endif
16/** Elementary web view class
17 *
18 * @ingroup Elm_Web
19 */
20#define ELM_WEB_CLASS elm_web_class_get()
21
22EWAPI const Efl_Class *elm_web_class_get(void);
23
24/**
25 * @brief Sets whether to highlight the matched marks.
26 *
27 * If enabled, marks set with @ref elm_obj_web_text_matches_mark will be
28 * highlighted.
29 *
30 * @param[in] obj The object.
31 * @param[in] highlight Whether to highlight the marks or not.
32 *
33 * @return @c true on success, @c false otherwise
34 *
35 * @ingroup Elm_Web
36 */
37EOAPI Eina_Bool elm_obj_web_text_matches_highlight_set(Eo *obj, Eina_Bool highlight);
38
39/**
40 * @brief Get whether highlighting marks is enabled.
41 *
42 * @param[in] obj The object.
43 *
44 * @return Whether to highlight the marks or not.
45 *
46 * @ingroup Elm_Web
47 */
48EOAPI Eina_Bool elm_obj_web_text_matches_highlight_get(const Eo *obj);
49
50/**
51 * @brief Change useragent of a elm_web object.
52 *
53 * @param[in] obj The object.
54 * @param[in] user_agent String for useragent.
55 *
56 * @ingroup Elm_Web
57 */
58EOAPI void elm_obj_web_useragent_set(Eo *obj, const char *user_agent);
59
60/**
61 * @brief Return current useragent of elm_web object.
62 *
63 * @param[in] obj The object.
64 *
65 * @return String for useragent.
66 *
67 * @ingroup Elm_Web
68 */
69EOAPI const char *elm_obj_web_useragent_get(const Eo *obj);
70
71/**
72 * @brief Sets the URL for the web object.
73 *
74 * It must be a full URL, with resource included, in the form
75 * http://www.enlightenment.org or file:///tmp/something.html
76 *
77 * @param[in] obj The object.
78 * @param[in] url The URL to set.
79 *
80 * @return @c true on success, @c false otherwise
81 *
82 * @ingroup Elm_Web
83 */
84EOAPI Eina_Bool elm_obj_web_url_set(Eo *obj, const char *url);
85
86/**
87 * @brief Get the current URL for the object.
88 *
89 * The returned string must not be freed and is guaranteed to be stringshared.
90 *
91 * @param[in] obj The object.
92 *
93 * @return The URL to set.
94 *
95 * @ingroup Elm_Web
96 */
97EOAPI const char *elm_obj_web_url_get(const Eo *obj);
98
99/**
100 * @brief Sets the background color to be used by the web object.
101 *
102 * This is the color that will be used by default when the loaded page does not
103 * set it's own. Color values are pre-multiplied.
104 *
105 * @param[in] obj The object.
106 * @param[in] r Red component.
107 * @param[in] g Green component.
108 * @param[in] b Blue component.
109 * @param[in] a Alpha component.
110 *
111 * @ingroup Elm_Web
112 */
113EOAPI void elm_obj_web_bg_color_set(Eo *obj, int r, int g, int b, int a);
114
115/**
116 * @brief Get the background color to be used by the web object.
117 *
118 * This is the color that will be used by default when the loaded page does not
119 * set it's own. Color values are pre-multiplied.
120 *
121 * @param[in] obj The object.
122 * @param[out] r Red component.
123 * @param[out] g Green component.
124 * @param[out] b Blue component.
125 * @param[out] a Alpha component.
126 *
127 * @ingroup Elm_Web
128 */
129EOAPI void elm_obj_web_bg_color_get(const Eo *obj, int *r, int *g, int *b, int *a);
130
131/**
132 * @brief Sets the default dialogs to use an Inwin instead of a normal window.
133 *
134 * If set, then the default implementation for the JavaScript dialogs and file
135 * selector will be opened in an Inwin. Otherwise they will use a normal
136 * separated window.
137 *
138 * @param[in] obj The object.
139 * @param[in] value @c true if dialog will be opened as Inwin, @c false
140 * otherwise
141 *
142 * @ingroup Elm_Web
143 */
144EOAPI void elm_obj_web_inwin_mode_set(Eo *obj, Eina_Bool value);
145
146/**
147 * @brief Get whether Inwin mode is set for the current object.
148 *
149 * @param[in] obj The object.
150 *
151 * @return @c true if dialog will be opened as Inwin, @c false otherwise
152 *
153 * @ingroup Elm_Web
154 */
155EOAPI Eina_Bool elm_obj_web_inwin_mode_get(const Eo *obj);
156
157/**
158 * @brief Sets whether to use tab propagation.
159 *
160 * If tab propagation is enabled, whenever the user presses the Tab key,
161 * Elementary will handle it and switch focus to the next widget. The default
162 * value is disabled, where WebKit will handle the Tab key to cycle focus
163 * though its internal objects, jumping to the next widget only when that cycle
164 * ends.
165 *
166 * @param[in] obj The object.
167 * @param[in] propagate Whether to propagate Tab keys to Elementary or not.
168 *
169 * @ingroup Elm_Web
170 */
171EOAPI void elm_obj_web_tab_propagate_set(Eo *obj, Eina_Bool propagate);
172
173/**
174 * @brief Get the status of the tab propagation.
175 *
176 * @param[in] obj The object.
177 *
178 * @return Whether to propagate Tab keys to Elementary or not.
179 *
180 * @ingroup Elm_Web
181 */
182EOAPI Eina_Bool elm_obj_web_tab_propagate_get(const Eo *obj);
183
184/**
185 * @brief Enables or disables the browsing history.
186 *
187 * @param[in] obj The object.
188 * @param[in] enable Whether to enable or disable the browsing history.
189 *
190 * @ingroup Elm_Web
191 */
192EOAPI void elm_obj_web_history_enabled_set(Eo *obj, Eina_Bool enable);
193
194/**
195 * @brief Get whether browsing history is enabled for the given object.
196 *
197 * @param[in] obj The object.
198 *
199 * @return Whether to enable or disable the browsing history.
200 *
201 * @ingroup Elm_Web
202 */
203EOAPI Eina_Bool elm_obj_web_history_enabled_get(const Eo *obj);
204
205/**
206 * @brief Sets the function to call when a console message is emitted from JS.
207 *
208 * This hook will be called when a console message is emitted from JavaScript.
209 * There is no default implementation for this feature.
210 *
211 * @param[in] obj The object.
212 * @param[in] func The callback function to be used.
213 * @param[in] data User data.
214 *
215 * @ingroup Elm_Web
216 */
217EOAPI void elm_obj_web_console_message_hook_set(Eo *obj, Elm_Web_Console_Message func, void *data);
218
219/**
220 * @brief Sets the function to call when a new window is requested.
221 *
222 * This hook will be called when a request to create a new window is issued
223 * from the web page loaded. There is no default implementation for this
224 * feature, so leaving this unset or passing @c null in @c func will prevent
225 * new windows from opening.
226 *
227 * @param[in] obj The object.
228 * @param[in] func The hook function to be called when a window is requested.
229 * @param[in] data User data.
230 *
231 * @ingroup Elm_Web
232 */
233EOAPI void elm_obj_web_window_create_hook_set(Eo *obj, Elm_Web_Window_Open func, void *data);
234
235/**
236 * @brief Sets the function to call when an file selector dialog.
237 *
238 * This hook will be called when a JavaScript file selector dialog is
239 * requested. If no function is set or @c null is passed in @c func, the
240 * default implementation will take place.
241 *
242 * @param[in] obj The object.
243 * @param[in] func The callback function to be used.
244 * @param[in] data User data.
245 *
246 * @ingroup Elm_Web
247 */
248EOAPI void elm_obj_web_dialog_file_selector_hook_set(Eo *obj, Elm_Web_Dialog_File_Selector func, void *data);
249
250/**
251 * @brief Sets the function to call when an confirm dialog.
252 *
253 * This hook will be called when a JavaScript confirm dialog is requested. If
254 * no function is set or @c null is passed in @c func, the default
255 * implementation will take place.
256 *
257 * @param[in] obj The object.
258 * @param[in] func The callback function to be used.
259 * @param[in] data User data.
260 *
261 * @ingroup Elm_Web
262 */
263EOAPI void elm_obj_web_dialog_confirm_hook_set(Eo *obj, Elm_Web_Dialog_Confirm func, void *data);
264
265/**
266 * @brief Tells the web object which index in the currently open popup was
267 * selected.
268 *
269 * When the user handles the popup creation from the "popup,created" signal, it
270 * needs to tell the web object which item was selected by calling this
271 * function with the index corresponding to the item.
272 *
273 * @param[in] obj The object.
274 * @param[in] idx The index selected.
275 *
276 * @ingroup Elm_Web
277 */
278EOAPI void elm_obj_web_popup_selected_set(Eo *obj, int idx);
279
280/**
281 * @brief Sets the function to call when an prompt dialog.
282 *
283 * This hook will be called when a JavaScript prompt dialog is requested. If no
284 * function is set or @c null is passed in @c func, the default implementation
285 * will take place.
286 *
287 * @param[in] obj The object.
288 * @param[in] func The callback function to be used.
289 * @param[in] data User data.
290 *
291 * @ingroup Elm_Web
292 */
293EOAPI void elm_obj_web_dialog_prompt_hook_set(Eo *obj, Elm_Web_Dialog_Prompt func, void *data);
294
295/**
296 * @brief Sets the function to call when an alert dialog.
297 *
298 * This hook will be called when a JavaScript alert dialog is requested. If no
299 * function is set or @c null is passed in @c func, the default implementation
300 * will take place.
301 *
302 * @param[in] obj The object.
303 * @param[in] func Callback function to be used.
304 * @param[in] data User data.
305 *
306 * @ingroup Elm_Web
307 */
308EOAPI void elm_obj_web_dialog_alert_hook_set(Eo *obj, Elm_Web_Dialog_Alert func, void *data);
309
310/**
311 * @brief Queries whether it's possible to go forward in history.
312 *
313 * @param[in] obj The object.
314 *
315 * @return @c true if it is possible to go forward, @c false otherwise
316 *
317 * @ingroup Elm_Web
318 */
319EOAPI Eina_Bool elm_obj_web_forward_possible_get(const Eo *obj);
320
321/**
322 * @brief Get internal ewk_view object from web object.
323 *
324 * Elementary may not provide some low level features of EWebKit, instead of
325 * cluttering the API with proxy methods we opted to return the internal
326 * reference. Be careful using it as it may interfere with elm_web behavior.
327 *
328 * @param[in] obj The object.
329 *
330 * @return The internal ewk_view object or @c null if it does not exist.
331 * (Failure to create or Elementary compiled without ewebkit)
332 *
333 * @ingroup Elm_Web
334 */
335EOAPI Efl_Canvas_Object *elm_obj_web_webkit_view_get(const Eo *obj);
336
337/**
338 * @brief Queries whether it's possible to go back in history.
339 *
340 * @param[in] obj The object.
341 *
342 * @return @c true if it is possible to go back, @c false otherwise
343 *
344 * @ingroup Elm_Web
345 */
346EOAPI Eina_Bool elm_obj_web_back_possible_get(const Eo *obj);
347
348/**
349 * @brief Get the overall loading progress of the page.
350 *
351 * Returns the estimated loading progress of the page, with a value between 0.0
352 * and 1.0. This is an estimated progress accounting for all the frames
353 * included in the page.
354 *
355 * @param[in] obj The object.
356 *
357 * @return A value between 0.0 and 1.0 indicating the progress, or -1.0 on
358 * failure.
359 *
360 * @ingroup Elm_Web
361 */
362EOAPI double elm_obj_web_load_progress_get(const Eo *obj);
363
364/**
365 * @brief Get a copy of the currently selected text.
366 *
367 * The string returned must be freed by the user when it's done with it.
368 *
369 * @param[in] obj The object.
370 *
371 * @return A newly allocated string, or @c null if nothing is selected or an
372 * error occurred.
373 *
374 * @ingroup Elm_Web
375 */
376EOAPI char *elm_obj_web_selection_get(const Eo *obj) EINA_WARN_UNUSED_RESULT;
377
378/**
379 * @brief Get the current title.
380 *
381 * The returned string must not be freed and is guaranteed to be stringshared.
382 *
383 * @param[in] obj The object.
384 *
385 * @return A stringshared internal string with the current title, or @c null on
386 * failure.
387 *
388 * @ingroup Elm_Web
389 */
390EOAPI Eina_Stringshare *elm_obj_web_title_get(const Eo *obj) EINA_WARN_UNUSED_RESULT;
391
392/**
393 * @brief Jumps the given number of steps in the browsing history.
394 *
395 * The @c steps value can be a negative integer to back in history, or a
396 * positive to move forward.
397 *
398 * @param[in] obj The object.
399 * @param[in] steps The number of steps to jump.
400 *
401 * @return @c true on success, @c false on error or if not enough history
402 * exists to jump the given number of steps
403 *
404 * @ingroup Elm_Web
405 */
406EOAPI Eina_Bool elm_obj_web_navigate(Eo *obj, int steps);
407
408/**
409 * @brief Goes back one step in the browsing history.
410 *
411 * This is equivalent to calling elm_web_object_navigate(obj, -1);
412 *
413 * @param[in] obj The object.
414 *
415 * @return @c true on success, @c false otherwise
416 *
417 * @ingroup Elm_Web
418 */
419EOAPI Eina_Bool elm_obj_web_back(Eo *obj);
420
421/**
422 * @brief Loads the specified @c html string as the content of the web object.
423 *
424 * External objects such as stylesheets or images referenced in the HTML
425 * document are located relative to @c base_url.
426 *
427 * If an @c unreachable_url is passed it is used as the url for the loaded
428 * content. This is typically used to display error pages for a failed load.
429 *
430 * @param[in] obj The object.
431 * @param[in] html HTML data to load.
432 * @param[in] base_url Base URL used for relative paths to external objects
433 * (optional).
434 * @param[in] unreachable_url URL that could not be reached (optional).
435 *
436 * @return @c true on success, @c false otherwise
437 *
438 * @since 1.9
439 *
440 * @ingroup Elm_Web
441 */
442EOAPI Eina_Bool elm_obj_web_html_string_load(Eo *obj, const char *html, const char *base_url, const char *unreachable_url);
443
444/**
445 * @brief Searches the given string in a document.
446 *
447 * @param[in] obj The object.
448 * @param[in] string String to search.
449 * @param[in] case_sensitive If search should be case sensitive or not.
450 * @param[in] forward If search is from cursor and on or backwards.
451 * @param[in] wrap If search should wrap at the end.
452 *
453 * @return @c true if the given string was found, @c false if not or failure.
454 *
455 * @ingroup Elm_Web
456 */
457EOAPI Eina_Bool elm_obj_web_text_search(const Eo *obj, const char *string, Eina_Bool case_sensitive, Eina_Bool forward, Eina_Bool wrap);
458
459/**
460 * @brief Dismisses an open dropdown popup
461 *
462 * When the popup from a dropdown widget is to be dismissed, either after
463 * selecting an option or to cancel it, this function must be called, which
464 * will later emit an "popup,willdelete" signal to notify the user that any
465 * memory and objects related to this popup can be freed.
466 *
467 * @param[in] obj The object.
468 *
469 * @return @c true if the menu was successfully destroyed, or @c false if there
470 * was no menu to destroy.
471 *
472 * @ingroup Elm_Web
473 */
474EOAPI Eina_Bool elm_obj_web_popup_destroy(Eo *obj);
475
476/**
477 * @brief Shows the given region in the web object.
478 *
479 * @param[in] obj The object.
480 * @param[in] x The x coordinate of the region to show.
481 * @param[in] y The y coordinate of the region to show.
482 * @param[in] w The width of the region to show.
483 * @param[in] h The height of the region to show.
484 *
485 * @ingroup Elm_Web
486 */
487EOAPI void elm_obj_web_region_show(Eo *obj, int x, int y, int w, int h);
488
489/**
490 * @brief Goes forward one step in the browsing history.
491 *
492 * This is equivalent to calling elm_web_object_navigate(obj, 1);
493 *
494 * See also @ref elm_obj_web_history_enabled_set,
495 * @ref elm_obj_web_forward_possible_get, @ref elm_obj_web_back,
496 * @ref elm_obj_web_navigate.
497 *
498 * @param[in] obj The object.
499 *
500 * @return @c true on success, @c false otherwise.
501 *
502 * @ingroup Elm_Web
503 */
504EOAPI Eina_Bool elm_obj_web_forward(Eo *obj);
505
506/**
507 * @brief Marks matches of the given string in a document.
508 *
509 * @param[in] obj The object.
510 * @param[in] string String to match.
511 * @param[in] case_sensitive If match should be case sensitive or not.
512 * @param[in] highlight If matches should be highlighted.
513 * @param[in] limit Maximum amount of matches, or zero to unlimited.
514 *
515 * @return Number of matched @c string.
516 *
517 * @ingroup Elm_Web
518 */
519EOAPI unsigned int elm_obj_web_text_matches_mark(Eo *obj, const char *string, Eina_Bool case_sensitive, Eina_Bool highlight, unsigned int limit);
520
521/**
522 * @brief Brings in the region to the visible area.
523 *
524 * Like @ref elm_obj_web_region_show, but it animates the scrolling of the
525 * object to show the area.
526 *
527 * @param[in] obj The object.
528 * @param[in] x The x coordinate of the region to show.
529 * @param[in] y The y coordinate of the region to show.
530 * @param[in] w The width of the region to show.
531 * @param[in] h The height of the region to show.
532 *
533 * @ingroup Elm_Web
534 */
535EOAPI void elm_obj_web_region_bring_in(Eo *obj, int x, int y, int w, int h);
536
537/**
538 * @brief Stops loading the current page.
539 *
540 * Cancels the loading of the current page in the web object. This will cause a
541 * "load,error" signal to be emitted, with the is_cancellation flag set to
542 * @c true.
543 *
544 * @param[in] obj The object.
545 *
546 * @return @c true if the cancel was successful, @c false otherwise.
547 *
548 * @ingroup Elm_Web
549 */
550EOAPI Eina_Bool elm_obj_web_stop(Eo *obj);
551
552/**
553 * @brief Queries whether it's possible to jump the given number of steps.
554 *
555 * The @c steps value can be a negative integer to back in history, or positive
556 * to move forward.
557 *
558 * @param[in] obj The object.
559 * @param[in] steps The number of steps to check for.
560 *
561 * @return @c true if enough history exists to perform the given jump, @c false
562 * otherwise.
563 *
564 * @ingroup Elm_Web
565 */
566EOAPI Eina_Bool elm_obj_web_navigate_possible_get(Eo *obj, int steps);
567
568/**
569 * @brief Requests a reload of the current document, avoiding any existing
570 * caches.
571 *
572 * @param[in] obj The object.
573 *
574 * @return @c true on success, @c false otherwise.
575 *
576 * @ingroup Elm_Web
577 */
578EOAPI Eina_Bool elm_obj_web_reload_full(Eo *obj);
579
580/**
581 * @brief Clears all marked matches in the document.
582 *
583 * @param[in] obj The object.
584 *
585 * @return @c true on success, @c false otherwise.
586 *
587 * @ingroup Elm_Web
588 */
589EOAPI Eina_Bool elm_obj_web_text_matches_unmark_all(Eo *obj);
590
591/**
592 * @brief Requests a reload of the current document in the object.
593 *
594 * @param[in] obj The object.
595 *
596 * @return @c true on success, @c false otherwise.
597 *
598 * @ingroup Elm_Web
599 */
600EOAPI Eina_Bool elm_obj_web_reload(Eo *obj);
601
602#endif
diff --git a/src/lib/elementary/elm_web_eo.legacy.c b/src/lib/elementary/elm_web_eo.legacy.c
new file mode 100644
index 0000000..a589988
--- /dev/null
+++ b/src/lib/elementary/elm_web_eo.legacy.c
@@ -0,0 +1,246 @@
1
2EAPI Eina_Bool
3elm_web_text_matches_highlight_set(Elm_Web *obj, Eina_Bool highlight)
4{
5 return elm_obj_web_text_matches_highlight_set(obj, highlight);
6}
7
8EAPI Eina_Bool
9elm_web_text_matches_highlight_get(const Elm_Web *obj)
10{
11 return elm_obj_web_text_matches_highlight_get(obj);
12}
13
14EAPI void
15elm_web_useragent_set(Elm_Web *obj, const char *user_agent)
16{
17 elm_obj_web_useragent_set(obj, user_agent);
18}
19
20EAPI const char *
21elm_web_useragent_get(const Elm_Web *obj)
22{
23 return elm_obj_web_useragent_get(obj);
24}
25
26EAPI Eina_Bool
27elm_web_url_set(Elm_Web *obj, const char *url)
28{
29 return elm_obj_web_url_set(obj, url);
30}
31
32EAPI const char *
33elm_web_url_get(const Elm_Web *obj)
34{
35 return elm_obj_web_url_get(obj);
36}
37
38EAPI void
39elm_web_bg_color_set(Elm_Web *obj, int r, int g, int b, int a)
40{
41 elm_obj_web_bg_color_set(obj, r, g, b, a);
42}
43
44EAPI void
45elm_web_bg_color_get(const Elm_Web *obj, int *r, int *g, int *b, int *a)
46{
47 elm_obj_web_bg_color_get(obj, r, g, b, a);
48}
49
50EAPI void
51elm_web_inwin_mode_set(Elm_Web *obj, Eina_Bool value)
52{
53 elm_obj_web_inwin_mode_set(obj, value);
54}
55
56EAPI Eina_Bool
57elm_web_inwin_mode_get(const Elm_Web *obj)
58{
59 return elm_obj_web_inwin_mode_get(obj);
60}
61
62EAPI void
63elm_web_tab_propagate_set(Elm_Web *obj, Eina_Bool propagate)
64{
65 elm_obj_web_tab_propagate_set(obj, propagate);
66}
67
68EAPI Eina_Bool
69elm_web_tab_propagate_get(const Elm_Web *obj)
70{
71 return elm_obj_web_tab_propagate_get(obj);
72}
73
74EAPI void
75elm_web_history_enabled_set(Elm_Web *obj, Eina_Bool enable)
76{
77 elm_obj_web_history_enabled_set(obj, enable);
78}
79
80EAPI Eina_Bool
81elm_web_history_enabled_get(const Elm_Web *obj)
82{
83 return elm_obj_web_history_enabled_get(obj);
84}
85
86EAPI void
87elm_web_console_message_hook_set(Elm_Web *obj, Elm_Web_Console_Message func, void *data)
88{
89 elm_obj_web_console_message_hook_set(obj, func, data);
90}
91
92EAPI void
93elm_web_window_create_hook_set(Elm_Web *obj, Elm_Web_Window_Open func, void *data)
94{
95 elm_obj_web_window_create_hook_set(obj, func, data);
96}
97
98EAPI void
99elm_web_dialog_file_selector_hook_set(Elm_Web *obj, Elm_Web_Dialog_File_Selector func, void *data)
100{
101 elm_obj_web_dialog_file_selector_hook_set(obj, func, data);
102}
103
104EAPI void
105elm_web_dialog_confirm_hook_set(Elm_Web *obj, Elm_Web_Dialog_Confirm func, void *data)
106{
107 elm_obj_web_dialog_confirm_hook_set(obj, func, data);
108}
109
110EAPI void
111elm_web_popup_selected_set(Elm_Web *obj, int idx)
112{
113 elm_obj_web_popup_selected_set(obj, idx);
114}
115
116EAPI void
117elm_web_dialog_prompt_hook_set(Elm_Web *obj, Elm_Web_Dialog_Prompt func, void *data)
118{
119 elm_obj_web_dialog_prompt_hook_set(obj, func, data);
120}
121
122EAPI void
123elm_web_dialog_alert_hook_set(Elm_Web *obj, Elm_Web_Dialog_Alert func, void *data)
124{
125 elm_obj_web_dialog_alert_hook_set(obj, func, data);
126}
127
128EAPI Eina_Bool
129elm_web_forward_possible_get(const Elm_Web *obj)
130{
131 return elm_obj_web_forward_possible_get(obj);
132}
133
134EAPI Efl_Canvas_Object *
135elm_web_webkit_view_get(const Elm_Web *obj)
136{
137 return elm_obj_web_webkit_view_get(obj);
138}
139
140EAPI Eina_Bool
141elm_web_back_possible_get(const Elm_Web *obj)
142{
143 return elm_obj_web_back_possible_get(obj);
144}
145
146EAPI double
147elm_web_load_progress_get(const Elm_Web *obj)
148{
149 return elm_obj_web_load_progress_get(obj);
150}
151
152EAPI char *
153elm_web_selection_get(const Elm_Web *obj)
154{
155 return elm_obj_web_selection_get(obj);
156}
157
158EAPI Eina_Stringshare *
159elm_web_title_get(const Elm_Web *obj)
160{
161 return elm_obj_web_title_get(obj);
162}
163
164EAPI Eina_Bool
165elm_web_navigate(Elm_Web *obj, int steps)
166{
167 return elm_obj_web_navigate(obj, steps);
168}
169
170EAPI Eina_Bool
171elm_web_back(Elm_Web *obj)
172{
173 return elm_obj_web_back(obj);
174}
175
176EAPI Eina_Bool
177elm_web_html_string_load(Elm_Web *obj, const char *html, const char *base_url, const char *unreachable_url)
178{
179 return elm_obj_web_html_string_load(obj, html, base_url, unreachable_url);
180}
181
182EAPI Eina_Bool
183elm_web_text_search(const Elm_Web *obj, const char *string, Eina_Bool case_sensitive, Eina_Bool forward, Eina_Bool wrap)
184{
185 return elm_obj_web_text_search(obj, string, case_sensitive, forward, wrap);
186}
187
188EAPI Eina_Bool
189elm_web_popup_destroy(Elm_Web *obj)
190{
191 return elm_obj_web_popup_destroy(obj);
192}
193
194EAPI void
195elm_web_region_show(Elm_Web *obj, int x, int y, int w, int h)
196{
197 elm_obj_web_region_show(obj, x, y, w, h);
198}
199
200EAPI Eina_Bool
201elm_web_forward(Elm_Web *obj)
202{
203 return elm_obj_web_forward(obj);
204}
205
206EAPI unsigned int
207elm_web_text_matches_mark(Elm_Web *obj, const char *string, Eina_Bool case_sensitive, Eina_Bool highlight, unsigned int limit)
208{
209 return elm_obj_web_text_matches_mark(obj, string, case_sensitive, highlight, limit);
210}
211
212EAPI void
213elm_web_region_bring_in(Elm_Web *obj, int x, int y, int w, int h)
214{
215 elm_obj_web_region_bring_in(obj, x, y, w, h);
216}
217
218EAPI Eina_Bool
219elm_web_stop(Elm_Web *obj)
220{
221 return elm_obj_web_stop(obj);
222}
223
224EAPI Eina_Bool
225elm_web_navigate_possible_get(Elm_Web *obj, int steps)
226{
227 return elm_obj_web_navigate_possible_get(obj, steps);
228}
229
230EAPI Eina_Bool
231elm_web_reload_full(Elm_Web *obj)
232{
233 return elm_obj_web_reload_full(obj);
234}
235
236EAPI Eina_Bool
237elm_web_text_matches_unmark_all(Elm_Web *obj)
238{
239 return elm_obj_web_text_matches_unmark_all(obj);
240}
241
242EAPI Eina_Bool
243elm_web_reload(Elm_Web *obj)
244{
245 return elm_obj_web_reload(obj);
246}
diff --git a/src/lib/elementary/elm_web_eo.legacy.h b/src/lib/elementary/elm_web_eo.legacy.h
new file mode 100644
index 0000000..a872707
--- /dev/null
+++ b/src/lib/elementary/elm_web_eo.legacy.h
@@ -0,0 +1,594 @@
1#ifndef _ELM_WEB_EO_LEGACY_H_
2#define _ELM_WEB_EO_LEGACY_H_
3
4#ifndef _ELM_WEB_EO_CLASS_TYPE
5#define _ELM_WEB_EO_CLASS_TYPE
6
7typedef Eo Elm_Web;
8
9#endif
10
11#ifndef _ELM_WEB_EO_TYPES
12#define _ELM_WEB_EO_TYPES
13
14
15#endif
16
17/**
18 * @brief Sets whether to highlight the matched marks.
19 *
20 * If enabled, marks set with @ref elm_web_text_matches_mark will be
21 * highlighted.
22 *
23 * @param[in] obj The object.
24 * @param[in] highlight Whether to highlight the marks or not.
25 *
26 * @return @c true on success, @c false otherwise
27 *
28 * @ingroup Elm_Web_Group
29 */
30EAPI Eina_Bool elm_web_text_matches_highlight_set(Elm_Web *obj, Eina_Bool highlight);
31
32/**
33 * @brief Get whether highlighting marks is enabled.
34 *
35 * @param[in] obj The object.
36 *
37 * @return Whether to highlight the marks or not.
38 *
39 * @ingroup Elm_Web_Group
40 */
41EAPI Eina_Bool elm_web_text_matches_highlight_get(const Elm_Web *obj);
42
43/**
44 * @brief Change useragent of a elm_web object.
45 *
46 * @param[in] obj The object.
47 * @param[in] user_agent String for useragent.
48 *
49 * @ingroup Elm_Web_Group
50 */
51EAPI void elm_web_useragent_set(Elm_Web *obj, const char *user_agent);
52
53/**
54 * @brief Return current useragent of elm_web object.
55 *
56 * @param[in] obj The object.
57 *
58 * @return String for useragent.
59 *
60 * @ingroup Elm_Web_Group
61 */
62EAPI const char *elm_web_useragent_get(const Elm_Web *obj);
63
64/**
65 * @brief Sets the URL for the web object.
66 *
67 * It must be a full URL, with resource included, in the form
68 * http://www.enlightenment.org or file:///tmp/something.html
69 *
70 * @param[in] obj The object.
71 * @param[in] url The URL to set.
72 *
73 * @return @c true on success, @c false otherwise
74 *
75 * @ingroup Elm_Web_Group
76 */
77EAPI Eina_Bool elm_web_url_set(Elm_Web *obj, const char *url);
78
79/**
80 * @brief Get the current URL for the object.
81 *
82 * The returned string must not be freed and is guaranteed to be stringshared.
83 *
84 * @param[in] obj The object.
85 *
86 * @return The URL to set.
87 *
88 * @ingroup Elm_Web_Group
89 */
90EAPI const char *elm_web_url_get(const Elm_Web *obj);
91
92/**
93 * @brief Sets the background color to be used by the web object.
94 *
95 * This is the color that will be used by default when the loaded page does not
96 * set it's own. Color values are pre-multiplied.
97 *
98 * @param[in] obj The object.
99 * @param[in] r Red component.
100 * @param[in] g Green component.
101 * @param[in] b Blue component.
102 * @param[in] a Alpha component.
103 *
104 * @ingroup Elm_Web_Group
105 */
106EAPI void elm_web_bg_color_set(Elm_Web *obj, int r, int g, int b, int a);
107
108/**
109 * @brief Get the background color to be used by the web object.
110 *
111 * This is the color that will be used by default when the loaded page does not
112 * set it's own. Color values are pre-multiplied.
113 *
114 * @param[in] obj The object.
115 * @param[out] r Red component.
116 * @param[out] g Green component.
117 * @param[out] b Blue component.
118 * @param[out] a Alpha component.
119 *
120 * @ingroup Elm_Web_Group
121 */
122EAPI void elm_web_bg_color_get(const Elm_Web *obj, int *r, int *g, int *b, int *a);
123
124/**
125 * @brief Sets the default dialogs to use an Inwin instead of a normal window.
126 *
127 * If set, then the default implementation for the JavaScript dialogs and file
128 * selector will be opened in an Inwin. Otherwise they will use a normal
129 * separated window.
130 *
131 * @param[in] obj The object.
132 * @param[in] value @c true if dialog will be opened as Inwin, @c false
133 * otherwise
134 *
135 * @ingroup Elm_Web_Group
136 */
137EAPI void elm_web_inwin_mode_set(Elm_Web *obj, Eina_Bool value);
138
139/**
140 * @brief Get whether Inwin mode is set for the current object.
141 *
142 * @param[in] obj The object.
143 *
144 * @return @c true if dialog will be opened as Inwin, @c false otherwise
145 *
146 * @ingroup Elm_Web_Group
147 */
148EAPI Eina_Bool elm_web_inwin_mode_get(const Elm_Web *obj);
149
150/**
151 * @brief Sets whether to use tab propagation.
152 *
153 * If tab propagation is enabled, whenever the user presses the Tab key,
154 * Elementary will handle it and switch focus to the next widget. The default
155 * value is disabled, where WebKit will handle the Tab key to cycle focus
156 * though its internal objects, jumping to the next widget only when that cycle
157 * ends.
158 *
159 * @param[in] obj The object.
160 * @param[in] propagate Whether to propagate Tab keys to Elementary or not.
161 *
162 * @ingroup Elm_Web_Group
163 */
164EAPI void elm_web_tab_propagate_set(Elm_Web *obj, Eina_Bool propagate);
165
166/**
167 * @brief Get the status of the tab propagation.
168 *
169 * @param[in] obj The object.
170 *
171 * @return Whether to propagate Tab keys to Elementary or not.
172 *
173 * @ingroup Elm_Web_Group
174 */
175EAPI Eina_Bool elm_web_tab_propagate_get(const Elm_Web *obj);
176
177/**
178 * @brief Enables or disables the browsing history.
179 *
180 * @param[in] obj The object.
181 * @param[in] enable Whether to enable or disable the browsing history.
182 *
183 * @ingroup Elm_Web_Group
184 */
185EAPI void elm_web_history_enabled_set(Elm_Web *obj, Eina_Bool enable);
186
187/**
188 * @brief Get whether browsing history is enabled for the given object.
189 *
190 * @param[in] obj The object.
191 *
192 * @return Whether to enable or disable the browsing history.
193 *
194 * @ingroup Elm_Web_Group
195 */
196EAPI Eina_Bool elm_web_history_enabled_get(const Elm_Web *obj);
197
198/**
199 * @brief Sets the function to call when a console message is emitted from JS.
200 *
201 * This hook will be called when a console message is emitted from JavaScript.
202 * There is no default implementation for this feature.
203 *
204 * @param[in] obj The object.
205 * @param[in] func The callback function to be used.
206 * @param[in] data User data.
207 *
208 * @ingroup Elm_Web_Group
209 */
210EAPI void elm_web_console_message_hook_set(Elm_Web *obj, Elm_Web_Console_Message func, void *data);
211
212/**
213 * @brief Sets the function to call when a new window is requested.
214 *
215 * This hook will be called when a request to create a new window is issued
216 * from the web page loaded. There is no default implementation for this
217 * feature, so leaving this unset or passing @c null in @c func will prevent
218 * new windows from opening.
219 *
220 * @param[in] obj The object.
221 * @param[in] func The hook function to be called when a window is requested.
222 * @param[in] data User data.
223 *
224 * @ingroup Elm_Web_Group
225 */
226EAPI void elm_web_window_create_hook_set(Elm_Web *obj, Elm_Web_Window_Open func, void *data);
227
228/**
229 * @brief Sets the function to call when an file selector dialog.
230 *
231 * This hook will be called when a JavaScript file selector dialog is
232 * requested. If no function is set or @c null is passed in @c func, the
233 * default implementation will take place.
234 *
235 * @param[in] obj The object.
236 * @param[in] func The callback function to be used.
237 * @param[in] data User data.
238 *
239 * @ingroup Elm_Web_Group
240 */
241EAPI void elm_web_dialog_file_selector_hook_set(Elm_Web *obj, Elm_Web_Dialog_File_Selector func, void *data);
242
243/**
244 * @brief Sets the function to call when an confirm dialog.
245 *
246 * This hook will be called when a JavaScript confirm dialog is requested. If
247 * no function is set or @c null is passed in @c func, the default
248 * implementation will take place.
249 *
250 * @param[in] obj The object.
251 * @param[in] func The callback function to be used.
252 * @param[in] data User data.
253 *
254 * @ingroup Elm_Web_Group
255 */
256EAPI void elm_web_dialog_confirm_hook_set(Elm_Web *obj, Elm_Web_Dialog_Confirm func, void *data);
257
258/**
259 * @brief Tells the web object which index in the currently open popup was
260 * selected.
261 *
262 * When the user handles the popup creation from the "popup,created" signal, it
263 * needs to tell the web object which item was selected by calling this
264 * function with the index corresponding to the item.
265 *
266 * @param[in] obj The object.
267 * @param[in] idx The index selected.
268 *
269 * @ingroup Elm_Web_Group
270 */
271EAPI void elm_web_popup_selected_set(Elm_Web *obj, int idx);
272
273/**
274 * @brief Sets the function to call when an prompt dialog.
275 *
276 * This hook will be called when a JavaScript prompt dialog is requested. If no
277 * function is set or @c null is passed in @c func, the default implementation
278 * will take place.
279 *
280 * @param[in] obj The object.
281 * @param[in] func The callback function to be used.
282 * @param[in] data User data.
283 *
284 * @ingroup Elm_Web_Group
285 */
286EAPI void elm_web_dialog_prompt_hook_set(Elm_Web *obj, Elm_Web_Dialog_Prompt func, void *data);
287
288/**
289 * @brief Sets the function to call when an alert dialog.
290 *
291 * This hook will be called when a JavaScript alert dialog is requested. If no
292 * function is set or @c null is passed in @c func, the default implementation
293 * will take place.
294 *
295 * @param[in] obj The object.
296 * @param[in] func Callback function to be used.
297 * @param[in] data User data.
298 *
299 * @ingroup Elm_Web_Group
300 */
301EAPI void elm_web_dialog_alert_hook_set(Elm_Web *obj, Elm_Web_Dialog_Alert func, void *data);
302
303/**
304 * @brief Queries whether it's possible to go forward in history.
305 *
306 * @param[in] obj The object.
307 *
308 * @return @c true if it is possible to go forward, @c false otherwise
309 *
310 * @ingroup Elm_Web_Group
311 */
312EAPI Eina_Bool elm_web_forward_possible_get(const Elm_Web *obj);
313
314/**
315 * @brief Get internal ewk_view object from web object.
316 *
317 * Elementary may not provide some low level features of EWebKit, instead of
318 * cluttering the API with proxy methods we opted to return the internal
319 * reference. Be careful using it as it may interfere with elm_web behavior.
320 *
321 * @param[in] obj The object.
322 *
323 * @return The internal ewk_view object or @c null if it does not exist.
324 * (Failure to create or Elementary compiled without ewebkit)
325 *
326 * @ingroup Elm_Web_Group
327 */
328EAPI Efl_Canvas_Object *elm_web_webkit_view_get(const Elm_Web *obj);
329
330/**
331 * @brief Queries whether it's possible to go back in history.
332 *
333 * @param[in] obj The object.
334 *
335 * @return @c true if it is possible to go back, @c false otherwise
336 *
337 * @ingroup Elm_Web_Group
338 */
339EAPI Eina_Bool elm_web_back_possible_get(const Elm_Web *obj);
340
341/**
342 * @brief Get the overall loading progress of the page.
343 *
344 * Returns the estimated loading progress of the page, with a value between 0.0
345 * and 1.0. This is an estimated progress accounting for all the frames
346 * included in the page.
347 *
348 * @param[in] obj The object.
349 *
350 * @return A value between 0.0 and 1.0 indicating the progress, or -1.0 on
351 * failure.
352 *
353 * @ingroup Elm_Web_Group
354 */
355EAPI double elm_web_load_progress_get(const Elm_Web *obj);
356
357/**
358 * @brief Get a copy of the currently selected text.
359 *
360 * The string returned must be freed by the user when it's done with it.
361 *
362 * @param[in] obj The object.
363 *
364 * @return A newly allocated string, or @c null if nothing is selected or an
365 * error occurred.
366 *
367 * @ingroup Elm_Web_Group
368 */
369EAPI char *elm_web_selection_get(const Elm_Web *obj) EINA_WARN_UNUSED_RESULT;
370
371/**
372 * @brief Get the current title.
373 *
374 * The returned string must not be freed and is guaranteed to be stringshared.
375 *
376 * @param[in] obj The object.
377 *
378 * @return A stringshared internal string with the current title, or @c null on
379 * failure.
380 *
381 * @ingroup Elm_Web_Group
382 */
383EAPI Eina_Stringshare *elm_web_title_get(const Elm_Web *obj) EINA_WARN_UNUSED_RESULT;
384
385/**
386 * @brief Jumps the given number of steps in the browsing history.
387 *
388 * The @c steps value can be a negative integer to back in history, or a
389 * positive to move forward.
390 *
391 * @param[in] obj The object.
392 * @param[in] steps The number of steps to jump.
393 *
394 * @return @c true on success, @c false on error or if not enough history
395 * exists to jump the given number of steps
396 *
397 * @ingroup Elm_Web_Group
398 */
399EAPI Eina_Bool elm_web_navigate(Elm_Web *obj, int steps);
400
401/**
402 * @brief Goes back one step in the browsing history.
403 *
404 * This is equivalent to calling elm_web_object_navigate(obj, -1);
405 *
406 * @param[in] obj The object.
407 *
408 * @return @c true on success, @c false otherwise
409 *
410 * @ingroup Elm_Web_Group
411 */
412EAPI Eina_Bool elm_web_back(Elm_Web *obj);
413
414/**
415 * @brief Loads the specified @c html string as the content of the web object.
416 *
417 * External objects such as stylesheets or images referenced in the HTML
418 * document are located relative to @c base_url.
419 *
420 * If an @c unreachable_url is passed it is used as the url for the loaded
421 * content. This is typically used to display error pages for a failed load.
422 *
423 * @param[in] obj The object.
424 * @param[in] html HTML data to load.
425 * @param[in] base_url Base URL used for relative paths to external objects
426 * (optional).
427 * @param[in] unreachable_url URL that could not be reached (optional).
428 *
429 * @return @c true on success, @c false otherwise
430 *
431 * @since 1.9
432 *
433 * @ingroup Elm_Web_Group
434 */
435EAPI Eina_Bool elm_web_html_string_load(Elm_Web *obj, const char *html, const char *base_url, const char *unreachable_url);
436
437/**
438 * @brief Searches the given string in a document.
439 *
440 * @param[in] obj The object.
441 * @param[in] string String to search.
442 * @param[in] case_sensitive If search should be case sensitive or not.
443 * @param[in] forward If search is from cursor and on or backwards.
444 * @param[in] wrap If search should wrap at the end.
445 *
446 * @return @c true if the given string was found, @c false if not or failure.
447 *
448 * @ingroup Elm_Web_Group
449 */
450EAPI Eina_Bool elm_web_text_search(const Elm_Web *obj, const char *string, Eina_Bool case_sensitive, Eina_Bool forward, Eina_Bool wrap);
451
452/**
453 * @brief Dismisses an open dropdown popup
454 *
455 * When the popup from a dropdown widget is to be dismissed, either after
456 * selecting an option or to cancel it, this function must be called, which
457 * will later emit an "popup,willdelete" signal to notify the user that any
458 * memory and objects related to this popup can be freed.
459 *
460 * @param[in] obj The object.
461 *
462 * @return @c true if the menu was successfully destroyed, or @c false if there
463 * was no menu to destroy.
464 *
465 * @ingroup Elm_Web_Group
466 */
467EAPI Eina_Bool elm_web_popup_destroy(Elm_Web *obj);
468
469/**
470 * @brief Shows the given region in the web object.
471 *
472 * @param[in] obj The object.
473 * @param[in] x The x coordinate of the region to show.
474 * @param[in] y The y coordinate of the region to show.
475 * @param[in] w The width of the region to show.
476 * @param[in] h The height of the region to show.
477 *
478 * @ingroup Elm_Web_Group
479 */
480EAPI void elm_web_region_show(Elm_Web *obj, int x, int y, int w, int h);
481
482/**
483 * @brief Goes forward one step in the browsing history.
484 *
485 * This is equivalent to calling elm_web_object_navigate(obj, 1);
486 *
487 * See also @ref elm_web_history_enabled_set,
488 * @ref elm_web_forward_possible_get, @ref elm_web_back, @ref elm_web_navigate.
489 *
490 * @param[in] obj The object.
491 *
492 * @return @c true on success, @c false otherwise.
493 *
494 * @ingroup Elm_Web_Group
495 */
496EAPI Eina_Bool elm_web_forward(Elm_Web *obj);
497
498/**
499 * @brief Marks matches of the given string in a document.
500 *
501 * @param[in] obj The object.
502 * @param[in] string String to match.
503 * @param[in] case_sensitive If match should be case sensitive or not.
504 * @param[in] highlight If matches should be highlighted.
505 * @param[in] limit Maximum amount of matches, or zero to unlimited.
506 *
507 * @return Number of matched @c string.
508 *
509 * @ingroup Elm_Web_Group
510 */
511EAPI unsigned int elm_web_text_matches_mark(Elm_Web *obj, const char *string, Eina_Bool case_sensitive, Eina_Bool highlight, unsigned int limit);
512
513/**
514 * @brief Brings in the region to the visible area.
515 *
516 * Like @ref elm_web_region_show, but it animates the scrolling of the object
517 * to show the area.
518 *
519 * @param[in] obj The object.
520 * @param[in] x The x coordinate of the region to show.
521 * @param[in] y The y coordinate of the region to show.
522 * @param[in] w The width of the region to show.
523 * @param[in] h The height of the region to show.
524 *
525 * @ingroup Elm_Web_Group
526 */
527EAPI void elm_web_region_bring_in(Elm_Web *obj, int x, int y, int w, int h);
528
529/**
530 * @brief Stops loading the current page.
531 *
532 * Cancels the loading of the current page in the web object. This will cause a
533 * "load,error" signal to be emitted, with the is_cancellation flag set to
534 * @c true.
535 *
536 * @param[in] obj The object.
537 *
538 * @return @c true if the cancel was successful, @c false otherwise.
539 *
540 * @ingroup Elm_Web_Group
541 */
542EAPI Eina_Bool elm_web_stop(Elm_Web *obj);
543
544/**
545 * @brief Queries whether it's possible to jump the given number of steps.
546 *
547 * The @c steps value can be a negative integer to back in history, or positive
548 * to move forward.
549 *
550 * @param[in] obj The object.
551 * @param[in] steps The number of steps to check for.
552 *
553 * @return @c true if enough history exists to perform the given jump, @c false
554 * otherwise.
555 *
556 * @ingroup Elm_Web_Group
557 */
558EAPI Eina_Bool elm_web_navigate_possible_get(Elm_Web *obj, int steps);
559
560/**
561 * @brief Requests a reload of the current document, avoiding any existing
562 * caches.
563 *
564 * @param[in] obj The object.
565 *
566 * @return @c true on success, @c false otherwise.
567 *
568 * @ingroup Elm_Web_Group
569 */
570EAPI Eina_Bool elm_web_reload_full(Elm_Web *obj);
571
572/**
573 * @brief Clears all marked matches in the document.
574 *
575 * @param[in] obj The object.
576 *
577 * @return @c true on success, @c false otherwise.
578 *
579 * @ingroup Elm_Web_Group
580 */
581EAPI Eina_Bool elm_web_text_matches_unmark_all(Elm_Web *obj);
582
583/**
584 * @brief Requests a reload of the current document in the object.
585 *
586 * @param[in] obj The object.
587 *
588 * @return @c true on success, @c false otherwise.
589 *
590 * @ingroup Elm_Web_Group
591 */
592EAPI Eina_Bool elm_web_reload(Elm_Web *obj);
593
594#endif
diff --git a/src/lib/elementary/elm_web_legacy.h b/src/lib/elementary/elm_web_legacy.h
index 29588ed..ea6f18c 100644
--- a/src/lib/elementary/elm_web_legacy.h
+++ b/src/lib/elementary/elm_web_legacy.h
@@ -126,4 +126,4 @@ EAPI void elm_web_zoom_set(Evas_Object *obj, double zoom);
126 * @ingroup Elm_Web 126 * @ingroup Elm_Web
127 */ 127 */
128EAPI double elm_web_zoom_get(const Evas_Object *obj); 128EAPI double elm_web_zoom_get(const Evas_Object *obj);
129#include "elm_web.eo.legacy.h" 129#include "elm_web_eo.legacy.h"
diff --git a/src/lib/elementary/meson.build b/src/lib/elementary/meson.build
index ebd8a6c..88583b3 100644
--- a/src/lib/elementary/meson.build
+++ b/src/lib/elementary/meson.build
@@ -176,7 +176,6 @@ pub_eo_files = [
176 'elm_atspi_bridge.eo', 176 'elm_atspi_bridge.eo',
177 'elm_atspi_app_object.eo', 177 'elm_atspi_app_object.eo',
178 'efl_ui_image_zoomable_pan.eo', 178 'efl_ui_image_zoomable_pan.eo',
179 'elm_web.eo',
180 'elm_widget_item.eo', 179 'elm_widget_item.eo',
181 'efl_ui_text_part.eo', 180 'efl_ui_text_part.eo',
182 'efl_ui_caching_factory.eo', 181 'efl_ui_caching_factory.eo',
@@ -806,6 +805,8 @@ elementary_pub_headers = [
806 'elm_view_form_eo.legacy.h', 805 'elm_view_form_eo.legacy.h',
807 'elm_view_list_eo.h', 806 'elm_view_list_eo.h',
808 'elm_view_list_eo.legacy.h', 807 'elm_view_list_eo.legacy.h',
808 'elm_web_eo.h',
809 'elm_web_eo.legacy.h',
809] 810]
810 811
811elementary_header_src = [ 812elementary_header_src = [
diff --git a/src/modules/elementary/web/none/elm_web_none.c b/src/modules/elementary/web/none/elm_web_none.c
index 93b1d79..6ac2650 100644
--- a/src/modules/elementary/web/none/elm_web_none.c
+++ b/src/modules/elementary/web/none/elm_web_none.c
@@ -12,7 +12,7 @@
12#define ELEMENTARY_BUILD 12#define ELEMENTARY_BUILD
13#undef ELM_MODULE_HELPER_H 13#undef ELM_MODULE_HELPER_H
14#include "elm_module_helper.h" 14#include "elm_module_helper.h"
15#include "elm_web_none.eo.h" 15#include "elm_web_none_eo.h"
16 16
17#define MY_CLASS ELM_WEB_CLASS 17#define MY_CLASS ELM_WEB_CLASS
18 18
@@ -365,4 +365,4 @@ ewm_class_get(void)
365#define ELM_WEB_NONE_EXTRA_OPS \ 365#define ELM_WEB_NONE_EXTRA_OPS \
366 EFL_CANVAS_GROUP_ADD_OPS(elm_web_none) 366 EFL_CANVAS_GROUP_ADD_OPS(elm_web_none)
367 367
368#include "elm_web_none.eo.c" 368#include "elm_web_none_eo.c"
diff --git a/src/modules/elementary/web/none/elm_web_none.eo b/src/modules/elementary/web/none/elm_web_none.eo
deleted file mode 100644
index d00d2d6..0000000
--- a/src/modules/elementary/web/none/elm_web_none.eo
+++ /dev/null
@@ -1,42 +0,0 @@
1class Elm.Web.None extends Elm.Web implements Efl.Ui.Legacy
2{
3 [[Elementary web module class]]
4 implements {
5 Elm.Web.tab_propagate { get; set; }
6 Elm.Web.webkit_view { get; }
7 Elm.Web.window_create_hook { set; }
8 Elm.Web.dialog_alert_hook { set; }
9 Elm.Web.dialog_confirm_hook { set; }
10 Elm.Web.dialog_prompt_hook { set; }
11 Elm.Web.dialog_file_selector_hook { set; }
12 Elm.Web.console_message_hook { set; }
13 Elm.Web.useragent { get; set; }
14 Elm.Web.url { get; set; }
15 Elm.Web.html_string_load;
16 Elm.Web.title { get; }
17 Elm.Web.bg_color { get; set; }
18 Elm.Web.selection { get; }
19 Elm.Web.popup_selected { set; }
20 Elm.Web.popup_destroy;
21 Elm.Web.text_search;
22 Elm.Web.text_matches_mark;
23 Elm.Web.text_matches_unmark_all;
24 Elm.Web.text_matches_highlight { get; set; }
25 Elm.Web.load_progress { get; }
26 Elm.Web.stop;
27 Elm.Web.reload;
28 Elm.Web.reload_full;
29 Elm.Web.back;
30 Elm.Web.forward;
31 Elm.Web.navigate;
32 Elm.Web.back_possible { get; }
33 Elm.Web.forward_possible { get; }
34 Elm.Web.navigate_possible_get;
35 Elm.Web.history_enabled { get; set; }
36 Efl.Ui.Zoom.zoom_level { get; set; }
37 Efl.Ui.Zoom.zoom_mode { get; set; }
38 Elm.Web.region_show;
39 Elm.Web.region_bring_in;
40 Elm.Web.inwin_mode { get; set; }
41 }
42}
diff --git a/src/modules/elementary/web/none/elm_web_none_eo.c b/src/modules/elementary/web/none/elm_web_none_eo.c
new file mode 100644
index 0000000..8fd029e
--- /dev/null
+++ b/src/modules/elementary/web/none/elm_web_none_eo.c
@@ -0,0 +1,211 @@
1
2void _elm_web_none_elm_web_tab_propagate_set(Eo *obj, Elm_Web_None_Data *pd, Eina_Bool propagate);
3
4
5Eina_Bool _elm_web_none_elm_web_tab_propagate_get(const Eo *obj, Elm_Web_None_Data *pd);
6
7
8Efl_Canvas_Object *_elm_web_none_elm_web_webkit_view_get(const Eo *obj, Elm_Web_None_Data *pd);
9
10
11void _elm_web_none_elm_web_window_create_hook_set(Eo *obj, Elm_Web_None_Data *pd, Elm_Web_Window_Open func, void *data);
12
13
14void _elm_web_none_elm_web_dialog_alert_hook_set(Eo *obj, Elm_Web_None_Data *pd, Elm_Web_Dialog_Alert func, void *data);
15
16
17void _elm_web_none_elm_web_dialog_confirm_hook_set(Eo *obj, Elm_Web_None_Data *pd, Elm_Web_Dialog_Confirm func, void *data);
18
19
20void _elm_web_none_elm_web_dialog_prompt_hook_set(Eo *obj, Elm_Web_None_Data *pd, Elm_Web_Dialog_Prompt func, void *data);
21
22
23void _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);
24
25
26void _elm_web_none_elm_web_console_message_hook_set(Eo *obj, Elm_Web_None_Data *pd, Elm_Web_Console_Message func, void *data);
27
28
29void _elm_web_none_elm_web_useragent_set(Eo *obj, Elm_Web_None_Data *pd, const char *user_agent);
30
31
32const char *_elm_web_none_elm_web_useragent_get(const Eo *obj, Elm_Web_None_Data *pd);
33
34
35Eina_Bool _elm_web_none_elm_web_url_set(Eo *obj, Elm_Web_None_Data *pd, const char *url);
36
37
38const char *_elm_web_none_elm_web_url_get(const Eo *obj, Elm_Web_None_Data *pd);
39
40
41Eina_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);
42
43
44Eina_Stringshare *_elm_web_none_elm_web_title_get(const Eo *obj, Elm_Web_None_Data *pd);
45
46
47void _elm_web_none_elm_web_bg_color_set(Eo *obj, Elm_Web_None_Data *pd, int r, int g, int b, int a);
48
49
50void _elm_web_none_elm_web_bg_color_get(const Eo *obj, Elm_Web_None_Data *pd, int *r, int *g, int *b, int *a);
51
52
53char *_elm_web_none_elm_web_selection_get(const Eo *obj, Elm_Web_None_Data *pd);
54
55
56void _elm_web_none_elm_web_popup_selected_set(Eo *obj, Elm_Web_None_Data *pd, int idx);
57
58
59Eina_Bool _elm_web_none_elm_web_popup_destroy(Eo *obj, Elm_Web_None_Data *pd);
60
61
62Eina_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);
63
64
65unsigned 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);
66
67
68Eina_Bool _elm_web_none_elm_web_text_matches_unmark_all(Eo *obj, Elm_Web_None_Data *pd);
69
70
71Eina_Bool _elm_web_none_elm_web_text_matches_highlight_set(Eo *obj, Elm_Web_None_Data *pd, Eina_Bool highlight);
72
73
74Eina_Bool _elm_web_none_elm_web_text_matches_highlight_get(const Eo *obj, Elm_Web_None_Data *pd);
75
76
77double _elm_web_none_elm_web_load_progress_get(const Eo *obj, Elm_Web_None_Data *pd);
78
79
80Eina_Bool _elm_web_none_elm_web_stop(Eo *obj, Elm_Web_None_Data *pd);
81
82
83Eina_Bool _elm_web_none_elm_web_reload(Eo *obj, Elm_Web_None_Data *pd);
84
85
86Eina_Bool _elm_web_none_elm_web_reload_full(Eo *obj, Elm_Web_None_Data *pd);
87
88
89Eina_Bool _elm_web_none_elm_web_back(Eo *obj, Elm_Web_None_Data *pd);
90
91
92Eina_Bool _elm_web_none_elm_web_forward(Eo *obj, Elm_Web_None_Data *pd);
93
94
95Eina_Bool _elm_web_none_elm_web_navigate(Eo *obj, Elm_Web_None_Data *pd, int steps);
96
97
98Eina_Bool _elm_web_none_elm_web_back_possible_get(const Eo *obj, Elm_Web_None_Data *pd);
99
100
101Eina_Bool _elm_web_none_elm_web_forward_possible_get(const Eo *obj, Elm_Web_None_Data *pd);
102
103
104Eina_Bool _elm_web_none_elm_web_navigate_possible_get(Eo *obj, Elm_Web_None_Data *pd, int steps);
105
106
107void _elm_web_none_elm_web_history_enabled_set(Eo *obj, Elm_Web_None_Data *pd, Eina_Bool enable);
108
109
110Eina_Bool _elm_web_none_elm_web_history_enabled_get(const Eo *obj, Elm_Web_None_Data *pd);
111
112
113void _elm_web_none_efl_ui_zoom_zoom_level_set(Eo *obj, Elm_Web_None_Data *pd, double zoom);
114
115
116double _elm_web_none_efl_ui_zoom_zoom_level_get(const Eo *obj, Elm_Web_None_Data *pd);
117
118
119void _elm_web_none_efl_ui_zoom_zoom_mode_set(Eo *obj, Elm_Web_None_Data *pd, Efl_Ui_Zoom_Mode mode);
120
121
122Efl_Ui_Zoom_Mode _elm_web_none_efl_ui_zoom_zoom_mode_get(const Eo *obj, Elm_Web_None_Data *pd);
123
124
125void _elm_web_none_elm_web_region_show(Eo *obj, Elm_Web_None_Data *pd, int x, int y, int w, int h);
126
127
128void _elm_web_none_elm_web_region_bring_in(Eo *obj, Elm_Web_None_Data *pd, int x, int y, int w, int h);
129
130
131void _elm_web_none_elm_web_inwin_mode_set(Eo *obj, Elm_Web_None_Data *pd, Eina_Bool value);
132
133
134Eina_Bool _elm_web_none_elm_web_inwin_mode_get(const Eo *obj, Elm_Web_None_Data *pd);
135
136
137static Eina_Bool
138_elm_web_none_class_initializer(Efl_Class *klass)
139{
140 const Efl_Object_Ops *opsp = NULL;
141
142 const Efl_Object_Property_Reflection_Ops *ropsp = NULL;
143
144#ifndef ELM_WEB_NONE_EXTRA_OPS
145#define ELM_WEB_NONE_EXTRA_OPS
146#endif
147
148 EFL_OPS_DEFINE(ops,
149 EFL_OBJECT_OP_FUNC(elm_obj_web_tab_propagate_set, _elm_web_none_elm_web_tab_propagate_set),
150 EFL_OBJECT_OP_FUNC(elm_obj_web_tab_propagate_get, _elm_web_none_elm_web_tab_propagate_get),
151 EFL_OBJECT_OP_FUNC(elm_obj_web_webkit_view_get, _elm_web_none_elm_web_webkit_view_get),
152 EFL_OBJECT_OP_FUNC(elm_obj_web_window_create_hook_set, _elm_web_none_elm_web_window_create_hook_set),
153 EFL_OBJECT_OP_FUNC(elm_obj_web_dialog_alert_hook_set, _elm_web_none_elm_web_dialog_alert_hook_set),
154 EFL_OBJECT_OP_FUNC(elm_obj_web_dialog_confirm_hook_set, _elm_web_none_elm_web_dialog_confirm_hook_set),
155 EFL_OBJECT_OP_FUNC(elm_obj_web_dialog_prompt_hook_set, _elm_web_none_elm_web_dialog_prompt_hook_set),
156 EFL_OBJECT_OP_FUNC(elm_obj_web_dialog_file_selector_hook_set, _elm_web_none_elm_web_dialog_file_selector_hook_set),
157 EFL_OBJECT_OP_FUNC(elm_obj_web_console_message_hook_set, _elm_web_none_elm_web_console_message_hook_set),
158 EFL_OBJECT_OP_FUNC(elm_obj_web_useragent_set, _elm_web_none_elm_web_useragent_set),
159 EFL_OBJECT_OP_FUNC(elm_obj_web_useragent_get, _elm_web_none_elm_web_useragent_get),
160 EFL_OBJECT_OP_FUNC(elm_obj_web_url_set, _elm_web_none_elm_web_url_set),
161 EFL_OBJECT_OP_FUNC(elm_obj_web_url_get, _elm_web_none_elm_web_url_get),
162 EFL_OBJECT_OP_FUNC(elm_obj_web_html_string_load, _elm_web_none_elm_web_html_string_load),
163 EFL_OBJECT_OP_FUNC(elm_obj_web_title_get, _elm_web_none_elm_web_title_get),
164 EFL_OBJECT_OP_FUNC(elm_obj_web_bg_color_set, _elm_web_none_elm_web_bg_color_set),
165 EFL_OBJECT_OP_FUNC(elm_obj_web_bg_color_get, _elm_web_none_elm_web_bg_color_get),
166 EFL_OBJECT_OP_FUNC(elm_obj_web_selection_get, _elm_web_none_elm_web_selection_get),
167 EFL_OBJECT_OP_FUNC(elm_obj_web_popup_selected_set, _elm_web_none_elm_web_popup_selected_set),
168 EFL_OBJECT_OP_FUNC(elm_obj_web_popup_destroy, _elm_web_none_elm_web_popup_destroy),
169 EFL_OBJECT_OP_FUNC(elm_obj_web_text_search, _elm_web_none_elm_web_text_search),
170 EFL_OBJECT_OP_FUNC(elm_obj_web_text_matches_mark, _elm_web_none_elm_web_text_matches_mark),
171 EFL_OBJECT_OP_FUNC(elm_obj_web_text_matches_unmark_all, _elm_web_none_elm_web_text_matches_unmark_all),
172 EFL_OBJECT_OP_FUNC(elm_obj_web_text_matches_highlight_set, _elm_web_none_elm_web_text_matches_highlight_set),
173 EFL_OBJECT_OP_FUNC(elm_obj_web_text_matches_highlight_get, _elm_web_none_elm_web_text_matches_highlight_get),
174 EFL_OBJECT_OP_FUNC(elm_obj_web_load_progress_get, _elm_web_none_elm_web_load_progress_get),
175 EFL_OBJECT_OP_FUNC(elm_obj_web_stop, _elm_web_none_elm_web_stop),
176 EFL_OBJECT_OP_FUNC(elm_obj_web_reload, _elm_web_none_elm_web_reload),
177 EFL_OBJECT_OP_FUNC(elm_obj_web_reload_full, _elm_web_none_elm_web_reload_full),
178 EFL_OBJECT_OP_FUNC(elm_obj_web_back, _elm_web_none_elm_web_back),
179 EFL_OBJECT_OP_FUNC(elm_obj_web_forward, _elm_web_none_elm_web_forward),
180 EFL_OBJECT_OP_FUNC(elm_obj_web_navigate, _elm_web_none_elm_web_navigate),
181 EFL_OBJECT_OP_FUNC(elm_obj_web_back_possible_get, _elm_web_none_elm_web_back_possible_get),
182 EFL_OBJECT_OP_FUNC(elm_obj_web_forward_possible_get, _elm_web_none_elm_web_forward_possible_get),
183 EFL_OBJECT_OP_FUNC(elm_obj_web_navigate_possible_get, _elm_web_none_elm_web_navigate_possible_get),
184 EFL_OBJECT_OP_FUNC(elm_obj_web_history_enabled_set, _elm_web_none_elm_web_history_enabled_set),
185 EFL_OBJECT_OP_FUNC(elm_obj_web_history_enabled_get, _elm_web_none_elm_web_history_enabled_get),
186 EFL_OBJECT_OP_FUNC(efl_ui_zoom_level_set, _elm_web_none_efl_ui_zoom_zoom_level_set),
187 EFL_OBJECT_OP_FUNC(efl_ui_zoom_level_get, _elm_web_none_efl_ui_zoom_zoom_level_get),
188 EFL_OBJECT_OP_FUNC(efl_ui_zoom_mode_set, _elm_web_none_efl_ui_zoom_zoom_mode_set),
189 EFL_OBJECT_OP_FUNC(efl_ui_zoom_mode_get, _elm_web_none_efl_ui_zoom_zoom_mode_get),
190 EFL_OBJECT_OP_FUNC(elm_obj_web_region_show, _elm_web_none_elm_web_region_show),
191 EFL_OBJECT_OP_FUNC(elm_obj_web_region_bring_in, _elm_web_none_elm_web_region_bring_in),
192 EFL_OBJECT_OP_FUNC(elm_obj_web_inwin_mode_set, _elm_web_none_elm_web_inwin_mode_set),
193 EFL_OBJECT_OP_FUNC(elm_obj_web_inwin_mode_get, _elm_web_none_elm_web_inwin_mode_get),
194 ELM_WEB_NONE_EXTRA_OPS
195 );
196 opsp = &ops;
197
198 return efl_class_functions_set(klass, opsp, ropsp);
199}
200
201static const Efl_Class_Description _elm_web_none_class_desc = {
202 EO_VERSION,
203 "Elm.Web.None",
204 EFL_CLASS_TYPE_REGULAR,
205 sizeof(Elm_Web_None_Data),
206 _elm_web_none_class_initializer,
207 NULL,
208 NULL
209};
210
211EFL_DEFINE_CLASS(elm_web_none_class_get, &_elm_web_none_class_desc, ELM_WEB_CLASS, EFL_UI_LEGACY_INTERFACE, NULL);
diff --git a/src/modules/elementary/web/none/elm_web_none_eo.h b/src/modules/elementary/web/none/elm_web_none_eo.h
new file mode 100644
index 0000000..8bf39b1
--- /dev/null
+++ b/src/modules/elementary/web/none/elm_web_none_eo.h
@@ -0,0 +1,24 @@
1#ifndef _ELM_WEB_NONE_EO_H_
2#define _ELM_WEB_NONE_EO_H_
3
4#ifndef _ELM_WEB_NONE_EO_CLASS_TYPE
5#define _ELM_WEB_NONE_EO_CLASS_TYPE
6
7typedef Eo Elm_Web_None;
8
9#endif
10
11#ifndef _ELM_WEB_NONE_EO_TYPES
12#define _ELM_WEB_NONE_EO_TYPES
13
14
15#endif
16/** Elementary web module class
17 *
18 * @ingroup Elm_Web_None
19 */
20#define ELM_WEB_NONE_CLASS elm_web_none_class_get()
21
22EWAPI const Efl_Class *elm_web_none_class_get(void);
23
24#endif
diff --git a/src/modules/elementary/web/none/meson.build b/src/modules/elementary/web/none/meson.build
index e71a168..632bca3 100644
--- a/src/modules/elementary/web/none/meson.build
+++ b/src/modules/elementary/web/none/meson.build
@@ -1,26 +1,6 @@
1pub_eo_files = [
2 'elm_web_none.eo'
3]
4
5
6foreach eo_file : pub_eo_files
7 pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
8 input : eo_file,
9 output : [eo_file + '.h'],
10 depfile : eo_file + '.d',
11 install : true,
12 install_dir : dir_package_include,
13 command : eolian_gen + [ '-I', meson.current_source_dir(), eolian_include_directories,
14 '-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
15 '-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
16 '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
17 '-gchd', '@INPUT@'])
18endforeach
19
20
21src = files([ 1src = files([
22 'elm_web_none.c' 2 'elm_web_none.c'
23]) + pub_eo_file_target 3])
24 4
25shared_module('none', 5shared_module('none',
26 src, 6 src,