[EGIT] [core/efl] master 01/01: eina thread_queue: fix typo in doc.

2015-04-22 Thread ChunEon Park
hermet pushed a commit to branch master.

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

commit 023a91dc7de37fbc378be798e28019d3515319de
Author: ChunEon Park 
Date:   Thu Apr 23 11:35:35 2015 +0900

eina thread_queue: fix typo in doc.
---
 src/lib/eina/eina_thread_queue.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/eina/eina_thread_queue.h b/src/lib/eina/eina_thread_queue.h
index dc01917..a33e7b4 100644
--- a/src/lib/eina/eina_thread_queue.h
+++ b/src/lib/eina/eina_thread_queue.h
@@ -164,7 +164,7 @@ eina_thread_queue_wait_done(Eina_Thread_Queue *thq, void 
*allocref) EINA_ARG_NON
  * @return A pointer to the message data
  *
  * This is the same as eina_thread_queue_wait(), but if no messages are
- * available for reading, it immediately returns NULL tot he caller, without
+ * available for reading, it immediately returns NULL to the caller, without
  * waiting for a new message to arrive.
  *
  * @see eina_thread_queue_wait()

-- 




[EGIT] [core/elementary] master 01/01: elm_multibuttonentry: change theme_set API to provide full widget theming

2015-04-22 Thread Vitalii Vorobiov
hermet pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=35dfc13e38c02fd30e55898eb871f6986804c498

commit 35dfc13e38c02fd30e55898eb871f6986804c498
Author: Vitalii Vorobiov 
Date:   Thu Apr 23 11:05:31 2015 +0900

elm_multibuttonentry: change theme_set API to provide full widget theming

Summary:
While setting theme currently changes style and theme to all button and
whole multibuttonentry object, it doesn't change few other parts of this 
object.
Part are, for examples, "guidetext", "label" and "closedbutton".

Fixing this sad mistake leads to be able to create different styles for such
wonderful widget.

@fix

Reviewers: cedric, seoz, raster, reutskiy.v.v, Hermet

Reviewed By: Hermet

Subscribers: NikaWhite

Differential Revision: https://phab.enlightenment.org/D2407
---
 src/lib/elc_multibuttonentry.c | 10 ++
 1 file changed, 10 insertions(+)

diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
index 797008a..1300c8b 100644
--- a/src/lib/elc_multibuttonentry.c
+++ b/src/lib/elc_multibuttonentry.c
@@ -86,6 +86,16 @@ _elm_multibuttonentry_elm_widget_theme_apply(Eo *obj, 
Elm_Multibuttonentry_Data
 elm_object_scale_set(VIEW(item), elm_widget_scale_get(obj) * 
elm_config_scale_get());
  }
 
+   elm_widget_theme_object_set
+  (obj, sd->label, "multibuttonentry", "label",
+   elm_widget_style_get(obj));
+   elm_widget_theme_object_set
+  (obj, sd->end, "multibuttonentry", "closedbutton",
+   elm_widget_style_get(obj));
+   elm_widget_theme_object_set
+  (obj,sd->guide_text, "multibuttonentry", "guidetext",
+   elm_widget_style_get(obj));
+
elm_layout_sizing_eval(obj);
 
return EINA_TRUE;

-- 




[EGIT] [bindings/python/python-efl] master 01/02: Documentation: Sphinx 1.3 compatibility fixes

2015-04-22 Thread Kai Huuhko
kuuko pushed a commit to branch master.

http://git.enlightenment.org/bindings/python/python-efl.git/commit/?id=c3b9a5b18f4db8373b925ee3f07c0c9bc0e80ed4

commit c3b9a5b18f4db8373b925ee3f07c0c9bc0e80ed4
Author: Kai Huuhko 
Date:   Wed Apr 22 13:06:07 2015 +0300

Documentation: Sphinx 1.3 compatibility fixes
---
 doc/themes/efldoc/static/efl.css | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/doc/themes/efldoc/static/efl.css b/doc/themes/efldoc/static/efl.css
index 369fb22..229104b 100644
--- a/doc/themes/efldoc/static/efl.css
+++ b/doc/themes/efldoc/static/efl.css
@@ -322,7 +322,7 @@ cite, code, tt {
 letter-spacing: -0.02em;
 }
 
