Commit Graph

13 Commits

Author SHA1 Message Date
Mike Blumenkrantz 5bfe2e89d2 evas: remove all legacy usage from eo files
this takes the current generated output from eolian for legacy code in
evas 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: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Differential Revision: https://phab.enlightenment.org/D8107
2019-03-06 19:05:48 +01:00
Jean-Philippe Andre a72f3ec64e efl: Use Eina.Size2D for size hint combined min
For this patch I decided to add a pseudo legacy wrapper as the function
is called in a very large number of places. Fixing all those calls to
use the size2d form is a lot of work and a greater risk of b0rking
something.
2017-09-18 16:33:33 +09:00
Cedric BAIL dc022d602d edje: fix float comparison warning in Box Layout logic. 2016-12-20 16:39:30 -08:00
Tom Hacohen e65aae994e Eo: Finish the renaming of Eo to the EFL.
This renames all the rest of the API to the EFL namespace except for
Eo_Event that will follow soon.

Obviously breaks both API and ABI.
2016-08-15 15:07:42 +01:00
Jean-Philippe Andre 37625fca91 Evas/Edje/Elm: Use combined_min instead of min everywhere
This allows apps to set the objects min size with hint_min,
while letting the rest of EFL define the minimum size with
rstricted_min.

I don't like the property names much...
2016-06-09 16:37:49 +09:00
Cedric BAIL fd80e26f06 evas: make no longer supported object, legacy only.
So I forgot to clean my hard drive from previously generated files,
and obviously everything still worked. This lead to having to roll back
evas_smart_clipped.eo as a public eo object until we merge elementary.

Still I would like someone to take a look at elm_pan.eo and figure out
how to not rely on smart clipped there.
2016-03-21 16:31:26 -07:00
Mike Blumenkrantz 172a0ccf0c edje: reformat all C files
this has been unreadable for years due to the french tabber.
2015-06-08 14:43:00 -04:00
Tom Hacohen 0fc3279db9 Efl: Update code to use the new class names generated by eolian. 2014-06-03 11:28:01 +01:00
José Roberto de Souza d5ebe804dd edje: Fix edje box crash
When a signal change a state of a edje box to a state that was already active
and we add/del a item of edje box a crash happen.

Example:
test.edc:

collections {
	group {
		name: "box_text";
		parts {
			part {
				name: "elm.box.buttons";
				type: BOX;
				description {
					state: "default" 0.0;
					min: 0 100;
					max: 9999 100;
					align: 0 0;
					box {
						layout: "horizontal";
						min: 1 1;
					}
					visible: 0;
				}
				description {
					state: "show" 0.0;
					inherit: "default" 0.0;
					visible: 1;
				}
			}
		}
		programs {
			program {
				signal: "show,buttons";
				source: "gui";
				action: STATE_SET "show" 0.0;
				transition: ACCELERATE 1;
				target: "elm.box.buttons";
			}
			program {
				signal: "hide,buttons";
				source: "gui";
				action: STATE_SET "default" 0.0;
				transition: ACCELERATE 1;
				target: "elm.box.buttons";
			}
		}
	}
}

test.c:

//Compile with:
//gcc -g test.c -o test `pkg-config --cflags --libs elementary edje ecore`

static int count = 0;

static Eina_Bool _fill(void *data)
{
	int i;
	Evas_Object *layout = data;
	Evas_Object *edje = elm_layout_edje_get(layout);

	edje_object_part_box_remove_all(edje, "elm.box.buttons", EINA_TRUE);
	elm_layout_signal_emit(layout, "show,buttons", "gui");

	printf("_fill()\n");

	for (i = 0; i < 5; i++, count++)
	{
		Evas_Object *btn;
		char buf[50];

		btn = elm_button_add(layout);
		snprintf(buf, sizeof(buf), "button %d", count);
		elm_object_text_set(btn, buf);
		edje_object_part_box_append(edje, "elm.box.buttons", btn);
		evas_object_show(btn);
	}

	return EINA_TRUE;
}

EAPI_MAIN int
elm_main(int argc, char **argv)
{
	Evas_Object *win, *bg, *layout;

	win = elm_win_add(NULL, "test", ELM_WIN_BASIC);
	elm_win_title_set(win, "Test");
	elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);
   	elm_win_autodel_set(win, EINA_TRUE);

	bg = elm_bg_add(win);
	elm_bg_color_set(bg, 255, 255, 255);
	evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
	elm_win_resize_object_add(win, bg);
	evas_object_show(bg);

	layout = elm_layout_add(win);
	elm_layout_file_set(layout, "test.edj", "box_text");
	evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
	evas_object_show(layout);

	_fill(layout);
	ecore_timer_add(5, _fill, layout);

	evas_object_resize(win, 800, 320);
	evas_object_show(win);

	elm_run();
   	elm_shutdown();

   	return 0;
}
ELM_MAIN()

