[EGIT] [core/enlightenment] enlightenment-0.19 03/03: raise deskmirror windows on startup

2015-04-09 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.19.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=4207c1240e3443b4753e211ecbe3de0f1c7a0dba

commit 4207c1240e3443b4753e211ecbe3de0f1c7a0dba
Author: Mike Blumenkrantz 
Date:   Thu Apr 9 14:16:22 2015 -0400

raise deskmirror windows on startup

these get added bottom -> top on creation, so ensure that they are raised
---
 src/bin/e_deskmirror.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/bin/e_deskmirror.c b/src/bin/e_deskmirror.c
index eb89af4..bf002fa 100644
--- a/src/bin/e_deskmirror.c
+++ b/src/bin/e_deskmirror.c
@@ -501,6 +501,8 @@ _e_deskmirror_mirror_setup(Mirror *m)
 if (!m->added)
   evas_object_smart_callback_call(m->sd->obj, "mirror_add", m->mirror);
  }
+   else
+ e_layout_child_raise(m->mirror);
m->added = 1;
 }
 

-- 




[EGIT] [core/efl] master 02/02: eio model: Removed non-existent emodel.la library linking

2015-04-09 Thread Felipe Magno de Almeida
felipealmeida pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=49c3396fae37c140e12781d57c673be42c8bce71

commit 49c3396fae37c140e12781d57c673be42c8bce71
Author: Felipe Magno de Almeida 
Date:   Thu Apr 9 17:43:05 2015 -0300

eio model: Removed non-existent emodel.la library linking

The library emodel.la doesn't exist. Emodel is now efl model interface. No 
need to link to it.
---
 src/examples/eio/Makefile.am | 2 --
 1 file changed, 2 deletions(-)

diff --git a/src/examples/eio/Makefile.am b/src/examples/eio/Makefile.am
index c80f747..a424f77 100644
--- a/src/examples/eio/Makefile.am
+++ b/src/examples/eio/Makefile.am
@@ -22,7 +22,6 @@ eio_file_copy
 eio_file_ls_SOURCES = eio_file_ls.c
 eio_file_ls_LDADD = \
 $(top_builddir)/src/lib/eio/libeio.la \
-$(top_builddir)/src/lib/emodel/libemodel.la \
 $(top_builddir)/src/lib/eo/libeo.la \
 $(top_builddir)/src/lib/ecore/libecore.la \
 $(top_builddir)/src/lib/eet/libeet.la \
@@ -33,7 +32,6 @@ $(top_builddir)/src/lib/eina/libeina.la \
 eio_file_copy_SOURCES = eio_file_copy.c
 eio_file_copy_LDADD = \
 $(top_builddir)/src/lib/eio/libeio.la \
-$(top_builddir)/src/lib/emodel/libemodel.la \
 $(top_builddir)/src/lib/eo/libeo.la \
 $(top_builddir)/src/lib/ecore/libecore.la \
 $(top_builddir)/src/lib/eet/libeet.la \

-- 




[EGIT] [enlightenment/modules/edgar] master 01/01: Fix E19 compatibility

2015-04-09 Thread Dave Andreoli
davemds pushed a commit to branch master.

http://git.enlightenment.org/enlightenment/modules/edgar.git/commit/?id=3f954f4675cf2ba6cbc5431b5aa503b26bec1402

commit 3f954f4675cf2ba6cbc5431b5aa503b26bec1402
Author: Dave Andreoli 
Date:   Thu Apr 9 20:54:00 2015 +0200

Fix E19 compatibility

Now edgar works again in E20 and E19, still need to test on E18
someone can test it on 18?
---
 src/e_mod_edgar.c | 10 +-
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/e_mod_edgar.c b/src/e_mod_edgar.c
index d9ad429..55ff56f 100644
--- a/src/e_mod_edgar.c
+++ b/src/e_mod_edgar.c
@@ -449,17 +449,17 @@ edgar_menu_info_cb(void *data, E_Menu *m, E_Menu_Item *mi)
 
// dialog
 #if E_VERSION_MAJOR >= 19
-   Evas_Object *con = NULL;
+   dia = e_dialog_new(NULL, "gadget_info", "class");
 #else
-   E_Container *con;
-   con = e_container_current_get(e_manager_current_get());
-#endif
+   E_Container *con = e_container_current_get(e_manager_current_get());
dia = e_dialog_new(con, "gadget_info", "class");
+#endif
+
e_dialog_resizable_set(dia, 0);
e_dialog_title_set(dia, "Gadget info");
e_dialog_button_add(dia, "Close", NULL, NULL, NULL);
 
-#if E_VERSION_MAJOR >= 19
+#if E_VERSION_MAJOR >= 20
Evas *evas = evas_object_evas_get(dia->win);
 #else
Evas *evas = dia->win->evas;

-- 




[EGIT] [core/enlightenment] enlightenment-0.19 02/03: always lower e_layout children upon packing

2015-04-09 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.19.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=2091ef60d8bb05063bfa0ee8441e07477192595b

commit 2091ef60d8bb05063bfa0ee8441e07477192595b
Author: Mike Blumenkrantz 
Date:   Thu Apr 9 14:07:37 2015 -0400

always lower e_layout children upon packing

fixes issues where a new child added would appear above other child objects
if the new child was meant to be stacked below other children

mostly noticeable in deskmirror
---
 src/bin/e_layout.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/bin/e_layout.c b/src/bin/e_layout.c
index 5026e08..79a6d57 100644
--- a/src/bin/e_layout.c
+++ b/src/bin/e_layout.c
@@ -138,6 +138,7 @@ e_layout_pack(Evas_Object *obj, Evas_Object *child)
sd = evas_object_smart_data_get(obj);
li = _e_layout_smart_adopt(sd, child);
sd->items = eina_inlist_append(sd->items, EINA_INLIST_GET(li));
+   evas_object_lower(child);
if (sd->frozen <= 0) _e_layout_smart_move_resize_item(li);
 }
 

-- 




[EGIT] [core/elementary] master 01/01: elm_genlist: pass eo_it to eo_do_ret func, not VIEW(it)

2015-04-09 Thread Jaeun Choi
eunue pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=5d1a534ff647b4dcc30cd0137f4aa4c0c7196423

commit 5d1a534ff647b4dcc30cd0137f4aa4c0c7196423
Author: Jaeun Choi 
Date:   Thu Apr 9 21:12:54 2015 +0900

elm_genlist: pass eo_it to eo_do_ret func, not VIEW(it)

@fix
---
 src/lib/elm_genlist.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/lib/elm_genlist.c b/src/lib/elm_genlist.c
index 4a7c8db..18faf44 100644
--- a/src/lib/elm_genlist.c
+++ b/src/lib/elm_genlist.c
@@ -7056,9 +7056,8 @@ 
_elm_genlist_item_elm_widget_item_tooltip_window_mode_set(Eo *eo_it, Elm_Gen_Ite
 EAPI Eina_Bool
 elm_genlist_item_tooltip_window_mode_get(const Elm_Object_Item *eo_it)
 {
-   ELM_GENLIST_ITEM_DATA_GET(eo_it, it);
Eina_Bool ret;
-   return eo_do_ret(VIEW(it), ret, elm_wdg_item_tooltip_window_mode_get());
+   return eo_do_ret(eo_it, ret, elm_wdg_item_tooltip_window_mode_get());
 }
 
 EAPI void

-- 




[EGIT] [core/efl] master 01/01: efl interfaces: Fix conditional for generation for pkgconfig for C++

2015-04-09 Thread Felipe Magno de Almeida
felipealmeida pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=4ecdac93022505288a0162c8017bba8c8d2e9aed

commit 4ecdac93022505288a0162c8017bba8c8d2e9aed
Author: Felipe Magno de Almeida 
Date:   Thu Apr 9 11:16:51 2015 -0300

efl interfaces: Fix conditional for generation for pkgconfig for C++

Do not generate efl-cxx.pc when C++ is disabled.
---
 Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Makefile.am b/Makefile.am
index 6278e42..a756511 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -127,7 +127,6 @@ pc/eina.pc \
 pc/eo.pc \
 pc/eolian.pc \
 pc/efl.pc \
-pc/efl-cxx.pc \
 pc/emile.pc \
 pc/eet.pc \
 pc/evas.pc \
@@ -159,6 +158,7 @@ pkgconfig_DATA += \
 pc/eina-cxx.pc \
 pc/evas-cxx.pc \
 pc/ecore-cxx.pc \
+pc/efl-cxx.pc \
 pc/eolian-cxx.pc \
 pc/edje-cxx.pc \
 pc/eet-cxx.pc \

-- 




[EGIT] [website/www-content] master 01/01: Wiki page download-latest changed with summary [Added Python-EFL download link] by Kai Huuhko

2015-04-09 Thread apache
apache pushed a commit to branch master.

http://git.enlightenment.org/website/www-content.git/commit/?id=3c280449bb1ec876201f0bf475e3b435c2a1b3d3

commit 3c280449bb1ec876201f0bf475e3b435c2a1b3d3
Author: apache 
Date:   Thu Apr 9 01:24:09 2015 -0700

Wiki page download-latest changed with summary [Added Python-EFL download 
link] by Kai Huuhko
---
 pages/download-latest.txt | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/pages/download-latest.txt b/pages/download-latest.txt
index f67e018..c4282a3 100644
--- a/pages/download-latest.txt
+++ b/pages/download-latest.txt
@@ -3,6 +3,7 @@ efl_v = 1.13.2
 elm_v = 1.13.2
 emotion_generic_players_v = 1.13.0
 evas_generic_loaders_v= 1.13.2
+python_efl_v  = 1.13.0
 
 enlightenment_v   = 0.19.4
 terminology_v = 0.8.0
@@ -19,6 +20,7 @@ dlbase= 
http://download.enlightenment.org/rel/
 
|[[%%dlbase%%libs/elementary/elementary-%%elm_vextn%%|Elementary]]|%%elm_v%%|
 
|[[%%dlbase%%libs/emotion_generic_players/emotion_generic_players-%%emotion_generic_players_vextn%%|Emotion
 Generic Players]]|%%emotion_generic_players_v%%|
 
|[[%%dlbase%%libs/evas_generic_loaders/evas_generic_loaders-%%evas_generic_loaders_vextn%%|Evas
 Generic Loaders]]|%%evas_generic_loaders_v%%|
+|[[%%dlbase%%bindings/python/python-efl-%%python_efl_vextn%%|Python-EFL]]|%%python_efl_v%%|
 
 ^Application^Version^
 
|[[%%dlbase%%apps/enlightenment/enlightenment-%%enlightenment_vextn%%|Enlightenment]]|%%enlightenment_v%%|

-- 




[EGIT] [core/enlightenment] enlightenment-0.19 01/01: set xkb dialog as changed after adding a new layout

2015-04-09 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.19.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=5992134020ea30dd837521b5bb08b07fb9ee6f1a

commit 5992134020ea30dd837521b5bb08b07fb9ee6f1a
Author: Mike Blumenkrantz 
Date:   Thu Apr 9 15:15:04 2015 -0400

set xkb dialog as changed after adding a new layout

ref T2271
---
 src/modules/xkbswitch/e_mod_config.c | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/modules/xkbswitch/e_mod_config.c 
b/src/modules/xkbswitch/e_mod_config.c
index 13745ce..e2c17fa 100644
--- a/src/modules/xkbswitch/e_mod_config.c
+++ b/src/modules/xkbswitch/e_mod_config.c
@@ -19,6 +19,7 @@ struct _E_Config_Dialog_Data
int  dont_touch_my_damn_keyboard;
 
E_Dialog*dlg_add_new;
+   E_Config_Dialog *cfd;
 };
 
 typedef struct _E_XKB_Dialog_Option
@@ -84,7 +85,7 @@ _xkb_cfg_dialog(E_Comp *comp, const char *params __UNUSED__)
 /* Locals */
 
 static void *
-_create_data(E_Config_Dialog *cfd __UNUSED__)
+_create_data(E_Config_Dialog *cfd)
 {
E_Config_Dialog_Data *cfdata;
Eina_List *l, *ll, *lll;
@@ -97,6 +98,7 @@ _create_data(E_Config_Dialog *cfd __UNUSED__)
parse_rules(); /* XXX: handle in case nothing was found? */
 
cfdata = E_NEW(E_Config_Dialog_Data, 1);
+   cfdata->cfd = cfd;
 
cfdata->cfg_layouts = NULL;
EINA_LIST_FOREACH(e_config->xkb.used_layouts, l, cl)
@@ -600,6 +602,7 @@ _dlg_add_cb_ok(void *data __UNUSED__, E_Dialog *dlg)
 
cfdata->dlg_add_new = NULL;
e_object_unref(E_OBJECT(dlg));
+   e_config_dialog_changed_set(cfdata->cfd, 1);
 }
 
 static void

-- 




[EGIT] [core/enlightenment] master 02/09: set xkb dialog as changed after adding a new layout

2015-04-09 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=81584412e1794576ff661e3379ced70df5101c8a

commit 81584412e1794576ff661e3379ced70df5101c8a
Author: Mike Blumenkrantz 
Date:   Thu Apr 9 15:15:04 2015 -0400

