[E-devel] CServe2

2018-08-02 Thread Chris Michael

Hi All,

I did some investigating into cserve2 support today, only to find out 
that it's broken :( It turns out that it's always had some bugs and thus 
was never turned on. Seeing as how it is unlikely to ever be bug-fixed, 
maintained, or even enabled I cannot see keeping this code around as it 
just sits there with no hope of ever working.


If there are no objections, I will work on removing cserve2 sometime 
after the 1.21 release goes out. If you Do have objections, please speak 
up !!


Cheers,
devilhorns

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] CServe2

2018-08-01 Thread Chris Michael

Hi All,

I did some investigating into cserve2 support a couple weeks ago, only 
to find out that it's broken :( It turns out that it's always had some 
bugs and thus was never turned on. Seeing as how it is unlikely to ever 
be bug-fixed, maintained, or even enabled I cannot see keeping this code 
around as it just sits there with no hope of ever working.


If there are no objections, I will work on removing cserve2 sometime 
after the 1.21 release goes out. If you Do have objections, please speak 
up !!


Cheers,
devilhorns

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [apps/express] master 01/01: express: Be sure we have an IP address before trying to resolv server name

2017-02-12 Thread Chris Michael
devilhorns pushed a commit to branch master.

http://git.enlightenment.org/apps/express.git/commit/?id=9797a70b60746730aa80fcc945fdc65b1c1b27e1

commit 9797a70b60746730aa80fcc945fdc65b1c1b27e1
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Sun Feb 12 08:51:39 2017 -0500

express: Be sure we have an IP address before trying to resolv server name

Small patch to fix a segfault which could happen if
ecore_con_server_ip_get does not return an IP address.

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/main.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/lib/main.c b/src/lib/main.c
index a08019a..dc24cf2 100644
--- a/src/lib/main.c
+++ b/src/lib/main.c
@@ -73,6 +73,7 @@ _cb_server_add(void *data EINA_UNUSED, int type EINA_UNUSED, 
void *event)
 
server = ecore_con_server_name_get(ev->server);
ip = ecore_con_server_ip_get(ev->server);
+   if (!ip) return ECORE_CALLBACK_RENEW;
 
name = _server_name_get(ip);
DBG("Server Added %s %s", server, ip);

-- 




[EGIT] [admin/devs] master 01/01: devs: Update geolocation and managing projects

2017-01-04 Thread Chris Michael
devilhorns pushed a commit to branch master.

http://git.enlightenment.org/admin/devs.git/commit/?id=48d03725f8e3992543dfb39035371fb1cdb9555f

commit 48d03725f8e3992543dfb39035371fb1cdb9555f
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Wed Jan 4 08:20:56 2017 -0500

devs: Update geolocation and managing projects

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 developers/devilhorns/info.txt | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/developers/devilhorns/info.txt b/developers/devilhorns/info.txt
index 8516d6c..5fa146a 100644
--- a/developers/devilhorns/info.txt
+++ b/developers/devilhorns/info.txt
@@ -5,7 +5,7 @@ Name: Christopher Michael
 Location: New Jersey, US
 E-Mail: devilho...@comcast.net
 WWW: http://home.comcast.net/~devilhorns
-Managing: General E patch monkey, emprint, emodules, illume2, evas, ecore, 
elementary, E17, EFL Wayland
+Managing: General E patch monkey, emprint, emodules, illume2, evas, ecore, 
elementary, E17, EFL Wayland, ecore_drm2, ecore_wl2, elput
 Group: Core, Applications, Libraries
 Platform: Gentoo/Sabayon/Arch
-GeoData:  39.90294, -75.07397
+GeoData:  39.892212, -74.874357

-- 




[EGIT] [core/efl] master 01/01: evas: Fix compiling evas x engine with no gles

2016-08-03 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit e4c641ed1e5607651e2d43a832e7cc01471f3fd6
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Wed Aug 3 08:54:54 2016 -0400

evas: Fix compiling evas x engine with no gles

This fixes an issue from 19eb7b727fbf35620a13fb65b50d3 where the code
would no longer compile due to not finding noext_glXCreatePixmap in
the structure. This was due to the fact that this field was not
compiled into the structure if gl_gles was defined.

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/modules/evas/engines/gl_x11/evas_x_main.c | 7 +++
 1 file changed, 7 insertions(+)

diff --git a/src/modules/evas/engines/gl_x11/evas_x_main.c 
b/src/modules/evas/engines/gl_x11/evas_x_main.c
index 9e03851..98dfcc8 100644
--- a/src/modules/evas/engines/gl_x11/evas_x_main.c
+++ b/src/modules/evas/engines/gl_x11/evas_x_main.c
@@ -542,7 +542,9 @@ try_gles2:
  // ALSO as of some nvidia driver version loose binding is
  // probably not needed
  if (v1 < 195) gw->detected.loose_binding = 1;
+#ifndef GL_GLES
  if (v1 >= 360) gw->detected.noext_glXCreatePixmap = 1;
+#endif
   }
  }
else
@@ -558,7 +560,12 @@ try_gles2:
gw->detected.msaa = val;
 #endif
 
+#ifndef GL_GLES
eng_gl_symbols(gw->detected.noext_glXCreatePixmap);
+#else
+   eng_gl_symbols(EINA_FALSE); // EINA_FALSE is ignored anyway for gl_gles
+#endif
+
gw->gl_context = glsym_evas_gl_common_context_new();
if (!gw->gl_context)
  {

-- 




[EGIT] [core/efl] master 01/01: ecore-drm2: Fix issue of VT-Switching going blank on returns

2016-07-27 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 4431ff01ffc40fc55c0923bee03296f67ee5ef65
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Wed Jul 27 15:35:42 2016 -0400

ecore-drm2: Fix issue of VT-Switching going blank on returns

As it turns out, when we vt-switch Back to a running Enlightenment,
it ends up processing all outputs and causes Evas to create a giant
canvas to cover all outputs. This new canvas causes a blank screen as
the pageflipping fails (due to fb being too large). As we do not yet
support output on more an one screen anyway, temporarily disable any
output which is not marked as primary.

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/ecore_drm2/ecore_drm2_outputs.c | 25 +++--
 1 file changed, 23 insertions(+), 2 deletions(-)

diff --git a/src/lib/ecore_drm2/ecore_drm2_outputs.c 
b/src/lib/ecore_drm2/ecore_drm2_outputs.c
index 1eb50d6..f44bee8 100644
--- a/src/lib/ecore_drm2/ecore_drm2_outputs.c
+++ b/src/lib/ecore_drm2/ecore_drm2_outputs.c
@@ -83,6 +83,8 @@ _output_event_send(Ecore_Drm2_Output *output)
 {
Ecore_Drm2_Event_Output_Changed *ev;
 
+   if ((!output->enabled) && (!output->connected)) return;
+
ev = calloc(1, sizeof(Ecore_Drm2_Event_Output_Changed));
if (!ev) return;
 
@@ -594,6 +596,12 @@ _output_create(Ecore_Drm2_Device *dev, const drmModeRes 
*res, const drmModeConne
 
if (!eina_list_count(dev->outputs))
  output->primary = EINA_TRUE;
+   else
+ {
+/* temporarily disable other outputs which are not primary */
+output->connected = EINA_FALSE;
+output->enabled = EINA_FALSE;
+ }
 
dev->alloc.crtc |= (1 << output->crtc_id);
dev->alloc.conn |= (1 << output->conn_id);
@@ -979,16 +987,29 @@ ecore_drm2_output_enabled_set(Ecore_Drm2_Output *output, 
Eina_Bool enabled)
 {
EINA_SAFETY_ON_NULL_RETURN(output);
 
+   if (!output->connected) return;
if (output->enabled == enabled) return;
output->enabled = enabled;
 
if (output->enabled)
- ecore_drm2_output_dpms_set(output, DRM_MODE_DPMS_ON);
+ {
+Ecore_Drm2_Fb *fb;
+
+if (output->current) fb = output->current;
+else if (output->next) fb = output->next;
+
+drmModeSetCrtc(output->fd, output->crtc_id, fb->id,
+   output->x, output->y,
+   >conn_id, 1,
+   >current_mode->info);
+
+ecore_drm2_output_dpms_set(output, DRM_MODE_DPMS_ON);
+ }
else
  {
 ecore_drm2_output_dpms_set(output, DRM_MODE_DPMS_OFF);
 output->current = NULL;
-output->next = NULL;
+/* output->next = NULL; */
  }
 
_output_event_send(output);

-- 




[EGIT] [core/enlightenment] master 01/01: add key_up and key_down methods to sreen interface

2016-07-27 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 35febc367d9ce0266f400f52c6fadcfec8ccc4a3
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Wed Jul 27 13:31:13 2016 -0400

add key_up and key_down methods to sreen interface

This patch adds new methods to the screen interface that we can use
inside wl_drm to determine if a key event is eaten or not. This fixes
an issue where VT-Switching would not work if an application was on
the screen (E-Wayland).

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/bin/e_comp.h|  4 
 src/bin/e_comp_canvas.c | 16 ++--
 src/modules/wl_drm/e_mod_main.c | 37 +
 3 files changed, 51 insertions(+), 6 deletions(-)

diff --git a/src/bin/e_comp.h b/src/bin/e_comp.h
index c391993..571e1b2 100644
--- a/src/bin/e_comp.h
+++ b/src/bin/e_comp.h
@@ -70,6 +70,10 @@ typedef struct E_Comp_Screen_Iface
void (*apply)(void);
/* set dpms (on, standby, suspend, off) */
void (*dpms)(int);
+   /* is key event eaten */
+   Eina_Bool (*key_down)(Ecore_Event_Key *ev);
+   /* is key event eaten */
+   Eina_Bool (*key_up)(Ecore_Event_Key *ev);
 } E_Comp_Screen_Iface;
 
 struct _E_Comp
diff --git a/src/bin/e_comp_canvas.c b/src/bin/e_comp_canvas.c
index 7d077ab..0289b42 100644
--- a/src/bin/e_comp_canvas.c
+++ b/src/bin/e_comp_canvas.c
@@ -118,11 +118,13 @@ _key_down(int ctx, Ecore_Event_Key *ev)
  */
 if ((!ec) || (ev->event_window != e_comp->ee_win)) return 
ECORE_CALLBACK_RENEW;
  }
-   return !e_bindings_key_down_event_handle(ctx, E_OBJECT(e_comp), ev)
+   return ((!e_comp->screen) ||
+   (!e_comp->screen->key_down) || (!e_comp->screen->key_down(ev))) &&
+ !e_bindings_key_down_event_handle(ctx, E_OBJECT(e_comp), ev)
 #ifdef HAVE_WAYLAND
-  && !e_comp_wl_key_down(ev)
+   && !e_comp_wl_key_down(ev)
 #endif
-  ;
+ ;
 }
 
 static Eina_Bool
@@ -142,11 +144,13 @@ _key_up(int ctx, Ecore_Event_Key *ev)
 {
e_screensaver_notidle();
if ((e_comp->comp_type == E_PIXMAP_TYPE_X) && (ev->event_window != 
e_comp->root)) return ECORE_CALLBACK_PASS_ON;
-   return !e_bindings_key_up_event_handle(ctx, E_OBJECT(e_comp), ev)
+   return ((!e_comp->screen) ||
+   (!e_comp->screen->key_up) || (!e_comp->screen->key_up(ev))) &&
+ !e_bindings_key_up_event_handle(ctx, E_OBJECT(e_comp), ev)
 #ifdef HAVE_WAYLAND
-  && !e_comp_wl_key_up(ev)
+   && !e_comp_wl_key_up(ev)
 #endif
-  ;
+ ;
 }
 
 static Eina_Bool
diff --git a/src/modules/wl_drm/e_mod_main.c b/src/modules/wl_drm/e_mod_main.c
index 98f31a8..5f50f2d 100644
--- a/src/modules/wl_drm/e_mod_main.c
+++ b/src/modules/wl_drm/e_mod_main.c
@@ -736,6 +736,41 @@ _drm2_dpms(int set)
  }
 }
 
+static Eina_Bool
+_drm2_key_down(Ecore_Event_Key *ev)
+{
+   int code;
+
+   code = (ev->keycode - 8);
+
+   if ((ev->modifiers & ECORE_EVENT_MODIFIER_CTRL) &&
+   ((ev->modifiers & ECORE_EVENT_MODIFIER_ALT) ||
+   (ev->modifiers & ECORE_EVENT_MODIFIER_ALTGR)) &&
+   (code >= KEY_F1) && (code <= KEY_F8))
+ {
+Ecore_Drm2_Device *dev;
+int vt;
+
+vt = (code - KEY_F1 + 1);
+
+dev = ecore_evas_data_get(e_comp->ee, "device");
+if (dev)
+  {
+ ecore_drm2_device_vt_set(dev, vt);
+ return EINA_TRUE;
+  }
+ }
+
+   return EINA_FALSE;
+}
+
+static Eina_Bool
+_drm2_key_up(Ecore_Event_Key *ev)
+{
+   (void)ev;
+   return EINA_FALSE;
+}
+
 static void
 _drm2_read_pixels(E_Comp_Wl_Output *output, void *pixels)
 {
@@ -1143,6 +1178,8 @@ static E_Comp_Screen_Iface drmiface =
.create = _drm2_randr_create,
.apply = _drm2_randr_apply,
.dpms = _drm2_dpms,
+   .key_down = _drm2_key_down,
+   .key_up = _drm2_key_up,
 #else
.create = _drm_randr_create,
.apply = _drm_randr_apply,

-- 




[EGIT] [core/efl] master 01/01: ecore-drm2: Add API for vt-switching

2016-07-27 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 1bbc23b0863edee9a19603aaf3360489f483
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Wed Jul 27 13:28:10 2016 -0400

ecore-drm2: Add API for vt-switching

This commit adds a function we can call from inside Enlightenment in
order to fix an issue with VT-Switching. The problem was when a client
application is open, the compositor does not pass along the key-combo
for vt-switch but rather sends it to an application. This patch (along
with upcoming Enlightenment one) fixes the issue.

NB: This late API add approved by Stefan ;)

@feature

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/ecore_drm2/Ecore_Drm2.h| 13 +
 src/lib/ecore_drm2/ecore_drm2_device.c |  8 
 2 files changed, 21 insertions(+)