-tt {
+code, tt {
 background-color: rgb(51,51,51); /*#f2f2f2*/
 border: 1px solid rgb(32,32,32); /*#ddd*/
 border-radius: 2px;
@@ -351,12 +351,12 @@ hr {
 margin: 2em;
 }
 
-a tt {
+a tt, a code{
 border: 0;
 color: rgb(200,200,170);
 }
 
-a tt:hover {
+a tt:hover, a code:hover{
 color: rgb(230,230,200);
 }
 

-- 




[EGIT] [bindings/python/python-efl] master 02/02: Documentation: Prettify warning/note boxes, class headers

2015-04-22 Thread Kai Huuhko
kuuko pushed a commit to branch master.

http://git.enlightenment.org/bindings/python/python-efl.git/commit/?id=8f68e52eccb2706e0e8ab39199cd72a4f8f22b0e

commit 8f68e52eccb2706e0e8ab39199cd72a4f8f22b0e
Author: Kai Huuhko 
Date:   Wed Apr 22 14:16:50 2015 +0300

Documentation: Prettify warning/note boxes, class headers

Sphinx 1.3 includes class constructor's signature in the class header;
reduced font size slightly to accommodate this change.
---
 doc/themes/efldoc/static/efl.css | 14 +-
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/doc/themes/efldoc/static/efl.css b/doc/themes/efldoc/static/efl.css
index 229104b..68d6dd3 100644
--- a/doc/themes/efldoc/static/efl.css
+++ b/doc/themes/efldoc/static/efl.css
@@ -325,7 +325,7 @@ cite, code, tt {
 code, tt {
 background-color: rgb(51,51,51); /*#f2f2f2*/
 border: 1px solid rgb(32,32,32); /*#ddd*/
-border-radius: 2px;
+border-radius: 3px;
 color: white; /*#333*/
 padding: 1px;
 }
@@ -406,8 +406,8 @@ table td, table th {
 div.admonition, div.warning {
 font-size: 0.9em;
 margin: 1em 0 1em 0;
-border: 1px solid rgb(32,32,32); /*#86989B*/
-border-radius: 2px;
+border: 1px dashed rgb(32,32,32); /*#86989B*/
+border-radius: 12px;
 background-color: rgb(51,51,51); /*#f7f7f7*/
 padding: 0;
 }
@@ -429,7 +429,7 @@ div.warning p.admonition-title {
 }
 
 div.warning {
-border: 1px solid rgb(101,16,16); /*#94*/
+border-color: rgb(101,16,16); /*#94*/
 background-color: rgb(101,51,51); /*#FFCCCF*/
 }
 
@@ -506,11 +506,15 @@ dl.class {
 }
 
 dl.class > dt {
-font-size: 20px;
+font-size: 1.2em;
 background-color: #333;
 padding: 2px;
 }
 
+dl.class > dt em {
+font-size: 0.8em;
+}
+
 dl.class dt{
 border-bottom: 1px solid #333;
 }

-- 




[EGIT] [core/enlightenment] master 26/28: use const lists for drm devices in signal handlers

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

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

commit a86fe60d3a6b2c8daf6992e3fd5da7252ebba962
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 19:36:21 2015 -0400

use const lists for drm devices in signal handlers
---
 src/bin/e_signals.c | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/bin/e_signals.c b/src/bin/e_signals.c
index b37e043..a508b33 100644
--- a/src/bin/e_signals.c
+++ b/src/bin/e_signals.c
@@ -70,7 +70,7 @@ EAPI void
 e_sigseg_act(int x EINA_UNUSED, siginfo_t *info EINA_UNUSED, void *data 
EINA_UNUSED)
 {
 #ifdef HAVE_WAYLAND_ONLY
-   Eina_List *list, *l, *ll;
+   const Eina_List *list, *l, *ll;
Ecore_Drm_Device *dev;
 
list = ecore_drm_devices_get();
@@ -116,7 +116,7 @@ EAPI void
 e_sigfpe_act(int x EINA_UNUSED, siginfo_t *info EINA_UNUSED, void *data 
EINA_UNUSED)
 {
 #ifdef HAVE_WAYLAND_ONLY
-   Eina_List *list, *l, *ll;
+   const Eina_List *list, *l, *ll;
Ecore_Drm_Device *dev;
 
list = ecore_drm_devices_get();
@@ -144,7 +144,7 @@ EAPI void
 e_sigbus_act(int x EINA_UNUSED, siginfo_t *info EINA_UNUSED, void *data 
EINA_UNUSED)
 {
 #ifdef HAVE_WAYLAND_ONLY
-   Eina_List *list, *l, *ll;
+   const Eina_List *list, *l, *ll;
Ecore_Drm_Device *dev;
 
list = ecore_drm_devices_get();
@@ -172,7 +172,7 @@ EAPI void
 e_sigabrt_act(int x EINA_UNUSED, siginfo_t *info EINA_UNUSED, void *data 
EINA_UNUSED)
 {
 #ifdef HAVE_WAYLAND_ONLY
-   Eina_List *list, *l, *ll;
+   const Eina_List *list, *l, *ll;
Ecore_Drm_Device *dev;
 
list = ecore_drm_devices_get();

-- 




[EGIT] [core/enlightenment] master 28/28: add read-only randr iface for wl drm output module

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

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

commit 2894bae445b1cec112902492931e00ae18f85bc1
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 21:15:12 2015 -0400

add read-only randr iface for wl drm output module

mostly just reads stuff right out of libdrm for now. seems to display 
mostly as expected.
no applying yet, and only connected+active monitors will display since 
that's all ecore-drm
tracks for now

try using ecore-drm, they said. it'll be easier than using libdrm, they 
said.
---
 src/modules/wl_drm/e_mod_main.c | 230 +---
 1 file changed, 218 insertions(+), 12 deletions(-)

diff --git a/src/modules/wl_drm/e_mod_main.c b/src/modules/wl_drm/e_mod_main.c
index 8096331..67bbe99 100644
--- a/src/modules/wl_drm/e_mod_main.c
+++ b/src/modules/wl_drm/e_mod_main.c
@@ -8,6 +8,56 @@ static Ecore_Event_Handler *activate_handler;
 static Ecore_Event_Handler *output_handler;
 static Eina_Bool session_state = EINA_FALSE;
 
+#if EFL_VERSION_MINOR == 14
+/* keeping this here temporarily to make the check for backlight device
+ * 1 line instead of 50-100
+ */
+struct _Ecore_Drm_Output
+{
+   Ecore_Drm_Device *dev;
+   unsigned int crtc_id;
+   unsigned int conn_id;
+   drmModeCrtcPtr crtc;
+   drmModePropertyPtr dpms;
+
+   int x, y, phys_width, phys_height;
+
+   int pipe;
+   const char *make, *model, *name;
+   unsigned int subpixel;
+   uint16_t gamma;
+
+   Ecore_Drm_Output_Mode *current_mode;
+   Eina_List *modes;
+
+   struct
+ {
+char eisa[13];
+char monitor[13];
+char pnp[5];
+char serial[13];
+ } edid;
+
+   void *backlight;
+
+   Eina_Bool enabled : 1;
+   Eina_Bool cloned : 1;
+   Eina_Bool need_repaint : 1;
+   Eina_Bool repaint_scheduled : 1;
+   Eina_Bool pending_destroy : 1;
+   Eina_Bool pending_flip : 1;
+   Eina_Bool pending_vblank : 1;
+};
+
+struct _Ecore_Drm_Output_Mode
+{
+   unsigned int flags;
+   int width, height;
+   unsigned int refresh;
+   drmModeModeInfo info;
+};
+#endif
+
 static Eina_Bool
 _e_mod_drm_cb_activate(void *data EINA_UNUSED, int type EINA_UNUSED, void 
*event)
 {
@@ -76,6 +126,8 @@ _e_mod_drm_cb_output(void *data EINA_UNUSED, int type 
EINA_UNUSED, void *event)
  }
 
 end:
+   if (!e_randr2_cfg->ignore_hotplug_events)
+ e_randr2_screen_refresh_queue(EINA_TRUE);
return ECORE_CALLBACK_PASS_ON;
 }
 
@@ -85,6 +137,171 @@ _e_mod_drm_cb_ee_resize(Ecore_Evas *ee EINA_UNUSED)
e_comp_canvas_update();
 }
 
+static E_Randr2_Mode *
+_mode_get(drmModeModeInfo *info)
+{
+   E_Randr2_Mode *mode;
+   uint64_t refresh;
+
+   mode = malloc(sizeof(E_Randr2_Mode));
+
+   mode->w = info->hdisplay;
+   mode->h = info->vdisplay;
+
+   refresh = (info->clock * 100LL / info->htotal + info->vtotal / 2) / 
info->vtotal;
+   if (info->flags & DRM_MODE_FLAG_INTERLACE)
+ refresh *= 2;
+   if (info->flags & DRM_MODE_FLAG_DBLSCAN)
+ refresh /= 2;
+   if (info->vscan > 1)
+ refresh /= info->vscan;
+
+   mode->refresh = refresh;
+   mode->preferred = (info->type & DRM_MODE_TYPE_PREFERRED);
+
+   return mode;
+}
+
+static char *
+_get_edid(Ecore_Drm_Device *dev, drmModeConnector *conn)
+{
+   int i;
+   drmModePropertyBlobPtr blob = NULL;
+   drmModePropertyPtr prop;
+   char *ret;
+
+   for (i = 0; i < conn->count_props; i++)
+ {
+if (!(prop = drmModeGetProperty(dev->drm.fd, conn->props[i])))
+  continue;
+if ((prop->flags & DRM_MODE_PROP_BLOB) &&
+(!strcmp(prop->name, "EDID")))
+  {
+ blob = drmModeGetPropertyBlob(dev->drm.fd,
+   conn->prop_values[i]);
+ drmModeFreeProperty(prop);
+ break;
+  }
+drmModeFreeProperty(prop);
+ }
+   ret = (char*)eina_memdup(blob->data, blob->length, 1);
+   drmModeFreePropertyBlob(blob);
+   return ret;
+}
+
+static E_Randr2 *
+_drm_randr_create(void)
+{
+   Ecore_Drm_Device *dev;
+   const Eina_List *l;
+   E_Randr2 *r;
+
+   r = E_NEW(E_Randr2, 1);
+   EINA_LIST_FOREACH(ecore_drm_devices_get(), l, dev)
+ {
+Ecore_Drm_Output *output;
+const Eina_List *ll;
+
+EINA_LIST_FOREACH(dev->outputs, ll, output)
+  {
+ E_Randr2_Screen *s;
+ size_t n, e;
+ int i;
+ drmModeConnector *conn;
+ const char *conn_types[] =
+ {
+"None", "VGA", "DVI-I", "DVI-D", "DVI-A",
+"Composite", "S-Video", "LVDS", "Component", "DIN",
+"DisplayPort", "HDMI-A", "HDMI-B", "TV", "eDP", "Virtual",
+"DSI", "UNKNOWN"
+ };
+ E_Randr2_Connector rtype[] =
+ {
+E_RANDR2_CONNECTOR_UNDEFINED,
+E_RANDR2_CONNECTOR_UNDEFINED,
+E_RANDR2_CONNECTOR_DVI,
+E_RANDR2_CONNECT

[EGIT] [core/enlightenment] master 27/28: add wl drm module phony make targets

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

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

commit e1697892bc0d113d0305ce425020bf03e9559d66
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 21:04:38 2015 -0400

add wl drm module phony make targets
---
 src/modules/Makefile_wl_drm.mk | 7 +++
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/src/modules/Makefile_wl_drm.mk b/src/modules/Makefile_wl_drm.mk
index 301e44e..e3c7b36 100644
--- a/src/modules/Makefile_wl_drm.mk
+++ b/src/modules/Makefile_wl_drm.mk
@@ -10,8 +10,7 @@ src_modules_wl_drm_module_la_LIBADD   = $(LIBS) @WL_DRM_LIBS@ 
@WAYLAND_LIBS@
 src_modules_wl_drm_module_la_LDFLAGS = $(MOD_LDFLAGS)
 src_modules_wl_drm_module_la_SOURCES = src/modules/wl_drm/e_mod_main.c
 
-# TODO: incomplete
-#.PHONY: wl_drm install-wl_drm
-#wl_drm: $(wl_drmpkg_LTLIBRARIES) $(wl_drm_DATA)
-#install-wl_drm: install-wl_drmDATA install-wl_drmpkgLTLIBRARIES
+PHONIES += wl_drm install-wl_drm
+wl_drm: $(wl_drmpkg_LTLIBRARIES) $(wl_drm_DATA)
+install-wl_drm: install-wl_drmDATA install-wl_drmpkgLTLIBRARIES
 endif

-- 




[EGIT] [core/enlightenment] master 20/28: remove dead conf_randr files

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

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

commit e7219bab37be54702af75f63103b44415fb028c1
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 18:28:23 2015 -0400

remove dead conf_randr files
---
 src/modules/conf_randr/e_int_config_randr.c |  186 ---
 src/modules/conf_randr/e_int_config_randr.h |9 -
 src/modules/conf_randr/e_smart_monitor.c| 1947 ---
 src/modules/conf_randr/e_smart_monitor.h|   32 -
 src/modules/conf_randr/e_smart_randr.c  |  705 --
 src/modules/conf_randr/e_smart_randr.h  |   15 -
 6 files changed, 2894 deletions(-)

diff --git a/src/modules/conf_randr/e_int_config_randr.c 
b/src/modules/conf_randr/e_int_config_randr.c
deleted file mode 100644
index c1df1bc..000
--- a/src/modules/conf_randr/e_int_config_randr.c
+++ /dev/null
@@ -1,186 +0,0 @@
-#include "e.h"
-#include "e_mod_main.h"
-#include "e_int_config_randr.h"
-#include "e_smart_randr.h"
-#include "e_smart_monitor.h"
-
-/* local structures */
-struct _E_Config_Dialog_Data
-{
-   Evas_Object *o_randr;
-
-   int restore, primary;
-   Eina_Bool changed;
-};
-
-/* local function prototypes */
-static void *_create_data(E_Config_Dialog *cfd EINA_UNUSED);
-static void _free_data(E_Config_Dialog *cfd EINA_UNUSED, E_Config_Dialog_Data 
*cfdata);
-static Evas_Object *_basic_create(E_Config_Dialog *cfd, Evas *evas, 
E_Config_Dialog_Data *cfdata);
-static int _basic_apply(E_Config_Dialog *cfd EINA_UNUSED, E_Config_Dialog_Data 
*cfdata);
-static int _basic_check(E_Config_Dialog *cfd EINA_UNUSED, E_Config_Dialog_Data 
*cfdata);
-
-static void _randr_cb_changed(void *data, Evas_Object *obj, void *event 
EINA_UNUSED);
-
-/* public functions */
-E_Config_Dialog *
-e_int_config_randr(Evas_Object *parent EINA_UNUSED, const char *params 
EINA_UNUSED)
-{
-   E_Config_Dialog *cfd;
-   E_Config_Dialog_View *v;
-
-   /* check for existing dialog */
-   if (e_config_dialog_find("E", "screen/screen_setup"))
- return NULL;
-
-   /* try to allocate dialog view */
-   if (!(v = E_NEW(E_Config_Dialog_View, 1)))
- return NULL;
-
-   /* set dialog view functions & properties */
-   v->create_cfdata = _create_data;
-   v->free_cfdata = _free_data;
-   v->basic.create_widgets = _basic_create;
-   v->basic.apply_cfdata = _basic_apply;
-   v->basic.check_changed = _basic_check;
-   v->override_auto_apply = EINA_TRUE;
-
-   /* create new dialog */
-   cfd = e_config_dialog_new(NULL, _("Screen Setup"), 
- "E", "screen/screen_setup",
- "preferences-system-screen-resolution", 
- 0, v, NULL);
-
-   return cfd;
-}
-
-/* local functions */
-static void *
-_create_data(E_Config_Dialog *cfd EINA_UNUSED)
-{
-   E_Config_Dialog_Data *cfdata;
-
-   /* try to allocate the config data structure */
-   if (!(cfdata = E_NEW(E_Config_Dialog_Data, 1)))
- return NULL;
-
-   cfdata->restore = e_randr_cfg->restore;
-   cfdata->primary = e_randr_cfg->primary;
-
-   return cfdata;
-}
-
-static void 
-_free_data(E_Config_Dialog *cfd EINA_UNUSED, E_Config_Dialog_Data *cfdata)
-{
-   /* if we have the randr smart widget, delete it */
-   if (cfdata->o_randr)
- {
-/* delete the randr object */
-evas_object_del(cfdata->o_randr);
- }
-
-   /* free the config data structure */
-   E_FREE(cfdata);
-}
-
-static Evas_Object *
-_basic_create(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata)
-{
-   Evas_Object *o;
-   Evas_Object *ow;
-   Evas_Coord mw = 0, mh = 0, ch = 0, fh = 0;
-   Eina_List *l, *monitors = NULL;
-
-   /* create the base list widget */
-   o = e_widget_list_add(evas, 0, 0);
-
-   /* try to create randr smart widget */
-   if ((cfdata->o_randr = e_smart_randr_add(evas)))
- {
-/* hook into randr widget changed callback */
-evas_object_smart_callback_add(cfdata->o_randr, "randr_changed", 
-   _randr_cb_changed, cfd);
-
-/* tell randr widget to calculate virtual size */
-e_smart_randr_virtual_size_calc(cfdata->o_randr);
-
-/* tell randr widget to create monitors */
-e_smart_randr_monitors_create(cfdata->o_randr);
-
-/* append randr widget to list object */
-e_widget_list_object_append(o, cfdata->o_randr, 1, 1, 0.5);
-
-/* ask randr widget to calculate min size */
-e_smart_randr_min_size_get(cfdata->o_randr, &mw, &mh);
- }
-
-   monitors = e_smart_randr_monitors_get(cfdata->o_randr);
-   if (eina_list_count(monitors) > 1)
- {
-E_Radio_Group *rg;
-Evas_Object *mon, *of;
-
-of = e_widget_framelist_add(evas, _("Primary Output"), 0);
-rg = e_widget_radio_group_new(&(cfdata->primary));
-EINA_LIST_FOREACH(monitors, l, mon)
-  {
- int output;
- const char *name;
-
- name = e_smart_monitor_name

[EGIT] [core/enlightenment] master 13/28: break out comp_x gl/sw canvas creation into external function

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

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

commit 8c6ec83e43ace7d5e94be384a939dd88ed26f861
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 18:09:35 2015 -0400

break out comp_x gl/sw canvas creation into external function
---
 src/bin/e_comp_x.c   | 85 ++--
 src/bin/e_comp_x_randr.c | 91 
 src/bin/e_comp_x_randr.h |  2 ++
 3 files changed, 95 insertions(+), 83 deletions(-)

diff --git a/src/bin/e_comp_x.c b/src/bin/e_comp_x.c
index 2e5a5ca..4990d63 100644
--- a/src/bin/e_comp_x.c
+++ b/src/bin/e_comp_x.c
@@ -4532,15 +4532,6 @@ _e_comp_x_cb_frame_extents_request(void *data 
EINA_UNUSED, int ev_type EINA_UNUS
return ECORE_CALLBACK_RENEW;
 }
 
-static void
-_e_comp_x_pre_swap(void *data EINA_UNUSED, Evas *e EINA_UNUSED)
-{
-   if (!e_comp_config_get()->grab) return;
-   if (!e_comp->grabbed) return;
-   ecore_x_ungrab();
-   e_comp->grabbed = 0;
-}
-
 static int
 _e_comp_x_cinerama_screen_sort_cb(const void *data1, const void *data2)
 {
@@ -4907,18 +4898,6 @@ _e_comp_x_bindings_ungrab_cb(void)
  }
 }
 
-static void
-_e_comp_x_grab_cb(void)
-{
-   if (!e_comp->grabbed)
- {
-ecore_x_grab();
-ecore_x_sync();
- }
-   else
- ecore_x_ungrab();
-}
-
 static Eina_Bool
 _e_comp_x_desklock_key_down(void *d EINA_UNUSED, int t EINA_UNUSED, 
Ecore_Event_Key *ev)
 {
@@ -5047,62 +5026,8 @@ _e_comp_x_setup(Ecore_X_Window root, int w, int h)
 
e_alert_composite_win(root, e_comp->win);
 
-   if (e_comp_gl_get() && (e_comp_config_get()->engine == E_COMP_ENGINE_GL))
- {
-int opt[20];
-int opt_i = 0;
-
-if (e_comp_config_get()->indirect)
-  {
- opt[opt_i] = ECORE_EVAS_GL_X11_OPT_INDIRECT;
- opt_i++;
- opt[opt_i] = 1;
- opt_i++;
-  }
-if (e_comp_config_get()->vsync)
-  {
- opt[opt_i] = ECORE_EVAS_GL_X11_OPT_VSYNC;
- opt_i++;
- opt[opt_i] = 1;
- opt_i++;
-  }
-#ifdef ECORE_EVAS_GL_X11_OPT_SWAP_MODE
-if (e_comp_config_get()->swap_mode)
-  {
- opt[opt_i] = ECORE_EVAS_GL_X11_OPT_SWAP_MODE;
- opt_i++;
- opt[opt_i] = e_comp_config_get()->swap_mode;
- opt_i++;
-  }
-#endif
-if (opt_i > 0)
-  {
- opt[opt_i] = ECORE_EVAS_GL_X11_OPT_NONE;
- e_comp->ee = ecore_evas_gl_x11_options_new(NULL, e_comp->win, 0, 
0, w, h, opt);
-  }
-if (!e_comp->ee)
-  e_comp->ee = ecore_evas_gl_x11_new(NULL, e_comp->win, 0, 0, w, h);
-if (e_comp->ee)
-  {
- e_comp->gl = 1;
- ecore_evas_gl_x11_pre_post_swap_callback_set(e_comp->ee, e_comp, 
_e_comp_x_pre_swap, NULL);
-  }
- }
-   if (!e_comp->ee)
- {
-e_comp->ee = ecore_evas_software_x11_new(NULL, e_comp->win, 0, 0, w, 
h);
-if (e_comp_config_get()->engine == E_COMP_ENGINE_GL)
-  ecore_job_add(_e_comp_x_add_fail_job, NULL);
-e_comp_gl_set(0);
-// tell elm and all elm apps to not allow acceleration since comp
-// can't do it (or doesn't want to), so this may cause issues in
-// gl drivers etc. - this addresses a vbox crash bug with vm
-// opengl acceleration
-elm_config_accel_preference_set("none");
-elm_config_accel_preference_override_set(EINA_TRUE);
-elm_config_all_flush();
-elm_config_save();
- }
+   if (!e_comp_x_randr_canvas_new(e_comp->win, w, h))
+ ecore_job_add(_e_comp_x_add_fail_job, NULL);
 
ecore_x_composite_redirect_subwindows(root, 
ECORE_X_COMPOSITE_UPDATE_MANUAL);
 
@@ -5115,7 +5040,6 @@ _e_comp_x_setup(Ecore_X_Window root, int w, int h)
 
ecore_evas_callback_resize_set(e_comp->ee, _e_comp_x_ee_resize);
ecore_evas_data_set(e_comp->ee, "comp", e_comp);
-   e_comp->grab_cb = _e_comp_x_grab_cb;
e_comp->bindings_grab_cb = _e_comp_x_bindings_grab_cb;
e_comp->bindings_ungrab_cb = _e_comp_x_bindings_ungrab_cb;
 
@@ -5235,11 +5159,6 @@ e_comp_x_init(void)
 return EINA_FALSE;
  }
 
-   if (!getenv("ECORE_X_NO_XLIB"))
- {
-if (ecore_evas_engine_type_supported_get(ECORE_EVAS_ENGINE_OPENGL_X11))
-  e_comp_gl_set(EINA_TRUE);
- }
ecore_x_screensaver_event_listen_set(1);
 
clients_win_hash = eina_hash_int32_new(NULL);
diff --git a/src/bin/e_comp_x_randr.c b/src/bin/e_comp_x_randr.c
index eeb73c5..b0a6460 100644
--- a/src/bin/e_comp_x_randr.c
+++ b/src/bin/e_comp_x_randr.c
@@ -1,4 +1,5 @@
 #include "e.h"
+#include 
 
 static char *_output_screen_get(Ecore_X_Window root, Ecore_X_Randr_Output o);
 static Ecore_X_Randr_Edid_Display_Interface_Type 
_output_conn_type_get(Ecore_X_Window root, Ecore_X_Randr_Output o);
@@ -15,6 +16,27 @@ static Ecore_X_Randr_Mode _mode_s

[EGIT] [core/enlightenment] master 25/28: move canvas init after wl init in output modules

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

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

commit 1eb6bb20b343a0e78a7e992cf6396b2cc4c27398
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 19:27:36 2015 -0400

move canvas init after wl init in output modules

ensure that randr screens have been created
---
 src/modules/wl_drm/e_mod_main.c | 4 +---
 src/modules/wl_fb/e_mod_main.c  | 2 +-
 src/modules/wl_x11/e_mod_main.c | 5 +
 3 files changed, 3 insertions(+), 8 deletions(-)

diff --git a/src/modules/wl_drm/e_mod_main.c b/src/modules/wl_drm/e_mod_main.c
index 3547882..8096331 100644
--- a/src/modules/wl_drm/e_mod_main.c
+++ b/src/modules/wl_drm/e_mod_main.c
@@ -143,10 +143,8 @@ e_modapi_init(E_Module *m)
 e_xinerama_screens_set(eina_list_append(NULL, screen));
  }
 
-   if (!e_comp_canvas_init(w, h)) return NULL;
-
-   /* NB: This needs to be called AFTER the comp canvas has been setup */
if (!e_comp_wl_init()) return NULL;
+   if (!e_comp_canvas_init(w, h)) return NULL;
 
ecore_evas_pointer_xy_get(e_comp->ee, &e_comp->wl_comp_data->ptr.x,
  &e_comp->wl_comp_data->ptr.y);
diff --git a/src/modules/wl_fb/e_mod_main.c b/src/modules/wl_fb/e_mod_main.c
index 406dbe1..c64db83 100644
--- a/src/modules/wl_fb/e_mod_main.c
+++ b/src/modules/wl_fb/e_mod_main.c
@@ -35,8 +35,8 @@ e_modapi_init(E_Module *m)
 screen->h = h;
 e_xinerama_screens_set(eina_list_append(NULL, screen));
  }
-   e_comp_canvas_init(w, h);
e_comp_wl_init();
+   e_comp_canvas_init(w, h);
e_comp->pointer = e_pointer_canvas_new(e_comp->ee, EINA_TRUE);
 
ecore_wl_init(NULL);
diff --git a/src/modules/wl_x11/e_mod_main.c b/src/modules/wl_x11/e_mod_main.c
index 7c1434b..78da253 100644
--- a/src/modules/wl_x11/e_mod_main.c
+++ b/src/modules/wl_x11/e_mod_main.c
@@ -80,12 +80,9 @@ e_modapi_init(E_Module *m)
 
ecore_evas_screen_geometry_get(e_comp->ee, NULL, NULL, &w, &h);
 
-   if (!e_comp_canvas_init(w, h)) return NULL;
-
e_comp_x_randr_screen_iface_set();
-   /* NB: This needs to be called AFTER comp_canvas has been setup as it 
-* makes reference to the e_comp->evas */
if (!e_comp_wl_init()) return NULL;
+   if (!e_comp_canvas_init(w, h)) return NULL;
 
e_comp_wl_input_pointer_enabled_set(e_comp->wl_comp_data, EINA_TRUE);
e_comp_wl_input_keyboard_enabled_set(e_comp->wl_comp_data, EINA_TRUE);

-- 




[EGIT] [core/enlightenment] master 21/28: enable conf_randr module unconditionally by default

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

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

commit f104ceb9229b66893faa7251d26c6bfd54088520
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 18:28:33 2015 -0400

enable conf_randr module unconditionally by default

this no longer uses/requires ecore-x
---
 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/configure.ac b/configure.ac
index b8752da..6b7afda 100644
--- a/configure.ac
+++ b/configure.ac
@@ -943,7 +943,7 @@ AC_E_OPTIONAL_MODULE([lokker], true)
 AC_E_OPTIONAL_MODULE([shot], true, $ecore_x)
 AC_E_OPTIONAL_MODULE([backlight], true)
 AC_E_OPTIONAL_MODULE([tasks], true)
-AC_E_OPTIONAL_MODULE([conf_randr], true, $ecore_x)
+AC_E_OPTIONAL_MODULE([conf_randr], true)
 AC_E_OPTIONAL_MODULE([xkbswitch], true, $ecore_x)
 AC_E_OPTIONAL_MODULE([tiling], true)
 #AC_E_OPTIONAL_MODULE([access], false, $ecore_x)

-- 




[EGIT] [core/enlightenment] master 15/28: add a small screen management interface to E_Comp, remove hardcoded x11 randr calls

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

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

commit a4ea6e7f23959954f5eaa1b3254165f8fb27319c
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 18:14:55 2015 -0400

add a small screen management interface to E_Comp, remove hardcoded x11 
randr calls

this interface is extremely basic and should allow easy additions for other 
display
backends
---
 src/bin/e_comp.h | 16 
 src/bin/e_comp_x.c   |  1 +
 src/bin/e_comp_x_randr.c | 16 
 src/bin/e_comp_x_randr.h |  1 +
 src/bin/e_includes.h |  4 ++--
 src/bin/e_randr2.c   | 18 ++
 6 files changed, 46 insertions(+), 10 deletions(-)

diff --git a/src/bin/e_comp.h b/src/bin/e_comp.h
index fcf79e6..dbab276 100644
--- a/src/bin/e_comp.h
+++ b/src/bin/e_comp.h
@@ -57,6 +57,20 @@ extern EAPI int E_EVENT_COMPOSITOR_ENABLE;
 
 typedef void (*E_Comp_Grab_Cb)(void);
 
+typedef struct E_Comp_Screen_Iface
+{
+   /* can screen changes be made at all */
+   Eina_Bool (*available)(void);
+   /* begin listening for screen events */
+   void (*init)(void);
+   /* stop listening for screen events */
+   void (*shutdown)(void);
+   /* gather screen info */
+   E_Randr2 *(*create)(void);
+   /* apply current config */
+   void (*apply)(void);
+} E_Comp_Screen_Iface;
+
 struct _E_Comp
 {
E_Object e_obj_inherit;
@@ -98,6 +112,8 @@ struct _E_Comp
   void *data;
} autoclose;
 
+   E_Comp_Screen_Iface *screen;
+
Eina_List *debug_rects;
Eina_List *ignore_wins;
 
diff --git a/src/bin/e_comp_x.c b/src/bin/e_comp_x.c
index 4990d63..fcb06e6 100644
--- a/src/bin/e_comp_x.c
+++ b/src/bin/e_comp_x.c
@@ -4559,6 +4559,7 @@ _e_comp_x_xinerama_setup(int rw, int rh)
E_Randr2_Screen *s, *s2, *s_chosen;
Eina_Bool removed;
 
+   e_comp_x_randr_screen_iface_set();
if (!e_randr2_init()) return 0;
 
// put screens in tmp list
diff --git a/src/bin/e_comp_x_randr.c b/src/bin/e_comp_x_randr.c
index b0a6460..a0ca058 100644
--- a/src/bin/e_comp_x_randr.c
+++ b/src/bin/e_comp_x_randr.c
@@ -15,6 +15,14 @@ static Ecore_X_Randr_Mode _mode_screen_find(Ecore_X_Window 
root, E_Randr2_Screen
 
 static Eina_List *handlers;
 
+E_Comp_Screen_Iface xiface =
+{
+   .available = e_comp_x_randr_available,
+   .init = e_comp_x_randr_init,
+   .shutdown = e_comp_x_randr_shutdown,
+   .create = e_comp_x_randr_create,
+   .apply = e_comp_x_randr_config_apply
+};
 
 static void
 _e_comp_x_randr_pre_swap(void *data EINA_UNUSED, Evas *e EINA_UNUSED)
@@ -818,6 +826,14 @@ e_comp_x_randr_create(void)
return r;
 }
 
+EAPI void
+e_comp_x_randr_screen_iface_set(void)
+{
+   if (e_comp->screen)
+ CRI("CANNOT SET XIFACE; IFACE ALREADY EXISTS!");
+   e_comp->screen = &xiface;
+}
+
 EAPI Eina_Bool
 e_comp_x_randr_canvas_new(Ecore_Window parent, int w, int h)
 {
diff --git a/src/bin/e_comp_x_randr.h b/src/bin/e_comp_x_randr.h
index 9b3812c..84932d6 100644
--- a/src/bin/e_comp_x_randr.h
+++ b/src/bin/e_comp_x_randr.h
@@ -7,5 +7,6 @@ EAPI void e_comp_x_randr_config_apply(void);
 EAPI Eina_Bool e_comp_x_randr_available(void);
 EAPI E_Randr2 *e_comp_x_randr_create(void);
 
+EAPI void e_comp_x_randr_screen_iface_set(void);
 EAPI Eina_Bool e_comp_x_randr_canvas_new(Ecore_Window parent, int w, int h);
 #endif
diff --git a/src/bin/e_includes.h b/src/bin/e_includes.h
index 0e68417..ccdaa2a 100644
--- a/src/bin/e_includes.h
+++ b/src/bin/e_includes.h
@@ -7,10 +7,9 @@
 #include "e_zone.h"
 #include "e_desk.h"
 #include "e_auth.h"
+#include "e_randr2.h"
 #ifdef NEED_X
 # include "e_comp_x.h"
-# include "e_randr2.h"
-# include "e_comp_x_randr.h"
 #endif
 #include "e_pixmap.h"
 #include "e_comp_object.h"
@@ -149,6 +148,7 @@
 #include "e_comp_canvas.h"
 #include "e_utils.h"
 #include "e_hints.h"
+#include "e_comp_x_randr.h"
 
 #if defined(HAVE_WAYLAND_CLIENTS) || defined(HAVE_WAYLAND_ONLY)
 # include "e_comp_wl.h"
diff --git a/src/bin/e_randr2.c b/src/bin/e_randr2.c
index e25d30f..1c2e438 100644
--- a/src/bin/e_randr2.c
+++ b/src/bin/e_randr2.c
@@ -45,7 +45,7 @@ EINTERN Eina_Bool
 e_randr2_init(void)
 {
if (!E_EVENT_RANDR_CHANGE) E_EVENT_RANDR_CHANGE = ecore_event_type_new();
-   if (!e_comp_x_randr_available()) return EINA_FALSE;
+   if ((!e_comp->screen) || (!e_comp->screen->available) || 
(!e_comp->screen->available())) return EINA_FALSE;
// create data descriptors for config storage
_e_randr2_cfg_screen_edd =
  E_CONFIG_DD_NEW("E_Config_Randr2_Screen", E_Config_Randr2_Screen);
@@ -76,9 +76,10 @@ e_randr2_init(void)
E_CONFIG_VAL(D, T, ignore_acpi_events, UCHAR);
 
// set up events from the driver
-   e_comp_x_randr_init();
+   if (e_comp->screen->init)
+ e_comp->screen->init();
// get current screen info
-   e_randr2 = e_comp_x_randr_create();
+   e_randr2 = e_comp->screen->create();
// from screen info calculate screen max dimensions
_screen_config_maxsize();
// load config and apply it

[EGIT] [core/enlightenment] master 14/28: create wl-x11 canvas using comp_x canvas creation method

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

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

commit c9ff3b1434c38927d9fee8d671abb599ba2a6509
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 18:12:22 2015 -0400

create wl-x11 canvas using comp_x canvas creation method
---
 src/modules/wl_x11/e_mod_main.c | 6 ++
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/src/modules/wl_x11/e_mod_main.c b/src/modules/wl_x11/e_mod_main.c
index 8efd490..2d298b1 100644
--- a/src/modules/wl_x11/e_mod_main.c
+++ b/src/modules/wl_x11/e_mod_main.c
@@ -65,21 +65,19 @@ _cb_keymap_changed(void *data, int type EINA_UNUSED, void 
*event EINA_UNUSED)
 EAPI void *
 e_modapi_init(E_Module *m)
 {
-   Ecore_Evas *ee;
E_Screen *screen;
int w = 0, h = 0;
 
printf("LOAD WL_X11 MODULE\n");
 
-   ee = ecore_evas_software_x11_new(NULL, 0, 0, 0, 1, 1);
-   ecore_evas_callback_delete_request_set(ee, _cb_delete_request);
+   e_comp_x_randr_canvas_new(ecore_x_window_root_first_get(), 1, 1);
 
-   e_comp->ee = ee;
if (!e_comp->ee)
  {
 ERR("Could not create ecore_evas canvas");
 return NULL;
  }
+   ecore_evas_callback_delete_request_set(e_comp->ee, _cb_delete_request);
 
ecore_evas_screen_geometry_get(e_comp->ee, NULL, NULL, &w, &h);
 

-- 




[EGIT] [core/enlightenment] master 23/28: resize comp canvas on e_comp_canvas_init()

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

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

commit e64998b042591ce7db5436e9f092cfc674f585d0
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 19:16:32 2015 -0400

resize comp canvas on e_comp_canvas_init()

remove unnecessary call in wl drm output module
---
 src/bin/e_comp_canvas.c | 1 +
 src/modules/wl_drm/e_mod_main.c | 3 ---
 2 files changed, 1 insertion(+), 3 deletions(-)

diff --git a/src/bin/e_comp_canvas.c b/src/bin/e_comp_canvas.c
index 18ced73..f23440e 100644
--- a/src/bin/e_comp_canvas.c
+++ b/src/bin/e_comp_canvas.c
@@ -187,6 +187,7 @@ e_comp_canvas_init(int w, int h)
e_comp->evas = ecore_evas_get(e_comp->ee);
e_comp->w = w;
e_comp->h = h;
+   ecore_evas_resize(e_comp->ee, w, h);
 
if (e_first_frame)
  evas_event_callback_add(e_comp->evas, EVAS_CALLBACK_RENDER_POST, 
_e_comp_canvas_cb_first_frame, NULL);
diff --git a/src/modules/wl_drm/e_mod_main.c b/src/modules/wl_drm/e_mod_main.c
index e6f1691..3547882 100644
--- a/src/modules/wl_drm/e_mod_main.c
+++ b/src/modules/wl_drm/e_mod_main.c
@@ -128,9 +128,6 @@ e_modapi_init(E_Module *m)
/* get the current screen geometry */
ecore_evas_screen_geometry_get(e_comp->ee, NULL, NULL, &w, &h);
 
-   /* resize the canvas */
-   ecore_evas_resize(e_comp->ee, w, h);
-
ecore_evas_callback_resize_set(e_comp->ee, _e_mod_drm_cb_ee_resize);
 
if (!e_xinerama_fake_screens_exist())

-- 




[EGIT] [core/enlightenment] master 08/28: always register E_EVENT_RANDR_CHANGE

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

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

commit e383b5b55af206183bb0c16e3be3a52573a1502b
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 17:01:53 2015 -0400

always register E_EVENT_RANDR_CHANGE

failing to register this will cause event handlers for it to fail
on creation
---
 src/bin/e_randr2.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/e_randr2.c b/src/bin/e_randr2.c
index 4b16194..e25d30f 100644
--- a/src/bin/e_randr2.c
+++ b/src/bin/e_randr2.c
@@ -44,6 +44,7 @@ EAPI int  E_EVENT_RANDR_CHANGE = 0;
 EINTERN Eina_Bool
 e_randr2_init(void)
 {
+   if (!E_EVENT_RANDR_CHANGE) E_EVENT_RANDR_CHANGE = ecore_event_type_new();
if (!e_comp_x_randr_available()) return EINA_FALSE;
// create data descriptors for config storage
_e_randr2_cfg_screen_edd =
@@ -74,7 +75,6 @@ e_randr2_init(void)
E_CONFIG_VAL(D, T, ignore_hotplug_events, UCHAR);
E_CONFIG_VAL(D, T, ignore_acpi_events, UCHAR);
 
-   if (!E_EVENT_RANDR_CHANGE) E_EVENT_RANDR_CHANGE = ecore_event_type_new();
// set up events from the driver
e_comp_x_randr_init();
// get current screen info

-- 




[EGIT] [core/enlightenment] master 05/28: move all x11-related randr code into e_comp_x_randr.c

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

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

commit 881e0ab80527a2b0de40de8e95334259c62c627f
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 16:16:05 2015 -0400

move all x11-related randr code into e_comp_x_randr.c
---
 src/bin/Makefile.mk  |2 +
 src/bin/{e_randr2.c => e_comp_x_randr.c} | 1415 ++
 src/bin/e_comp_x_randr.h |9 +
 src/bin/e_includes.h |1 +
 src/bin/e_randr2.c   |  824 +
 5 files changed, 287 insertions(+), 1964 deletions(-)

diff --git a/src/bin/Makefile.mk b/src/bin/Makefile.mk
index ecc6f7b..0266f21 100644
--- a/src/bin/Makefile.mk
+++ b/src/bin/Makefile.mk
@@ -59,6 +59,7 @@ src/bin/e_comp_canvas.h \
 src/bin/e_comp_cfdata.h \
 src/bin/e_comp_object.h \
 src/bin/e_comp_x.h \
+src/bin/e_comp_x_randr.h \
 src/bin/e_config_data.h \
 src/bin/e_config_dialog.h \
 src/bin/e_config.h \
@@ -358,6 +359,7 @@ $(ENLIGHTENMENTHEADERS)
 if ! HAVE_WAYLAND_ONLY
 enlightenment_src += \
 src/bin/e_comp_x.c \
+src/bin/e_comp_x_randr.c \
 src/bin/e_alert.c \
 src/bin/e_randr2.c \
 src/bin/e_xsettings.c
diff --git a/src/bin/e_randr2.c b/src/bin/e_comp_x_randr.c
similarity index 52%
copy from src/bin/e_randr2.c
copy to src/bin/e_comp_x_randr.c
index c2d2f78..eeb73c5 100644
--- a/src/bin/e_randr2.c
+++ b/src/bin/e_comp_x_randr.c
@@ -1,909 +1,19 @@
 #include "e.h"
 
-#define E_RANDR_CONFIG_VERSION 1
-
-/
-static Eina_Bool   _screen_closed(E_Randr2_Screen *s);
-static void_animated_apply_abort(void);
-static Eina_Bool   _cb_delay_timer(void *data);
-static Eina_Bool   _cb_fade_animator(void *data);
-static void_animated_apply(void);
-static void_do_apply(void);
-static void_info_free(E_Randr2 *r);
-static E_Config_Randr2*_config_load(void);
-static void_config_free(E_Config_Randr2 *cfg);
-static Eina_Bool   _config_save(E_Randr2 *r, E_Config_Randr2 *cfg);
-static void_config_update(E_Randr2 *r, E_Config_Randr2 
*cfg);
-static void_config_apply(E_Randr2 *r, E_Config_Randr2 
*cfg);
-static int _config_screen_match_count(E_Randr2 *r, 
E_Config_Randr2 *cfg);
-static char   *_screens_fingerprint(E_Randr2 *r);
-static Eina_Bool   _screens_differ(E_Randr2 *r1, E_Randr2 *r2);
-static Eina_Bool   _cb_screen_change_delay(void *data);
-static E_Randr2_Screen*_screen_output_find(const char *out);
-static E_Randr2_Screen*_screen_id_find(const char *id);
-static void_screen_config_takeover(void);
-static void_screen_config_do(E_Randr2_Screen *s);
-static void_screen_config_eval(void);
-static void_screen_config_maxsize(void);
-
-/
-static E_Config_DD   *_e_randr2_cfg_edd = NULL;
-static E_Config_DD   *_e_randr2_cfg_screen_edd = NULL;
-static Eina_List *_ev_handlers = NULL;
-static Ecore_Timer   *_screen_delay_timer = NULL;
-static Eina_Bool  event_screen = EINA_FALSE;
-static Eina_Bool  event_ignore = EINA_FALSE;
-
-/
-EAPI E_Config_Randr2 *e_randr2_cfg = NULL;
-EAPI E_Randr2*e_randr2 = NULL;
-
-EAPI int  E_EVENT_RANDR_CHANGE = 0;
-
-/
-// X11 backend
-static Eina_Bool _output_init(void);
-static void _output_shutdown(void);
-static void _output_events_listen(void);
-static void _output_events_unlisten(void);
-static char *_output_screen_get(Ecore_X_Window root, Ecore_X_Randr_Output o);
-static Ecore_X_Randr_Edid_Display_Interface_Type 
_output_conn_type_get(Ecore_X_Window root, Ecore_X_Randr_Output o);
-static char *_output_name_get(Ecore_X_Window root, Ecore_X_Randr_Output o);
-static Eina_Bool _is_lid_name(const char *name);
-static E_Randr2 *_info_get(void);
-static Eina_Bool _cb_screen_change(void *data, int type, void *event);
-static Eina_Bool _cb_crtc_change(void *data, int type, void *event);
-static Eina_Bool _cb_output_change(void *data, int type, void *event);
-static Eina_Bool _output_name_find(Ecore_X_Window root, const char *name, 
Ecore_X_Randr_Output *outputs, int outputs_num, Ecore_X_Randr_Output *out_ret);
-static Eina_Bool _output_exists(Ecore_X_Randr_Output out, 
Ecore_X_Randr_Crtc_Info *info);
-static Eina_Bool _rotation_exists(int rot, Ecore_X_Randr_Crtc_Info *info);
-static Ecore_X_Randr_Mode _mode_screen_find(Ecore_X_Window root, 
E_Randr2_Screen *s, Ecore_X_Randr_Output out);
-static void _screen_config_app

[EGIT] [core/enlightenment] master 12/28: move comp_x randr init to screen init function

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

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

commit 36ea1ba3725fd46bc4dc0713f8b6f6d65420a8e8
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 18:06:26 2015 -0400

move comp_x randr init to screen init function
---
 src/bin/e_comp_x.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/bin/e_comp_x.c b/src/bin/e_comp_x.c
index 569330c..2e5a5ca 100644
--- a/src/bin/e_comp_x.c
+++ b/src/bin/e_comp_x.c
@@ -4568,6 +4568,8 @@ _e_comp_x_xinerama_setup(int rw, int rh)
E_Randr2_Screen *s, *s2, *s_chosen;
Eina_Bool removed;
 
+   if (!e_randr2_init()) return 0;
+
// put screens in tmp list
EINA_LIST_FOREACH(e_randr2->screens, l, s)
  {
@@ -5332,13 +5334,11 @@ e_comp_x_init(void)
e_desklock_show_hook_add(_e_comp_x_desklock_show);
e_desklock_hide_hook_add(_e_comp_x_desklock_hide);
 
-   if (!e_randr2_init()) return 0;
-   E_LIST_HANDLER_APPEND(handlers, E_EVENT_RANDR_CHANGE, 
_e_comp_x_randr_change, NULL);
-
if (!e_atoms_init()) return 0;
if (!_e_comp_x_screens_setup()) return EINA_FALSE;
if (!e_xsettings_init())
  e_error_message_show(_("Enlightenment cannot initialize the XSettings 
system.\n"));
+   E_LIST_HANDLER_APPEND(handlers, E_EVENT_RANDR_CHANGE, 
_e_comp_x_randr_change, NULL);
 
ecore_x_sync();
 

-- 




[EGIT] [core/enlightenment] master 17/28: use randr for screen setup in wl-x11 output module

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

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

commit 15540c01e41a9a2dc3d8caad9943fa4979f43248
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 18:18:39 2015 -0400

use randr for screen setup in wl-x11 output module

enabling this module requires that e is linked against ecore-x to
allow screen management
---
 src/bin/Makefile.mk |  5 +
 src/modules/wl_x11/e_mod_main.c | 13 +
 2 files changed, 6 insertions(+), 12 deletions(-)

diff --git a/src/bin/Makefile.mk b/src/bin/Makefile.mk
index 8fe0706..3917170 100644
--- a/src/bin/Makefile.mk
+++ b/src/bin/Makefile.mk
@@ -363,6 +363,11 @@ src/bin/e_comp_x.c \
 src/bin/e_comp_x_randr.c \
 src/bin/e_alert.c \
 src/bin/e_xsettings.c
+else
+if USE_MODULE_WL_X11
+enlightenment_src += \
+src/bin/e_comp_x_randr.c
+endif
 endif
 
 if HAVE_WAYLAND
diff --git a/src/modules/wl_x11/e_mod_main.c b/src/modules/wl_x11/e_mod_main.c
index 2d298b1..7c1434b 100644
--- a/src/modules/wl_x11/e_mod_main.c
+++ b/src/modules/wl_x11/e_mod_main.c
@@ -65,7 +65,6 @@ _cb_keymap_changed(void *data, int type EINA_UNUSED, void 
*event EINA_UNUSED)
 EAPI void *
 e_modapi_init(E_Module *m)
 {
-   E_Screen *screen;
int w = 0, h = 0;
 
printf("LOAD WL_X11 MODULE\n");
@@ -81,19 +80,9 @@ e_modapi_init(E_Module *m)
 
ecore_evas_screen_geometry_get(e_comp->ee, NULL, NULL, &w, &h);
 
-   if (!e_xinerama_fake_screens_exist())
- {
-screen = E_NEW(E_Screen, 1);
-screen->escreen = screen->screen = 0;
-screen->x = 0;
-screen->y = 0;
-screen->w = w;
-screen->h = h;
-e_xinerama_screens_set(eina_list_append(NULL, screen));
- }
-
if (!e_comp_canvas_init(w, h)) return NULL;
 
+   e_comp_x_randr_screen_iface_set();
/* NB: This needs to be called AFTER comp_canvas has been setup as it 
 * makes reference to the e_comp->evas */
if (!e_comp_wl_init()) return NULL;

-- 




[EGIT] [core/enlightenment] master 16/28: always add e_randr2.c to e build

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

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

commit 89ae59b40756568b13c11a0f8271a21d257c61f0
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 18:18:01 2015 -0400

always add e_randr2.c to e build

randr no longer requires x11
---
 src/bin/Makefile.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/Makefile.mk b/src/bin/Makefile.mk
index f8ade10..8fe0706 100644
--- a/src/bin/Makefile.mk
+++ b/src/bin/Makefile.mk
@@ -300,6 +300,7 @@ src/bin/e_place.c \
 src/bin/e_pointer.c \
 src/bin/e_powersave.c \
 src/bin/e_prefix.c \
+src/bin/e_randr2.c \
 src/bin/e_remember.c \
 src/bin/e_resist.c \
 src/bin/e_scale.c \
@@ -361,7 +362,6 @@ enlightenment_src += \
 src/bin/e_comp_x.c \
 src/bin/e_comp_x_randr.c \
 src/bin/e_alert.c \
-src/bin/e_randr2.c \
 src/bin/e_xsettings.c
 endif
 

-- 




[EGIT] [core/enlightenment] master 04/28: _config_screen_find() -> e_randr2_config_screen_find()

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

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

commit 7104e637ef85df18b233221cc1b7fc9cbc4afb40
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 16:07:58 2015 -0400

_config_screen_find() -> e_randr2_config_screen_find()
---
 src/bin/e_randr2.c | 39 +++
 src/bin/e_randr2.h |  1 +
 2 files changed, 20 insertions(+), 20 deletions(-)

diff --git a/src/bin/e_randr2.c b/src/bin/e_randr2.c
index f64e1d2..c2d2f78 100644
--- a/src/bin/e_randr2.c
+++ b/src/bin/e_randr2.c
@@ -15,7 +15,6 @@ static void_config_free(E_Config_Randr2 
*cfg);
 static Eina_Bool   _config_save(E_Randr2 *r, E_Config_Randr2 *cfg);
 static void_config_update(E_Randr2 *r, E_Config_Randr2 
*cfg);
 static void_config_apply(E_Randr2 *r, E_Config_Randr2 
*cfg);
-static E_Config_Randr2_Screen *_config_screen_find(E_Randr2_Screen *s, 
E_Config_Randr2 *cfg);
 static int _config_screen_match_count(E_Randr2 *r, 
E_Config_Randr2 *cfg);
 static char   *_screens_fingerprint(E_Randr2 *r);
 static Eina_Bool   _screens_differ(E_Randr2 *r1, E_Randr2 *r2);
@@ -363,7 +362,7 @@ _config_update(E_Randr2 *r, E_Config_Randr2 *cfg)
  {
 printf("RRR: out id=%s:  connected=%i\n", s->id, s->info.connected);
 if ((!s->id) || (!s->info.connected) || (_screen_closed(s))) continue;
-cs = _config_screen_find(s, cfg);
+cs = e_randr2_config_screen_find(s, cfg);
 if (!cs)
   {
  cs = calloc(1, sizeof(E_Config_Randr2_Screen));
@@ -403,7 +402,7 @@ _config_apply(E_Randr2 *r, E_Config_Randr2 *cfg)
 printf("RRR: apply '%s'...\n", s->info.name);
 cs = NULL;
 if ((!_screen_closed(s)) && (s->info.connected))
-  cs = _config_screen_find(s, cfg);
+  cs = e_randr2_config_screen_find(s, cfg);
 printf("RRR: connected =  %i\n", s->info.connected);
 if ((cs) && (cs->enabled))
   {
@@ -445,22 +444,6 @@ _config_apply(E_Randr2 *r, E_Config_Randr2 *cfg)
  }
 }
 
-static E_Config_Randr2_Screen *
-_config_screen_find(E_Randr2_Screen *s, E_Config_Randr2 *cfg)
-{
-   Eina_List *l;
-   E_Config_Randr2_Screen *cs;
-
-   if ((!s) || (!cfg)) return NULL;
-   if (!s->id) return NULL;
-   EINA_LIST_FOREACH(cfg->screens, l, cs)
- {
-if (!cs->id) continue;
-if (!strcmp(cs->id, s->id)) return cs;
- }
-   return NULL;
-}
-
 static int
 _config_screen_match_count(E_Randr2 *r, E_Config_Randr2 *cfg)
 {
@@ -1273,7 +1256,7 @@ _info_get(void)
   }
 cs = NULL;
 priority = 0;
-if (e_randr2_cfg) cs = _config_screen_find(s, e_randr2_cfg);
+if (e_randr2_cfg) cs = e_randr2_config_screen_find(s, e_randr2_cfg);
 if (cs)
   priority = cs->priority;
 else if (ecore_x_randr_primary_output_get(root) == outputs[i])
@@ -1677,3 +1660,19 @@ e_randr2_screen_refresh_queue(Eina_Bool lid_event)
  _screen_delay_timer = ecore_timer_add(1.0, _cb_screen_change_delay, NULL);
event_screen = !!lid_event;
 }
+
+EAPI E_Config_Randr2_Screen *
+e_randr2_config_screen_find(E_Randr2_Screen *s, E_Config_Randr2 *cfg)
+{
+   Eina_List *l;
+   E_Config_Randr2_Screen *cs;
+
+   if ((!s) || (!cfg)) return NULL;
+   if (!s->id) return NULL;
+   EINA_LIST_FOREACH(cfg->screens, l, cs)
+ {
+if (!cs->id) continue;
+if (!strcmp(cs->id, s->id)) return cs;
+ }
+   return NULL;
+}
diff --git a/src/bin/e_randr2.h b/src/bin/e_randr2.h
index f93762c..727b393 100644
--- a/src/bin/e_randr2.h
+++ b/src/bin/e_randr2.h
@@ -121,5 +121,6 @@ EAPIvoid  e_randr2_config_apply(void);
 EAPIvoid  e_randr2_screeninfo_update(void);
 
 EAPI void e_randr2_screen_refresh_queue(Eina_Bool lid_event);
+EAPI E_Config_Randr2_Screen *e_randr2_config_screen_find(E_Randr2_Screen *s, 
E_Config_Randr2 *cfg);
 #endif
 #endif

-- 




[EGIT] [core/enlightenment] master 24/28: move comp_x screen setup code into e_randr

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

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

commit a452baafca195328e045020456a5411c2b8dbdb6
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 19:24:33 2015 -0400

move comp_x screen setup code into e_randr

this was not x-specific, so move it for use in wl compositors
---
 src/bin/e_comp_wl.c |   3 +-
 src/bin/e_comp_x.c  | 148 +++-
 src/bin/e_randr2.c  | 132 ++
 src/bin/e_randr2.h  |   1 +
 4 files changed, 141 insertions(+), 143 deletions(-)

diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c
index b84781b..33f44c6 100644
--- a/src/bin/e_comp_wl.c
+++ b/src/bin/e_comp_wl.c
@@ -2497,7 +2497,8 @@ e_comp_wl_init(void)
 
/* add event handlers to catch E events */
if (e_comp->comp_type != E_PIXMAP_TYPE_X)
- e_randr2_init();
+ if (e_randr2_init())
+   e_randr2_screens_setup(-1, -1);
 
E_LIST_HANDLER_APPEND(handlers, E_EVENT_RANDR_CHANGE,
 _e_comp_wl_cb_randr_change, NULL);
diff --git a/src/bin/e_comp_x.c b/src/bin/e_comp_x.c
index fcb06e6..e719852 100644
--- a/src/bin/e_comp_x.c
+++ b/src/bin/e_comp_x.c
@@ -4532,139 +4532,6 @@ _e_comp_x_cb_frame_extents_request(void *data 
EINA_UNUSED, int ev_type EINA_UNUS
return ECORE_CALLBACK_RENEW;
 }
 
-static int
-_e_comp_x_cinerama_screen_sort_cb(const void *data1, const void *data2)
-{
-   const E_Randr2_Screen *s1 = data1, *s2 = data2;
-   int dif;
-
-   dif = -(s1->config.priority - s2->config.priority);
-   if (dif == 0)
- {
-dif = s1->config.geom.x - s2->config.geom.x;
-if (dif == 0)
-  dif = s1->config.geom.y - s2->config.geom.y;
- }
-   return dif;
-}
-
-static Eina_Bool
-_e_comp_x_xinerama_setup(int rw, int rh)
-{
-   int i;
-   E_Screen *screen;
-   Eina_List *screens = NULL, *screens_rem;
-   Eina_List *all_screens = NULL;
-   Eina_List *l, *ll;
-   E_Randr2_Screen *s, *s2, *s_chosen;
-   Eina_Bool removed;
-
-   e_comp_x_randr_screen_iface_set();
-   if (!e_randr2_init()) return 0;
-
-   // put screens in tmp list
-   EINA_LIST_FOREACH(e_randr2->screens, l, s)
- {
-if ((s->config.enabled) &&
-(s->config.geom.w > 0) &&
-(s->config.geom.h > 0))
-  {
- screens = eina_list_append(screens, s);
-  }
- }
-   // remove overlapping screens - if a set of screens overlap, keep the
-   // smallest/lowest res
-   do
- {
-removed = EINA_FALSE;
-
-EINA_LIST_FOREACH(screens, l, s)
-  {
- screens_rem = NULL;
-
- EINA_LIST_FOREACH(l->next, ll, s2)
-   {
-  if (E_INTERSECTS(s->config.geom.x, s->config.geom.y,
-   s->config.geom.w, s->config.geom.h,
-   s2->config.geom.x, s2->config.geom.y,
-   s2->config.geom.w, s2->config.geom.h))
-{
-   if (!screens_rem)
- screens_rem = eina_list_append(screens_rem, s);
-   screens_rem = eina_list_append(screens_rem, s2);
-}
-   }
- // we have intersecting screens - choose the lowest res one
- if (screens_rem)
-   {
-  removed = EINA_TRUE;
-  // find the smallest screen (chosen one)
-  s_chosen = NULL;
-  EINA_LIST_FOREACH(screens_rem, ll, s2)
-{
-   if (!s_chosen) s_chosen = s2;
-   else
- {
-if ((s_chosen->config.geom.w *
- s_chosen->config.geom.h) >
-(s2->config.geom.w *
- s2->config.geom.h))
-  s_chosen = s2;
- }
-}
-  // remove all from screens but the chosen one
-  EINA_LIST_FREE(screens_rem, s2)
-{
-   if (s2 != s_chosen)
- screens = eina_list_remove_list(screens, l);
-}
-  // break our list walk and try again
-  break;
-   }
-  }
- }
-   while (removed);
-   // sort screens by priority etc.
-   screens = eina_list_sort(screens, eina_list_count(screens),
-_e_comp_x_cinerama_screen_sort_cb);
-   i = 0;
-   EINA_LIST_FOREACH(screens, l, s)
- {
-screen = E_NEW(E_Screen, 1);
-screen->escreen = screen->screen = i;
-screen->x = s->config.geom.x;
-screen->y = s->config.geom.y;
-screen->w = s->config.geom.w;
-screen->h = s->config.geom.h;
-all_screens = eina_list_a

[EGIT] [core/enlightenment] master 09/28: fix ecore-x cflags/libs inclusion for e binary

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

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

commit df4ada7e7577a26c7d6092c99fac26bd9c95004a
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 17:29:53 2015 -0400

fix ecore-x cflags/libs inclusion for e binary

these variables will always exist
---
 src/bin/Makefile.mk | 9 +++--
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/src/bin/Makefile.mk b/src/bin/Makefile.mk
index 0266f21..f8ade10 100644
--- a/src/bin/Makefile.mk
+++ b/src/bin/Makefile.mk
@@ -373,19 +373,16 @@ src/bin/e_comp_wl_input.c \
 src/bin/e_comp_wl.c
 endif
 
-src_bin_enlightenment_CPPFLAGS = $(E_CPPFLAGS) -DEFL_BETA_API_SUPPORT 
-DEFL_EO_API_SUPPORT -DE_LOGGING=1 @WAYLAND_CFLAGS@ @WAYLAND_EGL_CFLAGS@ 
-DNEED_WL
+src_bin_enlightenment_CPPFLAGS = $(E_CPPFLAGS) -DEFL_BETA_API_SUPPORT 
-DEFL_EO_API_SUPPORT -DE_LOGGING=1 @WAYLAND_CFLAGS@ @WAYLAND_EGL_CFLAGS@ 
@ECORE_X_CFLAGS@
 if ! HAVE_WAYLAND_ONLY
-src_bin_enlightenment_CPPFLAGS += @ECORE_X_CFLAGS@ -DNEED_X=1
+src_bin_enlightenment_CPPFLAGS += -DNEED_X=1
 endif
 src_bin_enlightenment_SOURCES = \
 src/bin/e_main.c \
 $(enlightenment_src)
 
 src_bin_enlightenment_LDFLAGS = -export-dynamic
-src_bin_enlightenment_LDADD = @e_libs@ @dlopen_libs@ @cf_libs@ @VALGRIND_LIBS@ 
@WAYLAND_LIBS@ @WL_DRM_LIBS@ @WAYLAND_EGL_LIBS@ -lm @SHM_OPEN_LIBS@
-if ! HAVE_WAYLAND_ONLY
-src_bin_enlightenment_LDADD += @ECORE_X_LIBS@
-endif
+src_bin_enlightenment_LDADD = @e_libs@ @dlopen_libs@ @cf_libs@ @VALGRIND_LIBS@ 
@WAYLAND_LIBS@ @WL_DRM_LIBS@ @WAYLAND_EGL_LIBS@ -lm @SHM_OPEN_LIBS@ 
@ECORE_X_LIBS@
 
 src_bin_enlightenment_imc_SOURCES = \
 src/bin/e.h \

-- 




[EGIT] [core/enlightenment] master 22/28: fix module blocking for wl modules

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

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

commit 05d87a9b307bf4a9fc5e8b6e48b0fa0fc4fd9a50
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 19:09:19 2015 -0400

fix module blocking for wl modules

these should never be saved to or loaded from the config
---
 src/bin/e_module.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/e_module.c b/src/bin/e_module.c
index 1d2351b..1a33c57 100644
--- a/src/bin/e_module.c
+++ b/src/bin/e_module.c
@@ -241,7 +241,7 @@ e_module_all_load(void)
 if (!em) continue;
 
 if ((!e_util_strcmp(em->name, "comp")) || (!e_util_strcmp(em->name, 
"conf_comp")) ||
-(e_comp && (!strcmp(em->name, "wl_x11"))) //block wl_x11 if we've 
already created a compositor
+(!strncmp(em->name, "wl_", 3)) //block wl_* modules from being 
saved
)
   {
  eina_stringshare_del(em->name);

-- 




[EGIT] [core/enlightenment] master 19/28: init randr during wayland init...always

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

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

commit 4b1925dadf95b40c04738d64b3e766407ce24d53
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 18:20:47 2015 -0400

init randr during wayland init...always
---
 src/bin/e_comp_wl.c | 11 +++
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c
index 0d19ac2..b84781b 100644
--- a/src/bin/e_comp_wl.c
+++ b/src/bin/e_comp_wl.c
@@ -702,7 +702,6 @@ _e_comp_wl_client_evas_init(E_Client *ec)
ec->comp_data->evas_init = EINA_TRUE;
 }
 
-#ifndef HAVE_WAYLAND_ONLY
 static Eina_Bool
 _e_comp_wl_cb_randr_change(void *data EINA_UNUSED, int type EINA_UNUSED, void 
*event EINA_UNUSED)
 {
@@ -743,7 +742,6 @@ _e_comp_wl_cb_randr_change(void *data EINA_UNUSED, int type 
EINA_UNUSED, void *e
 
return ECORE_CALLBACK_RENEW;
 }
-#endif
 
 static Eina_Bool
 _e_comp_wl_cb_comp_object_add(void *data EINA_UNUSED, int type EINA_UNUSED, 
E_Event_Comp_Object *ev)
@@ -2367,9 +2365,7 @@ _e_comp_wl_compositor_create(void)
 goto comp_global_err;
  }
 
-#ifndef HAVE_WAYLAND_ONLY
_e_comp_wl_cb_randr_change(NULL, 0, NULL);
-#endif
 
/* try to init data manager */
if (!e_comp_wl_data_manager_init(cdata))
@@ -2500,12 +2496,11 @@ e_comp_wl_init(void)
/* clients_win_hash = eina_hash_int64_new(NULL); */
 
/* add event handlers to catch E events */
-#ifndef HAVE_WAYLAND_ONLY
-   if (!e_randr2_init()) return EINA_FALSE;
+   if (e_comp->comp_type != E_PIXMAP_TYPE_X)
+ e_randr2_init();
 
E_LIST_HANDLER_APPEND(handlers, E_EVENT_RANDR_CHANGE,
- _e_comp_wl_cb_randr_change, NULL);
-#endif
+_e_comp_wl_cb_randr_change, NULL);
 
E_LIST_HANDLER_APPEND(handlers, E_EVENT_COMP_OBJECT_ADD,
  _e_comp_wl_cb_comp_object_add, NULL);

-- 




[EGIT] [core/enlightenment] master 11/28: ensure valid strings are send when sending wl output geometry

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

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

commit 3ac3e9bc71d13ee33efc19bf8297d85bf5a7466d
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 17:46:43 2015 -0400

ensure valid strings are send when sending wl output geometry
---
 src/bin/e_comp_wl.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c
index 0977a8b..d49ae37 100644
--- a/src/bin/e_comp_wl.c
+++ b/src/bin/e_comp_wl.c
@@ -2288,7 +2288,7 @@ _e_comp_wl_cb_output_bind(struct wl_client *client, void 
*data, uint32_t version
 
wl_output_send_geometry(resource, output->x, output->y,
output->phys_width, output->phys_height,
-   output->subpixel, output->make, output->model,
+   output->subpixel, output->make ?: "", output->model 
?: "",
output->transform);
 
if (version >= WL_OUTPUT_SCALE_SINCE_VERSION)
@@ -2831,7 +2831,7 @@ e_comp_wl_output_init(const char *id, const char *make, 
const char *model,
 output->phys_width,
 output->phys_height,
 output->subpixel,
-output->make, output->model,
+output->make ?: "", output->model ?: "",
 output->transform);
 
 if (wl_resource_get_version(resource) >= WL_OUTPUT_SCALE_SINCE_VERSION)

-- 




[EGIT] [core/enlightenment] master 18/28: change comp type check at start of e_comp_wl_init()

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

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

commit 18c34ed1519e23f623f36e2536d64ceb1d323612
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 18:19:52 2015 -0400

change comp type check at start of e_comp_wl_init()

at present, this value will be set to either TYPE_NONE if no valid
compositor has been created or TYPE_X if running a wl compositor inside
an x11 compositor
---
 src/bin/e_comp_wl.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c
index d49ae37..0d19ac2 100644
--- a/src/bin/e_comp_wl.c
+++ b/src/bin/e_comp_wl.c
@@ -2475,7 +2475,7 @@ disp_err:
 EAPI Eina_Bool
 e_comp_wl_init(void)
 {
-   if (e_comp->comp_type == E_PIXMAP_TYPE_WL)
+   if (e_comp->comp_type != E_PIXMAP_TYPE_X)
  e_comp->root = ecore_evas_window_get(e_comp->ee);
/* set gl available if we have ecore_evas support */
if (ecore_evas_engine_type_supported_get(ECORE_EVAS_ENGINE_WAYLAND_EGL) ||

-- 




[EGIT] [core/enlightenment] master 02/28: move e_randr internal screen changing timer -> e_randr2_screen_refresh_queue()

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

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

commit 853d04592ef600aef718dcbdf1a09e408db07881
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 16:01:48 2015 -0400

move e_randr internal screen changing timer -> 
e_randr2_screen_refresh_queue()
---
 src/bin/e_randr2.c | 41 -
 src/bin/e_randr2.h |  1 +
 2 files changed, 17 insertions(+), 25 deletions(-)

diff --git a/src/bin/e_randr2.c b/src/bin/e_randr2.c
index 3b1c77b..c2b65c7 100644
--- a/src/bin/e_randr2.c
+++ b/src/bin/e_randr2.c
@@ -21,7 +21,6 @@ static char   *_screens_fingerprint(E_Randr2 
*r);
 static Eina_Bool   _screens_differ(E_Randr2 *r1, E_Randr2 *r2);
 static void_cb_acpi_handler_add(void *data);
 static Eina_Bool   _cb_screen_change_delay(void *data);
-static void_screen_change_delay(void);
 static Eina_Bool   _cb_acpi(void *data, int type, void *event);
 static E_Randr2_Screen*_screen_output_find(const char *out);
 static E_Randr2_Screen*_screen_id_find(const char *id);
@@ -603,15 +602,6 @@ _cb_screen_change_delay(void *data EINA_UNUSED)
return EINA_FALSE;
 }
 
-static void
-_screen_change_delay(void)
-{
-   // delay handling of screen shances as they can come in in a series over
-   // time and thus we can batch up responding to them by waiting 1.0 sec
-   if (_screen_delay_timer) ecore_timer_del(_screen_delay_timer);
-   _screen_delay_timer = ecore_timer_add(1.0, _cb_screen_change_delay, NULL);
-}
-
 static Eina_Bool
 _cb_acpi(void *data EINA_UNUSED, int type EINA_UNUSED, void *event)
 {
@@ -625,10 +615,7 @@ _cb_acpi(void *data EINA_UNUSED, int type EINA_UNUSED, 
void *event)
printf("RRR: lid event for lid %i\n", lid_closed);
_lid_is_closed = lid_closed;
if (!e_randr2_cfg->ignore_acpi_events)
- {
-event_screen = EINA_TRUE;
-_screen_change_delay();
- }
+ e_randr2_screen_refresh_queue(EINA_TRUE);
return EINA_TRUE;
 }
 
@@ -1423,10 +1410,7 @@ _cb_screen_change(void *data EINA_UNUSED, int type 
EINA_UNUSED, void *event)
ecore_x_randr_screen_current_size_get(ev->root, NULL, NULL, NULL, NULL);
ecore_x_sync();
if (!e_randr2_cfg->ignore_hotplug_events)
- {
-event_screen = EINA_TRUE;
-_screen_change_delay();
- }
+ e_randr2_screen_refresh_queue(EINA_TRUE);
return EINA_TRUE;
 }
 
@@ -1439,9 +1423,7 @@ _cb_crtc_change(void *data EINA_UNUSED, int type 
EINA_UNUSED, void *event)
ecore_x_randr_screen_current_size_get(ev->win, NULL, NULL, NULL, NULL);
ecore_x_sync();
if (!e_randr2_cfg->ignore_hotplug_events)
- {
-_screen_change_delay();
- }
+ e_randr2_screen_refresh_queue(EINA_FALSE);
return EINA_TRUE;
 }
 
@@ -1454,10 +1436,7 @@ _cb_output_change(void *data EINA_UNUSED, int type 
EINA_UNUSED, void *event)
ecore_x_randr_screen_current_size_get(ev->win, NULL, NULL, NULL, NULL);
ecore_x_sync();
if (!e_randr2_cfg->ignore_hotplug_events)
- {
-event_screen = EINA_TRUE;
-_screen_change_delay();
- }
+ e_randr2_screen_refresh_queue(EINA_TRUE);
return EINA_TRUE;
 }
 
@@ -1722,3 +1701,15 @@ _screen_config_apply(void)
// here if the randr config now doesnt match what we want to set up.
 //   event_ignore = EINA_TRUE;
 }
+
+EAPI void
+e_randr2_screen_refresh_queue(Eina_Bool lid_event)
+{
+   // delay handling of screen shances as they can come in in a series over
+   // time and thus we can batch up responding to them by waiting 1.0 sec
+   if (_screen_delay_timer)
+ ecore_timer_reset(_screen_delay_timer);
+   else
+ _screen_delay_timer = ecore_timer_add(1.0, _cb_screen_change_delay, NULL);
+   event_screen = !!lid_event;
+}
diff --git a/src/bin/e_randr2.h b/src/bin/e_randr2.h
index 41480cc..f93762c 100644
--- a/src/bin/e_randr2.h
+++ b/src/bin/e_randr2.h
@@ -120,5 +120,6 @@ EAPIEina_Bool e_randr2_config_save(void);
 EAPIvoid  e_randr2_config_apply(void);
 EAPIvoid  e_randr2_screeninfo_update(void);
 
+EAPI void e_randr2_screen_refresh_queue(Eina_Bool lid_event);
 #endif
 #endif

-- 




[EGIT] [core/enlightenment] master 07/28: create e_comp during e_comp_init, set comp_type automatically

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

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

commit e1181c4d033e764fb7b4024ad707da588b2f80a6
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 16:58:00 2015 -0400

create e_comp during e_comp_init, set comp_type automatically

this simplifies comp creation slightly
---
 src/bin/e_comp.c| 16 +---
 src/bin/e_comp_wl.c |  8 ++--
 src/bin/e_comp_x.c  |  2 --
 src/modules/wl_drm/e_mod_main.c |  6 --
 src/modules/wl_fb/e_mod_main.c  | 11 ++-
 src/modules/wl_x11/e_mod_main.c | 31 ---
 6 files changed, 29 insertions(+), 45 deletions(-)

diff --git a/src/bin/e_comp.c b/src/bin/e_comp.c
index ea37d52..5efd3ad 100644
--- a/src/bin/e_comp.c
+++ b/src/bin/e_comp.c
@@ -1016,6 +1016,8 @@ e_comp_init(void)
   actions = eina_list_append(actions, act);
}
 
+   e_comp_new();
+   e_comp->comp_type = E_PIXMAP_TYPE_NONE;
{
   const char *eng;
   
@@ -1026,12 +1028,17 @@ e_comp_init(void)
 
snprintf(buf, sizeof(buf), "wl_%s", eng);
if (e_module_enable(e_module_new(buf)))
- goto out;
+ {
+e_comp->comp_type = E_PIXMAP_TYPE_WL;
+goto out;
+ }
 }
}
 
 #ifndef HAVE_WAYLAND_ONLY
-   if (!e_comp_x_init())
+   if (e_comp_x_init())
+ e_comp->comp_type = E_PIXMAP_TYPE_X;
+   else
 #endif
  {
 const char **test, *eng[] =
@@ -1050,7 +1057,10 @@ e_comp_init(void)
 for (test = eng; *test; test++)
   {
  if (e_module_enable(e_module_new(*test)))
-   goto out;
+   {
+  e_comp->comp_type = E_PIXMAP_TYPE_WL;
+  goto out;
+   }
   }
 return EINA_FALSE;
  }
diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c
index 719bcec..0977a8b 100644
--- a/src/bin/e_comp_wl.c
+++ b/src/bin/e_comp_wl.c
@@ -2309,12 +2309,8 @@ _e_comp_wl_compositor_create(void)
int fd = 0;
 
/* check for existing compositor. create if needed */
-   if (!e_comp)
- {
-e_comp_new();
-e_comp->comp_type = E_PIXMAP_TYPE_WL;
-E_OBJECT_DEL_SET(e_comp, _e_comp_wl_compositor_cb_del);
- }
+   if (e_comp->comp_type == E_PIXMAP_TYPE_NONE)
+ E_OBJECT_DEL_SET(e_comp, _e_comp_wl_compositor_cb_del);
 
/* create new compositor data */
if (!(cdata = E_NEW(E_Comp_Data, 1)))
diff --git a/src/bin/e_comp_x.c b/src/bin/e_comp_x.c
index e34fc98..569330c 100644
--- a/src/bin/e_comp_x.c
+++ b/src/bin/e_comp_x.c
@@ -5196,8 +5196,6 @@ _e_comp_x_screens_setup(void)
  if (!success) break;
   }
 if (!success) break;
-e_comp_new();
-e_comp->comp_type = E_PIXMAP_TYPE_X;
 success = _e_comp_x_setup(root, rw, rh);
 if (!success) break;
  }
diff --git a/src/modules/wl_drm/e_mod_main.c b/src/modules/wl_drm/e_mod_main.c
index b6cf3cc..e6f1691 100644
--- a/src/modules/wl_drm/e_mod_main.c
+++ b/src/modules/wl_drm/e_mod_main.c
@@ -99,12 +99,6 @@ e_modapi_init(E_Module *m)
/*  return NULL; */
/*   } */
 
-   if (!e_comp)
- {
-e_comp_new();
-e_comp->comp_type = E_PIXMAP_TYPE_WL;
- }
-
if (e_comp_config_get()->engine == E_COMP_ENGINE_GL)
  {
 e_comp->ee = ecore_evas_new("gl_drm", 0, 0, 1, 1, NULL);
diff --git a/src/modules/wl_fb/e_mod_main.c b/src/modules/wl_fb/e_mod_main.c
index 3a1c596..406dbe1 100644
--- a/src/modules/wl_fb/e_mod_main.c
+++ b/src/modules/wl_fb/e_mod_main.c
@@ -9,7 +9,6 @@ e_modapi_init(E_Module *m)
 {
Ecore_Evas *ee;
E_Screen *screen;
-   E_Comp *comp;
int w, h;
 
printf("LOAD WL_FB MODULE\n");
@@ -24,13 +23,7 @@ e_modapi_init(E_Module *m)
ecore_fb_size_get(&w, &h);
ee = ecore_evas_fb_new(NULL, 0, w, h);
 
-   if (!(comp = e_comp))
- {
-comp = e_comp_new();
-comp->comp_type = E_PIXMAP_TYPE_WL;
- }
-
-   comp->ee = ee;
+   e_comp->ee = ee;
 
if (!e_xinerama_fake_screens_exist())
  {
@@ -44,7 +37,7 @@ e_modapi_init(E_Module *m)
  }
e_comp_canvas_init(w, h);
e_comp_wl_init();
-   comp->pointer = e_pointer_canvas_new(comp->ee, EINA_TRUE);
+   e_comp->pointer = e_pointer_canvas_new(e_comp->ee, EINA_TRUE);
 
ecore_wl_init(NULL);
ecore_wl_server_mode_set(1);
diff --git a/src/modules/wl_x11/e_mod_main.c b/src/modules/wl_x11/e_mod_main.c
index 7263893..8efd490 100644
--- a/src/modules/wl_x11/e_mod_main.c
+++ b/src/modules/wl_x11/e_mod_main.c
@@ -67,7 +67,6 @@ e_modapi_init(E_Module *m)
 {
Ecore_Evas *ee;
E_Screen *screen;
-   E_Comp *comp;
int w = 0, h = 0;
 
printf("LOAD WL_X11 MODULE\n");
@@ -75,20 +74,14 @@ e_modapi_init(E_Module *m)
ee = ecore_evas_software_x11_new(NULL, 0, 0, 0, 1, 1);
ecore_evas_callback_delete_request_set(ee, _cb_delete_request);
 
-   if (!(comp = e_comp))
- {
- 

[EGIT] [core/enlightenment] master 03/28: move acpi lid status tracking from e_randr to e_acpi

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

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

commit b4e65519d1f850b8f52497afe797cf1686d7daf9
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 15:56:01 2015 -0400

move acpi lid status tracking from e_randr to e_acpi
---
 src/bin/e_acpi.c   |  4 
 src/bin/e_randr2.c | 42 +++---
 2 files changed, 7 insertions(+), 39 deletions(-)

diff --git a/src/bin/e_acpi.c b/src/bin/e_acpi.c
index 62ea63c..07e0854 100644
--- a/src/bin/e_acpi.c
+++ b/src/bin/e_acpi.c
@@ -344,9 +344,13 @@ _e_acpi_cb_server_data(void *data EINA_UNUSED, int type 
EINA_UNUSED, void *event
 case E_ACPI_TYPE_LID:
   acpi_event->status =
 _e_acpi_lid_status_get(device, bus);
+  printf("RRR: acpi event\n");
   /* no change in lid state */
   if (lid_is_closed == (acpi_event->status == 
E_ACPI_LID_CLOSED)) break;
   lid_is_closed = (acpi_event->status == E_ACPI_LID_CLOSED);
+  printf("RRR: lid event for lid %i\n", lid_is_closed);
+  if (!e_randr2_cfg->ignore_acpi_events)
+e_randr2_screen_refresh_queue(EINA_TRUE);
   break;
 
 default:
diff --git a/src/bin/e_randr2.c b/src/bin/e_randr2.c
index c2b65c7..f64e1d2 100644
--- a/src/bin/e_randr2.c
+++ b/src/bin/e_randr2.c
@@ -19,9 +19,7 @@ static E_Config_Randr2_Screen 
*_config_screen_find(E_Randr2_Screen *s, E_Config_
 static int _config_screen_match_count(E_Randr2 *r, 
E_Config_Randr2 *cfg);
 static char   *_screens_fingerprint(E_Randr2 *r);
 static Eina_Bool   _screens_differ(E_Randr2 *r1, E_Randr2 *r2);
-static void_cb_acpi_handler_add(void *data);
 static Eina_Bool   _cb_screen_change_delay(void *data);
-static Eina_Bool   _cb_acpi(void *data, int type, void *event);
 static E_Randr2_Screen*_screen_output_find(const char *out);
 static E_Randr2_Screen*_screen_id_find(const char *id);
 static void_screen_config_takeover(void);
@@ -33,8 +31,6 @@ static void_screen_config_maxsize(void);
 static E_Config_DD   *_e_randr2_cfg_edd = NULL;
 static E_Config_DD   *_e_randr2_cfg_screen_edd = NULL;
 static Eina_List *_ev_handlers = NULL;
-static Eina_Bool  _lid_is_closed = EINA_FALSE;
-static Ecore_Job *_acpi_handler_add_job = NULL;
 static Ecore_Timer   *_screen_delay_timer = NULL;
 static Eina_Bool  event_screen = EINA_FALSE;
 static Eina_Bool  event_ignore = EINA_FALSE;
@@ -100,10 +96,6 @@ e_randr2_init(void)
E_CONFIG_VAL(D, T, ignore_acpi_events, UCHAR);
 
if (!E_EVENT_RANDR_CHANGE) E_EVENT_RANDR_CHANGE = ecore_event_type_new();
-   // delay setting up acpi handler, as acpi is init'ed after randr
-   _acpi_handler_add_job = ecore_job_add(_cb_acpi_handler_add, NULL);
-   // get current lid status of a laptop
-   _lid_is_closed = (e_acpi_lid_status_get() == E_ACPI_LID_CLOSED);
// set up events from the driver
_output_events_listen();
// get current screen info
@@ -136,9 +128,6 @@ e_randr2_shutdown(void)
_screen_delay_timer = NULL;
// stop listening to driver info
_output_events_unlisten();
-   // clean up acpi stuff
-   if (_acpi_handler_add_job) ecore_job_del(_acpi_handler_add_job);
-   _acpi_handler_add_job = NULL;
// clear up all event handlers
E_FREE_LIST(_ev_handlers, ecore_event_handler_del);
// free up screen info
@@ -188,7 +177,7 @@ static Eina_Bool
 _screen_closed(E_Randr2_Screen *s)
 {
printf("RRR: check lid for %s...\n", s->info.name);
-   if (!_lid_is_closed) return EINA_FALSE;
+   if (!e_acpi_lid_is_closed()) return EINA_FALSE;
if (s->info.is_lid)
  {
 printf("RRR:   is closed lid\n");
@@ -493,14 +482,6 @@ _config_screen_match_count(E_Randr2 *r, E_Config_Randr2 
*cfg)
return count;
 }
 
-static void
-_cb_acpi_handler_add(void *data EINA_UNUSED)
-{
-   // add acpi handler in delayed job
-   E_LIST_HANDLER_APPEND(_ev_handlers, E_EVENT_ACPI, _cb_acpi, NULL);
-   _acpi_handler_add_job = NULL;
-}
-
 static char *
 _screens_fingerprint(E_Randr2 *r)
 {
@@ -602,23 +583,6 @@ _cb_screen_change_delay(void *data EINA_UNUSED)
return EINA_FALSE;
 }
 
-static Eina_Bool
-_cb_acpi(void *data EINA_UNUSED, int type EINA_UNUSED, void *event)
-{
-   E_Event_Acpi *ev = event;
-   Eina_Bool lid_closed;
-
-   printf("RRR: acpi event\n");
-   if (ev->type != E_ACPI_TYPE_LID) return EINA_TRUE;
-   lid_closed = (ev->status == E_ACPI_LID_CLOSED);
-   if (lid_closed == _lid_is_closed) return EINA_TRUE;
-   printf("RRR: lid event for lid %i\n", lid_closed);
-   _lid_is_closed = lid_closed;
-   if (!e_randr2_cfg->ignore_acpi_events)
- e_randr2_screen_refresh_queue(EINA_TRUE);
-   return EINA_TRUE;
-}
-
 static E_Randr2_Screen *
 _screen_output_fi

[EGIT] [core/enlightenment] master 06/28: add E_PIXMAP_TYPE_NONE

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

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

commit de0b1b2d39f7fc7a17b32edfd69ff6fcdc7e8c04
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 16:57:47 2015 -0400

add E_PIXMAP_TYPE_NONE

null type currently only used during comp init
---
 src/bin/e_pixmap.c | 1 +
 src/bin/e_pixmap.h | 1 +
 2 files changed, 2 insertions(+)

diff --git a/src/bin/e_pixmap.c b/src/bin/e_pixmap.c
index 0e04bc6..eff8887 100644
--- a/src/bin/e_pixmap.c
+++ b/src/bin/e_pixmap.c
@@ -245,6 +245,7 @@ e_pixmap_new(E_Pixmap_Type type, ...)
 eina_hash_add(pixmaps[type], &id, cp);
 #endif
 break;
+  default: break;
  }
va_end(l);
return cp;
diff --git a/src/bin/e_pixmap.h b/src/bin/e_pixmap.h
index 1bf3878..3ee277e 100644
--- a/src/bin/e_pixmap.h
+++ b/src/bin/e_pixmap.h
@@ -6,6 +6,7 @@ typedef enum
 {
E_PIXMAP_TYPE_X,
E_PIXMAP_TYPE_WL,
+   E_PIXMAP_TYPE_NONE,
 } E_Pixmap_Type;
 
 #else

-- 




[EGIT] [core/enlightenment] master 10/28: fix wl-x11 configure detection/check

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

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

commit 825dbfdb0b2918b8889ff3177ee2273cc06e9681
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 17:30:44 2015 -0400

fix wl-x11 configure detection/check

previous check would not allow compiling against ecore-x which would
prevent such a compositor from being able to manage its own xserver
---
 configure.ac | 19 +--
 1 file changed, 13 insertions(+), 6 deletions(-)

diff --git a/configure.ac b/configure.ac
index c29d9ba..b8752da 100644
--- a/configure.ac
+++ b/configure.ac
@@ -857,11 +857,18 @@ else
   ecore_x=false
 fi
 
-if test "x${ecore_x}" = "xtrue" && test -n "$WAYLAND_CFLAGS" ; then
-   wl_x11=true
-else
-   wl_x11=false
-fi
+define([CHECK_MODULE_WL_X11],
+[
+  if test "x${have_wayland_only}" = "xyes" ; then
+PKG_CHECK_MODULES([ECORE_X], [ecore-x >= ${efl_version}])
+  fi
+  if test "x${have_wayland_clients}" = "xyes" || test "x${have_wayland_only}" 
= "xyes"; then
+AC_E_CHECK_PKG(WL_X11, [ ecore-x >= $efl_version ], [WL_X11=true], 
[WL_X11=false])
+  else
+WL_X11=false
+  fi
+])
+AM_CONDITIONAL([HAVE_WL_X11], [test "x${WL_X11}" = "xtrue"])
 
 define([CHECK_MODULE_WL_DESKTOP_SHELL],
 [
@@ -943,7 +950,7 @@ AC_E_OPTIONAL_MODULE([tiling], true)
 AC_E_OPTIONAL_MODULE([music_control], true, [CHECK_MODULE_MUSIC_CONTROL])
 AC_E_OPTIONAL_MODULE([packagekit], true)
 AC_E_OPTIONAL_MODULE([wl_desktop_shell], $have_wayland, 
[CHECK_MODULE_WL_DESKTOP_SHELL])
-AC_E_OPTIONAL_MODULE([wl_x11], $have_wayland, $wl_x11)
+AC_E_OPTIONAL_MODULE([wl_x11], $have_wayland, [CHECK_MODULE_WL_X11])
 AC_E_OPTIONAL_MODULE([wl_fb], $have_wayland, [CHECK_MODULE_WL_FB])
 AC_E_OPTIONAL_MODULE([wl_drm], $have_wayland, [CHECK_MODULE_WL_DRM])
 #AC_E_OPTIONAL_MODULE([wl_screenshot], true, [CHECK_MODULE_WL_SCREENSHOT])

-- 




[EGIT] [core/enlightenment] master 01/28: add e_acpi_lid_is_closed() for returning cached state of computer lid

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

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

commit 98068e9b9c995a550035fed766fa176c4ed9e364
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 15:50:05 2015 -0400

add e_acpi_lid_is_closed() for returning cached state of computer lid
---
 src/bin/e_acpi.c | 12 
 src/bin/e_acpi.h |  2 +-
 2 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/src/bin/e_acpi.c b/src/bin/e_acpi.c
index 09379bc..62ea63c 100644
--- a/src/bin/e_acpi.c
+++ b/src/bin/e_acpi.c
@@ -53,6 +53,7 @@ static int _e_acpi_events_frozen = 0;
 static Ecore_Con_Server *_e_acpid = NULL;
 static Eina_List *_e_acpid_hdls = NULL;
 static Eina_Strbuf *acpibuf = NULL;
+static int lid_is_closed = -1;
 
 static E_ACPI_Device_Simple _devices_simple[] =
 {
@@ -191,6 +192,14 @@ e_acpi_lid_status_get(void)
return E_ACPI_LID_UNKNOWN;
 }
 
+EINTERN Eina_Bool
+e_acpi_lid_is_closed(void)
+{
+   if (lid_is_closed == -1)
+ lid_is_closed = (e_acpi_lid_status_get() == E_ACPI_LID_CLOSED);
+   return lid_is_closed;
+}
+
 EAPI void
 e_acpi_events_freeze(void)
 {
@@ -335,6 +344,9 @@ _e_acpi_cb_server_data(void *data EINA_UNUSED, int type 
EINA_UNUSED, void *event
 case E_ACPI_TYPE_LID:
   acpi_event->status =
 _e_acpi_lid_status_get(device, bus);
+  /* no change in lid state */
+  if (lid_is_closed == (acpi_event->status == 
E_ACPI_LID_CLOSED)) break;
+  lid_is_closed = (acpi_event->status == E_ACPI_LID_CLOSED);
   break;
 
 default:
diff --git a/src/bin/e_acpi.h b/src/bin/e_acpi.h
index 50440c1..f8a5481 100644
--- a/src/bin/e_acpi.h
+++ b/src/bin/e_acpi.h
@@ -72,7 +72,7 @@ EINTERN int e_acpi_init(void);
 EINTERN int e_acpi_shutdown(void);
 
 EINTERN E_Acpi_Lid_Status e_acpi_lid_status_get(void);
-
+EINTERN Eina_Bool e_acpi_lid_is_closed(void);
 EAPI void e_acpi_events_freeze(void);
 EAPI void e_acpi_events_thaw(void);
 

-- 




[EGIT] [website/www-content] master 01/01: Wiki page about changed with summary [add icon links to projects at top of about page] by Raster

2015-04-22 Thread Raster
WWW-www.enlightenment.org pushed a commit to branch master.

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

commit e4ecf4203cb707cb388086e264e85d042956e4a1
Author: Raster 
Date:   Wed Apr 22 18:20:55 2015 -0700

Wiki page about changed with summary [add icon links to projects at top of 
about page] by Raster
---
 pages/about.txt | 11 ++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/pages/about.txt b/pages/about.txt
index b70e0ed..ad7 100644
--- a/pages/about.txt
+++ b/pages/about.txt
@@ -1,4 +1,12 @@
 ~~Title: About~~
+
+[[about-enlightenment|{{:icon-enlightenment.png|Enlightenment}}]]
+[[about-efl|{{:efl-core.png|EFL}}]]
+[[about-terminology|{{:icon-terminology.png|Terminology}}]]
+[[about-rage|{{:icon-rage.png|Rage}}]]
+
+
+
  More than a Window Manager 
 
 Long ago Enlightenment was just a project to make a Window Manager for
@@ -12,6 +20,7 @@ their environment.
 
 === Enlightenment ===
 
+{{:icon-enlightenment.png?nolink |Enlightenment}}
 {{ :shot-enlightenment.png?nolink&480|Enlightenment Sample screenshot}}
 
 The original reason Enlightenment exists - The Window Manager. From
@@ -166,4 +175,4 @@ See [[about-rage|the Rage page]] for more details.
 === Media ===
 
 If you want media like offical logos, screenshots etc. please see
-[[media|our media page]] for details.
+[[media|our media page]] for details.
\ No newline at end of file

-- 




[EGIT] [website/www-content] master 01/01: www e icon - update to higher res

2015-04-22 Thread Carsten Haitzler (Rasterman)
raster pushed a commit to branch master.

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

commit f556e2bde9ea15d743e4a38f6c2fe551601cd71b
Author: Carsten Haitzler (Rasterman) 
Date:   Thu Apr 23 10:12:30 2015 +0900

www e icon - update to higher res
---
 media/icon-enlightenment.png | Bin 3546 -> 10877 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

diff --git a/media/icon-enlightenment.png b/media/icon-enlightenment.png
index 6a50872..8b10bb9 100644
Binary files a/media/icon-enlightenment.png and b/media/icon-enlightenment.png 
differ

-- 




[EGIT] [apps/rage] master 01/01: rage - fix copying to say it's for rage, not terminology :)

2015-04-22 Thread Carsten Haitzler (Rasterman)
raster pushed a commit to branch master.

http://git.enlightenment.org/apps/rage.git/commit/?id=1ed1945a400407f64d64a44004b552e31f8b3963

commit 1ed1945a400407f64d64a44004b552e31f8b3963
Author: Carsten Haitzler (Rasterman) 
Date:   Thu Apr 23 10:12:56 2015 +0900

rage - fix copying to say it's for rage, not terminology :)
---
 COPYING | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/COPYING b/COPYING
index 198ac3d..a278c22 100644
--- a/COPYING
+++ b/COPYING
@@ -1,4 +1,4 @@
-Copyright notice for Terminology:
+Copyright notice for Rage:
 
 Copyright (C) 2014 Carsten Haitzler and various contributors (see AUTHORS)
 

-- 




[EGIT] [core/efl] master 01/01: ecore-drm: fix uninitialized output mode pointers when creating outputs

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

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

commit c8c9da3e197ac1e8f8d47735088473ee7eb9d957
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 21:11:51 2015 -0400

ecore-drm: fix uninitialized output mode pointers when creating outputs
---
 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 b59a66b..c07efc6 100644
--- a/src/lib/ecore_drm/ecore_drm_output.c
+++ b/src/lib/ecore_drm/ecore_drm_output.c
@@ -400,7 +400,7 @@ _ecore_drm_output_create(Ecore_Drm_Device *dev, drmModeRes 
*res, drmModeConnecto
drmModeCrtc *crtc;
drmModeEncoder *enc;
drmModeModeInfo crtc_mode;
-   Ecore_Drm_Output_Mode *mode, *current, *preferred, *best;
+   Ecore_Drm_Output_Mode *mode, *current = NULL, *preferred = NULL, *best = 
NULL;
Eina_List *l;
 
/* try to find a crtc for this connector */

-- 




[EGIT] [website/www-content] master 01/01: Wiki page about-rage changed with summary [] by Raster

2015-04-22 Thread Raster
WWW-www.enlightenment.org pushed a commit to branch master.

http://git.enlightenment.org/website/www-content.git/commit/?id=2489b6c69edaf9f4d4a500d19260f99e567ab11d

commit 2489b6c69edaf9f4d4a500d19260f99e567ab11d
Author: Raster 
Date:   Wed Apr 22 18:03:57 2015 -0700

Wiki page about-rage changed with summary [] by Raster
---
 pages/about-rage.txt | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/pages/about-rage.txt b/pages/about-rage.txt
index 60ca047..fa25368 100644
--- a/pages/about-rage.txt
+++ b/pages/about-rage.txt
@@ -3,6 +3,8 @@
 
 [[download|Download Rage Here]]
 
+Code quality - [[https://scan.coverity.com/projects/4920|Coverity scan status]]
+
 {{:icon-rage.png?nolink |}}
 
 Rage is a video and audio player written with Enlightenment Foundation

-- 




[EGIT] [website/www-content] master 01/01: Wiki page about-enlightenment changed with summary [add coverity scan status link] by Raster

2015-04-22 Thread Raster
WWW-www.enlightenment.org pushed a commit to branch master.

http://git.enlightenment.org/website/www-content.git/commit/?id=48e6872a592ea76235e174e1e5165e50d4317413

commit 48e6872a592ea76235e174e1e5165e50d4317413
Author: Raster 
Date:   Wed Apr 22 17:57:37 2015 -0700

Wiki page about-enlightenment changed with summary [add coverity scan 
status link] by Raster
---
 pages/about-enlightenment.txt | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/pages/about-enlightenment.txt b/pages/about-enlightenment.txt
index 2e5aa2e..2974879 100644
--- a/pages/about-enlightenment.txt
+++ b/pages/about-enlightenment.txt
@@ -3,6 +3,8 @@
 
 [[download|Download Enlightenment Here]]
 
+Code quality - [[https://scan.coverity.com/projects/554|Coverity scan status]]
+
 {{:icon-enlightenment.png?nolink |}}
 
 Enlightenment (0.17+) (a.k.a E17) is the next generation of
@@ -336,4 +338,3 @@ regular basis. We bake options-cakes and hand them out at 
parties.
 Options are good. Options are awesome. We have lots of them. Spend
 some quality time getting to know your new garden of options in E17.
 It may just finally give you the control you have been pining for.
-

-- 




[EGIT] [website/www-content] master 01/01: Wiki page about-efl changed with summary [add coverity scan status link] by Raster

2015-04-22 Thread Raster
WWW-www.enlightenment.org pushed a commit to branch master.

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

commit e7bc866d15478b466510dc74f3ff236c0e7d1cb1
Author: Raster 
Date:   Wed Apr 22 17:57:43 2015 -0700

Wiki page about-efl changed with summary [add coverity scan status link] by 
Raster
---
 pages/about-efl.txt | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/pages/about-efl.txt b/pages/about-efl.txt
index f86bd3e..320cde8 100644
--- a/pages/about-efl.txt
+++ b/pages/about-efl.txt
@@ -3,6 +3,8 @@
 
 [[download|Download EFL Here]]
 
+Code quality - [[https://scan.coverity.com/projects/552|EFL Coverity scan 
status]] - [[https://scan.coverity.com/projects/553|Elementary Coverity scan 
status]]
+
 {{:efl-core.png?nolink |}}
 
 EFL is made up of quite a few libraries that build on top of each other

-- 




[EGIT] [website/www-content] master 01/01: Wiki page about-terminology changed with summary [add coverity scan status link] by Raster

2015-04-22 Thread Raster
WWW-www.enlightenment.org pushed a commit to branch master.

http://git.enlightenment.org/website/www-content.git/commit/?id=39f78ee0bf47e136d871dda8c3b3956b964745ef

commit 39f78ee0bf47e136d871dda8c3b3956b964745ef
Author: Raster 
Date:   Wed Apr 22 17:57:47 2015 -0700

Wiki page about-terminology changed with summary [add coverity scan status 
link] by Raster
---
 pages/about-terminology.txt | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/pages/about-terminology.txt b/pages/about-terminology.txt
index 8222675..1117501 100644
--- a/pages/about-terminology.txt
+++ b/pages/about-terminology.txt
@@ -3,6 +3,8 @@
 
 [[download|Download Terminology Here]]
 
+Code quality - [[https://scan.coverity.com/projects/889|Coverity scan status]]
+
 {{:icon-terminology.png?nolink |}}
 
 {{ :terminology-ls.png?&200|}}
@@ -152,4 +154,3 @@ added all the time, and this may not represent everything 
you can do
 today.
 
 {{youtube>ibPziLRGvkg?large}}
-

-- 




[EGIT] [core/efl] master 01/02: efreet: fix leak in efreet_util_desktop_exec_find()

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

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

commit 3571e7364eb4fa40769c9e897d8d48bde9272b4b
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 15:32:49 2015 -0400

efreet: fix leak in efreet_util_desktop_exec_find()

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

diff --git a/src/lib/efreet/efreet_utils.c b/src/lib/efreet/efreet_utils.c
index 2f59272..809d738 100644
--- a/src/lib/efreet/efreet_utils.c
+++ b/src/lib/efreet/efreet_utils.c
@@ -192,8 +192,7 @@ efreet_util_desktop_exec_find(const char *exec)
 exe = ecore_file_app_exe_get(names->array[i]);
 if (!exe) continue;
 file = ecore_file_file_get(exe);
-if (!file) continue;
-if (strcmp(exec, exe) && strcmp(exec, file))
+if ((!file) || (strcmp(exec, exe) && strcmp(exec, file)))
 {
 free(exe);
 continue;

-- 




[EGIT] [core/efl] master 02/02: ecore-drm: fix ecore_drm_devices_get() to return a const value

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

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

commit 4e7549683b274b5c1f86122d9a036b948e417b98
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 19:34:19 2015 -0400

ecore-drm: fix ecore_drm_devices_get() to return a const value

this is the internal device list, we're pretty hosed if someone decides
to free it because there's no const
---
 src/lib/ecore_drm/Ecore_Drm.h| 2 +-
 src/lib/ecore_drm/ecore_drm_device.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib/ecore_drm/Ecore_Drm.h b/src/lib/ecore_drm/Ecore_Drm.h
index 8e837e0..e3620df 100644
--- a/src/lib/ecore_drm/Ecore_Drm.h
+++ b/src/lib/ecore_drm/Ecore_Drm.h
@@ -746,6 +746,6 @@ EAPI void ecore_drm_device_pointer_xy_get(Ecore_Drm_Device 
*dev, int *x, int *y)
  * @ingroup Ecore_Drm_Device_Group
  * @since 1.14
  */
-EAPI Eina_List *ecore_drm_devices_get(void);
+EAPI const Eina_List *ecore_drm_devices_get(void);
 
 #endif
diff --git a/src/lib/ecore_drm/ecore_drm_device.c 
b/src/lib/ecore_drm/ecore_drm_device.c
index 6eaf418..f0908e2 100644
--- a/src/lib/ecore_drm/ecore_drm_device.c
+++ b/src/lib/ecore_drm/ecore_drm_device.c
@@ -353,7 +353,7 @@ ecore_drm_device_close(Ecore_Drm_Device *dev)
return EINA_TRUE;
 }
 
-EAPI Eina_List *
+EAPI const Eina_List *
 ecore_drm_devices_get(void)
 {
return drm_devices;

-- 




[EGIT] [core/enlightenment] master 01/01: update wl shell parent setting code to use clients instead of pixmaps

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

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

commit f843b48eb235f541cf98bd2417abe4192fe75717
Author: Mike Blumenkrantz 
Date:   Wed Apr 22 14:54:49 2015 -0400

update wl shell parent setting code to use clients instead of pixmaps

ref T2354
---
 src/modules/wl_desktop_shell/e_mod_main.c | 12 
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/src/modules/wl_desktop_shell/e_mod_main.c 
b/src/modules/wl_desktop_shell/e_mod_main.c
index b42fb62..ba57527 100644
--- a/src/modules/wl_desktop_shell/e_mod_main.c
+++ b/src/modules/wl_desktop_shell/e_mod_main.c
@@ -8,7 +8,6 @@
 static void
 _e_shell_surface_parent_set(E_Client *ec, struct wl_resource *parent_resource)
 {
-   E_Pixmap *pp;
E_Client *pc;
uint64_t pwin = 0;
 
@@ -25,16 +24,13 @@ _e_shell_surface_parent_set(E_Client *ec, struct 
wl_resource *parent_resource)
   }
 return;
  }
-   else if (!(pp = wl_resource_get_user_data(parent_resource)))
+   else if (!(pc = wl_resource_get_user_data(parent_resource)))
  {
-ERR("Could not get parent resource pixmap");
+ERR("Could not get parent resource client");
 return;
  }
 
-   pwin = e_pixmap_window_get(pp);
-
-   /* find the parent client */
-   pc = e_pixmap_client_get(pp);
+   pwin = e_pixmap_window_get(pc->pixmap);
 
e_pixmap_parent_window_set(ec->pixmap, pwin);
 
@@ -52,7 +48,7 @@ _e_shell_surface_parent_set(E_Client *ec, struct wl_resource 
*parent_resource)
   pc = NULL;
  }
 
-   if ((pc) && (pc != ec) &&
+   if ((pc != ec) &&
(eina_list_data_find(pc->transients, ec) != ec))
  {
 pc->transients = eina_list_append(pc->transients, ec);

-- 




[EGIT] [core/efl] master 01/01: ecore_drm: Don't crash if a device is assigned a bad output

2015-04-22 Thread Derek Foreman
devilhorns pushed a commit to branch master.

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

commit 67460e2d78c88f525f15620ae7a583b21fc997d4
Author: Derek Foreman 
Date:   Wed Apr 22 14:32:16 2015 -0400

ecore_drm: Don't crash if a device is assigned a bad output

Summary:
If an input device is assigned via udev to an output that we can't find
we just assign it to the first output instead.

Reviewers: zmike, devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2408
---
 src/lib/ecore_drm/ecore_drm_evdev.c | 20 
 1 file changed, 8 insertions(+), 12 deletions(-)

diff --git a/src/lib/ecore_drm/ecore_drm_evdev.c 
b/src/lib/ecore_drm/ecore_drm_evdev.c
index 9f46516..04275fd 100644
--- a/src/lib/ecore_drm/ecore_drm_evdev.c
+++ b/src/lib/ecore_drm/ecore_drm_evdev.c
@@ -65,20 +65,16 @@ _device_output_set(Ecore_Drm_Evdev *edev)
 DBG("Device Has Output Name: %s", oname);
 
 EINA_LIST_FOREACH(input->dev->outputs, l, output)
-  {
- if ((output->name) && (!strcmp(output->name, oname)))
-   {
-  edev->output = output;
-  break;
-   }
-  }
- }
-   else
- {
-if (!(output = eina_list_nth(input->dev->outputs, 0))) return;
-edev->output = output;
+  if ((output->name) && (!strcmp(output->name, oname))) break;
  }
 
+   if (!output)
+ output = eina_list_nth(input->dev->outputs, 0);
+
+   if (!output) return;
+
+   edev->output = output;
+
if (libinput_device_has_capability(edev->device, 
   LIBINPUT_DEVICE_CAP_POINTER))
  {

-- 




[EGIT] [core/elementary] master 01/01: tests/elm_test_image: Give a proper path to test images

2015-04-22 Thread Stefan Schmidt
stefan pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=1ff7158dab3122d9908fc5090fff0a8aa82ea898

commit 1ff7158dab3122d9908fc5090fff0a8aa82ea898
Author: Stefan Schmidt 
Date:   Wed Apr 22 17:08:59 2015 +0200

tests/elm_test_image: Give a proper path to test images

../../ does not always work. VPATH builds like distcheck have a different
dir layout.

ref T2028
---
 src/tests/Makefile.am  | 2 ++
 src/tests/elm_test_image.c | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/tests/Makefile.am b/src/tests/Makefile.am
index 185669c..551a255 100644
--- a/src/tests/Makefile.am
+++ b/src/tests/Makefile.am
@@ -76,6 +76,7 @@ elm_suite_SOURCES = \
 
 elm_suite_CPPFLAGS = \
-DTESTS_BUILD_DIR=\"${top_builddir}/src/tests\" \
+   -DELM_IMAGE_DATA_DIR=\"${top_srcdir}/data\" \
-I$(top_srcdir)/src/lib \
-I$(top_builddir)/src/lib \
@CHECK_CFLAGS@ \
@@ -93,6 +94,7 @@ check_PROGRAMS += elm_cxx_suite
 elm_cxx_suite_SOURCES = elm_cxx_suite.cc
 elm_cxx_suite_CPPFLAGS = \
-DTESTS_BUILD_DIR=\"${top_builddir}/src/tests\" \
+   -DELM_IMAGE_DATA_DIR=\"${top_srcdir}/data\" \
-I$(top_srcdir)/src/lib \
-I$(top_builddir)/src/lib \
@CHECK_CFLAGS@ \
diff --git a/src/tests/elm_test_image.c b/src/tests/elm_test_image.c
index 714689a..2d075f7 100644
--- a/src/tests/elm_test_image.c
+++ b/src/tests/elm_test_image.c
@@ -6,7 +6,7 @@
 #include 
 #include "elm_suite.h"
 
-static const char pathfmt[] = "../../data/images/icon_%02d.png";
+static const char pathfmt[] =  ELM_IMAGE_DATA_DIR"/images/icon_%02d.png";
 static const char invalid[] = "thereisnosuchimage.png";
 #define MAX_IMAGE_ID 23
 

-- 




[EGIT] [core/enlightenment] master 01/01: e-comp-wl: Init randr if we are not wayland only

2015-04-22 Thread Christopher Michael
devilhorns pushed a commit to branch master.

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

commit 57611c6d2f0e69c6de4acf9130f47948ce7181fc
Author: Chris Michael 
Date:   Wed Apr 22 10:29:42 2015 -0400

e-comp-wl: Init randr if we are not wayland only

This is needed for the wl-x11 module

Signed-off-by: Chris Michael 
---
 src/bin/e_comp_wl.c | 4 
 1 file changed, 4 insertions(+)

diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c
index 4b8be36..719bcec 100644
--- a/src/bin/e_comp_wl.c
+++ b/src/bin/e_comp_wl.c
@@ -710,6 +710,8 @@ _e_comp_wl_cb_randr_change(void *data EINA_UNUSED, int type 
EINA_UNUSED, void *e
E_Randr2_Screen *screen;
unsigned int transform = WL_OUTPUT_TRANSFORM_NORMAL;
 
+   if (!e_randr2) return ECORE_CALLBACK_RENEW;
+
EINA_LIST_FOREACH(e_randr2->screens, l, screen)
  {
 if (!screen->config.enabled) continue;
@@ -2503,6 +2505,8 @@ e_comp_wl_init(void)
 
/* add event handlers to catch E events */
 #ifndef HAVE_WAYLAND_ONLY
+   if (!e_randr2_init()) return EINA_FALSE;
+
E_LIST_HANDLER_APPEND(handlers, E_EVENT_RANDR_CHANGE,
  _e_comp_wl_cb_randr_change, NULL);
 #endif

-- 




[EGIT] [core/enlightenment] master 01/02: Revert "wl-drm: Set initial compositor pointer values base on ecore_evas_pointer_position"

2015-04-22 Thread Christopher Michael
devilhorns pushed a commit to branch master.

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

commit 37223908a6a5fad265d9a6571cf777590d480f6c
Author: Chris Michael 
Date:   Wed Apr 22 10:41:13 2015 -0400

Revert "wl-drm: Set initial compositor pointer values base on 
ecore_evas_pointer_position"

This reverts commit 16e9126302c3a95f84921b62dbe547b1c112cd2f.

Reverting this due to crash
---
 src/modules/wl_drm/e_mod_main.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/src/modules/wl_drm/e_mod_main.c b/src/modules/wl_drm/e_mod_main.c
index 0891603..ab7c3ed 100644
--- a/src/modules/wl_drm/e_mod_main.c
+++ b/src/modules/wl_drm/e_mod_main.c
@@ -139,9 +139,6 @@ e_modapi_init(E_Module *m)
 
ecore_evas_callback_resize_set(e_comp->ee, _e_mod_drm_cb_ee_resize);
 
-   ecore_evas_pointer_xy_get(e_comp->ee, &e_comp->wl_comp_data->ptr.x, 
- &e_comp->wl_comp_data->ptr.y);
-
if (!e_xinerama_fake_screens_exist())
  {
 E_Screen *screen;

-- 




[EGIT] [core/enlightenment] master 02/02: wl-drm: We need to set the compositor pointer values After wl_comp_data has been created else we crash

2015-04-22 Thread Christopher Michael
devilhorns pushed a commit to branch master.

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

commit 57191576db1cd48865fad58e8ce9edd59d5d8d8a
Author: Chris Michael 
Date:   Wed Apr 22 10:42:33 2015 -0400

wl-drm: We need to set the compositor pointer values After wl_comp_data has 
been created else we crash

Signed-off-by: Chris Michael 
---
 src/modules/wl_drm/e_mod_main.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/modules/wl_drm/e_mod_main.c b/src/modules/wl_drm/e_mod_main.c
index ab7c3ed..b6cf3cc 100644
--- a/src/modules/wl_drm/e_mod_main.c
+++ b/src/modules/wl_drm/e_mod_main.c
@@ -157,6 +157,9 @@ e_modapi_init(E_Module *m)
/* NB: This needs to be called AFTER the comp canvas has been setup */
if (!e_comp_wl_init()) return NULL;
 
+   ecore_evas_pointer_xy_get(e_comp->ee, &e_comp->wl_comp_data->ptr.x,
+ &e_comp->wl_comp_data->ptr.y);
+
e_comp_wl_input_pointer_enabled_set(e_comp->wl_comp_data, EINA_TRUE);
e_comp_wl_input_keyboard_enabled_set(e_comp->wl_comp_data, EINA_TRUE);
 

-- 




[EGIT] [core/efl] master 01/01: eina thread_queue: fix typo in doc.

2015-04-22 Thread ChunEon Park
hermet pushed a commit to branch master.

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

commit 0d1d62a6ab35ab22bd873dafffbf5b1469e4572e
Author: ChunEon Park 
Date:   Wed Apr 22 23:11:24 2015 +0900

eina thread_queue: fix typo in doc.
---
 src/lib/eina/eina_thread_queue.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib/eina/eina_thread_queue.h b/src/lib/eina/eina_thread_queue.h
index b23ca19..dc01917 100644
--- a/src/lib/eina/eina_thread_queue.h
+++ b/src/lib/eina/eina_thread_queue.h
@@ -17,7 +17,7 @@
  *
  * This is a uni-directional zero-copy thread message queue specifically
  * designed with the idea of sending large volumes of messages with no
- * copies from one thread to another (or from/to the mainloop). The ides
+ * copies from one thread to another (or from/to the mainloop). The idea
  * is that a thread queue is created and then one or more threads send
  * messages in one end and fetch messages on the other end. If you set a
  * parent message queue to 1 or more queues, then this parent will wake up
@@ -92,7 +92,7 @@ eina_thread_queue_free(Eina_Thread_Queue *thq) 
EINA_ARG_NONNULL(1);
 /**
  * @brief Allocate a message to send down a thread queue
  *
- * @param thq The thred queue to allocate the message on
+ * @param thq The thread queue to allocate the message on
  * @param size The size, in bytes, of the message, including standard header
  * @param allocref A pointer to store a general reference handle for the 
message
  * @return A pointer to the message data to fill in

-- 




[EGIT] [core/enlightenment] master 01/01: wl-drm: Set initial compositor pointer values base on ecore_evas_pointer_position

2015-04-22 Thread Christopher Michael
devilhorns pushed a commit to branch master.

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

commit 16e9126302c3a95f84921b62dbe547b1c112cd2f
Author: Chris Michael 
Date:   Wed Apr 22 09:41:23 2015 -0400

wl-drm: Set initial compositor pointer values base on 
ecore_evas_pointer_position

This addresses the issue of initial compositor pointer values not
being proper. They are 0,0 on startup, however things like ecore_drm
will center the mouse on startup. The e_comp pointer values should
reflect this.

Signed-off-by: Chris Michael 
---
 src/modules/wl_drm/e_mod_main.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/modules/wl_drm/e_mod_main.c b/src/modules/wl_drm/e_mod_main.c
index ab7c3ed..0891603 100644
--- a/src/modules/wl_drm/e_mod_main.c
+++ b/src/modules/wl_drm/e_mod_main.c
@@ -139,6 +139,9 @@ e_modapi_init(E_Module *m)
 
ecore_evas_callback_resize_set(e_comp->ee, _e_mod_drm_cb_ee_resize);
 
+   ecore_evas_pointer_xy_get(e_comp->ee, &e_comp->wl_comp_data->ptr.x, 
+ &e_comp->wl_comp_data->ptr.y);
+
if (!e_xinerama_fake_screens_exist())
  {
 E_Screen *screen;

-- 




[EGIT] [core/efl] master 01/01: efl: Move test for gl library to evas-gl-drm engine checks and Fix T2167

2015-04-22 Thread Christopher Michael
devilhorns pushed a commit to branch master.

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

commit 64d11ec8063064570c38b61d288db18596cb41d0
Author: Chris Michael 
Date:   Wed Apr 22 09:19:07 2015 -0400

efl: Move test for gl library to evas-gl-drm engine checks and Fix T2167

Summary: Since we won't need gl library unless we are building
evas-gl-drm engine, move the checks for with_opengl config option to
the gl_drm engine checking macro. Also, since gl_drm is ONLY supported
if we have --with-opengl=es configure option, let's error out with a
message if someone passes anything Other than with_opengl=es.

@fix

Signed-off-by: Chris Michael 
---
 m4/evas_check_engine.m4 | 29 +
 1 file changed, 5 insertions(+), 24 deletions(-)

diff --git a/m4/evas_check_engine.m4 b/m4/evas_check_engine.m4
index 5dc333f..8165aa2 100644
--- a/m4/evas_check_engine.m4
+++ b/m4/evas_check_engine.m4
@@ -601,24 +601,7 @@ have_hw_dep="no"
 evas_engine_[]$1[]_cflags=""
 evas_engine_[]$1[]_libs=""
 
-if test "x${with_opengl}" = "xes" ; then
-gl_library="glesv2"
-else
-gl_library="gl"
-fi
-
 if test "x${have_dep}" = "xyes" ; then
-  AC_MSG_CHECKING([whether to enable Drm hardware acceleration])
-  if test "x${want_drm_hw_accel}" = "xyes" ; then
-PKG_CHECK_EXISTS([egl >= 7.10 ${gl_library}],
- [
-  have_hw_dep="yes"
-  requirement="egl >= 7.10 ${gl_library}"
- ],
- [have_hw_dep="no"])
-  fi
-  AC_MSG_RESULT([${have_hw_dep}])
-
if test "x$3" = "xstatic" ; then
   requirements_pc_evas="${requirement} ${requirements_pc_evas}"
   requirements_pc_deps_evas="${requirement} ${requirements_pc_deps_evas}"
@@ -628,12 +611,6 @@ if test "x${have_dep}" = "xyes" ; then
fi
 fi
 
-if test "x${have_hw_dep}" = "xyes" ; then
-  AC_DEFINE(HAVE_DRM_HW_ACCEL, [1], 
-   [Enabled drm hardware accelerated rendering])
-fi
-
-
 AC_SUBST([evas_engine_$1_cflags])
 AC_SUBST([evas_engine_$1_libs])
 
@@ -652,7 +629,11 @@ have_hw_dep="no"
 evas_engine_[]$1[]_cflags=""
 evas_engine_[]$1[]_libs=""
 
-gl_library="glesv2"
+if test "x${with_opengl}" = "xes" ; then
+   gl_library="glesv2"
+else
+   AC_MSG_ERROR([We currently do not support GL DRM without OpenGL ES. Please 
consider OpenGL ES if you want to use it.])
+fi
 
 PKG_CHECK_EXISTS([egl >= 7.10 ${gl_library} gbm wayland-client >= 1.3.0],
[

-- 




[EGIT] [core/efl] master 07/10: ecore_con: add another test case to cover remaining functions in ecore_con_eet.

2015-04-22 Thread Srivardhan Hebbar
cedric pushed a commit to branch master.

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

commit f4453bc00b9c27eb4d32b683dde9af000674dd9b
Author: Srivardhan Hebbar 
Date:   Wed Apr 22 14:52:28 2015 +0200

ecore_con: add another test case to cover remaining functions in 
ecore_con_eet.

Summary:
When I checked the Jenkins report, I saw few of the functions were left 
off. So added another case and modified the existing case to cover all the 
functions or ecore_con_eet.

Signed-off-by: Srivardhan Hebbar 

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL 
---
 src/tests/ecore_con/ecore_con_test_ecore_con_eet.c | 132 +
 1 file changed, 109 insertions(+), 23 deletions(-)

diff --git a/src/tests/ecore_con/ecore_con_test_ecore_con_eet.c 
b/src/tests/ecore_con/ecore_con_test_ecore_con_eet.c
index d981a93..a9ce4b4 100644
--- a/src/tests/ecore_con/ecore_con_test_ecore_con_eet.c
+++ b/src/tests/ecore_con/ecore_con_test_ecore_con_eet.c
@@ -43,7 +43,7 @@ _ece_test_descriptor_shutdown(void)
eet_data_descriptor_free(_ece_test_descriptor);
 }
 
-Eina_Bool
+static Eina_Bool
 _eet_client_discnct_cb(void *data EINA_UNUSED, Ecore_Con_Reply *reply 
EINA_UNUSED, Ecore_Con_Client *conn EINA_UNUSED)
 {
ecore_main_loop_quit();
@@ -51,7 +51,7 @@ _eet_client_discnct_cb(void *data EINA_UNUSED, 
Ecore_Con_Reply *reply EINA_UNUSE
return EINA_FALSE;
 }
 
-Eina_Bool
+static Eina_Bool
 _eet_client_cnct_cb(void *data EINA_UNUSED, Ecore_Con_Reply *reply, 
Ecore_Con_Client *conn EINA_UNUSED)
 {
char *ec_eet_data;
@@ -79,36 +79,45 @@ _eet_data_cb(void *data EINA_UNUSED, Ecore_Con_Reply 
*reply, const char *protoco
   strlen(toSend));
 }
 
-Eina_Bool
-_eet_svr_discnct_cb(void *data EINA_UNUSED, Ecore_Con_Reply *reply 
EINA_UNUSED, Ecore_Con_Client *conn EINA_UNUSED)
-{
-   ecore_main_loop_quit();
-   return EINA_FALSE;
-}
-
-Eina_Bool
-_eet_svr_cnct_cb(void *data EINA_UNUSED, Ecore_Con_Reply *reply, 
Ecore_Con_Client *conn EINA_UNUSED)
+static Eina_Bool
+_eet_svr_cnct_cb(void *data, Ecore_Con_Reply *reply, Ecore_Con_Client *conn 
EINA_UNUSED)
 {
+   int *i = data;
ECE_Test toSend = {1, CLI_MSG};
+   char rawMsg[] = CLI_MSG;
+
+   if (*i)
+ ecore_con_eet_send(reply, TEST_STREAM, &toSend);
+   else
+ ecore_con_eet_raw_send(reply, TEST_STREAM, "message", rawMsg,
+strlen(rawMsg));
 
-   ecore_con_eet_send(reply, TEST_STREAM, &toSend);
return EINA_TRUE;
 }
 
 static void
-_eet_raw_data_cb(void *data EINA_UNUSED, Ecore_Con_Reply *reply EINA_UNUSED, 
const char *protocol_name EINA_UNUSED, const char *section, void *value, size_t 
length)
+_eet_raw_data_cb(void *data, Ecore_Con_Reply *reply, const char *protocol_name 
EINA_UNUSED, const char *section, void *value, size_t length)
 {
+   Ecore_Con_Server *cl = data;
+   Ecore_Con_Eet *ece_cl = ecore_con_eet_reply(reply);
+
fprintf(stderr, "Section: %s\n", section);
fprintf(stderr, "Value: %s\n", (char *) value);
fail_if(strncmp((char *) value, SRV_MSG, length));
 
-   ecore_main_loop_quit();
+   ecore_con_eet_raw_data_callback_del(ece_cl, TEST_STREAM);
+   ecore_con_eet_server_connect_callback_del(ece_cl, _eet_svr_cnct_cb, NULL);
+
+   ecore_con_eet_server_free(ece_cl);
+   ecore_con_server_del(cl);
 }
 
 START_TEST(ecore_con_test_ecore_con_eet_svr_cl)
 {
Ecore_Con_Eet *ece_svr, *ece_cl;
Ecore_Con_Server *svr, *cl;
+   int *cb_data = (int *) malloc(sizeof(int));
+   *cb_data = 1;
 
eina_init();
eet_init();
@@ -141,17 +150,12 @@ START_TEST(ecore_con_test_ecore_con_eet_svr_cl)
 
ecore_con_eet_register(ece_cl, TEST_STREAM, _ece_test_descriptor);
ecore_con_eet_raw_data_callback_add(ece_cl, TEST_STREAM,
-   _eet_raw_data_cb, NULL);
-   ecore_con_eet_server_connect_callback_add(ece_cl, _eet_svr_cnct_cb, NULL);
-   ecore_con_eet_server_disconnect_callback_add(ece_cl, _eet_svr_discnct_cb,
-NULL);
+   _eet_raw_data_cb, cl);
+   ecore_con_eet_server_connect_callback_add(ece_cl, _eet_svr_cnct_cb,
+ cb_data);
 
ecore_main_loop_begin();
 
-   ecore_con_eet_raw_data_callback_del(ece_cl, TEST_STREAM);
-   ecore_con_eet_server_connect_callback_del(ece_cl, _eet_svr_cnct_cb, NULL);
-   ecore_con_eet_server_disconnect_callback_del(ece_cl, _eet_svr_discnct_cb,
-NULL);
 
ecore_con_eet_data_callback_del(ece_svr, TEST_STREAM);
ecore_con_eet_client_connect_callback_del(ece_svr, _eet_client_cnct_cb,
@@ -159,15 +163,97 @@ START_TEST(ecore_con_test_ecore_con_eet_svr_cl)
ecore_con_eet_client_disconnect_callback_del(ece_svr,
   

[EGIT] [core/efl] master 09/10: ecore_con: example program for ecore_con_eet.

2015-04-22 Thread Srivardhan Hebbar
cedric pushed a commit to branch master.

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

commit 9919a428c642af8ecbb13b1bb62beb1488406622
Author: Srivardhan Hebbar 
Date:   Wed Apr 22 14:55:33 2015 +0200

ecore_con: example program for ecore_con_eet.

Summary:

Signed-off-by: Srivardhan Hebbar 

Reviewers: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL 
---
 src/examples/ecore/.gitignore  |   2 +
 src/examples/ecore/ecore_con_eet_client_example.c  |  97 +
 .../ecore/ecore_con_eet_descriptor_example.c   |  42 
 .../ecore/ecore_con_eet_descriptor_example.h   |  20 
 src/examples/ecore/ecore_con_eet_server_example.c  | 115 +
 5 files changed, 276 insertions(+)

diff --git a/src/examples/ecore/.gitignore b/src/examples/ecore/.gitignore
index 700be32..acc3750 100644
--- a/src/examples/ecore/.gitignore
+++ b/src/examples/ecore/.gitignore
@@ -6,6 +6,8 @@
 /ecore_compose_get_example
 /ecore_con_client_example
 /ecore_con_client_simple_example
+/ecore_con_eet_client_example
+/ecore_con_eet_server_example
 /ecore_con_lookup_example
 /ecore_con_server_example
 /ecore_con_server_http_example
diff --git a/src/examples/ecore/ecore_con_eet_client_example.c 
b/src/examples/ecore/ecore_con_eet_client_example.c
new file mode 100644
index 000..710df2e
--- /dev/null
+++ b/src/examples/ecore/ecore_con_eet_client_example.c
@@ -0,0 +1,97 @@
+/*
+ * This example shows how to register a eet descriptor to a ecore con client
+ * and send message to ecore con server. The eet descriptor is defined in
+ * ecore_con_eet_descriptor_example.c.
+ */
+
+//Compile with:
+// gcc -o ecore_con_eet_client_example ecore_con_eet_client_example.c 
ecore_con_eet_descriptor_example.c `pkg-config --cflags --libs eet ecore 
ecore-con eina`
+
+#include 
+#include 
+#include 
+#include 
+#include "ecore_con_eet_descriptor_example.h"
+
+Eina_Bool
+_eet_svr_discnct_cb(void *data EINA_UNUSED, Ecore_Con_Reply *reply, 
Ecore_Con_Client *conn EINA_UNUSED)
+{
+   ecore_main_loop_quit();
+   return EINA_FALSE;
+}
+
+Eina_Bool
+_eet_svr_cnct_cb(void *data EINA_UNUSED, Ecore_Con_Reply *reply, 
Ecore_Con_Client *conn EINA_UNUSED)
+{
+   /* Only id and message parameter are sent to server. not_sending, parameter
+* is not sent, as it is not added to the eet descriptor. */
+   ECE_Example toSend = {1, "Message from Client.",
+ "This is not sent to server"};
+
+   ecore_con_eet_send(reply, EXAMPLE_STREAM, &toSend);
+   return EINA_TRUE;
+}
+
+static void
+_eet_raw_data_cb(void *data EINA_UNUSED, Ecore_Con_Reply *reply EINA_UNUSED, 
const char *protocol_name EINA_UNUSED, const char *section, void *value, size_t 
length EINA_UNUSED)
+{
+   /* Only a perticular parameter's value is sent by Server. */
+   fprintf(stdout, "Section: %s\n", section);
+   fprintf(stdout, "Value: %s\n", (char *) value);
+}
+
+int main(int argc, const char *argv[])
+{
+   Ecore_Con_Eet *ec_eet;
+   Ecore_Con_Server *svr;
+
+   if (argc < 3)
+ {
+printf("Syntax: \n./ecore_con_eet_server_example  \n");
+exit(0);
+ }
+
+   eina_init();
+   eet_init();
+   ecore_con_init();
+   ece_example_descriptor_init(); // Initialize a eet descriptor.
+
+   svr = ecore_con_server_connect(ECORE_CON_REMOTE_TCP, argv[1],
+  atoi(argv[2]), NULL);
+   if (!svr)
+ {
+printf("could not connect to the server.\n");
+exit(1);
+ }
+
+   ec_eet = ecore_con_eet_client_new(svr); // Associate it with the connection.
+
+   // Register the descriptor to send messages.
+   ece_example_descriptor_register_descs(ec_eet);
+
+   // Register call backs.
+   ecore_con_eet_raw_data_callback_add(ec_eet, EXAMPLE_STREAM,
+   _eet_raw_data_cb, NULL);
+   ecore_con_eet_server_connect_callback_add(ec_eet, _eet_svr_cnct_cb, NULL);
+   ecore_con_eet_server_disconnect_callback_add(ec_eet, _eet_svr_discnct_cb,
+NULL);
+
+   ecore_main_loop_begin();
+
+   // Delete all callbacks before closing connection.
+   ecore_con_eet_server_disconnect_callback_del(ec_eet, _eet_svr_discnct_cb,
+NULL);
+   ecore_con_eet_server_connect_callback_del(ec_eet, _eet_svr_discnct_cb,
+ NULL);
+   ecore_con_eet_raw_data_callback_del(ec_eet, EXAMPLE_STREAM);
+
+   // Free the descriptor.
+   ece_example_descriptor_shutdown();
+
+   ecore_con_server_del(svr);
+   ecore_con_shutdown();
+   eet_shutdown();
+   eina_shutdown();
+
+   return 0;
+}
diff --git a/src/examples/ecore/ecore_con_eet_descriptor_example.c 
b/src/examples/ecore/ecore_con_eet_descriptor_example.c
new file mode 100644
index 000..cdf6c88
--- /dev/null
+++ b/src/examples/ecore

[EGIT] [core/efl] master 06/10: ecore_con: add test cases to cover more ecore con functions.

2015-04-22 Thread Srivardhan Hebbar
cedric pushed a commit to branch master.

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

commit 48db81cfb5e01e7993afa65b649de4e2c043b07d
Author: Srivardhan Hebbar 
Date:   Wed Apr 22 14:26:57 2015 +0200

ecore_con: add test cases to cover more ecore con functions.

Summary:
The dns lookup test would result in a crash unless 
https://phab.enlightenment.org/D2398 fix.
Also added more functions to existing case to cover ecore_con.c

Signed-off-by: Srivardhan Hebbar 

Reviewers: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL 
---
 src/tests/ecore_con/ecore_con_test_ecore_con.c | 55 +-
 1 file changed, 53 insertions(+), 2 deletions(-)

diff --git a/src/tests/ecore_con/ecore_con_test_ecore_con.c 
b/src/tests/ecore_con/ecore_con_test_ecore_con.c
index 1d8379e..dc31d8e 100644
--- a/src/tests/ecore_con/ecore_con_test_ecore_con.c
+++ b/src/tests/ecore_con/ecore_con_test_ecore_con.c
@@ -27,6 +27,10 @@ _add(void *data, int type EINA_UNUSED, void *ev)
 fail_if (data != (void *) 1);
 fail_if (!event->client);
 
+fprintf(stderr, "client fd: %d\n",
+ecore_con_client_fd_get(event->client));
+fail_unless(ecore_con_client_fd_get(event->client));
+
 printf("Client with ip %s, port %d, connected = %d!\n",
ecore_con_client_ip_get(event->client),
ecore_con_client_port_get(event->client),
@@ -79,8 +83,11 @@ _del(void *data , int type EINA_UNUSED, void *ev)
 
 printf("Lost client with ip %s!\n",
ecore_con_client_ip_get(event->client));
+fail_if(ecore_con_client_ip_get(event->client));
+
 printf("Client was connected for %0.3f seconds.\n",
ecore_con_client_uptime_get(event->client));
+fail_unless(ecore_con_client_uptime_get(event->client));
 
 del_data = ecore_con_client_del(event->client);
 fail_if (strcmp((char *)del_data, cdata));
@@ -93,7 +100,9 @@ _del(void *data , int type EINA_UNUSED, void *ev)
 
 fail_if (data != (void *) 2);
 
-printf("Lost server with ip %s!\n", 
ecore_con_server_ip_get(event->server));
+printf("Lost server with ip %s!\n",
+ecore_con_server_ip_get(event->server));
+fail_unless(ecore_con_server_ip_get(event->server));
 
 ecore_con_server_del(event->server);
  }
@@ -179,7 +188,7 @@ _dns_err(void *data, int type EINA_UNUSED, void *ev 
EINA_UNUSED)
 void _ecore_con_server_client_tests(Ecore_Con_Type compl_type, const char 
*name, Eina_Bool is_ssl, int server_port)
 {
Ecore_Con_Server *server = NULL;
-   Ecore_Con_Server *client;
+   Ecore_Con_Server *client, *client2;
Ecore_Con_Client *cl;
const Eina_List *clients, *l;
Ecore_Event_Handler *handlers[6];
@@ -248,6 +257,10 @@ void _ecore_con_server_client_tests(Ecore_Con_Type 
compl_type, const char *name,
  client_data);
fail_if (client == NULL);
 
+   client2 = ecore_con_server_connect(compl_type, name, server_port,
+ client_data);
+   fail_if (client2 == NULL);
+
if (is_ssl)
  {
 fail_unless(ecore_con_ssl_server_cafile_add(server, 
TESTS_SRC_DIR"/server.pem"));
@@ -259,6 +272,14 @@ void _ecore_con_server_client_tests(Ecore_Con_Type 
compl_type, const char *name,
 
ecore_main_loop_begin();
 
+   fprintf(stderr, "server fd for client 1: %d\n",
+   ecore_con_server_fd_get(client));
+   fail_unless(ecore_con_server_fd_get(client));
+
+   fprintf(stderr, "server fd for client 2: %d\n",
+   ecore_con_server_fd_get(client2));
+   fail_unless(ecore_con_server_fd_get(client2));
+
clients = ecore_con_server_clients_get(server);
printf("Clients connected to this server when exiting: %d\n",
   eina_list_count(clients));
@@ -270,6 +291,9 @@ void _ecore_con_server_client_tests(Ecore_Con_Type 
compl_type, const char *name,
printf("Server was up for %0.3f seconds\n",
   ecore_con_server_uptime_get(server));
 
+   del_ret = ecore_con_server_del(client2);
+   fail_if (del_ret != client_data);
+
del_ret = ecore_con_server_del(server);
fail_if (strcmp((char *)del_ret, sdata));
free (server_data);
@@ -532,6 +556,32 @@ START_TEST(ecore_test_ecore_con_shutdown_bef_init)
 }
 END_TEST
 
+static void
+_lookup_done_cb(const char *canonname, const char *ip, struct sockaddr *addr, 
int addrlen, void *data)
+{
+   fail_if(strncmp(canonname,(char *)data, strlen((char *)data)));
+
+   fprintf(stderr, "canonname = %s\n", canonname);
+   fprintf(stderr, "ip = %s\n", ip);
+   fprintf(stderr, "addr = %p\n", addr);
+   fprintf(stderr, "addrlen = %d\n", addrlen);
+
+   ecore_main_loop_quit();
+}
+
+START_TEST(ecore_test_ecore_con_dns_lookup)
+{
+   const char link[] = "www.google.com";
+   ecore_con_init();
+

[EGIT] [core/efl] master 01/10: evas: fix rotation and flipping of image in gl engine

2015-04-22 Thread kabeer khan
cedric pushed a commit to branch master.

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

commit ce45d443c107ef0da87d407ffc5539e9eba9eef5
Author: kabeer khan 
Date:   Wed Apr 22 11:25:38 2015 +0200

evas: fix rotation and flipping of image in gl engine

Summary:
fix rotation(90, 180, 270) and flipping(vertical, horizontal, transpose,
transverse) of evas image in gl engine backend.

@fix

T2338

Signed-off-by: kabeer khan 

Reviewers: cedric, jpeg

Subscribers: cedric

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

Signed-off-by: Cedric BAIL 
---
 .../evas/engines/gl_common/evas_gl_common.h|   5 +-
 .../evas/engines/gl_common/evas_gl_context.c   |  92 ---
 src/modules/evas/engines/gl_common/evas_gl_image.c |   1 +
 src/modules/evas/engines/gl_generic/evas_engine.c  | 169 +++--
 4 files changed, 234 insertions(+), 33 deletions(-)

diff --git a/src/modules/evas/engines/gl_common/evas_gl_common.h 
b/src/modules/evas/engines/gl_common/evas_gl_common.h
index b81b913..d4ca68d 100644
--- a/src/modules/evas/engines/gl_common/evas_gl_common.h
+++ b/src/modules/evas/engines/gl_common/evas_gl_common.h
@@ -644,8 +644,9 @@ struct _Evas_GL_Image
int scale_hint, content_hint;
int csize;
 
-   Eina_List   *filtered;
-   Eina_List   *targets;
+   Eina_List *filtered;
+   Eina_List *targets;
+   Evas_Image_Orient orient;
 
unsigned chardirty : 1;
unsigned charcached : 1;
diff --git a/src/modules/evas/engines/gl_common/evas_gl_context.c 
b/src/modules/evas/engines/gl_common/evas_gl_context.c
index 9699bdd..b526eab 100644
--- a/src/modules/evas/engines/gl_common/evas_gl_context.c
+++ b/src/modules/evas/engines/gl_common/evas_gl_context.c
@@ -1256,9 +1256,53 @@ 
evas_gl_common_context_target_surface_set(Evas_Engine_GL_Context *gc,
PUSH_VERTEX(pn, x, y + h, 0); PUSH_VERTEX(pn, x + w, y, 0); \
PUSH_VERTEX(pn, x + w, y + h, 0); PUSH_VERTEX(pn, x, y + h, 0); \
} while (0)
-#define PUSH_6_TEXUV(pn, x1, y1, x2, y2) do { \
-   PUSH_TEXUV(pn, x1, y1); PUSH_TEXUV(pn, x2, y1); PUSH_TEXUV(pn, x1, y2); \
-   PUSH_TEXUV(pn, x2, y1); PUSH_TEXUV(pn, x2, y2); PUSH_TEXUV(pn, x1, y2); \
+#define PUSH_6_TEXUV(pn, Tex, x1, y1, x2, y2) do {  \
+   Evas_GL_Texture *_tex = Tex; \
+   if (_tex && _tex->im)\
+ {  \
+switch (_tex->im->orient)   \
+  { \
+   case EVAS_IMAGE_ORIENT_NONE: \
+  PUSH_TEXUV(pn, x1, y1); PUSH_TEXUV(pn, x2, y1); PUSH_TEXUV(pn, 
x1, y2); \
+  PUSH_TEXUV(pn, x2, y1); PUSH_TEXUV(pn, x2, y2); PUSH_TEXUV(pn, 
x1, y2); \
+  break;\
+   case EVAS_IMAGE_ORIENT_90:   \
+  PUSH_TEXUV(pn, x1, y2); PUSH_TEXUV(pn, x1, y1); PUSH_TEXUV(pn, 
x2, y2); \
+  PUSH_TEXUV(pn, x1, y1); PUSH_TEXUV(pn, x2, y1); PUSH_TEXUV(pn, 
x2, y2); \
+  break;\
+   case EVAS_IMAGE_ORIENT_180:  \
+  PUSH_TEXUV(pn, x2, y2); PUSH_TEXUV(pn, x1, y2); PUSH_TEXUV(pn, 
x2, y1); \
+  PUSH_TEXUV(pn, x1, y2); PUSH_TEXUV(pn, x1, y1); PUSH_TEXUV(pn, 
x2, y1); \
+  break;\
+   case EVAS_IMAGE_ORIENT_270:  \
+  PUSH_TEXUV(pn, x2, y1); PUSH_TEXUV(pn, x2, y2); PUSH_TEXUV(pn, 
x1, y1); \
+  PUSH_TEXUV(pn, x2, y2); PUSH_TEXUV(pn, x1, y2); PUSH_TEXUV(pn, 
x1, y1); \
+  break;\
+   case EVAS_IMAGE_FLIP_HORIZONTAL: \
+  PUSH_TEXUV(pn, x2, y1); PUSH_TEXUV(pn, x1, y1); PUSH_TEXUV(pn, 
x2, y2); \
+  PUSH_TEXUV(pn, x1, y1); PUSH_TEXUV(pn, x1, y2); PUSH_TEXUV(pn, 
x2, y2); \
+  break;\
+   case EVAS_IMAGE_FLIP_VERTICAL:   \
+  PUSH_TEXUV(pn, x1, y2); PUSH_TEXUV(pn, x2, y2); PUSH_TEXUV(pn, 
x1, y1); \
+  PUSH_TEXUV(pn, x2, y2); PUSH_TEXUV(pn, x2, y1); PUSH_TEXUV(pn, 
x1, y1); \
+  break;\
+   case EVAS_IMAGE_FLIP_TRANSVERSE: \
+  PUSH_TEXUV(pn, x2, y2); PUSH_TEXUV(pn, x2, y1); PUSH_TEXUV(pn, 
x1, y2); \
+  PUSH_TEXUV(pn, x2, y1); PUSH_TEXUV(pn, x1, y1); PUSH_TEXUV(p

[EGIT] [core/efl] master 02/10: eina: add test case for eina_strbuf_string_free function.

2015-04-22 Thread vivek
cedric pushed a commit to branch master.

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

commit 08b99cf20169de924e935160d7b18efe6bdac12f
Author: vivek 
Date:   Wed Apr 22 12:38:58 2015 +0200

eina: add test case for eina_strbuf_string_free function.

Summary:
Added test case for eina_strbuf_string_free function in eina_strbuf module

Signed-off-by: vivek 

Reviewers: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL 
---
 src/tests/eina/eina_test_strbuf.c | 5 +
 1 file changed, 5 insertions(+)

diff --git a/src/tests/eina/eina_test_strbuf.c 
b/src/tests/eina/eina_test_strbuf.c
index 406b467..7a1386c 100644
--- a/src/tests/eina/eina_test_strbuf.c
+++ b/src/tests/eina/eina_test_strbuf.c
@@ -56,6 +56,11 @@ START_TEST(strbuf_simple)
fail_if(eina_strbuf_length_get(buf) != 0);
fail_if(!strcmp(eina_strbuf_string_get(buf), TEXT));
 
+   eina_strbuf_string_free(buf);
+   fail_if(eina_strbuf_length_get(buf));
+   eina_strbuf_append(buf, TEXT);
+   fail_if(strcmp(eina_strbuf_string_get(buf), TEXT));
+
eina_strbuf_free(buf);
 
eina_shutdown();

-- 




[EGIT] [core/efl] master 04/10: ecore_con: fix dns lookup crash issue.

2015-04-22 Thread Srivardhan Hebbar
cedric pushed a commit to branch master.

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

commit 05881ea61ab945fe255a71f9f900dc0fedc7f4f6
Author: Srivardhan Hebbar 
Date:   Wed Apr 22 14:19:46 2015 +0200

ecore_con: fix dns lookup crash issue.

Summary:
When executed ecore_con_lookup_example function, we were getting a crash. 
This is the fix for the crash. I analysed it in the valgrind and found the 
error. Valgrind reported invalid free at this place.
svr->name is getting freed in _ecore_con_server_eo_base_destructor function 
and svr is getting freed in ecore_con_shutdown function.
Signed-off-by: Srivardhan Hebbar 

Reviewers: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL 
---
 src/lib/ecore_con/ecore_con.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/src/lib/ecore_con/ecore_con.c b/src/lib/ecore_con/ecore_con.c
index e06a1a3..3e6ad7a 100644
--- a/src/lib/ecore_con/ecore_con.c
+++ b/src/lib/ecore_con/ecore_con.c
@@ -2950,9 +2950,7 @@ _ecore_con_lookup_done(void *data,
else
  lk->done_cb(NULL, NULL, NULL, 0, (void *)lk->data);
 
-   free(svr->name);
free(lk);
-   free(svr);
 }
 
 #include "ecore_con_base.eo.c"

-- 




[EGIT] [core/efl] master 05/10: eina: add test cases for eina file xattr functions.

2015-04-22 Thread vivek
cedric pushed a commit to branch master.

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

commit dab4fb492a0f6689f3f64275945c4214e6a496b3
Author: vivek 
Date:   Wed Apr 22 14:21:36 2015 +0200

eina: add test cases for eina file xattr functions.

Summary:
Added test cases for eina_file_xattr_get and eina_file_xattr_value_get 
functions

Signed-off-by: vivek 

Reviewers: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL 
---
 src/tests/eina/eina_test_file.c  | 73 
 src/tests/eina/eina_test_xattr.c |  4 ---
 2 files changed, 73 insertions(+), 4 deletions(-)

diff --git a/src/tests/eina/eina_test_file.c b/src/tests/eina/eina_test_file.c
index fec6054..38525bd 100644
--- a/src/tests/eina/eina_test_file.c
+++ b/src/tests/eina/eina_test_file.c
@@ -503,6 +503,76 @@ START_TEST(eina_test_file_path)
 }
 END_TEST
 
+#ifdef XATTR_TEST_DIR
+START_TEST(eina_test_file_xattr)
+{
+   Eina_File *ef;
+   char *filename = "tmpfile";
+   const char *attribute[] =
+ {
+"user.comment1",
+"user.comment2",
+"user.comment3"
+ };
+   const char *data[] =
+ {
+"This is a test file",
+"This line is a comment",
+"This file has extra attributes"
+ };
+   char *ret_str;
+   unsigned int i;
+   Eina_Bool ret;
+   Eina_Tmpstr *test_file_path;
+   Eina_Iterator *it;
+   int fd;
+   Eina_Xattr *xattr;
+
+   eina_init();
+   test_file_path = get_full_path(XATTR_TEST_DIR, filename);
+
+   fd = open(test_file_path, O_RDONLY | O_CREAT | O_TRUNC, S_IRWXU | S_IRWXG | 
S_IRWXO);
+   fail_if(fd == 0);
+   close(fd);
+
+   for (i = 0; i < sizeof(attribute) / sizeof(attribute[0]); ++i)
+ {
+ret = eina_xattr_set(test_file_path, attribute[i], data[i], 
strlen(data[i]), EINA_XATTR_INSERT);
+fail_if(ret != EINA_TRUE);
+ }
+
+   ef = eina_file_open(test_file_path, EINA_FALSE);
+   fail_if(!ef);
+
+   it = eina_file_xattr_get(ef);
+   EINA_ITERATOR_FOREACH(it, ret_str)
+ {
+for (i = 0; i < sizeof (attribute) / sizeof (attribute[0]); i++)
+  if (strcmp(attribute[i], ret_str) == 0)
+break ;
+fail_if(i == sizeof (attribute) / sizeof (attribute[0]));
+ }
+   eina_iterator_free(it);
+
+   it = eina_file_xattr_value_get(ef);
+   EINA_ITERATOR_FOREACH(it, xattr)
+ {
+for (i = 0; i < sizeof (data) / sizeof (data[0]); i++)
+  if (strcmp(attribute[i], xattr->name) == 0 &&
+  strcmp(data[i], xattr->value) == 0)
+break ;
+fail_if(i == sizeof (data) / sizeof (data[0]));
+ }
+   eina_iterator_free(it);
+
+   unlink(test_file_path);
+   eina_tmpstr_del(test_file_path);
+   eina_file_close(ef);
+   eina_shutdown();
+}
+END_TEST
+#endif
+
 void
 eina_test_file(TCase *tc)
 {
@@ -513,4 +583,7 @@ eina_test_file(TCase *tc)
tcase_add_test(tc, eina_test_file_virtualize);
tcase_add_test(tc, eina_test_file_thread);
tcase_add_test(tc, eina_test_file_path);
+#ifdef XATTR_TEST_DIR
+   tcase_add_test(tc, eina_test_file_xattr);
+#endif
 }
diff --git a/src/tests/eina/eina_test_xattr.c b/src/tests/eina/eina_test_xattr.c
index 72c0c3d..50e1ad0 100644
--- a/src/tests/eina/eina_test_xattr.c
+++ b/src/tests/eina/eina_test_xattr.c
@@ -42,7 +42,6 @@ START_TEST(eina_test_xattr_set)
char *filename = "tmpfile";
char *attribute1 = "user.comment1";
char *data1 = "This is comment 1";
-   char *attribute2 = "user.comment2";
char *data2 = "This is comment 2";
char *ret_str;
int fd;
@@ -78,9 +77,6 @@ START_TEST(eina_test_xattr_set)
ret = eina_xattr_del(test_file_path, attribute1);
fail_if(ret != EINA_TRUE);
 
-   ret = eina_xattr_del(test_file_path, attribute2);
-   fail_if(ret != EINA_FALSE);
-
ret = eina_xattr_fd_set(fd, attribute1, data1, strlen(data1), 
EINA_XATTR_CREATED);
fail_if(ret != EINA_TRUE);
ret_str = eina_xattr_fd_get(fd, attribute1, &len);

-- 




[EGIT] [core/efl] master 08/10: eio: add testcases for various eio_xattr types set and get functions.

2015-04-22 Thread vivek
cedric pushed a commit to branch master.

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

commit d86ed2a46c5f6a7a76fceff7d33ed934f87bb714
Author: vivek 
Date:   Wed Apr 22 14:52:55 2015 +0200

eio: add testcases for various eio_xattr types set and get functions.

Summary:
Added test cases for eio_file_xattr_string_set, eio_file_xattr_string_get, 
eio_file_xattr_int_set, eio_file_xattr_int_get, eio_file_xattr_double_get, 
eio_file_xattr_double set functions

Signed-off-by: vivek 

Reviewers: cedric

Reviewed By: cedric

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

Signed-off-by: Cedric BAIL 
---
 src/tests/eio/eio_test_xattr.c | 103 +
 1 file changed, 103 insertions(+)

diff --git a/src/tests/eio/eio_test_xattr.c b/src/tests/eio/eio_test_xattr.c
index a9a3582..f28d04f 100644
--- a/src/tests/eio/eio_test_xattr.c
+++ b/src/tests/eio/eio_test_xattr.c
@@ -13,6 +13,13 @@
 
 #include "eio_suite.h"
 
+static char *str_attr = "user.name";
+static char *str_data = "Vivek Ellur";
+static char *int_attr = "user.id";
+static int  int_data = 1234;
+static char *double_attr = "user.size";
+static double double_data = 123.456;
+
 const char *attribute[] =
   {
  "user.comment1",
@@ -85,6 +92,30 @@ _done_get_cb(void *data, Eio_File *handler EINA_UNUSED, 
const char *name, unsign
 }
 
 static void
+_done_string_cb(void *data EINA_UNUSED, Eio_File *handler EINA_UNUSED, const 
char *xattr_string)
+{
+   fail_if(strcmp(xattr_string, str_data) != 0);
+
+   ecore_main_loop_quit();
+}
+
+static void
+_done_int_cb(void *data EINA_UNUSED, Eio_File *handler EINA_UNUSED, int 
xattr_int)
+{
+   fail_if(xattr_int != int_data);
+
+   ecore_main_loop_quit();
+}
+
+static void
+_done_double_cb(void *data EINA_UNUSED, Eio_File *handler EINA_UNUSED, double 
xattr_double)
+{
+   fail_if(xattr_double != double_data);
+
+   ecore_main_loop_quit();
+}
+
+static void
 _error_cb(void *data EINA_UNUSED, Eio_File *handler EINA_UNUSED, int error)
 
 {
@@ -152,12 +183,84 @@ START_TEST(eio_test_xattr_set)
ecore_shutdown();
 }
 END_TEST
+
+START_TEST(eio_test_xattr_types_set)
+{
+   char *filename = "eio-tmpfile";
+
+   Eina_Tmpstr *test_file_path;
+   int  fd, num_of_attr=0;
+   Eio_File *fp;
+
+   ecore_init();
+   eina_init();
+   eio_init();
+
+   test_file_path = get_file_path(XATTR_TEST_DIR, filename);
+   fd = open(test_file_path,
+ O_WRONLY | O_CREAT | O_TRUNC,
+ S_IRWXU | S_IRWXG | S_IRWXO);
+   fail_if(fd == 0);
+   fp = eio_file_xattr_string_set(test_file_path, str_attr,
+str_data, EINA_XATTR_INSERT,
+_done_once_cb, _error_cb, &num_of_attr);
+
+   fail_if(num_of_attr != 0); // test asynchronous
+   fail_if(!fp);
+
+   ecore_main_loop_begin();
+
+   fp = eio_file_xattr_string_get(test_file_path, str_attr,
+  _done_string_cb, _error_cb, NULL);
+   fail_if(!fp);
+
+   ecore_main_loop_begin();
+
+   fp = eio_file_xattr_int_set(test_file_path, int_attr,
+int_data, EINA_XATTR_INSERT,
+_done_once_cb, _error_cb, &num_of_attr);
+
+   fail_if(num_of_attr != 0); // test asynchronous
+   fail_if(!fp);
+
+   ecore_main_loop_begin();
+
+   fp = eio_file_xattr_int_get(test_file_path, int_attr,
+  _done_int_cb, _error_cb, NULL);
+   fail_if(!fp);
+
+   ecore_main_loop_begin();
+
+   fp = eio_file_xattr_double_set(test_file_path, double_attr,
+double_data, EINA_XATTR_INSERT,
+_done_once_cb, _error_cb, &num_of_attr);
+
+   fail_if(num_of_attr != 0); // test asynchronous
+   fail_if(!fp);
+
+   ecore_main_loop_begin();
+
+   fp = eio_file_xattr_double_get(test_file_path, double_attr,
+  _done_double_cb, _error_cb, NULL);
+   fail_if(!fp);
+
+   ecore_main_loop_begin();
+
+   close(fd);
+   unlink(test_file_path);
+   eina_tmpstr_del(test_file_path);
+   eio_shutdown();
+   eina_shutdown();
+   ecore_shutdown();
+}
+END_TEST
 #endif
 
 void eio_test_xattr(TCase *tc)
 {
 #ifdef XATTR_TEST_DIR
tcase_add_test(tc, eio_test_xattr_set);
+   tcase_add_test(tc, eio_test_xattr_types_set);
 #else
(void)tc;
 #endif

-- 




[EGIT] [core/efl] master 10/10: ecore: build newly added Ecore_Con examples.

2015-04-22 Thread Cedric BAIL
cedric pushed a commit to branch master.

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

commit e866b42de5c4ea477d24b45665ab2d22495b237e
Author: Cedric BAIL 
Date:   Wed Apr 22 14:58:44 2015 +0200

ecore: build newly added Ecore_Con examples.
---
 src/examples/ecore/Makefile.am | 15 +--
 1 file changed, 13 insertions(+), 2 deletions(-)

diff --git a/src/examples/ecore/Makefile.am b/src/examples/ecore/Makefile.am
index 2f9db84..4479aa7 100644
--- a/src/examples/ecore/Makefile.am
+++ b/src/examples/ecore/Makefile.am
@@ -67,7 +67,9 @@ ecore_server_bench \
 ecore_thread_example \
 ecore_time_functions_example \
 ecore_timer_example \
-ecore_getopt_example
+ecore_getopt_example \
+ecore_con_eet_client_example \
+ecore_con_eet_server_example
 
 ECORE_COMMON_LDADD = \
 $(top_builddir)/src/lib/ecore/libecore.la \
@@ -237,6 +239,12 @@ ecore_timer_example_LDADD = $(ECORE_COMMON_LDADD)
 ecore_getopt_example_SOURCES = ecore_getopt_example.c
 ecore_getopt_example_LDADD = $(ECORE_COMMON_LDADD)
 
+ecore_con_eet_client_example_SOURCES = ecore_con_eet_client_example.c 
ecore_con_eet_descriptor_example.c
+ecore_con_eet_client_example_LDADD = $(ECORE_CON_COMMON_LDADD)
+
+ecore_con_eet_server_example_SOURCES = ecore_con_eet_server_example.c 
ecore_con_eet_descriptor_example.c
+ecore_con_eet_server_example_LDADD = $(ECORE_CON_COMMON_LDADD)
+
 SRCS = \
 ecore_animator_example.c \
 ecore_audio_custom.c \
@@ -279,7 +287,10 @@ ecore_server_bench.c \
 ecore_thread_example.c \
 ecore_time_functions_example.c \
 ecore_timer_example.c \
-ecore_getopt_example.c
+ecore_getopt_example.c \
+ecore_con_eet_client_example.c \
+ecore_con_eet_server_example.c \
+ecore_con_eet_descriptor_example.c 
 
 DATA_FILES = red.png Makefile.examples
 

-- 




[EGIT] [core/efl] master 03/10: ecore_con: fix ecore_con_lookup_example to actually exit when done.

2015-04-22 Thread Srivardhan Hebbar
cedric pushed a commit to branch master.

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

commit d560fe99a1aa9038355f4fbe442a88e8a064661d
Author: Srivardhan Hebbar 
Date:   Wed Apr 22 12:41:43 2015 +0200

ecore_con: fix ecore_con_lookup_example to actually exit when done.

Summary:
Without ecore_main_loop_quit the example won't end. So added that and as 
ecore_init is done in ecore_con_init removed that.

Signed-off-by: Srivardhan Hebbar 

Reviewers: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL 
---
 src/examples/ecore/ecore_con_lookup_example.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/src/examples/ecore/ecore_con_lookup_example.c 
b/src/examples/ecore/ecore_con_lookup_example.c
index 41a001e..3217dac 100644
--- a/src/examples/ecore/ecore_con_lookup_example.c
+++ b/src/examples/ecore/ecore_con_lookup_example.c
@@ -11,7 +11,7 @@ _lookup_done_cb(const char *canonname, const char *ip, struct 
sockaddr *addr, in
printf("canonname = %s\n", canonname);
printf("ip = %s\n", ip);
printf("addr = %p\n", addr);
-   printf("addrlen = %d\n", addrlen);
+   ecore_main_loop_quit();
 }
 
 int
@@ -23,7 +23,6 @@ main(int argc, const char *argv[])
 return -1;
  }
 
-   ecore_init();
ecore_con_init();
 
if (!ecore_con_lookup(argv[1], _lookup_done_cb, NULL))
@@ -36,7 +35,6 @@ main(int argc, const char *argv[])
 
 end:
ecore_con_shutdown();
-   ecore_shutdown();
 
return 0;
 }

-- 




[EGIT] [core/elementary] master 02/03: Spinner: use fabs for floating point absolute value.

2015-04-22 Thread Tom Hacohen
tasn pushed a commit to branch master.

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

commit c0d2a15d5121465c0f84e3e709c2c92f2b89f4f4
Author: Tom Hacohen 
Date:   Wed Apr 22 13:31:10 2015 +0100

Spinner: use fabs for floating point absolute value.
---
 src/lib/elm_spinner.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elm_spinner.c b/src/lib/elm_spinner.c
index e0e16a5..90d602a 100644
--- a/src/lib/elm_spinner.c
+++ b/src/lib/elm_spinner.c
@@ -376,7 +376,7 @@ _spin_value(void *data)
double real_speed = sd->spin_speed;
 
/* Sanity check: our step size should be at least as large as our rounding 
value */
-   if ((sd->spin_speed != 0.0) && (abs(sd->spin_speed) < sd->round))
+   if ((sd->spin_speed != 0.0) && (fabs(sd->spin_speed) < sd->round))
  {
 WRN("The spinning step is smaller than the rounding value, please 
check your code");
 real_speed = sd->spin_speed > 0 ? sd->round : -sd->round;

-- 




[EGIT] [core/elementary] master 03/03: Test gengrid: use the gengrid enum, and not the genlist one.

2015-04-22 Thread Tom Hacohen
tasn pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=3d0197bad1348db73d41de57cdd31ec37e5a9404

commit 3d0197bad1348db73d41de57cdd31ec37e5a9404
Author: Tom Hacohen 
Date:   Wed Apr 22 13:33:40 2015 +0100

Test gengrid: use the gengrid enum, and not the genlist one.

They are probably in sync, but this is just wrong.
Especially if people copy/paste this.
---
 src/bin/test_gengrid.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/test_gengrid.c b/src/bin/test_gengrid.c
index 5cd87a5..9a9832d 100644
--- a/src/bin/test_gengrid.c
+++ b/src/bin/test_gengrid.c
@@ -1414,7 +1414,7 @@ _grid5_search_item(grid5_Event_Data *event_data, 
Elm_Object_Item * it)
  {
 printf("Found.\n");
 elm_gengrid_item_selected_set(event_data->last_item_found, EINA_TRUE);
-elm_gengrid_item_bring_in(event_data->last_item_found, 
ELM_GENLIST_ITEM_SCROLLTO_MIDDLE);
+elm_gengrid_item_bring_in(event_data->last_item_found, 
ELM_GENGRID_ITEM_SCROLLTO_MIDDLE);
 elm_object_focus_set(event_data->en_obj, EINA_TRUE);
  }
else

-- 




[EGIT] [core/elementary] master 01/03: Gesture layer: fabs->abs for int parameters.

2015-04-22 Thread Tom Hacohen
tasn pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=15764b5162c99a7561a236d38338012ab869379b

commit 15764b5162c99a7561a236d38338012ab869379b
Author: Tom Hacohen 
Date:   Wed Apr 22 13:29:21 2015 +0100

Gesture layer: fabs->abs for int parameters.

Clear more correct clang warnings.
---
 src/lib/elm_gesture_layer.c | 12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/lib/elm_gesture_layer.c b/src/lib/elm_gesture_layer.c
index 81a7ee7..c126bbf 100644
--- a/src/lib/elm_gesture_layer.c
+++ b/src/lib/elm_gesture_layer.c
@@ -2260,8 +2260,8 @@ _angle_get(Evas_Coord xx1,
 {
double a, xx, yy, rt = (-1);
 
-   xx = fabs(xx2 - xx1);
-   yy = fabs(yy2 - yy1);
+   xx = abs(xx2 - xx1);
+   yy = abs(yy2 - yy1);
 
if (((int)xx) && ((int)yy))
  {
@@ -2528,8 +2528,8 @@ _momentum_test(Evas_Object *obj,
 st->line_end.y = pe_local.y;
 st->t_end = pe_local.timestamp;
 
-if ((fabs(st->info.mx) > ELM_GESTURE_MINIMUM_MOMENTUM) ||
-(fabs(st->info.my) > ELM_GESTURE_MINIMUM_MOMENTUM))
+if ((abs(st->info.mx) > ELM_GESTURE_MINIMUM_MOMENTUM) ||
+(abs(st->info.my) > ELM_GESTURE_MINIMUM_MOMENTUM))
   state_to_report = ELM_GESTURE_STATE_END;
 else
   state_to_report = ELM_GESTURE_STATE_ABORT;
@@ -2997,8 +2997,8 @@ _finger_gap_length_get(Evas_Coord xx1,
Evas_Coord *y)
 {
double a, b, xx, yy, gap;
-   xx = fabs(xx2 - xx1);
-   yy = fabs(yy2 - yy1);
+   xx = abs(xx2 - xx1);
+   yy = abs(yy2 - yy1);
gap = sqrt((xx * xx) + (yy * yy));
 
/* START - Compute zoom center point */

-- 




[EGIT] [core/efl] master 04/05: Ecore_evas wayland: remove double parenthesis around comparison.

2015-04-22 Thread Tom Hacohen
tasn pushed a commit to branch master.

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

commit 5b5b7113b7d24cb8b3935834a99eaf23393605ec
Author: Tom Hacohen 
Date:   Wed Apr 22 13:13:19 2015 +0100

Ecore_evas wayland: remove double parenthesis around comparison.

Double praenthesis should be used around assignments, not comparisons.
Doing this correctly all aronud lets the compiler warn us about potential
mistakes.
---
 src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c 
b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c
index 7e9e353..b5cfa56 100644
--- a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c
+++ b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c
@@ -380,7 +380,7 @@ _ecore_evas_wayland_shm_alpha_do(Ecore_Evas *ee, int alpha)
LOGFN(__FILE__, __LINE__, __FUNCTION__);
 
if (!ee) return;
-   if ((ee->alpha == alpha)) return;
+   if (ee->alpha == alpha) return;
ee->alpha = alpha;
wdata = ee->engine.data;
 
@@ -419,7 +419,7 @@ _ecore_evas_wayland_shm_transparent_do(Ecore_Evas *ee, int 
transparent)
LOGFN(__FILE__, __LINE__, __FUNCTION__);
 
if (!ee) return;
-   if ((ee->transparent == transparent)) return;
+   if (ee->transparent == transparent) return;
ee->transparent = transparent;
 
wdata = ee->engine.data;

-- 




[EGIT] [core/efl] master 03/05: Evas text utils: move the non-ot function into the current ifdef.

2015-04-22 Thread Tom Hacohen
tasn pushed a commit to branch master.

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

commit 450ff212e2d184a5b5f3dbbaf11ec9555a24dbb2
Author: Tom Hacohen 
Date:   Wed Apr 22 13:11:52 2015 +0100

Evas text utils: move the non-ot function into the current ifdef.

This function should only be build when OT is off. Move
it to the #else part of the ifdef.
---
 src/lib/evas/common/evas_text_utils.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib/evas/common/evas_text_utils.c 
b/src/lib/evas/common/evas_text_utils.c
index dc2407f..bef21fe 100644
--- a/src/lib/evas/common/evas_text_utils.c
+++ b/src/lib/evas/common/evas_text_utils.c
@@ -409,8 +409,7 @@ _content_create_ot(RGBA_Font_Int *fi, const Eina_Unicode 
*text,
 gl_itr++;
  }
 }
-#endif
-
+#else
 static inline void
 _content_create_regular(RGBA_Font_Int *fi, const Eina_Unicode *text,
   Evas_Text_Props *text_props, const Evas_BiDi_Paragraph_Props *par_props,
@@ -516,6 +515,7 @@ _content_create_regular(RGBA_Font_Int *fi, const 
Eina_Unicode *text,
   free(base_str);
 # endif
 }
+#endif
 
 EAPI Eina_Bool
 evas_common_text_props_content_create(void *_fi, const Eina_Unicode *text,

-- 




[EGIT] [core/efl] master 01/05: Eolian generator: remove unusued variable.

2015-04-22 Thread Tom Hacohen
tasn pushed a commit to branch master.

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

commit f62374b08a115ac1e8908755455cc5ca0233b227
Author: Tom Hacohen 
Date:   Wed Apr 22 13:03:17 2015 +0100

Eolian generator: remove unusued variable.
---
 src/bin/eolian/eo_generator.c | 10 --
 1 file changed, 10 deletions(-)

diff --git a/src/bin/eolian/eo_generator.c b/src/bin/eolian/eo_generator.c
index 9ab8946..fe81f1f 100644
--- a/src/bin/eolian/eo_generator.c
+++ b/src/bin/eolian/eo_generator.c
@@ -16,16 +16,6 @@ static _eolian_class_vars class_env;
 static Eina_Hash *_funcs_params_init = NULL;
 
 static const char
-tmpl_dtor[] = "\
-static void\n\
-_gen_@#class_class_destructor(Eo_Class *klass)\n\
-{\n\
-   _@#class_class_destructor(klass);\n\
-}\n\
-\n\
-";
-
-static const char
 tmpl_eo_ops_desc[] = "\
 static Eo_Op_Description _@#class_op_desc[] = {@#list_op\n\
  EO_OP_SENTINEL\n\

-- 




[EGIT] [core/efl] master 05/05: Eldbus: fix potential unsigned int underflow.

2015-04-22 Thread Tom Hacohen
tasn pushed a commit to branch master.

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

commit 5e4b523d51c11d073def64e3a2dd268eb3a9ae22
Author: Tom Hacohen 
Date:   Wed Apr 22 13:17:28 2015 +0100

Eldbus: fix potential unsigned int underflow.

Subtracting two unsigned values results in an unsigned value, which means
abs() will have no effect.
This also means that if base is smaller than size, we'll have an
unsigned int underflow.

I did it this way (with the if) because it looked like base might be
smaller than size. However, please remove the if (and don't reinstate
the abs) if this is not the case.
---
 src/lib/eldbus/eldbus_message_to_eina_value.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/eldbus/eldbus_message_to_eina_value.c 
b/src/lib/eldbus/eldbus_message_to_eina_value.c
index 777bf17..bac9860 100644
--- a/src/lib/eldbus/eldbus_message_to_eina_value.c
+++ b/src/lib/eldbus/eldbus_message_to_eina_value.c
@@ -91,7 +91,7 @@ _type_offset(char type, unsigned base)
  return base;
if (!(base % size))
  return base;
-   padding = abs(base - size);
+   padding = (base > size) ? base - size : size - base;
return base + padding;
 }
 

-- 




[EGIT] [core/efl] master 02/05: Eina safety: remove unused error string.

2015-04-22 Thread Tom Hacohen
tasn pushed a commit to branch master.

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

commit 811058a1ff074eebc5b1ed9bf5cedfa0a675e417
Author: Tom Hacohen 
Date:   Wed Apr 22 13:06:16 2015 +0100

Eina safety: remove unused error string.

At the moment there are no errors possible for safety checks.
This may change in the future (unlikely), so we have the eina_error
already exposed for that. However, there's no need for the string.

One more down towards a warningless build.
---
 src/lib/eina/eina_safety_checks.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/src/lib/eina/eina_safety_checks.c 
b/src/lib/eina/eina_safety_checks.c
index 5ae59ac..1ee6991 100644
--- a/src/lib/eina/eina_safety_checks.c
+++ b/src/lib/eina/eina_safety_checks.c
@@ -60,8 +60,6 @@ eina_safety_checks_shutdown(void)
 
 EAPI Eina_Error EINA_ERROR_SAFETY_FAILED = 0;
 
-static const char EINA_ERROR_SAFETY_FAILED_STR[] = "Safety check failed.";
-
 /**
  * @endcond
  */

-- 




[EGIT] [core/enlightenment] master 04/04: module/geolocation: Stop setting gadget icon from start and stop callbacks

2015-04-22 Thread Stefan Schmidt
stefan pushed a commit to branch master.

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

commit c79d0b1f8c42fed8cfc5eb0b28b9792251707517
Author: Stefan Schmidt 
Date:   Wed Apr 22 13:54:51 2015 +0200

module/geolocation: Stop setting gadget icon from start and stop callbacks

We keep track of this now by monitoring the InUse property which works also
if other clients use the service.
---
 src/modules/geolocation/e_mod_main.c | 16 
 1 file changed, 4 insertions(+), 12 deletions(-)

diff --git a/src/modules/geolocation/e_mod_main.c 
b/src/modules/geolocation/e_mod_main.c
index 8b8f22d..641ab14 100644
--- a/src/modules/geolocation/e_mod_main.c
+++ b/src/modules/geolocation/e_mod_main.c
@@ -147,25 +147,17 @@ popup_new(Instance *inst)
 }
 
 void
-cb_client_start(Eldbus_Proxy *proxy EINA_UNUSED, void *data, Eldbus_Pending 
*pending EINA_UNUSED,
-   Eldbus_Error_Info *error EINA_UNUSED)
+cb_client_start(Eldbus_Proxy *proxy EINA_UNUSED, void *data EINA_UNUSED,
+   Eldbus_Pending *pending EINA_UNUSED, Eldbus_Error_Info *error 
EINA_UNUSED)
 {
-   Instance *inst = data;
-
DBG("Client proxy start callback received");
-
-   edje_object_signal_emit(inst->icon, "e,state,location_on", "e");
 }
 
 void
-cb_client_stop(Eldbus_Proxy *proxy EINA_UNUSED, void *data, Eldbus_Pending 
*pending EINA_UNUSED,
-   Eldbus_Error_Info *error EINA_UNUSED)
+cb_client_stop(Eldbus_Proxy *proxy EINA_UNUSED, void *data EINA_UNUSED,
+   Eldbus_Pending *pending EINA_UNUSED, Eldbus_Error_Info *error 
EINA_UNUSED)
 {
-   Instance *inst = data;
-
DBG("Client proxy stop callback received");
-
-   edje_object_signal_emit(inst->icon, "e,state,location_off", "e");
 }
 
 static void

-- 




[EGIT] [core/enlightenment] master 02/04: modules/geolocation: Make module work with newer GeoClue2

2015-04-22 Thread Stefan Schmidt
stefan pushed a commit to branch master.

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

commit 0ac7f90aa77841fd3ead3a0585623191b4416eeb
Author: Stefan Schmidt 
Date:   Wed Apr 22 13:54:51 2015 +0200

modules/geolocation: Make module work with newer GeoClue2

In newer GeoClue2 version, tested with 2.1.10, we need to set
the DesktopId and AccurancyLevel to get a location object.
---
 src/modules/geolocation/e_mod_main.c | 17 +
 1 file changed, 17 insertions(+)

diff --git a/src/modules/geolocation/e_mod_main.c 
b/src/modules/geolocation/e_mod_main.c
index c07f96f..4568d51 100644
--- a/src/modules/geolocation/e_mod_main.c
+++ b/src/modules/geolocation/e_mod_main.c
@@ -52,6 +52,8 @@ struct _Instance
const char *description;
 };
 
+#define GCLUE_ACCURACY_LEVEL_EXACT 8;
+
 static Eina_List *geolocation_instances = NULL;
 static E_Module *geolocation_module = NULL;
 
@@ -278,6 +280,14 @@ cb_location_prop_description_get(void *data EINA_UNUSED, 
Eldbus_Pending *p EINA_
 }
 
 void
+cb_client_prop_set(void *data EINA_UNUSED, const char *propname EINA_UNUSED,
+  Eldbus_Proxy *proxy EINA_UNUSED, Eldbus_Pending 
*p EINA_UNUSED,
+  Eldbus_Error_Info *error_info EINA_UNUSED)
+{
+   DBG("Client %s property set callback received", propname);
+}
+
+void
 cb_client_location_updated_signal(void *data, const Eldbus_Message *msg)
 {
const char *new_path, *old_path;
@@ -312,6 +322,8 @@ cb_client_object_get(Eldbus_Proxy *proxy EINA_UNUSED, void 
*data, Eldbus_Pending
 Eldbus_Error_Info *error EINA_UNUSED, const char 
*client_path)
 {
Instance *inst = data;
+   int accuracy;
+   const char *desktopid;
 
DBG("Client object path: %s", client_path);
inst->client = geo_clue2_client_proxy_get(inst->conn, 
"org.freedesktop.GeoClue2", client_path);
@@ -321,6 +333,11 @@ cb_client_object_get(Eldbus_Proxy *proxy EINA_UNUSED, void 
*data, Eldbus_Pending
 return;
  }
 
+   desktopid = "Enlightenment-module";
+   geo_clue2_client_desktop_id_propset(inst->client, cb_client_prop_set, inst, 
desktopid);
+   accuracy = GCLUE_ACCURACY_LEVEL_EXACT;
+   geo_clue2_client_requested_accuracy_level_propset(inst->client, 
cb_client_prop_set, inst, (void*)(intptr_t)accuracy);
+
eldbus_proxy_signal_handler_add(inst->client, "LocationUpdated", 
cb_client_location_updated_signal, inst);
 }
 

-- 




[EGIT] [core/enlightenment] master 03/04: modules/geolocation: Follow InUse property change to give UI indication

2015-04-22 Thread Stefan Schmidt
stefan pushed a commit to branch master.

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

commit da6297cc37b7538389840b7e0ae3f081eb609cbe
Author: Stefan Schmidt 
Date:   Wed Apr 22 13:54:51 2015 +0200

modules/geolocation: Follow InUse property change to give UI indication

The InUse property of the manager object is available in newer GeoClue2
versions. It shows if the service is in use by any application at the
moment. We use this to indicate the usage in the UI.
A blue geolocation icon means the service is in use, the grey icon means
it is inactive.
---
 src/modules/geolocation/e_mod_main.c | 32 ++--
 1 file changed, 30 insertions(+), 2 deletions(-)

diff --git a/src/modules/geolocation/e_mod_main.c 
b/src/modules/geolocation/e_mod_main.c
index 4568d51..8b8f22d 100644
--- a/src/modules/geolocation/e_mod_main.c
+++ b/src/modules/geolocation/e_mod_main.c
@@ -39,7 +39,7 @@ struct _Instance
Evas_Object *popup_altitude;
Evas_Object *popup_accuracy;
Evas_Object *popup_description;
-   Eina_Bool   in_use;
+   int in_use;
Eldbus_Connection *conn;
Eldbus_Service_Interface *iface;
Eldbus_Proxy *manager;
@@ -341,6 +341,32 @@ cb_client_object_get(Eldbus_Proxy *proxy EINA_UNUSED, void 
*data, Eldbus_Pending
eldbus_proxy_signal_handler_add(inst->client, "LocationUpdated", 
cb_client_location_updated_signal, inst);
 }
 
+static void
+cb_manager_props_changed(void *data, Eldbus_Proxy *proxy EINA_UNUSED, void 
*event)
+{
+   Eldbus_Proxy_Event_Property_Changed *ev;
+   int val;
+   Eina_Value v;
+   Instance *inst = data;
+
+   ev = event;
+   DBG("Manager property changed: %s", ev->name);
+
+   if (strcmp(ev->name, "InUse") == 0)
+ {
+eina_value_setup(&v, EINA_VALUE_TYPE_INT);
+eina_value_convert(ev->value, &v);
+eina_value_get(&v, &val);
+inst->in_use = val;
+DBG("Manager InUse property changed to %i", inst->in_use);
+
+if (inst->in_use)
+  edje_object_signal_emit(inst->icon, "e,state,location_on", "e");
+   else
+  edje_object_signal_emit(inst->icon, "e,state,location_off", "e");
+ }
+}
+
 static E_Gadcon_Client *
 _gc_init(E_Gadcon *gc, const char *name, const char *id, const char *style)
 {
@@ -368,7 +394,7 @@ _gc_init(E_Gadcon *gc, const char *name, const char *id, 
const char *style)
inst->accuracy = 0.0;
inst->altitude= 0.0 ;
inst->description = NULL;
-   inst->in_use = EINA_FALSE;
+   inst->in_use = 0;
edje_object_signal_emit(inst->icon, "e,state,location_off", "e");
 
evas_object_event_callback_add(inst->icon,
@@ -392,6 +418,8 @@ _gc_init(E_Gadcon *gc, const char *name, const char *id, 
const char *style)
 return NULL;
  }
 
+   eldbus_proxy_event_callback_add(inst->manager, 
ELDBUS_PROXY_EVENT_PROPERTY_CHANGED, cb_manager_props_changed, inst);
+
geo_clue2_manager_get_client_call(inst->manager, cb_client_object_get, 
inst);
 
return gcc;

-- 




[EGIT] [core/enlightenment] master 01/04: modules/geolocation: Only display a valid altitude value

2015-04-22 Thread Stefan Schmidt
stefan pushed a commit to branch master.

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

commit e01edf1f5958e0dab565aec58181eaaa3e489faf
Author: Stefan Schmidt 
Date:   Wed Apr 22 13:54:51 2015 +0200

modules/geolocation: Only display a valid altitude value

If our backends does no know the altitude it sets it to -DBL_MAX as 0
is a valid altitude value. Check for it and  display N/A if it is not valid.
---
 src/modules/geolocation/e_mod_main.c | 14 --
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/src/modules/geolocation/e_mod_main.c 
b/src/modules/geolocation/e_mod_main.c
index dad2b02..c07f96f 100644
--- a/src/modules/geolocation/e_mod_main.c
+++ b/src/modules/geolocation/e_mod_main.c
@@ -4,6 +4,8 @@
 #include "eldbus_geo_clue2_client.h"
 #include "eldbus_geo_clue2_location.h"
 
+#include 
+
 /* gadcon requirements */
 static E_Gadcon_Client *_gc_init(E_Gadcon *gc, const char *name, const char 
*id, const char *style);
 static void _gc_shutdown(E_Gadcon_Client *gcc);
@@ -67,7 +69,11 @@ popup_update(Instance *inst)
snprintf(buf, sizeof(buf), _("Longitude:  %f"), inst->longitude);
e_widget_label_text_set(inst->popup_longitude, buf);
 
-   snprintf(buf, sizeof(buf), _("Altitude:  %f"), inst->altitude);
+   if (inst->altitude != -DBL_MAX)
+snprintf(buf, sizeof(buf), _("Altitude:  %f"), inst->altitude);
+   else
+snprintf(buf, sizeof(buf), _("Altitude:  N/A"));
+
e_widget_label_text_set(inst->popup_altitude, buf);
 
snprintf(buf, sizeof(buf), _("Accuracy:  %f"), inst->accuracy);
@@ -115,7 +121,11 @@ popup_new(Instance *inst)
inst->popup_longitude = e_widget_label_add(evas, buf);
e_widget_list_object_append(list, inst->popup_longitude, 1, 1, 0.5);
 
-   snprintf(buf, sizeof(buf), _("Altitude:  %f"), inst->altitude);
+   if (inst->altitude != -DBL_MAX)
+snprintf(buf, sizeof(buf), _("Altitude:  %f"), inst->altitude);
+   else
+snprintf(buf, sizeof(buf), _("Altitude:  N/A"));
+
inst->popup_altitude = e_widget_label_add(evas, buf);
e_widget_list_object_append(list, inst->popup_altitude, 1, 1, 0.5);
 

-- 




[EGIT] [admin/release-management] master 01/01: distro_version_fetching: Add non-working section for Elive

2015-04-22 Thread Stefan Schmidt
stefan pushed a commit to branch master.

http://git.enlightenment.org/admin/release-management.git/commit/?id=e1a0192dcb245cbb1923862a22fed10f7745283f

commit e1a0192dcb245cbb1923862a22fed10f7745283f
Author: Stefan Schmidt 
Date:   Wed Apr 22 11:17:01 2015 +0200

distro_version_fetching: Add non-working section for Elive

The regex handling seems to get it wrong here.
---
 distributions_versions_fetch_script.py | 8 +++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/distributions_versions_fetch_script.py 
b/distributions_versions_fetch_script.py
index d7e2b88..a102eba 100755
--- a/distributions_versions_fetch_script.py
+++ b/distributions_versions_fetch_script.py
@@ -47,7 +47,13 @@ def main():
, 
"https://apps.fedoraproject.org/packages/enlightenment";, 
"//*[@id=\"package-info-bar\"]/div[1]/div[2]/text()", ""
, 
"https://apps.fedoraproject.org/packages/terminology";, 
"//*[@id=\"package-info-bar\"]/div[1]/div[2]/text()", ""
),
-   #("Elive", 
"http://repository.elivecd.org/pool/efl/libe/libefl/";, 
"/html/body/pre/a/text()[starts-with(.,'libefl1_')]", "libefl1_"),
+   ("Elive", 
"http://repository.elivecd.org/pool/efl/libe/libefl/";, 
"/html/body/pre/a/text()[starts-with(.,'libefl1_')]", "libefl1_"
+   , 
"http://repository.elivecd.org/pool/efl/e/elementary/";, 
"/html/body/pre/a/text()[starts-with(.,'libelementary1_')]", "libelementary1_"
+   , 
"http://repository.elivecd.org/pool/efl/libe/libevas-generic-loaders/";, 
"/html/body/pre/a/text()[starts-with(.,'libevas-generic-loaders1_2.6.3+v')]", 
"libevas-generic-loaders1_2.6.3+v"
+   , 
"http://repository.elivecd.org/pool/efl/libe/libemotion-generic-players";, 
"/html/body/pre/a/text()[starts-with(.,'libemotion-generic-players1_')]", 
"libemotion-generic-players1_"
+   , 
"http://repository.elivecd.org/pool/efl/e/e19-plain/";, 
"/html/body/pre/a/text()[starts-with(.,'e19-plain_2.5.6+v')]", 
"e19-plain_2.5.6+v"
+   , 
"http://repository.elivecd.org/pool/efl/t/terminology/";, 
"/html/body/pre/a/text()[starts-with(.,'terminology_2.6.0+v')]", 
"terminology_2.6.0+v"
+),
#("Arch", 
"https://www.archlinux.org/packages/extra/x86_64/efl/";, 
"/html/body/div[@id=\"content\"]/div[@id=\"pkgdetails\"]/h2/text()", "efl "),
#("openSUSE 13.2", 
"http://download.opensuse.org/update/13.2/x86_64/";, 
"/html/body/pre/a/text()[starts-with(., 'efl-')]", "efl-"),
#("Gentoo", "https://packages.gentoo.org/package/dev-libs/efl";, 
"//td[@class=\"ebuild\"][2]/text()", ""),

-- 




[EGIT] [core/enlightenment] master 01/01: e screenlock config diloag - note insecureness for personal pw/pin

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

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

commit 40a91376c6024b08e99981a61376be3927aa9c61
Author: Carsten Haitzler (Rasterman) 
Date:   Wed Apr 22 17:03:44 2015 +0900

e screenlock config diloag - note insecureness for personal pw/pin

these store pin/pw in your user config files - it may be primitively
hashed to obscure it, but it's there. it never pretended to have
secure storage and even saved cleartext until e19. make sure people
are aware
---
 src/modules/conf_display/e_int_config_desklock.c | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/modules/conf_display/e_int_config_desklock.c 
b/src/modules/conf_display/e_int_config_desklock.c
index 8e36f88..cff0f73 100644
--- a/src/modules/conf_display/e_int_config_desklock.c
+++ b/src/modules/conf_display/e_int_config_desklock.c
@@ -238,23 +238,23 @@ _basic_create(E_Config_Dialog *cfd, Evas *evas, 
E_Config_Dialog_Data *cfdata)
ow = e_widget_radio_add(evas, _("Use System Authentication"), 
E_DESKLOCK_AUTH_METHOD_SYSTEM, rg);
evas_object_smart_callback_add(ow, "changed", _login_method_change, cfdata);
e_widget_list_object_append(ol, ow, 1, 1, 0.5);
-   ow = e_widget_radio_add(evas, _("Use Personal Screenlock Password"), 
E_DESKLOCK_AUTH_METHOD_PERSONAL, rg);
+   ow = e_widget_radio_add(evas, _("Use Personal Screenlock Password 
(insecure)"), E_DESKLOCK_AUTH_METHOD_PERSONAL, rg);
evas_object_smart_callback_add(ow, "changed", _login_method_change, cfdata);
e_widget_list_object_append(ol, ow, 1, 1, 0.5);
-   ow = e_widget_radio_add(evas, _("Use PIN"), E_DESKLOCK_AUTH_METHOD_PIN, rg);
+   ow = e_widget_radio_add(evas, _("Use PIN (insecure)"), 
E_DESKLOCK_AUTH_METHOD_PIN, rg);
evas_object_smart_callback_add(ow, "changed", _login_method_change, cfdata);
e_widget_list_object_append(ol, ow, 1, 1, 0.5);
ow = e_widget_radio_add(evas, _("Use External Screenlock Command"), 
E_DESKLOCK_AUTH_METHOD_EXTERNAL, rg);
evas_object_smart_callback_add(ow, "changed", _login_method_change, cfdata);
e_widget_list_object_append(ol, ow, 1, 1, 0.5);
 
-   of = e_widget_framelist_add(evas, _("Personal Screenlock Password"), 0);
+   of = e_widget_framelist_add(evas, _("Personal Screenlock Password 
(insecure)"), 0);
cfdata->passwd_entry = ow = e_widget_entry_add(cfd->dia->win, 
&(cfdata->desklock_personal_passwd), NULL, NULL, NULL);
e_widget_entry_password_set(ow, 1);
e_widget_framelist_object_append(of, ow);
e_widget_list_object_append(ol, of, 1, 1, 0.5);
 
-   of = e_widget_framelist_add(evas, _("PIN Entry"), 0);
+   of = e_widget_framelist_add(evas, _("PIN Entry (insecure)"), 0);
cfdata->pin_entry = ow = e_widget_entry_add(cfd->dia->win, 
&(cfdata->pin_str), NULL, NULL, NULL);
e_widget_entry_password_set(ow, 1);
e_widget_framelist_object_append(of, ow);

-- 




[EGIT] [core/elementary] master 01/01: elm_photocam: Limiting image reload in zoom in/out

2015-04-22 Thread kabeer khan
raster pushed a commit to branch master.

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

commit a7978f931a4b67820b6b65758ce6f362c1ebec70
Author: kabeer khan 
Date:   Wed Apr 22 17:05:51 2015 +0900

elm_photocam: Limiting image reload in zoom in/out

Summary:
Reloading image in zoom in/out only if its previous orientation was changed
@fix
Signed-off-by: kabeer khan 

Reviewers: jpeg, raster, cedric

Differential Revision: https://phab.enlightenment.org/D2402
---
 src/lib/elm_photocam.c | 7 +--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/lib/elm_photocam.c b/src/lib/elm_photocam.c
index 96e98af..d60ceef 100644
--- a/src/lib/elm_photocam.c
+++ b/src/lib/elm_photocam.c
@@ -1301,8 +1301,11 @@ _elm_photocam_image_orient_set(Eo *obj, 
Elm_Photocam_Data *sd, Evas_Image_Orient
Eina_List *l;
Elm_Phocam_Grid *g, *g_orient = NULL;
 
-   if (sd->orient == orient) return;
-
+   if (sd->orient == orient)
+ {
+sd->orientation_changed = EINA_FALSE;
+return;
+ }
sd->orientation_changed = EINA_TRUE;
sd->orient = orient;
g = _grid_create(obj);

-- 




[EGIT] [core/enlightenment] master 01/01: po: Remove unused e_int_config_randr.c file from POTFILES.in to pass distcheck

2015-04-22 Thread Stefan Schmidt
stefan pushed a commit to branch master.

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

commit d65ed603ad55816d1b160ba0a4beebc479c75073
Author: Stefan Schmidt 
Date:   Wed Apr 22 09:43:16 2015 +0200

po: Remove unused e_int_config_randr.c file from POTFILES.in to pass 
distcheck

This file is still around while not really used. It is also not distributed 
and
thus fails if po tries to update during distcheck with this file still in 
list.
---
 po/POTFILES.in | 1 -
 1 file changed, 1 deletion(-)

diff --git a/po/POTFILES.in b/po/POTFILES.in
index f692a09..c59c782 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -172,7 +172,6 @@ src/modules/conf_paths/e_mod_main.c
 src/modules/conf_performance/e_int_config_performance.c
 src/modules/conf_performance/e_int_config_powermanagement.c
 src/modules/conf_performance/e_mod_main.c
-src/modules/conf_randr/e_int_config_randr.c
 src/modules/conf_randr/e_int_config_randr2.c
 src/modules/conf_randr/e_mod_main.c
 src/modules/conf_shelves/e_int_config_shelf.c

-- 




[EGIT] [apps/rage] master 01/01: mrk build -> 0.1.3

2015-04-22 Thread Carsten Haitzler (Rasterman)
raster pushed a commit to branch master.

http://git.enlightenment.org/apps/rage.git/commit/?id=db9781ac0ad1beb4f886fe6d7bb16b89adb5319d

commit db9781ac0ad1beb4f886fe6d7bb16b89adb5319d
Author: Carsten Haitzler (Rasterman) 
Date:   Wed Apr 22 16:35:56 2015 +0900

mrk build -> 0.1.3

thanks stefan
---
 Marrakesh.mrk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Marrakesh.mrk b/Marrakesh.mrk
index 34d19bb..bbf043d 100644
--- a/Marrakesh.mrk
+++ b/Marrakesh.mrk
@@ -1,7 +1,7 @@
 PROJ: Rage
 PROJICON: data/icons/rage.png
 BRIEF: A beautiful video media player
-VERSION: 0.1.2
+VERSION: 0.1.3
 LICENSE: BSD-2
 COPYING: COPYING AUTHORS
 NEEDS: 1.13

-- 




[EGIT] [core/elementary] master 01/01: Genlist: Fix for memory leak

2015-04-22 Thread Vaibhav Gupta
hermet pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=1baec2473b02fae0b15e7891aac523af95e5725a

commit 1baec2473b02fae0b15e7891aac523af95e5725a
Author: Vaibhav Gupta 
Date:   Wed Apr 22 16:06:14 2015 +0900

Genlist: Fix for memory leak

Summary:
Fix memory leak in
API _elm_genlist_item_elm_interface_atspi_accessible_name_get()
added free after _elm_util_mkup_to_text.

@fix

Reviewers: raster, singh.amitesh, Hermet

Reviewed By: Hermet

Subscribers: sachin.dev, singh.amitesh

Differential Revision: https://phab.enlightenment.org/D2390
---
 src/lib/elm_genlist.c | 11 ++-
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/src/lib/elm_genlist.c b/src/lib/elm_genlist.c
index 17fa6d3..92101fc 100644
--- a/src/lib/elm_genlist.c
+++ b/src/lib/elm_genlist.c
@@ -7693,16 +7693,17 @@ 
_elm_genlist_item_elm_interface_atspi_accessible_name_get(Eo *eo_it EINA_UNUSED,
 
 EINA_LIST_FREE(texts, key)
   {
- char *s = it->itc->func.text_get
+ char *str_markup = it->itc->func.text_get
 ((void *)WIDGET_ITEM_DATA_GET(EO_OBJ(it)), WIDGET(it), key);
+ char *str_utf8 = _elm_util_mkup_to_text(str_markup);
 
- s = _elm_util_mkup_to_text(s);
+ free(str_markup);
 
- if (s)
+ if (str_utf8)
{
   if (eina_strbuf_length_get(buf) > 0) eina_strbuf_append(buf, 
", ");
-  eina_strbuf_append(buf, s);
-  free(s);
+  eina_strbuf_append(buf, str_utf8);
+  free(str_utf8);
}
   }
  }

--