set xkb dialog as changed after adding a new layout

ref T2271
---
 src/modules/xkbswitch/e_mod_config.c | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/modules/xkbswitch/e_mod_config.c 
b/src/modules/xkbswitch/e_mod_config.c
index f488f01..994ffae 100644
--- a/src/modules/xkbswitch/e_mod_config.c
+++ b/src/modules/xkbswitch/e_mod_config.c
@@ -19,6 +19,7 @@ struct _E_Config_Dialog_Data
int  dont_touch_my_damn_keyboard;
 
E_Dialog*dlg_add_new;
+   E_Config_Dialog *cfd;
 };
 
 typedef struct _E_XKB_Dialog_Option
@@ -84,7 +85,7 @@ _xkb_cfg_dialog(Evas_Object *parent EINA_UNUSED, const char 
*params EINA_UNUSED)
 /* Locals */
 
 static void *
-_create_data(E_Config_Dialog *cfd EINA_UNUSED)
+_create_data(E_Config_Dialog *cfd)
 {
E_Config_Dialog_Data *cfdata;
Eina_List *l, *ll, *lll;
@@ -97,6 +98,7 @@ _create_data(E_Config_Dialog *cfd EINA_UNUSED)
parse_rules(); /* XXX: handle in case nothing was found? */
 
cfdata = E_NEW(E_Config_Dialog_Data, 1);
+   cfdata->cfd = cfd;
 
cfdata->cfg_layouts = NULL;
EINA_LIST_FOREACH(e_config->xkb.used_layouts, l, cl)
@@ -607,6 +609,7 @@ _dlg_add_cb_ok(void *data EINA_UNUSED, E_Dialog *dlg)
 
cfdata->dlg_add_new = NULL;
e_object_unref(E_OBJECT(dlg));
+   e_config_dialog_changed_set(cfdata->cfd, 1);
 }
 
 static void

-- 




[EGIT] [core/efl] master 01/01: eian threadqueue - be clearer on the message struct/format limitations

2015-04-09 Thread Carsten Haitzler
raster pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=8c8bf357ba6da9cebd2ca5e5bbe620cbda235eb0

commit 8c8bf357ba6da9cebd2ca5e5bbe620cbda235eb0
Author: Carsten Haitzler (Rasterman) 
Date:   Thu Apr 9 17:21:25 2015 +0900

eian threadqueue - be clearer on the message struct/format limitations

this makes the send func docs also be clear on the
Eina_Thread_Queue_Msg limitations like the wait func
---
 src/lib/eina/eina_thread_queue.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/lib/eina/eina_thread_queue.h b/src/lib/eina/eina_thread_queue.h
index 5c6a060..f2199ad 100644
--- a/src/lib/eina/eina_thread_queue.h
+++ b/src/lib/eina/eina_thread_queue.h
@@ -100,7 +100,8 @@ eina_thread_queue_free(Eina_Thread_Queue *thq) 
EINA_ARG_NONNULL(1);
  * This allocates space for a new message on the message queue, but does not
  * actually trigger the send. For that you will need to call
  * eina_thread_queue_send_done() to complete the send and trigger the other
- * side.
+ * side. Every message must at least be a Eina_Thread_Queue_Msg in size and
+ * have this structure as the first member (first N bytes) of the message.
  * 
  * @since 1.11
  */

-- 




[EGIT] [core/enlightenment] master 08/09: remove csel widget

2015-04-09 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=e569758fef50b8e9d23b4bb10b6efa88537ea8a8

commit e569758fef50b8e9d23b4bb10b6efa88537ea8a8
Author: Mike Blumenkrantz 
Date:   Thu Apr 9 16:35:31 2015 -0400

remove csel widget

no longer used
---
 po/POTFILES.in  |   1 -
 src/bin/Makefile.mk |   2 -
 src/bin/e_includes.h|   1 -
 src/bin/e_widget_csel.c | 311 
 src/bin/e_widget_csel.h |   6 -
 5 files changed, 321 deletions(-)

diff --git a/po/POTFILES.in b/po/POTFILES.in
index 4c493c5..0d1f11f 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -103,7 +103,6 @@ src/bin/e_widget_button.c
 src/bin/e_widget_check.c
 src/bin/e_widget_color_well.c
 src/bin/e_widget_config_list.c
-src/bin/e_widget_csel.c
 src/bin/e_widget_cslider.c
 src/bin/e_widget_entry.c
 src/bin/e_widget_filepreview.c
diff --git a/src/bin/Makefile.mk b/src/bin/Makefile.mk
index 279cbc5..a2ff154 100644
--- a/src/bin/Makefile.mk
+++ b/src/bin/Makefile.mk
@@ -167,7 +167,6 @@ src/bin/e_widget_button.h \
 src/bin/e_widget_check.h \
 src/bin/e_widget_color_well.h \
 src/bin/e_widget_config_list.h \
-src/bin/e_widget_csel.h \
 src/bin/e_widget_cslider.h \
 src/bin/e_widget_bgpreview.h \
 src/bin/e_widget_entry.h \
@@ -329,7 +328,6 @@ src/bin/e_widget.c \
 src/bin/e_widget_check.c \
 src/bin/e_widget_color_well.c \
 src/bin/e_widget_config_list.c \
-src/bin/e_widget_csel.c \
 src/bin/e_widget_cslider.c \
 src/bin/e_widget_bgpreview.c \
 src/bin/e_widget_entry.c \
diff --git a/src/bin/e_includes.h b/src/bin/e_includes.h
index 359aa73..a8d21f9 100644
--- a/src/bin/e_includes.h
+++ b/src/bin/e_includes.h
@@ -106,7 +106,6 @@
 #include "e_widget_spectrum.h"
 #include "e_widget_cslider.h"
 #include "e_widget_color_well.h"
-#include "e_widget_csel.h"
 #include "e_color_dialog.h"
 #include "e_sys.h"
 #include "e_obj_dialog.h"