(gdb) bt
0x00000000 in ?? ()
0xb7add287 in _edje_box_layout_calculate_coords ()
   from /usr/lib/libedje.so.1
0xb7add5cd in _edje_box_layout () from /usr/lib/libedje.so.1
0xb7c98ff7 in _evas_object_box_smart_calculate ()
   from /usr/lib/libevas.so.1
0xb7c97a36 in evas_object_smart_calculate () from /usr/lib/libevas.so.1
0xb7ae1b12 in _edje_part_recalc_single () from /usr/lib/libedje.so.1
0xb7ae3380 in _edje_part_recalc () from /usr/lib/libedje.so.1
0xb7ae59ff in _edje_recalc_do () from /usr/lib/libedje.so.1
0xb7b3603a in _edje_smart_calculate () from /usr/lib/libedje.so.1
0xb7c97be2 in evas_call_smarts_calculate () from /usr/lib/libevas.so.1
0xb7cc7d88 in evas_render_updates_internal () from /usr/lib/libevas.so.1
0xb7ba7c97 in _ecore_evas_x_render () from /usr/lib/libecore_evas.so.1
0xb7ba27c6 in _ecore_evas_idle_enter () from /usr/lib/libecore_evas.so.1
0xb7c27212 in _ecore_idle_enterer_call () from /usr/lib/libecore.so.1
0xb7c28d3d in _ecore_main_loop_iterate_internal ()
   from /usr/lib/libecore.so.1
0xb7c2941f in ecore_main_loop_begin () from /usr/lib/libecore.so.1
0xb7e8def8 in elm_run () from /usr/lib/libelementary.so.1
0xb7f6f8ee in appcore_efl_main () from /usr/lib/libappcore-efl.so.1
0xb7644bb5 in app_efl_main () from /usr/lib/libcapi-appfw-application.so.0
0x08074c5a in main (argc=1, argv=0xbffffb64) at src/main_tizen.c:155

==2036== Jump to the invalid address stated on the next line
==2036==    at 0x0: ???
==2036==    by 0x44C35CC: _edje_box_layout (in /usr/lib/libedje.so.1.7.99)
==2036==    by 0x42E8FF6: _evas_object_box_smart_calculate (in /usr/lib/libevas.so.1.7.99)
==2036==    by 0x42E7A35: evas_object_smart_calculate (in /usr/lib/libevas.so.1.7.99)
==2036==    by 0x44C7B11: _edje_part_recalc_single (in /usr/lib/libedje.so.1.7.99)
==2036==    by 0x44C937F: _edje_part_recalc (in /usr/lib/libedje.so.1.7.99)
==2036==    by 0x44CB9FE: _edje_recalc_do (in /usr/lib/libedje.so.1.7.99)
==2036==    by 0x451C039: _edje_smart_calculate (in /usr/lib/libedje.so.1.7.99)
==2036==    by 0x42E7BE1: evas_call_smarts_calculate (in /usr/lib/libevas.so.1.7.99)
==2036==    by 0x4317D87: evas_render_updates_internal (in /usr/lib/libevas.so.1.7.99)
==2036==    by 0x4465C96: _ecore_evas_x_render (in /usr/lib/libecore_evas.so.1.7.99)
==2036==    by 0x44607C5: _ecore_evas_idle_enter (in /usr/lib/libecore_evas.so.1.7.99)
==2036==  Address 0x0 is not stack'd, malloc'd or (recently) free'd

We called anim->start aftwards just to be sure to stick to something if
all fail.
2013-05-17 18:46:04 -03:00
Carsten Haitzler f8c9a8d167 revert the revert... damn you git!
Revert "Revert "Efl: replace eo_data_get for objects data referencing.""

This reverts commit b64a2994b3.
2013-05-02 16:47:16 +09:00
Carsten Haitzler b64a2994b3 Revert "Efl: replace eo_data_get for objects data referencing."
This reverts commit 654a3f5f94.
2013-05-02 14:17:19 +09:00
Daniel Zaoui 654a3f5f94 Efl: replace eo_data_get for objects data referencing. 2013-05-01 10:37:08 +03:00
Gustavo Sverzut Barbieri 9ea2ce1041 efl: merge edje.
this is still in progress, mostly the multisense stuff is pending.

it seems that when we merge ecore_audio in edje the libremix and
similar are gone, at least from Edje, and will be in ecore_audio
itself (or pulseaudio).

Changes:
 * __UNUSED__ to EINA_UNUSED
 * binaries (epp, embryo_cc, edje_cc) now consider EFL_RUN_IN_TREE and
   will assume the binaries are still not installed, running from
   build tree location (needs more testing, maybe doesn't work with
   srcdir != builddir, still doesn't solve cross compile builds)



SVN revision: 82139
2013-01-04 02:08:14 +00:00