[EGIT] [misc/polkit-efl] master 01/02: Section dialog init with comments
kuuko pushed a commit to branch master. http://git.enlightenment.org/misc/polkit-efl.git/commit/?id=a6f4f5d266785cc098af7ef2c46f9e0b334da5ec commit a6f4f5d266785cc098af7ef2c46f9e0b334da5ec Author: Kai Huuhko kai.huu...@gmail.com Date: Wed Jun 4 08:00:29 2014 +0300 Section dialog init with comments --- polkit-efl-authentication-agent-1 | 6 ++ 1 file changed, 6 insertions(+) diff --git a/polkit-efl-authentication-agent-1 b/polkit-efl-authentication-agent-1 index d542883..6cec634 100755 --- a/polkit-efl-authentication-agent-1 +++ b/polkit-efl-authentication-agent-1 @@ -417,6 +417,7 @@ class AuthenticationDialog(Window): if os.path.exists(td): Theme.default_get().extension_add(td) +# === MAIN LAYOUT === layout = self.layout = Layout( self, size_hint_weight=EXPAND_BOTH, theme=(layout, polkit-auth, base) @@ -484,6 +485,7 @@ class AuthenticationDialog(Window): edje,change,file, edje, self.resend_signals ) +# === PASSWORD ENTRY === pw_entry = self.pw_entry = PasswordEntry(layout) layout.content_set(polkit.swallow.password, pw_entry) @@ -492,6 +494,7 @@ class AuthenticationDialog(Window): _(Select Authentication ID) ) +# === AUTH ID SELECTOR === name_sel = Hoversel( self, size_hint_align=FILL_HORIZ, text=names[0][0] ) @@ -507,6 +510,7 @@ class AuthenticationDialog(Window): layout.content_set(polkit.swallow.users, name_sel) +# === BUTTON BOX === bt_box = self.bt_box = Box( layout, size_hint_align=FILL_HORIZ, horizontal=True, focus_allow=False @@ -545,6 +549,7 @@ class AuthenticationDialog(Window): layout.content_set(polkit.swallow.buttons, bt_box) +# === KEYBOARD HANDLER === def key_handler(obj, src, ev_type, event, *args, **kwargs): if not ev_type == EVAS_CALLBACK_KEY_UP: return @@ -556,6 +561,7 @@ class AuthenticationDialog(Window): cancel_cb(obj) layout.elm_event_callback_add(key_handler) +# === ICON === app_ic = Icon(layout) if icon_name: --
[EGIT] [misc/polkit-efl] master 02/02: Go to auth when id selected, add kb navigation to hoversel
kuuko pushed a commit to branch master. http://git.enlightenment.org/misc/polkit-efl.git/commit/?id=587b7ce1ee279c297067a4c9016dd6d00b012bf2 commit 587b7ce1ee279c297067a4c9016dd6d00b012bf2 Author: Kai Huuhko kai.huu...@gmail.com Date: Wed Jun 4 09:39:13 2014 +0300 Go to auth when id selected, add kb navigation to hoversel kb nav keys are up/down/return --- polkit-efl-authentication-agent-1 | 82 +-- 1 file changed, 70 insertions(+), 12 deletions(-) diff --git a/polkit-efl-authentication-agent-1 b/polkit-efl-authentication-agent-1 index 6cec634..8fc423c 100755 --- a/polkit-efl-authentication-agent-1 +++ b/polkit-efl-authentication-agent-1 @@ -459,8 +459,8 @@ class AuthenticationDialog(Window): polkit.text.help, _(Select Authentication ID) ) -ok_bt.disabled = False name_sel.disabled = False +name_sel.text = _(Select Authentication ID) try: ic = self.layout.content_get(polkit.swallow.info) ic.standard = icon_name @@ -495,16 +495,18 @@ class AuthenticationDialog(Window): ) # === AUTH ID SELECTOR === -name_sel = Hoversel( -self, size_hint_align=FILL_HORIZ, text=names[0][0] +name_sel = TrackingHoversel( +self, size_hint_align=FILL_HORIZ, +text=_(Select Authentication ID) ) for i in names: -HoverselItem(i[0]).add_to(name_sel) +TrackingHoverselItem(i[0]).add_to(name_sel) def selected_cb(obj, it): log.debug(Name %s selected % (it.text)) pw_entry.text = name_sel.text = it.text +ok_cb(None) name_sel.callback_selected_add(selected_cb) @@ -517,11 +519,12 @@ class AuthenticationDialog(Window): ) def ok_cb(obj): -log.debug(Auth ID selected, authenticating...) -for w in (ok_bt, name_sel): -w.disabled = True -self.authenticating = True name = name_sel.text +if name == _(Select Authentication ID): +return +name_sel.disabled = True +self.authenticating = True +log.debug(Auth ID selected, authenticating...) agent.authenticate(name, cookie, return_cb, error_cb) def cancel_cb(obj): @@ -530,8 +533,6 @@ class AuthenticationDialog(Window): self.layout.signal_emit(polkit,hide, polkit) agent.cancel_authentication(cookie, error_cb) -ok_bt = self.ok_bt = Button(bt_box, text=_(OK), focus_allow=False) -ok_bt.callback_clicked_add(ok_cb) ca_bt = Button(bt_box, text=_(Cancel), focus_allow=False) ca_bt.callback_clicked_add(cancel_cb) sep = Separator(bt_box, horizontal=False) @@ -543,7 +544,7 @@ class AuthenticationDialog(Window): act_bt = Button(bt_box, text=_(Details), focus_allow=False) act_bt.callback_clicked_add(det_cb) -for w in ok_bt, ca_bt, sep, act_bt: +for w in ca_bt, sep, act_bt: bt_box.pack_end(w) w.show() @@ -553,12 +554,17 @@ class AuthenticationDialog(Window): def key_handler(obj, src, ev_type, event, *args, **kwargs): if not ev_type == EVAS_CALLBACK_KEY_UP: return -if event.key == Return and not self.authenticating: +elif event.key == Up: +name_sel.display_prev() +elif event.key == Down: +name_sel.display_next() +elif event.key == Return and not self.authenticating: log.debug(Handling key Return) ok_cb(obj) elif event.key == Escape: log.debug(Handling key Escape) cancel_cb(obj) + layout.elm_event_callback_add(key_handler) # === ICON === @@ -823,6 +829,58 @@ class Details(InnerWindow): self.activate() +class TrackingHoverselItem(HoverselItem): +def delete(self): +sel_i = self.widget.displayed_item +if sel_i == self: +self.widget.displayed_item = None +HoverselItem.delete(self) + + +class TrackingHoversel(Hoversel): + +displayed_item = None + +def __init__(self, *args, **kwargs): +Hoversel.__init__(self, *args, **kwargs) + +def selected_cb(obj, item): +self.displayed_item = item + +self.callback_selected_add(selected_cb) + +def clear(self): +self.displayed_item = None +Hoversel.clear(self) + +def display_item(self, item): +self.display_item = item +self.text = item.text + +def display_next(self): +if not self.items: +return +if self.displayed_item is None: +self.displayed_item = self.items[0] +elif len(self.items) 2: +return
[EGIT] [misc/polkit-efl] master 01/01: Add back ok button and display the first auth id initially
kuuko pushed a commit to branch master. http://git.enlightenment.org/misc/polkit-efl.git/commit/?id=642d3cbdd48bc5c3bb247691426de4a50cb70f71 commit 642d3cbdd48bc5c3bb247691426de4a50cb70f71 Author: Kai Huuhko kai.huu...@gmail.com Date: Wed Jun 4 10:29:59 2014 +0300 Add back ok button and display the first auth id initially --- polkit-efl-authentication-agent-1 | 14 +- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/polkit-efl-authentication-agent-1 b/polkit-efl-authentication-agent-1 index 8fc423c..8c4f673 100755 --- a/polkit-efl-authentication-agent-1 +++ b/polkit-efl-authentication-agent-1 @@ -459,8 +459,8 @@ class AuthenticationDialog(Window): polkit.text.help, _(Select Authentication ID) ) -name_sel.disabled = False -name_sel.text = _(Select Authentication ID) +for w in ok_bt, name_sel: +w.disabled = False try: ic = self.layout.content_get(polkit.swallow.info) ic.standard = icon_name @@ -497,7 +497,7 @@ class AuthenticationDialog(Window): # === AUTH ID SELECTOR === name_sel = TrackingHoversel( self, size_hint_align=FILL_HORIZ, -text=_(Select Authentication ID) +#text=_(Select Authentication ID) ) for i in names: TrackingHoverselItem(i[0]).add_to(name_sel) @@ -509,6 +509,7 @@ class AuthenticationDialog(Window): ok_cb(None) name_sel.callback_selected_add(selected_cb) +name_sel.display_item(name_sel.items[0]) layout.content_set(polkit.swallow.users, name_sel) @@ -522,7 +523,8 @@ class AuthenticationDialog(Window): name = name_sel.text if name == _(Select Authentication ID): return -name_sel.disabled = True +for w in ok_bt, name_sel: +w.disabled = True self.authenticating = True log.debug(Auth ID selected, authenticating...) agent.authenticate(name, cookie, return_cb, error_cb) @@ -533,6 +535,8 @@ class AuthenticationDialog(Window): self.layout.signal_emit(polkit,hide, polkit) agent.cancel_authentication(cookie, error_cb) +ok_bt = Button(bt_box, text=_(OK), focus_allow=False) +ok_bt.callback_clicked_add(ok_cb) ca_bt = Button(bt_box, text=_(Cancel), focus_allow=False) ca_bt.callback_clicked_add(cancel_cb) sep = Separator(bt_box, horizontal=False) @@ -544,7 +548,7 @@ class AuthenticationDialog(Window): act_bt = Button(bt_box, text=_(Details), focus_allow=False) act_bt.callback_clicked_add(det_cb) -for w in ca_bt, sep, act_bt: +for w in ok_bt, ca_bt, sep, act_bt: bt_box.pack_end(w) w.show() --
[EGIT] [misc/polkit-efl] master 01/01: Fix kb nav prev
kuuko pushed a commit to branch master. http://git.enlightenment.org/misc/polkit-efl.git/commit/?id=f432643980ba0710df8ddeb00e697b2b8a97dd21 commit f432643980ba0710df8ddeb00e697b2b8a97dd21 Author: Kai Huuhko kai.huu...@gmail.com Date: Wed Jun 4 10:37:58 2014 +0300 Fix kb nav prev --- polkit-efl-authentication-agent-1 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/polkit-efl-authentication-agent-1 b/polkit-efl-authentication-agent-1 index 8c4f673..4f6db54 100755 --- a/polkit-efl-authentication-agent-1 +++ b/polkit-efl-authentication-agent-1 @@ -858,7 +858,7 @@ class TrackingHoversel(Hoversel): Hoversel.clear(self) def display_item(self, item): -self.display_item = item +self.displayed_item = item self.text = item.text def display_next(self): @@ -877,7 +877,7 @@ class TrackingHoversel(Hoversel): if not self.items: return if self.displayed_item is None: -self.displayed_item = self.items[len(self.items-1)] +self.displayed_item = self.items[len(self.items)-1] elif len(self.items) 2: return else: --
[EGIT] [core/efl] master 01/01: Evas textblock: Fix crash when cutting ligatures with formats.
tasn pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=3b70b4f28f9a5c0ab24181220501506d2e61871b commit 3b70b4f28f9a5c0ab24181220501506d2e61871b Author: Tom Hacohen t...@stosb.com Date: Wed Jun 4 10:14:24 2014 +0100 Evas textblock: Fix crash when cutting ligatures with formats. fcolor=#f00i/colorf could cause textblock to crash. It doesn't crash anymore. It doesn't render the colours correctly either, but at least this is the first step. This is the start of fixing T1308 @bugfix --- src/lib/evas/common/evas_text_utils.c | 4 src/tests/evas/evas_test_textblock.c | 3 +++ 2 files changed, 7 insertions(+) diff --git a/src/lib/evas/common/evas_text_utils.c b/src/lib/evas/common/evas_text_utils.c index 2b43695..dc2407f 100644 --- a/src/lib/evas/common/evas_text_utils.c +++ b/src/lib/evas/common/evas_text_utils.c @@ -180,6 +180,10 @@ evas_common_text_props_index_find(const Evas_Text_Props *props, int _cutoff) int max = props-len - 1; int mid; + /* Props can be empty, verify they are not before going on. */ + if (!props-info) + return -1; + _cutoff += props-text_offset; ot_info = props-info-ot + props-start; /* Should get us closer to the right place. */ diff --git a/src/tests/evas/evas_test_textblock.c b/src/tests/evas/evas_test_textblock.c index 4c48b60..d8949e2 100644 --- a/src/tests/evas/evas_test_textblock.c +++ b/src/tests/evas/evas_test_textblock.c @@ -2612,6 +2612,9 @@ START_TEST(evas_textblock_formats) evas_object_textblock_text_markup_prepend(cur, b/b); ck_assert_str_eq(evas_object_textblock_text_markup_get(tb), abb/bcbr/def); + /* Ligatures cut by formats */ + evas_object_textblock_text_markup_set(tb, fcolor=#f00i/colorf); + evas_object_textblock_size_formatted_get(tb, NULL, NULL); END_TB_TEST(); } --
[EGIT] [core/efl] efl-1.10 01/01: Evas textblock: Fix crash when cutting ligatures with formats.
tasn pushed a commit to branch efl-1.10. http://git.enlightenment.org/core/efl.git/commit/?id=ebefec258521a1683dd5667e487be45c12cf5db1 commit ebefec258521a1683dd5667e487be45c12cf5db1 Author: Tom Hacohen t...@stosb.com Date: Wed Jun 4 10:14:24 2014 +0100 Evas textblock: Fix crash when cutting ligatures with formats. fcolor=#f00i/colorf could cause textblock to crash. It doesn't crash anymore. It doesn't render the colours correctly either, but at least this is the first step. This is the start of fixing T1308 @fix --- src/lib/evas/common/evas_text_utils.c | 4 src/tests/evas/evas_test_textblock.c | 3 +++ 2 files changed, 7 insertions(+) diff --git a/src/lib/evas/common/evas_text_utils.c b/src/lib/evas/common/evas_text_utils.c index 2b43695..dc2407f 100644 --- a/src/lib/evas/common/evas_text_utils.c +++ b/src/lib/evas/common/evas_text_utils.c @@ -180,6 +180,10 @@ evas_common_text_props_index_find(const Evas_Text_Props *props, int _cutoff) int max = props-len - 1; int mid; + /* Props can be empty, verify they are not before going on. */ + if (!props-info) + return -1; + _cutoff += props-text_offset; ot_info = props-info-ot + props-start; /* Should get us closer to the right place. */ diff --git a/src/tests/evas/evas_test_textblock.c b/src/tests/evas/evas_test_textblock.c index 8b23393..31d4c0c 100644 --- a/src/tests/evas/evas_test_textblock.c +++ b/src/tests/evas/evas_test_textblock.c @@ -2577,6 +2577,9 @@ START_TEST(evas_textblock_formats) evas_object_textblock_text_markup_prepend(cur, b/b); ck_assert_str_eq(evas_object_textblock_text_markup_get(tb), abb/bcbr/def); + /* Ligatures cut by formats */ + evas_object_textblock_text_markup_set(tb, fcolor=#f00i/colorf); + evas_object_textblock_size_formatted_get(tb, NULL, NULL); END_TB_TEST(); } --
Re: [E-devel] [EGIT] [core/efl] master 01/01: Evas textblock: Fix crash when cutting ligatures with formats.
Yeah, I accidentally used the wrong tag (@bugfix) because of e. :) Sorry. -- Tom. On 04/06/14 10:17, Tom Hacohen wrote: tasn pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=3b70b4f28f9a5c0ab24181220501506d2e61871b commit 3b70b4f28f9a5c0ab24181220501506d2e61871b Author: Tom Hacohen t...@stosb.com Date: Wed Jun 4 10:14:24 2014 +0100 Evas textblock: Fix crash when cutting ligatures with formats. fcolor=#f00i/colorf could cause textblock to crash. It doesn't crash anymore. It doesn't render the colours correctly either, but at least this is the first step. This is the start of fixing T1308 @bugfix --- src/lib/evas/common/evas_text_utils.c | 4 src/tests/evas/evas_test_textblock.c | 3 +++ 2 files changed, 7 insertions(+) diff --git a/src/lib/evas/common/evas_text_utils.c b/src/lib/evas/common/evas_text_utils.c index 2b43695..dc2407f 100644 --- a/src/lib/evas/common/evas_text_utils.c +++ b/src/lib/evas/common/evas_text_utils.c @@ -180,6 +180,10 @@ evas_common_text_props_index_find(const Evas_Text_Props *props, int _cutoff) int max = props-len - 1; int mid; + /* Props can be empty, verify they are not before going on. */ + if (!props-info) + return -1; + _cutoff += props-text_offset; ot_info = props-info-ot + props-start; /* Should get us closer to the right place. */ diff --git a/src/tests/evas/evas_test_textblock.c b/src/tests/evas/evas_test_textblock.c index 4c48b60..d8949e2 100644 --- a/src/tests/evas/evas_test_textblock.c +++ b/src/tests/evas/evas_test_textblock.c @@ -2612,6 +2612,9 @@ START_TEST(evas_textblock_formats) evas_object_textblock_text_markup_prepend(cur, b/b); ck_assert_str_eq(evas_object_textblock_text_markup_get(tb), abb/bcbr/def); + /* Ligatures cut by formats */ + evas_object_textblock_text_markup_set(tb, fcolor=#f00i/colorf); + evas_object_textblock_size_formatted_get(tb, NULL, NULL); END_TB_TEST(); } -- Learn Graph Databases - Download FREE O'Reilly Book Graph Databases is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[EGIT] [misc/polkit-efl] master 01/01: Icons for fail/success (not used anywhere yet)
kuuko pushed a commit to branch master. http://git.enlightenment.org/misc/polkit-efl.git/commit/?id=c4bacc5a28ea8537ad42bb2b4ae6a5aad45975cf commit c4bacc5a28ea8537ad42bb2b4ae6a5aad45975cf Author: Kai Huuhko kai.huu...@gmail.com Date: Wed Jun 4 14:58:44 2014 +0300 Icons for fail/success (not used anywhere yet) --- COPYING-ICONS| 2 ++ data/theme/images/agt_action_fail1.png | Bin 0 - 6727 bytes data/theme/images/agt_action_success.png | Bin 0 - 4482 bytes 3 files changed, 2 insertions(+) diff --git a/COPYING-ICONS b/COPYING-ICONS new file mode 100644 index 000..2a224ad --- /dev/null +++ b/COPYING-ICONS @@ -0,0 +1,2 @@ +This software contains icons from Crystal Clear Actions icon set +by Everaldo Coelho, licensed under GPL (See COPYING). diff --git a/data/theme/images/agt_action_fail1.png b/data/theme/images/agt_action_fail1.png new file mode 100644 index 000..5724d8c Binary files /dev/null and b/data/theme/images/agt_action_fail1.png differ diff --git a/data/theme/images/agt_action_success.png b/data/theme/images/agt_action_success.png new file mode 100644 index 000..47ea728 Binary files /dev/null and b/data/theme/images/agt_action_success.png differ --
[EGIT] [tools/enventor] master 01/01: editor - fix the incorrect line increase at copy paste.
hermet pushed a commit to branch master. http://git.enlightenment.org/tools/enventor.git/commit/?id=0cd86f12895d6ae49ebd9f071241b124b16df654 commit 0cd86f12895d6ae49ebd9f071241b124b16df654 Author: ChunEon Park her...@hermet.pe.kr Date: Wed Jun 4 22:37:00 2014 +0900 editor - fix the incorrect line increase at copy paste. --- src/bin/edc_editor.c | 24 +--- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/src/bin/edc_editor.c b/src/bin/edc_editor.c index 5f1e0bc..ce4d25b 100644 --- a/src/bin/edc_editor.c +++ b/src/bin/edc_editor.c @@ -57,13 +57,17 @@ line_init(edit_data *ed) } static void -line_increase(edit_data *ed) +line_increase(edit_data *ed, int cnt) { char buf[MAX_LINE_DIGIT_CNT]; + int i; - ed-line_max++; - snprintf(buf, sizeof(buf), br/%d, ed-line_max); - elm_entry_entry_append(ed-en_line, buf); + for (i = 0; i cnt; i++) + { +ed-line_max++; +snprintf(buf, sizeof(buf), br/%d, ed-line_max); +elm_entry_entry_append(ed-en_line, buf); + } } static void @@ -243,9 +247,15 @@ edit_changed_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info) if (!strcmp(info-change.insert.content, EOL)) { - line_increase(ed); + line_increase(ed, 1); syntax_color = EINA_FALSE; } +else + { + int increase = +parser_line_cnt_get(ed-pd, info-change.insert.content); + line_increase(ed, increase); + } if (config_auto_indent_get()) indent_insert_apply(syntax_indent_data_get(ed-sh), ed-en_edit, @@ -417,7 +427,7 @@ edit_template_insert(edit_data *ed) elm_entry_entry_insert(ed-en_edit, p); elm_entry_entry_insert(ed-en_edit, t[i]); //Incease line by (line count - 1) -line_increase(ed); +line_increase(ed, 1); } elm_entry_entry_insert(ed-en_edit, p); @@ -497,7 +507,7 @@ edit_template_part_insert(edit_data *ed, Edje_Part_Type type) elm_entry_entry_insert(ed-en_edit, p); elm_entry_entry_insert(ed-en_edit, t[i]); //Incease line by (line count - 1) -line_increase(ed); +line_increase(ed, 1); } elm_entry_entry_insert(ed-en_edit, p); --
[EGIT] [core/enlightenment] master 01/02: update eo class names, add hack for 1.10 class name compat
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=67855482fcd641312f0e3b1061d7cb98dc76dca3 commit 67855482fcd641312f0e3b1061d7cb98dc76dca3 Author: Mike Blumenkrantz zm...@samsung.com Date: Wed Jun 4 09:28:17 2014 -0400 update eo class names, add hack for 1.10 class name compat --- src/bin/e.h | 9 + src/bin/e_menu.c | 39 +++ src/modules/ibox/e_mod_main.c | 4 ++-- 3 files changed, 26 insertions(+), 26 deletions(-) diff --git a/src/bin/e.h b/src/bin/e.h index 7fbc1cd..1a743fd 100644 --- a/src/bin/e.h +++ b/src/bin/e.h @@ -119,6 +119,11 @@ void *alloca (size_t); # include Emotion.h # include Elementary.h +/* FIXME: remove this hack at some point */ +# ifndef EDJE_CLASS +# define EDJE_CLASS EDJE_OBJ_CLASS +#endif + # ifdef HAVE_HAL # include E_Hal.h # endif @@ -182,10 +187,6 @@ typedef struct _E_Rect E_Rect; # define MAX(x, y) (((x) (y)) ? (x) : (y)) #endif -#if (EINA_VERSION_MAJOR == 1) (EINA_VERSION_MINOR 8) -# define eina_list_last_data_get(X) eina_list_data_get(eina_list_last(X)) -#endif - # define E_FREE_FUNC(_h, _fn) do { if (_h) { _fn((void*)_h); _h = NULL; } } while (0) # define E_INTERSECTS(x, y, w, h, xx, yy, ww, hh) \ (((x) ((xx) + (ww))) ((y) ((yy) + (hh))) (((x) + (w)) (xx)) (((y) + (h)) (yy))) diff --git a/src/bin/e_menu.c b/src/bin/e_menu.c index fd87262..3947f52 100644 --- a/src/bin/e_menu.c +++ b/src/bin/e_menu.c @@ -1,5 +1,4 @@ #include e.h -#include Eo.h /* TODO List: * @@ -750,7 +749,7 @@ e_menu_item_submenu_set(E_Menu_Item *mi, E_Menu *sub) { if (mi-submenu_object) { - if (eo_isa(mi-submenu_object, EDJE_OBJ_CLASS)) + if (eo_isa(mi-submenu_object, EDJE_CLASS)) { /* already have a correct submenu object, don't re-set it */ _e_menu_lock = EINA_FALSE; @@ -880,11 +879,11 @@ e_menu_item_toggle_set(E_Menu_Item *mi, int tog) edje_object_signal_emit(mi-bg_object, e,state,on, e); if (mi-icon_bg_object) edje_object_signal_emit(mi-icon_bg_object, e,state,on, e); -if (mi-label_object eo_isa(mi-label_object, EDJE_OBJ_CLASS)) +if (mi-label_object eo_isa(mi-label_object, EDJE_CLASS)) edje_object_signal_emit(mi-label_object, e,state,on, e); -if (mi-submenu_object eo_isa(mi-submenu_object, EDJE_OBJ_CLASS)) +if (mi-submenu_object eo_isa(mi-submenu_object, EDJE_CLASS)) edje_object_signal_emit(mi-submenu_object, e,state,on, e); -if (mi-toggle_object eo_isa(mi-toggle_object, EDJE_OBJ_CLASS)) +if (mi-toggle_object eo_isa(mi-toggle_object, EDJE_CLASS)) edje_object_signal_emit(mi-toggle_object, e,state,on, e); if (mi-menu-bg_object) edje_object_signal_emit(mi-menu-bg_object, e,state,on, e); @@ -896,11 +895,11 @@ e_menu_item_toggle_set(E_Menu_Item *mi, int tog) edje_object_signal_emit(mi-bg_object, e,state,off, e); if (mi-icon_bg_object) edje_object_signal_emit(mi-icon_bg_object, e,state,off, e); -if (mi-label_object eo_isa(mi-label_object, EDJE_OBJ_CLASS)) +if (mi-label_object eo_isa(mi-label_object, EDJE_CLASS)) edje_object_signal_emit(mi-label_object, e,state,off, e); -if (mi-submenu_object eo_isa(mi-submenu_object, EDJE_OBJ_CLASS)) +if (mi-submenu_object eo_isa(mi-submenu_object, EDJE_CLASS)) edje_object_signal_emit(mi-submenu_object, e,state,off, e); -if (mi-toggle_object eo_isa(mi-toggle_object, EDJE_OBJ_CLASS)) +if (mi-toggle_object eo_isa(mi-toggle_object, EDJE_CLASS)) edje_object_signal_emit(mi-toggle_object, e,state,off, e); if (mi-menu-bg_object) edje_object_signal_emit(mi-menu-bg_object, e,state,off, e); @@ -1010,17 +1009,17 @@ e_menu_item_active_set(E_Menu_Item *mi, int active) edje_object_signal_emit(mi-bg_object, e,state,selected, e); if (mi-icon_bg_object) edje_object_signal_emit(mi-icon_bg_object, e,state,selected, e); -if (mi-label_object eo_isa(mi-label_object, EDJE_OBJ_CLASS)) +if (mi-label_object eo_isa(mi-label_object, EDJE_CLASS)) edje_object_signal_emit(mi-label_object, e,state,selected, e); -if (mi-submenu_object eo_isa(mi-submenu_object, EDJE_OBJ_CLASS)) +if (mi-submenu_object eo_isa(mi-submenu_object, EDJE_CLASS)) edje_object_signal_emit(mi-submenu_object, e,state,selected, e); -if (mi-toggle_object eo_isa(mi-toggle_object, EDJE_OBJ_CLASS)) +if (mi-toggle_object eo_isa(mi-toggle_object, EDJE_CLASS)) edje_object_signal_emit(mi-toggle_object, e,state,selected, e); if (mi-icon_key) { if (mi-icon_object) { - if (eo_isa(mi-icon_object,
[EGIT] [core/enlightenment] master 02/02: v0.19 alpha
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=11674070b0879bc6dac4424608b2cf8a67a8f21c commit 11674070b0879bc6dac4424608b2cf8a67a8f21c Author: Mike Blumenkrantz zm...@samsung.com Date: Wed Jun 4 10:08:36 2014 -0400 v0.19 alpha IT'S HAPPENING http://media0.giphy.com/media/rl0FOxdz7CcxO/giphy.gif --- NEWS | 147 ++- configure.ac | 17 +++ 2 files changed, 155 insertions(+), 9 deletions(-) diff --git a/NEWS b/NEWS index 863fa85..7b81065 100644 --- a/NEWS +++ b/NEWS @@ -1,4 +1,149 @@ -Changes since 0.17.0: +Release 0.19.0: +- + +Features: + * improved wayland support + * e_uuid_store: Add infrastructure to store window/surface properties. + * Add a tiling profile. + * per-screen desklock logo visibility config + * Tiling: Merge the tiling module rework.. + * check udisks1 DevicePresentationHide flag + * ACTIVATE_EXCLUDE window active hint policy + * show video resolution in filepreview widget + * add fileman option to clamp video size for video previews + * handle xrandr backlight using a single, accurate handler + * blanking options for wakeup on events (urgent + notify) + * packagekit module for package manager integration + * ibar now optionaly triggers its menu on mouse in + * selective redirection toggling + * support XPRESENT extension to reduce compositing overhead + * new focus option raise on revert focus + * add PIN-style desklock for lokker module + * make desklock hookable, break out current desklock into module, move pam stuff to separate file + * revive personal desklock passwords + * allow moveresize visuals to be replaced + * allow desk flip animations to be handled completely externally + * E16-style live pager returns! + * comp config is no longer a module + * E_FIRST_FRAME env variable + * add script to set some debug vars + * new compositor + * add E_MODULE_SRC_PATH for setting current module src path without needing to install modules + * use non-recursive makefiles for entire build system + +Improvements: + * filemanager popups no longer span multiple monitors + * system operations no longer dim screen until action has begun + * window stacking and focus restore is more accurate across restarts + * gstreamer1 is now used for media previews + +Release 0.18.8: +- + +* screenshot now displays a helpful error message when it fails +* efm no longer sometimes shows files from other directories +* efm no longer sometimes shows blank filenames +* fix syscon button signals +* fix winlist scrolling +* fix systray appindicator deletion +* fix systray appindicator icon loading + +Release 0.18.7: +- + +* unify temp module temperature_get_bus_files() functions +* check notification icon size correctly +* correctly check evry trigger matches +* comp config dialog correctly detects effects disabled/fast states +* efm current .desktop fetching now returns the right .desktop +* swallow efm background objects after applying theme +* ibar now scrolls correctly during drags +* no longer place windows at 0,0 during restart +* music_control: Use correct markup for metadata text. + + +Release 0.18.6: +- + +* wl_desktop_shell builds out of source tree +* get entry width based on viewport size, not entry size +* fix hiding of windows when delete is requested +* don't deref teamwork pointer after null check +* don't deref possibly-null value in mouse bindings +* correctly calculate minimum flowlayout rows +* efm_op no longer tries to close invalid fds during delete ops +* don't use external log domain in systray +* don't use external log domain in music player +* don't crash when saving screenshots with no file extension +* don't crash on possibly-null gadman bg string extensions +* check for unicode string end in client menu +* don't crash when passing NULL desk to e_border_under_pointer_get +* set connman pending.disconnect when disconnecting a service +* don't iterate with or access freed pointer in comp match dialog +* ensure use of non-garbage values for menu item icon placeholders +* use more descriptive + accurate buffer size in batget iterator +* prevent out of bounds access in systray theme setup +* prevent out of bounds write in e_intl_locale_parts_get() +* ensure null termination of string in xsettings config +* dim/undim actions don't require acpi triggers + + +Release 0.18.5: +- + +* Fix selection of the standard profile in wizard. +* pointer warp speed config slider correctly detects changed state +* set border starting geometry from initial zone +* don't use raise stack for iterating borders +* Fix wl_desktop_shell compiler warning for Mike +* evry string matching now handles UTF8 +* remove efm nav SELF_RENAME handler + +Release 0.18.4: +- + +* fixed menu placement in some cases +* fixed dnd indicator visibility after
Re: [E-devel] [EGIT] [core/efl] master 01/01: Evas textblock: Fix crash when cutting ligatures with formats.
Unrelated to this change. Do you use e17 or an older version? On 04/06/14 15:10, Thanatermesis wrote: Mmh, I'm not sure how much this could be related but I just noticed things different after moving from 1.9 to 1.10 of efl elementary, for example: - title in e17 windows looks in a lower position and the window border looks smaller: - e17 with 1.10: http://www.enlightenment.org/ss/display.php?image=e-538f192035ed54.53261866.jpg - e17 with 1.9: http://www.enlightenment.org/ss/display.php?image=e-538f26c4704c86.21032476.jpg - wizard steps doesn't show correctly the sentences in the button, they looks cutted: - http://www.enlightenment.org/ss/display.php?image=e-538f28a6d73883.22714075.jpg 2014-06-04 11:22 GMT+02:00 Tom Hacohen tom.haco...@samsung.com: Yeah, I accidentally used the wrong tag (@bugfix) because of e. :) Sorry. -- Tom. On 04/06/14 10:17, Tom Hacohen wrote: tasn pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=3b70b4f28f9a5c0ab24181220501506d2e61871b commit 3b70b4f28f9a5c0ab24181220501506d2e61871b Author: Tom Hacohen t...@stosb.com Date: Wed Jun 4 10:14:24 2014 +0100 Evas textblock: Fix crash when cutting ligatures with formats. fcolor=#f00i/colorf could cause textblock to crash. It doesn't crash anymore. It doesn't render the colours correctly either, but at least this is the first step. This is the start of fixing T1308 @bugfix --- src/lib/evas/common/evas_text_utils.c | 4 src/tests/evas/evas_test_textblock.c | 3 +++ 2 files changed, 7 insertions(+) diff --git a/src/lib/evas/common/evas_text_utils.c b/src/lib/evas/common/evas_text_utils.c index 2b43695..dc2407f 100644 --- a/src/lib/evas/common/evas_text_utils.c +++ b/src/lib/evas/common/evas_text_utils.c @@ -180,6 +180,10 @@ evas_common_text_props_index_find(const Evas_Text_Props *props, int _cutoff) int max = props-len - 1; int mid; + /* Props can be empty, verify they are not before going on. */ + if (!props-info) + return -1; + _cutoff += props-text_offset; ot_info = props-info-ot + props-start; /* Should get us closer to the right place. */ diff --git a/src/tests/evas/evas_test_textblock.c b/src/tests/evas/evas_test_textblock.c index 4c48b60..d8949e2 100644 --- a/src/tests/evas/evas_test_textblock.c +++ b/src/tests/evas/evas_test_textblock.c @@ -2612,6 +2612,9 @@ START_TEST(evas_textblock_formats) evas_object_textblock_text_markup_prepend(cur, b/b); ck_assert_str_eq(evas_object_textblock_text_markup_get(tb), abb/bcbr/def); + /* Ligatures cut by formats */ + evas_object_textblock_text_markup_set(tb, fcolor=#f00i/colorf); + evas_object_textblock_size_formatted_get(tb, NULL, NULL); END_TB_TEST(); } -- Learn Graph Databases - Download FREE O'Reilly Book Graph Databases is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Learn Graph Databases - Download FREE O'Reilly Book Graph Databases is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Learn Graph Databases - Download FREE O'Reilly Book Graph Databases is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] [EGIT] [core/efl] master 01/01: Evas textblock: Fix crash when cutting ligatures with formats.
Mmh, I'm not sure how much this could be related but I just noticed things different after moving from 1.9 to 1.10 of efl elementary, for example: - title in e17 windows looks in a lower position and the window border looks smaller: - e17 with 1.10: http://www.enlightenment.org/ss/display.php?image=e-538f192035ed54.53261866.jpg - e17 with 1.9: http://www.enlightenment.org/ss/display.php?image=e-538f26c4704c86.21032476.jpg - wizard steps doesn't show correctly the sentences in the button, they looks cutted: - http://www.enlightenment.org/ss/display.php?image=e-538f28a6d73883.22714075.jpg 2014-06-04 11:22 GMT+02:00 Tom Hacohen tom.haco...@samsung.com: Yeah, I accidentally used the wrong tag (@bugfix) because of e. :) Sorry. -- Tom. On 04/06/14 10:17, Tom Hacohen wrote: tasn pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=3b70b4f28f9a5c0ab24181220501506d2e61871b commit 3b70b4f28f9a5c0ab24181220501506d2e61871b Author: Tom Hacohen t...@stosb.com Date: Wed Jun 4 10:14:24 2014 +0100 Evas textblock: Fix crash when cutting ligatures with formats. fcolor=#f00i/colorf could cause textblock to crash. It doesn't crash anymore. It doesn't render the colours correctly either, but at least this is the first step. This is the start of fixing T1308 @bugfix --- src/lib/evas/common/evas_text_utils.c | 4 src/tests/evas/evas_test_textblock.c | 3 +++ 2 files changed, 7 insertions(+) diff --git a/src/lib/evas/common/evas_text_utils.c b/src/lib/evas/common/evas_text_utils.c index 2b43695..dc2407f 100644 --- a/src/lib/evas/common/evas_text_utils.c +++ b/src/lib/evas/common/evas_text_utils.c @@ -180,6 +180,10 @@ evas_common_text_props_index_find(const Evas_Text_Props *props, int _cutoff) int max = props-len - 1; int mid; + /* Props can be empty, verify they are not before going on. */ + if (!props-info) + return -1; + _cutoff += props-text_offset; ot_info = props-info-ot + props-start; /* Should get us closer to the right place. */ diff --git a/src/tests/evas/evas_test_textblock.c b/src/tests/evas/evas_test_textblock.c index 4c48b60..d8949e2 100644 --- a/src/tests/evas/evas_test_textblock.c +++ b/src/tests/evas/evas_test_textblock.c @@ -2612,6 +2612,9 @@ START_TEST(evas_textblock_formats) evas_object_textblock_text_markup_prepend(cur, b/b); ck_assert_str_eq(evas_object_textblock_text_markup_get(tb), abb/bcbr/def); + /* Ligatures cut by formats */ + evas_object_textblock_text_markup_set(tb, fcolor=#f00i/colorf); + evas_object_textblock_size_formatted_get(tb, NULL, NULL); END_TB_TEST(); } -- Learn Graph Databases - Download FREE O'Reilly Book Graph Databases is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Learn Graph Databases - Download FREE O'Reilly Book Graph Databases is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] E19 ALPHA1
Get your towels ready, it's about to go down. This is the first official release in the lengthy, multi-year, epic saga which will become known to history as //The E19 Release Cycle//. With the final release planned for sometime in Q3 of 2024, it will come as no surprise to users, testers, packagers, and developers alike that this release has a lot of sharp edges, harkening back to the pre-release years of E17 when anything was possible. =Download= 5117dab27f9b05fddab60d08cb448c93bcdfc7512ce11c516d37747924c25400 http://download.enlightenment.org/rel/apps/enlightenment/enlightenment-0.19.0-alpha1.tar.gz 84c6529547ec1b0111a2b3124385242ab2a7522e6668426364c1dc06d024e036 http://download.enlightenment.org/rel/apps/enlightenment/enlightenment-0.19.0-alpha1.tar.bz2 **Disclaimer:** Enlightenment developers cannot be responsible for any successes which occur during testing of E19. See the full announcement for more details: https://phab.enlightenment.org/phame/live/3/post/e19_alpha1_it_s_happening/ -- Learn Graph Databases - Download FREE O'Reilly Book Graph Databases is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[EGIT] [website/www] master 02/02: update for e19 alpha release
discomfitor pushed a commit to branch master. http://git.enlightenment.org/website/www.git/commit/?id=f2a6ea9b57971be67eb9c72aaff84ea0942fbafd commit f2a6ea9b57971be67eb9c72aaff84ea0942fbafd Author: zmike michael.blumenkra...@gmail.com Date: Wed Jun 4 10:22:46 2014 -0400 update for e19 alpha release --- public_html/p/download/en-body | 8 public_html/p/index/en-body| 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/public_html/p/download/en-body b/public_html/p/download/en-body index e1ee77a..2742e54 100644 --- a/public_html/p/download/en-body +++ b/public_html/p/download/en-body @@ -122,6 +122,14 @@ td class='main' ?php frame1(width=100%);? + div class=mainpbEnlightenment UNSTABLE/b em0.19.0 ALPHA1/em/pp + The Compositing Window Manager and Desktop Shell: PRERELEASE VERSION. /pp align=right?php blinkdl(i/dl.png, + DOWNLOAD, + http://download.enlightenment.org/rel/apps/enlightenment/enlightenment-0.19.0-alpha1.tar.gz; + );?/p/div + ?php frame2();? + + ?php frame1(width=100%);? div class=mainpbEnlightenment/b em0.18.8/em/pp The Compositing Window Manager and Desktop Shell. /pp align=right?php blinkdl(i/dl.png, DOWNLOAD, diff --git a/public_html/p/index/en-body b/public_html/p/index/en-body index acb2e70..4da3361 100644 --- a/public_html/p/index/en-body +++ b/public_html/p/index/en-body @@ -47,7 +47,7 @@ center ?php img(logo.png, E); ? br - bEFL 1.10 and E18 are out!/bbr + bEFL 1.10 and E19 ALPHA are out!/bbr ?php blink(i/dl.png, DOWNLOAD, download); ? /center /div --
[EGIT] [website/www] master 01/02: remove weird/inaccurate description of elementary
discomfitor pushed a commit to branch master. http://git.enlightenment.org/website/www.git/commit/?id=6bc296f50f10580df5228ddf850d47f71247181d commit 6bc296f50f10580df5228ddf850d47f71247181d Author: zmike michael.blumenkra...@gmail.com Date: Wed Jun 4 10:19:30 2014 -0400 remove weird/inaccurate description of elementary --- public_html/p/about/en-body | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public_html/p/about/en-body b/public_html/p/about/en-body index 4e159bf..e8b8410 100644 --- a/public_html/p/about/en-body +++ b/public_html/p/about/en-body @@ -121,7 +121,7 @@ lia href=http://docs.enlightenment.org/auto/e_dbusE_Dbus/a/li lia href=http://docs.enlightenment.org/auto/embryoEmbryo/a/li lia href=http://docs.enlightenment.org/auto/eezeEeze/a/li - lia href=http://docs.enlightenment.org/auto/elementaryElementary/a (window manager will use this in 0.18)/li + lia href=http://docs.enlightenment.org/auto/elementaryElementary/a/li /ul /p --
Re: [E-devel] [EGIT] [core/efl] master 01/01: Evas textblock: Fix crash when cutting ligatures with formats.
Also, e17 hangs (creating an infinite crashdump) after to select the size of the windows/borders in wizard step The crashdump file can be found here: http://main.elivecd.org/tmp/e-crashdump-wizard-sizes_e17-efl1.10.txt Unrelated to this change. Do you use e17 or an older version? E from enlightenment-0.17 branch 2014-06-04 16:16 GMT+02:00 Tom Hacohen tom.haco...@samsung.com: Unrelated to this change. Do you use e17 or an older version? On 04/06/14 15:10, Thanatermesis wrote: Mmh, I'm not sure how much this could be related but I just noticed things different after moving from 1.9 to 1.10 of efl elementary, for example: - title in e17 windows looks in a lower position and the window border looks smaller: - e17 with 1.10: http://www.enlightenment.org/ss/display.php?image=e-538f192035ed54.53261866.jpg - e17 with 1.9: http://www.enlightenment.org/ss/display.php?image=e-538f26c4704c86.21032476.jpg - wizard steps doesn't show correctly the sentences in the button, they looks cutted: - http://www.enlightenment.org/ss/display.php?image=e-538f28a6d73883.22714075.jpg 2014-06-04 11:22 GMT+02:00 Tom Hacohen tom.haco...@samsung.com: Yeah, I accidentally used the wrong tag (@bugfix) because of e. :) Sorry. -- Tom. On 04/06/14 10:17, Tom Hacohen wrote: tasn pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=3b70b4f28f9a5c0ab24181220501506d2e61871b commit 3b70b4f28f9a5c0ab24181220501506d2e61871b Author: Tom Hacohen t...@stosb.com Date: Wed Jun 4 10:14:24 2014 +0100 Evas textblock: Fix crash when cutting ligatures with formats. fcolor=#f00i/colorf could cause textblock to crash. It doesn't crash anymore. It doesn't render the colours correctly either, but at least this is the first step. This is the start of fixing T1308 @bugfix --- src/lib/evas/common/evas_text_utils.c | 4 src/tests/evas/evas_test_textblock.c | 3 +++ 2 files changed, 7 insertions(+) diff --git a/src/lib/evas/common/evas_text_utils.c b/src/lib/evas/common/evas_text_utils.c index 2b43695..dc2407f 100644 --- a/src/lib/evas/common/evas_text_utils.c +++ b/src/lib/evas/common/evas_text_utils.c @@ -180,6 +180,10 @@ evas_common_text_props_index_find(const Evas_Text_Props *props, int _cutoff) int max = props-len - 1; int mid; + /* Props can be empty, verify they are not before going on. */ + if (!props-info) + return -1; + _cutoff += props-text_offset; ot_info = props-info-ot + props-start; /* Should get us closer to the right place. */ diff --git a/src/tests/evas/evas_test_textblock.c b/src/tests/evas/evas_test_textblock.c index 4c48b60..d8949e2 100644 --- a/src/tests/evas/evas_test_textblock.c +++ b/src/tests/evas/evas_test_textblock.c @@ -2612,6 +2612,9 @@ START_TEST(evas_textblock_formats) evas_object_textblock_text_markup_prepend(cur, b/b); ck_assert_str_eq(evas_object_textblock_text_markup_get(tb), abb/bcbr/def); + /* Ligatures cut by formats */ + evas_object_textblock_text_markup_set(tb, fcolor=#f00i/colorf); + evas_object_textblock_size_formatted_get(tb, NULL, NULL); END_TB_TEST(); } -- Learn Graph Databases - Download FREE O'Reilly Book Graph Databases is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Learn Graph Databases - Download FREE O'Reilly Book Graph Databases is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Learn Graph Databases - Download FREE O'Reilly Book Graph Databases is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ enlightenment-devel mailing list
Re: [E-devel] E19 ALPHA1
Is this supported using the latest stable EFL/Elementary tars or will E19 continue to require EFL from GIT? On Wed, Jun 4, 2014 at 9:16 AM, Mike Blumenkrantz michael.blumenkra...@gmail.com wrote: Get your towels ready, it's about to go down. This is the first official release in the lengthy, multi-year, epic saga which will become known to history as //The E19 Release Cycle//. With the final release planned for sometime in Q3 of 2024, it will come as no surprise to users, testers, packagers, and developers alike that this release has a lot of sharp edges, harkening back to the pre-release years of E17 when anything was possible. =Download= 5117dab27f9b05fddab60d08cb448c93bcdfc7512ce11c516d37747924c25400 http://download.enlightenment.org/rel/apps/enlightenment/enlightenment-0.19.0-alpha1.tar.gz 84c6529547ec1b0111a2b3124385242ab2a7522e6668426364c1dc06d024e036 http://download.enlightenment.org/rel/apps/enlightenment/enlightenment-0.19.0-alpha1.tar.bz2 **Disclaimer:** Enlightenment developers cannot be responsible for any successes which occur during testing of E19. See the full announcement for more details: https://phab.enlightenment.org/phame/live/3/post/e19_alpha1_it_s_happening/ -- Learn Graph Databases - Download FREE O'Reilly Book Graph Databases is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- ~Jeff Hoogland http://jeffhoogland.com/ Thoughts on Technology http://jeffhoogland.blogspot.com/, Tech Blog Bodhi Linux http://bodhilinux.com/, Enlightenment for your Desktop -- Learn Graph Databases - Download FREE O'Reilly Book Graph Databases is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E19 ALPHA1
Date: Wed, 4 Jun 2014 09:40:23 -0500 From: jeffhoogl...@linux.com To: enlightenment-devel@lists.sourceforge.net Subject: Re: [E-devel] E19 ALPHA1 Is this supported using the latest stable EFL/Elementary tars or will E19 continue to require EFL from GIT? According to configure.ac, it requires EFL 1.10 -- Learn Graph Databases - Download FREE O'Reilly Book Graph Databases is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[EGIT] [core/efl] master 01/01: C++ bindings: Generate them as part of the build, not pre build.
tasn pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=2010de6810ea31116c77f2e08eb0dc9dc7034768 commit 2010de6810ea31116c77f2e08eb0dc9dc7034768 Author: Tom Hacohen t...@stosb.com Date: Wed Jun 4 16:14:29 2014 +0100 C++ bindings: Generate them as part of the build, not pre build. There's no reason why it should be forced in with BUILT_SOURCES. It should be part of the normal build and dependency based (nothing should depend on it anyway). This patch fixes that. --- src/Makefile_Ecore_Audio_Cxx.am | 4 src/Makefile_Ecore_Cxx.am | 2 -- src/Makefile_Edje_Cxx.am| 4 src/Makefile_Evas_Cxx.am| 2 -- 4 files changed, 12 deletions(-) diff --git a/src/Makefile_Ecore_Audio_Cxx.am b/src/Makefile_Ecore_Audio_Cxx.am index a5b408d..27c60a5 100644 --- a/src/Makefile_Ecore_Audio_Cxx.am +++ b/src/Makefile_Ecore_Audio_Cxx.am @@ -12,10 +12,6 @@ lib/ecore_audio/ecore_audio_out_sndfile.eo.hh \ lib/ecore_audio/ecore_audio_out_pulse.eo.hh \ lib/ecore_audio/ecore_audio_in_tone.eo.hh -BUILT_SOURCES += \ -lib/ecore_audio/Ecore_Audio.hh \ -$(generated_ecore_audio_cxx_bindings) - lib/ecore_audio/Ecore_Audio.hh: @echo -e #ifndef EFL_CXX_ECORE_AUDIO_HH\n#define EFL_CXX_ECORE_AUDIO_HH\n $(top_builddir)/src/lib/ecore_audio/Ecore_Audio.hh @echo -e #ifdef EFL_BETA_API_SUPPORT $(top_builddir)/src/lib/ecore_audio/Ecore_Audio.hh diff --git a/src/Makefile_Ecore_Cxx.am b/src/Makefile_Ecore_Cxx.am index eb06789..4ce616e 100644 --- a/src/Makefile_Ecore_Cxx.am +++ b/src/Makefile_Ecore_Cxx.am @@ -14,8 +14,6 @@ lib/ecore/ecore_idle_exiter.eo.hh \ lib/ecore/ecore_animator.eo.hh \ lib/ecore/ecore_parent.eo.hh -BUILT_SOURCES += lib/ecore/Ecore.eo.hh $(generated_ecore_cxx_bindings) - installed_ecorecxxheadersdir = $(includedir)/ecore-cxx-@VMAJ@ nodist_installed_ecorecxxheaders_DATA = \ lib/ecore/Ecore.eo.hh \ diff --git a/src/Makefile_Edje_Cxx.am b/src/Makefile_Edje_Cxx.am index 91fc9b9..1ba5de5 100644 --- a/src/Makefile_Edje_Cxx.am +++ b/src/Makefile_Edje_Cxx.am @@ -7,10 +7,6 @@ generated_edje_cxx_bindings = \ lib/edje/edje.eo.hh \ lib/edje/edje_edit.eo.hh -BUILT_SOURCES += \ -lib/edje/Edje.hh \ -$(generated_edje_cxx_bindings) - installed_edjecxxmainheadersdir = $(includedir)/edje-cxx-@VMAJ@/ nodist_installed_edjecxxmainheaders_DATA = \ lib/edje/Edje.hh \ diff --git a/src/Makefile_Evas_Cxx.am b/src/Makefile_Evas_Cxx.am index dcca14b..bcece50 100644 --- a/src/Makefile_Evas_Cxx.am +++ b/src/Makefile_Evas_Cxx.am @@ -27,8 +27,6 @@ lib/evas/canvas/evas_selectable_interface.eo.hh \ lib/evas/canvas/evas_zoomable_interface.eo.hh \ lib/evas/canvas/evas_box.eo.hh -BUILT_SOURCES += lib/evas/Evas.hh $(generated_evas_canvas_cxx_bindings) - installed_evascxxmainheadersdir = $(includedir)/evas-cxx-@VMAJ@/ nodist_installed_evascxxmainheaders_DATA = lib/evas/Evas.hh --
Re: [E-devel] E19 ALPHA1
It Works!!! good job guys! On Wed, Jun 4, 2014 at 10:50 AM, Doug Newgard scimmi...@outlook.com wrote: Date: Wed, 4 Jun 2014 09:40:23 -0500 From: jeffhoogl...@linux.com To: enlightenment-devel@lists.sourceforge.net Subject: Re: [E-devel] E19 ALPHA1 Is this supported using the latest stable EFL/Elementary tars or will E19 continue to require EFL from GIT? According to configure.ac, it requires EFL 1.10 -- Learn Graph Databases - Download FREE O'Reilly Book Graph Databases is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Learn Graph Databases - Download FREE O'Reilly Book Graph Databases is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[EGIT] [tools/enventor] master 01/01: search - fixed missing of a next word selection.
hermet pushed a commit to branch master. http://git.enlightenment.org/tools/enventor.git/commit/?id=4e8e915cbe68cbedceb9a66cbc69d3225a0daef0 commit 4e8e915cbe68cbedceb9a66cbc69d3225a0daef0 Author: ChunEon Park her...@hermet.pe.kr Date: Thu Jun 5 00:50:41 2014 +0900 search - fixed missing of a next word selection. This is a side effect of partial syntax color updation. Apply syntax color full updation if search mode is enabled. and whenever word is replaced, repeat the syntax color full updation again. --- src/bin/edc_editor.c | 85 +++- src/bin/main.c | 2 +- src/bin/search.c | 62 +++ src/include/edc_editor.h | 3 ++ src/include/search.h | 1 - 5 files changed, 115 insertions(+), 38 deletions(-) diff --git a/src/bin/edc_editor.c b/src/bin/edc_editor.c index ce4d25b..6695a16 100644 --- a/src/bin/edc_editor.c +++ b/src/bin/edc_editor.c @@ -28,6 +28,7 @@ struct editor_s int cur_line; int line_max; + int syntax_color_lock; Evas_Coord scroller_h; Ecore_Timer *syntax_color_timer; @@ -40,7 +41,6 @@ struct editor_s Eina_Bool edit_changed : 1; Eina_Bool linenumber : 1; Eina_Bool ctrl_pressed : 1; - Eina_Bool on_drag : 1; }; static Eina_Bool @@ -117,16 +117,18 @@ visible_text_region_get(edit_data *ed, int *from_line, int *to_line) } static void -syntax_color_apply(edit_data *ed) +syntax_color_apply(edit_data *ed, Eina_Bool partial) { Evas_Object *tb = elm_entry_textblock_get(ed-en_edit); char *text = (char *) evas_object_textblock_text_markup_get(tb); int pos = elm_entry_cursor_pos_get(ed-en_edit); - int from_line, to_line; - visible_text_region_get(ed, from_line, to_line); + int from_line = 1; + int to_line = -1; + if (partial) visible_text_region_get(ed, from_line, to_line); - char *from, *to; + char *from = NULL; + char *to = NULL; char *utf8 = (char *) color_cancel(syntax_color_data_get(ed-sh), text, strlen(text), from_line, to_line, from, to); @@ -154,7 +156,7 @@ syntax_color_timer_cb(void *data) { edit_data *ed = data; if (!color_ready(syntax_color_data_get(ed-sh))) return ECORE_CALLBACK_RENEW; - syntax_color_apply(ed); + syntax_color_apply(ed, EINA_TRUE); ed-syntax_color_timer = NULL; return ECORE_CALLBACK_CANCEL; } @@ -162,7 +164,9 @@ syntax_color_timer_cb(void *data) static void syntax_color_partial_update(edit_data *ed, double time) { - if (ed-on_drag) return; + /* If the syntax_color_full_update is requested forcely, lock would be -1 + in this case, it should avoid partial updation by entry changed. */ + if (ed-syntax_color_lock != 0) return; ecore_thread_cancel(ed-syntax_color_thread); ed-syntax_color_thread = NULL; ecore_timer_del(ed-syntax_color_timer); @@ -215,20 +219,30 @@ syntax_color_thread_cancel_cb(void *data, Ecore_Thread *thread EINA_UNUSED) free(td); } -static void -syntax_color_full_update(edit_data *ed) +void +syntax_color_full_update(edit_data *ed, Eina_Bool thread) { + if (ed-syntax_color_lock 0) return; + ecore_timer_del(ed-syntax_color_timer); ed-syntax_color_timer = NULL; - syntax_color_td *td = malloc(sizeof(syntax_color_td)); - td-ed = ed; - Evas_Object *tb = elm_entry_textblock_get(ed-en_edit); - td-text = (char *) evas_object_textblock_text_markup_get(tb); - ed-syntax_color_thread = ecore_thread_run(syntax_color_thread_cb, - syntax_color_thread_end_cb, - syntax_color_thread_cancel_cb, - td); + if (thread) + { +syntax_color_td *td = malloc(sizeof(syntax_color_td)); +td-ed = ed; +Evas_Object *tb = elm_entry_textblock_get(ed-en_edit); +td-text = (char *) evas_object_textblock_text_markup_get(tb); +ed-syntax_color_thread = + ecore_thread_run(syntax_color_thread_cb, +syntax_color_thread_end_cb, +syntax_color_thread_cancel_cb, +td); + } + else + { +syntax_color_apply(ed, EINA_FALSE); + } } static void @@ -365,6 +379,29 @@ ctxpopup_preview_dismiss_cb(void *data, Evas_Object *obj, } void +edit_syntax_color_full_apply(edit_data *ed, Eina_Bool force) +{ + int lock; + + if (force) + { +lock = ed-syntax_color_lock; +ed-syntax_color_lock = -1; + } + syntax_color_full_update(ed, EINA_FALSE); + + if (force) ed-syntax_color_lock = lock; + else ed-syntax_color_lock++; +} + +void +edit_syntax_color_partial_apply(edit_data *ed) +{ + ed-syntax_color_lock--; + syntax_color_partial_update(ed, SYNTAX_COLOR_DEFAULT_TIME); +} + +void edit_template_insert(edit_data *ed) { const char *paragh =
[EGIT] [tools/enventor] master 01/01: search - cancel entry selection before reset the region.
hermet pushed a commit to branch master. http://git.enlightenment.org/tools/enventor.git/commit/?id=e0b2ed26aa3af7fb9c5731503bdecd2b102036a1 commit e0b2ed26aa3af7fb9c5731503bdecd2b102036a1 Author: ChunEon Park her...@hermet.pe.kr Date: Thu Jun 5 00:58:02 2014 +0900 search - cancel entry selection before reset the region. --- src/bin/search.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/bin/search.c b/src/bin/search.c index 04a9bb9..5391092 100644 --- a/src/bin/search.c +++ b/src/bin/search.c @@ -88,6 +88,7 @@ static Eina_Bool selection_region_anim_cb(void *data) { search_data *sd = data; + elm_entry_select_none(sd-entry); elm_entry_select_region_set(sd-entry, sd-pos, sd-pos + sd-len); return ECORE_CALLBACK_CANCEL; } --
[EGIT] [tools/enventor] master 01/01: search - reset the current search position.
hermet pushed a commit to branch master. http://git.enlightenment.org/tools/enventor.git/commit/?id=95027e091aa9cbc67f761b1fc6ea2f4dffdd81e4 commit 95027e091aa9cbc67f761b1fc6ea2f4dffdd81e4 Author: ChunEon Park her...@hermet.pe.kr Date: Thu Jun 5 01:09:00 2014 +0900 search - reset the current search position. Reset search position because search requests syntax color partial apply when it's window is unfocused. the selection region would be dismissed. So reset. --- src/bin/search.c | 5 + 1 file changed, 5 insertions(+) diff --git a/src/bin/search.c b/src/bin/search.c index 5391092..f5c7341 100644 --- a/src/bin/search.c +++ b/src/bin/search.c @@ -285,6 +285,11 @@ win_focused_cb(void *data, Evas_Object *obj, void *event_info) search_data *sd = g_sd; edit_syntax_color_full_apply(sd-ed, EINA_FALSE); sd-syntax_color++; + /* FIXME: reset position because search requests syntax color partial apply + when it's window is unfocused. the selection region would be dismissed. + we can remove this once selection region could be recovered just right + after syntax color is applied. */ + sd-pos = -1; } static void --
[EGIT] [core/enlightenment] master 01/01: unset release stuff
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=bb86560a05d07d8d4dbdf1591fa54e66a2f682ab commit bb86560a05d07d8d4dbdf1591fa54e66a2f682ab Author: Mike Blumenkrantz zm...@samsung.com Date: Wed Jun 4 13:22:53 2014 -0400 unset release stuff --- configure.ac | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/configure.ac b/configure.ac index e9abddb..deaa278 100644 --- a/configure.ac +++ b/configure.ac @@ -5,11 +5,11 @@ m4_define([v_min], [19]) m4_define([v_mic], [0]) m4_define([v_rev], m4_esyscmd([(git rev-list --count HEAD 2/dev/null || echo 0) | tr -d '\n']))dnl ##-- When released, remove the dnl on the below line -m4_undefine([v_rev]) +dnl m4_undefine([v_rev]) m4_define([relname], [0.19.0]) ##-- When doing snapshots - change soname. remove dnl on below line m4_define([relname], [ver-serious-0.19]) -m4_define([v_rel], [-release relname]) +dnl m4_define([v_rel], [-release relname]) ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--## m4_ifdef([v_rev], [m4_define([v_ver], [v_maj.v_min.v_mic.v_rev])], [m4_define([v_ver], [v_maj.v_min.v_mic])]) m4_define([lt_cur], m4_eval(v_maj + v_min)) @@ -18,7 +18,7 @@ m4_define([lt_age], v_min) ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--## ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--## -AC_INIT([enlightenment], [v_ver-alpha1], [enlightenment-devel@lists.sourceforge.net]) +AC_INIT([enlightenment], [v_ver], [enlightenment-devel@lists.sourceforge.net]) AC_PREREQ([2.52]) AC_CONFIG_SRCDIR([configure.ac]) AC_CONFIG_MACRO_DIR([m4]) @@ -55,7 +55,7 @@ AC_DEFINE_UNQUOTED(VMAJ, [v_maj], [Major version]) AC_DEFINE_UNQUOTED(VMIN, [v_min], [Minor version]) AC_DEFINE_UNQUOTED(VMIC, [v_mic], [Micro version]) AC_DEFINE_UNQUOTED(VREV, [v_rev], [Revison]) -AC_DEFINE_UNQUOTED(E19_RELEASE_BUILD, [1], [doin it]) +##AC_DEFINE_UNQUOTED(E19_RELEASE_BUILD, [1], [doin it]) version_info=lt_cur:lt_rev:lt_age release_info=v_rel AC_SUBST([version_info]) --
[EGIT] [core/efl] master 02/02: gitignore: let's ignore generated binary.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=6489c89e0959a0503b68725e07dec82cb68ab597 commit 6489c89e0959a0503b68725e07dec82cb68ab597 Author: Cedric BAIL c.b...@partner.samsung.com Date: Wed Jun 4 19:16:44 2014 +0200 gitignore: let's ignore generated binary. --- src/examples/evas/.gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/src/examples/evas/.gitignore b/src/examples/evas/.gitignore index daed96b..405e5bb 100644 --- a/src/examples/evas/.gitignore +++ b/src/examples/evas/.gitignore @@ -22,3 +22,4 @@ /evas_3d_pick /evas_3d_proxy /evas_cxx_rectangle +/evas_3d_aabb \ No newline at end of file --
[EGIT] [core/efl] master 01/02: edje: Edje_Edit - fix edje_edit_part_source_set
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=aec9cf0a3e222b9f6c023a71519f63c61afa65e3 commit aec9cf0a3e222b9f6c023a71519f63c61afa65e3 Author: Andrii Kroitor an.kroi...@samsung.com Date: Wed Jun 4 19:15:19 2014 +0200 edje: Edje_Edit - fix edje_edit_part_source_set Summary: Fixed edje_edit_part_source_set so that it does not destroy TEXTBLOCK. Changed type check to switch-case to stress allowed types. @fix Reviewers: cedric, raster, seoz, Hermet Reviewed By: cedric CC: reutskiy.v.v, cedric Differential Revision: https://phab.enlightenment.org/D931 Signed-off-by: Cedric BAIL c.b...@partner.samsung.com --- src/lib/edje/edje_edit.c | 49 +--- 1 file changed, 30 insertions(+), 19 deletions(-) diff --git a/src/lib/edje/edje_edit.c b/src/lib/edje/edje_edit.c index 4782667..1d6cc3f 100644 --- a/src/lib/edje/edje_edit.c +++ b/src/lib/edje/edje_edit.c @@ -2858,27 +2858,38 @@ edje_edit_part_source_set(Evas_Object *obj, const char *part, const char *source Evas_Object *child_obj; //printf(Set source for part: %s [source: %s]\n, part, source); - if (rp-part-type == EDJE_PART_TYPE_EXTERNAL) - return EINA_FALSE; - - _edje_if_string_free(ed, rp-part-source); - - if ((rp-typedata.swallow) (rp-typedata.swallow-swallowed_object)) - { - _edje_real_part_swallow_clear(ed, rp); - evas_object_del(rp-typedata.swallow-swallowed_object); - rp-typedata.swallow-swallowed_object = NULL; - } - if (source) + switch(rp-part-type) { - rp-part-source = eina_stringshare_add(source); - child_obj = edje_object_add(ed-base-evas); - edje_object_file_set(child_obj, ed-file-path, source); - _edje_real_part_swallow(ed, rp, child_obj, EINA_TRUE); + case EDJE_PART_TYPE_GROUP: + { +if ((rp-typedata.swallow) (rp-typedata.swallow-swallowed_object)) + { + _edje_real_part_swallow_clear(ed, rp); + evas_object_del(rp-typedata.swallow-swallowed_object); + rp-typedata.swallow-swallowed_object = NULL; + } +if (source) + { + child_obj = edje_object_add(ed-base-evas); + edje_object_file_set(child_obj, ed-file-path, source); + _edje_real_part_swallow(ed, rp, child_obj, EINA_TRUE); + } + } + case EDJE_PART_TYPE_TEXTBLOCK: + { +_edje_if_string_free(ed, rp-part-source); +if (source) + rp-part-source = eina_stringshare_add(source); +else + rp-part-source = NULL; +return EINA_TRUE; + } + case EDJE_PART_TYPE_EXTERNAL: //EXTERNAL part has source property but it cannot be changed + default: + { +return EINA_FALSE; + } } - else - rp-part-source = NULL; - return EINA_TRUE; } EAPI int --
[EGIT] [core/elementary] master 01/01: example: add new example for button and Evas_3D object.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/elementary.git/commit/?id=8ef70b665ed8b252a148321ed22de36e77cab985 commit 8ef70b665ed8b252a148321ed22de36e77cab985 Author: se.osadchy se.osad...@samsung.com Date: Wed Jun 4 19:19:25 2014 +0200 example: add new example for button and Evas_3D object. Summary: This example shows the mechanism of elementary widget (button) adding to the 3d scene object. Reviewers: Hermet, cedric, raster Differential Revision: https://phab.enlightenment.org/D937 Signed-off-by: Cedric BAIL c.b...@partner.samsung.com --- src/examples/Makefile.am | 2 + src/examples/button_on_3d_object_example.c | 339 + 2 files changed, 341 insertions(+) diff --git a/src/examples/Makefile.am b/src/examples/Makefile.am index 8998cf0..512fa12 100644 --- a/src/examples/Makefile.am +++ b/src/examples/Makefile.am @@ -140,6 +140,7 @@ web_example_01.c \ web_example_02.c \ win_example.c \ 3d_scene_on_button_example.c \ +button_on_3d_object_example.c \ track_example_01.c .edc.edj: @@ -280,6 +281,7 @@ web_example_01 \ web_example_02 \ win_example \ 3d_scene_on_button_example \ +button_on_3d_object_example \ track_example_01 if ELEMENTARY_WINDOWS_BUILD diff --git a/src/examples/button_on_3d_object_example.c b/src/examples/button_on_3d_object_example.c new file mode 100644 index 000..53a33f2 --- /dev/null +++ b/src/examples/button_on_3d_object_example.c @@ -0,0 +1,339 @@ +/* + * This example shows the mechanism of elementary widget adding (button) to the 3d scene object (cube) and + * illustrates the work of callback of event from mouse. + * + * Compile with: + * gcc -o button_on_3d_object_example button_on_3d_object_example.c -g `pkg-config --libs --cflags evas ecore eo elementary` + */ + + +#define EFL_EO_API_SUPPORT +#define EFL_BETA_API_SUPPORT + +#include Eo.h +#include Evas.h +#include Ecore.h +#include Elementary.h + +#define WIDTH 400 +#define HEIGHT 400 + +typedef struct _Scene_Data +{ + Eo *scene; + Eo *root_node; + Eo *camera_node; + Eo *light_node; + Eo *mesh_node; + + Eo *camera; + Eo *light; + Eo *mesh; + Eo *material; + Eo *texture; +} Scene_Data; + +Evas_Object *win = NULL; +static Evas *evas = NULL; +static Eo *image = NULL; +static Eo *btn = NULL; +static float d_angle = 0.5; + +static const float cube_vertices[] = +{ + /* Front */ + -1.0, 1.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, +1.0, 1.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.0, 1.0, 1.0, 1.0, + -1.0, -1.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, +1.0, -1.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, + + /* Back */ +1.0, 1.0, -1.0, 0.0, 0.0, -1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 1.0, + -1.0, 1.0, -1.0, 0.0, 0.0, -1.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0, +1.0, -1.0, -1.0, 0.0, 0.0, -1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.0, + -1.0, -1.0, -1.0, 0.0, 0.0, -1.0, 0.0, 0.0, 1.0, 1.0, 1.0, 0.0, + + /* Left */ + -1.0, 1.0, -1.0,-1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 1.0, + -1.0, 1.0, 1.0,-1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 1.0, 1.0, + -1.0, -1.0, -1.0,-1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, + -1.0, -1.0, 1.0,-1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 1.0, 0.0, + + /* Right */ +1.0, 1.0, 1.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 1.0, 0.0, 1.0, +1.0, 1.0, -1.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 1.0, 1.0, 1.0, +1.0, -1.0, 1.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 1.0, 0.0, 0.0, +1.0, -1.0, -1.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 1.0, 1.0, 0.0, + + /* Top */ + -1.0, 1.0, -1.0, 0.0, 1.0, 0.0, 1.0, 0.0, 1.0, 1.0, 0.0, 1.0, +1.0, 1.0, -1.0, 0.0, 1.0, 0.0, 1.0, 0.0, 1.0, 1.0, 1.0, 1.0, + -1.0, 1.0, 1.0, 0.0, 1.0, 0.0, 1.0, 0.0, 1.0, 1.0, 0.0, 0.0, +1.0, 1.0, 1.0, 0.0, 1.0, 0.0, 1.0, 0.0, 1.0, 1.0, 1.0, 0.0, + + /* Bottom */ +1.0, -1.0, -1.0, 0.0, -1.0, 0.0, 0.0, 1.0, 1.0, 1.0, 0.0, 1.0, + -1.0, -1.0, -1.0, 0.0, -1.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0, 1.0, +1.0, -1.0, 1.0, 0.0, -1.0, 0.0, 0.0, 1.0, 1.0, 1.0, 0.0, 0.0, + -1.0, -1.0, 1.0, 0.0, -1.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0, 0.0, +}; + +static const unsigned short cube_indices[] = +{ + /* Front */ + 0, 1, 2, 2, 1, 3, + + /* Back */ + 4, 5, 6, 6, 5, 7, + + /* Left */ + 8, 9, 10, 10, 9, 11, + + /* Right */ + 12, 13, 14, 14, 13, 15, + + /* Top */ + 16, 17, 18, 18, 17, 19, + + /* Bottom */ + 20, 21, 22, 22, 21, 23 +}; + +static void +_stop_scene(void *data, +Evas *e EINA_UNUSED, +Evas_Object *eo EINA_UNUSED, +
[EGIT] [core/efl] master 03/03: evas: Evas_3D - Revision frustum culling.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=a25aa1aa1a71102cb20c7280bd0d46eb462d7517 commit a25aa1aa1a71102cb20c7280bd0d46eb462d7517 Author: Oleksandr Shcherbina o.shcherb...@samsung.com Date: Wed Jun 4 19:46:55 2014 +0200 evas: Evas_3D - Revision frustum culling. Summary: Add API that checks OBB's points of node are inside frustum of camera. Add example with frustum culling. @feature Reviewers: Hermet, cedric, raster CC: cedric Differential Revision: https://phab.enlightenment.org/D942 Signed-off-by: Cedric BAIL c.b...@partner.samsung.com --- src/examples/evas/.gitignore| 3 +- src/examples/evas/Makefile.am | 5 + src/examples/evas/eagle.md2 | Bin 0 - 62528 bytes src/examples/evas/eagle.png | Bin 0 - 587296 bytes src/examples/evas/evas-3d-frustum.c | 256 src/lib/evas/canvas/evas_3d_node.c | 95 + src/lib/evas/canvas/evas_3d_node.eo | 20 +++ 7 files changed, 378 insertions(+), 1 deletion(-) diff --git a/src/examples/evas/.gitignore b/src/examples/evas/.gitignore index 405e5bb..879b07d 100644 --- a/src/examples/evas/.gitignore +++ b/src/examples/evas/.gitignore @@ -22,4 +22,5 @@ /evas_3d_pick /evas_3d_proxy /evas_cxx_rectangle -/evas_3d_aabb \ No newline at end of file +/evas_3d_aabb +/evas_3d_frustum diff --git a/src/examples/evas/Makefile.am b/src/examples/evas/Makefile.am index 1f2aade..861d8ed 100644 --- a/src/examples/evas/Makefile.am +++ b/src/examples/evas/Makefile.am @@ -197,6 +197,11 @@ evas_3d_md2_SOURCES = evas-3d-md2.c evas_3d_md2_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ evas_3d_md2_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) +EXTRA_PROGRAMS += evas_3d_frustum +evas_3d_frustum_SOURCES = evas-3d-frustum.c +evas_3d_frustum_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ +evas_3d_frustum_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS) + EXTRA_PROGRAMS += evas_3d_aabb evas_3d_aabb_SOURCES = evas-3d-aabb.c evas_3d_aabb_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@ diff --git a/src/examples/evas/eagle.md2 b/src/examples/evas/eagle.md2 new file mode 100644 index 000..c72647a Binary files /dev/null and b/src/examples/evas/eagle.md2 differ diff --git a/src/examples/evas/eagle.png b/src/examples/evas/eagle.png new file mode 100644 index 000..503ca1f Binary files /dev/null and b/src/examples/evas/eagle.png differ diff --git a/src/examples/evas/evas-3d-frustum.c b/src/examples/evas/evas-3d-frustum.c new file mode 100644 index 000..d5c67ef --- /dev/null +++ b/src/examples/evas/evas-3d-frustum.c @@ -0,0 +1,256 @@ +/* + * This example shows how to work frustum culling. + * Use keys Up/Down for moving far plane of frustum. + * Use keys Left/Right for changing camera view. + * See in terminal output value of z coordinate of far plane of frustum + * and check OBB's points inside frustum. + * @see evas_3d_node_obb_frustum_check. + * Compile with gcc -o evas-3d-frustum evas-3d-frustum.c `pkg-config --libs --cflags evas ecore ecore-evas eo` + */ + +#define EFL_EO_API_SUPPORT +#define EFL_BETA_API_SUPPORT + +#include Ecore.h +#include Ecore_Evas.h +#include Evas.h +#include Eo.h + +#define WIDTH 800 +#define HEIGHT 600 + +typedef struct _Scene_Data +{ + Eo *root_node; + Eo *camera_node; + Eo *light_node; + Eo *mesh_node_model; + Eo *scene; + Eo *camera; + Eo *light; + Eo *mesh_model; + Eo *material_model; + Eo *texture_model; +} Scene_Data; + +Evas *evas; +Evas_Object *background,*image; +Evas_Real fleft = -5, fright = 5, fbottom = -5, fup = 5, fnear = 20, ffar = 40; + +static void +_on_delete(Ecore_Evas *ee EINA_UNUSED) +{ + ecore_main_loop_quit(); +} + +static void +_on_canvas_resize(Ecore_Evas *ee) +{ + int w, h; + + ecore_evas_geometry_get(ee, NULL, NULL, w, h); + + evas_object_resize(background, w, h); + evas_object_resize(image, w, h); + evas_object_move(image, 0, 0); +} + +static void +_on_key_down(void *data, Evas *e EINA_UNUSED, Evas_Object *eo EINA_UNUSED, void *event_info) +{ + + Scene_Data *scene = (Scene_Data *)data; + Evas_Event_Key_Down *ev = event_info; + int frustum; + + if (!strcmp(Up, ev-key)) + { +ffar += 5; +eo_do(scene-camera, evas_3d_camera_projection_frustum_set(fleft, fright, fbottom, fup, fnear, ffar)); +eo_do(scene-mesh_node_model, + frustum = evas_3d_node_obb_frustum_check(scene-camera_node)); +fprintf(stdout, far - %f frustum - %d \n, ffar, frustum); + } + else if(!strcmp(Down, ev-key)) + { +ffar -= 5; +eo_do(scene-camera, evas_3d_camera_projection_frustum_set(fleft, fright, fbottom, fup, fnear, ffar)); +eo_do(scene-mesh_node_model, + frustum = evas_3d_node_obb_frustum_check(scene-camera_node)); +fprintf(stdout, far - %f frustum - %d \n, ffar, frustum); + } + else
[EGIT] [core/efl] master 01/03: edje: Edje_Edit - add edje_edit_part_copy function that copy parts within whole group.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=f1000b5c369c70189a76b073d9b3e9ee6a03fe3d commit f1000b5c369c70189a76b073d9b3e9ee6a03fe3d Author: Vorobiov Vitalii vi.vorob...@samsung.com Date: Wed Jun 4 19:39:32 2014 +0200 edje: Edje_Edit - add edje_edit_part_copy function that copy parts within whole group. Summary: Add ability to copy whole part and create same part but with new name). This feature also require to slightly remake function edje_edit_state_copy to make it able to copy state from one part to different one (only for part_copy usage). @feature Reviewers: cedric, seoz, raster, Hermet CC: reutskiy.v.v, cedric Differential Revision: https://phab.enlightenment.org/D939 Signed-off-by: Cedric BAIL c.b...@partner.samsung.com --- src/lib/edje/Edje_Edit.h | 12 + src/lib/edje/edje_edit.c | 119 +++ 2 files changed, 123 insertions(+), 8 deletions(-) diff --git a/src/lib/edje/Edje_Edit.h b/src/lib/edje/Edje_Edit.h index 9405743..7b34478 100644 --- a/src/lib/edje/Edje_Edit.h +++ b/src/lib/edje/Edje_Edit.h @@ -807,6 +807,18 @@ EAPI Eina_Bool edje_edit_part_external_add(Evas_Object *obj, const char *name, c */ EAPI Eina_Bool edje_edit_part_del(Evas_Object *obj, const char *part); +/** Copy the given part in edje. + * + * If another part with the same name just exists nothing is created and EINA_FALSE is returned. + * + * @param obj Object being edited. + * @param part Name of the part. + * @param new_copy Name of the new copied part. + * + * @return EINA_TRUE if successful, EINA_FALSE otherwise. + */ +EAPI Eina_Bool edje_edit_part_copy(Evas_Object *obj, const char *part, const char *new_copy); + /** Check if a part with the given name exist in the edje object. * * @param obj Object being edited. diff --git a/src/lib/edje/edje_edit.c b/src/lib/edje/edje_edit.c index 1d6cc3f..e9b28d9 100644 --- a/src/lib/edje/edje_edit.c +++ b/src/lib/edje/edje_edit.c @@ -2456,6 +2456,99 @@ edje_edit_part_del(Evas_Object *obj, const char* part) return EINA_TRUE; } +static Eina_Bool +_edje_edit_part_state_copy(Evas_Object *obj, const char *part_from, const char *part_to, const char *from, double val_from, const char *to, double val_to); + +EAPI Eina_Bool +edje_edit_part_copy(Evas_Object *obj, const char *part, const char *new_copy) +{ + Edje_Part *ep, *epcopy; + unsigned int i, count; + Edje_Real_Part *rpcopy; + + GET_RP_OR_RETURN(EINA_FALSE); + + ep = rp-part; + + /* Check if part doesn't exists */ + if (_edje_real_part_get(ed, new_copy)) + return EINA_FALSE; + + if (!ed-file) return EINA_FALSE; + + /* Create part (EXTERNAL or not) */ + if (!_edje_edit_real_part_add(obj, new_copy, ep-type, ep-source)) + return EINA_FALSE; + + /* Copy part's data */ + rpcopy = _edje_real_part_get(ed, new_copy); + if (!rpcopy) + return EINA_FALSE; + epcopy = rpcopy-part; + +#define _PARAM_PART_COPY(param) \ + epcopy-param = ep-param; + + _PARAM_PART_COPY(scale) + _PARAM_PART_COPY(mouse_events) + _PARAM_PART_COPY(repeat_events) + _PARAM_PART_COPY(ignore_flags) + _PARAM_PART_COPY(pointer_mode) + _PARAM_PART_COPY(precise_is_inside) + _PARAM_PART_COPY(use_alternate_font_metrics) + _PARAM_PART_COPY(clip_to_id) + _PARAM_PART_COPY(dragable.event_id) + _PARAM_PART_COPY(dragable.confine_id) + _PARAM_PART_COPY(dragable.threshold_id) + _PARAM_PART_COPY(dragable.step_x) + _PARAM_PART_COPY(dragable.step_y) + _PARAM_PART_COPY(dragable.count_x) + _PARAM_PART_COPY(dragable.count_y) + _PARAM_PART_COPY(dragable.x) + _PARAM_PART_COPY(dragable.y) + + if (rp-part-type == EDJE_PART_TYPE_TEXTBLOCK) + { +epcopy-source2 = (char *)eina_stringshare_add(ep-source2); +epcopy-source3 = (char *)eina_stringshare_add(ep-source3); +epcopy-source4 = (char *)eina_stringshare_add(ep-source4); +epcopy-source5 = (char *)eina_stringshare_add(ep-source5); +epcopy-source6 = (char *)eina_stringshare_add(ep-source6); + } + +#ifdef HAVE_EPHYSICS + _PARAM_PART_COPY(physics_body) +#endif + + _PARAM_PART_COPY(effect) + _PARAM_PART_COPY(entry_mode) + _PARAM_PART_COPY(select_mode) + _PARAM_PART_COPY(cursor_mode) + _PARAM_PART_COPY(multiline) + _PARAM_PART_COPY(access) + + if (ep-api.name) +epcopy-api.name = eina_stringshare_add(ep-api.name); + if (ep-api.description) +epcopy-api.description = eina_stringshare_add(ep-api.description); + +#undef _PARAM_PART_COPY + + /* Copy default state */ + _edje_edit_part_state_copy(obj, part, new_copy, default, 0.0, default, 0.0); + + /* Copy all other states */ + count = rp-part-other.desc_count; + for (i = 0; i count; ++i) + { +_edje_edit_part_state_copy(obj, part, new_copy, + rp-part-other.desc[i]-state.name, rp-part-other.desc[i]-state.value, +
[EGIT] [core/efl] master 02/03: edje: Edje_Edit - add edje_edit_part_pointer_mode functions.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=bebcc49bd0641c5b00bd15ed2cfc32f04d27628a commit bebcc49bd0641c5b00bd15ed2cfc32f04d27628a Author: Vorobiov Vitalii vi.vorob...@samsung.com Date: Wed Jun 4 19:45:28 2014 +0200 edje: Edje_Edit - add edje_edit_part_pointer_mode functions. Summary: Add two main functions - edje_edit_part_pointer_mode_get - edje_edit_part_pointer_mode_set Also support pointer mode into part's source code generation. EVAS_OBJECT_POINTER_MODE_AUTOGRAB is default value, so generation won't add AUTOGRAB into source code if this type of pointer mode is set. @feature Reviewers: cedric, seoz, Hermet, raster Reviewed By: cedric CC: reutskiy.v.v, cedric Differential Revision: https://phab.enlightenment.org/D941 Signed-off-by: Cedric BAIL c.b...@partner.samsung.com --- src/lib/edje/Edje_Edit.h | 24 src/lib/edje/edje_edit.c | 22 +- 2 files changed, 45 insertions(+), 1 deletion(-) diff --git a/src/lib/edje/Edje_Edit.h b/src/lib/edje/Edje_Edit.h index 7b34478..382f862 100644 --- a/src/lib/edje/Edje_Edit.h +++ b/src/lib/edje/Edje_Edit.h @@ -1102,6 +1102,30 @@ EAPI Evas_Event_Flags edje_edit_part_ignore_flags_get(Evas_Object *obj, const ch */ EAPI Eina_Bool edje_edit_part_ignore_flags_set(Evas_Object *obj, const char *part, Evas_Event_Flags ignore_flags); +/** Get pointer_mode of a part. + * + * @param obj Object being edited. + * @param part Part name to get it's pointer_mode. + * + * @return Ponter Mode of the part. + */ +EAPI Evas_Object_Pointer_Mode edje_edit_part_pointer_mode_get(Evas_Object *obj, const char *part); + +/** Get pointer_mode of a part. + * + * Note that Ponter Mode can be: + * - EVAS_OBJECT_POINTER_MODE_AUTOGRAB - default, X11-like + * - EVAS_OBJECT_POINTER_MODE_NOGRAB - pointer always bound to the object right below it + * - EVAS_OBJECT_POINTER_MODE_NOGRAB_NO_REPEAT_UPDOWN - useful on object with repeat events enabled, @since 1.2 + * + * @param obj Object being edited. + * @param part Part name to get it's pointer_mode. + * @param pointer_mode Pointer Mode. + * + * @return EINA_TRUE if successful, EINA_FALSE otherwise. + */ +EAPI Eina_Bool edje_edit_part_pointer_mode_set(Evas_Object *obj, const char *part, Evas_Object_Pointer_Mode pointer_mode); + /** Set scale property for the part. * * This property tells Edje that the given part should be scaled by the diff --git a/src/lib/edje/edje_edit.c b/src/lib/edje/edje_edit.c index e9b28d9..f441690 100644 --- a/src/lib/edje/edje_edit.c +++ b/src/lib/edje/edje_edit.c @@ -2914,6 +2914,25 @@ edje_edit_part_ignore_flags_set(Evas_Object *obj, const char *part, Evas_Event_F return EINA_TRUE; } +EAPI Evas_Object_Pointer_Mode +edje_edit_part_pointer_mode_get(Evas_Object *obj, const char *part) +{ + GET_RP_OR_RETURN(0); + + return rp-part-pointer_mode; +} + +EAPI Eina_Bool +edje_edit_part_pointer_mode_set(Evas_Object *obj, const char *part, Evas_Object_Pointer_Mode pointer_mode) +{ + GET_RP_OR_RETURN(EINA_FALSE); + + if (!rp-object) return EINA_FALSE; + + rp-part-pointer_mode = pointer_mode; + return EINA_TRUE; +} + EAPI Eina_Bool edje_edit_part_scale_set(Evas_Object *obj, const char *part, Eina_Bool scale) { @@ -8035,7 +8054,8 @@ _edje_generate_source_of_part(Evas_Object *obj, Edje_Part *ep, Eina_Strbuf *buf) if (edje_edit_part_scale_get(obj, part)) BUF_APPEND(I4scale: 1;\n); //TODO Support ignore_flags - //TODO Support pointer_mode + if (edje_edit_part_pointer_mode_get(obj, part) == EVAS_OBJECT_POINTER_MODE_NOGRAB) + BUF_APPEND(I4pointer_mode: NOGRAB;\n); //TODO Support precise_is_inside //TODO Support use_alternate_font_metrics if ((str = edje_edit_part_clip_to_get(obj, part))) --
[EGIT] [core/efl] master 03/03: edje: Edje_Edit - add edje_edit_part_access functions.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=5e7a9b1225f792a6a7e60e96cf402440ad1adfff commit 5e7a9b1225f792a6a7e60e96cf402440ad1adfff Author: Vorobiov Vitalii vi.vorob...@samsung.com Date: Wed Jun 4 20:03:39 2014 +0200 edje: Edje_Edit - add edje_edit_part_access functions. Summary: Add two main functions - edje_edit_part_access_get - edje_edit_part_access_set Also support access into part's source code generation. @feature Reviewers: seoz, Hermet, raster, cedric CC: reutskiy.v.v, cedric Differential Revision: https://phab.enlightenment.org/D946 Signed-off-by: Cedric BAIL c.b...@partner.samsung.com --- src/lib/edje/Edje_Edit.h | 19 +++ src/lib/edje/edje_edit.c | 22 +- 2 files changed, 40 insertions(+), 1 deletion(-) diff --git a/src/lib/edje/Edje_Edit.h b/src/lib/edje/Edje_Edit.h index eda66c0..d67cb69 100644 --- a/src/lib/edje/Edje_Edit.h +++ b/src/lib/edje/Edje_Edit.h @@ -1234,6 +1234,25 @@ EAPI Eina_Bool edje_edit_part_precise_is_inside_get(Evas_Object *obj, const char */ EAPI Eina_Bool edje_edit_part_precise_is_inside_set(Evas_Object *obj, const char *part, Eina_Bool precise_is_inside); +/** Get accessibility for part. + * + * @param obj Object being edited. + * @param part Part to get if it uses accessibility feature. + * + * @return EINA_TRUE if part uses accessibility feature, EINA_FALSE otherwise + */ +EAPI Eina_Bool edje_edit_part_access_get(Evas_Object *obj, const char *part); + +/** Set accessibility for part. + * + * @param obj Object being edited. + * @param part Part to set if it uses accessibility feature. + * @param access EINA_TRUE if part uses accessibility feature, EINA_FALSE otherwise + * + * @return EINA_TRUE if successful, EINA_FALSE otherwise. + */ +EAPI Eina_Bool edje_edit_part_access_set(Evas_Object *obj, const char *part, Eina_Bool access); + /** Get ignore_flags for part. * * @param obj Object being edited. diff --git a/src/lib/edje/edje_edit.c b/src/lib/edje/edje_edit.c index ff020da..ccf3af6 100644 --- a/src/lib/edje/edje_edit.c +++ b/src/lib/edje/edje_edit.c @@ -2895,7 +2895,6 @@ edje_edit_part_repeat_events_set(Evas_Object *obj, const char *part, Eina_Bool r return EINA_TRUE; } - EAPI Eina_Bool edje_edit_part_precise_is_inside_get(Evas_Object *obj, const char *part) { @@ -2915,6 +2914,25 @@ edje_edit_part_precise_is_inside_set(Evas_Object *obj, const char *part, Eina_Bo return EINA_TRUE; } +EAPI Eina_Bool +edje_edit_part_access_get(Evas_Object *obj, const char *part) +{ + GET_RP_OR_RETURN(0); + + return rp-part-access; +} + +EAPI Eina_Bool +edje_edit_part_access_set(Evas_Object *obj, const char *part, Eina_Bool access) +{ + GET_RP_OR_RETURN(EINA_FALSE); + + if (!rp-object) return EINA_FALSE; + + rp-part-access = access; + return EINA_TRUE; +} + EAPI Evas_Event_Flags edje_edit_part_ignore_flags_get(Evas_Object *obj, const char *part) { @@ -8116,6 +8134,8 @@ _edje_generate_source_of_part(Evas_Object *obj, Edje_Part *ep, Eina_Strbuf *buf) BUF_APPEND(I4pointer_mode: NOGRAB;\n); if (edje_edit_part_precise_is_inside_get(obj, part)) BUF_APPEND(I4precise_is_inside: 1;\n); + if (edje_edit_part_access_get(obj, part)) + BUF_APPEND(I4access: 1;\n); //TODO Support use_alternate_font_metrics if ((str = edje_edit_part_clip_to_get(obj, part))) { --
[EGIT] [core/efl] master 01/03: edje: Edje_Edit - add getters and setters for source2-source6 TEXTBLOCK properties
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=184720bf16ab81f21482efdd359c8008c5cc54c4 commit 184720bf16ab81f21482efdd359c8008c5cc54c4 Author: Andrii Kroitor an.kroi...@samsung.com Date: Wed Jun 4 19:57:10 2014 +0200 edje: Edje_Edit - add getters and setters for source2-source6 TEXTBLOCK properties Reviewers: cedric, raster, seoz, Hermet CC: reutskiy.v.v, cedric Differential Revision: https://phab.enlightenment.org/D943 Signed-off-by: Cedric BAIL c.b...@partner.samsung.com --- src/lib/edje/Edje_Edit.h | 132 +++ src/lib/edje/edje_edit.c | 38 ++ 2 files changed, 170 insertions(+) diff --git a/src/lib/edje/Edje_Edit.h b/src/lib/edje/Edje_Edit.h index 382f862..6712d8c 100644 --- a/src/lib/edje/Edje_Edit.h +++ b/src/lib/edje/Edje_Edit.h @@ -1000,6 +1000,138 @@ EAPI const char * edje_edit_part_source_get(Evas_Object *obj, const char *part); */ EAPI Eina_Bool edje_edit_part_source_set(Evas_Object *obj, const char *part, const char *source); +/** Get the source2 of part. + * + * Only available to TEXTBLOCK parts. It is used for the group to be loaded and + * used for selection display OVER the selected text. source is used for under + * of the selected text, if source is specified. + * + * @param obj Object being edited. + * @param part Part to get the source from. + * + * @return Content of the source2 parameter or NULL if nothing set or an error occurred. + */ +EAPI const char * edje_edit_part_source2_get(Evas_Object *obj, const char *part); + +/** Set the source2 of part. + * + * @param obj Object being edited. + * @param part Part to set the source of. + * @param source Value for the source parameter. + * + * @return EINA_TRUE if successful, EINA_FALSE otherwise. + * + * @see edje_edit_part_source2_get() + * + */ +EAPI Eina_Bool edje_edit_part_source2_set(Evas_Object *obj, const char *part, const char *source); + +/** Get the source3 of part. + * + * Only available to TEXTBLOCK parts. It is used for the group to be loaded and + * used for cursor display UNDER the cursor position. source4 is used for over + * the cursor text, if source4 is specified. + * + * @param obj Object being edited. + * @param part Part to get the source from. + * + * @return Content of the source3 parameter or NULL if nothing set or an error occurred. + */ +EAPI const char * edje_edit_part_source3_get(Evas_Object *obj, const char *part); + +/** Set the source3 of part. + * + * @param obj Object being edited. + * @param part Part to set the source of. + * @param source Value for the source parameter. + * + * @return EINA_TRUE if successful, EINA_FALSE otherwise. + * + * @see edje_edit_part_source3_get() + * + * NOTE: This is not applied now. You must reload the edje to see the change. + */ +EAPI Eina_Bool edje_edit_part_source3_set(Evas_Object *obj, const char *part, const char *source); + +/** Get the source4 of part. + * + * Only available to TEXTBLOCK parts. It is used for the group to be loaded and + * used for cursor display OVER the cursor position. source3 is used for under + * the cursor text, if source4 is specified. + * + * @param obj Object being edited. + * @param part Part to get the source from. + * + * @return Content of the source4 parameter or NULL if nothing set or an error occurred. + */ +EAPI const char * edje_edit_part_source4_get(Evas_Object *obj, const char *part); + +/** Set the source4 of part. + * + * @param obj Object being edited. + * @param part Part to set the source of. + * @param source Value for the source parameter. + * + * @return EINA_TRUE if successful, EINA_FALSE otherwise. + * + * @see edje_edit_part_source4_get() + * + * NOTE: This is not applied now. You must reload the edje to see the change. + */ +EAPI Eina_Bool edje_edit_part_source4_set(Evas_Object *obj, const char *part, const char *source); + +/** Get the source5 of part. + * + * Only available to TEXTBLOCK parts. It is used for the group to be loaded and + * used for anchors display UNDER the anchor position. source6 is used for over + * the anchors text, if source6 is specified. + * + * @param obj Object being edited. + * @param part Part to get the source from. + * + * @return Content of the source5 parameter or NULL if nothing set or an error occurred. + */ +EAPI const char * edje_edit_part_source5_get(Evas_Object *obj, const char *part); + +/** Set the source5 of part. + * + * @param obj Object being edited. + * @param part Part to set the source of. + * @param source Value for the source parameter. + * + * @return EINA_TRUE if successful, EINA_FALSE otherwise. + * + * @see edje_edit_part_source5_get() + * + */ +EAPI Eina_Bool edje_edit_part_source5_set(Evas_Object *obj, const char *part, const char *source); + +/** Get the source6 of part. + * + * Only available to TEXTBLOCK parts. It is used for the group to be loaded and + * used for anchor display OVER the
[EGIT] [core/efl] master 02/03: edje: Edje_Edit - add edje_edit_part_precide_is_inside functions.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=30885daafa1e217bf43fd649312d502b927e28e3 commit 30885daafa1e217bf43fd649312d502b927e28e3 Author: Vorobiov Vitalii vi.vorob...@samsung.com Date: Wed Jun 4 20:01:40 2014 +0200 edje: Edje_Edit - add edje_edit_part_precide_is_inside functions. Summary: Add two main functions - edje_edit_part_precise_is_inside_get - edje_edit_part_precise_is_inside_set Also support precise_is_inside into part's source code generation. @feature Reviewers: cedric, seoz, Hermet, raster CC: reutskiy.v.v, cedric Differential Revision: https://phab.enlightenment.org/D945 Signed-off-by: Cedric BAIL c.b...@partner.samsung.com --- src/lib/edje/Edje_Edit.h | 19 +++ src/lib/edje/edje_edit.c | 23 ++- 2 files changed, 41 insertions(+), 1 deletion(-) diff --git a/src/lib/edje/Edje_Edit.h b/src/lib/edje/Edje_Edit.h index 6712d8c..eda66c0 100644 --- a/src/lib/edje/Edje_Edit.h +++ b/src/lib/edje/Edje_Edit.h @@ -1215,6 +1215,25 @@ EAPI Eina_Bool edje_edit_part_repeat_events_get(Evas_Object *obj, const char *pa */ EAPI Eina_Bool edje_edit_part_repeat_events_set(Evas_Object *obj, const char *part, Eina_Bool repeat_events); +/** Get precise_is_inside for part. + * + * @param obj Object being edited. + * @param part Part to get if it will enable point collision detection for the part. + * + * @return EINA_TRUE if point collision detection for the part is enabled, EINA_FALSE otherwise + */ +EAPI Eina_Bool edje_edit_part_precise_is_inside_get(Evas_Object *obj, const char *part); + +/** Set precise_is_inside for part. + * + * @param obj Object being edited. + * @param part Part to set if it will enable point collision detection for the part. + * @param precise_is_inside EINA_TRUE if point collision detection for the part is enabled, EINA_FALSE otherwise + * + * @return EINA_TRUE if successful, EINA_FALSE otherwise. + */ +EAPI Eina_Bool edje_edit_part_precise_is_inside_set(Evas_Object *obj, const char *part, Eina_Bool precise_is_inside); + /** Get ignore_flags for part. * * @param obj Object being edited. diff --git a/src/lib/edje/edje_edit.c b/src/lib/edje/edje_edit.c index 38e1c02..ff020da 100644 --- a/src/lib/edje/edje_edit.c +++ b/src/lib/edje/edje_edit.c @@ -2895,6 +2895,26 @@ edje_edit_part_repeat_events_set(Evas_Object *obj, const char *part, Eina_Bool r return EINA_TRUE; } + +EAPI Eina_Bool +edje_edit_part_precise_is_inside_get(Evas_Object *obj, const char *part) +{ + GET_RP_OR_RETURN(0); + + return rp-part-precise_is_inside; +} + +EAPI Eina_Bool +edje_edit_part_precise_is_inside_set(Evas_Object *obj, const char *part, Eina_Bool precise_is_inside) +{ + GET_RP_OR_RETURN(EINA_FALSE); + + if (!rp-object) return EINA_FALSE; + + rp-part-precise_is_inside = precise_is_inside; + return EINA_TRUE; +} + EAPI Evas_Event_Flags edje_edit_part_ignore_flags_get(Evas_Object *obj, const char *part) { @@ -8094,7 +8114,8 @@ _edje_generate_source_of_part(Evas_Object *obj, Edje_Part *ep, Eina_Strbuf *buf) //TODO Support ignore_flags if (edje_edit_part_pointer_mode_get(obj, part) == EVAS_OBJECT_POINTER_MODE_NOGRAB) BUF_APPEND(I4pointer_mode: NOGRAB;\n); - //TODO Support precise_is_inside + if (edje_edit_part_precise_is_inside_get(obj, part)) + BUF_APPEND(I4precise_is_inside: 1;\n); //TODO Support use_alternate_font_metrics if ((str = edje_edit_part_clip_to_get(obj, part))) { --
[EGIT] [core/efl] master 02/02: eina: fix possible memory leak on failure in eina_tiler_equal.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=ba53bf8533516341e0489fb5b4022d6bec2116e4 commit ba53bf8533516341e0489fb5b4022d6bec2116e4 Author: Cedric BAIL c.b...@partner.samsung.com Date: Thu Jun 5 02:51:54 2014 +0200 eina: fix possible memory leak on failure in eina_tiler_equal. CID 1216618, 1216615, 1216614. --- src/lib/eina/eina_tiler.c | 17 +++-- 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/lib/eina/eina_tiler.c b/src/lib/eina/eina_tiler.c index 275ff7b..97c987a 100644 --- a/src/lib/eina/eina_tiler.c +++ b/src/lib/eina/eina_tiler.c @@ -1506,6 +1506,7 @@ eina_tiler_equal(Eina_Tiler *t1, Eina_Iterator *itr1, *itr2; Eina_Rectangle *rect1, *rect2; Eina_Bool next_t1 = EINA_FALSE, next_t2 = EINA_FALSE; + Eina_Bool r = EINA_FALSE; EINA_MAGIC_CHECK_TILER(t1, EINA_FALSE); EINA_MAGIC_CHECK_TILER(t2, EINA_FALSE); @@ -1517,9 +1518,9 @@ eina_tiler_equal(Eina_Tiler *t1, itr2 = eina_tiler_iterator_new(t2); if ((!eina_iterator_next(itr1, (void**)(void*)(rect1))) (!rect1)) - return EINA_FALSE; + goto first_fail; if ((!eina_iterator_next(itr2, (void**)(void*)(rect2))) (!rect2)) - return EINA_FALSE; + goto second_fail; while((rect1) (rect2)) { @@ -1530,26 +1531,30 @@ eina_tiler_equal(Eina_Tiler *t1, (rect1-w != rect2-w) || (rect1-h != rect2-h)) { - return EINA_FALSE; + goto second_fail; } } else - return EINA_FALSE; + goto second_fail; next_t1 = eina_iterator_next(itr1, (void**)rect1); next_t2 = eina_iterator_next(itr2, (void**)rect2); if (next_t1 != next_t2) - return EINA_FALSE; + goto second_fail; if (!next_t1 !next_t2) break; } + r = EINA_TRUE; + + second_fail: eina_iterator_free(itr1); + first_fail: eina_iterator_free(itr2); - return EINA_TRUE; + return r; } --
[EGIT] [core/efl] master 07/07: eina: removing more dead code looking for strange int.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=30a3df4c5c20eafcc30ccc8ecbd8c83108429b2f commit 30a3df4c5c20eafcc30ccc8ecbd8c83108429b2f Author: Cedric BAIL c.b...@partner.samsung.com Date: Thu Jun 5 03:30:43 2014 +0200 eina: removing more dead code looking for strange int. CID 98377. --- src/lib/eina/eina_list.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/lib/eina/eina_list.c b/src/lib/eina/eina_list.c index fd5d672..527a141 100644 --- a/src/lib/eina/eina_list.c +++ b/src/lib/eina/eina_list.c @@ -1436,8 +1436,6 @@ eina_list_search_sorted_near_list(const Eina_List *list, else break; } -else - break; } end: --
[EGIT] [core/efl] master 05/07: eina: remove logically dead code.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=74121c14cd5c1fe787baf569f7db4730a637e31f commit 74121c14cd5c1fe787baf569f7db4730a637e31f Author: Cedric BAIL c.b...@partner.samsung.com Date: Thu Jun 5 03:24:46 2014 +0200 eina: remove logically dead code. I am wondering why this code was around, an useless variable and an if that would never be taken... CID 1039940. --- src/lib/eina/eina_inlist.c | 7 --- 1 file changed, 7 deletions(-) diff --git a/src/lib/eina/eina_inlist.c b/src/lib/eina/eina_inlist.c index 13ad0e2..6753b58 100644 --- a/src/lib/eina/eina_inlist.c +++ b/src/lib/eina/eina_inlist.c @@ -812,7 +812,6 @@ eina_inlist_sort(Eina_Inlist *head, Eina_Compare_Cb func) unsigned int i = 0; unsigned int n = 0; Eina_Inlist *tail = head; - Eina_Inlist *unsort = NULL; Eina_Inlist *stack[EINA_INLIST_SORT_STACK_SIZE]; EINA_SAFETY_ON_NULL_RETURN_VAL(head, NULL); @@ -849,12 +848,6 @@ eina_inlist_sort(Eina_Inlist *head, Eina_Compare_Cb func) head = stack[0]; tail = eina_inlist_sort_rebuild_prev(head); - if (unsort) - { -tail-next = unsort; -unsort-prev = tail; - } - head-last = tail; return head; --
[EGIT] [core/efl] master 01/07: eina: simplifie logic to not go with multiple level of callback for just getting the first entry in a hash.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=f7fd1f1c84a9355039b38725c820b675f6dafc20 commit f7fd1f1c84a9355039b38725c820b675f6dafc20 Author: Cedric BAIL c.b...@partner.samsung.com Date: Thu Jun 5 03:02:06 2014 +0200 eina: simplifie logic to not go with multiple level of callback for just getting the first entry in a hash. CID 1039937. --- src/lib/eina/eina_value.c | 19 --- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/src/lib/eina/eina_value.c b/src/lib/eina/eina_value.c index 96afe36..4bded7c 100644 --- a/src/lib/eina/eina_value.c +++ b/src/lib/eina/eina_value.c @@ -3153,14 +3153,6 @@ _eina_value_type_hash_compare(const Eina_Value_Type *type EINA_UNUSED, const voi return ctx.cmp; } -static Eina_Bool -_eina_value_type_hash_find_first(const Eina_Hash *hash EINA_UNUSED, const void *key EINA_UNUSED, void *ptr, void *user_data) -{ - void **ret = user_data; - *ret = ptr; - return EINA_FALSE; -} - struct _eina_value_type_hash_convert_to_string_each_ctx { const Eina_Value_Type *subtype; @@ -3237,11 +3229,15 @@ _eina_value_type_hash_convert_to(const Eina_Value_Type *type EINA_UNUSED, const else if ((tmem-hash) (eina_hash_population(tmem-hash) == 1)) { const Eina_Value_Type *subtype = tmem-subtype; + Eina_Iterator *it; void *imem = NULL; -eina_hash_foreach(tmem-hash, _eina_value_type_hash_find_first, imem); -if (!imem) /* shouldn't happen... */ - ret = EINA_FALSE; + it = eina_hash_iterator_data_new(tmem-hash); + + if (!it || !eina_iterator_next(it, imem) || !imem) /* shouldn't happen... */ + { + ret = EINA_FALSE; + } else { if (subtype-convert_to) @@ -3249,6 +3245,7 @@ _eina_value_type_hash_convert_to(const Eina_Value_Type *type EINA_UNUSED, const if ((!ret) (convert-convert_from)) ret = convert-convert_from(convert, subtype, convert_mem, imem); } + eina_iterator_free(it); } if (!ret) --
[EGIT] [core/efl] master 03/07: eina: let's check for returned value of realloc.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=8f817ff4a009b685a3d47d6a6115df01d4dc6efa commit 8f817ff4a009b685a3d47d6a6115df01d4dc6efa Author: Cedric BAIL c.b...@partner.samsung.com Date: Thu Jun 5 03:20:56 2014 +0200 eina: let's check for returned value of realloc. CID 1039689. --- src/lib/eina/eina_inarray.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/eina/eina_inarray.c b/src/lib/eina/eina_inarray.c index c1e07be..2d52e6f 100644 --- a/src/lib/eina/eina_inarray.c +++ b/src/lib/eina/eina_inarray.c @@ -606,7 +606,7 @@ eina_inarray_remove_at(Eina_Inarray *array, unsigned int position) memmove(p, p + sz, (array-len - position - 1) * sz); } - _eina_inarray_resize(array, array-len - 1); + if (!_eina_inarray_resize(array, array-len - 1)) return EINA_FALSE; /* should never fail as we reduce the buffer, but just let make compiler happy */ array-len--; return EINA_TRUE; } --
[EGIT] [core/efl] master 02/07: eina: remove logically dead code.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=b67860e98fbead33f5553ff6ee091997ea924f96 commit b67860e98fbead33f5553ff6ee091997ea924f96 Author: Cedric BAIL c.b...@partner.samsung.com Date: Thu Jun 5 03:10:43 2014 +0200 eina: remove logically dead code. The for loop above would exit with at least length = 0, so 0 is just impossible. CID 1039943. --- src/lib/eina/eina_convert.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/lib/eina/eina_convert.c b/src/lib/eina/eina_convert.c index 0255b00..d795d30 100644 --- a/src/lib/eina/eina_convert.c +++ b/src/lib/eina/eina_convert.c @@ -271,9 +271,6 @@ eina_convert_atod(const char *src, int length, long long *m, long *e) exponent += *str - '0'; } - if (length 0) - goto on_length_error; - if (sign 0) exponent = -exponent; --
[EGIT] [core/efl] master 06/07: eina: removing more dead code that expect strange int.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=344690554ad7d4397e9cee4618b1d9591c30d468 commit 344690554ad7d4397e9cee4618b1d9591c30d468 Author: Cedric BAIL c.b...@partner.samsung.com Date: Thu Jun 5 03:29:16 2014 +0200 eina: removing more dead code that expect strange int. CID 1039941. --- src/lib/eina/eina_inlist.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/lib/eina/eina_inlist.c b/src/lib/eina/eina_inlist.c index 6753b58..374e86c 100644 --- a/src/lib/eina/eina_inlist.c +++ b/src/lib/eina/eina_inlist.c @@ -656,8 +656,6 @@ eina_inlist_sorted_insert(Eina_Inlist *list, else break; } -else - break; } if (cmp = 0) --
[EGIT] [core/efl] master 04/07: eina: remove logically dead code.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=c33acef5d717527f9940d034dcbb0a8e6d060059 commit c33acef5d717527f9940d034dcbb0a8e6d060059 Author: Cedric BAIL c.b...@partner.samsung.com Date: Thu Jun 5 03:22:27 2014 +0200 eina: remove logically dead code. Removing this code let me wonder what could be an int value that is not 0, not 0 and not 0... CID 1039938. --- src/lib/eina/eina_inlist.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/lib/eina/eina_inlist.c b/src/lib/eina/eina_inlist.c index 5c93b01..13ad0e2 100644 --- a/src/lib/eina/eina_inlist.c +++ b/src/lib/eina/eina_inlist.c @@ -786,8 +786,6 @@ eina_inlist_sorted_state_insert(Eina_Inlist *list, else break; } -else - break; } if (cmp = 0) --
[EGIT] [core/efl] master 01/01: Eolian: Fix Coverity issue.
jackdanielz pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=97913753ea8dbb9eb544e69c96f4fbabe9347427 commit 97913753ea8dbb9eb544e69c96f4fbabe9347427 Author: Daniel Zaoui daniel.za...@samsung.com Date: Thu Jun 5 07:38:58 2014 +0300 Eolian: Fix Coverity issue. In a certain case, the function was returning without releasing all the resources. CID 1220084 --- src/bin/eolian/impl_generator.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/bin/eolian/impl_generator.c b/src/bin/eolian/impl_generator.c index 7083e9f..d3ec76e 100644 --- a/src/bin/eolian/impl_generator.c +++ b/src/bin/eolian/impl_generator.c @@ -133,7 +133,7 @@ _prototype_generate(Eolian_Function foo, Eolian_Function_Type ftype, Eina_Strbuf impl_desc?impl_name:class_env.lower_classname, eolian_function_name_get(foo), ftype == EOLIAN_PROP_GET?_get: (ftype == EOLIAN_PROP_SET?_set:)); - if (_function_exists(func_name, buffer)) return EINA_TRUE; + if (_function_exists(func_name, buffer)) goto end; printf(Generation of function %s\n, func_name); const char *rettype = eolian_function_return_type_get(foo, ftype); @@ -175,6 +175,7 @@ _prototype_generate(Eolian_Function foo, Eolian_Function_Type ftype, Eina_Strbuf eina_strbuf_string_get(super_invok) ); +end: eina_strbuf_free(short_params); eina_strbuf_free(params); eina_strbuf_free(super_invok); --