diff --git a/src/bin/e_widget_csel.c b/src/bin/e_widget_csel.c
deleted file mode 100644
index e616ffe..000
--- a/src/bin/e_widget_csel.c
+++ /dev/null
@@ -1,311 +0,0 @@
-#include "e.h"
-
-typedef struct _E_Widget_Data E_Widget_Data;
-struct _E_Widget_Data
-{
-   Evas_Object *obj;
-   Eina_List   *sliders;
-   Eina_List   *entries;
-   Evas_Object *spectrum, *vert, *well;
-   E_Color *cv;
-   char   **values;
-   int  mode;
-   int  changing;
-};
-
-static void
-_e_wid_del_hook(Evas_Object *obj)
-{
-   E_Widget_Data *wd;
-   int i = 0;
-
-   wd = e_widget_data_get(obj);
-   if (!wd) return;
-
-   for (i = 0; i < E_COLOR_COMPONENT_MAX; i++)
- E_FREE(wd->values[i]);
-
-   E_FREE(wd->values);
-
-   eina_list_free(wd->sliders);
-   eina_list_free(wd->entries);
-
-   E_FREE(wd);
-}
-
-static void
-_e_wid_cb_radio_changed(void *data, Evas_Object *o EINA_UNUSED)
-{
-   E_Widget_Data *wd = data;
-
-   e_widget_spectrum_mode_set(wd->spectrum, wd->mode);
-   e_widget_cslider_mode_set(wd->vert, wd->mode);
-}
-
-static void
-_e_wid_cb_color_changed(void *data, Evas_Object *o)
-{
-   E_Widget_Data *wd = data;
-   Eina_List *l;
-   Evas_Object *eo, *so;
-   int changed = -1, i = 0;
-
-   if (wd->changing) return;
-
-   wd->changing = 1;
-
-   /* entry changed */
-   EINA_LIST_FOREACH(wd->entries, l, eo)
- {
-if (o == eo)
-  {
- changed = i;
- switch (i)
-   {
-case E_COLOR_COMPONENT_R:
-  wd->cv->r = atoi(wd->values[i]);
-  if (wd->cv->r > 255) wd->cv->r = 255;
-  if (wd->cv->r < 0) wd->cv->r = 0;
-  break;
-
-case E_COLOR_COMPONENT_G:
-  wd->cv->g = atoi(wd->values[i]);
-  if (wd->cv->g > 255) wd->cv->g = 255;
-  if (wd->cv->g < 0) wd->cv->g = 0;
-  break;
-
-case E_COLOR_COMPONENT_B:
-  wd->cv->b = atoi(wd->values[i]);
-  if (wd->cv->b > 255) wd->cv->b = 255;
-  if (wd->cv->b < 0) wd->cv->b = 0;
-  break;
-
-case E_COLOR_COMPONENT_H:
-  wd->cv->h = atof(wd->values[i]);
-  if (wd->cv->h > 360) wd->cv->h = 360;
-  if (wd->cv->h < 0) wd->cv->h = 0;
-  break;
-
-case E_COLOR_COMPONENT_S:
-  wd->cv->s = atof(wd->values[i]);
-  if (wd->cv->s > 1) wd->cv->s = 1;
-  if (wd->cv->s < 0) wd->cv->s = 0;
-  break;
-
-case E_COLOR_COMPONENT_V:
-  wd->cv->v = atof(wd->values[i]);
-  if (wd->cv->v > 1) wd->cv->v = 1;
-  if (wd->cv->v < 0) wd->cv->v = 0;
-  break;
-   }
- break;
-  }
-i++;
- }
-
-   if (changed != -1)
- {
-if (changed >= E_COLOR_COMPONENT_H)
-  e_color_update_hsv(wd->cv);
-else if (changed

[EGIT] [core/enlightenment] master 06/09: make entry widget call changed callbacks on "changed" again

2015-04-09 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=155a678ff4add3b099cfb6cdbfe83c55a940b79e

commit 155a678ff4add3b099cfb6cdbfe83c55a940b79e
Author: Mike Blumenkrantz 
Date:   Thu Apr 9 16:32:24 2015 -0400

make entry widget call changed callbacks on "changed" again

this caused infinite loops before, but now I'm removing the things that 
looped.

fixes a lot of config dialogs

ref T2271
---
 src/bin/e_widget_entry.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/e_widget_entry.c b/src/bin/e_widget_entry.c
index 05c7676..00ddd7e 100644
--- a/src/bin/e_widget_entry.c
+++ b/src/bin/e_widget_entry.c
@@ -91,7 +91,7 @@ e_widget_entry_add(Evas_Object *parent, char **text_location, 
void (*func)(void
wd->func = func;
wd->data = data;
wd->data2 = data2;
-   evas_object_smart_callback_add(o, "changed,user", _e_wid_changed_cb, obj);
+   evas_object_smart_callback_add(o, "changed", _e_wid_changed_cb, obj);
 
return obj;
 }

-- 




[EGIT] [core/enlightenment] master 05/09: don't redo min size hints on e_dialog show

2015-04-09 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=daf7f1983758d0885e681df777a88fef64de0108

commit daf7f1983758d0885e681df777a88fef64de0108
Author: Mike Blumenkrantz 
Date:   Thu Apr 9 16:31:32 2015 -0400

don't redo min size hints on e_dialog show

these are guaranteed to be wrong because elm won't provide accurate size
hints without some arm twisting
---
 src/bin/e_dialog.c | 9 -
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/src/bin/e_dialog.c b/src/bin/e_dialog.c
index 827c8b0..c9295c7 100644
--- a/src/bin/e_dialog.c
+++ b/src/bin/e_dialog.c
@@ -248,13 +248,12 @@ e_dialog_show(E_Dialog *dia)
if (o)
  elm_object_part_content_set(dia->bg_object, "e.swallow.content", o);
 
-   o = dia->box_object;
-   evas_object_size_hint_min_get(o, &mw, &mh);
-   elm_object_part_content_set(dia->bg_object, "e.swallow.buttons", o);
+   if (dia->min_w && dia->min_h)
+ mw = dia->min_w, mh = dia->min_h;
+   else
+ evas_object_size_hint_min_get(dia->bg_object, &mw, &mh);
 
evas_object_resize(dia->win, mw, mh);
-   dia->min_w = mw;
-   dia->min_h = mh;
if (!dia->resizable)
  {
 evas_object_size_hint_weight_set(dia->bg_object, 0, 0);

-- 




[EGIT] [core/elementary] elementary-1.13 01/01: elm_genlist: pass eo_it to eo_do func, not VIEW(it)

2015-04-09 Thread Jaeun Choi
eunue pushed a commit to branch elementary-1.13.

http://git.enlightenment.org/core/elementary.git/commit/?id=4f4dc9dd47c541ba5922f6ccec6003c2e8e9e451

commit 4f4dc9dd47c541ba5922f6ccec6003c2e8e9e451
Author: Jaeun Choi 
Date:   Thu Apr 9 21:12:54 2015 +0900

elm_genlist: pass eo_it to eo_do func, not VIEW(it)

@fix
---
 src/lib/elm_genlist.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/lib/elm_genlist.c b/src/lib/elm_genlist.c
index 54897a2..aefb1bb 100644
--- a/src/lib/elm_genlist.c
+++ b/src/lib/elm_genlist.c
@@ -6986,8 +6986,7 @@ 
_elm_genlist_item_elm_widget_item_tooltip_window_mode_set(Eo *eo_it, Elm_Gen_Ite
 EAPI Eina_Bool
 elm_genlist_item_tooltip_window_mode_get(const Elm_Object_Item *eo_it)
 {
-   ELM_GENLIST_ITEM_DATA_GET(eo_it, it);
-   return eo_do(VIEW(it), elm_wdg_item_tooltip_window_mode_get());
+   return eo_do(eo_it, elm_wdg_item_tooltip_window_mode_get());
 }
 
 EAPI void

-- 




[EGIT] [core/enlightenment] master 09/09: remove cslider widget

2015-04-09 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=128338952eb78aaea77834757f8ce134864ce5ac

commit 128338952eb78aaea77834757f8ce134864ce5ac
Author: Mike Blumenkrantz 
Date:   Thu Apr 9 16:37:16 2015 -0400

remove cslider widget

no longer used
---
 po/POTFILES.in |   1 -
 src/bin/Makefile.mk|   2 -
 src/bin/e_includes.h   |   1 -
 src/bin/e_widget_cslider.c | 641 -
 src/bin/e_widget_cslider.h |   9 -
 5 files changed, 654 deletions(-)

diff --git a/po/POTFILES.in b/po/POTFILES.in
index 0d1f11f..c59c782 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -103,7 +103,6 @@ src/bin/e_widget_button.c
 src/bin/e_widget_check.c
 src/bin/e_widget_color_well.c
 src/bin/e_widget_config_list.c
-src/bin/e_widget_cslider.c
 src/bin/e_widget_entry.c
 src/bin/e_widget_filepreview.c
 src/bin/e_widget_font_preview.c
diff --git a/src/bin/Makefile.mk b/src/bin/Makefile.mk
index a2ff154..105c380 100644
--- a/src/bin/Makefile.mk
+++ b/src/bin/Makefile.mk
@@ -167,7 +167,6 @@ src/bin/e_widget_button.h \
 src/bin/e_widget_check.h \
 src/bin/e_widget_color_well.h \
 src/bin/e_widget_config_list.h \
-src/bin/e_widget_cslider.h \
 src/bin/e_widget_bgpreview.h \
 src/bin/e_widget_entry.h \
 src/bin/e_widget_filepreview.h \
@@ -328,7 +327,6 @@ src/bin/e_widget.c \
 src/bin/e_widget_check.c \
 src/bin/e_widget_color_well.c \
 src/bin/e_widget_config_list.c \
-src/bin/e_widget_cslider.c \
 src/bin/e_widget_bgpreview.c \
 src/bin/e_widget_entry.c \
 src/bin/e_widget_filepreview.c \
diff --git a/src/bin/e_includes.h b/src/bin/e_includes.h
index a8d21f9..6218768 100644
--- a/src/bin/e_includes.h
+++ b/src/bin/e_includes.h
@@ -104,7 +104,6 @@
 #include "e_color.h"
 #include "e_spectrum.h"
 #include "e_widget_spectrum.h"
-#include "e_widget_cslider.h"
 #include "e_widget_color_well.h"
 #include "e_color_dialog.h"
 #include "e_sys.h"
diff --git a/src/bin/e_widget_cslider.c b/src/bin/e_widget_cslider.c
deleted file mode 100644
index 0eff975..000
--- a/src/bin/e_widget_cslider.c
+++ /dev/null
@@ -1,641 +0,0 @@
-#include "e.h"
-
-typedef struct _E_Widget_Data E_Widget_Data;
-
-struct _E_Widget_Data
-{
-   Evas_Object  *o_cslider;
-   Evas_Object  *o_grad;
-   Evas_Object  *o_event;
-
-   Evas_Coordx, y, w, h;
-
-   int   vertical;
-   int   fixed;
-   E_Color_Component mode;
-   int   valnum;
-   E_Color  *color;
-   E_Color  *prev;
-
-   int   dragging;
-};
-
-static void _e_wid_del_hook(Evas_Object *obj);
-static void _e_wid_focus_hook(Evas_Object *obj);
-static void _e_wid_disable_hook(Evas_Object *obj);
-static void _e_wid_focus_steal(void *data, Evas *e, Evas_Object *obj, void 
*event_info);
-static void _e_wid_value_set(Evas_Object *obj, double vx);
-static void _e_wid_update(E_Widget_Data *wd);
-static void _e_wid_update_standard(E_Widget_Data *wd);
-static void _e_wid_update_fixed(E_Widget_Data *wd);
-
-static void _e_wid_move(void *data, Evas *e, Evas_Object *obj, void 
*event_info);
-static void _e_wid_resize(void *data, Evas *e, Evas_Object *obj, void 
*event_info);
-static void _e_wid_cb_drag_start(void *data, Evas_Object *obj, const char 
*emission, const char *source);
-static void _e_wid_cb_drag_stop(void *data, Evas_Object *obj, const char 
*emission, const char *source);
-static void _e_wid_cb_drag(void *data, Evas_Object *obj, const char *emission, 
const char *source);
-
-static void _e_wid_cb_down(void *data, Evas *e, Evas_Object *obj, void 
*event_info);
-static void _e_wid_cb_move(void *data, Evas *e, Evas_Object *obj, void 
*event_info);
-static void _e_wid_cb_up(void *data, Evas *e, Evas_Object *obj, void 
*event_info);
-
-Evas_Object *
-e_widget_cslider_add(Evas *evas, E_Color_Component mode, E_Color *color, int 
vertical, int fixed)
-{
-   Evas_Object *obj, *o;
-   E_Widget_Data *wd;
-   Evas_Coord mw, mh;
-
-   obj = e_widget_add(evas);
-
-   e_widget_del_hook_set(obj, _e_wid_del_hook);
-   e_widget_focus_hook_set(obj, _e_wid_focus_hook);
-   e_widget_disable_hook_set(obj, _e_wid_disable_hook);
-   wd = calloc(1, sizeof(E_Widget_Data));
-   e_widget_data_set(obj, wd);
-
-   evas_object_event_callback_add(obj, EVAS_CALLBACK_RESIZE, _e_wid_resize, 
wd);
-
-   wd->vertical = vertical;
-   wd->fixed = fixed;
-   wd->mode = mode;
-   wd->color = color;
-   wd->prev = calloc(1, sizeof (E_Color));
-
-   o = edje_object_add(evas);
-   wd->o_cslider = o;
-   e_theme_edje_object_set(o, "base/theme/widgets",
-   "e/widgets/cslider");
-   if (wd->vertical)
- edje_object_signal_emit(o, "e,state,direction,v", "e");
-   else
- edje_object_signal_emit(o, "e,state,direction,h", "e");
-   evas_object_show(o);
-   edje_object_size_min_calc(o, &mw, &mh);
-   e_widget_size_min_set(obj, mw, mh);
-   evas_object_event_callback_add(o, EVAS_CALLBACK_MOVE, _e_wid_move, wd);
-   evas_object

[EGIT] [core/enlightenment] master 07/09: redo color dialog to use elm colorselector

2015-04-09 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=aeca417ebe0f2d88d9736222490303ec38e238a3

commit aeca417ebe0f2d88d9736222490303ec38e238a3
Author: Mike Blumenkrantz 
Date:   Thu Apr 9 16:34:00 2015 -0400

redo color dialog to use elm colorselector

this is waaay less functional and good-looking, but at least it doesn't
crash
---
 src/bin/e_color_dialog.c | 56 +---
 1 file changed, 43 insertions(+), 13 deletions(-)

diff --git a/src/bin/e_color_dialog.c b/src/bin/e_color_dialog.c
index 0da0a06..25fe253 100644
--- a/src/bin/e_color_dialog.c
+++ b/src/bin/e_color_dialog.c
@@ -4,7 +4,7 @@ static void _e_color_dialog_button1_click(void *data, E_Dialog 
*edia);
 static void _e_color_dialog_button2_click(void *data, E_Dialog *edia);
 static void _e_color_dialog_free(E_Color_Dialog *dia);
 static void _e_color_dialog_dia_del(void *obj);
-static void _e_color_dialog_cb_csel_change(void *data, Evas_Object *obj);
+static void _e_color_dialog_cb_csel_change(void *data, Evas_Object *obj, void 
*ev);
 
 /**
  * Create a color selector dialog.
@@ -17,8 +17,7 @@ E_Color_Dialog *
 e_color_dialog_new(const E_Color *color, Eina_Bool alpha_enabled)
 {
E_Color_Dialog *dia;
-   Evas_Object *o;
-   Evas_Coord mw, mh;
+   Evas_Object *o, *bx, *re, *fr;
 
dia = E_OBJECT_ALLOC(E_Color_Dialog, E_COLOR_DIALOG_TYPE, 
_e_color_dialog_free);
if (!dia) return NULL;
@@ -36,11 +35,33 @@ e_color_dialog_new(const E_Color *color, Eina_Bool 
alpha_enabled)
 
e_color_copy(dia->color, dia->initial);
 
-   o = e_widget_csel_add(evas_object_evas_get(dia->dia->win), dia->color, 
alpha_enabled);
+   bx = elm_box_add(dia->dia->win);
+   E_EXPAND(bx);
+   E_FILL(bx);
+
+   o = elm_colorselector_add(bx);
+   elm_colorselector_mode_set(o, ELM_COLORSELECTOR_COMPONENTS);
+   elm_colorselector_color_set(o, dia->color->r, dia->color->g, dia->color->b, 
dia->color->a);
+   E_EXPAND(o);
+   E_FILL(o);
evas_object_show(o);
-   e_widget_size_min_get(o, &mw, &mh);
-   e_dialog_content_set(dia->dia, o, mw, mh);
-   e_widget_on_change_hook_set(o, _e_color_dialog_cb_csel_change, dia);
+   elm_box_pack_end(bx, o);
+
+   fr = elm_frame_add(bx);
+   E_WEIGHT(fr, EVAS_HINT_EXPAND, 0);
+   E_FILL(fr);
+   elm_object_text_set(fr, _("Color Preview"));
+   evas_object_show(fr);
+   elm_box_pack_end(bx, fr);
+
+   re = evas_object_rectangle_add(evas_object_evas_get(dia->dia->win));
+   evas_object_data_set(o, "rect", re);
+   evas_object_size_hint_min_set(re, 1, ELM_SCALE_SIZE(100));
+   evas_object_show(re);
+   elm_object_content_set(fr, re);
+
+   evas_object_smart_callback_add(o, "changed", 
_e_color_dialog_cb_csel_change, dia);
+   e_dialog_content_set(dia->dia, bx, 250, -1);
 
/* buttons at the bottom */
e_dialog_button_add(dia->dia, _("Select"), NULL, 
_e_color_dialog_button1_click, dia);
@@ -58,6 +79,7 @@ e_color_dialog_show(E_Color_Dialog *dia)
 {
e_dialog_show(dia->dia);
e_dialog_border_icon_set(dia->dia, "enlightenment/colors");
+   evas_object_size_hint_min_set(dia->dia->win, 250, -1);
 }
 
 void
@@ -88,11 +110,19 @@ e_color_dialog_change_callback_set(E_Color_Dialog *dia, 
void (*func)(E_Color_Dia
 }
 
 static void
-_e_color_dialog_cb_csel_change(void *data, Evas_Object *obj EINA_UNUSED)
+_e_color_dialog_cb_csel_change(void *data, Evas_Object *obj, void *ev 
EINA_UNUSED)
 {
-   E_Color_Dialog *dia;
-
-   dia = data;
+   E_Color_Dialog *dia = data;
+   Evas_Object *re;
+   int r, g, b;
+
+   elm_colorselector_color_get(obj, &dia->color->r, &dia->color->g, 
&dia->color->b, &dia->color->a);
+   r = dia->color->r;
+   g = dia->color->g;
+   b = dia->color->b;
+   re = evas_object_data_get(obj, "rect");
+   evas_color_argb_premul(dia->color->a, &r, &g, &b);
+   evas_object_color_set(re, r, g, b, dia->color->a);
if (dia->change_func && dia->color)
  dia->change_func(dia, dia->color, dia->change_data);
 }
@@ -103,7 +133,7 @@ _e_color_dialog_button1_click(void *data, E_Dialog *edia 
EINA_UNUSED)
E_Color_Dialog *dia;
 
dia = data;
-   if (dia->select_func && dia->color)
+   if (dia->select_func)
  dia->select_func(dia, dia->color, dia->select_data);
_e_color_dialog_free(dia);
 }
@@ -114,7 +144,7 @@ _e_color_dialog_button2_click(void *data, E_Dialog *edia 
EINA_UNUSED)
E_Color_Dialog *dia;
 
dia = data;
-   if (dia->cancel_func && dia->initial)
+   if (dia->cancel_func)
  dia->cancel_func(dia, dia->initial, dia->cancel_data);
_e_color_dialog_free(data);
 }

-- 




[EGIT] [core/enlightenment] master 04/09: force dialogs to recalc content sizes before setting min size

2015-04-09 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=01d27333b0e1169b2fbcde4cc530fdf96e552344

commit 01d27333b0e1169b2fbcde4cc530fdf96e552344
Author: Mike Blumenkrantz 
Date:   Thu Apr 9 16:16:33 2015 -0400

force dialogs to recalc content sizes before setting min size
---
 src/bin/e_dialog.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/bin/e_dialog.c b/src/bin/e_dialog.c
index 8c1de98..827c8b0 100644
--- a/src/bin/e_dialog.c
+++ b/src/bin/e_dialog.c
@@ -206,6 +206,8 @@ e_dialog_content_set(E_Dialog *dia, Evas_Object *obj, 
Evas_Coord minw, Evas_Coor
e_widget_on_focus_hook_set(obj, _e_dialog_cb_wid_on_focus, dia);
evas_object_size_hint_min_set(obj, minw, minh);
elm_object_part_content_set(dia->bg_object, "e.swallow.content", obj);
+   elm_layout_sizing_eval(dia->bg_object);
+   evas_object_smart_calculate(dia->bg_object);
evas_object_size_hint_min_get(dia->bg_object, &mw, &mh);
evas_object_resize(dia->win, mw, mh);
dia->min_w = mw;

-- 




[EGIT] [core/enlightenment] enlightenment-0.19 01/03: remove layer setting from deskmirror

2015-04-09 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.19.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=66da90fa0f946c30d71d300c59c33b7e3da3748e

commit 66da90fa0f946c30d71d300c59c33b7e3da3748e
Author: Mike Blumenkrantz 
Date:   Thu Apr 9 14:07:18 2015 -0400

remove layer setting from deskmirror

smart child objects can't have layers. apparently.
---
 src/bin/e_deskmirror.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/src/bin/e_deskmirror.c b/src/bin/e_deskmirror.c
index 4804120..eb89af4 100644
--- a/src/bin/e_deskmirror.c
+++ b/src/bin/e_deskmirror.c
@@ -513,7 +513,6 @@ _comp_object_check(Mirror *m)
if ((w < 2) || (h < 2)) return EINA_FALSE;
m->mirror = e_comp_object_util_mirror_add(m->comp_object);
evas_object_name_set(m->mirror, "m->mirror");
-   if (m->mirror) evas_object_layer_set(m->mirror, 
evas_object_layer_get(m->comp_object));
_e_deskmirror_mirror_setup(m);
return EINA_TRUE;
 }
@@ -615,7 +614,6 @@ _e_deskmirror_mirror_add(E_Smart_Data *sd, Evas_Object *obj)
m->ec = ec;
m->sd = sd;
m->mirror = o;
-   if (o) evas_object_layer_set(o, evas_object_layer_get(obj));
evas_object_event_callback_add(obj, EVAS_CALLBACK_SHOW, 
(Evas_Object_Event_Cb)_comp_object_show, m);
evas_object_event_callback_add(obj, EVAS_CALLBACK_HIDE, 
(Evas_Object_Event_Cb)_comp_object_hide, m);
evas_object_event_callback_add(obj, EVAS_CALLBACK_RESTACK, 
(Evas_Object_Event_Cb)_comp_object_stack, m);

-- 




[EGIT] [core/enlightenment] master 01/03: remove layer setting from deskmirror

2015-04-09 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=59b49538b1c9ec7075b09fbff66ce50818833376

commit 59b49538b1c9ec7075b09fbff66ce50818833376
Author: Mike Blumenkrantz 
Date:   Thu Apr 9 14:07:18 2015 -0400

remove layer setting from deskmirror

smart child objects can't have layers. apparently.
---
 src/bin/e_deskmirror.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/src/bin/e_deskmirror.c b/src/bin/e_deskmirror.c
index 5a326a5..034592d 100644
--- a/src/bin/e_deskmirror.c
+++ b/src/bin/e_deskmirror.c
@@ -513,7 +513,6 @@ _comp_object_check(Mirror *m)
if ((w < 2) || (h < 2)) return EINA_FALSE;
m->mirror = e_comp_object_util_mirror_add(m->comp_object);
evas_object_name_set(m->mirror, "m->mirror");
-   if (m->mirror) evas_object_layer_set(m->mirror, 
evas_object_layer_get(m->comp_object));
_e_deskmirror_mirror_setup(m);
return EINA_TRUE;
 }
@@ -615,7 +614,6 @@ _e_deskmirror_mirror_add(E_Smart_Data *sd, Evas_Object *obj)
m->ec = ec;
m->sd = sd;
m->mirror = o;
-   if (o) evas_object_layer_set(o, evas_object_layer_get(obj));
evas_object_event_callback_add(obj, EVAS_CALLBACK_SHOW, 
(Evas_Object_Event_Cb)_comp_object_show, m);
evas_object_event_callback_add(obj, EVAS_CALLBACK_HIDE, 
(Evas_Object_Event_Cb)_comp_object_hide, m);
evas_object_event_callback_add(obj, EVAS_CALLBACK_RESTACK, 
(Evas_Object_Event_Cb)_comp_object_stack, m);

-- 




[EGIT] [core/enlightenment] master 02/03: always lower e_layout children upon packing

2015-04-09 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=a3c6b7ada48cdae0c8d8b789078f7889461c790e

commit a3c6b7ada48cdae0c8d8b789078f7889461c790e
Author: Mike Blumenkrantz 
Date:   Thu Apr 9 14:07:37 2015 -0400

always lower e_layout children upon packing

fixes issues where a new child added would appear above other child objects
if the new child was meant to be stacked below other children

mostly noticeable in deskmirror
---
 src/bin/e_layout.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/bin/e_layout.c b/src/bin/e_layout.c
index 7820a96..51e7119 100644
--- a/src/bin/e_layout.c
+++ b/src/bin/e_layout.c
@@ -138,6 +138,7 @@ e_layout_pack(Evas_Object *obj, Evas_Object *child)
sd = evas_object_smart_data_get(obj);
li = _e_layout_smart_adopt(sd, child);
sd->items = eina_inlist_append(sd->items, EINA_INLIST_GET(li));
+   evas_object_lower(child);
if (sd->frozen <= 0) _e_layout_smart_move_resize_item(li);
 }
 

-- 




[EGIT] [core/enlightenment] master 03/03: raise deskmirror windows on startup

2015-04-09 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=57ade8c5aeb30a404edaaeb597c5f6e92504f56b

commit 57ade8c5aeb30a404edaaeb597c5f6e92504f56b
Author: Mike Blumenkrantz 
Date:   Thu Apr 9 14:16:22 2015 -0400

raise deskmirror windows on startup

these get added bottom -> top on creation, so ensure that they are raised
---
 src/bin/e_deskmirror.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/bin/e_deskmirror.c b/src/bin/e_deskmirror.c
index 034592d..72a2e20 100644
--- a/src/bin/e_deskmirror.c
+++ b/src/bin/e_deskmirror.c
@@ -501,6 +501,8 @@ _e_deskmirror_mirror_setup(Mirror *m)
 if (!m->added)
   evas_object_smart_callback_call(m->sd->obj, "mirror_add", m->mirror);
  }
+   else
+ e_layout_child_raise(m->mirror);
m->added = 1;
 }
 

-- 




[EGIT] [core/efl] master 01/01: emile: Fix eina examples compilation when using a different build directory

2015-04-09 Thread Felipe Magno de Almeida
felipealmeida pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=a1067ae177226688a7f36acbd0c69ea544ed769d

commit a1067ae177226688a7f36acbd0c69ea544ed769d
Author: Felipe Magno de Almeida 
Date:   Thu Apr 9 17:25:20 2015 -0300

emile: Fix eina examples compilation when using a different build directory

The Makefile.am added only include dirs for top_builddir. Added for 
top_srcdir as well so it can find the headers.
---
 src/examples/eina/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/examples/eina/Makefile.am b/src/examples/eina/Makefile.am
index c2d87f0..92819c7 100644
--- a/src/examples/eina/Makefile.am
+++ b/src/examples/eina/Makefile.am
@@ -120,6 +120,7 @@ eina_tiler_01_CPPFLAGS = \
 -I$(top_srcdir)/src/lib/eina \
 -I$(top_srcdir)/src/lib/eo \
 -I$(top_srcdir)/src/lib/evas \
+-I$(top_srcdir)/src/lib/emile \
 -I$(top_srcdir)/src/lib/ecore \
 -I$(top_srcdir)/src/lib/ecore_input \
 -I$(top_srcdir)/src/lib/ecore_evas \

-- 




[EGIT] [core/efl] master 03/04: ecore-drm: Remove debug line from launcher

2015-04-09 Thread Christopher Michael
stefan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=12dc91590d4df5adf7c56bab637bc84b4ec165cf

commit 12dc91590d4df5adf7c56bab637bc84b4ec165cf
Author: Chris Michael 
Date:   Tue Apr 7 12:31:25 2015 -0400

ecore-drm: Remove debug line from launcher

Signed-off-by: Chris Michael 
---
 src/lib/ecore_drm/ecore_drm_launcher.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/src/lib/ecore_drm/ecore_drm_launcher.c 
b/src/lib/ecore_drm/ecore_drm_launcher.c
index 860cc84..8166fe4 100644
--- a/src/lib/ecore_drm/ecore_drm_launcher.c
+++ b/src/lib/ecore_drm/ecore_drm_launcher.c
@@ -155,7 +155,6 @@ _ecore_drm_launcher_device_open_no_pending(const char 
*device, int flags)
   }
  }
 
