[EGIT] [tools/enventor] master 01/01: refactor key event method
jaehyun pushed a commit to branch master. http://git.enlightenment.org/tools/enventor.git/commit/?id=a8a14566c7b9ccbffc230c9c4989e39736331de0 commit a8a14566c7b9ccbffc230c9c4989e39736331de0 Author: YeongJong LeeDate: Wed Feb 22 15:57:17 2017 +0900 refactor key event method Summary: The key event work well now. Test Plan: 1. Run enventor 2. Test the shortcut key that use modifiers(, ) 3. Check the shortcut work correctly Reviewers: Hermet, Jaehyun_Cho Reviewed By: Jaehyun_Cho Maniphest Tasks: T5146 Differential Revision: https://phab.enlightenment.org/D4620 --- src/bin/main.c | 8 +++- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/bin/main.c b/src/bin/main.c index c281823..d3b52a6 100644 --- a/src/bin/main.c +++ b/src/bin/main.c @@ -631,8 +631,7 @@ enventor_setup(app_data *ad) static Eina_Bool alt_func(Evas_Event_Key_Down *event) { - if (evas_key_modifier_is_set(event->modifiers, "Shift") || - evas_key_modifier_is_set(event->modifiers, "Ctrl")) + if (!evas_key_modifier_is_set(event->modifiers, "Alt")) return EINA_FALSE; //Full Edit View @@ -666,8 +665,7 @@ alt_func(Evas_Event_Key_Down *event) static Eina_Bool ctrl_func(Evas_Event_Key_Down *event) { - if (evas_key_modifier_is_set(event->modifiers, "Shift") || - evas_key_modifier_is_set(event->modifiers, "Alt")) + if (!evas_key_modifier_is_set(event->modifiers, "Control")) return EINA_FALSE; //Save @@ -862,7 +860,7 @@ static void keygrabber_init(app_data *ad) { Evas *e = evas_object_evas_get(base_enventor_get()); - ad->keygrabber = evas_object_rectangle_add(e); + ad->keygrabber = base_enventor_get(); evas_object_event_callback_add(ad->keygrabber, EVAS_CALLBACK_KEY_DOWN, keygrabber_key_down_cb, NULL); #define GRAB_ADD(key, modifier) \ --
[EGIT] [website/www-content] master 01/01: Wiki page efl-1.19.0-beta2 changed with summary [Fix links to beta2 archives] by Arthur
WWW-www.enlightenment.org pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=ed1a2fddc5a0a2b120873ce4b7dd05505462a03e commit ed1a2fddc5a0a2b120873ce4b7dd05505462a03e Author: ArthurDate: Tue Feb 21 18:44:10 2017 -0800 Wiki page efl-1.19.0-beta2 changed with summary [Fix links to beta2 archives] by Arthur --- pages/news/efl-1.19.0-beta2.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pages/news/efl-1.19.0-beta2.txt b/pages/news/efl-1.19.0-beta2.txt index 077b9ed..fe352da 100644 --- a/pages/news/efl-1.19.0-beta2.txt +++ b/pages/news/efl-1.19.0-beta2.txt @@ -6,8 +6,8 @@ With beta2 release is out. Please give it some good testing and let us know abou **Download** |LINK| SHA256| -| http://download.enlightenment.org/rel/libs/efl/efl-1.19.0-beta1.tar.gz | ad06b8b92b2167ef940b35056272eea0beb269c7b2ee3dba2b246a6a93036581 | -| http://download.enlightenment.org/rel/libs/efl/efl-1.19.0-beta1.tar.xz | ac872ea0b505952928e0dcd8436d4ec78a31781b5863e1d2d1974cc299d75e48 | +| http://download.enlightenment.org/rel/libs/efl/efl-1.19.0-beta2.tar.gz | ad06b8b92b2167ef940b35056272eea0beb269c7b2ee3dba2b246a6a93036581 | +| http://download.enlightenment.org/rel/libs/efl/efl-1.19.0-beta2.tar.xz | ac872ea0b505952928e0dcd8436d4ec78a31781b5863e1d2d1974cc299d75e48 | **Fixes:** * ecore-evas-wayland: Fix setting rotation during async render --
[EGIT] [core/enlightenment] master 01/01: tiling: dont use floating state when toggling
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=4937897c0b73d296c3593960bf0cb730cda5eae0 commit 4937897c0b73d296c3593960bf0cb730cda5eae0 Author: Marcel HollerbachDate: Tue Feb 21 19:49:55 2017 +0100 tiling: dont use floating state when toggling when someone toggles a client he usally doesnt want to have it again in toggle state, so make sure its vertical or horizontal. --- src/modules/tiling/e_mod_tiling.c | 30 -- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/src/modules/tiling/e_mod_tiling.c b/src/modules/tiling/e_mod_tiling.c index 08065a1..e99e390 100644 --- a/src/modules/tiling/e_mod_tiling.c +++ b/src/modules/tiling/e_mod_tiling.c @@ -51,7 +51,7 @@ struct tiling_g tiling_g = { static void _client_track(E_Client *ec); static void _client_untrack(E_Client *ec); -static Eina_Bool _add_client(E_Client *ec); +static Eina_Bool _add_client(E_Client *ec, Tiling_Split_Type type); static void _remove_client(E_Client *ec); static void _client_apply_settings(E_Client *ec, Client_Extra *extra); static void _foreach_desk(void (*func)(E_Desk *desk)); @@ -124,6 +124,16 @@ get_current_desk(void) return e_desk_current_get(z); } +static Tiling_Split_Type +_current_tiled_state(void) +{ + Tiling_Split_Type type = _G.split_type; + + if (type == TILING_SPLIT_FLOAT) + return TILING_SPLIT_HORIZONTAL; + return type; +} + static Tiling_Info * _initialize_tinfo(const E_Desk *desk) { @@ -509,7 +519,7 @@ _desk_config_apply(E_Desk *d, int old_nb_stacks, int new_nb_stacks) E_CLIENT_FOREACH(ec) { - _add_client(ec); + _add_client(ec, _G.split_type); } _reapply_tree(); @@ -551,7 +561,7 @@ _e_client_check_based_on_state_cb(void *data, Evas_Object *obj EINA_UNUSED, } static Eina_Bool -_add_client(E_Client *ec) +_add_client(E_Client *ec, Tiling_Split_Type type) { /* Should I need to check that the client is not already added? */ if (!ec) @@ -573,7 +583,7 @@ _add_client(E_Client *ec) if (is_ignored_window(extra)) return EINA_FALSE; - if (_G.split_type == TILING_SPLIT_FLOAT) + if (type == TILING_SPLIT_FLOAT) { extra->floating = EINA_TRUE; return EINA_FALSE; @@ -607,7 +617,7 @@ _add_client(E_Client *ec) } _G.tinfo->tree = -tiling_window_tree_add(_G.tinfo->tree, parent, ec, _G.split_type); +tiling_window_tree_add(_G.tinfo->tree, parent, ec, type); } if (started) @@ -690,7 +700,7 @@ toggle_floating(E_Client *ec) } else { -_add_client(ec); +_add_client(ec, _current_tiled_state()); } } @@ -1234,7 +1244,7 @@ _add_hook(void *data EINA_UNUSED, E_Client *ec) if (e_object_is_del(E_OBJECT(ec))) return; - _add_client(ec); + _add_client(ec, _G.split_type); } static Eina_Bool @@ -1263,7 +1273,7 @@ _toggle_tiling_based_on_state(E_Client *ec, Eina_Bool restore) } else if (!extra->tiled && is_tilable(ec)) { -_add_client(ec); +_add_client(ec, _current_tiled_state()); return EINA_TRUE; } @@ -1304,7 +1314,7 @@ _desk_set_hook(void *data EINA_UNUSED, int type EINA_UNUSED, if (!desk_should_tile_check(ev->ec->desk)) return true; - _add_client(ev->ec); + _add_client(ev->ec, _current_tiled_state()); return true; } @@ -1527,7 +1537,7 @@ e_modapi_init(E_Module *m) E_CLIENT_FOREACH(ec) { - _add_client(ec); + _add_client(ec, _G.split_type); } } started = EINA_TRUE; --
[EGIT] [core/efl] master 01/01: edje_edit: fix scripts compilation
lorddrew pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=75f772c898fcf91c947691e40b5dde86888a7889 commit 75f772c898fcf91c947691e40b5dde86888a7889 Author: Andrii KroitorDate: Tue Feb 21 19:33:51 2017 +0200 edje_edit: fix scripts compilation @fix --- src/lib/edje/edje_edit.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lib/edje/edje_edit.c b/src/lib/edje/edje_edit.c index aaeb3a8..d2616fc 100644 --- a/src/lib/edje/edje_edit.c +++ b/src/lib/edje/edje_edit.c @@ -12210,7 +12210,7 @@ __part_replace(Edje_Edit *eed, char *pcode, char *name) { int id; - id = _edje_part_id_find((Edje *)eed, name); + id = _edje_part_id_find(eed->base, name); if (id < 0) return 0; return eina_convert_itoa(id, pcode); @@ -12632,7 +12632,7 @@ _edje_edit_embryo_rebuild(Edje_Edit *eed) embryo_program_free(edc->script); edc->script = embryo_program_new(eed->bytecode, eed->bytecode_size); _edje_embryo_script_init(edc); - _edje_var_init((Edje *)eed); + _edje_var_init(eed->base); the_way_out: fclose(f); --
[EGIT] [core/enlightenment] master 01/01: Revert "Bryce: Don't proceed to process the mouse down event structure if it is null in the post callback."
okra pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=4510e474f65e5afc7431e7dae7463899bd2861b4 commit 4510e474f65e5afc7431e7dae7463899bd2861b4 Author: Stephen 'Okra' HoustonDate: Tue Feb 21 11:27:52 2017 -0600 Revert "Bryce: Don't proceed to process the mouse down event structure if it is null in the post callback." This reverts commit 25950ccfa9d8ff8c34706cf08ab02c143de88e01. Rever this commit to allow a more proper fix. --- src/bin/e_bryce.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/bin/e_bryce.c b/src/bin/e_bryce.c index f5c039e..1d57fcb 100644 --- a/src/bin/e_bryce.c +++ b/src/bin/e_bryce.c @@ -573,8 +573,6 @@ _bryce_mouse_down_post(void *data, Evas *e EINA_UNUSED) Bryce *b = data; Evas_Event_Mouse_Down *ev; - if (!b->event_info) - return EINA_FALSE; ev = b->event_info; b->event_info = NULL; if (ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD) return EINA_TRUE; --
[EGIT] [core/enlightenment] master 01/01: Bryce: Don't proceed to process the mouse down event structure if it is null in the post callback.
okra pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=25950ccfa9d8ff8c34706cf08ab02c143de88e01 commit 25950ccfa9d8ff8c34706cf08ab02c143de88e01 Author: Stephen 'Okra' HoustonDate: Tue Feb 21 11:06:45 2017 -0600 Bryce: Don't proceed to process the mouse down event structure if it is null in the post callback. --- src/bin/e_bryce.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/bin/e_bryce.c b/src/bin/e_bryce.c index 1d57fcb..f5c039e 100644 --- a/src/bin/e_bryce.c +++ b/src/bin/e_bryce.c @@ -573,6 +573,8 @@ _bryce_mouse_down_post(void *data, Evas *e EINA_UNUSED) Bryce *b = data; Evas_Event_Mouse_Down *ev; + if (!b->event_info) + return EINA_FALSE; ev = b->event_info; b->event_info = NULL; if (ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD) return EINA_TRUE; --
[EGIT] [core/enlightenment] master 01/01: e_sys: bring back system actions after resume was called
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=57b8f3e0934f920cc8de307766df801ca37e3529 commit 57b8f3e0934f920cc8de307766df801ca37e3529 Author: Marcel HollerbachDate: Tue Feb 21 17:01:13 2017 +0100 e_sys: bring back system actions after resume was called when resume is called we are just notifing the theme that e is back there. There is no E_Sys_Action for it, so its enough for now to just call the backlight to fade back in and emit the signal to the theme. This should fix e blocking sys actions --- src/bin/e_sys.c | 31 +++ 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/src/bin/e_sys.c b/src/bin/e_sys.c index 98a6a66..c034112 100644 --- a/src/bin/e_sys.c +++ b/src/bin/e_sys.c @@ -108,27 +108,34 @@ _e_sys_comp_action_timeout(void *data) } static void -_e_sys_comp_emit_cb_wait(E_Sys_Action a, const char *sig, const char *rep, Eina_Bool nocomp_push) +_e_sys_comp_zones_fade(const char *sig, Eina_Bool out) { const Eina_List *l; E_Zone *zone; - Eina_Bool first = EINA_TRUE; - - if (_e_sys_comp_waiting == 0) _e_sys_comp_waiting++; - if (nocomp_push) e_comp_override_add(); - else e_comp_override_timed_pop(); - printf("_e_sys_comp_emit_cb_wait - [%x] %s %s\n", a, sig, rep); EINA_LIST_FOREACH(e_comp->zones, l, zone) { -e_zone_fade_handle(zone, nocomp_push, 0.5); +e_zone_fade_handle(zone, out, 0.5); edje_object_signal_emit(zone->base, sig, "e"); edje_object_signal_emit(zone->over, sig, "e"); -if ((rep) && (first)) - edje_object_signal_callback_add(zone->over, rep, "e", _e_sys_comp_done_cb, (void *)(long)a); -first = EINA_FALSE; } +} + +static void +_e_sys_comp_emit_cb_wait(E_Sys_Action a, const char *sig, const char *rep, Eina_Bool nocomp_push) +{ + E_Zone *zone; + + if (_e_sys_comp_waiting == 0) _e_sys_comp_waiting++; + if (nocomp_push) e_comp_override_add(); + else e_comp_override_timed_pop(); + printf("_e_sys_comp_emit_cb_wait - [%x] %s %s\n", a, sig, rep); + + _e_sys_comp_zones_fade(sig, nocomp_push); + if (rep) { +zone = eina_list_data_get(e_comp->zones); +if (zone) edje_object_signal_callback_add(zone->over, rep, "e", _e_sys_comp_done_cb, (void *)(long)a); if (action_timeout) ecore_timer_del(action_timeout); action_timeout = ecore_timer_loop_add(ACTION_TIMEOUT, (Ecore_Task_Cb)_e_sys_comp_action_timeout, (intptr_t*)(long)a); } @@ -168,7 +175,7 @@ static void _e_sys_comp_resume(void) { evas_damage_rectangle_add(e_comp->evas, 0, 0, e_comp->w, e_comp->h); - _e_sys_comp_emit_cb_wait(E_SYS_SUSPEND, "e,state,sys,resume", NULL, EINA_FALSE); + _e_sys_comp_zones_fade("e,state,sys,resume", EINA_FALSE); e_screensaver_deactivate(); } --
[EGIT] [core/efl] master 01/01: docgen: inherit overridden method/property brief descriptions on class pages
q66 pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=d8a0daaf5832de85b90ed1133c3c43bcac00045d commit d8a0daaf5832de85b90ed1133c3c43bcac00045d Author: Daniel KolesaDate: Tue Feb 21 16:48:16 2017 +0100 docgen: inherit overridden method/property brief descriptions on class pages --- src/scripts/elua/apps/gendoc.lua | 61 ++-- 1 file changed, 40 insertions(+), 21 deletions(-) diff --git a/src/scripts/elua/apps/gendoc.lua b/src/scripts/elua/apps/gendoc.lua index 9100f73..7f6a397 100644 --- a/src/scripts/elua/apps/gendoc.lua +++ b/src/scripts/elua/apps/gendoc.lua @@ -665,6 +665,37 @@ local build_igraph = function(cl) return graph end +local find_parent_impl +find_parent_impl = function(fulln, cl) +for i, inh in ipairs(cl:inherits_get()) do +local pcl = dtree.Class.by_name_get(inh) +for j, impl in ipairs(pcl:implements_get()) do +if impl:full_name_get() == fulln then +return impl, pcl +end +end +local pimpl, pcl = find_parent_impl(fulln, pcl) +if pimpl then +return pimpl, pcl +end +end +return nil, cl +end + +local find_parent_briefdoc +find_parent_briefdoc = function(fulln, cl) +local pimpl, pcl = find_parent_impl(fulln, cl) +if not pimpl then +return dtree.Doc():brief_get() +end +local pdoc = pimpl:doc_get(dtree.Function.METHOD, true) +local pdocf = pimpl:fallback_doc_get(true) +if not pdoc:exists() and (not pdocf or not pdocf:exists()) then +return find_parent_briefdoc(fulln, pcl) +end +return pdoc:brief_get(pdocf) +end + local build_functable = function(f, title, ctitle, cl, tbl, over) if #tbl == 0 then return @@ -703,10 +734,15 @@ local build_functable = function(f, title, ctitle, cl, tbl, over) lbuf:write_i(llbuf:finish()) end -nt[#nt + 1] = { -lbuf:finish(), -impl:doc_get(func.METHOD, true):brief_get(impl:fallback_doc_get(true)) -} +local doc = impl:doc_get(func.METHOD, true) +local docf = impl:fallback_doc_get(true) +local bdoc +if over and (not doc:exists() and (not docf or not docf:exists())) then +bdoc = find_parent_briefdoc(impl:full_name_get(), cl) +else +bdoc = doc:brief_get(docf) +end +nt[#nt + 1] = { lbuf:finish(), bdoc } if impl:is_prop_get() or impl:is_prop_set() then build_property(impl, cl) else @@ -984,23 +1020,6 @@ local build_vallist = function(f, pg, ps, title) end end -local find_parent_impl -find_parent_impl = function(fulln, cl) -for i, inh in ipairs(cl:inherits_get()) do -local pcl = dtree.Class.by_name_get(inh) -for j, impl in ipairs(pcl:implements_get()) do -if impl:full_name_get() == fulln then -return impl, pcl -end -end -local pimpl, pcl = find_parent_impl(fulln, pcl) -if pimpl then -return pimpl, pcl -end -end -return nil, cl -end - local find_parent_doc find_parent_doc = function(fulln, cl, ftype) local pimpl, pcl = find_parent_impl(fulln, cl) --
[EGIT] [core/efl] master 01/01: slider: theme - fix warnings
ami pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=d6e8ae62e7e243c546a1919a61fa50f7193bca34 commit d6e8ae62e7e243c546a1919a61fa50f7193bca34 Author: Amitesh SinghDate: Tue Feb 21 20:53:51 2017 +0530 slider: theme - fix warnings Fixes warnings related to "disabled_visible" states not present in "limits" part. fixes T5123 --- data/elementary/themes/edc/elm/slider.edc | 6 ++ 1 file changed, 6 insertions(+) diff --git a/data/elementary/themes/edc/elm/slider.edc b/data/elementary/themes/edc/elm/slider.edc index e94695b..ff19ce8 100644 --- a/data/elementary/themes/edc/elm/slider.edc +++ b/data/elementary/themes/edc/elm/slider.edc @@ -1070,6 +1070,12 @@ group { name: "elm/slider/vertical/default"; rel1.offset: 2 -3; rel2.offset: -3 -3; } + description { state: "disabled_visible" 0.0; +inherit: "default" 0.0; +rel1.offset: 2 -3; +rel2.offset: -3 -3; +color: 255 255 255 64; + } } part { name: "elm.units"; type: TEXT; mouse_events: 0; effect: SHADOW BOTTOM; --
[EGIT] [core/efl] master 01/01: elementary gengrid: fix for working item reorder mode correctly
ami pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=e62d78d594cb8b670bff722193dfa3d1b4baa5a5 commit e62d78d594cb8b670bff722193dfa3d1b4baa5a5 Author: Minkyu KangDate: Tue Feb 21 15:02:30 2017 +0530 elementary gengrid: fix for working item reorder mode correctly Summary: Change the item indexing to start 1 after reordering animation. Change the logic of edge checking to get the row or col correctly. Signed-off-by: Minkyu Kang Test Plan: elementary_test -to gengrid2 append 6 items enable the reorder mode check reordering is working properly (4 to 1) @fix Reviewers: singh.amitesh, cedric Subscribers: jehun.lim, jpeg Differential Revision: https://phab.enlightenment.org/D4676 --- src/lib/elementary/elm_gengrid.c | 13 + 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/src/lib/elementary/elm_gengrid.c b/src/lib/elementary/elm_gengrid.c index f677857..3be1fee 100644 --- a/src/lib/elementary/elm_gengrid.c +++ b/src/lib/elementary/elm_gengrid.c @@ -2770,25 +2770,22 @@ _elm_gengrid_item_edge_check(Elm_Object_Item *eo_it, ((sd->horizontal) && (dir == ELM_FOCUS_LEFT))) { Evas_Coord col, row, cvw, cvh; -int x; evas_object_geometry_get(sd->pan_obj, NULL, NULL, , ); if (sd->horizontal && sd->item_height > 0) { row = cvh / sd->item_height; if (row <= 0) row = 1; - col = tmp->position / row; - x = tmp->position % row; - if (col == 0 || (col == 1 && x == 0)) + col = (tmp->position - 1) / row; + if (col == 0) return EINA_TRUE; } else if (sd->item_width > 0) { col = cvw / sd->item_width; if (col <= 0) col = 1; - row = tmp->position / col; - x = tmp->position % col; - if (row == 0 || (row == 1 && x == 0)) + row = (tmp->position - 1) / col; + if (row == 0) return EINA_TRUE; } } @@ -3025,7 +3022,7 @@ _anim_end(Elm_Gengrid_Data *sd) EINA_INLIST_GET(sd->reorder.it2)); } } - _item_position_update(sd->items, 0); + _item_position_update(sd->items, 1); ecore_job_del(sd->calc_job); sd->calc_job = ecore_job_add(_calc_job, sd->obj); --
[EGIT] [tools/eflete] master 01/03: property_group: add script preview
rimmed pushed a commit to branch master. http://git.enlightenment.org/tools/eflete.git/commit/?id=9ccacb6852e60350ca3e634e10201d9ea22800a3 commit 9ccacb6852e60350ca3e634e10201d9ea22800a3 Author: Tetiana NaumenkoDate: Fri Jan 27 18:20:08 2017 +0200 property_group: add script preview default_entry.edc: add swallow for button in multiline entry tizen_entry.edc: add group for multiline entry Change-Id: I3f2a348b63f2c9569072370f3456aab02cfee544 --- data/themes/default/widgets/entry.edc | 16 + data/themes/tizen/widgets/entry.edc| 493 + src/bin/Makefile.am| 1 + src/bin/common/signals.c | 3 + src/bin/common/signals.h | 3 + .../resource_manager/resource_manager_signals.h| 1 + src/bin/ui/property/property_common.c | 7 + src/bin/ui/property/property_group.c | 17 + src/bin/ui/property/property_private.h | 5 + src/bin/ui/property/property_script.c | 54 +++ 10 files changed, 600 insertions(+) diff --git a/data/themes/default/widgets/entry.edc b/data/themes/default/widgets/entry.edc index b52e5d4..701a7a0 100644 --- a/data/themes/default/widgets/entry.edc +++ b/data/themes/default/widgets/entry.edc @@ -1,5 +1,6 @@ group { name: "elm/entry/base/default"; alias: "elm/entry/base-single-noedit/default"; + alias: "elm/entry/base-nowrap-noedit/default"; parts { part { name: "elm.guide"; type: TEXTBLOCK; @@ -574,6 +575,21 @@ group { name: "elm/scroller/entry/default"; } } } + part { name: "elm.swallow.elipsis"; + type: SWALLOW; + description { state: "default" 0.0; +align: 1.0 0.0; +fixed: 1 1; +max: 24 24; +min: 24 24; +rel1 { + offset: 0 -2; +} +rel2 { + offset: 1 0; +} + } + } } programs { program { name: "v_mouse_down"; diff --git a/data/themes/tizen/widgets/entry.edc b/data/themes/tizen/widgets/entry.edc index 577dd1c..7bcfbb3 100644 --- a/data/themes/tizen/widgets/entry.edc +++ b/data/themes/tizen/widgets/entry.edc @@ -1,5 +1,6 @@ group { name: "elm/entry/base/default"; alias: "elm/entry/base-single-noedit/default"; + alias: "elm/entry/base-nowrap-noedit/default"; parts { part { name: "elm.guide"; type: TEXTBLOCK; @@ -80,6 +81,498 @@ group { name: "elm/entry/base/default"; } } +group { name: "elm/scroller/entry/default"; + data { + item: "focus_highlight" "on"; + } + parts { + part { name: "border"; + type: RECT; + description { state: "default" 0.0; +color_class: "border"; +min: 0 380; + } + description { state: "focused" 0.0; +inherit: "default" 0.0; +color_class: "border_focused"; + } + description { state: "disabled" 0.0; +inherit: "default" 0.0; + } + description { state: "hovered" 0.0; +inherit: "default" 0.0; + } + } + part { name: "bg"; + type: RECT; + description { state: "default" 0.0; +color_class: "entry_bg"; +rel1 { + to: "border"; + offset: 1 1; +} +rel2 { + to: "border"; + offset: -2 -2; +} + } + description { state: "disabled" 0.0; + } + } + part { name: "sb_vbar"; + type: RECT; + scale: 1; + description { state: "default" 0.0; +align: 1.0 0.5; +min: 6 0; +max: 6 -1; +rel1 { + to: "bg"; + offset: 0 1; +} +rel2 { + relative: 1.0 0.0; + to_x: "bg"; + to_y: "sb_hbar"; + offset: -2 -1; +} + } + description { state: "hidden" 0.0; +align: 1.0 0.0; +fixed: 1 0; +max: 0 -1; +rel1 { + offset: 0 1; + to_y: "bg"; +} +rel2 { + relative: 1.0 0.0; + offset: -2 -1; + to_x: "bg"; + to_y: "sb_hbar"; +} + } + } + part { name: "sb_vbar_p1"; + type: SPACER; + description { state: "default" 0.0; +rel1 { + to: "sb_vbar"; +} +rel2 { + relative: 1.0 0.0; + to: "elm.dragable.vbar"; +} + } + } + part { name: "sb_vbar_p2"; + type: SPACER; + description { state: "default" 0.0; +rel1 { + relative: 0.0 1.0; + to:
[EGIT] [tools/eflete] master 02/03: default theme: add icon for script manager window
rimmed pushed a commit to branch master. http://git.enlightenment.org/tools/eflete.git/commit/?id=a99208c5cda35807e4340303dd4aa32e6899930f commit a99208c5cda35807e4340303dd4aa32e6899930f Author: Tetiana NaumenkoDate: Mon Feb 6 18:16:17 2017 +0200 default theme: add icon for script manager window Change-Id: I838c033defcde6a5105098fa59b45f844e9cd126 --- data/themes/default/images/icon_code2.png | Bin 0 -> 16598 bytes data/themes/default/widgets/icon.edc | 1 + 2 files changed, 1 insertion(+) diff --git a/data/themes/default/images/icon_code2.png b/data/themes/default/images/icon_code2.png new file mode 100644 index 000..f2592a6 Binary files /dev/null and b/data/themes/default/images/icon_code2.png differ diff --git a/data/themes/default/widgets/icon.edc b/data/themes/default/widgets/icon.edc index 6452274..e44bf10 100644 --- a/data/themes/default/widgets/icon.edc +++ b/data/themes/default/widgets/icon.edc @@ -32,6 +32,7 @@ IC("color", "toolbar/color", "menu/color", "i IC("text", "toolbar/text", "menu/text", "icon_text.png", 14, 0); IC("info", "toolbar/info", "menu/info", "icon_info.png", 14, 0); IC("eye", "toolbar/eye", "menu/eye", "icon_eye.png",14, 0); +IC("code2", "toolbar/code", "menu/code", "icon_code2.png", 14, 0); IC("type_rectangle","toolbar/type_rectangle", "menu/type_rectangle", "icon-rectangle.png", 14, 0); IC("type_text", "toolbar/type_text","menu/type_text", "icon-text.png", 14, 0); --
[EGIT] [tools/eflete] master 03/03: script manager: add script viewer window
rimmed pushed a commit to branch master. http://git.enlightenment.org/tools/eflete.git/commit/?id=6c919b25a683fdad742185f034b2c94cb0276d20 commit 6c919b25a683fdad742185f034b2c94cb0276d20 Author: Tetiana NaumenkoDate: Mon Feb 6 18:45:41 2017 +0200 script manager: add script viewer window Change-Id: I6a3a6a433c5becd73602da7449ad5fdc7b615aca --- data/themes/default/widgets/entry.edc | 1 + data/themes/default/widgets/layout.edc | 1 + data/themes/tizen/widgets/entry.edc| 1 + data/themes/tizen/widgets/layout.edc | 1 + src/bin/Makefile.am| 1 + src/bin/ui/main_window.h | 13 +++- src/bin/ui/property/property_common.c | 1 + src/bin/ui/property/property_group.c | 19 +++-- src/bin/ui/script_manager.c| 136 + 9 files changed, 168 insertions(+), 6 deletions(-) diff --git a/data/themes/default/widgets/entry.edc b/data/themes/default/widgets/entry.edc index 701a7a0..da6ac7f 100644 --- a/data/themes/default/widgets/entry.edc +++ b/data/themes/default/widgets/entry.edc @@ -1,6 +1,7 @@ group { name: "elm/entry/base/default"; alias: "elm/entry/base-single-noedit/default"; alias: "elm/entry/base-nowrap-noedit/default"; + alias: "elm/entry/base-nowrap/default"; parts { part { name: "elm.guide"; type: TEXTBLOCK; diff --git a/data/themes/default/widgets/layout.edc b/data/themes/default/widgets/layout.edc index 0d548bc..c342e72 100644 --- a/data/themes/default/widgets/layout.edc +++ b/data/themes/default/widgets/layout.edc @@ -746,6 +746,7 @@ group { name: "elm/layout/animator/program_area"; group { name: "elm/layout/image_manager/default"; alias: "elm/layout/sound_manager/default"; + alias: "elm/layout/script_manager/default"; parts { part { name: "area.edit"; type: SPACER; diff --git a/data/themes/tizen/widgets/entry.edc b/data/themes/tizen/widgets/entry.edc index 7bcfbb3..7186c96 100644 --- a/data/themes/tizen/widgets/entry.edc +++ b/data/themes/tizen/widgets/entry.edc @@ -1,6 +1,7 @@ group { name: "elm/entry/base/default"; alias: "elm/entry/base-single-noedit/default"; alias: "elm/entry/base-nowrap-noedit/default"; + alias: "elm/entry/base-nowrap/default"; parts { part { name: "elm.guide"; type: TEXTBLOCK; diff --git a/data/themes/tizen/widgets/layout.edc b/data/themes/tizen/widgets/layout.edc index 437aae8..3035ecf 100644 --- a/data/themes/tizen/widgets/layout.edc +++ b/data/themes/tizen/widgets/layout.edc @@ -909,6 +909,7 @@ group { name: "elm/layout/animator/program_area"; group { name: "elm/layout/image_manager/default"; alias: "elm/layout/sound_manager/default"; + alias: "elm/layout/script_manager/default"; parts { part { name: "area.edit"; type: SPACER; diff --git a/src/bin/Makefile.am b/src/bin/Makefile.am index 703a6bc..331512e 100644 --- a/src/bin/Makefile.am +++ b/src/bin/Makefile.am @@ -105,6 +105,7 @@ libete_a_SOURCES = \ ../../src/bin/ui/project_navigator.c \ ../../src/bin/ui/image_manager.c \ ../../src/bin/ui/colorclass_manager.c \ +../../src/bin/ui/script_manager.c \ ../../src/bin/ui/tabs.c \ ../../src/bin/ui/tab_home_common.c \ ../../src/bin/ui/tab_home_open.c \ diff --git a/src/bin/ui/main_window.h b/src/bin/ui/main_window.h index ec78197..187cde6 100644 --- a/src/bin/ui/main_window.h +++ b/src/bin/ui/main_window.h @@ -589,13 +589,24 @@ typedef struct _Sound_Data Sound_Data; /** * Add new sound manager layout object. * + * @return Pointer to layout object, which contain code of group script, + * etc. + * + * @ingroup Window + */ +Evas_Object * +sound_manager_add(void); + +/** + * Add new script manager layout object. + * * @return Pointer to layout object, which contain list of sounds, * control buttons, etc. * * @ingroup Window */ Evas_Object * -sound_manager_add(void); +script_manager_add(Resource2 *res); /** * Show the whole inwin window by using some data diff --git a/src/bin/ui/property/property_common.c b/src/bin/ui/property/property_common.c index 3a099ef..4ec30d0 100644 --- a/src/bin/ui/property/property_common.c +++ b/src/bin/ui/property/property_common.c @@ -23,6 +23,7 @@ #include "widget_macro.h" #include "sound_player.h" #include "shortcuts.h" +#include "main_window.h" /* hack to disable spinner value changes when scrolling */ static void diff --git a/src/bin/ui/property/property_group.c b/src/bin/ui/property/property_group.c index 18ee3c9..e1668ce 100644 --- a/src/bin/ui/property/property_group.c +++ b/src/bin/ui/property/property_group.c @@ -792,6 +792,18 @@ _ccl_control_free(void *data __UNUSED__, color = evas_object_data_del(obj, "color3"); evas_object_del(color); } + +static void +_btn_script_manager_cb(void *data __UNUSED__, + Evas_Object *obj __UNUSED__, + void *event_info __UNUSED__) +{ + if
Re: [E-devel] What do you think of Vala?
Hi conr2d, that’s great to hear. Please keep me posted when you have something to try. Best regards, Mickey. > Am 21.02.2017 um 04:19 schrieb Conrad Um: > > Dear friends, > > I read this mail just now. This is the reason why raster ask me about > progress of my work. :P > > Speaking of automatic binding generation, I already have a VAPI generator > (named as Eolian_Vala) based on Eo. It creates VAPI files with compact > classes, but developers who have knowledge about vala bindings understand > that they are not very useful in daily development. Because compact classes > doesn't support interfaces, so auto-binded classes can have methods that > are inherited from parent class directly. > > So the next step was generating wrapper class with gobject like what > eolian_cxx does with c++ object system, but I paused this work and started > making new profile for Vala. This job is aimed at providing OOP language > working with Eo. Developers will be able to create their own classes with > Vala, but translated into Eo rather than gobject. > > The weakness of this language is that it is not compatible gobject classes > described in VAPI. It will support compact classes only. I'm developing it > in my local system, but after making minimum working set, I hope to > introduce it to all of you. > > If you have any suggestions about that, please let me know anytime. > > + Dr. Michael Lauer > My VAPI generator uses your Eina binding and my Eolian binding. (It is > written in Vala) > I really appreciate your work. :D > > Best regards, > Jeeyong Um (conr2d) > > > 2017-02-17 17:19 GMT+09:00 Dr. Michael Lauer : > >> Hi Paul, >> >>> I actually picked up from you the maintenance of efvala for some time, >>> but I eventually gave up as at that time API breaks alone took more >>> time than the amount I had available to work on this. >> >> Yeah, keeping bindings current is a massive undertaking given such a huge >> API. >> >>> >>> It's been a long time since I last used/worked on these bindings, so >>> my memory is not that good now. As far as I remember, I initially did >>> some work in a gitorious repository (which I think became lost when >>> gitorious was brought down). After that, I think the bindings were >>> merged into the enlightenment repository at that time. See the >>> following commit introducing it [1] and the history around it [2]. >>> >>> Together with that, I wrote some simple applications to use the >>> bindings, such as emtooth (version 2, firs version was written in C), >>> etalk (telepathy client) and erocks (gstreamer player afair). Most of >>> them are not really high quality code, as my architecture/programming >>> skills at that time were not impressive. Some of them were also lost >>> during gitorious fall, but I think recently re-pushed some of them >>> into github from what I could find in my hard drive. >> >> That would be cool. Even if those handcrafted bindings are no longer of >> any use, I think >> sample programs are worth it anyways, since they explain how we once had >> things working. >> Feel free to push them into the FSO github, if you want. >> >>> >>> The status of EFL nowadays is far better than a few years ago, and as >>> far as I know there's a lot more tools to support bindings generation >>> (eolian and such). That together with a good stable API as we see >>> nowadays will make it far more easier to maintain and develop in case >>> somebody wants to take over. >> >> Ok, that sounds interesting. I agree that automatic binding generation has >> its merits and we >> can always add a layer on top, if we want to. >> >> Cheers, >> >> :M: >> >> >> -- >> Check out the vibrant tech community on one of the world's most >> engaging tech sites, SlashDot.org! http://sdm.link/slashdot >> ___ >> enlightenment-devel mailing list >> enlightenment-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel >> > -- > Check out the vibrant tech community on one of the world's most > engaging tech sites, SlashDot.org! http://sdm.link/slashdot > ___ > enlightenment-devel mailing list > enlightenment-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Check out the vibrant tech community on one of the world's most engaging tech sites, SlashDot.org! http://sdm.link/slashdot ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[EGIT] [core/efl] master 01/01: dayselector: Fix DaySelector widget
jpeg pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=629acbc545ce65c5710f095715bd3a6c6298b781 commit 629acbc545ce65c5710f095715bd3a6c6298b781 Author: Jean-Philippe AndreDate: Tue Feb 21 18:14:36 2017 +0900 dayselector: Fix DaySelector widget An invalid strcmp() led to always reject the swallowed widgets, which were Elm.Check instead of Elm_Check. Use efl_isa() instead. Fixes T5034 --- src/lib/elementary/elm_dayselector.c | 5 + 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/lib/elementary/elm_dayselector.c b/src/lib/elementary/elm_dayselector.c index 6a8a30b..985a533 100644 --- a/src/lib/elementary/elm_dayselector.c +++ b/src/lib/elementary/elm_dayselector.c @@ -225,11 +225,8 @@ _elm_dayselector_content_set(Eo *obj, Elm_Dayselector_Data *sd, const char *item int day; char buf[1024]; Elm_Dayselector_Item_Data *it = NULL; - const char *type = elm_object_widget_type_get(content); - - if (type && strcmp(type, "Elm_Check")) - return EINA_FALSE; + EINA_SAFETY_ON_FALSE_RETURN_VAL(efl_isa(content, EFL_UI_NSTATE_CLASS), EINA_FALSE); if (!item) return EINA_FALSE; day = atoi(item + (strlen(item) - 1)); --
[EGIT] [core/efl] master 02/03: evas: Optimize out some nop calls to evas text
jpeg pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=81fbd54c17e84514d3f74a795b2a6db189df9533 commit 81fbd54c17e84514d3f74a795b2a6db189df9533 Author: Jean-Philippe AndreDate: Tue Feb 21 17:48:08 2017 +0900 evas: Optimize out some nop calls to evas text Some property set calls to Evas Text are NOPs if the property was already set to the same value. Avoid doing any work then. This adds a missing intercept call (size_set as it's overriden by Evas.Text). --- src/lib/evas/canvas/evas_object_text.c | 13 + 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/lib/evas/canvas/evas_object_text.c b/src/lib/evas/canvas/evas_object_text.c index 1d3650d..2e243be 100644 --- a/src/lib/evas/canvas/evas_object_text.c +++ b/src/lib/evas/canvas/evas_object_text.c @@ -400,8 +400,9 @@ EOLIAN static void _evas_text_efl_text_properties_font_source_set(Eo *eo_obj, Evas_Text_Data *o, const char *font_source) { Evas_Object_Protected_Data *obj = efl_data_scope_get(eo_obj, EFL_CANVAS_OBJECT_CLASS); - if ((o->cur.source) && (font_source) && - (!strcmp(o->cur.source, font_source))) + if (((o->cur.source) && (font_source) && +(!strcmp(o->cur.source, font_source))) || + (!o->cur.source && !font_source)) return; evas_object_async_block(obj); /* @@ -427,10 +428,12 @@ _evas_text_efl_text_properties_font_set(Eo *eo_obj, Evas_Text_Data *o, const cha Evas_Font_Description *fdesc; Eina_List *was = NULL; - if ((!font) || (size <= 0)) return; evas_object_async_block(obj); + if ((size == o->cur.size) && + ((!font && !o->cur.font) || +(font && o->cur.font && !strcmp(font, o->cur.font return; /* We can't assume the given font is same with current fdesc by comparing string. Since Evas starts to supporting "auto" for language, @@ -1002,7 +1005,9 @@ _evas_text_efl_gfx_size_set(Eo *eo_obj, Evas_Text_Data *o, int w, int h) { Evas_Object_Protected_Data *obj = efl_data_scope_get(eo_obj, EFL_CANVAS_OBJECT_CLASS); - evas_object_async_block(obj); + if (_evas_object_intercept_call_evas(obj, EVAS_OBJECT_INTERCEPT_CB_RESIZE, 0, w, h)) + return; + EINA_COW_STATE_WRITE_BEGIN(obj, state_write, cur) { state_write->geometry.w = w; --
[EGIT] [core/efl] master 01/03: elm: Make clock widget more resilient to invalid config
jpeg pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=aac07ca6c1840cf6ad347134147582427af79e2e commit aac07ca6c1840cf6ad347134147582427af79e2e Author: Jean-Philippe AndreDate: Tue Feb 21 16:14:20 2017 +0900 elm: Make clock widget more resilient to invalid config I was in a situation where my elm_config had the proper version but did not contain a proper module name for the clock widget. This resulted in not being able to create any field object in the clock widget... in other words it made for a very useless clock :) Ideally the config should be updated at this point. I'm not sure how to proceed exactly, though :( --- src/lib/elementary/efl_ui_clock.c | 17 - 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/lib/elementary/efl_ui_clock.c b/src/lib/elementary/efl_ui_clock.c index 7a61acd..fbdec4b 100644 --- a/src/lib/elementary/efl_ui_clock.c +++ b/src/lib/elementary/efl_ui_clock.c @@ -81,9 +81,23 @@ static const Evas_Smart_Cb_Description _smart_callbacks[] = { static Clock_Mod_Api * _dt_mod_init() { + static int tried_fallback = 0; Elm_Module *mod = NULL; - if (!(mod = _elm_module_find_as("clock/api"))) return NULL; + if (!(mod = _elm_module_find_as("clock/api"))) + { +if (!tried_fallback && +(!_elm_config->modules || !strstr(_elm_config->modules, "clock/api"))) + { + // See also _config_update(): we hardcode here the default module + ERR("Elementary config does not contain the required module " + "name for the clock widget! Verify your installation."); + _elm_module_add("clock_input_ctxpopup", "clock/api"); + mod = _elm_module_find_as("clock/api"); + tried_fallback = EINA_TRUE; + } +if (!mod) return NULL; + } mod->api = malloc(sizeof(Clock_Mod_Api)); if (!mod->api) return NULL; @@ -896,6 +910,7 @@ _efl_ui_clock_efl_canvas_group_group_add(Eo *obj, Efl_Ui_Clock_Data *priv) } } } + else WRN("Failed to load clock module, clock widget may not show properly!"); priv->freeze_sizing = EINA_TRUE; if (!elm_layout_theme_set(obj, "uiclock", "base", --
[EGIT] [core/efl] master 03/03: edje: Fix a major issue with recalc loop
jpeg pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=882ad6fbf5df6bbfe4a224fafc98992b37dbc668 commit 882ad6fbf5df6bbfe4a224fafc98992b37dbc668 Author: Jean-Philippe AndreDate: Tue Feb 21 17:49:44 2017 +0900 edje: Fix a major issue with recalc loop With the new Efl.Ui.Clock widget, which implements Datetime, most parts are relative to each other, and trigger a near-inifinite recalc of all the parts. Indeed edje was recalculating a part even if it had already calculated it (flag is set). This seemingly simple patch fixes Datetime and probably a lot of other edje widgets. Fixes T4909 @fix --- src/lib/edje/edje_calc.c | 7 +-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/lib/edje/edje_calc.c b/src/lib/edje/edje_calc.c index d52069d..5bb2fbb 100644 --- a/src/lib/edje/edje_calc.c +++ b/src/lib/edje/edje_calc.c @@ -4244,10 +4244,13 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta return; } - if ((ep->calculated & FLAG_XY) == FLAG_XY && !state) + EINA_SAFETY_ON_FALSE_RETURN(flags != FLAG_NONE); + if (!state) { -return; +if ((ep->calculated & FLAG_XY) == FLAG_XY) return; +if ((ep->calculated & flags) == flags) return; } + if (ep->calculating & flags) { #if 1 --
[EGIT] [tools/eflete] master 01/01: resource_manager: add and define structure Script2
rimmed pushed a commit to branch master. http://git.enlightenment.org/tools/eflete.git/commit/?id=86d1d2825438ef384bbda5a43436affb02c7a528 commit 86d1d2825438ef384bbda5a43436affb02c7a528 Author: Tetiana NaumenkoDate: Tue Jan 17 19:15:05 2017 +0200 resource_manager: add and define structure Script2 This structure will be use for load and show script from group and program Change-Id: Ibc3de121f2dba06ddb1fdd1ceab87ba923fddf34 --- src/bin/resource_manager/resource_manager2.h | 10 ++ 1 file changed, 10 insertions(+) diff --git a/src/bin/resource_manager/resource_manager2.h b/src/bin/resource_manager/resource_manager2.h index 128a139..9ae0404 100644 --- a/src/bin/resource_manager/resource_manager2.h +++ b/src/bin/resource_manager/resource_manager2.h @@ -30,6 +30,7 @@ enum _Resource2_Type RESOURCE2_TYPE_STATE, RESOURCE2_TYPE_ITEM, RESOURCE2_TYPE_PROGRAM, + RESOURCE2_TYPE_SCRIPT, RESOURCE2_TYPE_LIMIT, /* not yet */ RESOURCE2_TYPE_DATA_GLOBAL, RESOURCE2_TYPE_DATA_GROUP, @@ -84,6 +85,7 @@ typedef struct _Sound2 Sound2; typedef struct _Sound2 Font2; typedef struct _Sound2 Global_Data2; typedef struct _Sound2 Group_Data2; +typedef struct _Script2 Script2; struct _Resource2 { @@ -97,6 +99,7 @@ struct _Group2 Eina_List *programs; Eina_List *data_items; Eina_List *limits; + Script2 *script; Group2 *main_group; /**< pointer to main group. NULL if group is not an alias */ Eina_List *aliases;/**< list of pointers to aliases. NULL if group is an alias */ @@ -151,6 +154,13 @@ struct _Program2 Group2 *group; }; + +struct _Script2 +{ + Resource2_Internal common; + Eina_Strbuf *code; /**< pointer to script code */ +}; + struct _Style2 { Resource2_Internal common; --