diff --git a/src/lib/ecore_drm2/Ecore_Drm2.h b/src/lib/ecore_drm2/Ecore_Drm2.h
index fa2e916..3de7999 100644
--- a/src/lib/ecore_drm2/Ecore_Drm2.h
+++ b/src/lib/ecore_drm2/Ecore_Drm2.h
@@ -303,6 +303,19 @@ EAPI void 
ecore_drm2_device_screen_size_range_get(Ecore_Drm2_Device *device, int
 EAPI void ecore_drm2_device_calibrate(Ecore_Drm2_Device *device, int w, int h);
 
 /**
+ * Try to switch to a given virtual terminal
+ *
+ * @param device
+ * @param vt
+ *
+ * @return EINA_TRUE on success, EINA_FALSE otherwise
+ *
+ * @ingroup Ecore_Drm2_Device_Group
+ * @since 1.18
+ */
+EAPI Eina_Bool ecore_drm2_device_vt_set(Ecore_Drm2_Device *device, int vt);
+
+/**
  * @defgroup Ecore_Drm2_Output_Group Drm output functions
  *
  * Functions that deal with setup of outputs
diff --git a/src/lib/ecore_drm2/ecore_drm2_device.c 
b/src/lib/ecore_drm2/ecore_drm2_device.c
index 8794063..8f2e43c 100644
--- a/src/lib/ecore_drm2/ecore_drm2_device.c
+++ b/src/lib/ecore_drm2/ecore_drm2_device.c
@@ -363,3 +363,11 @@ ecore_drm2_device_calibrate(Ecore_Drm2_Device *device, int 
w, int h)
 
elput_input_devices_calibrate(device->em, w, h);
 }
+
+EAPI Eina_Bool
+ecore_drm2_device_vt_set(Ecore_Drm2_Device *device, int vt)
+{
+   EINA_SAFETY_ON_NULL_RETURN_VAL(device, EINA_FALSE);
+
+   return elput_manager_vt_set(device->em, vt);
+}

-- 




[EGIT] [core/efl] master 01/01: elementary: Reduce variable usage

2016-07-27 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 3754ad04770ad61686e901363ba11d05ff39e135
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Wed Jul 27 12:02:51 2016 -0400

elementary: Reduce variable usage

As we don't use the framespace x, y here then there is really no need
to have them.

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/elementary/efl_ui_win.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index e35589e..21c9ccf 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -2979,9 +2979,9 @@ _elm_win_resize_objects_eval(Evas_Object *obj)
 
if (sd->frame_obj)
  {
-int fx, fy, fw, fh;
+int fw, fh;
 
-evas_output_framespace_get(sd->evas, , , , );
+evas_output_framespace_get(sd->evas, NULL, NULL, , );
 minw += fw;
 minh += fh;
 maxw += fw;

-- 




[EGIT] [core/efl] master 01/01: elementary: Fix issue of wrong minimum size for some E dialogs

2016-07-27 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 3b82375835b7fc5d768d1c32ae6c4db85ee8780d
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Wed Jul 27 11:12:23 2016 -0400

elementary: Fix issue of wrong minimum size for some E dialogs

When we are calculating minimum size hints for the window object, we
should be adding framespace to maximum size, not subtracting it...

Honestly this just looks like a brain-dead typo.

Fixes T44225

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/elementary/efl_ui_win.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index 3021c97..e35589e 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -2984,12 +2984,13 @@ _elm_win_resize_objects_eval(Evas_Object *obj)
 evas_output_framespace_get(sd->evas, , , , );
 minw += fw;
 minh += fh;
-maxw -= fw;
-maxh -= fh;
+maxw += fw;
+maxh += fh;
  }
 
evas_object_size_hint_min_set(obj, minw, minh);
evas_object_size_hint_max_set(obj, maxw, maxh);
+
evas_object_geometry_get(obj, NULL, NULL, , );
if (w < minw) w = minw;
if (h < minh) h = minh;

-- 




[EGIT] [core/efl] master 01/01: elementary: Avoid possibly setting opaque region twice

2016-07-27 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit bf414d8c542db32cb85d41dcbc88f97b38319474
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Wed Jul 27 08:08:00 2016 -0400

elementary: Avoid possibly setting opaque region twice

Previously, if the window had no frame object, then this could would
have been setting opaque region twice (for the alpha case). We can
avoid this if we move the alpha check to below the frame check.

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/elementary/efl_ui_win.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index e6248b3..3021c97 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -1303,8 +1303,6 @@ _elm_win_opaque_update(Efl_Ui_Win_Data *sd)
 
wdata = sd->ee->engine.data;
alpha = ecore_evas_alpha_get(sd->ee);
-   if (alpha)
- ecore_wl2_window_opaque_region_set(sd->wl.win, 0, 0, 0, 0);
if (sd->fullscreen || (!sd->frame_obj))
  {
 ecore_evas_geometry_get(sd->ee, NULL, NULL, , );
@@ -1325,6 +1323,9 @@ _elm_win_opaque_update(Efl_Ui_Win_Data *sd)
  >content.w, >content.h);
if (!alpha)
  ecore_wl2_window_opaque_region_set(sd->wl.win, ox, oy, ow, oh);
+   else
+ ecore_wl2_window_opaque_region_set(sd->wl.win, 0, 0, 0, 0);
+
ecore_wl2_window_geometry_set(sd->wl.win, ox, oy, ow, oh);
ecore_wl2_window_input_region_set(sd->wl.win, ox, oy, ow, oh);
 }

-- 




[EGIT] [core/enlightenment] master 01/01: wl_fb: Check that e_comp_wl_init does not fail.

2016-07-26 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 0122bc167cc433b7c993a1e5fa7f0c85bd536c73
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Tue Jul 26 13:00:33 2016 -0400

wl_fb: Check that e_comp_wl_init does not fail.

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/modules/wl_fb/e_mod_main.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/modules/wl_fb/e_mod_main.c b/src/modules/wl_fb/e_mod_main.c
index cfbdef2..6bb7206 100644
--- a/src/modules/wl_fb/e_mod_main.c
+++ b/src/modules/wl_fb/e_mod_main.c
@@ -35,7 +35,9 @@ e_modapi_init(E_Module *m)
 screen->h = h;
 e_xinerama_screens_set(eina_list_append(NULL, screen));
  }
-   e_comp_wl_init();
+
+   if (!e_comp_wl_init()) return NULL;
+
e_comp_canvas_init(w, h);
e_comp->pointer = e_pointer_canvas_new(e_comp->ee, EINA_TRUE);
 

-- 




[EGIT] [core/efl] master 01/01: ecore-wl2: Add safety check for valid compositor

2016-07-26 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit ed55b1f733599f82d3b820d926546e0586731184
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Tue Jul 26 12:43:24 2016 -0400

ecore-wl2: Add safety check for valid compositor

As we cannot create a new wl_region without a valid compositor, add a
safety check.

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/ecore_wl2/ecore_wl2_window.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/lib/ecore_wl2/ecore_wl2_window.c 
b/src/lib/ecore_wl2/ecore_wl2_window.c
index fc39507..4a47614 100644
--- a/src/lib/ecore_wl2/ecore_wl2_window.c
+++ b/src/lib/ecore_wl2/ecore_wl2_window.c
@@ -632,6 +632,8 @@ ecore_wl2_window_opaque_region_set(Ecore_Wl2_Window 
*window, int x, int y, int w
 
if ((window->transparent) || (window->alpha)) return;
 
+   EINA_SAFETY_ON_NULL_RETURN(window->display->wl.compositor);
+
region = wl_compositor_create_region(window->display->wl.compositor);
if (!region)
  {

-- 




[EGIT] [core/efl] master 01/01: ecore-wl2: Remove error message during connect/reconnect

2016-07-26 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit acbba9b03be18bf9c90311abba8d538b42640601
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Tue Jul 26 10:55:31 2016 -0400

ecore-wl2: Remove error message during connect/reconnect

Since session recovery can cause apps to constantly try and reconnect
to the display server, we probably should not be filling logs here. On
the other hand, any failures on first connect are now not going to
display any error messages.

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/ecore_wl2/ecore_wl2_display.c | 6 +-
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/src/lib/ecore_wl2/ecore_wl2_display.c 
b/src/lib/ecore_wl2/ecore_wl2_display.c
index 0df55f5..77f6b28 100644
--- a/src/lib/ecore_wl2/ecore_wl2_display.c
+++ b/src/lib/ecore_wl2/ecore_wl2_display.c
@@ -418,11 +418,7 @@ _ecore_wl2_display_connect(Ecore_Wl2_Display *ewd, 
Eina_Bool sync)
 
/* try to connect to wayland display with this name */
ewd->wl.display = wl_display_connect(ewd->name);
-   if (!ewd->wl.display)
- {
-ERR("Could not connect to display %s", ewd->name);
-return EINA_FALSE;
- }
+   if (!ewd->wl.display) return EINA_FALSE;
 
ewd->wl.registry = wl_display_get_registry(ewd->wl.display);
wl_registry_add_listener(ewd->wl.registry, &_registry_listener, ewd);

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 01/01: Revert "e - fix major memory bloat when in gl mode - dont create shm segments"

2016-07-26 Thread Chris Michael
devilhorns pushed a commit to branch enlightenment-0.20.

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

commit c461d84e2d31466c0de686d48c35e8f083c0a278
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Tue Jul 26 10:31:03 2016 -0400

Revert "e - fix major memory bloat when in gl mode - dont create shm 
segments"

This reverts commit ae6e09ec11aebdce47aba0e18d8aad0368c2f101.

This breaks resizing of windows inside Enlightenment. Evas_Engines
don't bind a pixmap permanently, they just bind during each render, so
on resize this caused a broken pixmap if we don't create a new one for
each size. This patch Would be correct IF engines worked differently
wrt x pixmap binding during render.
---
 src/bin/e_pixmap.c | 26 --
 1 file changed, 8 insertions(+), 18 deletions(-)

diff --git a/src/bin/e_pixmap.c b/src/bin/e_pixmap.c
index 228d2b9..2bd94a7 100644
--- a/src/bin/e_pixmap.c
+++ b/src/bin/e_pixmap.c
@@ -788,7 +788,12 @@ e_pixmap_image_refresh(E_Pixmap *cp)
  {
   case E_PIXMAP_TYPE_X:
 #ifndef HAVE_WAYLAND_ONLY
-return EINA_TRUE;
+if (cp->image) return EINA_TRUE;
+if ((!cp->visual) || (!cp->client->depth)) return EINA_FALSE;
+cp->image = ecore_x_image_new(cp->w, cp->h, cp->visual, 
cp->client->depth);
+if (cp->image)
+  cp->image_argb = ecore_x_image_is_argb32_get(cp->image);
+return !!cp->image;
 #endif
 break;
   case E_PIXMAP_TYPE_WL:
@@ -857,20 +862,6 @@ e_pixmap_image_is_argb(const E_Pixmap *cp)
return EINA_FALSE;
 }
 
-static Eina_Bool
-_e_pixmap_image_alloc(E_Pixmap *cp)
-{
-   if (cp->image) return EINA_TRUE;
-   if ((!cp->visual) || (!cp->client->depth)) return EINA_FALSE;
-   cp->image = ecore_x_image_new(cp->w, cp->h, cp->visual, cp->client->depth);
-   if (cp->image)
- {
-cp->image_argb = ecore_x_image_is_argb32_get(cp->image);
-return EINA_TRUE;
- }
-   return EINA_FALSE;
-}
-
 E_API void *
 e_pixmap_image_data_get(E_Pixmap *cp)
 {
@@ -880,7 +871,7 @@ e_pixmap_image_data_get(E_Pixmap *cp)
  {
   case E_PIXMAP_TYPE_X:
 #ifndef HAVE_WAYLAND_ONLY
-if (_e_pixmap_image_alloc(cp))
+if (cp->image)
   return ecore_x_image_data_get(cp->image, >ibpl, NULL, >ibpp);
 #endif
 break;
@@ -931,8 +922,7 @@ e_pixmap_image_draw(E_Pixmap *cp, const Eina_Rectangle *r)
  {
   case E_PIXMAP_TYPE_X:
 #ifndef HAVE_WAYLAND_ONLY
-if (!cp->pixmap) return EINA_FALSE;
-if (!_e_pixmap_image_alloc(cp)) return EINA_FALSE;
+if ((!cp->image) || (!cp->pixmap)) return EINA_FALSE;
 return ecore_x_image_get(cp->image, cp->pixmap, r->x, r->y, r->x, 
r->y, r->w, r->h);
 #endif
 break;

-- 




[EGIT] [core/enlightenment] enlightenment-0.21 01/01: Revert "e - fix major memory bloat when in gl mode - dont create shm segments"

2016-07-26 Thread Chris Michael
devilhorns pushed a commit to branch enlightenment-0.21.

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

commit 27917c26dff26f74b67da2619d3a427a58ff5d81
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Tue Jul 26 10:31:03 2016 -0400

Revert "e - fix major memory bloat when in gl mode - dont create shm 
segments"

This reverts commit ae6e09ec11aebdce47aba0e18d8aad0368c2f101.

This breaks resizing of windows inside Enlightenment. Evas_Engines
don't bind a pixmap permanently, they just bind during each render, so
on resize this caused a broken pixmap if we don't create a new one for
each size. This patch Would be correct IF engines worked differently
wrt x pixmap binding during render.
---
 src/bin/e_pixmap.c | 26 --
 1 file changed, 8 insertions(+), 18 deletions(-)

diff --git a/src/bin/e_pixmap.c b/src/bin/e_pixmap.c
index 921cc06..febb689 100644
--- a/src/bin/e_pixmap.c
+++ b/src/bin/e_pixmap.c
@@ -830,7 +830,12 @@ e_pixmap_image_refresh(E_Pixmap *cp)
  {
   case E_PIXMAP_TYPE_X:
 #ifndef HAVE_WAYLAND_ONLY
-return EINA_TRUE;
+if (cp->image) return EINA_TRUE;
+if ((!cp->visual) || (!cp->client->depth)) return EINA_FALSE;
+cp->image = ecore_x_image_new(cp->w, cp->h, cp->visual, 
cp->client->depth);
+if (cp->image)
+  cp->image_argb = ecore_x_image_is_argb32_get(cp->image);
+return !!cp->image;
 #endif
 break;
   case E_PIXMAP_TYPE_WL:
@@ -899,20 +904,6 @@ e_pixmap_image_is_argb(const E_Pixmap *cp)
return EINA_FALSE;
 }
 
-static Eina_Bool
-_e_pixmap_image_alloc(E_Pixmap *cp)
-{
-   if (cp->image) return EINA_TRUE;
-   if ((!cp->visual) || (!cp->client->depth)) return EINA_FALSE;
-   cp->image = ecore_x_image_new(cp->w, cp->h, cp->visual, cp->client->depth);
-   if (cp->image)
- {
-cp->image_argb = ecore_x_image_is_argb32_get(cp->image);
-return EINA_TRUE;
- }
-   return EINA_FALSE;
-}
-
 E_API void *
 e_pixmap_image_data_get(E_Pixmap *cp)
 {
@@ -922,7 +913,7 @@ e_pixmap_image_data_get(E_Pixmap *cp)
  {
   case E_PIXMAP_TYPE_X:
 #ifndef HAVE_WAYLAND_ONLY
-if (_e_pixmap_image_alloc(cp))
+if (cp->image)
   return ecore_x_image_data_get(cp->image, >ibpl, NULL, >ibpp);
 #endif
 break;
@@ -973,8 +964,7 @@ e_pixmap_image_draw(E_Pixmap *cp, const Eina_Rectangle *r)
  {
   case E_PIXMAP_TYPE_X:
 #ifndef HAVE_WAYLAND_ONLY
-if (!cp->pixmap) return EINA_FALSE;
-if (!_e_pixmap_image_alloc(cp)) return EINA_FALSE;
+if ((!cp->image) || (!cp->pixmap)) return EINA_FALSE;
 return ecore_x_image_get(cp->image, cp->pixmap, r->x, r->y, r->x, 
r->y, r->w, r->h);
 #endif
 break;

-- 




[EGIT] [core/enlightenment] master 01/01: Revert "e - fix major memory bloat when in gl mode - dont create shm segments"

2016-07-26 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit ab1c2ed5d128c8a0e3fad1c7499ad511e290073d
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Tue Jul 26 10:31:03 2016 -0400

Revert "e - fix major memory bloat when in gl mode - dont create shm 
segments"

This reverts commit ae6e09ec11aebdce47aba0e18d8aad0368c2f101.

This breaks resizing of windows inside Enlightenment. Evas_Engines
don't bind a pixmap permanently, they just bind during each render, so
on resize this caused a broken pixmap if we don't create a new one for
each size. This patch Would be correct IF engines worked differently
wrt x pixmap binding during render.
---
 src/bin/e_pixmap.c | 26 --
 1 file changed, 8 insertions(+), 18 deletions(-)

diff --git a/src/bin/e_pixmap.c b/src/bin/e_pixmap.c
index 921cc06..febb689 100644
--- a/src/bin/e_pixmap.c
+++ b/src/bin/e_pixmap.c
@@ -830,7 +830,12 @@ e_pixmap_image_refresh(E_Pixmap *cp)
  {
   case E_PIXMAP_TYPE_X:
 #ifndef HAVE_WAYLAND_ONLY
-return EINA_TRUE;
+if (cp->image) return EINA_TRUE;
+if ((!cp->visual) || (!cp->client->depth)) return EINA_FALSE;
+cp->image = ecore_x_image_new(cp->w, cp->h, cp->visual, 
cp->client->depth);
+if (cp->image)
+  cp->image_argb = ecore_x_image_is_argb32_get(cp->image);
+return !!cp->image;
 #endif
 break;
   case E_PIXMAP_TYPE_WL:
@@ -899,20 +904,6 @@ e_pixmap_image_is_argb(const E_Pixmap *cp)
return EINA_FALSE;
 }
 
-static Eina_Bool
-_e_pixmap_image_alloc(E_Pixmap *cp)
-{
-   if (cp->image) return EINA_TRUE;
-   if ((!cp->visual) || (!cp->client->depth)) return EINA_FALSE;
-   cp->image = ecore_x_image_new(cp->w, cp->h, cp->visual, cp->client->depth);
-   if (cp->image)
- {
-cp->image_argb = ecore_x_image_is_argb32_get(cp->image);
-return EINA_TRUE;
- }
-   return EINA_FALSE;
-}
-
 E_API void *
 e_pixmap_image_data_get(E_Pixmap *cp)
 {
@@ -922,7 +913,7 @@ e_pixmap_image_data_get(E_Pixmap *cp)
  {
   case E_PIXMAP_TYPE_X:
 #ifndef HAVE_WAYLAND_ONLY
-if (_e_pixmap_image_alloc(cp))
+if (cp->image)
   return ecore_x_image_data_get(cp->image, >ibpl, NULL, >ibpp);
 #endif
 break;
@@ -973,8 +964,7 @@ e_pixmap_image_draw(E_Pixmap *cp, const Eina_Rectangle *r)
  {
   case E_PIXMAP_TYPE_X:
 #ifndef HAVE_WAYLAND_ONLY
-if (!cp->pixmap) return EINA_FALSE;
-if (!_e_pixmap_image_alloc(cp)) return EINA_FALSE;
+if ((!cp->image) || (!cp->pixmap)) return EINA_FALSE;
 return ecore_x_image_get(cp->image, cp->pixmap, r->x, r->y, r->x, 
r->y, r->w, r->h);
 #endif
 break;

-- 




[EGIT] [core/enlightenment] master 01/01: remove need to create different dialog windows under wayland

2016-07-25 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 5e63489a9adcaca54deff46d620f90355085279a
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Mon Jul 25 13:06:59 2016 -0400

remove need to create different dialog windows under wayland

NB: This hack is no longer needed.

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/bin/e_config_dialog.c | 8 +---
 1 file changed, 1 insertion(+), 7 deletions(-)

diff --git a/src/bin/e_config_dialog.c b/src/bin/e_config_dialog.c
index dc55c10..08df400 100644
--- a/src/bin/e_config_dialog.c
+++ b/src/bin/e_config_dialog.c
@@ -189,13 +189,7 @@ _e_config_dialog_go(E_Config_Dialog *cfd, 
E_Config_Dialog_CFData_Type type)
 if ((cfd->view->normal_win) || (e_config->cfgdlg_normal_wins))
   cfd->dia = e_dialog_normal_win_new(cfd->parent, cfd->name, buf);
 else
-  {
- /* FIXME: REMOVE HACK FOR WAYLAND BEFORE RELEASE */
- if (e_comp && e_comp->comp_type != E_PIXMAP_TYPE_WL)
-   cfd->dia = e_dialog_new(cfd->parent, cfd->name, buf);
- else
-   cfd->dia = e_dialog_normal_win_new(cfd->parent, cfd->name, buf);
-  }
+  cfd->dia = e_dialog_new(cfd->parent, cfd->name, buf);
 e_object_del_attach_func_set(E_OBJECT(cfd->dia),
  _e_config_dialog_cb_dialog_del);
  } /* window was created before - deleting content only */

-- 




[EGIT] [core/efl] master 01/01: ecore-wl2: Reduce debug noise on key events

2016-07-25 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit b32e1ace46db77cfbfca6ee2e9923ac13b876b89
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Mon Jul 25 12:18:48 2016 -0400

ecore-wl2: Reduce debug noise on key events

This is annoying to see key events flooding a terminal ... so comment
out this debug statement. If a developer really needs this, then
enable it locally.

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/ecore_wl2/ecore_wl2_input.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/ecore_wl2/ecore_wl2_input.c 
b/src/lib/ecore_wl2/ecore_wl2_input.c
index c317179..3ea2de0 100644
--- a/src/lib/ecore_wl2/ecore_wl2_input.c
+++ b/src/lib/ecore_wl2/ecore_wl2_input.c
@@ -467,7 +467,7 @@ _ecore_wl2_input_key_send(Ecore_Wl2_Input *input, 
Ecore_Wl2_Window *window, xkb_
ev->modifiers = input->keyboard.modifiers;
ev->keycode = code;
 
-   DBG("Emitting Key event (%s,%s,%s,%s)\n", ev->keyname, ev->key, 
ev->compose, ev->string);
+   /* DBG("Emitting Key event (%s,%s,%s,%s)\n", ev->keyname, ev->key, 
ev->compose, ev->string); */
 
if (state)
  ecore_event_add(ECORE_EVENT_KEY_DOWN, ev, NULL, NULL);

-- 




[EGIT] [core/efl] master 01/01: elementary: Fix formatting

2016-07-25 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 8be8f8cbd35d572494c728f74e4161bf75677e1b
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Mon Jul 25 11:39:06 2016 -0400

elementary: Fix formatting

NB: No functional changes

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/elementary/elm_main.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/lib/elementary/elm_main.c b/src/lib/elementary/elm_main.c
index f203318..41b1106 100644
--- a/src/lib/elementary/elm_main.c
+++ b/src/lib/elementary/elm_main.c
@@ -1925,7 +1925,8 @@ elm_object_focus_region_show_mode_get(const Evas_Object 
*obj)
return elm_widget_focus_region_show_mode_get(obj);
 }
 
-EAPI Evas_Object *elm_object_part_access_object_get(const Evas_Object *obj, 
const char *part)
+EAPI Evas_Object *
+elm_object_part_access_object_get(const Evas_Object *obj, const char *part)
 {
EINA_SAFETY_ON_NULL_RETURN_VAL(obj, NULL);
return elm_widget_part_access_object_get(obj, part);

-- 




[EGIT] [core/efl] master 01/01: elput: Fix issue of losing mouse input when removing a device

2016-07-25 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 32af25ebb93abd2f8c48713ebc46be5965771a2d
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Mon Jul 25 10:54:17 2016 -0400

elput: Fix issue of losing mouse input when removing a device

When we are adding new input devices, if we already have an existing
one (keyboard, pointer, touch, etc) then we should just be
incrementing the device count and returning from the init function.
Previous code here would increment the device count, then continue on
and create a new internal representation of the device. This was
causing issues when a device gets removed.

Fixes T4192

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/elput/elput_evdev.c | 18 ++
 1 file changed, 6 insertions(+), 12 deletions(-)

diff --git a/src/lib/elput/elput_evdev.c b/src/lib/elput/elput_evdev.c
index 7a1b1cb..cab7f8a 100644
--- a/src/lib/elput/elput_evdev.c
+++ b/src/lib/elput/elput_evdev.c
@@ -212,10 +212,8 @@ _keyboard_init(Elput_Seat *seat, struct xkb_keymap *keymap)
  {
 seat->count.kbd += 1;
 if (seat->count.kbd == 1)
-  {
- _seat_caps_update(seat);
- return EINA_TRUE;
-  }
+  _seat_caps_update(seat);
+return EINA_TRUE;
  }
 
kbd = _keyboard_create(seat);
@@ -548,10 +546,8 @@ _pointer_init(Elput_Seat *seat)
  {
 seat->count.ptr += 1;
 if (seat->count.ptr == 1)
-  {
- _seat_caps_update(seat);
- return EINA_TRUE;
-  }
+  _seat_caps_update(seat);
+return EINA_TRUE;
  }
 
ptr = _pointer_create(seat);
@@ -598,10 +594,8 @@ _touch_init(Elput_Seat *seat)
  {
 seat->count.touch += 1;
 if (seat->count.touch == 1)
-  {
- _seat_caps_update(seat);
- return EINA_TRUE;
-  }
+  _seat_caps_update(seat);
+return EINA_TRUE;
  }
 
touch = _touch_create(seat);

-- 




[EGIT] [core/enlightenment] master 01/01: e ibar - fix "old man" fat finger typo ; )

2016-07-25 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 42aa6be35931e51b8dab5ed6629c3054595c82a8
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Mon Jul 25 09:27:52 2016 -0400

e ibar - fix "old man" fat finger typo ;)

    Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/modules/ibar/e_mod_main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/modules/ibar/e_mod_main.c b/src/modules/ibar/e_mod_main.c
index e5b5ba9..d810b3d 100644
--- a/src/modules/ibar/e_mod_main.c
+++ b/src/modules/ibar/e_mod_main.c
@@ -656,7 +656,7 @@ _ibar_resize_handle(IBar *b)
 if (_is_vertical(b->inst)) hh = 16 * e_scale;
 else ww = 16 * e_scale;
 evas_object_size_hint_min_set(b->o_sep, 8, 8);
-evas_object_size_hint_max_set(b->o_sep, ww, wh);
+evas_object_size_hint_max_set(b->o_sep, ww, hh);
  }
elm_box_recalculate(b->o_box);
elm_box_recalculate(b->o_outerbox);

-- 




[EGIT] [core/enlightenment] master 01/01: use proper variables to set size_hint_max on ibar

2016-07-25 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit b1f608c5e607c2101862eb4a63d53bef9cc58761
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Mon Jul 25 09:05:40 2016 -0400

use proper variables to set size_hint_max on ibar

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/modules/ibar/e_mod_main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/modules/ibar/e_mod_main.c b/src/modules/ibar/e_mod_main.c
index d14e7bf..4ba77b0 100644
--- a/src/modules/ibar/e_mod_main.c
+++ b/src/modules/ibar/e_mod_main.c
@@ -658,7 +658,7 @@ _ibar_resize_handle(IBar *b)
 else
   w = 16 * e_scale;
 evas_object_size_hint_min_set(b->o_sep, 8, 8);
-evas_object_size_hint_max_set(b->o_sep, ww, hh);
+evas_object_size_hint_max_set(b->o_sep, w, h);
  }
elm_box_recalculate(b->o_box);
elm_box_recalculate(b->o_outerbox);

-- 




[EGIT] [core/enlightenment] master 01/01: remove unused variables from _ibar_resize_handle

2016-07-25 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit b107dc1cdc18b5edcdb44e74e0c69f0bb0e65cb7
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Mon Jul 25 08:44:12 2016 -0400

remove unused variables from _ibar_resize_handle

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/modules/ibar/e_mod_main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/modules/ibar/e_mod_main.c b/src/modules/ibar/e_mod_main.c
index 0645339..d14e7bf 100644
--- a/src/modules/ibar/e_mod_main.c
+++ b/src/modules/ibar/e_mod_main.c
@@ -638,7 +638,7 @@ static void
 _ibar_resize_handle(IBar *b)
 {
IBar_Icon *ic;
-   Evas_Coord w, h, xx, yy, ww, hh;
+   Evas_Coord w, h, ww, hh;
 
if (!b->inst->gcc) return;
evas_object_geometry_get(b->o_outerbox, NULL, NULL, , );

-- 




[EGIT] [core/efl] master 01/01: elementary: Remove logically dead code

2016-07-21 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit ce2160ab5da94c54803b01251881e2a6c6a39c6f
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Thu Jul 21 13:21:25 2016 -0400

elementary: Remove logically dead code

In all code paths leading to this goto statement being called,
'iter_array' variable will already be NULL, so checking it's validity
is just logically dead code.

Fixes Coverity CID1357392

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/elementary/elm_atspi_bridge.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elementary/elm_atspi_bridge.c 
b/src/lib/elementary/elm_atspi_bridge.c
index fbdbe8f..e33de9b 100644
--- a/src/lib/elementary/elm_atspi_bridge.c
+++ b/src/lib/elementary/elm_atspi_bridge.c
@@ -1158,6 +1158,7 @@ _action_actions_get(const Eldbus_Service_Interface 
*iface, const Eldbus_Message
  {
 const char *descr;
 char *key;
+
 key = elm_interface_atspi_action_keybinding_get(obj, id);
 descr = elm_interface_atspi_action_description_get(obj, id);
 descr = descr ? descr : "";
@@ -1169,7 +1170,6 @@ _action_actions_get(const Eldbus_Service_Interface 
*iface, const Eldbus_Message
return ret;
 
 error:
-   if (iter_array) eldbus_message_iter_container_close(iter, iter_array);
if (ret) eldbus_message_unref(ret);
return NULL;
 }

-- 




[EGIT] [core/efl] master 01/01: elput: Use proper variable type

2016-07-21 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 4309050fec8bedd2c638e00d3ae915e9af38c34c
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Thu Jul 21 13:18:57 2016 -0400

elput: Use proper variable type

The 'getenv' function returns char * ... not a const char *, so adjust
variable type to match

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/elput/elput_evdev.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elput/elput_evdev.c b/src/lib/elput/elput_evdev.c
index 089bad5..7a1b1cb 100644
--- a/src/lib/elput/elput_evdev.c
+++ b/src/lib/elput/elput_evdev.c
@@ -61,7 +61,7 @@ static int
 _keyboard_fd_get(off_t size)
 {
int fd = 0;
-   const char *path;
+   char *path;
char tmp[PATH_MAX];
long flags;
 

-- 




[EGIT] [core/efl] master 01/01: eina: Fix null pointer derefernce

2016-07-21 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 89234ce6bcd5fcda3376f77e20ea547cd4d4a012
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Thu Jul 21 13:07:26 2016 -0400

eina: Fix null pointer derefernce

Coverity reports that eina_safepointer_get returns a NULL promise here
(checked 20 out of 21 times). As eina_safepointer_get can return NULL,
we should check the validity of 'promise' here before trying to
derefernce it later.

Fixes Coverity CID1356625

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/eina/eina_promise.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/lib/eina/eina_promise.c b/src/lib/eina/eina_promise.c
index 0e7f873..8ee5809 100644
--- a/src/lib/eina/eina_promise.c
+++ b/src/lib/eina/eina_promise.c
@@ -601,6 +601,8 @@ eina_promise_all(Eina_Iterator* it)
eina_iterator_free(it);
 
promise = eina_safepointer_get((Eina_Safepointer*)(safe_promise = 
eina_promise_add()));
+   if (!promise) return NULL;
+
internal_it = promise->pointer_value = 
malloc(sizeof(_Eina_Promise_Iterator) +
  
sizeof(_Eina_Promise_Default_Owner*) * eina_array_count_get(promises));
 

-- 




[EGIT] [core/efl] master 01/01: elementary: Remove logically dead code

2016-07-21 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit a89186069ed816e6e6cf04aa8502dbfda4128707
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Thu Jul 21 12:58:03 2016 -0400

elementary: Remove logically dead code

Coverity reports that this is logically dead code. As we check the
validity of 'model' above this function, then testing 'model' for
validity again in this expression is just logically dead.

Fixes Coverity CID1356617

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/elementary/elc_fileselector.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elementary/elc_fileselector.c 
b/src/lib/elementary/elc_fileselector.c
index 095ad3a..566aa1e 100644
--- a/src/lib/elementary/elc_fileselector.c
+++ b/src/lib/elementary/elc_fileselector.c
@@ -102,7 +102,7 @@ _elm_fileselector_replace_model(Elm_Fileselector *fs, 
Elm_Fileselector_Data *sd,
 
if (model && path)
  {
-sd->model = model ? eo_ref(model) : NULL;
+sd->model = eo_ref(model);
 eina_stringshare_replace(>path, path);
 _monitoring_start(fs, sd, sd->model);
 /* TODO: sub directory should be monitored for expand mode */

-- 




[EGIT] [core/efl] master 01/01: elementary: Remove logically dead code

2016-07-21 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 30ab0a89be3cfc601d2e93d8a165f2e38eaf907b
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Thu Jul 21 12:53:13 2016 -0400

elementary: Remove logically dead code

Coverity reports that this is logically dead code. As eo_item has been
dereferenced on all paths leading here, and it is also set above, then
it cannot be NULL at this point, thus this check is logically dead.

Fixes Covierty CID1355585

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/elementary/elm_index.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/lib/elementary/elm_index.c b/src/lib/elementary/elm_index.c
index 665ea7f..edc4abd 100644
--- a/src/lib/elementary/elm_index.c
+++ b/src/lib/elementary/elm_index.c
@@ -1544,8 +1544,7 @@ _elm_index_item_sorted_insert(Eo *obj, Elm_Index_Data 
*sd, const char *letter, E
 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, 
eo_item);
  }
 
-   if (!eo_item) return NULL;
-   else return eo_item;
+   return eo_item;
 }
 
 EOLIAN static Elm_Object_Item*

-- 




[EGIT] [core/efl] master 01/01: eldbus: Check return value and error out if necessary

2016-07-21 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit fb09df7977d6038d0c422494dd2d9926e70a89a9
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Thu Jul 21 12:50:19 2016 -0400

eldbus: Check return value and error out if necessary

Coverity reports that we do not check the return value of
_eldbus_model_proxy_load here. We likely should be checking that in
case the model proxy fails to load so we can return proper values here.

Fixes Coverity CID1355233

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/eldbus/eldbus_model_proxy.c | 6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/lib/eldbus/eldbus_model_proxy.c 
b/src/lib/eldbus/eldbus_model_proxy.c
index 43a3779..430ccb2 100644
--- a/src/lib/eldbus/eldbus_model_proxy.c
+++ b/src/lib/eldbus/eldbus_model_proxy.c
@@ -98,9 +98,13 @@ static Eina_Array const *
 _eldbus_model_proxy_efl_model_properties_get(Eo *obj EINA_UNUSED,
Eldbus_Model_Proxy_Data *pd)
 {
+   Eina_Bool ret;
+
EINA_SAFETY_ON_NULL_RETURN_VAL(pd, NULL);
 
-   _eldbus_model_proxy_load(pd);
+   ret = _eldbus_model_proxy_load(pd);
+   if (!ret) return NULL;
+
return pd->properties_array;
 }
 

-- 




[EGIT] [core/efl] master 01/01: edje: Fix unchecked return value

2016-07-21 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 4555f5d5940d18f7d5e382803a5e4bd21b461980
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Thu Jul 21 12:29:35 2016 -0400

edje: Fix unchecked return value

Coverity reports that we call _circular_dependency_find here without
checking the return value

Fixes Coverity CID1349867

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/edje/edje_calc.c | 22 +-
 1 file changed, 13 insertions(+), 9 deletions(-)

diff --git a/src/lib/edje/edje_calc.c b/src/lib/edje/edje_calc.c
index 04abc0e..b4a04c4 100644
--- a/src/lib/edje/edje_calc.c
+++ b/src/lib/edje/edje_calc.c
@@ -3923,18 +3923,22 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int 
flags, Edje_Calc_Params *sta
 Eina_List *l = NULL;
 char *part_name;
 char depends_path[PATH_MAX] = "";
-_circular_dependency_find(ed, ep, NULL, );
-strncat(depends_path, ep->part->name,
-sizeof(depends_path) - strlen(depends_path) - 1);
-EINA_LIST_FOREACH(clist, l, part_name)
+
+if (_circular_dependency_find(ed, ep, NULL, ))
   {
- strncat(depends_path, " -> ",
- sizeof(depends_path) - strlen(depends_path) - 1);
- strncat(depends_path, part_name,
+ strncat(depends_path, ep->part->name,
  sizeof(depends_path) - strlen(depends_path) - 1);
+ EINA_LIST_FOREACH(clist, l, part_name)
+   {
+  strncat(depends_path, " -> ",
+  sizeof(depends_path) - strlen(depends_path) - 1);
+  strncat(depends_path, part_name,
+  sizeof(depends_path) - strlen(depends_path) - 1);
+   }
+ ERR("Circular dependency in the group '%s' : %s",
+ ed->group, depends_path);
+ eina_list_free(clist);
   }
-ERR("Circular dependency in the group '%s' : %s", ed->group, 
depends_path);
-eina_list_free(clist);
 #endif
 return;
  }

-- 




[EGIT] [core/efl] master 01/01: evas: Fix missing breaks in switch

2016-07-21 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 3bc6e30d632c46015105407f44727ed39d502216
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Thu Jul 21 12:25:02 2016 -0400

evas: Fix missing breaks in switch

Coverity reports that we are missing breaks in the switch blocks here,
so add missing breaks.

Fixes Coverity CID1347413 and CID1347414

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/evas/filters/evas_filter_blur.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib/evas/filters/evas_filter_blur.c 
b/src/lib/evas/filters/evas_filter_blur.c
index 5c2de1a..03ca40a 100644
--- a/src/lib/evas/filters/evas_filter_blur.c
+++ b/src/lib/evas/filters/evas_filter_blur.c
@@ -404,7 +404,7 @@ evas_filter_blur_cpu_func_get(Evas_Filter_Command *cmd)
  else if (cmd->blur.dy)
return _box_blur_vert_apply_alpha;
   }
-
+break;
   case EVAS_FILTER_BLUR_GAUSSIAN:
 if (!cmd->output->alpha_only)
   {
@@ -420,7 +420,7 @@ evas_filter_blur_cpu_func_get(Evas_Filter_Command *cmd)
  else if (cmd->blur.dy)
return _gaussian_blur_vert_apply_alpha;
   }
-
+break;
   default:
 CRI("Unsupported blur type %d", cmd->blur.type);
 return NULL;

-- 




[EGIT] [core/enlightenment] enlightenment-0.21 03/04: add missing EINA_UNUSED for unused function params

2016-07-19 Thread Chris Michael
discomfitor pushed a commit to branch enlightenment-0.21.

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

commit 858800389e68f03fcf2f0c1385e2eeded5539bab
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Tue Jul 19 13:57:04 2016 -0400

add missing EINA_UNUSED for unused function params

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/bin/e_widget_filepreview.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/bin/e_widget_filepreview.c b/src/bin/e_widget_filepreview.c
index 70d9c37..8363965 100644
--- a/src/bin/e_widget_filepreview.c
+++ b/src/bin/e_widget_filepreview.c
@@ -954,7 +954,7 @@ _e_wid_fprev_preview_txt_map_success(void *data, Eio_File 
*handler EINA_UNUSED,
 static void _e_wid_fprev_preview_txt_open_success(void *data, Eio_File 
*handler, Eina_File *file);
 
 static void
-_e_wid_fprev_preview_txt_error(void *data, Eio_File *handler, int error 
EINA_UNUSED)
+_e_wid_fprev_preview_txt_error(void *data, Eio_File *handler EINA_UNUSED, int 
error EINA_UNUSED)
 {
E_Widget_Data *wd = data;
 
@@ -974,7 +974,7 @@ _e_wid_fprev_preview_txt_error(void *data, Eio_File 
*handler, int error EINA_UNU
 }
 
 static void
-_e_wid_fprev_preview_txt_open_success(void *data, Eio_File *handler, Eina_File 
*file)
+_e_wid_fprev_preview_txt_open_success(void *data, Eio_File *handler 
EINA_UNUSED, Eina_File *file)
 {
E_Widget_Data *wd = data;
unsigned int length = eina_file_size_get(file);

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 04/05: add missing EINA_UNUSED for unused function params

2016-07-19 Thread Chris Michael
discomfitor pushed a commit to branch enlightenment-0.20.

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

commit 6405077de56cb2d7cc8d6918f16278fa0f18572d
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Tue Jul 19 13:57:04 2016 -0400

add missing EINA_UNUSED for unused function params

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/bin/e_widget_filepreview.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/bin/e_widget_filepreview.c b/src/bin/e_widget_filepreview.c
index 70d9c37..8363965 100644
--- a/src/bin/e_widget_filepreview.c
+++ b/src/bin/e_widget_filepreview.c
@@ -954,7 +954,7 @@ _e_wid_fprev_preview_txt_map_success(void *data, Eio_File 
*handler EINA_UNUSED,
 static void _e_wid_fprev_preview_txt_open_success(void *data, Eio_File 
*handler, Eina_File *file);
 
 static void
-_e_wid_fprev_preview_txt_error(void *data, Eio_File *handler, int error 
EINA_UNUSED)
+_e_wid_fprev_preview_txt_error(void *data, Eio_File *handler EINA_UNUSED, int 
error EINA_UNUSED)
 {
E_Widget_Data *wd = data;
 
@@ -974,7 +974,7 @@ _e_wid_fprev_preview_txt_error(void *data, Eio_File 
*handler, int error EINA_UNU
 }
 
 static void
-_e_wid_fprev_preview_txt_open_success(void *data, Eio_File *handler, Eina_File 
*file)
+_e_wid_fprev_preview_txt_open_success(void *data, Eio_File *handler 
EINA_UNUSED, Eina_File *file)
 {
E_Widget_Data *wd = data;
unsigned int length = eina_file_size_get(file);

-- 




[EGIT] [core/enlightenment] master 01/01: add missing EINA_UNUSED for unused function params

2016-07-19 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 3c8ab9f175530770f3de14df672e6731392c4553
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Tue Jul 19 13:57:04 2016 -0400

add missing EINA_UNUSED for unused function params

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/bin/e_widget_filepreview.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/bin/e_widget_filepreview.c b/src/bin/e_widget_filepreview.c
index 70d9c37..8363965 100644
--- a/src/bin/e_widget_filepreview.c
+++ b/src/bin/e_widget_filepreview.c
@@ -954,7 +954,7 @@ _e_wid_fprev_preview_txt_map_success(void *data, Eio_File 
*handler EINA_UNUSED,
 static void _e_wid_fprev_preview_txt_open_success(void *data, Eio_File 
*handler, Eina_File *file);
 
 static void
-_e_wid_fprev_preview_txt_error(void *data, Eio_File *handler, int error 
EINA_UNUSED)
+_e_wid_fprev_preview_txt_error(void *data, Eio_File *handler EINA_UNUSED, int 
error EINA_UNUSED)
 {
E_Widget_Data *wd = data;
 
@@ -974,7 +974,7 @@ _e_wid_fprev_preview_txt_error(void *data, Eio_File 
*handler, int error EINA_UNU
 }
 
 static void
-_e_wid_fprev_preview_txt_open_success(void *data, Eio_File *handler, Eina_File 
*file)
+_e_wid_fprev_preview_txt_open_success(void *data, Eio_File *handler 
EINA_UNUSED, Eina_File *file)
 {
E_Widget_Data *wd = data;
unsigned int length = eina_file_size_get(file);

-- 




[EGIT] [core/efl] master 01/01: Revert "elementary: Fix issue of toggling border state causing visual jumps"

2016-07-19 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 1c832a1b12066adc3a22d7e49c1ff25b25d7616d
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Tue Jul 19 08:09:44 2016 -0400

Revert "elementary: Fix issue of toggling border state causing visual jumps"

This reverts commit fb24955782b9242beb9447ebb6631b2b63921988.

While this patch did fix the issue of toggling window Borderless state
in EFl-Wl client applications, it is "Enlightenment's" stance that it
will not change to match this fix, so this has to be reverted else
internal E dialogs show up with no border (due to them using SSD).

This is going to re-open T4092 sadly :( and now leave that bug with no
possible fix.

ref T4092

Fixes T4126
    
Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/elementary/efl_ui_win.c | 66 +
 1 file changed, 7 insertions(+), 59 deletions(-)

diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index b50ff41..e7b6f22 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -3700,8 +3700,6 @@ _elm_win_frame_del(Efl_Ui_Win_Data *sd)
 
if (sd->frame_obj)
  {
-edje_object_part_unswallow(sd->frame_obj, sd->edje);
-
 evas_object_event_callback_del_full
   (sd->frame_obj, EVAS_CALLBACK_MOVE, _elm_win_frame_obj_move, sd);
 evas_object_event_callback_del_full
@@ -3741,61 +3739,6 @@ _elm_win_frame_del(Efl_Ui_Win_Data *sd)
ecore_evas_resize(sd->ee, w, h);
 }
 
-static void
-_elm_win_frame_hide(Efl_Ui_Win_Data *sd)
-{
-#ifdef HAVE_ELEMENTARY_WL2
-   Eina_Bool alpha;
-   Ecore_Evas_Engine_Wl_Data *wdata;
-#endif
-   int x, y, w, h;
-   int ox, oy, ow, oh;
-
-   if (!sd->frame_obj) return;
-
-   edje_object_part_geometry_get(sd->frame_obj, "elm.spacer.opaque",
- , , , );
-   edje_object_part_geometry_get(sd->frame_obj, "elm.swallow.client",
- , , , );
-
-   edje_object_part_unswallow(sd->frame_obj, sd->edje);
-   evas_object_hide(sd->frame_obj);
-
-   /* evas_output_framespace_set(sd->evas, 0, 0, 0, 0); */
-
-#ifdef HAVE_ELEMENTARY_WL2
-
-   wdata = sd->ee->engine.data;
-   wdata->content.x = x;
-   wdata->content.y = y;
-   wdata->content.w = w;
-   wdata->content.h = h;
-
-   alpha = ecore_evas_alpha_get(sd->ee);
-   if (!alpha)
- ecore_wl2_window_opaque_region_set(sd->wl.win, x, y, w, h);
-   else
- ecore_wl2_window_opaque_region_set(sd->wl.win, 0, 0, 0, 0);
-
-   ecore_wl2_window_geometry_set(sd->wl.win, x, y, w, h);
-   ecore_wl2_window_input_region_set(sd->wl.win, x, y, w, h);
-#endif
-}
-
-static void
-_elm_win_frame_show(Efl_Ui_Win_Data *sd)
-{
-   if (!sd->frame_obj) return;
-   edje_object_part_swallow(sd->frame_obj, "elm.swallow.client",
-sd->edje);
-   evas_object_show(sd->frame_obj);
-
-#ifdef HAVE_ELEMENTARY_WL2
-   _elm_win_opaque_update(sd);
-   _elm_win_frame_obj_update(sd);
-#endif
-}
-
 #ifdef ELM_DEBUG
 static void
 _debug_key_down(void *data EINA_UNUSED,
@@ -4977,11 +4920,16 @@ _efl_ui_win_borderless_set(Eo *obj EINA_UNUSED, 
Efl_Ui_Win_Data *sd, Eina_Bool b
 
if (borderless)
  {
-if (need_frame) _elm_win_frame_hide(sd);
+if (need_frame)
+  _elm_win_frame_del(sd);
  }
else
  {
-if (need_frame) _elm_win_frame_show(sd);
+if (need_frame)
+  _elm_win_frame_add(sd, "default");
+
+if (sd->frame_obj)
+  evas_object_show(sd->frame_obj);
  }
 
TRAP(sd, borderless_set, borderless);

-- 




[EGIT] [core/efl] master 01/01: elementary: Fix issue of toggling border state causing visual jumps

2016-07-15 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit fb24955782b9242beb9447ebb6631b2b63921988
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Fri Jul 15 15:30:48 2016 -0400

elementary: Fix issue of toggling border state causing visual jumps

This commit partially fixes a phab ticket where toggling window border
state (elm_test -to "Window States") would cause the frame to be
destroyed thus making the window contents appear to jump around

ref T4092

NB: I call this a 'partial' fix because while it does fix the issue of
efl client apps, there is still some breakage in Enlightenment that
needs investigating.

@fix

    Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/elementary/efl_ui_win.c | 61 -
 1 file changed, 54 insertions(+), 7 deletions(-)

diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index 3445069..d4f0527 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -3700,6 +3700,8 @@ _elm_win_frame_del(Efl_Ui_Win_Data *sd)
 
if (sd->frame_obj)
  {
+edje_object_part_unswallow(sd->frame_obj, sd->edje);
+
 evas_object_event_callback_del_full
   (sd->frame_obj, EVAS_CALLBACK_MOVE, _elm_win_frame_obj_move, sd);
 evas_object_event_callback_del_full
@@ -3739,6 +3741,56 @@ _elm_win_frame_del(Efl_Ui_Win_Data *sd)
ecore_evas_resize(sd->ee, w, h);
 }
 
+static void
+_elm_win_frame_hide(Efl_Ui_Win_Data *sd)
+{
+   Eina_Bool alpha;
+   Ecore_Evas_Engine_Wl_Data *wdata;
+   int x, y, w, h;
+   int ox, oy, ow, oh;
+
+   if (!sd->frame_obj) return;
+
+   edje_object_part_geometry_get(sd->frame_obj, "elm.spacer.opaque",
+ , , , );
+   edje_object_part_geometry_get(sd->frame_obj, "elm.swallow.client",
+ , , , );
+
+   edje_object_part_unswallow(sd->frame_obj, sd->edje);
+   evas_object_hide(sd->frame_obj);
+
+   /* evas_output_framespace_set(sd->evas, 0, 0, 0, 0); */
+
+   wdata = sd->ee->engine.data;
+   wdata->content.x = x;
+   wdata->content.y = y;
+   wdata->content.w = w;
+   wdata->content.h = h;
+
+   alpha = ecore_evas_alpha_get(sd->ee);
+   if (!alpha)
+ ecore_wl2_window_opaque_region_set(sd->wl.win, x, y, w, h);
+   else
+ ecore_wl2_window_opaque_region_set(sd->wl.win, 0, 0, 0, 0);
+
+   ecore_wl2_window_geometry_set(sd->wl.win, x, y, w, h);
+   ecore_wl2_window_input_region_set(sd->wl.win, x, y, w, h);
+}
+
+static void
+_elm_win_frame_show(Efl_Ui_Win_Data *sd)
+{
+   if (!sd->frame_obj) return;
+   edje_object_part_swallow(sd->frame_obj, "elm.swallow.client",
+sd->edje);
+   evas_object_show(sd->frame_obj);
+
+#ifdef HAVE_ELEMENTARY_WL2
+   _elm_win_opaque_update(sd);
+   _elm_win_frame_obj_update(sd);
+#endif
+}
+
 #ifdef ELM_DEBUG
 static void
 _debug_key_down(void *data EINA_UNUSED,
@@ -4920,16 +4972,11 @@ _efl_ui_win_borderless_set(Eo *obj EINA_UNUSED, 
Efl_Ui_Win_Data *sd, Eina_Bool b
 
if (borderless)
  {
-if (need_frame)
-  _elm_win_frame_del(sd);
+if (need_frame) _elm_win_frame_hide(sd);
  }
else
  {
-if (need_frame)
-  _elm_win_frame_add(sd, "default");
-
-if (sd->frame_obj)
-  evas_object_show(sd->frame_obj);
+if (need_frame) _elm_win_frame_show(sd);
  }
 
TRAP(sd, borderless_set, borderless);

-- 




[EGIT] [core/efl] master 02/02: elementary: Make wl frame borders above content

2016-07-13 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 46904e19a71dbeecbcdb6950c0f372c34f6d0db6
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Wed Jul 13 15:13:17 2016 -0400

elementary: Make wl frame borders above content

This commit just readds the layer setting code which made the frame
border be above content. This does make sense in some contexts

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/elementary/efl_ui_win.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index 71f15a3..3445069 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -3599,12 +3599,12 @@ _elm_win_frame_add(Efl_Ui_Win_Data *sd, const char 
*style)
 {
Evas_Object *obj = sd->obj;
int w, h, mw, mh;
-   /* short layer; */
+   short layer;
 
if (sd->frame_obj) return;
sd->frame_obj = edje_object_add(sd->evas);
-   /* layer = evas_object_layer_get(obj); */
-   /* evas_object_layer_set(sd->frame_obj, layer + 1); */
+   layer = evas_object_layer_get(obj);
+   evas_object_layer_set(sd->frame_obj, layer + 1);
if (!elm_widget_theme_object_set
(sd->obj, sd->frame_obj, "border", "base", style))
  {

-- 




[EGIT] [core/efl] master 01/02: evas-wayland-shm: Create buffers with ARGB by default

2016-07-13 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 91437a342443dbb1e4a7ec7a86e3a9022aed410a
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Wed Jul 13 14:43:49 2016 -0400

evas-wayland-shm: Create buffers with ARGB by default

We need to be creating buffers with ARGB by default so that things
like Alpha/Transparency work when toggled. If we always create with
XRGB then toggling Alpha/Transparency state fails.

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/modules/evas/engines/wayland_shm/evas_shm.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/modules/evas/engines/wayland_shm/evas_shm.c 
b/src/modules/evas/engines/wayland_shm/evas_shm.c
index 690d7a6..92aae08 100644
--- a/src/modules/evas/engines/wayland_shm/evas_shm.c
+++ b/src/modules/evas/engines/wayland_shm/evas_shm.c
@@ -230,7 +230,7 @@ _shm_data_create_from_pool(Shm_Pool *pool, int w, int h, 
Eina_Bool alpha)
 {
Shm_Data *data;
int len, offset;
-   uint32_t wl_format = WL_SHM_FORMAT_XRGB;
+   uint32_t wl_format = WL_SHM_FORMAT_ARGB;
 
LOGFN(__FILE__, __LINE__, __FUNCTION__);
 

-- 




[EGIT] [core/efl] master 01/01: elput: Cleanup erroneous errors when trying to get output name

2016-07-13 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 2437d5327806c3b1c489adf4e78018a7bcfa4ced
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Wed Jul 13 11:40:12 2016 -0400

elput: Cleanup erroneous errors when trying to get output name

When we make calls to get an Input device's output name, if the device
does not have an output name it's not actually an error so just return
NULL with less noise

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/elput/elput_input.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elput/elput_input.c b/src/lib/elput/elput_input.c
index 5b2b1c5..daa3675 100644
--- a/src/lib/elput/elput_input.c
+++ b/src/lib/elput/elput_input.c
@@ -634,7 +634,7 @@ EAPI Eina_Stringshare *
 elput_input_device_output_name_get(Elput_Device *device)
 {
EINA_SAFETY_ON_NULL_RETURN_VAL(device, NULL);
-   EINA_SAFETY_ON_NULL_RETURN_VAL(device->output_name, NULL);
 
+   if (!device->output_name) return NULL;
return eina_stringshare_ref(device->output_name);
 }

-- 




[EGIT] [core/efl] master 01/02: evas-generic: Fix gcc warning of incorrect format

2016-07-13 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit ea7fe4efdc11fef405b906d628f39d4c80c3fb5c
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Wed Jul 13 10:05:03 2016 -0400

evas-generic: Fix gcc warning of incorrect format

Gcc warns us about using %d here when the argument is unsigned long.
Fix format params.

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/generic/evas/ps/main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/generic/evas/ps/main.c b/src/generic/evas/ps/main.c
index c5b8a18..d069e77 100644
--- a/src/generic/evas/ps/main.c
+++ b/src/generic/evas/ps/main.c
@@ -280,7 +280,7 @@ main(int argc, char **argv)
{
   // nothing much to do, the receiver will simply ignore the
   // data as it's too short
-  D("fwrite failed (%d bytes): %m\n", width * height * 
sizeof(DATA32));
+  D("fwrite failed (%lu bytes): %m\n", width * height * 
sizeof(DATA32));
}
   }
 shm_free();

-- 




[EGIT] [core/efl] master 02/02: evas-generic: Fix gcc wanring

2016-07-13 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit e3b00d37b7abaa83b0f927130b230553091e8801
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Wed Jul 13 10:06:12 2016 -0400

evas-generic: Fix gcc wanring

Gcc suggets parens around comparison value. Silence gcc warning.

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/generic/evas/pdf/main.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/generic/evas/pdf/main.cpp b/src/generic/evas/pdf/main.cpp
index eab137b..71d016c 100644
--- a/src/generic/evas/pdf/main.cpp
+++ b/src/generic/evas/pdf/main.cpp
@@ -166,7 +166,7 @@ void poppler_load_image(int size_w EINA_UNUSED, int size_h 
EINA_UNUSED)
   int bit = x & 0x7;
   int c = (*src & (1 << bit)) ? 0xFF : 0x00;
   *dst++ = ARGB_JOIN(0xFF, c, c, c);
-  if (x & 0x7 == 0x7) src++;
+  if ((x & 0x7) == 0x7) src++;
}
   }
  }

-- 




[EGIT] [core/efl] master 01/01: elementary: Fix issue of minimum resizing in wayland

2016-07-13 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 0e4b9afeb0817ac70c84884885aecb3518b7fe5d
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Wed Jul 13 09:40:22 2016 -0400

elementary: Fix issue of minimum resizing in wayland

This patch fixes an issue where if you tried to resize a window to
it's minimum size, the contents of the window would draw outside the
window frame. Basically, when we are setting min/max size hints to the
window object we need to account for framespace.

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/elementary/efl_ui_win.c | 11 +++
 1 file changed, 11 insertions(+)

diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index d93b40b..71f15a3 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -2979,6 +2979,17 @@ _elm_win_resize_objects_eval(Evas_Object *obj)
if (!wy) maxh = minh;
else maxh = 32767;
 
+   if (sd->frame_obj)
+ {
+int fx, fy, fw, fh;
+
+evas_output_framespace_get(sd->evas, , , , );
+minw += fw;
+minh += fh;
+maxw -= fw;
+maxh -= fh;
+ }
+
evas_object_size_hint_min_set(obj, minw, minh);
evas_object_size_hint_max_set(obj, maxw, maxh);
evas_object_geometry_get(obj, NULL, NULL, , );

-- 




[EGIT] [core/efl] master 01/03: Revert "efl theme for wayland borders - dont accept events on client swallow"

2016-07-12 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit cd1f2539fdc7b72a9634ec7df62662811ee88ccd
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Tue Jul 12 09:42:23 2016 -0400

Revert "efl theme for wayland borders - dont accept events on client 
swallow"

This reverts commit fdaefdbf9a8f518930b2d5f71372d1c52f8b2ee7. This is
being reverted because the issue of wayland borders not swallowing
clients has now been fixes and thus mouse_events work as expected wrt
client swallow.
---
 data/elementary/themes/edc/elm/border.edc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/data/elementary/themes/edc/elm/border.edc 
b/data/elementary/themes/edc/elm/border.edc
index 744fd36..2576d0e 100644
--- a/data/elementary/themes/edc/elm/border.edc
+++ b/data/elementary/themes/edc/elm/border.edc
@@ -837,7 +837,7 @@ group { name: "elm/border/base/default";
  /*visible: 0; */
  /* } */
   }
-  part { name: "elm.swallow.client"; type: SWALLOW; mouse_events: 0;
+  part { name: "elm.swallow.client"; type: SWALLOW;
  clip_to: "client_clip";
  description { state: "default" 0.0;
 rel1.relative: 0.0 1.0;

-- 




[EGIT] [core/efl] master 03/03: elementary: Properly swallow wayland clients

2016-07-12 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit e0ed943936ba77e198247fde7169399e316cf2f9
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Tue Jul 12 09:44:14 2016 -0400

elementary: Properly swallow wayland clients

This patch fixes an issue where wayland windows would not swallow
clients properly. Basically, we should be swallowing the elm window
layout directly rather than use a rectangle (as was previous). This
commit also waits until the internal elm theme has been applied to the
sd->edje object before adding the wayland window frame.

This commit has the added benefit of being able to remove an additional
Evas_Object from the internal data structure.

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/elementary/efl_ui_win.c | 67 ++---
 1 file changed, 30 insertions(+), 37 deletions(-)

diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index de74762..d93b40b 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -96,7 +96,6 @@ struct _Efl_Ui_Win_Data
Evas *evas;
Evas_Object  *parent; /* parent *window* object*/
Evas_Object  *img_obj, *frame_obj;
-   Evas_Object  *client_obj; /* rect representing the client */
Eo   *edje; /**< edje object for a window layout */
Eo   *box;
Evas_Object  *obj; /* The object itself */
@@ -1351,7 +1350,7 @@ _elm_win_frame_obj_update(Efl_Ui_Win_Data *sd)
  }
 
evas_object_geometry_get(sd->frame_obj, , , , );
-   evas_object_geometry_get(sd->client_obj, , , , );
+   evas_object_geometry_get(sd->edje, , , , );
 
evas_output_framespace_set(sd->evas, (ox - fx), (oy - fy), (fw - ow), (fh - 
oh));
 }
@@ -3372,7 +3371,7 @@ _elm_win_frame_obj_move(void *data,
Efl_Ui_Win_Data *sd;
 
if (!(sd = data)) return;
-   if (!sd->client_obj) return;
+   if (!sd->edje) return;
 
_elm_win_frame_obj_update(sd);
 }
@@ -3386,7 +3385,7 @@ _elm_win_frame_obj_resize(void *data,
Efl_Ui_Win_Data *sd;
 
if (!(sd = data)) return;
-   if (!sd->client_obj) return;
+   if (!sd->edje) return;
 
_elm_win_frame_obj_update(sd);
 }
@@ -3589,12 +3588,12 @@ _elm_win_frame_add(Efl_Ui_Win_Data *sd, const char 
*style)
 {
Evas_Object *obj = sd->obj;
int w, h, mw, mh;
-   short layer;
+   /* short layer; */
 
if (sd->frame_obj) return;
sd->frame_obj = edje_object_add(sd->evas);
-   layer = evas_object_layer_get(obj);
-   evas_object_layer_set(sd->frame_obj, layer + 1);
+   /* layer = evas_object_layer_get(obj); */
+   /* evas_object_layer_set(sd->frame_obj, layer + 1); */
if (!elm_widget_theme_object_set
(sd->obj, sd->frame_obj, "border", "base", style))
  {
@@ -3602,12 +3601,7 @@ _elm_win_frame_add(Efl_Ui_Win_Data *sd, const char 
*style)
 return;
  }
 
-   sd->client_obj = evas_object_rectangle_add(sd->evas);
-   evas_object_color_set(sd->client_obj, 0, 0, 0, 0);
-   /* NB: Tried pass_events here, but that fails to send events */
-   evas_object_repeat_events_set(sd->client_obj, EINA_TRUE);
-   edje_object_part_swallow(sd->frame_obj, "elm.swallow.client",
-sd->client_obj);
+   edje_object_part_swallow(sd->frame_obj, "elm.swallow.client", sd->edje);
 
evas_object_is_frame_object_set(sd->frame_obj, EINA_TRUE);
 
@@ -3693,8 +3687,6 @@ _elm_win_frame_del(Efl_Ui_Win_Data *sd)
 {
int w, h;
 
-   ELM_SAFE_FREE(sd->client_obj, evas_object_del);
-
if (sd->frame_obj)
  {
 evas_object_event_callback_del_full
@@ -4449,28 +4441,6 @@ _elm_win_finalize_internal(Eo *obj, Efl_Ui_Win_Data *sd, 
const char *name, Elm_W
  evas_event_callback_add(sd->evas, EVAS_CALLBACK_RENDER_FLUSH_PRE, 
_elm_win_frame_pre_render, sd);
 #endif
 
-   /* do not append to list; all windows render as black rects */
-   if (type != ELM_WIN_FAKE)
- {
-_elm_win_list = eina_list_append(_elm_win_list, obj);
-_elm_win_count++;
-
-if ((engine) && ((!strcmp(engine, ELM_SOFTWARE_FB)) || 
(!strcmp(engine, ELM_DRM
-  {
- TRAP(sd, fullscreen_set, 1);
-  }
-else if ((type != ELM_WIN_INLINED_IMAGE) &&
- ((engine) &&
-  ((!strcmp(engine, ELM_WAYLAND_SHM) ||
-   (!strcmp(engine, ELM_WAYLAND_EGL))
-  _elm_win_frame_add(sd, "default");
-
-if (_elm_config->focus_highlight_enable)
-  elm_win_focus_highlight_enabled_set(obj, EINA_TRUE);
-if (_elm_config->focus_highlight_animate)
-  elm_win_focus_highlight_animate_set(obj, EINA

[EGIT] [core/efl] master 02/03: elementary: Clip window swallow clients

2016-07-12 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 4b67b791713c8373bb58188315c830b907ffe329
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Tue Jul 12 09:43:19 2016 -0400

elementary: Clip window swallow clients

This commit sets up a client_clip for the windows client being
swallowed so that during resize, any window contents do not draw
outside the window.

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 data/elementary/themes/edc/elm/win.edc | 7 +++
 1 file changed, 7 insertions(+)

diff --git a/data/elementary/themes/edc/elm/win.edc 
b/data/elementary/themes/edc/elm/win.edc
index 343de6c..292ff24 100644
--- a/data/elementary/themes/edc/elm/win.edc
+++ b/data/elementary/themes/edc/elm/win.edc
@@ -20,7 +20,14 @@ group { name: "elm/win/base/default";
 fixed: 0 1;
  }
   }
+  part { name: "client_clip"; type: RECT; mouse_events: 0;
+ description { state: "default" 0.0;
+rel1.to_y: "elm.swallow.contents";
+rel2.to_y: "elm.swallow.contents";
+ }
+  }
   part { name: "elm.swallow.contents"; type: SWALLOW;
+ clip_to: "client_clip";
  description { state: "default" 0.0;
 rel1 {
to_y: "elm.swallow.menu";

-- 




[EGIT] [core/enlightenment] master 01/01: 'cur_group' variable is unused here if we are not building for wayland

2016-07-11 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit f3371ff04c30db15cd43dd3637a43fb7aceb9e4a
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Mon Jul 11 12:11:00 2016 -0400

'cur_group' variable is unused here if we are not building for wayland

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/bin/e_xkb.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/bin/e_xkb.c b/src/bin/e_xkb.c
index 1f7cdae..1b4ecdc 100644
--- a/src/bin/e_xkb.c
+++ b/src/bin/e_xkb.c
@@ -251,6 +251,8 @@ _e_wl_xkb_update(int cur_group)
 #ifdef HAVE_WAYLAND
e_comp_wl_input_keymap_index_set(cur_group);
_e_xkb_update_event(cur_group);
+#else
+   (void)cur_group;
 #endif
 }
 

-- 




[EGIT] [core/efl] master 01/01: ecore-wl2: Fix issue of misleading 'if' statement

2016-07-11 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 5fc4b971dc7c01b6d76322cfb90e254b57c717c5
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Mon Jul 11 11:56:17 2016 -0400

ecore-wl2: Fix issue of misleading 'if' statement

Gcc reports that this 'if' statement is misleading due to indentation.
We should only be sending the 'finish' call if the dnd version
supports it, however we should always be sending 'destroy'

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/ecore_wl2/ecore_wl2_dnd.c | 8 +---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/lib/ecore_wl2/ecore_wl2_dnd.c 
b/src/lib/ecore_wl2/ecore_wl2_dnd.c
index 827bc55..7e17d86 100644
--- a/src/lib/ecore_wl2/ecore_wl2_dnd.c
+++ b/src/lib/ecore_wl2/ecore_wl2_dnd.c
@@ -244,9 +244,11 @@ _selection_data_read(void *data, Ecore_Fd_Handler *fdh)
   {
  if (source->input->display->wl.data_device_manager_version >=
  WL_DATA_OFFER_FINISH_SINCE_VERSION)
-   wl_data_offer_finish(source->offer);
-   wl_data_offer_destroy(source->offer);
-   source->offer = NULL;
+   {
+  wl_data_offer_finish(source->offer);
+   }
+ wl_data_offer_destroy(source->offer);
+ source->offer = NULL;
   }
 
 fd = ecore_main_fd_handler_fd_get(source->fdh);

-- 




[EGIT] [core/efl] master 01/01: edje: Fix issue of null pointer dereference

2016-07-11 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit ce9379398fdc3a99df1f212a349cfdac5fef4d3b
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Mon Jul 11 11:19:01 2016 -0400

edje: Fix issue of null pointer dereference

Coverity reports that 'text' here is a null pointer dereference so
check for valid 'text' variable before trying to use it.

Fixes Coverity CID1267490

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/edje/edje_load.c | 34 ++
 1 file changed, 22 insertions(+), 12 deletions(-)

diff --git a/src/lib/edje/edje_load.c b/src/lib/edje/edje_load.c
index 85dc114..c370a72 100644
--- a/src/lib/edje/edje_load.c
+++ b/src/lib/edje/edje_load.c
@@ -1041,21 +1041,31 @@ _edje_object_file_set_internal(Evas_Object *obj, const 
Eina_File *file, const ch
 Edje_Part_Description_Text *text;
 
 text = (Edje_Part_Description_Text 
*)rp->param1.description;
-
-if (ed->file->feature_ver < 1)
+if (text)
   {
- text->text.id_source = -1;
- text->text.id_text_source = -1;
-  }
+ if (ed->file->feature_ver < 1)
+   {
+  text->text.id_source = -1;
+  text->text.id_text_source = -1;
+   }
 
-if ((rp->type == EDJE_RP_TYPE_TEXT) &&
-(rp->typedata.text))
-  {
- if (text->text.id_source >= 0)
-   rp->typedata.text->source = 
ed->table_parts[text->text.id_source % ed->table_parts_size];
- if (text->text.id_text_source >= 0)
-   rp->typedata.text->text_source = 
ed->table_parts[text->text.id_text_source % ed->table_parts_size];
+ if ((rp->type == EDJE_RP_TYPE_TEXT) &&
+ (rp->typedata.text))
+   {
+  if (text->text.id_source >= 0)
+{
+   rp->typedata.text->source =
+ 
ed->table_parts[text->text.id_source % ed->table_parts_size];
+}
+
+  if (text->text.id_text_source >= 0)
+{
+   rp->typedata.text->text_source =
+ 
ed->table_parts[text->text.id_text_source % ed->table_parts_size];
+}
+   }
   }
+
 if (rp->part->entry_mode > 
EDJE_ENTRY_EDIT_MODE_NONE)
   {
  _edje_entry_real_part_init(ed, rp);

-- 




[EGIT] [core/efl] master 01/01: elput: Fix horrid typo

2016-07-08 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit cb2ab3842182bc6bb7edf63fbeeebf26421f6275
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Fri Jul 8 08:54:45 2016 -0400

elput: Fix horrid typo

Not sure how this happened, but use a ; not a : ;)

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/elput/elput_input.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elput/elput_input.c b/src/lib/elput/elput_input.c
index e5182a9..5b2b1c5 100644
--- a/src/lib/elput/elput_input.c
+++ b/src/lib/elput/elput_input.c
@@ -634,7 +634,7 @@ EAPI Eina_Stringshare *
 elput_input_device_output_name_get(Elput_Device *device)
 {
EINA_SAFETY_ON_NULL_RETURN_VAL(device, NULL);
-   EINA_SAFETY_ON_NULL_RETURN_VAL(device->output_name, NULL):
+   EINA_SAFETY_ON_NULL_RETURN_VAL(device->output_name, NULL);
 
return eina_stringshare_ref(device->output_name);
 }

-- 




[EGIT] [core/efl] master 02/02: elput: Fix insecure temporary file

2016-07-08 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit ee720592196a3b5649a67f3dc80ebb1ce1992c99
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Fri Jul 8 08:48:27 2016 -0400

elput: Fix insecure temporary file

Fix using mkstemp directly without securely setting umask first by
making use of eina_file_mkstemp which does set unmask.

Fixes Coverity CID1357165

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/elput/elput_evdev.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/lib/elput/elput_evdev.c b/src/lib/elput/elput_evdev.c
index 8704a2e..53279c9 100644
--- a/src/lib/elput/elput_evdev.c
+++ b/src/lib/elput/elput_evdev.c
@@ -79,7 +79,8 @@ _keyboard_fd_get(off_t size)
else
  return -1;
 
-   if ((fd = mkstemp(tmp)) < 0) return -1;
+   fd = eina_file_mkstemp(tmp, NULL);
+   if (fd < 0) return -1;
 
flags = fcntl(fd, F_GETFD);
if (flags < 0)

-- 




[EGIT] [core/efl] master 01/02: evas-wayland-shm: Fix Insecure temporary file

2016-07-08 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit b2a8ef3d1310be74a720e2a8c1bf870741f3f231
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Fri Jul 8 08:46:12 2016 -0400

evas-wayland-shm: Fix Insecure temporary file

Fix using mkstemp directly without securely setting umask first by
making use of eina_file_mkstemp function which does set umask.

Fixes Coverity CID1357164

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/modules/evas/engines/wayland_shm/evas_shm.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/modules/evas/engines/wayland_shm/evas_shm.c 
b/src/modules/evas/engines/wayland_shm/evas_shm.c
index 2f4fe59..690d7a6 100644
--- a/src/modules/evas/engines/wayland_shm/evas_shm.c
+++ b/src/modules/evas/engines/wayland_shm/evas_shm.c
@@ -108,8 +108,10 @@ _shm_pool_make(struct wl_shm *shm, int size, void **data)
 
strcat(name, tmp);
 
+   fd = eina_file_mkstemp(name, NULL);
+   if (fd < 0)
/* try to create tmp file */
-   if ((fd = mkstemp(name)) < 0)
+   /* if ((fd = mkstemp(name)) < 0) */
  {
 ERR("Could not create temporary file: %m");
 free(name);

-- 




[EGIT] [core/efl] master 01/02: elput: Add API function to return output name associated with input device

2016-07-08 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit e0cde404757e3c6775f5d8ffb14353e56e6b2a81
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Thu Jul 7 14:33:38 2016 -0400

elput: Add API function to return output name associated with input
device

This patch adds a new API function which we can call from Ecore_Drm2
which will return the name of an output which is associated with a
given input device. This output name can then be used to find a
matching output, and perform any device calibration that is needed.

@feature

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/elput/Elput.h   | 12 
 src/lib/elput/elput_input.c |  9 +
 2 files changed, 21 insertions(+)

diff --git a/src/lib/elput/Elput.h b/src/lib/elput/Elput.h
index 4595f58..3e7bd4b 100644
--- a/src/lib/elput/Elput.h
+++ b/src/lib/elput/Elput.h
@@ -401,6 +401,18 @@ EAPI void 
elput_input_keyboard_cached_context_set(Elput_Manager *manager, void *
  */
 EAPI void elput_input_keyboard_cached_keymap_set(Elput_Manager *manager, void 
*keymap);
 
+/**
+ * Return the output name associated with a given device
+ *
+ * @param device
+ *
+ * @return An Eina_Stringshare of the output name for this device, or NULL on 
error
+ *
+ * @ingroup Elput_Input_Group
+ * @since 1.18
+ */
+EAPI Eina_Stringshare *elput_input_device_output_name_get(Elput_Device 
*device);
+
 # endif
 
 # undef EAPI
diff --git a/src/lib/elput/elput_input.c b/src/lib/elput/elput_input.c
index bff5503..e5182a9 100644
--- a/src/lib/elput/elput_input.c
+++ b/src/lib/elput/elput_input.c
@@ -629,3 +629,12 @@ elput_input_keyboard_cached_keymap_set(Elput_Manager 
*manager, void *keymap)
if ((keymap) && (manager->cached.keymap == keymap)) return;
manager->cached.keymap = keymap;
 }
+
+EAPI Eina_Stringshare *
+elput_input_device_output_name_get(Elput_Device *device)
+{
+   EINA_SAFETY_ON_NULL_RETURN_VAL(device, NULL);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(device->output_name, NULL):
+
+   return eina_stringshare_ref(device->output_name);
+}

-- 




[EGIT] [core/efl] master 02/02: ecore-drm2: Perform input device calibration based on output name

2016-07-08 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 5a482e9af46376ae9b7edce0629a3123fa0692c1
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Thu Jul 7 14:34:47 2016 -0400

ecore-drm2: Perform input device calibration based on output name

When a new input device gets added, device calibration may need to be
performed. In order for that to be done properly, we need to know
which output this input device is associated with. This patch makes a
function call to Elput in order to retrieve that output name and
perform the proper calibration.

@fix

Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/ecore_drm2/ecore_drm2_device.c | 29 +
 1 file changed, 25 insertions(+), 4 deletions(-)

diff --git a/src/lib/ecore_drm2/ecore_drm2_device.c 
b/src/lib/ecore_drm2/ecore_drm2_device.c
index 831c538..8794063 100644
--- a/src/lib/ecore_drm2/ecore_drm2_device.c
+++ b/src/lib/ecore_drm2/ecore_drm2_device.c
@@ -41,12 +41,33 @@ _cb_device_change(void *data, int type EINA_UNUSED, void 
*event)
 
if (ev->type == ELPUT_DEVICE_ADDED)
  {
+Eina_List *l;
 Ecore_Drm2_Output *output;
+Eina_Stringshare *name;
 
-/* FIXME: not sure which output to use to calibrate */
-output = eina_list_data_get(device->outputs);
-if (output)
-  ecore_drm2_device_calibrate(device, output->w, output->h);
+name = elput_input_device_output_name_get(ev->device);
+if (!name)
+  {
+ output = eina_list_data_get(device->outputs);
+ if (output)
+   ecore_drm2_device_calibrate(device,
+   output->w, output->h);
+  }
+else
+  {
+ EINA_LIST_FOREACH(device->outputs, l, output)
+   {
+  if ((output->name) &&
+  (!strcmp(output->name, name)))
+{
+   ecore_drm2_device_calibrate(device,
+   output->w, output->h);
+   break;
+}
+   }
+
+ eina_stringshare_del(name);
+  }
  }
 
return ECORE_CALLBACK_RENEW;

-- 




[EGIT] [core/efl] master 01/01: ecore-wl2: Fix error handling for bad fd

2016-07-03 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 7496df08aa0397307eade19742373140d52119e5
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Sun Jul 3 18:23:45 2016 -0400

ecore-wl2: Fix error handling for bad fd

If we end up failing to get the fd from ecore_main_fd_handler_fd_get,
then we should just bail out of this function and try again later.

Fixes Coverity CID1357213

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/ecore_wl2/ecore_wl2_dnd.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/lib/ecore_wl2/ecore_wl2_dnd.c 
b/src/lib/ecore_wl2/ecore_wl2_dnd.c
index 0beac7a..e0863da 100644
--- a/src/lib/ecore_wl2/ecore_wl2_dnd.c
+++ b/src/lib/ecore_wl2/ecore_wl2_dnd.c
@@ -232,6 +232,8 @@ _selection_data_read(void *data, Ecore_Fd_Handler *fdh)
fd = ecore_main_fd_handler_fd_get(fdh);
if (fd >= 0)
  len = read(fd, buffer, sizeof buffer);
+   else
+ return ECORE_CALLBACK_RENEW;
 
event = calloc(1, sizeof(Ecore_Wl2_Event_Selection_Data_Ready));
if (!event) return ECORE_CALLBACK_CANCEL;

-- 




[EGIT] [core/efl] master 01/01: ecore-wl2: Fix uninitialized variable

2016-07-02 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 183a611cde0ef889b82843a6f63583e04ba5ecc2
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Sat Jul 2 07:17:23 2016 -0400

ecore-wl2: Fix uninitialized variable

Coverity reports that len is used un-init here, so let's give it a
value at declaration time

Fixes Coverity CID1357214

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/ecore_wl2/ecore_wl2_dnd.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/ecore_wl2/ecore_wl2_dnd.c 
b/src/lib/ecore_wl2/ecore_wl2_dnd.c
index b696a2d..0beac7a 100644
--- a/src/lib/ecore_wl2/ecore_wl2_dnd.c
+++ b/src/lib/ecore_wl2/ecore_wl2_dnd.c
@@ -223,7 +223,7 @@ _selection_data_ready_cb_free(void *data EINA_UNUSED, void 
*event)
 static Eina_Bool
 _selection_data_read(void *data, Ecore_Fd_Handler *fdh)
 {
-   int len, fd;
+   int len = 0, fd;
char buffer[PATH_MAX];
Ecore_Wl2_Dnd_Source *source = data;
Ecore_Wl2_Event_Selection_Data_Ready *event;

-- 




[EGIT] [core/efl] master 02/02: ecore-wl2: Fix issue where hash would not get destroyed on error

2016-06-30 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit ff7a5e4f1b1286b1226fb0a9a1729759d1f72e18
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Thu Jun 30 11:14:40 2016 -0400

ecore-wl2: Fix issue where hash would not get destroyed on error

Coverity reports that we could not reach the eina_hash_free here on
erorr condition. This was due to an erroneous return NULL above the if
(hash_create) check.

Fixes Coverity CID1357171

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/ecore_wl2/ecore_wl2_display.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/src/lib/ecore_wl2/ecore_wl2_display.c 
b/src/lib/ecore_wl2/ecore_wl2_display.c
index cdc859c..0df55f5 100644
--- a/src/lib/ecore_wl2/ecore_wl2_display.c
+++ b/src/lib/ecore_wl2/ecore_wl2_display.c
@@ -695,7 +695,6 @@ connect_err:
eina_hash_free(ewd->globals);
free(ewd->name);
free(ewd);
-   return NULL;
 
if (hash_create)
  {

-- 




[EGIT] [core/efl] master 02/05: ecore-wl2: Fix derefence after null check

2016-06-30 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 0eac1e43728da297db26027ca242f0fc2343fb4a
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Thu Jun 30 11:01:22 2016 -0400

ecore-wl2: Fix derefence after null check

'window' here could potentially be null so we should be checking that
it is valid before trying to assign event window

Fixes Coverity CID1357148

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/ecore_wl2/ecore_wl2_input.c | 7 +--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/lib/ecore_wl2/ecore_wl2_input.c 
b/src/lib/ecore_wl2/ecore_wl2_input.c
index 30573ea..3bef2f0 100644
--- a/src/lib/ecore_wl2/ecore_wl2_input.c
+++ b/src/lib/ecore_wl2/ecore_wl2_input.c
@@ -250,8 +250,11 @@ _ecore_wl2_input_mouse_down_send(Ecore_Wl2_Input *input, 
Ecore_Wl2_Window *windo
ev->multi.root.x = input->pointer.sx;
ev->multi.root.y = input->pointer.sy;
 
-   ev->window = window->id;
-   ev->event_window = window->id;
+   if (window)
+ {
+ev->window = window->id;
+ev->event_window = window->id;
+ }
 
ecore_event_add(ECORE_EVENT_MOUSE_BUTTON_DOWN, ev, NULL, NULL);
 

-- 




[EGIT] [core/efl] master 04/05: ecore-wl2: Check the return value of ecore_main_fd_handler_fd_get

2016-06-30 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 35f76fe8a8988d3664628cf83f3ea77a7cbb5c76
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Thu Jun 30 11:05:14 2016 -0400

ecore-wl2: Check the return value of ecore_main_fd_handler_fd_get

This patch fixes an issue where ecore_main_fd_handler_fd_get could be
returning a negative number and passing that to close() which cannot
accept negative numbers.

Fixes Coverity CID1357152

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/ecore_wl2/ecore_wl2_dnd.c | 6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/lib/ecore_wl2/ecore_wl2_dnd.c 
b/src/lib/ecore_wl2/ecore_wl2_dnd.c
index 993f899..b885356 100644
--- a/src/lib/ecore_wl2/ecore_wl2_dnd.c
+++ b/src/lib/ecore_wl2/ecore_wl2_dnd.c
@@ -449,7 +449,11 @@ _ecore_wl2_dnd_del(Ecore_Wl2_Dnd_Source *source)
if (!source) return;
if (source->fdh)
  {
-close(ecore_main_fd_handler_fd_get(source->fdh));
+int fd;
+
+fd = ecore_main_fd_handler_fd_get(source->fdh);
+if (fd >= 0)
+  close(ecore_main_fd_handler_fd_get(source->fdh));
 ecore_main_fd_handler_del(source->fdh);
  }
wl_data_offer_destroy(source->offer);

-- 




[EGIT] [core/efl] master 01/02: ecore-drm2: Don't leak return from _output_name_get function

2016-06-30 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 7b0a1933a00983b28951ae9987bbc6dcf4dc5fc8
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Thu Jun 30 11:11:22 2016 -0400

ecore-drm2: Don't leak return from _output_name_get function

Coverity reports that we end up leaking the return from
_output_name_get as the storage is never freed.

Fixes Coverity CID1357161

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/ecore_drm2/ecore_drm2_outputs.c | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/lib/ecore_drm2/ecore_drm2_outputs.c 
b/src/lib/ecore_drm2/ecore_drm2_outputs.c
index b8436ef..42e8e1a 100644
--- a/src/lib/ecore_drm2/ecore_drm2_outputs.c
+++ b/src/lib/ecore_drm2/ecore_drm2_outputs.c
@@ -519,6 +519,7 @@ _output_create(Ecore_Drm2_Device *dev, const drmModeRes 
*res, const drmModeConne
 {
Ecore_Drm2_Output *output;
int i = 0;
+   char *name = NULL;
 
if (w) *w = 0;
 
@@ -560,10 +561,12 @@ _output_create(Ecore_Drm2_Device *dev, const drmModeRes 
*res, const drmModeConne
 break;
  }
 
-   output->name = eina_stringshare_add(_output_name_get(conn));
+   name = _output_name_get(conn);
+   output->name = eina_stringshare_add(name);
output->make = eina_stringshare_add("unknown");
output->model = eina_stringshare_add("unknown");
output->serial = eina_stringshare_add("unknown");
+   free(name);
 
output->pipe = i;
output->crtc_id = res->crtcs[i];

-- 




[EGIT] [core/efl] master 05/05: ecore-wl2: Fix issue of passing negative number to close() and read()

2016-06-30 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 79277d1cb48f750b44b8e9dc35c10433187eebd2
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Thu Jun 30 11:07:09 2016 -0400

ecore-wl2: Fix issue of passing negative number to close() and read()

We should be checking the return value of ecore_main_fd_handler_fd_get
calls as they can return a negative number...which cannot be passed to
the close() or read() functions.

Fixes Coverity CID1357152 and CID1357153

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/ecore_wl2/ecore_wl2_dnd.c | 10 +++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/src/lib/ecore_wl2/ecore_wl2_dnd.c 
b/src/lib/ecore_wl2/ecore_wl2_dnd.c
index b885356..b696a2d 100644
--- a/src/lib/ecore_wl2/ecore_wl2_dnd.c
+++ b/src/lib/ecore_wl2/ecore_wl2_dnd.c
@@ -223,13 +223,15 @@ _selection_data_ready_cb_free(void *data EINA_UNUSED, 
void *event)
 static Eina_Bool
 _selection_data_read(void *data, Ecore_Fd_Handler *fdh)
 {
-   int len;
+   int len, fd;
char buffer[PATH_MAX];
Ecore_Wl2_Dnd_Source *source = data;
Ecore_Wl2_Event_Selection_Data_Ready *event;
Eina_Bool ret;
 
-   len = read(ecore_main_fd_handler_fd_get(fdh), buffer, sizeof buffer);
+   fd = ecore_main_fd_handler_fd_get(fdh);
+   if (fd >= 0)
+ len = read(fd, buffer, sizeof buffer);
 
event = calloc(1, sizeof(Ecore_Wl2_Event_Selection_Data_Ready));
if (!event) return ECORE_CALLBACK_CANCEL;
@@ -243,7 +245,9 @@ _selection_data_read(void *data, Ecore_Fd_Handler *fdh)
  WL_DATA_OFFER_FINISH_SINCE_VERSION)
wl_data_offer_finish(source->offer);
   }
-close(ecore_main_fd_handler_fd_get(source->fdh));
+
+fd = ecore_main_fd_handler_fd_get(source->fdh);
+if (fd >= 0) close(fd);
 ecore_main_fd_handler_del(source->fdh);
 source->fdh = NULL;
 

-- 




[EGIT] [core/efl] master 03/05: ecore-evas-wayland: Fix issue of passing wrong values to resize

2016-06-30 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 0da58a8d78f21f37f73929e0cc4877b029057227
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Thu Jun 30 11:03:07 2016 -0400

ecore-evas-wayland: Fix issue of passing wrong values to resize

Coverity detected that the same code was being passed to resize
regardless of canvas orientation. This patch fixes the issue by
passing the proper values to window_resize.

Fixes Coverity CID1357150

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

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 05e60f6..5f55b63 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
@@ -604,7 +604,7 @@ _ecore_evas_wayland_shm_resize(Ecore_Evas *ee, int location)
 if (ECORE_EVAS_PORTRAIT(ee))
   ecore_wl2_window_resize(wdata->win, ee->w, ee->h, location);
 else
-  ecore_wl2_window_resize(wdata->win, ee->w, ee->h, location);
+  ecore_wl2_window_resize(wdata->win, ee->h, ee->w, location);
  }
 }
 

-- 




[EGIT] [core/efl] master 01/05: elementary: Fix explicit null dereference

2016-06-30 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit dce25efef43f08ae28842f5eba5c807e54352ac1
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Thu Jun 30 10:59:28 2016 -0400

elementary: Fix explicit null dereference

This patch fixes an issue reported by coverity where 'type' variable
could be null and passing null to strcmp is not good ;)

Fixes Coverity CID1357147

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/elementary/elm_cnp.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/lib/elementary/elm_cnp.c b/src/lib/elementary/elm_cnp.c
index 7bb2190..a7f81ee 100644
--- a/src/lib/elementary/elm_cnp.c
+++ b/src/lib/elementary/elm_cnp.c
@@ -2697,9 +2697,9 @@ _wl_data_preparer_uri(Wl_Cnp_Selection *sel, 
Elm_Selection_Data *ddata, Ecore_Wl
cnp_debug("In\n");
 
drop = eo_key_data_get(sel->requestwidget, "__elm_dropable");
-   if (drop)
- type = drop->last.type;
-   if (!strcmp(type, "text/uri-list"))
+   if (drop) type = drop->last.type;
+
+   if ((type) && (!strcmp(type, "text/uri-list")))
  {
 int num_files = 0;
 char **files = NULL;

-- 




[EGIT] [core/efl] master 01/02: elput: Check return of read function call

2016-06-30 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 0f965446a823f9d5c5e02424d04eecc35da547e9
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Thu Jun 30 10:54:22 2016 -0400

elput: Check return of read function call

If we fail to read any bytes from the fd, then we should be returning
a failure here.

Fixes Coverity CID1357143

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/elput/elput_input.c | 6 --
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/lib/elput/elput_input.c b/src/lib/elput/elput_input.c
index 1baf2f8..bff5503 100644
--- a/src/lib/elput/elput_input.c
+++ b/src/lib/elput/elput_input.c
@@ -40,8 +40,10 @@ _cb_open_restricted(const char *path, int flags, void *data)
 avail = select(p[0] + 1, , , , t);
 if (avail > 0)
   {
- read(p[0], , sizeof(int));
- ret = fd;
+ if (read(p[0], , sizeof(int)) < 1)
+   ret = -1;
+ else
+   ret = fd;
  break;
   }
 if (avail < 0) break;

-- 




[EGIT] [core/efl] master 02/02: evas-wayland-shm: Remove logically dead code

2016-06-30 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 59a09e04aa88e4f9e6fd857c3159dfac99336933
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Thu Jun 30 10:56:01 2016 -0400

evas-wayland-shm: Remove logically dead code

Coverity reports that this bpp check is actuall dead code due to the
fact that bpp can never be < 0.

Fixes Coverity CID1357144

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/modules/evas/engines/wayland_shm/evas_outbuf.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/src/modules/evas/engines/wayland_shm/evas_outbuf.c 
b/src/modules/evas/engines/wayland_shm/evas_outbuf.c
index c1ce525..6dafa85 100644
--- a/src/modules/evas/engines/wayland_shm/evas_outbuf.c
+++ b/src/modules/evas/engines/wayland_shm/evas_outbuf.c
@@ -559,7 +559,6 @@ _evas_outbuf_update_region_push(Outbuf *ob, RGBA_Image 
*update, int x, int y, in
if (!(src = update->image.data)) return;
 
bpp = depth / 8;
-   if (bpp <= 0) return;
 
/* check for valid desination data */
if (!(dst = ob->surface->funcs.data_get(ob->surface, , )))

-- 




[EGIT] [core/efl] master 01/01: ecore-evas: Fix error handling issues in wayland_shm engine

2016-06-30 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 1fb3c3328604c56d20ea4a0e35925d4b9f94b185
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Thu Jun 30 10:51:29 2016 -0400

ecore-evas: Fix error handling issues in wayland_shm engine

This patch fixes 2 Coverity issues where engine_info_set was being
called, but the return was never being checked.

Fixes Coverity CID1357141 and CID1357142

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c | 8 ++--
 1 file changed, 6 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 e18c06c..05e60f6 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
@@ -443,7 +443,8 @@ _ecore_evas_wl_show(Ecore_Evas *ee)
  if ((!einfo->info.wl_surface) || (einfo->info.wl_surface != surf))
{
   einfo->info.wl_surface = surf;
-  evas_engine_info_set(ee->evas, (Evas_Engine_Info *)einfo);
+  if (!evas_engine_info_set(ee->evas, (Evas_Engine_Info 
*)einfo))
+ERR("Failed to set Evas Engine Info for '%s'", ee->driver);
   evas_damage_rectangle_add(ee->evas, 0, 0, ee->w + fw, ee->h 
+ fh);
}
   }
@@ -482,7 +483,10 @@ _ecore_evas_wl_hide(Ecore_Evas *ee)
if (einfo)
  {
 einfo->info.wl_surface = NULL;
-evas_engine_info_set(ee->evas, (Evas_Engine_Info *)einfo);
+if (!evas_engine_info_set(ee->evas, (Evas_Engine_Info *)einfo))
+  {
+ ERR("Failed to set Evas Engine Info for '%s'", ee->driver);
+  }
  }
 
if (wdata->win) 

-- 




[EGIT] [core/efl] master 01/01: ecore-input: Check return fo ecore_main_fd_handler_fd_get

2016-06-30 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 837108050b7037b83976960ab7586bf4ea283898
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Thu Jun 30 10:47:56 2016 -0400

ecore-input: Check return fo ecore_main_fd_handler_fd_get

This patch fixes 2 coverity Error handling issues.
ecore_main_fd_handler_fd_get can return a negative fd on error so we
should be checking that return before trying to make use of the fd.

Fixes Coverity CID1356632 and CID1356624

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/ecore_input/ecore_input_joystick.c | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/lib/ecore_input/ecore_input_joystick.c 
b/src/lib/ecore_input/ecore_input_joystick.c
index 1f65ce4..1b17abf 100644
--- a/src/lib/ecore_input/ecore_input_joystick.c
+++ b/src/lib/ecore_input/ecore_input_joystick.c
@@ -189,6 +189,7 @@ _fd_handler_cb(void* userData, Ecore_Fd_Handler* fdHandler)
ssize_t len;
 
fd = ecore_main_fd_handler_fd_get(fdHandler);
+   if (fd < 0) return ECORE_CALLBACK_RENEW;
 
len = read(fd, , sizeof(event));
if (len == -1) return ECORE_CALLBACK_RENEW;
@@ -300,7 +301,7 @@ register_failed:
 static void
 _joystick_unregister(const char *syspath)
 {
-   int   fd;
+   int fd;
Eina_List *l, *l2;
Joystick_Info *ji;
 
@@ -309,6 +310,8 @@ _joystick_unregister(const char *syspath)
 if (syspath == ji->system_path)
   {
  fd = ecore_main_fd_handler_fd_get(ji->fd_handler);
+ if (fd < 0) continue;
+
  close(fd);
  ecore_main_fd_handler_del(ji->fd_handler);
  joystick_list = eina_list_remove(joystick_list, ji);

-- 




[EGIT] [core/efl] master 02/02: ecore-wl2: Fix formatting

2016-06-29 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit bbdb4e5a5351c6ea1a05477cadb7e2d656fb9b52
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Wed Jun 29 13:08:26 2016 -0400

ecore-wl2: Fix formatting

NB: No functional changes

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/ecore_wl2/ecore_wl2_dnd.c | 10 ++
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/lib/ecore_wl2/ecore_wl2_dnd.c 
b/src/lib/ecore_wl2/ecore_wl2_dnd.c
index e35a5cd..993f899 100644
--- a/src/lib/ecore_wl2/ecore_wl2_dnd.c
+++ b/src/lib/ecore_wl2/ecore_wl2_dnd.c
@@ -240,7 +240,7 @@ _selection_data_read(void *data, Ecore_Fd_Handler *fdh)
 if (source->input->drag.source)
   {
  if (source->input->display->wl.data_device_manager_version >=
-   WL_DATA_OFFER_FINISH_SINCE_VERSION)
+ WL_DATA_OFFER_FINISH_SINCE_VERSION)
wl_data_offer_finish(source->offer);
   }
 close(ecore_main_fd_handler_fd_get(source->fdh));
@@ -283,8 +283,9 @@ _selection_data_receive(Ecore_Wl2_Dnd_Source *source, const 
char *type)
wl_data_offer_receive(source->offer, type, p[1]);
close(p[1]);
 
-   source->fdh = ecore_main_fd_handler_file_add(p[0], ECORE_FD_READ | 
ECORE_FD_ERROR,
- _selection_data_read, source, NULL, NULL);
+   source->fdh =
+ ecore_main_fd_handler_file_add(p[0], ECORE_FD_READ | ECORE_FD_ERROR,
+_selection_data_read, source, NULL, NULL);
 }
 
 void
@@ -316,7 +317,8 @@ _ecore_wl2_dnd_enter(Ecore_Wl2_Input *input, struct 
wl_data_offer *offer, struct
if (offer)
  {
 input->drag.source = wl_data_offer_get_user_data(offer);
-input->drag.source->dnd_action = 
WL_DATA_DEVICE_MANAGER_DND_ACTION_MOVE;
+input->drag.source->dnd_action =
+  WL_DATA_DEVICE_MANAGER_DND_ACTION_MOVE;
 num = (input->drag.source->types.size / sizeof(char *));
 types = input->drag.source->types.data;
 if (input->display->wl.data_device_manager_version >=

-- 




[EGIT] [core/efl] master 02/02: elementary: Fix bug in wl dnd where all subsequent mimetypes would be accepted

2016-06-29 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 2c85f3b525685fd05f48857f2dce8b0bb8123cc8
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Wed Jun 29 09:59:32 2016 -0400

elementary: Fix bug in wl dnd where all subsequent mimetypes would be
accepted

This fixes an issue where in wl dnd, if one mimetype was accepted by a
drop, then all subsequent types would have been accepted also..

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/elementary/elm_cnp.c | 9 ++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/lib/elementary/elm_cnp.c b/src/lib/elementary/elm_cnp.c
index 31b8dbc..8f34a00 100644
--- a/src/lib/elementary/elm_cnp.c
+++ b/src/lib/elementary/elm_cnp.c
@@ -3469,10 +3469,13 @@ _wl_dnd_enter(void *data EINA_UNUSED, int type 
EINA_UNUSED, void *event)
doaccept = EINA_FALSE;
for (i = 0; i < ev->num_types; i++)
  {
-doaccept |= _wl_drops_accept(ev->types[i]);
-if (doaccept)
-  wl_data_offer_accept(ev->offer, ev->serial, ev->types[i]);
+if (_wl_drops_accept(ev->types[i]))
+  {
+ doaccept = EINA_TRUE;
+ wl_data_offer_accept(ev->offer, ev->serial, ev->types[i]);
+  }
  }
+
if (!doaccept)
  wl_data_offer_accept(ev->offer, ev->serial, NULL);
 

-- 




[EGIT] [core/efl] master 01/02: elementary: Fix erroneous usage of EINA_UNUSED

2016-06-29 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit f024234090455d37a05d4e8e0afa02674b912bb2
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Wed Jun 29 11:48:53 2016 -0400

elementary: Fix erroneous usage of EINA_UNUSED

'data' parameter is actually used in this function, so remove mis-use
of EINA_UNUSED in function

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/elementary/elm_cnp.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/lib/elementary/elm_cnp.c b/src/lib/elementary/elm_cnp.c
index a45ae51..7bb2190 100644
--- a/src/lib/elementary/elm_cnp.c
+++ b/src/lib/elementary/elm_cnp.c
@@ -411,7 +411,7 @@ _dnd_types_to_format(const char **types, int ntypes)
 }
 
 static Eina_Bool
-_drag_cancel_animate(void *data EINA_UNUSED, double pos)
+_drag_cancel_animate(void *data, double pos)
 {  /* Animation to "move back" drag-window */
if (pos >= 0.99)
  {
@@ -3701,7 +3701,6 @@ _wl_dnd_end(void *data EINA_UNUSED, int type EINA_UNUSED, 
void *event)
  /* No animation drop was committed */
  evas_object_del(dragwin);
   }
-
 dragwin = NULL;  /* if not freed here, free in end of anim */
  }
 

-- 




[EGIT] [core/efl] master 01/02: elementary: Reformat elm_cnp to be readable

2016-06-29 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 0addbf9b445db7b353155903c58d9de5a36ca613
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Wed Jun 29 09:27:17 2016 -0400

elementary: Reformat elm_cnp to be readable

NB: No functional changes, just formatting so I can read this hot mess

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/elementary/elm_cnp.c | 112 ---
 1 file changed, 62 insertions(+), 50 deletions(-)

diff --git a/src/lib/elementary/elm_cnp.c b/src/lib/elementary/elm_cnp.c
index aad7a89..31b8dbc 100644
--- a/src/lib/elementary/elm_cnp.c
+++ b/src/lib/elementary/elm_cnp.c
@@ -1752,6 +1752,7 @@ static Eina_Bool
 _x11_dnd_status(void *data EINA_UNUSED, int etype EINA_UNUSED, void *ev)
 {
Ecore_X_Event_Xdnd_Status *status = ev;
+
doaccept = EINA_FALSE;
 
/* Only thing we care about: will accept */
@@ -2478,8 +2479,8 @@ _wl_targets_converter(char *target, Wl_Cnp_Selection *sel 
EINA_UNUSED, void *dat
  {
 if (formats & _atoms[i].formats)
   {
- if ((is_uri) || ((!is_uri) &&
-  strcmp(_atoms[i].name, "text/uri-list")))
+ if ((is_uri) ||
+ ((!is_uri) && strcmp(_atoms[i].name, "text/uri-list")))
len += strlen(_atoms[i].name) + strlen(sep);
   }
  }
@@ -2489,8 +2490,8 @@ _wl_targets_converter(char *target, Wl_Cnp_Selection *sel 
EINA_UNUSED, void *dat
  {
 if (formats & _atoms[i].formats)
   {
- if ((is_uri) || ((!is_uri) &&
-  strcmp(_atoms[i].name, "text/uri-list")))
+ if ((is_uri) ||
+ ((!is_uri) && strcmp(_atoms[i].name, "text/uri-list")))
{
   aret = strcat(aret, _atoms[i].name);
   aret = strcat(aret, sep);
@@ -2506,10 +2507,11 @@ _wl_targets_converter(char *target, Wl_Cnp_Selection 
*sel EINA_UNUSED, void *dat
 static Eina_Bool
 _wl_general_converter(char *target, Wl_Cnp_Selection *sel EINA_UNUSED, void 
*data, int size, void **data_ret, int *size_ret)
 {
-   cnp_debug("in\n");
Elm_Sel_Format formats = ELM_SEL_FORMAT_NONE;
Cnp_Atom *atom = NULL;
 
+   cnp_debug("in\n");
+
atom = eina_hash_find(_types_hash, target);
if (atom)
  formats = atom->formats;
@@ -2544,10 +2546,11 @@ _wl_general_converter(char *target, Wl_Cnp_Selection 
*sel EINA_UNUSED, void *dat
 static Eina_Bool
 _wl_text_converter(char *target, Wl_Cnp_Selection *sel, void *data, int size, 
void **data_ret, int *size_ret)
 {
-   cnp_debug("in\n");
Elm_Sel_Format formats = ELM_SEL_FORMAT_NONE;
Cnp_Atom *atom = NULL;
 
+   cnp_debug("in\n");
+
atom = eina_hash_find(_types_hash, target);
if (atom)
  formats = atom->formats;
@@ -2595,10 +2598,7 @@ _wl_text_converter(char *target, Wl_Cnp_Selection *sel, 
void *data, int size, vo
 }
 
 static void
-_wl_selection_parser(void *_data,
-int size,
-char ***ret_data,
-int *ret_count)
+_wl_selection_parser(void *_data, int size, char ***ret_data, int *ret_count)
 {
char **files = NULL;
int num_files = 0;
@@ -2634,8 +2634,7 @@ _wl_selection_parser(void *_data,
for (; ((data[is]) && (data[is] != '\n')); is++) ;
  else
{
-  if ((data[is] != '\r') &&
-  (data[is] != '\n'))
+  if ((data[is] != '\r') && (data[is] != '\n'))
 tmp[i++] = data[is++];
   else
 {
@@ -2690,13 +2689,13 @@ _wl_data_preparer_markup(Wl_Cnp_Selection *sel, 
Elm_Selection_Data *ddata, Ecore
 static Eina_Bool
 _wl_data_preparer_uri(Wl_Cnp_Selection *sel, Elm_Selection_Data *ddata, 
Ecore_Wl2_Event_Selection_Data_Ready *ev, Tmp_Info **tmp_info EINA_UNUSED)
 {
-   cnp_debug("In\n");
-
char *p, *stripstr = NULL;
char *data = ev->data;
Dropable *drop;
const char *type = NULL;
 
+   cnp_debug("In\n");
+
drop = eo_key_data_get(sel->requestwidget, "__elm_dropable");
if (drop)
  type = drop->last.type;
@@ -2736,8 +2735,7 @@ _wl_data_preparer_uri(Wl_Cnp_Selection *sel, 
Elm_Selection_Data *ddata, Ecore_Wl
  {
 Efreet_Uri *uri;
 
-p = (char *)eina_memdup((unsigned char *)data,
-ev->len, EINA_TRUE);
+p = (char *)eina_memdup((unsigned char *)data, ev->len, EINA_TRUE);
 if (!p) return EINA_FALSE;
 uri = efreet_uri_decode(p);
 if (!uri)
@@ -2853,8 +2851,7 @@ _wl_elm_cnp_selection_set(Evas_Object *obj, Elm_Sel_Type 
s

[EGIT] [core/efl] master 01/01: elementary: Fix over-zealous optimization attempt

2016-06-29 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 8fb9c91d8f1ba28ed98f8fc597c92e7f0dcf3140
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Wed Jun 29 10:52:34 2016 -0400

elementary: Fix over-zealous optimization attempt

This is a fix for some over-zealous optimization attempt. Basically,
we cannot optimize out multiple calls to ecore_wl2_window_input_get as
the window can change in the for loop.

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/elementary/elm_cnp.c | 7 +++
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/src/lib/elementary/elm_cnp.c b/src/lib/elementary/elm_cnp.c
index 8f34a00..a45ae51 100644
--- a/src/lib/elementary/elm_cnp.c
+++ b/src/lib/elementary/elm_cnp.c
@@ -3617,7 +3617,6 @@ _wl_dnd_drop(void *data EINA_UNUSED, int type 
EINA_UNUSED, void *event)
 {
Ecore_Wl2_Event_Dnd_Drop *ev;
Ecore_Wl2_Window *win;
-   Ecore_Wl2_Input *input;
Dropable *drop;
Eina_List *l;
 
@@ -3626,7 +3625,6 @@ _wl_dnd_drop(void *data EINA_UNUSED, int type 
EINA_UNUSED, void *event)
savedtypes.x = ev->x;
savedtypes.y = ev->y;
 
-   input = ecore_wl2_window_input_get(win);
EINA_LIST_FOREACH(drops, l, drop)
  {
 if (drop->last.in)
@@ -3639,13 +3637,14 @@ _wl_dnd_drop(void *data EINA_UNUSED, int type 
EINA_UNUSED, void *event)
 _cnp_selection);
 
  win = _wl_elm_widget_window_get(drop->obj);
- ecore_wl2_dnd_drag_get(input, drop->last.type);
+ ecore_wl2_dnd_drag_get(ecore_wl2_window_input_get(win),
+drop->last.type);
  return ECORE_CALLBACK_PASS_ON;
   }
  }
 
win = ecore_wl2_display_window_find(_elm_wl_display, ev->win);
-   ecore_wl2_dnd_drag_end(input);
+   ecore_wl2_dnd_drag_end(ecore_wl2_window_input_get(win));
return ECORE_CALLBACK_PASS_ON;
 }
 

-- 




[EGIT] [core/efl] master 02/02: ecore-wl2: Prevent duplicated mouse up events

2016-06-28 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit df65a16620fd5415bf0d8315d08729e6da738432
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Tue Jun 28 09:01:38 2016 -0400

ecore-wl2: Prevent duplicated mouse up events

If you touch downs and ups about all of fingers,
that is sufficient condition to call ecore_wl_input_ungrab().
And then one mouse up event is generated from that function.
So if you set a callback about ECORE_EVENT_MOUSE_BUTTON_UP,
you can watch two mouse up events are occurred.

This is a port of the patch for Ecore_Wayland library (deprecated) to
the newer Ecore_Wl2 library.

ref D4112

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/ecore_wl2/ecore_wl2_input.c | 27 ++-
 1 file changed, 18 insertions(+), 9 deletions(-)

diff --git a/src/lib/ecore_wl2/ecore_wl2_input.c 
b/src/lib/ecore_wl2/ecore_wl2_input.c
index 7a5899f..30573ea 100644
--- a/src/lib/ecore_wl2/ecore_wl2_input.c
+++ b/src/lib/ecore_wl2/ecore_wl2_input.c
@@ -476,12 +476,13 @@ _ecore_wl2_input_grab(Ecore_Wl2_Input *input, 
Ecore_Wl2_Window *window, unsigned
 void
 _ecore_wl2_input_ungrab(Ecore_Wl2_Input *input)
 {
-   if ((input->grab.window) && (input->grab.button))
+   if ((input->grab.window) && (input->grab.button) && (input->grab.count))
  _ecore_wl2_input_mouse_up_send(input, input->grab.window, 0,
 input->grab.button, input->grab.timestamp);
 
input->grab.window = NULL;
input->grab.button = 0;
+   input->grab.count = 0;
 }
 
 static void
@@ -590,7 +591,8 @@ _pointer_cb_button(void *data, struct wl_pointer *pointer 
EINA_UNUSED, unsigned
 
if (state == WL_POINTER_BUTTON_STATE_PRESSED)
  {
-if ((input->focus.pointer) && (!input->grab.window))
+if ((input->focus.pointer) &&
+(!input->grab.window) && (!input->grab.count))
   {
  _ecore_wl2_input_grab(input, input->focus.pointer, button);
  input->grab.timestamp = timestamp;
@@ -599,14 +601,19 @@ _pointer_cb_button(void *data, struct wl_pointer *pointer 
EINA_UNUSED, unsigned
 if (input->focus.pointer)
   _ecore_wl2_input_mouse_down_send(input, input->focus.pointer,
0, button, timestamp);
+
+input->grab.count++;
  }
else
  {
-if ((input->grab.window) && (input->grab.button == button))
-  _ecore_wl2_input_ungrab(input);
-else if (input->focus.pointer)
+if (input->focus.pointer)
   _ecore_wl2_input_mouse_up_send(input, input->focus.pointer,
  0, button, timestamp);
+
+if (input->grab.count) input->grab.count--;
+if ((input->grab.window) && (input->grab.button == button) &&
+(!input->grab.count))
+  _ecore_wl2_input_ungrab(input);
  }
 }
 
@@ -990,11 +997,13 @@ _touch_cb_up(void *data, struct wl_touch *touch 
EINA_UNUSED, unsigned int serial
input->timestamp = timestamp;
input->display->serial = serial;
 
-   if ((input->grab.window) && (input->grab.button == BTN_LEFT))
+   _ecore_wl2_input_mouse_up_send(input, input->focus.touch, id,
+  BTN_LEFT, timestamp);
+
+   if (input->grab.count) input->grab.count--;
+   if ((input->grab.window) && (input->grab.button == BTN_LEFT) &&
+   (!input->grab.count))
  _ecore_wl2_input_ungrab(input);
-   else
- _ecore_wl2_input_mouse_up_send(input, input->focus.touch, id,
-BTN_LEFT, timestamp);
 }
 
 static void

-- 




[EGIT] [core/efl] master 03/03: evas-drm: Reset current buffer state when pageflip completes

2016-06-21 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 3186f3a5fd2e2659ae6084bae89ef602da8d7b6f
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Tue Jun 21 12:59:30 2016 -0400

evas-drm: Reset current buffer state when pageflip completes

When an fbo pageflip finishes, we should be marking the current fbo
(one just sent) as no longer busy since it's already been pixel
blasted to the screen. Also, if we fail to flip to a given fbo during
buffer swap, then don't leave that fbo marked as busy since it is
technically not in use

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/modules/evas/engines/drm/evas_outbuf.c | 9 -
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/modules/evas/engines/drm/evas_outbuf.c 
b/src/modules/evas/engines/drm/evas_outbuf.c
index 4551c85..d43a35b 100644
--- a/src/modules/evas/engines/drm/evas_outbuf.c
+++ b/src/modules/evas/engines/drm/evas_outbuf.c
@@ -80,7 +80,11 @@ _cb_pageflip(int fd EINA_UNUSED, unsigned int frame 
EINA_UNUSED, unsigned int se
ob = data;
 
ofb = ob->priv.current;
-   if (ofb) ofb->busy = EINA_FALSE;
+   if (ofb)
+ {
+ofb->busy = EINA_FALSE;
+ofb->age = 0;
+ }
 
next = ecore_drm2_output_next_fb_get(ob->priv.output);
if (next)
@@ -121,6 +125,9 @@ _outbuf_buffer_swap(Outbuf *ob, Eina_Rectangle *rects, 
unsigned int count)
if (ecore_drm2_fb_flip(ofb->fb, ob->priv.output, ob) < 0)
  {
 _outbuf_tick_source_set(NULL);
+ofb->busy = EINA_FALSE;
+ofb->drawn = EINA_FALSE;
+ofb->age = 0;
 return;
  }
 

-- 




[EGIT] [core/efl] master 01/03: elput: Support suspending and resuming inputs on vt switch

2016-06-21 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit b2a4f45790bd6d3beba494d55e269cc0650f0848
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Tue Jun 21 12:46:29 2016 -0400

elput: Support suspending and resuming inputs on vt switch

This patch fixes an issue where input would stop working when you
vt-switch away and back again in a running Enlightenment Wayland
session. Basically, when we vt-switch away, we need to tell libinput
to suspend input event processing, and when we return to re-enable it.

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/elput/elput_input.c   | 27 +++
 src/lib/elput/elput_logind.c  |  5 +
 src/lib/elput/elput_private.h |  3 ++-
 3 files changed, 34 insertions(+), 1 deletion(-)

diff --git a/src/lib/elput/elput_input.c b/src/lib/elput/elput_input.c
index 57b9b05..1baf2f8 100644
--- a/src/lib/elput/elput_input.c
+++ b/src/lib/elput/elput_input.c
@@ -339,6 +339,33 @@ _elput_input_init_thread(void *data, Ecore_Thread *eth 
EINA_UNUSED)
  }
 }
 
+void
+_elput_input_enable(Elput_Manager *manager)
+{
+   if (!manager->input.hdlr)
+ {
+manager->input.hdlr =
+  ecore_main_fd_handler_add(libinput_get_fd(manager->input.lib),
+ECORE_FD_READ, _cb_input_dispatch,
+>input, NULL, NULL);
+ }
+
+   if (manager->input.suspended)
+ {
+if (libinput_resume(manager->input.lib) != 0) return;
+manager->input.suspended = EINA_FALSE;
+_process_events(>input);
+ }
+}
+
+void
+_elput_input_disable(Elput_Manager *manager)
+{
+   libinput_suspend(manager->input.lib);
+   _process_events(>input);
+   manager->input.suspended = EINA_TRUE;
+}
+
 EAPI Eina_Bool
 elput_input_init(Elput_Manager *manager)
 {
diff --git a/src/lib/elput/elput_logind.c b/src/lib/elput/elput_logind.c
index fedb2b0..206f6e8 100644
--- a/src/lib/elput/elput_logind.c
+++ b/src/lib/elput/elput_logind.c
@@ -17,6 +17,11 @@ _logind_session_active_send(Elput_Manager *em, Eina_Bool 
active)
 {
Elput_Event_Session_Active *ev;
 
+   if (active)
+ _elput_input_enable(em);
+   else
+ _elput_input_disable(em);
+
ev = calloc(1, sizeof(Elput_Event_Session_Active));
if (!ev) return;
 
diff --git a/src/lib/elput/elput_private.h b/src/lib/elput/elput_private.h
index cda235e..59ec76e 100644
--- a/src/lib/elput/elput_private.h
+++ b/src/lib/elput/elput_private.h
@@ -264,7 +264,8 @@ typedef struct _Elput_Async_Open
int flags;
 } Elput_Async_Open;
 
-void _elput_input_window_update(Elput_Manager *manager);
+void _elput_input_enable(Elput_Manager *manager);
+void _elput_input_disable(Elput_Manager *manager);
 
 int _evdev_event_process(struct libinput_event *event);
 Elput_Device *_evdev_device_create(Elput_Seat *seat, struct libinput_device 
*device);

-- 




[EGIT] [core/efl] master 02/03: ecore-drm2: Fix redrawing screen when we vt-switch back to a session

2016-06-21 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 51b589da6a56e9a0bf36226318da4917ec3218fb
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Tue Jun 21 12:55:17 2016 -0400

ecore-drm2: Fix redrawing screen when we vt-switch back to a session

When we vt-switch away from a running session, we need to disable
rendering to an output and re-enable when we switch back. This patch
set essentially makes vt-switching work again in Enlightenment Wayland.

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/ecore_drm2/ecore_drm2_device.c  | 9 -
 src/lib/ecore_drm2/ecore_drm2_fb.c  | 2 ++
 src/lib/ecore_drm2/ecore_drm2_outputs.c | 6 +-
 3 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/src/lib/ecore_drm2/ecore_drm2_device.c 
b/src/lib/ecore_drm2/ecore_drm2_device.c
index 95b7315..ad786e8 100644
--- a/src/lib/ecore_drm2/ecore_drm2_device.c
+++ b/src/lib/ecore_drm2/ecore_drm2_device.c
@@ -9,12 +9,19 @@
 #endif
 
 static Eina_Bool
-_cb_session_active(void *data EINA_UNUSED, int type EINA_UNUSED, void *event)
+_cb_session_active(void *data, int type EINA_UNUSED, void *event)
 {
+   Eina_List *l;
+   Ecore_Drm2_Device *device;
+   Ecore_Drm2_Output *output;
Elput_Event_Session_Active *ev;
Ecore_Drm2_Event_Activate *ea;
 
ev = event;
+   device = data;
+
+   EINA_LIST_FOREACH(device->outputs, l, output)
+ ecore_drm2_output_enabled_set(output, ev->active);
 
ea = calloc(1, sizeof(Ecore_Drm2_Event_Activate));
if (!ea) return ECORE_CALLBACK_RENEW;
diff --git a/src/lib/ecore_drm2/ecore_drm2_fb.c 
b/src/lib/ecore_drm2/ecore_drm2_fb.c
index 9032c12..4b6b9a5 100644
--- a/src/lib/ecore_drm2/ecore_drm2_fb.c
+++ b/src/lib/ecore_drm2/ecore_drm2_fb.c
@@ -225,6 +225,8 @@ ecore_drm2_fb_flip(Ecore_Drm2_Fb *fb, Ecore_Drm2_Output 
*output, void *data)
EINA_SAFETY_ON_NULL_RETURN_VAL(output, -1);
EINA_SAFETY_ON_NULL_RETURN_VAL(output->current_mode, -1);
 
+   if (!output->enabled) return -1;
+
if (output->next)
  WRN("Fb reused too soon, tearing may be visible");
 
diff --git a/src/lib/ecore_drm2/ecore_drm2_outputs.c 
b/src/lib/ecore_drm2/ecore_drm2_outputs.c
index 7596164..b8436ef 100644
--- a/src/lib/ecore_drm2/ecore_drm2_outputs.c
+++ b/src/lib/ecore_drm2/ecore_drm2_outputs.c
@@ -964,7 +964,11 @@ ecore_drm2_output_enabled_set(Ecore_Drm2_Output *output, 
Eina_Bool enabled)
if (output->enabled)
  ecore_drm2_output_dpms_set(output, DRM_MODE_DPMS_ON);
else
- ecore_drm2_output_dpms_set(output, DRM_MODE_DPMS_OFF);
+ {
+ecore_drm2_output_dpms_set(output, DRM_MODE_DPMS_OFF);
+output->current = NULL;
+output->next = NULL;
+ }
 
_output_event_send(output);
 }

-- 




[EGIT] [core/efl] master 01/01: evas-drm: Remove improper EINA_UNUSED for function parameter

2016-06-21 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit c39e8e7573c1c1083794bb04923a6229ae65
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Tue Jun 21 12:07:16 2016 -0400

evas-drm: Remove improper EINA_UNUSED for function parameter

'fd' is actually used in the call to WaitVBlank, so do not mark it as
EINA_UNUSED

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/modules/evas/engines/drm/evas_outbuf.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/modules/evas/engines/drm/evas_outbuf.c 
b/src/modules/evas/engines/drm/evas_outbuf.c
index ce7be06..4551c85 100644
--- a/src/modules/evas/engines/drm/evas_outbuf.c
+++ b/src/modules/evas/engines/drm/evas_outbuf.c
@@ -48,7 +48,7 @@ _outbuf_tick_source_set(Outbuf *ob)
 }
 
 static void
-_outbuf_tick_schedule(int fd EINA_UNUSED, void *data)
+_outbuf_tick_schedule(int fd, void *data)
 {
if (!ticking) return;
 

-- 




[EGIT] [core/efl] master 01/01: elput: Trap for null physical seat name

2016-06-16 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 3adf6fdbae67ecdcc24b9c247ee2e41e42acfc09
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Thu Jun 16 13:01:33 2016 -0400

elput: Trap for null physical seat name

It could be possible that libinput_seat_get_physical_name does not
return a valid name, in which case searching for seats will fail. This
small patch just checks for a valid name being passed in and if not,
searches for a default seat name

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/elput/elput_input.c | 8 +++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/lib/elput/elput_input.c b/src/lib/elput/elput_input.c
index 1918216..57b9b05 100644
--- a/src/lib/elput/elput_input.c
+++ b/src/lib/elput/elput_input.c
@@ -72,6 +72,7 @@ _udev_seat_create(Elput_Manager *em, const char *name)
 
eseat = calloc(1, sizeof(Elput_Seat));
if (!eseat) return NULL;
+
eseat->manager = em;
 
eseat->name = eina_stringshare_add(name);
@@ -102,10 +103,15 @@ _udev_seat_named_get(Elput_Manager *em, const char *name)
Elput_Seat *eseat;
Eina_List *l;
 
+   if (!name) name = "seat0";
+
EINA_LIST_FOREACH(em->input.seats, l, eseat)
  if (!strcmp(eseat->name, name)) return eseat;
 
-   return _udev_seat_create(em, name);
+   eseat = _udev_seat_create(em, name);
+   if (!eseat) return NULL;
+
+   return eseat;
 }
 
 static Elput_Seat *

-- 




[EGIT] [core/efl] master 01/03: ecore-evas-drm: Re-enable direct input callback

2016-06-13 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit fb569d7eb0bcc6e4fd9541a3587e5287f9910492
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Mon Jun 13 12:49:40 2016 -0400

ecore-evas-drm: Re-enable direct input callback

As it seems the jpeg breakage is over wrt direct input callbacks, we
can re-enable these for the drm engines

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/modules/ecore_evas/engines/drm/ecore_evas_drm.c | 6 ++
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c 
b/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
index e396423..0ba8968 100644
--- a/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
+++ b/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
@@ -764,13 +764,12 @@ ecore_evas_drm_new_internal(const char *device, unsigned 
int parent EINA_UNUSED,
ecore_evas_data_set(ee, "device", edata->dev);
 
_ecore_evas_register(ee);
-   ecore_evas_input_event_register(ee);
ecore_event_window_register(ee->prop.window, ee, ee->evas,

(Ecore_Event_Mouse_Move_Cb)_ecore_evas_mouse_move_process,

(Ecore_Event_Multi_Move_Cb)_ecore_evas_mouse_multi_move_process,

(Ecore_Event_Multi_Down_Cb)_ecore_evas_mouse_multi_down_process,

(Ecore_Event_Multi_Up_Cb)_ecore_evas_mouse_multi_up_process);
-   /* _ecore_event_window_direct_cb_set(ee->prop.window, 
_ecore_evas_input_direct_cb); */
+   _ecore_event_window_direct_cb_set(ee->prop.window, 
_ecore_evas_input_direct_cb);
 
ecore_drm2_output_crtc_size_get(edata->output, , );
 
@@ -900,13 +899,12 @@ ecore_evas_gl_drm_new_internal(const char *device, 
unsigned int parent EINA_UNUS
ecore_evas_data_set(ee, "device", edata->dev);
 
_ecore_evas_register(ee);
-   ecore_evas_input_event_register(ee);
ecore_event_window_register(ee->prop.window, ee, ee->evas,

(Ecore_Event_Mouse_Move_Cb)_ecore_evas_mouse_move_process,

(Ecore_Event_Multi_Move_Cb)_ecore_evas_mouse_multi_move_process,

(Ecore_Event_Multi_Down_Cb)_ecore_evas_mouse_multi_down_process,

(Ecore_Event_Multi_Up_Cb)_ecore_evas_mouse_multi_up_process);
-   /* _ecore_event_window_direct_cb_set(ee->prop.window, 
_ecore_evas_input_direct_cb); */
+   _ecore_event_window_direct_cb_set(ee->prop.window, 
_ecore_evas_input_direct_cb);
 
ecore_drm2_output_crtc_size_get(edata->output, , );
 

-- 




[EGIT] [core/efl] master 02/03: ecore-evas-wayland: Minor formatting fixes

2016-06-13 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit c163e51dd31c5d242b1833d542e1eebdf51d930e
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Mon Jun 13 13:00:13 2016 -0400

ecore-evas-wayland: Minor formatting fixes

NB: no functional changes

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_egl.c | 7 +--
 src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c | 7 +--
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_egl.c 
b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_egl.c
index dc036f3..bb50fd8 100644
--- a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_egl.c
+++ b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_egl.c
@@ -449,9 +449,12 @@ ecore_evas_wayland_egl_new_internal(const char *disp_name, 
unsigned int parent,

(Ecore_Event_Multi_Move_Cb)_ecore_evas_mouse_multi_move_process, 

(Ecore_Event_Multi_Down_Cb)_ecore_evas_mouse_multi_down_process, 

(Ecore_Event_Multi_Up_Cb)_ecore_evas_mouse_multi_up_process);
-   _ecore_event_window_direct_cb_set(ee->prop.window, 
_ecore_evas_input_direct_cb);
+   _ecore_event_window_direct_cb_set(ee->prop.window,
+ _ecore_evas_input_direct_cb);
+
+   wdata->sync_handler =
+ ecore_event_handler_add(ECORE_WL2_EVENT_SYNC_DONE, _ee_cb_sync_done, ee);
 
-   wdata->sync_handler = ecore_event_handler_add(ECORE_WL2_EVENT_SYNC_DONE, 
_ee_cb_sync_done, ee);
ee_list = eina_list_append(ee_list, ee);
 
return ee;
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 8086663..e18c06c 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
@@ -358,9 +358,12 @@ ecore_evas_wayland_shm_new_internal(const char *disp_name, 
unsigned int parent,

(Ecore_Event_Multi_Move_Cb)_ecore_evas_mouse_multi_move_process, 

(Ecore_Event_Multi_Down_Cb)_ecore_evas_mouse_multi_down_process, 

(Ecore_Event_Multi_Up_Cb)_ecore_evas_mouse_multi_up_process);
-   _ecore_event_window_direct_cb_set(ee->prop.window, 
_ecore_evas_input_direct_cb);
+   _ecore_event_window_direct_cb_set(ee->prop.window,
+ _ecore_evas_input_direct_cb);
+
+   wdata->sync_handler =
+ ecore_event_handler_add(ECORE_WL2_EVENT_SYNC_DONE, _ee_cb_sync_done, ee);
 
-   wdata->sync_handler = ecore_event_handler_add(ECORE_WL2_EVENT_SYNC_DONE, 
_ee_cb_sync_done, ee);
ee_list = eina_list_append(ee_list, ee);
 
return ee;

-- 




[EGIT] [core/efl] master 03/03: elput: Fix issue of VT-Switching not working

2016-06-13 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 28f79d458596213ea33dc68755c87f46a140591b
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Mon Jun 13 16:18:13 2016 -0400

elput: Fix issue of VT-Switching not working

This patch fixes an issue where you could not VT-switch away from a
running Enlightenment session by simplifying the vt switch code and
passing the proper arguments to the dbus message.

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/elput/elput_logind.c | 46 
 1 file changed, 8 insertions(+), 38 deletions(-)

diff --git a/src/lib/elput/elput_logind.c b/src/lib/elput/elput_logind.c
index 22cb1b0..fedb2b0 100644
--- a/src/lib/elput/elput_logind.c
+++ b/src/lib/elput/elput_logind.c
@@ -568,50 +568,20 @@ _logind_close(Elput_Manager *em, int fd)
 static Eina_Bool
 _logind_vt_set(Elput_Manager *em, int vt)
 {
-   Eldbus_Object *obj;
-   Eldbus_Proxy *proxy;
Eldbus_Message *msg;
-   char self[PATH_MAX];
-
-   snprintf(self, sizeof(self), "/org/freedesktop/login1/seat/self");
-
-   obj = eldbus_object_get(em->dbus.conn, "org.freedesktop.login1", self);
-   if (!obj)
- {
-ERR("Could not get dbus object");
-goto obj_err;
- }
-
-   proxy = eldbus_proxy_get(obj, "org.freedesktop.login1.Seat");
-   if (!proxy)
- {
-ERR("Could not get dbus proxy");
-goto proxy_err;
- }
 
-   msg = eldbus_proxy_method_call_new(proxy, "SwitchTo");
-   if (!msg)
- {
-ERR("Could not create method call for proxy");
-goto msg_err;
- }
+   msg =
+ eldbus_message_method_call_new("org.freedesktop.login1",
+"/org/freedesktop/login1/seat/self",
+"org.freedesktop.login1.Seat", "SwitchTo");
+   if (!msg) return EINA_FALSE;
 
-   eldbus_message_arguments_append(msg, "u", );
+   if (!eldbus_message_arguments_append(msg, "u", vt))
+ return EINA_FALSE;
 
-   eldbus_proxy_send(proxy, msg, NULL, NULL, -1);
-
-   eldbus_message_unref(msg);
-   eldbus_proxy_unref(proxy);
-   eldbus_object_unref(obj);
+   eldbus_connection_send(em->dbus.conn, msg, NULL, NULL, -1);
 
return EINA_TRUE;
-
-msg_err:
-   eldbus_proxy_unref(proxy);
-proxy_err:
-   eldbus_object_unref(obj);
-obj_err:
-   return EINA_FALSE;
 }
 
 Elput_Interface _logind_interface =

-- 




[EGIT] [core/efl] master 01/02: ecore-wl2: Support wl_seat_listener version 4

2016-06-07 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 0a93ff051f53eb98145030408d6139615b565066
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Tue Jun 7 13:36:18 2016 -0400

ecore-wl2: Support wl_seat_listener version 4

This patch adds support for wl_seat_listener version 4 (which is used
in wayland 1.11). We do not actually make use of the seat callback for
name yet, but when the rest of multi-seat issues are sorted, we may
need this.

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/ecore_wl2/ecore_wl2_input.c | 12 ++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/src/lib/ecore_wl2/ecore_wl2_input.c 
b/src/lib/ecore_wl2/ecore_wl2_input.c
index bf17025..2b4a804 100644
--- a/src/lib/ecore_wl2/ecore_wl2_input.c
+++ b/src/lib/ecore_wl2/ecore_wl2_input.c
@@ -1147,10 +1147,18 @@ _seat_cb_capabilities(void *data, struct wl_seat *seat, 
enum wl_seat_capability
  }
 }
 
+static void
+_seat_cb_name(void *data EINA_UNUSED, struct wl_seat *seat EINA_UNUSED, const 
char *name EINA_UNUSED)
+{
+   /* NB: No-Op as we don't care about seat name right now.
+*
+* This will likely change as we hash out remaining multi-seat issues */
+}
+
 static const struct wl_seat_listener _seat_listener =
 {
_seat_cb_capabilities,
-   NULL
+   _seat_cb_name,
 };
 
 static void
@@ -1253,7 +1261,7 @@ _ecore_wl2_input_add(Ecore_Wl2_Display *display, unsigned 
int id, unsigned int v
_ecore_wl2_input_cursor_setup(input);
 
input->wl.seat =
- wl_registry_bind(display->wl.registry, id, _seat_interface, 1);
+ wl_registry_bind(display->wl.registry, id, _seat_interface, 4);
 
display->inputs =
  eina_inlist_append(display->inputs, EINA_INLIST_GET(input));

-- 




[EGIT] [core/efl] master 02/02: elementary: Remove set but unused variable

2016-06-07 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit d0826aacb73805715ee5efa8d532c40b5d0bf525
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Tue Jun 7 13:37:53 2016 -0400

elementary: Remove set but unused variable

This variable looks like it may be used in the future, but for now
just causes additional compiler warnings so comment it out for now.

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/elementary/elm_code_widget_selection.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/lib/elementary/elm_code_widget_selection.c 
b/src/lib/elementary/elm_code_widget_selection.c
index 33da3aa..2bde739 100644
--- a/src/lib/elementary/elm_code_widget_selection.c
+++ b/src/lib/elementary/elm_code_widget_selection.c
@@ -340,11 +340,11 @@ elm_code_widget_selection_text_get(Evas_Object *widget)
 }
 
 static void
-_selection_loss_cb(void *data, Elm_Sel_Type selection EINA_UNUSED)
+_selection_loss_cb(void *data EINA_UNUSED, Elm_Sel_Type selection EINA_UNUSED)
 {
-   Elm_Code_Widget *widget;
+   /* Elm_Code_Widget *widget; */
 
-   widget = (Elm_Code_Widget *)data;
+   /* widget = (Elm_Code_Widget *)data; */
 // TODO we need to know whih selection we are clearing!
 //   elm_code_widget_selection_clear(widget);
 }

-- 




[EGIT] [core/efl] master 01/01: Revert "elput: Missing pointer initialization."

2016-06-07 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 09fc4e7b681260b0578145979b3b924fa6c59f05
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Tue Jun 7 12:09:20 2016 -0400

Revert "elput: Missing pointer initialization."

Reverting this as the initialization of char *s was already set to
NULL in a previous patch, so the 'if (s)' check here is pointless
really as 'man 3 free' says passing NULL to free() is ok.

This reverts commit ad2e21b02399c02a748bb8b8ab0dc10f85e6662d.
---
 src/lib/elput/elput_logind.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elput/elput_logind.c b/src/lib/elput/elput_logind.c
index 799a26a..22cb1b0 100644
--- a/src/lib/elput/elput_logind.c
+++ b/src/lib/elput/elput_logind.c
@@ -427,7 +427,7 @@ _logind_connect(Elput_Manager **manager, const char *seat, 
unsigned int tty)
if (ret < 0)
  {
 ERR("Failed to get session seat");
-if (s) free(s);
+free(s);
 goto seat_err;
  }
else if ((seat) && (s) && (strcmp(seat, s)))

-- 




[EGIT] [core/efl] master 01/02: elementary: Remove unused variable

2016-06-07 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 7d18eb8dac5ea98fe2530f0d8531e015982d3dc4
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Tue Jun 7 07:58:19 2016 -0400

elementary: Remove unused variable

Gcc says that 'model' is unused here, so comment it out

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/elementary/elc_fileselector.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elementary/elc_fileselector.c 
b/src/lib/elementary/elc_fileselector.c
index b7c9fcb..b15b99d 100644
--- a/src/lib/elementary/elc_fileselector.c
+++ b/src/lib/elementary/elc_fileselector.c
@@ -1424,7 +1424,7 @@ static void
 _on_text_activated_set_path_then_error(void *data, Eina_Error err EINA_UNUSED)
 {
Evas_Object *fs = data;
-   Efl_Model *model = eo_key_data_get(fs, _text_activated_model_key);
+   /* Efl_Model *model = eo_key_data_get(fs, _text_activated_model_key); */
Eina_Stringshare *str = eo_key_data_get(fs, _text_activated_path_key);
 
// EVENTS: should not call legacy

-- 




[EGIT] [core/efl] master 02/02: efl: Bump required wayland version

2016-06-07 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit d48c95f158780735573a4bf90ba7e783c5a5ae56
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Tue Jun 7 08:04:10 2016 -0400

efl: Bump required wayland version

This makes our wayland libraries require newest wayland release of 1.11

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 configure.ac| 10 +-
 m4/evas_check_engine.m4 |  2 +-
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/configure.ac b/configure.ac
index 9416b5f..b6616f3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1942,7 +1942,7 @@ AC_ARG_ENABLE([wayland],
[want_wayland="no"])
 
 if test "${want_wayland}" = "yes"; then
-   EFL_PKG_CHECK_STRICT([wayland-client >= 1.8.0])
+   EFL_PKG_CHECK_STRICT([wayland-client >= 1.11.0])
 fi
 
 # Wayland IVI-Shell
@@ -3451,7 +3451,7 @@ EFL_INTERNAL_DEPEND_PKG([ECORE_WL2], [efl])
 EFL_INTERNAL_DEPEND_PKG([ECORE_WL2], [eina])
 
 EFL_DEPEND_PKG([ECORE_WL2], [WAYLAND],
-   [wayland-server >= 1.10.0 wayland-client >= 1.10.0 wayland-cursor >= 1.10.0 
xkbcommon >= 0.5.0])
+   [wayland-server >= 1.11.0 wayland-client >= 1.11.0 wayland-cursor >= 1.11.0 
xkbcommon >= 0.6.0])
 
 EFL_EVAL_PKGS([ECORE_WL2])
 
@@ -4418,7 +4418,7 @@ EFL_ADD_FEATURE([ECORE_IMF], [xim])
 # wayland
 if test "x${want_ecore_imf_wayland}" = "xyes" ; then
PKG_CHECK_MODULES([WAYLAND],
-  [wayland-client >= 1.8.0],
+  [wayland-client >= 1.11.0],
   [
have_ecore_imf_wayland="yes"
AC_DEFINE([BUILD_ECORE_IMF_WAYLAND], [1], [Ecore Imf Wayland Support])
@@ -5265,7 +5265,7 @@ EFL_LIB_END_OPTIONAL([Efl_Js])
 
 ### Add Wayland server library if test is enabled
 if test "x${want_tests}" = "xyes" -a "x${want_wayland}" = "xyes"; then
-   EFL_DEPEND_PKG([ECORE_WAYLAND_SRV], [WAYLAND], [wayland-server >= 1.10.0])
+   EFL_DEPEND_PKG([ECORE_WAYLAND_SRV], [WAYLAND], [wayland-server >= 1.11.0])
EFL_EVAL_PKGS([ECORE_WAYLAND_SRV])
 fi
 
@@ -5304,7 +5304,7 @@ EFL_INTERNAL_DEPEND_PKG([ECORE_BUFFER], [eo])
 EFL_INTERNAL_DEPEND_PKG([ECORE_BUFFER], [efl])
 EFL_INTERNAL_DEPEND_PKG([ECORE_BUFFER], [ecore])
 EFL_DEPEND_PKG([ECORE_BUFFER], [WAYLAND],
-   [wayland-server >= 1.10.0 wayland-client >= 1.10.0])
+   [wayland-server >= 1.11.0 wayland-client >= 1.11.0])
 
 PKG_CHECK_MODULES([X11_DRI_COMMON],
[
diff --git a/m4/evas_check_engine.m4 b/m4/evas_check_engine.m4
index 4789d4b..b385076 100644
--- a/m4/evas_check_engine.m4
+++ b/m4/evas_check_engine.m4
@@ -1,4 +1,4 @@
-AC_DEFUN([REQUIRED_WAYLAND_VERSION], [1.10.0])
+AC_DEFUN([REQUIRED_WAYLAND_VERSION], [1.11.0])
 
 dnl use: EVAS_CHECK_ENGINE_DEP_SOFTWARE_XLIB(engine, simple, want_static[, 
ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
 

-- 




[EGIT] [core/efl] master 01/01: elput: Fix crash whem sd_session_get_seat fails

2016-06-06 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 180e64653d8a06609dc6ad22d58fa51455e40cf9
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Mon Jun 6 14:53:35 2016 -0400

elput: Fix crash whem sd_session_get_seat fails

If systemd fails to give us a valid session id, then any further calls
to get a seat from that session are going to fail. As such, check for
a valid seat return from systemd before calling any systemd functions
which require session id.

Fixes T3785

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/elput/elput_logind.c | 6 --
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/lib/elput/elput_logind.c b/src/lib/elput/elput_logind.c
index 57b00dc..22cb1b0 100644
--- a/src/lib/elput/elput_logind.c
+++ b/src/lib/elput/elput_logind.c
@@ -406,7 +406,7 @@ _logind_connect(Elput_Manager **manager, const char *seat, 
unsigned int tty)
 {
Elput_Manager *em;
int ret = 0;
-   char *s;
+   char *s = NULL;
 
em = calloc(1, sizeof(Elput_Manager));
if (!em) return EINA_FALSE;
@@ -421,6 +421,8 @@ _logind_connect(Elput_Manager **manager, const char *seat, 
unsigned int tty)
 goto session_err;
  }
 
+   if (!em->sid) goto session_err;
+
ret = sd_session_get_seat(em->sid, );
if (ret < 0)
  {
@@ -428,7 +430,7 @@ _logind_connect(Elput_Manager **manager, const char *seat, 
unsigned int tty)
 free(s);
 goto seat_err;
  }
-   else if ((seat) && (strcmp(seat, s)))
+   else if ((seat) && (s) && (strcmp(seat, s)))
  {
 ERR("Seat '%s' differs from session seat '%s'", seat, s);
 free(s);

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 01/20: stop filling logs with buffer transform/scale spam

2016-06-03 Thread Chris Michael
discomfitor pushed a commit to branch enlightenment-0.20.

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

commit 1d5a19a54c5c4413d7375366606a74db07ce21fe
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Sun May 15 10:47:53 2016 -0400

stop filling logs with buffer transform/scale spam

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 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 1abbc2b..392eb24 100644
--- a/src/bin/e_comp_wl.c
+++ b/src/bin/e_comp_wl.c
@@ -1393,13 +1393,13 @@ _e_comp_wl_surface_cb_commit(struct wl_client *client 
EINA_UNUSED, struct wl_res
 static void
 _e_comp_wl_surface_cb_buffer_transform_set(struct wl_client *client 
EINA_UNUSED, struct wl_resource *resource EINA_UNUSED, int32_t transform 
EINA_UNUSED)
 {
-   DBG("Surface Buffer Transform: %d", wl_resource_get_id(resource));
+   /* DBG("Surface Buffer Transform: %d", wl_resource_get_id(resource)); */
 }
 
 static void
 _e_comp_wl_surface_cb_buffer_scale_set(struct wl_client *client EINA_UNUSED, 
struct wl_resource *resource EINA_UNUSED, int32_t scale EINA_UNUSED)
 {
-   DBG("Surface Buffer Scale: %d", wl_resource_get_id(resource));
+   /* DBG("Surface Buffer Scale: %d", wl_resource_get_id(resource)); */
 }
 
 static const struct wl_surface_interface _e_surface_interface =

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 12/20: change 'if' clause to make gcc-6 happy

2016-06-03 Thread Chris Michael
discomfitor pushed a commit to branch enlightenment-0.20.

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

commit 1aee9676674d6d848d343b65ff1c8f4a4dbda5bb
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Tue May 24 15:48:18 2016 -0400

change 'if' clause to make gcc-6 happy

Gcc 6 was spitting a nasty little compiler warning here:

src/bin/e_fm.c: In function ‘e_fm2_icon_geometry_get’:
src/bin/e_fm.c:2354:4: warning: this ‘if’ clause does not guard...
[-Wmisleading-indentation]
if (x) *x = 0; if (y) *y = 0; if (w) *w = 0; if (h) *h = 0;
^~
src/bin/e_fm.c:2354:19: note: ...this statement, but the
latter is misleadingly indented as if it is guarded by the ‘if’
if (x) *x = 0; if (y) *y = 0; if (w) *w = 0; if (h) *h = 0;

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/bin/e_fm.c | 6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/bin/e_fm.c b/src/bin/e_fm.c
index c748c47..662eab4 100644
--- a/src/bin/e_fm.c
+++ b/src/bin/e_fm.c
@@ -2351,7 +2351,11 @@ e_fm2_icon_geometry_get(E_Fm2_Icon *ic, int *x, int *y, 
int *w, int *h)
 {
int xx, yy, ww, hh;
 
-   if (x) *x = 0; if (y) *y = 0; if (w) *w = 0; if (h) *h = 0;
+   if (x) *x = 0;
+   if (y) *y = 0;
+   if (w) *w = 0;
+   if (h) *h = 0;
+
if (ic)
  {
 evas_object_geometry_get(ic->obj, , , , );

-- 




[EGIT] [core/efl] master 01/01: Revert "Revert "elput: add missing dependency on libudev""

2016-06-02 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 5f10ad8155a75fbc5952f34593254c478ddb5f2d
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Thu Jun 2 12:00:32 2016 -0400

Revert "Revert "elput: add missing dependency on libudev""

Apparently, libudev is not thread-safe which means we cannot use Eeze
for getting the udev but rather need to actually use libudev, so those
revert needs to be reverted.

This reverts commit 354bc66d0d58a74b0464275e865a9cc6c920a538.
---
 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/configure.ac b/configure.ac
index 77950e7..e348bc8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3695,7 +3695,7 @@ EFL_INTERNAL_DEPEND_PKG([ELPUT], [eeze])
 EFL_INTERNAL_DEPEND_PKG([ELPUT], [eo])
 EFL_INTERNAL_DEPEND_PKG([ELPUT], [eina])
 
-EFL_DEPEND_PKG([ELPUT], [LIBINPUT], [libinput >= 0.6.0 xkbcommon >= 0.3.0])
+EFL_DEPEND_PKG([ELPUT], [LIBINPUT], [libinput >= 0.6.0 xkbcommon >= 0.3.0 
libudev])
 
 EFL_OPTIONAL_DEPEND_PKG([ELPUT], [${want_systemd}], [SYSTEMD], [libsystemd])
 EFL_ADD_FEATURE([ELPUT], [systemd-logind], [${want_systemd}])

-- 




[EGIT] [core/efl] master 01/02: elput: Use Eeze function to get the udev to create context with

2016-06-02 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 7b3d20371e8095207c4bafb3684b8a30d4ca6895
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Thu Jun 2 10:24:42 2016 -0400

elput: Use Eeze function to get the udev to create context with

As we already link to Eeze and use it throughout this code, there is
no point in adding an extra dependency on libudev itself when we can
just use Eeze functions to get what we need. This is a better fix for
T3712

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/elput/elput_input.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/lib/elput/elput_input.c b/src/lib/elput/elput_input.c
index 1918216..debaab0 100644
--- a/src/lib/elput/elput_input.c
+++ b/src/lib/elput/elput_input.c
@@ -312,9 +312,10 @@ static void
 _elput_input_init_thread(void *data, Ecore_Thread *eth EINA_UNUSED)
 {
Elput_Manager *manager = data;
-   struct udev *udev;
+   void *udev = NULL;
 
-   udev = udev_new();
+   udev = eeze_udev_get();
+   if (!udev) return;
 
manager->input.lib =
  libinput_udev_create_context(&_input_interface, manager, udev);
@@ -323,7 +324,6 @@ _elput_input_init_thread(void *data, Ecore_Thread *eth 
EINA_UNUSED)
 ERR("libinput could not create udev context");
 return;
  }
-   udev_unref(udev);
 
if (libinput_udev_assign_seat(manager->input.lib, manager->seat))
  {

-- 




[EGIT] [core/efl] master 02/02: Revert "elput: add missing dependency on libudev"

2016-06-02 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 354bc66d0d58a74b0464275e865a9cc6c920a538
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Thu Jun 2 10:26:38 2016 -0400

Revert "elput: add missing dependency on libudev"

A better fix to not use libudev functions has been pushed previously,
so there is no need to add an extra dependency on libudev as we use
Eeze already.

This reverts commit 9d429a7c1ff059e2e4da961af73a6aecec3b5b98.
---
 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/configure.ac b/configure.ac
index 38b7c3b..2e147ba 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3695,7 +3695,7 @@ EFL_INTERNAL_DEPEND_PKG([ELPUT], [eeze])
 EFL_INTERNAL_DEPEND_PKG([ELPUT], [eo])
 EFL_INTERNAL_DEPEND_PKG([ELPUT], [eina])
 
-EFL_DEPEND_PKG([ELPUT], [LIBINPUT], [libinput >= 0.6.0 xkbcommon >= 0.3.0 
libudev])
+EFL_DEPEND_PKG([ELPUT], [LIBINPUT], [libinput >= 0.6.0 xkbcommon >= 0.3.0])
 
 EFL_OPTIONAL_DEPEND_PKG([ELPUT], [${want_systemd}], [SYSTEMD], [libsystemd])
 EFL_ADD_FEATURE([ELPUT], [systemd-logind], [${want_systemd}])

-- 




[EGIT] [core/efl] master 01/02: ecore-evas-drm: Disable direct input callback

2016-05-31 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit e01ac62e5f36614e3a5195105f28bf5d9b05be08
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Tue May 31 09:49:43 2016 -0400

ecore-evas-drm: Disable direct input callback

For ecore_evas drm engine(s), disable setting of
ecore_event_window_direct_callback as this Completely Breaks all input
when running Enlightenment Wayland.

NB: This can likely be re-enabled at some point, when the jpeg
breakage is over ;)

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/modules/ecore_evas/engines/drm/ecore_evas_drm.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c 
b/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
index 68ebc5a..e396423 100644
--- a/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
+++ b/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
@@ -770,7 +770,7 @@ ecore_evas_drm_new_internal(const char *device, unsigned 
int parent EINA_UNUSED,

(Ecore_Event_Multi_Move_Cb)_ecore_evas_mouse_multi_move_process,

(Ecore_Event_Multi_Down_Cb)_ecore_evas_mouse_multi_down_process,

(Ecore_Event_Multi_Up_Cb)_ecore_evas_mouse_multi_up_process);
-   _ecore_event_window_direct_cb_set(ee->prop.window, 
_ecore_evas_input_direct_cb);
+   /* _ecore_event_window_direct_cb_set(ee->prop.window, 
_ecore_evas_input_direct_cb); */
 
ecore_drm2_output_crtc_size_get(edata->output, , );
 
@@ -906,7 +906,7 @@ ecore_evas_gl_drm_new_internal(const char *device, unsigned 
int parent EINA_UNUS

(Ecore_Event_Multi_Move_Cb)_ecore_evas_mouse_multi_move_process,

(Ecore_Event_Multi_Down_Cb)_ecore_evas_mouse_multi_down_process,

(Ecore_Event_Multi_Up_Cb)_ecore_evas_mouse_multi_up_process);
-   _ecore_event_window_direct_cb_set(ee->prop.window, 
_ecore_evas_input_direct_cb);
+   /* _ecore_event_window_direct_cb_set(ee->prop.window, 
_ecore_evas_input_direct_cb); */
 
ecore_drm2_output_crtc_size_get(edata->output, , );
 

-- 




[EGIT] [core/efl] master 02/02: ecore-drm: Deprecate Ecore_Drm library

2016-05-31 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit af22796356a62b56dca47712e29dd88d87bd722c
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Tue May 31 10:04:17 2016 -0400

ecore-drm: Deprecate Ecore_Drm library

Small patch to deprecate Ecore_Drm. This patch also adds a configure
option to enable ecore_drm for older code. This option is disabled by
default, so must be explicitly specified during build.

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 configure.ac  | 17 +++--
 src/lib/ecore_drm/Ecore_Drm.h |  2 ++
 2 files changed, 17 insertions(+), 2 deletions(-)

diff --git a/configure.ac b/configure.ac
index 07e7ec4..3eef79c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1651,6 +1651,17 @@ AC_ARG_ENABLE([ecore_wayland],
],
[want_ecore_wayland="no"])
 
+AC_ARG_ENABLE([ecore_drm],
+   [AS_HELP_STRING([--enable-ecore-drm],[enable legacy Ecore_Drm support. 
@<:@default=disabled@:>@])],
+   [
+if test "x${enableval}" = "xyes" ; then
+   want_ecore_drm="yes"
+else
+   want_ecore_drm="no"
+fi
+   ],
+   [want_ecore_drm="no"])
+
 ### Default values
 
 if test "${have_windows}" = "yes"; then
@@ -2098,7 +2109,7 @@ AC_ARG_ENABLE([drm],
   fi
   want_drm="yes"
 else
-   want_drm="no"
+  want_drm="no"
 fi
],
[want_drm="no"])
@@ -3511,7 +3522,7 @@ AM_CONDITIONAL([HAVE_EEZE_TIZEN], [test "x${want_tizen}" 
= "xyes"])
 
  Ecore_Drm
 have_libinput_new="no"
-EFL_LIB_START_OPTIONAL([Ecore_Drm], [test "${want_drm}" = "yes"])
+EFL_LIB_START_OPTIONAL([Ecore_Drm], [test "${want_ecore_drm}" = "yes"])
 
 ### Additional options to configure
 SUID_CFLAGS=-fPIE
@@ -5796,6 +5807,8 @@ echo "Ecore_File..: yes"
 echo "Ecore_IMF...: yes (${features_ecore_imf})"
 echo "Ecore_X.: ${with_x11} (${features_ecore_x})"
 echo "Ecore_SDL...: $want_sdl"
+echo "Ecore_Drm...: $want_ecore_drm"
+echo "Ecore_Drm2..: $want_drm"
 echo "Ecore_Wayland...: $want_ecore_wayland"
 echo "Ecore_Wl2...: $want_wayland"
 echo "IVI-Shell...: $want_wayland_ivi_shell"
diff --git a/src/lib/ecore_drm/Ecore_Drm.h b/src/lib/ecore_drm/Ecore_Drm.h
index a1a1317..62717e5 100644
--- a/src/lib/ecore_drm/Ecore_Drm.h
+++ b/src/lib/ecore_drm/Ecore_Drm.h
@@ -30,6 +30,8 @@
 #  endif // ifdef __GNUC__
 # endif // ifdef _MSC_VER
 
+# warning The Ecore_Drm library has been deprecated. Please use the Ecore_Drm2 
library
+
 # ifdef __cplusplus
 extern "C" {
 # endif

-- 




[EGIT] [core/efl] master 01/01: ecore-evas-drm: Register direct input callback for gl_drm also

2016-05-31 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 1ca1f8b06def49fed9a513fae24162ed2d715d82
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Tue May 31 09:23:20 2016 -0400

ecore-evas-drm: Register direct input callback for gl_drm also

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/modules/ecore_evas/engines/drm/ecore_evas_drm.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c 
b/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
index 6c60cd7..68ebc5a 100644
--- a/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
+++ b/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
@@ -906,6 +906,7 @@ ecore_evas_gl_drm_new_internal(const char *device, unsigned 
int parent EINA_UNUS

(Ecore_Event_Multi_Move_Cb)_ecore_evas_mouse_multi_move_process,

(Ecore_Event_Multi_Down_Cb)_ecore_evas_mouse_multi_down_process,

(Ecore_Event_Multi_Up_Cb)_ecore_evas_mouse_multi_up_process);
+   _ecore_event_window_direct_cb_set(ee->prop.window, 
_ecore_evas_input_direct_cb);
 
ecore_drm2_output_crtc_size_get(edata->output, , );
 

-- 




[EGIT] [core/efl] master 34/36: ecore-evas-drm: Fix issue of mouse pointer not centering on startup

2016-05-27 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 593961c2e21b1bb1023e04231619d21af30ab767
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Thu May 26 10:46:40 2016 -0400

ecore-evas-drm: Fix issue of mouse pointer not centering on startup

This patch fixes an issue where starting Enlightenment would not
center the mouse pointer. Basically the issue is that we cannot warp
the mouse pointer until After the ee->prop.window has been set else
E will not process the mouse_move event

@fix

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/modules/ecore_evas/engines/drm/ecore_evas_drm.c | 21 ++---
 1 file changed, 14 insertions(+), 7 deletions(-)

diff --git a/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c 
b/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
index f6f4e0c..e14254b 100644
--- a/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
+++ b/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
@@ -58,8 +58,6 @@ static int _drm_init_count = 0;
 static int
 _ecore_evas_drm_init(Ecore_Evas_Engine_Drm_Data *edata, const char *device)
 {
-   int mw, mh;
-
if (++_drm_init_count != 1) return _drm_init_count;
 
if (!ecore_drm2_init())
@@ -97,9 +95,6 @@ _ecore_evas_drm_init(Ecore_Evas_Engine_Drm_Data *edata, const 
char *device)
if (!edata->output)
  WRN("Could not find output at %d %d", edata->x, edata->y);
 
-   ecore_drm2_output_crtc_size_get(edata->output, , );
-   ecore_drm2_device_pointer_max_set(edata->dev, mw, mh);
-
ecore_event_evas_init();
 
return _drm_init_count;
@@ -678,7 +673,7 @@ ecore_evas_drm_new_internal(const char *device, unsigned 
int parent EINA_UNUSED,
Evas_Engine_Info_Drm *einfo;
Ecore_Evas_Interface_Drm *iface;
Ecore_Evas_Engine_Drm_Data *edata;
-   int method;
+   int method, mw, mh;
 
method = evas_render_method_lookup("drm");
if (!method) return NULL;
@@ -776,6 +771,12 @@ ecore_evas_drm_new_internal(const char *device, unsigned 
int parent EINA_UNUSED,

(Ecore_Event_Multi_Down_Cb)_ecore_evas_mouse_multi_down_process,

(Ecore_Event_Multi_Up_Cb)_ecore_evas_mouse_multi_up_process);
 
+   ecore_drm2_output_crtc_size_get(edata->output, , );
+
+   ecore_drm2_device_calibrate(edata->dev, mw, mh);
+   ecore_drm2_device_pointer_max_set(edata->dev, mw, mh);
+   ecore_drm2_device_pointer_warp(edata->dev, mw / 2, mh / 2);
+
return ee;
 
 eng_err:
@@ -791,7 +792,7 @@ ecore_evas_gl_drm_new_internal(const char *device, unsigned 
int parent EINA_UNUS
Evas_Engine_Info_GL_Drm *einfo;
Ecore_Evas_Interface_Drm *iface;
Ecore_Evas_Engine_Drm_Data *edata;
-   int method;
+   int method, mw, mh;
 
method = evas_render_method_lookup("gl_drm");
if (!method) return NULL;
@@ -905,6 +906,12 @@ ecore_evas_gl_drm_new_internal(const char *device, 
unsigned int parent EINA_UNUS

(Ecore_Event_Multi_Down_Cb)_ecore_evas_mouse_multi_down_process,

(Ecore_Event_Multi_Up_Cb)_ecore_evas_mouse_multi_up_process);
 
+   ecore_drm2_output_crtc_size_get(edata->output, , );
+
+   ecore_drm2_device_calibrate(edata->dev, mw, mh);
+   ecore_drm2_device_pointer_max_set(edata->dev, mw, mh);
+   ecore_drm2_device_pointer_warp(edata->dev, mw / 2, mh / 2);
+
return ee;
 
 eng_err:

-- 




[EGIT] [core/efl] master 35/36: ecore-drm2: Add API functions to support cacheing of context & keymap

2016-05-27 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 09805d2b15a71a361ec4bf3154f797fe3314775d
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Fri May 27 09:55:11 2016 -0400

ecore-drm2: Add API functions to support cacheing of context & keymap

@feature

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/ecore_drm2/Ecore_Drm2.h| 22 ++
 src/lib/ecore_drm2/ecore_drm2_device.c | 16 
 2 files changed, 38 insertions(+)

diff --git a/src/lib/ecore_drm2/Ecore_Drm2.h b/src/lib/ecore_drm2/Ecore_Drm2.h
index d8a1c3e..fa2e916 100644
--- a/src/lib/ecore_drm2/Ecore_Drm2.h
+++ b/src/lib/ecore_drm2/Ecore_Drm2.h
@@ -242,6 +242,28 @@ EAPI void ecore_drm2_device_window_set(Ecore_Drm2_Device 
*device, unsigned int w
 EAPI void ecore_drm2_device_pointer_max_set(Ecore_Drm2_Device *device, int w, 
int h);
 
 /**
+ * Set a cached context to be used on keyboards
+ *
+ * @param device
+ * @param context
+ *
+ * @ingroup Ecore_Drm2_Device_Group
+ * @since 1.18
+ */
+EAPI void ecore_drm2_device_keyboard_cached_context_set(Ecore_Drm2_Device 
*device, void *context);
+
+/**
+ * Set a cached keymap to be used on keyboards
+ *
+ * @param device
+ * @param keymap
+ *
+ * @ingroup Ecore_Drm2_Device_Group
+ * @since 1.18
+ */
+EAPI void ecore_drm2_device_keyboard_cached_keymap_set(Ecore_Drm2_Device 
*device, void *keymap);
+
+/**
  * Get the crtcs of a given device
  *
  * @param device
diff --git a/src/lib/ecore_drm2/ecore_drm2_device.c 
b/src/lib/ecore_drm2/ecore_drm2_device.c
index b4948d4..95b7315 100644
--- a/src/lib/ecore_drm2/ecore_drm2_device.c
+++ b/src/lib/ecore_drm2/ecore_drm2_device.c
@@ -265,6 +265,22 @@ ecore_drm2_device_pointer_max_set(Ecore_Drm2_Device 
*device, int w, int h)
elput_input_pointer_max_set(device->em, w, h);
 }
 
+EAPI void
+ecore_drm2_device_keyboard_cached_context_set(Ecore_Drm2_Device *device, void 
*context)
+{
+   EINA_SAFETY_ON_NULL_RETURN(device);
+
+   elput_input_keyboard_cached_context_set(device->em, context);
+}
+
+EAPI void
+ecore_drm2_device_keyboard_cached_keymap_set(Ecore_Drm2_Device *device, void 
*keymap)
+{
+   EINA_SAFETY_ON_NULL_RETURN(device);
+
+   elput_input_keyboard_cached_keymap_set(device->em, keymap);
+}
+
 EAPI unsigned int *
 ecore_drm2_device_crtcs_get(Ecore_Drm2_Device *device, int *num)
 {

-- 




[EGIT] [core/efl] master 04/36: ecore-drm2: Add API functions to work with framebuffer objects

2016-05-27 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit d2b4176592c6f0e6bd2a78c7a620f29142b65575
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Mon May 2 11:45:39 2016 -0400

ecore-drm2: Add API functions to work with framebuffer objects

This patch adds support for creating, deleting, and manipulating
framebuffer objects via exposed API.

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/Makefile_Ecore_Drm2.am  |   1 +
 src/lib/ecore_drm2/Ecore_Drm2.h | 122 ++-
 src/lib/ecore_drm2/ecore_drm2_fb.c  | 265 
 src/lib/ecore_drm2/ecore_drm2_outputs.c |  14 ++
 4 files changed, 401 insertions(+), 1 deletion(-)

diff --git a/src/Makefile_Ecore_Drm2.am b/src/Makefile_Ecore_Drm2.am
index ab401c6..1c328e3 100644
--- a/src/Makefile_Ecore_Drm2.am
+++ b/src/Makefile_Ecore_Drm2.am
@@ -9,6 +9,7 @@ dist_installed_ecoredrm2mainheaders_DATA = \
   lib/ecore_drm2/Ecore_Drm2.h
 
 lib_ecore_drm2_libecore_drm2_la_SOURCES = \
+lib/ecore_drm2/ecore_drm2_fb.c \
 lib/ecore_drm2/ecore_drm2_outputs.c \
 lib/ecore_drm2/ecore_drm2_device.c \
 lib/ecore_drm2/ecore_drm2.c \
diff --git a/src/lib/ecore_drm2/Ecore_Drm2.h b/src/lib/ecore_drm2/Ecore_Drm2.h
index 0bed771..f1ce291 100644
--- a/src/lib/ecore_drm2/Ecore_Drm2.h
+++ b/src/lib/ecore_drm2/Ecore_Drm2.h
@@ -2,7 +2,6 @@
 # define _ECORE_DRM2_H
 
 # include 
-# include 
 
 # ifdef EAPI
 #  undef EAPI
@@ -67,6 +66,7 @@ EAPI extern int ECORE_DRM2_EVENT_OUTPUT_CHANGED;
  * @li @ref Ecore_Drm2_Init_Group
  * @li @ref Ecore_Drm2_Device_Group
  * @li @ref Ecore_Drm2_Output_Group
+ * @li @ref Ecore_Drm2_Fb_Group
  */
 
 /**
@@ -302,6 +302,126 @@ EAPI void 
ecore_drm2_output_geometry_get(Ecore_Drm2_Output *output, int *x, int
  */
 EAPI unsigned int ecore_drm2_output_crtc_get(Ecore_Drm2_Output *output);
 
+/**
+ * Return the next Ecore_Drm2_Fb to be used on a given output
+ *
+ * @param output
+ *
+ * @return The next Ecore_Drm2_Fb which is scheduled to to be flipped, or NULL 
otherwise
+ *
+ * @ingroup Ecore_Drm2_Output_Group
+ * @since 1.18
+ */
+EAPI Ecore_Drm2_Fb *ecore_drm2_output_next_fb_get(Ecore_Drm2_Output *output);
+
+/**
+ * Set the next Ecore_Drm2_Fb to be used on a given output
+ *
+ * @param output
+ * @param fb
+ *
+ * @ingroup Ecore_Drm2_Output_Group
+ * @since 1.18
+ */
+EAPI void ecore_drm2_output_next_fb_set(Ecore_Drm2_Output *output, 
Ecore_Drm2_Fb *fb);
+
+/**
+ * @defgroup Ecore_Drm2_Fb_Group Drm framebuffer functions
+ *
+ * Functions that deal with setup of framebuffers
+ */
+
+/**
+ * Create a new framebuffer object
+ *
+ * @param fd
+ * @param width
+ * @param height
+ * @param depth
+ * @param bpp
+ * @param format
+ *
+ * @return A newly create framebuffer object, or NULL on failure
+ *
+ * @ingroup Ecore_Drm2_Fb_Group
+ * @since 1.18
+ */
+EAPI Ecore_Drm2_Fb *ecore_drm2_fb_create(int fd, int width, int height, int 
depth, int bpp, unsigned int format);
+
+EAPI Ecore_Drm2_Fb *ecore_drm2_fb_gbm_create(int fd, int width, int height, 
int depth, int bpp, unsigned int format, unsigned int handle, unsigned int 
stride);
+
+/**
+ * Destroy a framebuffer object
+ *
+ * @param fb
+ *
+ * @ingroup Ecore_Drm2_Fb_Group
+ * @since 1.18
+ */
+EAPI void ecore_drm2_fb_destroy(Ecore_Drm2_Fb *fb);
+
+/**
+ * Get a framebuffer's mmap'd data
+ *
+ * @param fb
+ *
+ * @return The mmap'd area of the framebuffer or NULL on failure
+ *
+ * @ingroup Ecore_Drm2_Fb_Group
+ * @since 1.18
+ */
+EAPI void *ecore_drm2_fb_data_get(Ecore_Drm2_Fb *fb);
+
+/**
+ * Get a framebuffer's size
+ *
+ * @param fb
+ *
+ * @return size of the framebuffers' mmap'd data or 0 on failure
+ *
+ * @ingroup Ecore_Drm2_Fb_Group
+ * @since 1.18
+ */
+EAPI unsigned int ecore_drm2_fb_size_get(Ecore_Drm2_Fb *fb);
+
+/**
+ * Get a framebuffer's stride
+ *
+ * @param fb
+ *
+ * @return stride of the framebuffer or 0 on failure
+ *
+ * @ingroup Ecore_Drm2_Fb_Group
+ * @since 1.18
+ */
+EAPI unsigned int ecore_drm2_fb_stride_get(Ecore_Drm2_Fb *fb);
+
+/**
+ * Mark regions of a framebuffer as dirty
+ *
+ * @param fb
+ * @param rects
+ * @param count
+ *
+ * @ingroup Ecore_Drm2_Fb_Group
+ * @since 1.18
+ */
+EAPI void ecore_drm2_fb_dirty(Ecore_Drm2_Fb *fb, Eina_Rectangle *rects, 
unsigned int count);
+
+/**
+ * Schedule a pageflip to the given Ecore_Drm2_Fb
+ *
+ * @param fb
+ * @param output
+ * @param data
+ *
+ * @return The result of drmModePageFlip function call
+ *
+ * @ingroup Ecore_Drm2_Fb_Group
+ * @since 1.18
+ */
+EAPI int ecore_drm2_fb_flip(Ecore_Drm2_Fb *fb, Ecore_Drm2_Output *output, void 
*data);
+
 # endif
 
 #endif
diff --git a/src/lib/ecore_drm2/ecore_drm2_fb.c 
b/src/lib/ecore_drm2/ecore_drm2_fb.c
new file mode 100644
index 000..9032c12
--- /dev/null
+++ b/src/lib/ecore_drm2/ecore_drm2_fb.c
@@ -0,0 +1,265 @@
+#include "ecore_drm2_private.h"
+
+static Eina_Bool
+_fb2_cr

[EGIT] [core/efl] master 05/36: ecore-drm2: Add API functions to get and set pointer position

2016-05-27 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 296d233f64327d87d318093b2504b58834c5bc85
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Wed May 4 11:03:15 2016 -0400

ecore-drm2: Add API functions to get and set pointer position

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/ecore_drm2/Ecore_Drm2.h| 24 
 src/lib/ecore_drm2/ecore_drm2_device.c | 19 +++
 2 files changed, 43 insertions(+)

diff --git a/src/lib/ecore_drm2/Ecore_Drm2.h b/src/lib/ecore_drm2/Ecore_Drm2.h
index f1ce291..f4bbad2 100644
--- a/src/lib/ecore_drm2/Ecore_Drm2.h
+++ b/src/lib/ecore_drm2/Ecore_Drm2.h
@@ -175,6 +175,30 @@ EAPI int ecore_drm2_device_clock_id_get(Ecore_Drm2_Device 
*device);
 EAPI void ecore_drm2_device_cursor_size_get(Ecore_Drm2_Device *device, int 
*width, int *height);
 
 /**
+ * Get the current pointer position
+ *
+ * @param device
+ * @param x
+ * @param y
+ *
+ * @ingroup Ecore_Drm2_Device_Group
+ * @since 1.18
+ */
+EAPI void ecore_drm2_device_pointer_xy_get(Ecore_Drm2_Device *device, int *x, 
int *y);
+
+/**
+ * Warp the pointer position to given coordinates
+ *
+ * @param dev
+ * @param x
+ * @param y
+ *
+ * @ingroup Ecore_Drm2_Device_Group
+ * @since 1.18
+ */
+EAPI void ecore_drm2_device_pointer_warp(Ecore_Drm2_Device *device, int x, int 
y);
+
+/**
  * @defgroup Ecore_Drm2_Output_Group Drm output functions
  *
  * Functions that deal with setup of outputs
diff --git a/src/lib/ecore_drm2/ecore_drm2_device.c 
b/src/lib/ecore_drm2/ecore_drm2_device.c
index b47028b..f352b30 100644
--- a/src/lib/ecore_drm2/ecore_drm2_device.c
+++ b/src/lib/ecore_drm2/ecore_drm2_device.c
@@ -182,3 +182,22 @@ ecore_drm2_device_cursor_size_get(Ecore_Drm2_Device 
*device, int *width, int *he
 if (ret == 0) *height = caps;
  }
 }
+
+EAPI void
+ecore_drm2_device_pointer_xy_get(Ecore_Drm2_Device *device, int *x, int *y)
+{
+   if (x) *x = 0;
+   if (y) *y = 0;
+
+   EINA_SAFETY_ON_NULL_RETURN(device);
+
+   elput_input_pointer_xy_get(device->em, NULL, x, y);
+}
+
+EAPI void
+ecore_drm2_device_pointer_warp(Ecore_Drm2_Device *device, int x, int y)
+{
+   EINA_SAFETY_ON_NULL_RETURN(device);
+
+   elput_input_pointer_xy_set(device->em, NULL, x, y);
+}

-- 




[EGIT] [core/efl] master 25/36: ecore-drm2: Fix potential invalid access to output current_mode

2016-05-27 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 6697584fb9d553c2cd317ab3adffba04b5f710a3
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Wed May 11 09:43:53 2016 -0400

ecore-drm2: Fix potential invalid access to output current_mode

Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/lib/ecore_drm2/ecore_drm2_outputs.c | 16 +---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/src/lib/ecore_drm2/ecore_drm2_outputs.c 
b/src/lib/ecore_drm2/ecore_drm2_outputs.c
index 81e0018..7596164 100644
--- a/src/lib/ecore_drm2/ecore_drm2_outputs.c
+++ b/src/lib/ecore_drm2/ecore_drm2_outputs.c
@@ -90,11 +90,21 @@ _output_event_send(Ecore_Drm2_Output *output)
 
ev->x = output->x;
ev->y = output->y;
-   ev->w = output->current_mode->width;
-   ev->h = output->current_mode->height;
+   if (output->current_mode)
+ {
+ev->w = output->current_mode->width;
+ev->h = output->current_mode->height;
+ev->refresh = output->current_mode->refresh;
+ }
+   else
+ {
+ev->w = output->ocrtc->width;
+ev->h = output->ocrtc->height;
+ev->refresh = 0;
+ }
+
ev->phys_width = output->pw;
ev->phys_height = output->ph;
-   ev->refresh = output->current_mode->refresh;
 
ev->scale = output->scale;
ev->subpixel = output->subpixel;

-- 




  1   2   3   4   5   >