-   DBG("Device opened %s", device);
return fd;
 }
 

-- 




[EGIT] [core/efl] master 02/04: ecore-drm: Set mode flag for preferred if this is the preferred mode

2015-04-09 Thread Christopher Michael
stefan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=c5d46c88ec06b3e3c6a2c8f0b41a724c1428925e

commit c5d46c88ec06b3e3c6a2c8f0b41a724c1428925e
Author: Chris Michael 
Date:   Tue Apr 7 12:26:19 2015 -0400

ecore-drm: Set mode flag for preferred if this is the preferred mode

Summary: This fixes a minor oversight in ecore_drm_output_mode_add
which was not setting the mode->flag to preferred if this is a
preferred mode.

@fix

Signed-off-by: Chris Michael 
---
 src/lib/ecore_drm/ecore_drm_output.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib/ecore_drm/ecore_drm_output.c 
b/src/lib/ecore_drm/ecore_drm_output.c
index 4fe6c7d..ab7ee31 100644
--- a/src/lib/ecore_drm/ecore_drm_output.c
+++ b/src/lib/ecore_drm/ecore_drm_output.c
@@ -239,8 +239,8 @@ _ecore_drm_output_mode_add(Ecore_Drm_Output *output, 
drmModeModeInfo *info)
mode->refresh = refresh;
mode->info = *info;
 
-   /* DBG("Added Mode: %dx%d@%d to Output %d",  */
-   /* mode->width, mode->height, mode->refresh, output->crtc_id); */
+   if (info->type & DRM_MODE_TYPE_PREFERRED)
+ mode->flags |= DRM_MODE_TYPE_PREFERRED;
 
output->modes = eina_list_append(output->modes, mode);
 

-- 




[EGIT] [core/efl] master 04/04: ecore-drm: Fix output_geometry_get function

2015-04-09 Thread Christopher Michael
stefan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=dcda62c04eb40cc1af732ace995299c0c72d19d7

commit dcda62c04eb40cc1af732ace995299c0c72d19d7
Author: Chris Michael 
Date:   Tue Apr 7 12:32:15 2015 -0400

ecore-drm: Fix output_geometry_get function

Summary: This fixes an issue where heights of all outputs would get
added, thus causing the ecore_evas to be created at the wrong size.
Now, the height will be whichever output is larger.

@fix

Signed-off-by: Chris Michael 
---
 src/lib/ecore_drm/ecore_drm_output.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/ecore_drm/ecore_drm_output.c 
b/src/lib/ecore_drm/ecore_drm_output.c
index ab7ee31..36c4f09 100644
--- a/src/lib/ecore_drm/ecore_drm_output.c
+++ b/src/lib/ecore_drm/ecore_drm_output.c
@@ -1015,7 +1015,7 @@ ecore_drm_outputs_geometry_get(Ecore_Drm_Device *dev, int 
*x, int *y, int *w, in
 ox += output->x;
 oy += output->y;
 ow += MAX(ow, output->current_mode->width);
-oh += MAX(oh, output->current_mode->height);
+oh = MAX(oh, output->current_mode->height);
  }
 
if (x) *x = ox;

-- 




[EGIT] [core/efl] master 01/04: ecore-drm: Send ECORE_DRM_EVENT_OUTPUT on unplug also

2015-04-09 Thread Christopher Michael
stefan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=92e10af291963bd89e682782c38bf4a4cd3b5bca

commit 92e10af291963bd89e682782c38bf4a4cd3b5bca
Author: Chris Michael 
Date:   Tue Apr 7 11:50:35 2015 -0400

ecore-drm: Send ECORE_DRM_EVENT_OUTPUT on unplug also

Summary: If we unplug an output, we should still be sending this event
so that the compositor can remove any unplugged outputs

@fix

Signed-off-by: Chris Michael 
---
 src/lib/ecore_drm/ecore_drm_output.c | 27 ---
 1 file changed, 12 insertions(+), 15 deletions(-)

diff --git a/src/lib/ecore_drm/ecore_drm_output.c 
b/src/lib/ecore_drm/ecore_drm_output.c
index 85aee4d..4fe6c7d 100644
--- a/src/lib/ecore_drm/ecore_drm_output.c
+++ b/src/lib/ecore_drm/ecore_drm_output.c
@@ -696,21 +696,18 @@ _ecore_drm_event_output_send(const Ecore_Drm_Output 
*output, Eina_Bool plug)
 
if (!(e = calloc(1, sizeof(Ecore_Drm_Event_Output return;
e->plug = plug;
-   if (plug)
- {
-e->id = output->crtc_id;
-e->w = output->current_mode->width;
-e->h = output->current_mode->height;
-e->x = output->x;
-e->y = output->y;
-e->phys_width = output->phys_width;
-e->phys_height = output->phys_height;
-e->refresh = output->current_mode->refresh;
-e->subpixel_order = output->subpixel;
-e->make = eina_stringshare_ref(output->make);
-e->model = eina_stringshare_ref(output->model);
-e->transform = 0;
- }
+   e->id = output->crtc_id;
+   e->w = output->current_mode->width;
+   e->h = output->current_mode->height;
+   e->x = output->x;
+   e->y = output->y;
+   e->phys_width = output->phys_width;
+   e->phys_height = output->phys_height;
+   e->refresh = output->current_mode->refresh;
+   e->subpixel_order = output->subpixel;
+   e->make = eina_stringshare_ref(output->make);
+   e->model = eina_stringshare_ref(output->model);
+   e->transform = 0;
ecore_event_add(ECORE_DRM_EVENT_OUTPUT, e,
_ecore_drm_event_output_free, NULL);
 }

-- 




[EGIT] [core/enlightenment] master 01/01: match client dialogs to client's layer

2015-04-09 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=276706ab9d5b9a50ce5af2f5eef89be1aab93a39

commit 276706ab9d5b9a50ce5af2f5eef89be1aab93a39
Author: Mike Blumenkrantz 
Date:   Thu Apr 9 14:40:41 2015 -0400

match client dialogs to client's layer

a small annoyance for literally over a decade has been that window
dialogs would sometimes start behind their owners. now they don't.
---
 src/bin/e_int_client_locks.c  | 1 +
 src/bin/e_int_client_prop.c   | 1 +
 src/bin/e_int_client_remember.c   | 1 +
 src/modules/conf_theme/e_int_config_borders.c | 1 +
 src/modules/shot/e_mod_main.c | 1 +
 5 files changed, 5 insertions(+)

diff --git a/src/bin/e_int_client_locks.c b/src/bin/e_int_client_locks.c
index 42ae508..8768655 100644
--- a/src/bin/e_int_client_locks.c
+++ b/src/bin/e_int_client_locks.c
@@ -67,6 +67,7 @@ e_int_client_locks(E_Client *ec)
   "E", "_border_locks_dialog",
   NULL, 0, v, ec);
 ec->border_locks_dialog = cfd;
+evas_object_layer_set(e_win_client_get(cfd->dia->win)->frame, 
ec->layer);
  }
 }
 
diff --git a/src/bin/e_int_client_prop.c b/src/bin/e_int_client_prop.c
index 0905748..8e0f0d5 100644
--- a/src/bin/e_int_client_prop.c
+++ b/src/bin/e_int_client_prop.c
@@ -82,6 +82,7 @@ e_int_client_prop(E_Client *ec)
elm_win_center(dia->win, 1, 1);
e_dialog_show(dia);
e_dialog_border_icon_set(dia, "preferences-system-windows");
+   evas_object_layer_set(e_win_client_get(dia->win)->frame, ec->layer);
 }
 
 static void
diff --git a/src/bin/e_int_client_remember.c b/src/bin/e_int_client_remember.c
index 87dced4..c34cc43 100644
--- a/src/bin/e_int_client_remember.c
+++ b/src/bin/e_int_client_remember.c
@@ -111,6 +111,7 @@ e_int_client_remember(E_Client *ec)
   "E", "_border_remember_dialog",
   NULL, 0, v, ec);
 ec->border_remember_dialog = cfd;
+evas_object_layer_set(e_win_client_get(cfd->dia->win)->frame, 
ec->layer);
  }
 }
 
diff --git a/src/modules/conf_theme/e_int_config_borders.c 
b/src/modules/conf_theme/e_int_config_borders.c
index 59f5836..173572f 100644
--- a/src/modules/conf_theme/e_int_config_borders.c
+++ b/src/modules/conf_theme/e_int_config_borders.c
@@ -50,6 +50,7 @@ e_int_config_borders_border(E_Comp *comp EINA_UNUSED, const 
char *params)
  "E", "_config_border_border_style_dialog",
  "preferences-system-windows", 0, v, ec);
ec->border_border_dialog = cfd;
+   evas_object_layer_set(e_win_client_get(cfd->dia->win)->frame, ec->layer);
return cfd;
 }
 
diff --git a/src/modules/shot/e_mod_main.c b/src/modules/shot/e_mod_main.c
index 90ea95e..08896e5 100644
--- a/src/modules/shot/e_mod_main.c
+++ b/src/modules/shot/e_mod_main.c
@@ -867,6 +867,7 @@ _shot_now(E_Zone *zone, E_Client *ec, const char *params)
 e_win_client_icon_set(win, "screenshot");
 
 if (!e_widget_focus_get(o_bg)) e_widget_focus_set(o_box, 1);
+evas_object_layer_set(e_win_client_get(win)->frame, ec->layer);
  }
 }
 

-- 




[EGIT] [core/enlightenment] master 01/01: Mixer Pulse: Fix trivial use-after-free.

2015-04-09 Thread Conrad Meyer
tasn pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=d96517fce38e1570056fafdf1b3335c1ac85f7c6

commit d96517fce38e1570056fafdf1b3335c1ac85f7c6
Author: Conrad Meyer 
Date:   Thu Apr 9 10:36:38 2015 +0100

Mixer Pulse: Fix trivial use-after-free.

Summary: Don't use memory after freeing it.

Fixes T2274

@fix

Reviewers: raster, zmike

Subscribers: abyomi0, zmike

Projects: #enlightenment-git

Maniphest Tasks: T2274

Differential Revision: https://phab.enlightenment.org/D2301

Commit message updates by: Tom Hacohen
---
 src/modules/mixer/pa.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/modules/mixer/pa.c b/src/modules/mixer/pa.c
index bc6edd5..03ec610 100644
--- a/src/modules/mixer/pa.c
+++ b/src/modules/mixer/pa.c
@@ -741,8 +741,8 @@ pulse_new(void)
buf = eina_stringshare_add(STATEDIR 
"/run/pulse/native");
if (stat(buf, &st))
  {
-eina_stringshare_del(buf);
 INF("could not locate local socket '%s'!", buf);
+eina_stringshare_del(buf);
 free(conn);
 return NULL;
  }

-- 




[EGIT] [core/enlightenment] master 03/09: fix entry sizing in file props dialog

2015-04-09 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=5b2ab97ffc9b359b34583cd89aa1d7b8a517a328

commit 5b2ab97ffc9b359b34583cd89aa1d7b8a517a328
Author: Mike Blumenkrantz 
Date:   Thu Apr 9 15:19:10 2015 -0400

fix entry sizing in file props dialog

ref T2271
---
 src/bin/e_fm_prop.c | 25 +
 1 file changed, 17 insertions(+), 8 deletions(-)

diff --git a/src/bin/e_fm_prop.c b/src/bin/e_fm_prop.c
index c71c21c..0c74d6e 100644
--- a/src/bin/e_fm_prop.c
+++ b/src/bin/e_fm_prop.c
@@ -380,6 +380,7 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, 
E_Config_Dialog_Data *cf
E_Radio_Group *rg;
char buf[PATH_MAX];
const char *itype = NULL;
+   int mh;
 
win = cfd->dia->win;
snprintf(buf, sizeof(buf), "%s/%s",
@@ -391,56 +392,64 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, 
E_Config_Dialog_Data *cf
ob = e_widget_label_add(evas, _("Name:"));
e_widget_table_object_append(ot, ob, 0, 0, 1, 1, 1, 0, 1, 0);
ob = e_widget_entry_add(win, &(cfdata->file), NULL, NULL, NULL);
-   e_widget_size_min_set(ob, 140, -1);
+   e_widget_size_min_get(ob, NULL, &mh);
+   e_widget_size_min_set(ob, 140, mh);
e_widget_entry_readonly_set(ob, 1);
e_widget_table_object_append(ot, ob, 1, 0, 1, 1, 1, 0, 1, 0);
 
ob = e_widget_label_add(evas, _("Location:"));
e_widget_table_object_append(ot, ob, 0, 1, 1, 1, 1, 0, 1, 0);
ob = e_widget_entry_add(win, &(cfdata->location), NULL, NULL, NULL);
-   e_widget_size_min_set(ob, 140, -1);
+   e_widget_size_min_get(ob, NULL, &mh);
+   e_widget_size_min_set(ob, 140, mh);
e_widget_entry_readonly_set(ob, 1);
e_widget_table_object_append(ot, ob, 1, 1, 1, 1, 1, 0, 1, 0);
 
ob = e_widget_label_add(evas, _("Size:"));
e_widget_table_object_append(ot, ob, 0, 2, 1, 1, 1, 0, 1, 0);
ob = e_widget_entry_add(win, &(cfdata->size), NULL, NULL, NULL);
-   e_widget_size_min_set(ob, 140, -1);
+   e_widget_size_min_get(ob, NULL, &mh);
+   e_widget_size_min_set(ob, 140, mh);
e_widget_entry_readonly_set(ob, 1);
e_widget_table_object_append(ot, ob, 1, 2, 1, 1, 1, 0, 1, 0);
 
ob = e_widget_label_add(evas, _("Occupied blocks on disk:"));
e_widget_table_object_append(ot, ob, 0, 3, 1, 1, 1, 0, 1, 0);
ob = e_widget_entry_add(win, &(cfdata->blocks), NULL, NULL, NULL);
-   e_widget_size_min_set(ob, 140, -1);
+   e_widget_size_min_get(ob, NULL, &mh);
+   e_widget_size_min_set(ob, 140, mh);
e_widget_entry_readonly_set(ob, 1);
e_widget_table_object_append(ot, ob, 1, 3, 1, 1, 1, 0, 1, 0);
 
ob = e_widget_label_add(evas, _("Last Accessed:"));
e_widget_table_object_append(ot, ob, 0, 4, 1, 1, 1, 0, 1, 0);
ob = e_widget_entry_add(win, &(cfdata->acc_date), NULL, NULL, NULL);
-   e_widget_size_min_set(ob, 140, -1);
+   e_widget_size_min_get(ob, NULL, &mh);
+   e_widget_size_min_set(ob, 140, mh);
e_widget_entry_readonly_set(ob, 1);
e_widget_table_object_append(ot, ob, 1, 4, 1, 1, 1, 0, 1, 0);
 
ob = e_widget_label_add(evas, _("Last Modified:"));
e_widget_table_object_append(ot, ob, 0, 5, 1, 1, 1, 0, 1, 0);
ob = e_widget_entry_add(win, &(cfdata->mod_date), NULL, NULL, NULL);
-   e_widget_size_min_set(ob, 140, -1);
+   e_widget_size_min_get(ob, NULL, &mh);
+   e_widget_size_min_set(ob, 140, mh);
e_widget_entry_readonly_set(ob, 1);
e_widget_table_object_append(ot, ob, 1, 5, 1, 1, 1, 0, 1, 0);
 
ob = e_widget_label_add(evas, _("Last Modified Permissions:"));
e_widget_table_object_append(ot, ob, 0, 6, 1, 1, 1, 0, 1, 0);
ob = e_widget_entry_add(win, &(cfdata->pms_date), NULL, NULL, NULL);
-   e_widget_size_min_set(ob, 140, -1);
+   e_widget_size_min_get(ob, NULL, &mh);
+   e_widget_size_min_set(ob, 140, mh);
e_widget_entry_readonly_set(ob, 1);
e_widget_table_object_append(ot, ob, 1, 6, 1, 1, 1, 0, 1, 0);
 
ob = e_widget_label_add(evas, _("File Type:"));
e_widget_table_object_append(ot, ob, 0, 7, 1, 1, 1, 0, 1, 0);
ob = e_widget_entry_add(win, &(cfdata->mime), NULL, NULL, NULL);
-   e_widget_size_min_set(ob, 140, -1);
+   e_widget_size_min_get(ob, NULL, &mh);
+   e_widget_size_min_set(ob, 140, mh);
e_widget_entry_readonly_set(ob, 1);
e_widget_table_object_append(ot, ob, 1, 7, 1, 1, 1, 0, 1, 0);
 

-- 




[EGIT] [core/efl] master 05/10: ecore-drm: Move Eeze Udev Watch to Drm Device

2015-04-09 Thread Christopher Michael
stefan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=c7ced198e623dff7690b857e9702267b71633605

commit c7ced198e623dff7690b857e9702267b71633605
Author: Chris Michael 
Date:   Tue Apr 7 11:08:19 2015 -0400

ecore-drm: Move Eeze Udev Watch to Drm Device

Summary: Move the Eeze udev watch to inside the ecore_drm_device. This
allows us to only create One watch to catch all output changes. No
need for more than one watch (one per output) as was done previously

@fix

Signed-off-by: Chris Michael 
---
 src/lib/ecore_drm/Ecore_Drm.h |  3 ++
 src/lib/ecore_drm/ecore_drm_device.c  | 20 +++
 src/lib/ecore_drm/ecore_drm_output.c  | 66 ---
 src/lib/ecore_drm/ecore_drm_private.h |  3 +-
 4 files changed, 39 insertions(+), 53 deletions(-)

diff --git a/src/lib/ecore_drm/Ecore_Drm.h b/src/lib/ecore_drm/Ecore_Drm.h
index 5c4dd8b..e5357d5 100644
--- a/src/lib/ecore_drm/Ecore_Drm.h
+++ b/src/lib/ecore_drm/Ecore_Drm.h
@@ -24,6 +24,7 @@
 #endif // ifdef _MSC_VER
 
 #include 
+#include 
 
 typedef enum _Ecore_Drm_Evdev_Capabilities
 {
@@ -110,6 +111,8 @@ struct _Ecore_Drm_Device
struct xkb_context *xkb_ctx;
 
unsigned int window;
+
+   Eeze_Udev_Watch *watch;
 };
 
 struct _Ecore_Drm_Event_Activate
diff --git a/src/lib/ecore_drm/ecore_drm_device.c 
b/src/lib/ecore_drm/ecore_drm_device.c
index 917a02b..69a8e1c 100644
--- a/src/lib/ecore_drm/ecore_drm_device.c
+++ b/src/lib/ecore_drm/ecore_drm_device.c
@@ -87,6 +87,15 @@ _ecore_drm_device_cb_idle(void *data)
return ECORE_CALLBACK_RENEW;
 }
 
+static void
+_ecore_drm_device_cb_output_event(const char *device EINA_UNUSED, 
Eeze_Udev_Event event EINA_UNUSED, void *data, Eeze_Udev_Watch *watch 
EINA_UNUSED)
+{
+   Ecore_Drm_Device *dev;
+
+   if (!(dev = data)) return;
+   _ecore_drm_outputs_update(dev);
+}
+
 /**
  * @defgroup Ecore_Drm_Device_Group Device manipulation functions
  * 
@@ -261,6 +270,7 @@ EAPI Eina_Bool
 ecore_drm_device_open(Ecore_Drm_Device *dev)
 {
uint64_t caps;
+   int events = 0;
 
/* check for valid device */
if ((!dev) || (!dev->drm.name)) return EINA_FALSE;
@@ -299,6 +309,13 @@ ecore_drm_device_open(Ecore_Drm_Device *dev)
 return EINA_FALSE;
  }
 
+   events = (EEZE_UDEV_EVENT_ADD | EEZE_UDEV_EVENT_REMOVE |
+ EEZE_UDEV_EVENT_CHANGE);
+
+   dev->watch =
+ eeze_udev_watch_add(EEZE_UDEV_TYPE_DRM, events,
+ _ecore_drm_device_cb_output_event, NULL);
+
dev->drm.hdlr = 
  ecore_main_fd_handler_add(dev->drm.fd, ECORE_FD_READ, 
_ecore_drm_device_cb_event, dev, NULL, NULL);
@@ -326,6 +343,9 @@ ecore_drm_device_close(Ecore_Drm_Device *dev)
/* check for valid device */
if (!dev) return EINA_FALSE;
 
+   /* delete udev watch */
+   if (dev->watch) eeze_udev_watch_del(dev->watch);
+
/* close xkb context */
if (dev->xkb_ctx) xkb_context_unref(dev->xkb_ctx);
 
diff --git a/src/lib/ecore_drm/ecore_drm_output.c 
b/src/lib/ecore_drm/ecore_drm_output.c
index fc2cd5e..dc87374 100644
--- a/src/lib/ecore_drm/ecore_drm_output.c
+++ b/src/lib/ecore_drm/ecore_drm_output.c
@@ -24,9 +24,6 @@ static const char *conn_types[] =
 
 EAPI int ECORE_DRM_EVENT_OUTPUT = 0;
 
-/* local functions */
-static void _ecore_drm_output_event(const char *device, Eeze_Udev_Event event 
EINA_UNUSED, void *data, Eeze_Udev_Watch *watch EINA_UNUSED);
-
 static void 
 _ecore_drm_output_edid_parse_string(const uint8_t *data, char text[])
 {
@@ -517,9 +514,6 @@ _ecore_drm_output_free(Ecore_Drm_Output *output)
/* check for valid output */
if (!output) return;
 
-   /* delete any added udev watch */
-   if (output->watch) eeze_udev_watch_del(output->watch);
-
/* delete the backlight struct */
if (output->backlight) 
  _ecore_drm_output_backlight_shutdown(output->backlight);
@@ -596,19 +590,18 @@ finish:
_ecore_drm_output_frame_finish(output);
 }
 
-static void
-_ecore_drm_update_outputs(Ecore_Drm_Output *output)
+void
+_ecore_drm_outputs_update(Ecore_Drm_Device *dev)
 {
Ecore_Drm_Output *new_output;
drmModeConnector *connector;
drmModeRes *res;
drmModeCrtc *crtc;
-   int x = 0, y = 0;
+   int x = 0, y = 0, i;
uint32_t connected = 0, disconnects = 0;
-   int i;
Eina_List *l;
 
-   res = drmModeGetResources(output->drm_fd);
+   res = drmModeGetResources(dev->drm.fd);
if (!res)
  {
 ERR("Could not get resources for drm card: %m");
@@ -619,7 +612,7 @@ _ecore_drm_update_outputs(Ecore_Drm_Output *output)
  {
 int connector_id = res->connectors[i];
 
-connector = drmModeGetConnector(output->drm_fd, connector_id);
+connector = drmModeGetConnector(dev->drm.fd, connector_id);
 if (connector == NULL)
   continue;
 
@@ -631,28 +624,27 @@ _ecore_drm_update_outputs(Ecore_Drm_Output *output)
 
 connected |= (1 << connector_id);
 
-if (!(output->dev->conn

[EGIT] [core/efl] master 08/10: ecore-drm: Fix issue with edid_parse_string truncating strings

2015-04-09 Thread Christopher Michael
stefan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=40945aa10c9fb276be711972784757c3c798f545

commit 40945aa10c9fb276be711972784757c3c798f545
Author: Chris Michael 
Date:   Tue Apr 7 11:22:54 2015 -0400

ecore-drm: Fix issue with edid_parse_string truncating strings

Summary: We should only truncate the string if it's greater than 4

@fix

Signed-off-by: Chris Michael 
---
 src/lib/ecore_drm/ecore_drm_output.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/ecore_drm/ecore_drm_output.c 
b/src/lib/ecore_drm/ecore_drm_output.c
index 77fd734..e118ca8 100644
--- a/src/lib/ecore_drm/ecore_drm_output.c
+++ b/src/lib/ecore_drm/ecore_drm_output.c
@@ -50,7 +50,7 @@ _ecore_drm_output_edid_parse_string(const uint8_t *data, char 
text[])
   }
  }
 
-   if (rep > 0) text[i] = '\0';
+   if (rep > 4) text[i] = '\0';
 }
 
 static int 

-- 




[EGIT] [core/efl] master 10/10: ecore-drm: Better output name format

2015-04-09 Thread Christopher Michael
stefan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=9d0892b4f7bb4dfa24f9dd1b209951ea074d3c90

commit 9d0892b4f7bb4dfa24f9dd1b209951ea074d3c90
Author: Chris Michael 
Date:   Tue Apr 7 11:26:06 2015 -0400

ecore-drm: Better output name format

Summary: Make output names match format reported from kernel

@fix

Signed-off-by: Chris Michael 
---
 src/lib/ecore_drm/ecore_drm_output.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/ecore_drm/ecore_drm_output.c 
b/src/lib/ecore_drm/ecore_drm_output.c
index 4c8fd4e..85aee4d 100644
--- a/src/lib/ecore_drm/ecore_drm_output.c
+++ b/src/lib/ecore_drm/ecore_drm_output.c
@@ -422,7 +422,7 @@ _ecore_drm_output_create(Ecore_Drm_Device *dev, drmModeRes 
*res, drmModeConnecto
else
  conn_name = "UNKNOWN";
 
-   snprintf(name, sizeof(name), "%s%d", conn_name, conn->connector_type_id);
+   snprintf(name, sizeof(name), "%s-%d", conn_name, conn->connector_type_id);
output->name = eina_stringshare_add(name);
 
output->crtc_id = res->crtcs[i];

-- 




[EGIT] [core/efl] master 07/10: ecore-drm: Add more connector types

2015-04-09 Thread Christopher Michael
stefan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=ec12d250574b52a6aeff67ffde17f1137f32c0a4

commit ec12d250574b52a6aeff67ffde17f1137f32c0a4
Author: Chris Michael 
Date:   Tue Apr 7 11:22:12 2015 -0400

ecore-drm: Add more connector types

Summary: libdrm has support for Virtual and DSI connector types, so
add those to the connector types

@fix

Signed-off-by: Chris Michael 
---
 src/lib/ecore_drm/ecore_drm_output.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/lib/ecore_drm/ecore_drm_output.c 
b/src/lib/ecore_drm/ecore_drm_output.c
index dc87374..77fd734 100644
--- a/src/lib/ecore_drm/ecore_drm_output.c
+++ b/src/lib/ecore_drm/ecore_drm_output.c
@@ -19,7 +19,8 @@ static const char *conn_types[] =
 {
"None", "VGA", "DVI-I", "DVI-D", "DVI-A",
"Composite", "S-Video", "LVDS", "Component", "DIN",
-   "DP", "HDMI-A", "HDMI-B", "TV", "eDP",
+   "DisplayPort", "HDMI-A", "HDMI-B", "TV", "eDP", "Virtual",
+   "DSI",
 };
 
 EAPI int ECORE_DRM_EVENT_OUTPUT = 0;

-- 




[EGIT] [core/efl] master 09/10: ecore-drm: Fix formatting

2015-04-09 Thread Christopher Michael
stefan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=07ee56d555ac634f4aae5410411a8d2c9e7e4e64

commit 07ee56d555ac634f4aae5410411a8d2c9e7e4e64
Author: Chris Michael 
Date:   Tue Apr 7 11:24:17 2015 -0400

ecore-drm: Fix formatting

Summary: NO functional changes, just formatting

Signed-off-by: Chris Michael 
---
 src/lib/ecore_drm/ecore_drm_output.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/lib/ecore_drm/ecore_drm_output.c 
b/src/lib/ecore_drm/ecore_drm_output.c
index e118ca8..4c8fd4e 100644
--- a/src/lib/ecore_drm/ecore_drm_output.c
+++ b/src/lib/ecore_drm/ecore_drm_output.c
@@ -82,11 +82,11 @@ _ecore_drm_output_edid_parse(Ecore_Drm_Output *output, 
const uint8_t *data, size
 if (data[i + 2] != 0) continue;
 
 if (data[i + 3] == EDID_DESCRIPTOR_DISPLAY_PRODUCT_NAME)
-  _ecore_drm_output_edid_parse_string(&data[i+5], 
output->edid.monitor);
+  _ecore_drm_output_edid_parse_string(&data[i + 5], 
output->edid.monitor);
 else if (data[i + 3] == EDID_DESCRIPTOR_DISPLAY_PRODUCT_SERIAL_NUMBER)
-  _ecore_drm_output_edid_parse_string(&data[i+5], output->edid.serial);
+  _ecore_drm_output_edid_parse_string(&data[i + 5], 
output->edid.serial);
 else if (data[i + 3] == EDID_DESCRIPTOR_ALPHANUMERIC_DATA_STRING)
-  _ecore_drm_output_edid_parse_string(&data[i+5], output->edid.eisa);
+  _ecore_drm_output_edid_parse_string(&data[i + 5], output->edid.eisa);
  }
 
return 0;

-- 




[EGIT] [core/efl] master 06/10: ecore-drm: Fix formatting

2015-04-09 Thread Christopher Michael
stefan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=e5e0b0b5068ff9b5e3bbd800c09fead919b981a9

commit e5e0b0b5068ff9b5e3bbd800c09fead919b981a9
Author: Chris Michael 
Date:   Tue Apr 7 11:18:18 2015 -0400

ecore-drm: Fix formatting

Summary: NO functional changes, just formatting.

Signed-off-by: Chris Michael 
---
 src/lib/ecore_drm/Ecore_Drm.h | 38 +--
 src/lib/ecore_drm/ecore_drm_private.h | 12 +--
 2 files changed, 25 insertions(+), 25 deletions(-)

diff --git a/src/lib/ecore_drm/Ecore_Drm.h b/src/lib/ecore_drm/Ecore_Drm.h
index e5357d5..d09e43f 100644
--- a/src/lib/ecore_drm/Ecore_Drm.h
+++ b/src/lib/ecore_drm/Ecore_Drm.h
@@ -5,26 +5,26 @@
 #  undef EAPI
 # endif
 
-#ifdef _MSC_VER
-# ifdef BUILDING_DLL
-#  define EAPI __declspec(dllexport)
-# else // ifdef BUILDING_DLL
-#  define EAPI __declspec(dllimport)
-# endif // ifdef BUILDING_DLL
-#else // ifdef _MSC_VER
-# ifdef __GNUC__
-#  if __GNUC__ >= 4
-#   define EAPI __attribute__ ((visibility("default")))
-#  else // if __GNUC__ >= 4
+# ifdef _MSC_VER
+#  ifdef BUILDING_DLL
+#   define EAPI __declspec(dllexport)
+#  else // ifdef BUILDING_DLL
+#   define EAPI __declspec(dllimport)
+#  endif // ifdef BUILDING_DLL
+# else // ifdef _MSC_VER
+#  ifdef __GNUC__
+#   if __GNUC__ >= 4
+#define EAPI __attribute__ ((visibility("default")))
+#   else // if __GNUC__ >= 4
+#define EAPI
+#   endif // if __GNUC__ >= 4
+#  else // ifdef __GNUC__
 #   define EAPI
-#  endif // if __GNUC__ >= 4
-# else // ifdef __GNUC__
-#  define EAPI
-# endif // ifdef __GNUC__
-#endif // ifdef _MSC_VER
-
-#include 
-#include 
+#  endif // ifdef __GNUC__
+# endif // ifdef _MSC_VER
+
+# include 
+# include 
 
 typedef enum _Ecore_Drm_Evdev_Capabilities
 {
diff --git a/src/lib/ecore_drm/ecore_drm_private.h 
b/src/lib/ecore_drm/ecore_drm_private.h
index 2d20255..7b834cb 100644
--- a/src/lib/ecore_drm/ecore_drm_private.h
+++ b/src/lib/ecore_drm/ecore_drm_private.h
@@ -74,13 +74,13 @@
 
 extern int _ecore_drm_log_dom;
 
-#define EVDEV_MAX_SLOTS 32
+# define EVDEV_MAX_SLOTS 32
 
-#define ERR(...) EINA_LOG_DOM_ERR(_ecore_drm_log_dom, __VA_ARGS__)
-#define DBG(...) EINA_LOG_DOM_DBG(_ecore_drm_log_dom, __VA_ARGS__)
-#define INF(...) EINA_LOG_DOM_INFO(_ecore_drm_log_dom, __VA_ARGS__)
-#define WRN(...) EINA_LOG_DOM_WARN(_ecore_drm_log_dom, __VA_ARGS__)
-#define CRIT(...) EINA_LOG_DOM_CRIT(_ecore_drm_log_dom, __VA_ARGS__)
+# define ERR(...) EINA_LOG_DOM_ERR(_ecore_drm_log_dom, __VA_ARGS__)
+# define DBG(...) EINA_LOG_DOM_DBG(_ecore_drm_log_dom, __VA_ARGS__)
+# define INF(...) EINA_LOG_DOM_INFO(_ecore_drm_log_dom, __VA_ARGS__)
+# define WRN(...) EINA_LOG_DOM_WARN(_ecore_drm_log_dom, __VA_ARGS__)
+# define CRIT(...) EINA_LOG_DOM_CRIT(_ecore_drm_log_dom, __VA_ARGS__)
 
 struct _Ecore_Drm_Output_Mode
 {

-- 




[EGIT] [core/efl] master 04/10: evas-drm: Use Ecore_Drm_Fb for framebuffers

2015-04-09 Thread Christopher Michael
stefan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=d815d9bd108a11628ac4e8679957b05cf49b3c3f

commit d815d9bd108a11628ac4e8679957b05cf49b3c3f
Author: Chris Michael 
Date:   Tue Apr 7 10:51:13 2015 -0400

evas-drm: Use Ecore_Drm_Fb for framebuffers

Summary: This commit changes the evas drm engine to use Ecore_Drm_Fb
for framebuffers. We remove the old 'Buffer' structure from the evas
engine and replace it in Outbuf with Ecore_Drm_Fb. This also removes
unused functions from the evas_drm.c file as we can now use
ecore_drm_fb calls

@fix

Signed-off-by: Chris Michael 
---
 src/modules/evas/engines/drm/evas_drm.c| 110 ++---
 src/modules/evas/engines/drm/evas_engine.h |  25 +--
 src/modules/evas/engines/drm/evas_outbuf.c |  55 ++-
 3 files changed, 30 insertions(+), 160 deletions(-)

diff --git a/src/modules/evas/engines/drm/evas_drm.c 
b/src/modules/evas/engines/drm/evas_drm.c
index bf5bfb1..b44e344 100644
--- a/src/modules/evas/engines/drm/evas_drm.c
+++ b/src/modules/evas/engines/drm/evas_drm.c
@@ -233,7 +233,7 @@ evas_drm_outbuf_setup(Outbuf *ob)
 }
 
 void 
-evas_drm_outbuf_framebuffer_set(Outbuf *ob, Buffer *buffer)
+evas_drm_outbuf_framebuffer_set(Outbuf *ob, Ecore_Drm_Fb *buffer)
 {
int ret;
 
@@ -242,115 +242,13 @@ evas_drm_outbuf_framebuffer_set(Outbuf *ob, Buffer 
*buffer)
 
/* DBG("Drm Framebuffer Set: %d", buffer->fb); */
 
-   buffer->valid = EINA_FALSE;
-   ret = drmModeSetCrtc(ob->priv.fd, ob->priv.crtc, buffer->fb, 0, 0, 
+   ret = drmModeSetCrtc(ob->priv.fd, ob->priv.crtc, buffer->id, 0, 0, 
 &ob->priv.conn, 1, &ob->priv.mode);
-
if (ret) ERR("Failed to set crtc: %m");
-   else buffer->valid = EINA_TRUE;
-}
-
-Eina_Bool 
-evas_drm_framebuffer_create(int fd, Buffer *buffer, int depth)
-{
-   struct drm_mode_create_dumb carg;
-   struct drm_mode_destroy_dumb darg;
-   struct drm_mode_map_dumb marg;
-
-   /* check for valid info */
-   if (fd < 0) return EINA_FALSE;
-
-   /* try to create a dumb buffer */
-   memset(&carg, 0, sizeof(carg));
-   carg.width = buffer->w;
-   carg.height = buffer->h;
-   carg.bpp = depth;
-
-   if (drmIoctl(fd, DRM_IOCTL_MODE_CREATE_DUMB, &carg) < 0)
- {
-ERR("Could not create dumb buffer: %m");
-return EINA_FALSE;
- }
-
-   buffer->stride = carg.pitch;
-   buffer->size = carg.size;
-   buffer->handle = carg.handle;
-
-   DBG("Buffer: %d %d", buffer->w, buffer->h);
-   DBG("Buffer Stride: %d", buffer->stride);
-   DBG("Buffer Size: %d", buffer->size);
-
-   /* try to create a framebuffer object */
-   /* FIXME: Hardcoded bpp */
-   if (drmModeAddFB(fd, buffer->w, buffer->h, 24, depth, buffer->stride, 
-buffer->handle, &buffer->fb))
- {
-ERR("Could not create framebuffer object: %m");
-goto add_err;
- }
-
-   DBG("Creating dumb buffer: %d %d %d %d", buffer->fb, 
-   buffer->w, buffer->h, depth);
-
-   /* try to mmap the buffer */
-   memset(&marg, 0, sizeof(marg));
-   marg.handle = buffer->handle;
-   if (drmIoctl(fd, DRM_IOCTL_MODE_MAP_DUMB, &marg))
- {
-ERR("Could not map dumb buffer: %m");
-goto map_err;
- }
-
-   /* do actual mmap of memory */
-   buffer->data = 
- mmap(NULL, buffer->size, (PROT_READ | PROT_WRITE), 
-  MAP_SHARED, fd, marg.offset);
-   if (buffer->data == MAP_FAILED)
- {
-ERR("Could not mmap dumb buffer: %m");
-goto map_err;
- }
-
-   /* clear memory */
-   memset(buffer->data, 0, buffer->size);
-
-   return EINA_TRUE;
-
-map_err:
-   /* remove the framebuffer */
-   drmModeRmFB(fd, buffer->fb);
-
-add_err:
-   /* destroy buffer */
-   memset(&darg, 0, sizeof(darg));
-   darg.handle = buffer->handle;
-   drmIoctl(fd, DRM_IOCTL_MODE_DESTROY_DUMB, &darg);
-
-   return EINA_FALSE;
-}
-
-void 
-evas_drm_framebuffer_destroy(int fd, Buffer *buffer)
-{
-   struct drm_mode_destroy_dumb darg;
-
-   /* check for valid info */
-   if (fd < 0) return;
-
-   /* unmap the buffer data */
-   if (buffer->data) munmap(buffer->data, buffer->size);
-
-   /* remove the framebuffer */
-   drmModeRmFB(fd, buffer->fb);
-
-   /* destroy buffer */
-   memset(&darg, 0, sizeof(darg));
-   darg.handle = buffer->handle;
-   drmIoctl(fd, DRM_IOCTL_MODE_DESTROY_DUMB, &darg);
 }
 
 Eina_Bool 
-evas_drm_framebuffer_send(Outbuf *ob, Buffer *buffer)
+evas_drm_framebuffer_send(Outbuf *ob, Ecore_Drm_Fb *buffer)
 {
/* check for valid Output buffer */
if ((!ob) || (ob->priv.fd < 0)) return EINA_FALSE;
@@ -361,7 +259,7 @@ evas_drm_framebuffer_send(Outbuf *ob, Buffer *buffer)
if (ob->vsync)
  {
 if (drmModePageFlip(ob->priv.fd, ob->priv.crtc, 
-buffer->fb, DRM_MODE_PAGE_FLIP_EVENT, ob) < 0)
+buffer->id, DRM_MODE_PAGE_FLIP_EVENT, ob) < 0)
   {
  ERR("Cannot flip crtc %u for connector %u: %m", 
  

[EGIT] [core/efl] master 01/10: ecore-drm: Create all framebuffers using XRGB8888 by default

2015-04-09 Thread Christopher Michael
stefan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=2f62ebb223e589229947b12411579789e647bfcf

commit 2f62ebb223e589229947b12411579789e647bfcf
Author: Chris Michael 
Date:   Tue Apr 7 10:23:41 2015 -0400

ecore-drm: Create all framebuffers using XRGB by default

Summary: By default, we should be creating dumb buffers using XRGB
that way it does not matter if we have an alpha channel or not in the
buffer.

@fix

Signed-off-by: Chris Michael 
---
 src/lib/ecore_drm/ecore_drm_fb.c | 48 
 1 file changed, 44 insertions(+), 4 deletions(-)

diff --git a/src/lib/ecore_drm/ecore_drm_fb.c b/src/lib/ecore_drm/ecore_drm_fb.c
index af05c17..67641c9 100644
--- a/src/lib/ecore_drm/ecore_drm_fb.c
+++ b/src/lib/ecore_drm/ecore_drm_fb.c
@@ -14,6 +14,42 @@
 
 /* TODO: DOXY !! */
 
+static Eina_Bool
+_ecore_drm_fb_create2(int fd, int w, int h, Ecore_Drm_Fb *fb)
+{
+   struct drm_mode_fb_cmd2 cmd;
+   uint32_t hdls[4], pitches[4], offsets[4], fmt;
+
+#define _fourcc_code(a,b,c,d) \
+   ((uint32_t)(a) | ((uint32_t)(b) << 8) | \
+   ((uint32_t)(c) << 16) | ((uint32_t)(d) << 24))
+   fmt = (_fourcc_code('X', 'R', '2', '4'));
+
+   hdls[0] = fb->hdl;
+   pitches[0] = fb->stride;
+   offsets[0] = 0;
+
+   memset(&cmd, 0, sizeof(struct drm_mode_fb_cmd2));
+   cmd.fb_id = 0;
+   cmd.width = w;
+   cmd.height = h;
+   cmd.pixel_format = fmt;
+   cmd.flags = 0;
+   memcpy(cmd.handles, hdls, 4 * sizeof(hdls[0]));
+   memcpy(cmd.pitches, pitches, 4 * sizeof(pitches[0]));
+   memcpy(cmd.offsets, offsets, 4 * sizeof(offsets[0]));
+
+   if (drmIoctl(fd, DRM_IOCTL_MODE_ADDFB2, &cmd))
+ return EINA_FALSE;
+
+   fb->id = cmd.fb_id;
+
+   /* if (drmModeAddFB2(fd, w, h, fmt, hdls, pitches, offsets, &fb->id, 0)) */
+   /*   return EINA_FALSE; */
+
+   return EINA_TRUE;
+}
+
 EAPI Ecore_Drm_Fb *
 ecore_drm_fb_create(Ecore_Drm_Device *dev, int width, int height)
 {
@@ -42,11 +78,15 @@ ecore_drm_fb_create(Ecore_Drm_Device *dev, int width, int 
height)
fb->size = carg.size;
fb->fd = dev->drm.fd;
 
-   if (drmModeAddFB(dev->drm.fd, width, height, 24, 32, 
-fb->stride, fb->hdl, &fb->id))
+   if (!_ecore_drm_fb_create2(dev->drm.fd, width, height, fb))
  {
-ERR("Could not add framebuffer: %m");
-goto add_err;
+WRN("Could not add framebuffer2: %m");
+if (drmModeAddFB(dev->drm.fd, width, height, 24, 32,
+ fb->stride, fb->hdl, &fb->id))
+  {
+ ERR("Could not add framebuffer: %m");
+ goto add_err;
+  }
  }
 
memset(&marg, 0, sizeof(struct drm_mode_map_dumb));

-- 




[EGIT] [core/enlightenment] master 01/09: set desktop editor appselector dialog to be resizable

2015-04-09 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=7ef480d1a6b6ba31bf04b721c2e2bfe6589a28d1

commit 7ef480d1a6b6ba31bf04b721c2e2bfe6589a28d1
Author: Mike Blumenkrantz 
Date:   Thu Apr 9 15:12:47 2015 -0400

set desktop editor appselector dialog to be resizable

ref T2271
---
 src/bin/e_desktop_editor.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/bin/e_desktop_editor.c b/src/bin/e_desktop_editor.c
index 4ec89ea..38735a6 100644
--- a/src/bin/e_desktop_editor.c
+++ b/src/bin/e_desktop_editor.c
@@ -948,6 +948,7 @@ _e_desktop_editor_cb_exec_select(void *data1, void *data2)
editor->exec_fsel = o;
e_widget_size_min_get(o, &mw, &mh);
e_dialog_content_set(dia, o, mw, mh);
+   e_dialog_resizable_set(dia, 1);
 
/* buttons at the bottom */
e_dialog_button_add(dia, _("OK"), NULL,

-- 




[EGIT] [core/efl] master 03/10: ecore-drm: Add width & height to Ecore_Drm_Fb structure

2015-04-09 Thread Christopher Michael
stefan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=318f2c435a8013e75c0e9804bfea6fbb223f07f4

commit 318f2c435a8013e75c0e9804bfea6fbb223f07f4
Author: Chris Michael 
Date:   Tue Apr 7 10:49:45 2015 -0400

ecore-drm: Add width & height to Ecore_Drm_Fb structure

Summary: This adds a w & h field to the Ecore_Drm_Fb structure so it
can be used from within the Evas engine

@fix

Signed-off-by: Chris Michael 
---
 src/lib/ecore_drm/Ecore_Drm.h|  1 +
 src/lib/ecore_drm/ecore_drm_fb.c | 12 +++-
 2 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/src/lib/ecore_drm/Ecore_Drm.h b/src/lib/ecore_drm/Ecore_Drm.h
index 6378022..5c4dd8b 100644
--- a/src/lib/ecore_drm/Ecore_Drm.h
+++ b/src/lib/ecore_drm/Ecore_Drm.h
@@ -61,6 +61,7 @@ typedef struct _Ecore_Drm_Fb
unsigned int stride, size;
int fd;
void *mmap;
+   int w, h;
 } Ecore_Drm_Fb;
 
 struct _Ecore_Drm_Device
diff --git a/src/lib/ecore_drm/ecore_drm_fb.c b/src/lib/ecore_drm/ecore_drm_fb.c
index 67641c9..2a48f25 100644
--- a/src/lib/ecore_drm/ecore_drm_fb.c
+++ b/src/lib/ecore_drm/ecore_drm_fb.c
@@ -15,7 +15,7 @@
 /* TODO: DOXY !! */
 
 static Eina_Bool
-_ecore_drm_fb_create2(int fd, int w, int h, Ecore_Drm_Fb *fb)
+_ecore_drm_fb_create2(int fd, Ecore_Drm_Fb *fb)
 {
struct drm_mode_fb_cmd2 cmd;
uint32_t hdls[4], pitches[4], offsets[4], fmt;
@@ -31,8 +31,8 @@ _ecore_drm_fb_create2(int fd, int w, int h, Ecore_Drm_Fb *fb)
 
memset(&cmd, 0, sizeof(struct drm_mode_fb_cmd2));
cmd.fb_id = 0;
-   cmd.width = w;
-   cmd.height = h;
+   cmd.width = fb->w;
+   cmd.height = fb->h;
cmd.pixel_format = fmt;
cmd.flags = 0;
memcpy(cmd.handles, hdls, 4 * sizeof(hdls[0]));
@@ -77,11 +77,13 @@ ecore_drm_fb_create(Ecore_Drm_Device *dev, int width, int 
height)
fb->stride = carg.pitch;
fb->size = carg.size;
fb->fd = dev->drm.fd;
+   fb->w = width;
+   fb->h = height;
 
-   if (!_ecore_drm_fb_create2(dev->drm.fd, width, height, fb))
+   if (!_ecore_drm_fb_create2(dev->drm.fd, fb))
  {
 WRN("Could not add framebuffer2: %m");
-if (drmModeAddFB(dev->drm.fd, width, height, 24, 32,
+if (drmModeAddFB(dev->drm.fd, fb->w, fb->h, 24, 32,
  fb->stride, fb->hdl, &fb->id))
   {
  ERR("Could not add framebuffer: %m");

-- 




[EGIT] [core/efl] master 02/10: evas-drm: Remove evas_bufmgr.c from the Evas Drm engine

2015-04-09 Thread Christopher Michael
stefan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=e72e1e1751b711cb041ea91cd611877f8b1f040b

commit e72e1e1751b711cb041ea91cd611877f8b1f040b
Author: Chris Michael 
Date:   Tue Apr 7 10:48:11 2015 -0400

evas-drm: Remove evas_bufmgr.c from the Evas Drm engine

Summary: This file is not needed for the software drm engine. This was
added (initially) for combining the drm software & hardware engines
into one. As that is not the case, this file is unused.

@fix

Signed-off-by: Chris Michael 
---
 src/Makefile_Evas.am   |   1 -
 src/modules/evas/engines/drm/evas_bufmgr.c | 538 -
 2 files changed, 539 deletions(-)

diff --git a/src/Makefile_Evas.am b/src/Makefile_Evas.am
index 3b57e96..0716b03 100644
--- a/src/Makefile_Evas.am
+++ b/src/Makefile_Evas.am
@@ -1136,7 +1136,6 @@ if BUILD_ENGINE_DRM
 dist_installed_evasmainheaders_DATA += 
modules/evas/engines/drm/Evas_Engine_Drm.h
 DRM_SOURCES = \
 modules/evas/engines/drm/evas_drm.c \
-modules/evas/engines/drm/evas_bufmgr.c \
 modules/evas/engines/drm/evas_outbuf.c \
 modules/evas/engines/drm/evas_engine.c \
 modules/evas/engines/drm/evas_engine.h \
diff --git a/src/modules/evas/engines/drm/evas_bufmgr.c 
b/src/modules/evas/engines/drm/evas_bufmgr.c
deleted file mode 100644
index b4a7c65..000
--- a/src/modules/evas/engines/drm/evas_bufmgr.c
+++ /dev/null
@@ -1,538 +0,0 @@
-#include "evas_engine.h"
-#include 
-
-#ifdef HAVE_DRM_HW_ACCEL
-# define EGL_EGLEXT_PROTOTYPES
-# define GL_GLEXT_PROTOTYPES
-
-# include 
-# include 
-# include 
-# include 
-#endif
-
-/* NB: This union is the same in GBM and TBM so we can use it 
- * to return 'handles' */
-union _ebi_bo_handle
-{
-   void *ptr;
-   int32_t s32;
-   uint32_t u32;
-   int64_t s64;
-   uint64_t u64;
-};
-
-enum _ebi_bo_format
-{
-   EBI_BO_FORMAT_XRGB,
-   EBI_BO_FORMAT_ARGB
-};
-
-enum _ebi_bo_gbm_flags
-{
-   EBI_BO_GBM_SCANOUT = (1 << 0),
-   EBI_BO_GBM_CURSOR = (1 << 1),
-   EBI_BO_GBM_RENDER = (1 << 2),
-   EBI_BO_GBM_WRITE = (1 << 3),
-};
-
-enum _ebi_bo_tbm_flags
-{
-   EBI_BO_TBM_DEFAULT = 0,
-   EBI_BO_TBM_SCANOUT = (1 << 0),
-   EBI_BO_TBM_NONCACHE = (1 << 1),
-   EBI_BO_TBM_WC = (1 << 2),
-   EBI_BO_TBM_VENDOR = (0x),
-};
-
-typedef struct _Evas_Bufmgr_Interface Evas_Bufmgr_Interface;
-struct _Evas_Bufmgr_Interface
-{
-   int fd;
-
-   /* actual library we linked to */
-   void *lib;
-
-   /* actual buffer manager returned from library init */
-   void *mgr;
-
-   union
- {
-struct 
-  {
- void *(*init)(int fd);
- void (*shutdown)(void *mgr);
- void *(*surface_create)(void *mgr, unsigned int width, unsigned 
int height, unsigned int format, unsigned int flags);
- void (*surface_destroy)(void *surface);
- void *(*buffer_create)(void *mgr, unsigned int width, unsigned 
int height, unsigned int format, unsigned int flags);
- void (*buffer_destroy)(void *buffer);
- union _ebi_bo_handle (*buffer_handle_get)(void *buffer);
- unsigned int (*buffer_stride_get)(void *buffer);
-  } gbm;
-struct 
-  {
- void *(*init)(int fd);
- void (*shutdown)(void *mgr);
-  } tbm;
- } funcs;
-
-#ifdef HAVE_DRM_HW_ACCEL
-   struct
- {
-EGLDisplay disp;
-EGLContext ctx;
-EGLConfig cfg;
-
-PFNEGLCREATEIMAGEKHRPROC image_create;
-PFNEGLDESTROYIMAGEKHRPROC image_destroy;
-PFNGLEGLIMAGETARGETTEXTURE2DOESPROC image_texture;
- } egl;
-#endif
-};
-
-/* buffer manager interface */
-static Evas_Bufmgr_Interface *_ebi;
-
-static Eina_Bool 
-_evas_bufmgr_egl_init(void)
-{
-#ifdef HAVE_DRM_HW_ACCEL
-   /* const char *ext; */
-   EGLint maj, min, n;
-   EGLint atts[] = 
- {
-EGL_SURFACE_TYPE, EGL_WINDOW_BIT, 
-EGL_RED_SIZE, 1, EGL_GREEN_SIZE, 1, EGL_BLUE_SIZE, 1, 
-EGL_ALPHA_SIZE, 1, EGL_DEPTH_SIZE, 1, 
-EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_BIT, EGL_NONE
- };
-
-   /* try to get the egl display from the manager */
-   _ebi->egl.disp = eglGetDisplay(_ebi->mgr);
-   if (_ebi->egl.disp == EGL_NO_DISPLAY)
- {
-ERR("Could not get EGLDisplay: %m");
-return EINA_FALSE;
- }
-
-   /* try to init egl library */
-   if (!eglInitialize(_ebi->egl.disp, &maj, &min))
- {
-ERR("Could not init EGL library: %m");
-goto init_err;
- }
-
-   /* check egl extensions for what we need */
-   /* ext = eglQueryString(_ebi->egl.disp, EGL_EXTENSIONS); */
-   /* if (!strstr(ext, "EGL_KHR_surfaceless_opengl")) */
-   /*   { */
-   /*  ERR("EGL_KHR_surfaceless_opengl Not Supported"); */
-   /*  goto init_err; */
-   /*   } */
-
-   eglBindAPI(EGL_OPENGL_ES_API);
-
-   /* try to find matching egl config */
-   if (!eglChooseConfig(_ebi->egl.disp, atts, &_ebi->egl.cfg, 1, &n) || 
-   (n != 1))
- {
-  

[EGIT] [core/efl] master 01/02: evas-3d: Fix example compilation of evas_3d_blending

2015-04-09 Thread Felipe Magno de Almeida
felipealmeida pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=b2cd3a1f6024e4467f372512e1d92448c5e9c49e

commit b2cd3a1f6024e4467f372512e1d92448c5e9c49e
Author: Felipe Magno de Almeida 
Date:   Thu Apr 9 17:41:34 2015 -0300

evas-3d: Fix example compilation of evas_3d_blending
---
 src/examples/evas/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/examples/evas/Makefile.am b/src/examples/evas/Makefile.am
index 6a47303..986ad9a 100644
--- a/src/examples/evas/Makefile.am
+++ b/src/examples/evas/Makefile.am
@@ -265,7 +265,7 @@ evas_3d_obj_LDADD = $(ECORE_EVAS_COMMON_LDADD) 
@EFL_PTHREAD_LIBS@
 evas_3d_obj_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS)
 
 EXTRA_PROGRAMS += evas_3d_blending
-evas_3d_blending_SOURCES = evas-3d-blending.c
+evas_3d_blending_SOURCES = evas-3d-blending.c evas-3d-primitives.c
 evas_3d_blending_LDADD = $(ECORE_EVAS_COMMON_LDADD) @EFL_PTHREAD_LIBS@
 evas_3d_blending_CPPFLAGS = $(ECORE_EVAS_COMMON_CPPFLAGS)
 

--