[EGIT] [core/efl] master 01/01: eina thread_queue: fix typo in doc.
hermet pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=023a91dc7de37fbc378be798e28019d3515319de commit 023a91dc7de37fbc378be798e28019d3515319de Author: ChunEon Park Date: Thu Apr 23 11:35:35 2015 +0900 eina thread_queue: fix typo in doc. --- src/lib/eina/eina_thread_queue.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/eina/eina_thread_queue.h b/src/lib/eina/eina_thread_queue.h index dc01917..a33e7b4 100644 --- a/src/lib/eina/eina_thread_queue.h +++ b/src/lib/eina/eina_thread_queue.h @@ -164,7 +164,7 @@ eina_thread_queue_wait_done(Eina_Thread_Queue *thq, void *allocref) EINA_ARG_NON * @return A pointer to the message data * * This is the same as eina_thread_queue_wait(), but if no messages are - * available for reading, it immediately returns NULL tot he caller, without + * available for reading, it immediately returns NULL to the caller, without * waiting for a new message to arrive. * * @see eina_thread_queue_wait() --
[EGIT] [core/elementary] master 01/01: elm_multibuttonentry: change theme_set API to provide full widget theming
hermet pushed a commit to branch master. http://git.enlightenment.org/core/elementary.git/commit/?id=35dfc13e38c02fd30e55898eb871f6986804c498 commit 35dfc13e38c02fd30e55898eb871f6986804c498 Author: Vitalii Vorobiov Date: Thu Apr 23 11:05:31 2015 +0900 elm_multibuttonentry: change theme_set API to provide full widget theming Summary: While setting theme currently changes style and theme to all button and whole multibuttonentry object, it doesn't change few other parts of this object. Part are, for examples, "guidetext", "label" and "closedbutton". Fixing this sad mistake leads to be able to create different styles for such wonderful widget. @fix Reviewers: cedric, seoz, raster, reutskiy.v.v, Hermet Reviewed By: Hermet Subscribers: NikaWhite Differential Revision: https://phab.enlightenment.org/D2407 --- src/lib/elc_multibuttonentry.c | 10 ++ 1 file changed, 10 insertions(+) diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c index 797008a..1300c8b 100644 --- a/src/lib/elc_multibuttonentry.c +++ b/src/lib/elc_multibuttonentry.c @@ -86,6 +86,16 @@ _elm_multibuttonentry_elm_widget_theme_apply(Eo *obj, Elm_Multibuttonentry_Data elm_object_scale_set(VIEW(item), elm_widget_scale_get(obj) * elm_config_scale_get()); } + elm_widget_theme_object_set + (obj, sd->label, "multibuttonentry", "label", + elm_widget_style_get(obj)); + elm_widget_theme_object_set + (obj, sd->end, "multibuttonentry", "closedbutton", + elm_widget_style_get(obj)); + elm_widget_theme_object_set + (obj,sd->guide_text, "multibuttonentry", "guidetext", + elm_widget_style_get(obj)); + elm_layout_sizing_eval(obj); return EINA_TRUE; --
[EGIT] [bindings/python/python-efl] master 01/02: Documentation: Sphinx 1.3 compatibility fixes
kuuko pushed a commit to branch master. http://git.enlightenment.org/bindings/python/python-efl.git/commit/?id=c3b9a5b18f4db8373b925ee3f07c0c9bc0e80ed4 commit c3b9a5b18f4db8373b925ee3f07c0c9bc0e80ed4 Author: Kai Huuhko Date: Wed Apr 22 13:06:07 2015 +0300 Documentation: Sphinx 1.3 compatibility fixes --- doc/themes/efldoc/static/efl.css | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/doc/themes/efldoc/static/efl.css b/doc/themes/efldoc/static/efl.css index 369fb22..229104b 100644 --- a/doc/themes/efldoc/static/efl.css +++ b/doc/themes/efldoc/static/efl.css @@ -322,7 +322,7 @@ cite, code, tt { letter-spacing: -0.02em; } -tt { +code, tt { background-color: rgb(51,51,51); /*#f2f2f2*/ border: 1px solid rgb(32,32,32); /*#ddd*/ border-radius: 2px; @@ -351,12 +351,12 @@ hr { margin: 2em; } -a tt { +a tt, a code{ border: 0; color: rgb(200,200,170); } -a tt:hover { +a tt:hover, a code:hover{ color: rgb(230,230,200); } --
[EGIT] [bindings/python/python-efl] master 02/02: Documentation: Prettify warning/note boxes, class headers
kuuko pushed a commit to branch master. http://git.enlightenment.org/bindings/python/python-efl.git/commit/?id=8f68e52eccb2706e0e8ab39199cd72a4f8f22b0e commit 8f68e52eccb2706e0e8ab39199cd72a4f8f22b0e Author: Kai Huuhko Date: Wed Apr 22 14:16:50 2015 +0300 Documentation: Prettify warning/note boxes, class headers Sphinx 1.3 includes class constructor's signature in the class header; reduced font size slightly to accommodate this change. --- doc/themes/efldoc/static/efl.css | 14 +- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/doc/themes/efldoc/static/efl.css b/doc/themes/efldoc/static/efl.css index 229104b..68d6dd3 100644 --- a/doc/themes/efldoc/static/efl.css +++ b/doc/themes/efldoc/static/efl.css @@ -325,7 +325,7 @@ cite, code, tt { code, tt { background-color: rgb(51,51,51); /*#f2f2f2*/ border: 1px solid rgb(32,32,32); /*#ddd*/ -border-radius: 2px; +border-radius: 3px; color: white; /*#333*/ padding: 1px; } @@ -406,8 +406,8 @@ table td, table th { div.admonition, div.warning { font-size: 0.9em; margin: 1em 0 1em 0; -border: 1px solid rgb(32,32,32); /*#86989B*/ -border-radius: 2px; +border: 1px dashed rgb(32,32,32); /*#86989B*/ +border-radius: 12px; background-color: rgb(51,51,51); /*#f7f7f7*/ padding: 0; } @@ -429,7 +429,7 @@ div.warning p.admonition-title { } div.warning { -border: 1px solid rgb(101,16,16); /*#94*/ +border-color: rgb(101,16,16); /*#94*/ background-color: rgb(101,51,51); /*#FFCCCF*/ } @@ -506,11 +506,15 @@ dl.class { } dl.class > dt { -font-size: 20px; +font-size: 1.2em; background-color: #333; padding: 2px; } +dl.class > dt em { +font-size: 0.8em; +} + dl.class dt{ border-bottom: 1px solid #333; } --
[EGIT] [core/enlightenment] master 26/28: use const lists for drm devices in signal handlers
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=a86fe60d3a6b2c8daf6992e3fd5da7252ebba962 commit a86fe60d3a6b2c8daf6992e3fd5da7252ebba962 Author: Mike Blumenkrantz Date: Wed Apr 22 19:36:21 2015 -0400 use const lists for drm devices in signal handlers --- src/bin/e_signals.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/bin/e_signals.c b/src/bin/e_signals.c index b37e043..a508b33 100644 --- a/src/bin/e_signals.c +++ b/src/bin/e_signals.c @@ -70,7 +70,7 @@ EAPI void e_sigseg_act(int x EINA_UNUSED, siginfo_t *info EINA_UNUSED, void *data EINA_UNUSED) { #ifdef HAVE_WAYLAND_ONLY - Eina_List *list, *l, *ll; + const Eina_List *list, *l, *ll; Ecore_Drm_Device *dev; list = ecore_drm_devices_get(); @@ -116,7 +116,7 @@ EAPI void e_sigfpe_act(int x EINA_UNUSED, siginfo_t *info EINA_UNUSED, void *data EINA_UNUSED) { #ifdef HAVE_WAYLAND_ONLY - Eina_List *list, *l, *ll; + const Eina_List *list, *l, *ll; Ecore_Drm_Device *dev; list = ecore_drm_devices_get(); @@ -144,7 +144,7 @@ EAPI void e_sigbus_act(int x EINA_UNUSED, siginfo_t *info EINA_UNUSED, void *data EINA_UNUSED) { #ifdef HAVE_WAYLAND_ONLY - Eina_List *list, *l, *ll; + const Eina_List *list, *l, *ll; Ecore_Drm_Device *dev; list = ecore_drm_devices_get(); @@ -172,7 +172,7 @@ EAPI void e_sigabrt_act(int x EINA_UNUSED, siginfo_t *info EINA_UNUSED, void *data EINA_UNUSED) { #ifdef HAVE_WAYLAND_ONLY - Eina_List *list, *l, *ll; + const Eina_List *list, *l, *ll; Ecore_Drm_Device *dev; list = ecore_drm_devices_get(); --
[EGIT] [core/enlightenment] master 28/28: add read-only randr iface for wl drm output module
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=2894bae445b1cec112902492931e00ae18f85bc1 commit 2894bae445b1cec112902492931e00ae18f85bc1 Author: Mike Blumenkrantz Date: Wed Apr 22 21:15:12 2015 -0400 add read-only randr iface for wl drm output module mostly just reads stuff right out of libdrm for now. seems to display mostly as expected. no applying yet, and only connected+active monitors will display since that's all ecore-drm tracks for now try using ecore-drm, they said. it'll be easier than using libdrm, they said. --- src/modules/wl_drm/e_mod_main.c | 230 +--- 1 file changed, 218 insertions(+), 12 deletions(-) diff --git a/src/modules/wl_drm/e_mod_main.c b/src/modules/wl_drm/e_mod_main.c index 8096331..67bbe99 100644 --- a/src/modules/wl_drm/e_mod_main.c +++ b/src/modules/wl_drm/e_mod_main.c @@ -8,6 +8,56 @@ static Ecore_Event_Handler *activate_handler; static Ecore_Event_Handler *output_handler; static Eina_Bool session_state = EINA_FALSE; +#if EFL_VERSION_MINOR == 14 +/* keeping this here temporarily to make the check for backlight device + * 1 line instead of 50-100 + */ +struct _Ecore_Drm_Output +{ + Ecore_Drm_Device *dev; + unsigned int crtc_id; + unsigned int conn_id; + drmModeCrtcPtr crtc; + drmModePropertyPtr dpms; + + int x, y, phys_width, phys_height; + + int pipe; + const char *make, *model, *name; + unsigned int subpixel; + uint16_t gamma; + + Ecore_Drm_Output_Mode *current_mode; + Eina_List *modes; + + struct + { +char eisa[13]; +char monitor[13]; +char pnp[5]; +char serial[13]; + } edid; + + void *backlight; + + Eina_Bool enabled : 1; + Eina_Bool cloned : 1; + Eina_Bool need_repaint : 1; + Eina_Bool repaint_scheduled : 1; + Eina_Bool pending_destroy : 1; + Eina_Bool pending_flip : 1; + Eina_Bool pending_vblank : 1; +}; + +struct _Ecore_Drm_Output_Mode +{ + unsigned int flags; + int width, height; + unsigned int refresh; + drmModeModeInfo info; +}; +#endif + static Eina_Bool _e_mod_drm_cb_activate(void *data EINA_UNUSED, int type EINA_UNUSED, void *event) { @@ -76,6 +126,8 @@ _e_mod_drm_cb_output(void *data EINA_UNUSED, int type EINA_UNUSED, void *event) } end: + if (!e_randr2_cfg->ignore_hotplug_events) + e_randr2_screen_refresh_queue(EINA_TRUE); return ECORE_CALLBACK_PASS_ON; } @@ -85,6 +137,171 @@ _e_mod_drm_cb_ee_resize(Ecore_Evas *ee EINA_UNUSED) e_comp_canvas_update(); } +static E_Randr2_Mode * +_mode_get(drmModeModeInfo *info) +{ + E_Randr2_Mode *mode; + uint64_t refresh; + + mode = malloc(sizeof(E_Randr2_Mode)); + + mode->w = info->hdisplay; + mode->h = info->vdisplay; + + refresh = (info->clock * 100LL / info->htotal + info->vtotal / 2) / info->vtotal; + if (info->flags & DRM_MODE_FLAG_INTERLACE) + refresh *= 2; + if (info->flags & DRM_MODE_FLAG_DBLSCAN) + refresh /= 2; + if (info->vscan > 1) + refresh /= info->vscan; + + mode->refresh = refresh; + mode->preferred = (info->type & DRM_MODE_TYPE_PREFERRED); + + return mode; +} + +static char * +_get_edid(Ecore_Drm_Device *dev, drmModeConnector *conn) +{ + int i; + drmModePropertyBlobPtr blob = NULL; + drmModePropertyPtr prop; + char *ret; + + for (i = 0; i < conn->count_props; i++) + { +if (!(prop = drmModeGetProperty(dev->drm.fd, conn->props[i]))) + continue; +if ((prop->flags & DRM_MODE_PROP_BLOB) && +(!strcmp(prop->name, "EDID"))) + { + blob = drmModeGetPropertyBlob(dev->drm.fd, + conn->prop_values[i]); + drmModeFreeProperty(prop); + break; + } +drmModeFreeProperty(prop); + } + ret = (char*)eina_memdup(blob->data, blob->length, 1); + drmModeFreePropertyBlob(blob); + return ret; +} + +static E_Randr2 * +_drm_randr_create(void) +{ + Ecore_Drm_Device *dev; + const Eina_List *l; + E_Randr2 *r; + + r = E_NEW(E_Randr2, 1); + EINA_LIST_FOREACH(ecore_drm_devices_get(), l, dev) + { +Ecore_Drm_Output *output; +const Eina_List *ll; + +EINA_LIST_FOREACH(dev->outputs, ll, output) + { + E_Randr2_Screen *s; + size_t n, e; + int i; + drmModeConnector *conn; + const char *conn_types[] = + { +"None", "VGA", "DVI-I", "DVI-D", "DVI-A", +"Composite", "S-Video", "LVDS", "Component", "DIN", +"DisplayPort", "HDMI-A", "HDMI-B", "TV", "eDP", "Virtual", +"DSI", "UNKNOWN" + }; + E_Randr2_Connector rtype[] = + { +E_RANDR2_CONNECTOR_UNDEFINED, +E_RANDR2_CONNECTOR_UNDEFINED, +E_RANDR2_CONNECTOR_DVI, +E_RANDR2_CONNECT
[EGIT] [core/enlightenment] master 27/28: add wl drm module phony make targets
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=e1697892bc0d113d0305ce425020bf03e9559d66 commit e1697892bc0d113d0305ce425020bf03e9559d66 Author: Mike Blumenkrantz Date: Wed Apr 22 21:04:38 2015 -0400 add wl drm module phony make targets --- src/modules/Makefile_wl_drm.mk | 7 +++ 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/modules/Makefile_wl_drm.mk b/src/modules/Makefile_wl_drm.mk index 301e44e..e3c7b36 100644 --- a/src/modules/Makefile_wl_drm.mk +++ b/src/modules/Makefile_wl_drm.mk @@ -10,8 +10,7 @@ src_modules_wl_drm_module_la_LIBADD = $(LIBS) @WL_DRM_LIBS@ @WAYLAND_LIBS@ src_modules_wl_drm_module_la_LDFLAGS = $(MOD_LDFLAGS) src_modules_wl_drm_module_la_SOURCES = src/modules/wl_drm/e_mod_main.c -# TODO: incomplete -#.PHONY: wl_drm install-wl_drm -#wl_drm: $(wl_drmpkg_LTLIBRARIES) $(wl_drm_DATA) -#install-wl_drm: install-wl_drmDATA install-wl_drmpkgLTLIBRARIES +PHONIES += wl_drm install-wl_drm +wl_drm: $(wl_drmpkg_LTLIBRARIES) $(wl_drm_DATA) +install-wl_drm: install-wl_drmDATA install-wl_drmpkgLTLIBRARIES endif --
[EGIT] [core/enlightenment] master 20/28: remove dead conf_randr files
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=e7219bab37be54702af75f63103b44415fb028c1 commit e7219bab37be54702af75f63103b44415fb028c1 Author: Mike Blumenkrantz Date: Wed Apr 22 18:28:23 2015 -0400 remove dead conf_randr files --- src/modules/conf_randr/e_int_config_randr.c | 186 --- src/modules/conf_randr/e_int_config_randr.h |9 - src/modules/conf_randr/e_smart_monitor.c| 1947 --- src/modules/conf_randr/e_smart_monitor.h| 32 - src/modules/conf_randr/e_smart_randr.c | 705 -- src/modules/conf_randr/e_smart_randr.h | 15 - 6 files changed, 2894 deletions(-) diff --git a/src/modules/conf_randr/e_int_config_randr.c b/src/modules/conf_randr/e_int_config_randr.c deleted file mode 100644 index c1df1bc..000 --- a/src/modules/conf_randr/e_int_config_randr.c +++ /dev/null @@ -1,186 +0,0 @@ -#include "e.h" -#include "e_mod_main.h" -#include "e_int_config_randr.h" -#include "e_smart_randr.h" -#include "e_smart_monitor.h" - -/* local structures */ -struct _E_Config_Dialog_Data -{ - Evas_Object *o_randr; - - int restore, primary; - Eina_Bool changed; -}; - -/* local function prototypes */ -static void *_create_data(E_Config_Dialog *cfd EINA_UNUSED); -static void _free_data(E_Config_Dialog *cfd EINA_UNUSED, E_Config_Dialog_Data *cfdata); -static Evas_Object *_basic_create(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata); -static int _basic_apply(E_Config_Dialog *cfd EINA_UNUSED, E_Config_Dialog_Data *cfdata); -static int _basic_check(E_Config_Dialog *cfd EINA_UNUSED, E_Config_Dialog_Data *cfdata); - -static void _randr_cb_changed(void *data, Evas_Object *obj, void *event EINA_UNUSED); - -/* public functions */ -E_Config_Dialog * -e_int_config_randr(Evas_Object *parent EINA_UNUSED, const char *params EINA_UNUSED) -{ - E_Config_Dialog *cfd; - E_Config_Dialog_View *v; - - /* check for existing dialog */ - if (e_config_dialog_find("E", "screen/screen_setup")) - return NULL; - - /* try to allocate dialog view */ - if (!(v = E_NEW(E_Config_Dialog_View, 1))) - return NULL; - - /* set dialog view functions & properties */ - v->create_cfdata = _create_data; - v->free_cfdata = _free_data; - v->basic.create_widgets = _basic_create; - v->basic.apply_cfdata = _basic_apply; - v->basic.check_changed = _basic_check; - v->override_auto_apply = EINA_TRUE; - - /* create new dialog */ - cfd = e_config_dialog_new(NULL, _("Screen Setup"), - "E", "screen/screen_setup", - "preferences-system-screen-resolution", - 0, v, NULL); - - return cfd; -} - -/* local functions */ -static void * -_create_data(E_Config_Dialog *cfd EINA_UNUSED) -{ - E_Config_Dialog_Data *cfdata; - - /* try to allocate the config data structure */ - if (!(cfdata = E_NEW(E_Config_Dialog_Data, 1))) - return NULL; - - cfdata->restore = e_randr_cfg->restore; - cfdata->primary = e_randr_cfg->primary; - - return cfdata; -} - -static void -_free_data(E_Config_Dialog *cfd EINA_UNUSED, E_Config_Dialog_Data *cfdata) -{ - /* if we have the randr smart widget, delete it */ - if (cfdata->o_randr) - { -/* delete the randr object */ -evas_object_del(cfdata->o_randr); - } - - /* free the config data structure */ - E_FREE(cfdata); -} - -static Evas_Object * -_basic_create(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata) -{ - Evas_Object *o; - Evas_Object *ow; - Evas_Coord mw = 0, mh = 0, ch = 0, fh = 0; - Eina_List *l, *monitors = NULL; - - /* create the base list widget */ - o = e_widget_list_add(evas, 0, 0); - - /* try to create randr smart widget */ - if ((cfdata->o_randr = e_smart_randr_add(evas))) - { -/* hook into randr widget changed callback */ -evas_object_smart_callback_add(cfdata->o_randr, "randr_changed", - _randr_cb_changed, cfd); - -/* tell randr widget to calculate virtual size */ -e_smart_randr_virtual_size_calc(cfdata->o_randr); - -/* tell randr widget to create monitors */ -e_smart_randr_monitors_create(cfdata->o_randr); - -/* append randr widget to list object */ -e_widget_list_object_append(o, cfdata->o_randr, 1, 1, 0.5); - -/* ask randr widget to calculate min size */ -e_smart_randr_min_size_get(cfdata->o_randr, &mw, &mh); - } - - monitors = e_smart_randr_monitors_get(cfdata->o_randr); - if (eina_list_count(monitors) > 1) - { -E_Radio_Group *rg; -Evas_Object *mon, *of; - -of = e_widget_framelist_add(evas, _("Primary Output"), 0); -rg = e_widget_radio_group_new(&(cfdata->primary)); -EINA_LIST_FOREACH(monitors, l, mon) - { - int output; - const char *name; - - name = e_smart_monitor_name
[EGIT] [core/enlightenment] master 13/28: break out comp_x gl/sw canvas creation into external function
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=8c6ec83e43ace7d5e94be384a939dd88ed26f861 commit 8c6ec83e43ace7d5e94be384a939dd88ed26f861 Author: Mike Blumenkrantz Date: Wed Apr 22 18:09:35 2015 -0400 break out comp_x gl/sw canvas creation into external function --- src/bin/e_comp_x.c | 85 ++-- src/bin/e_comp_x_randr.c | 91 src/bin/e_comp_x_randr.h | 2 ++ 3 files changed, 95 insertions(+), 83 deletions(-) diff --git a/src/bin/e_comp_x.c b/src/bin/e_comp_x.c index 2e5a5ca..4990d63 100644 --- a/src/bin/e_comp_x.c +++ b/src/bin/e_comp_x.c @@ -4532,15 +4532,6 @@ _e_comp_x_cb_frame_extents_request(void *data EINA_UNUSED, int ev_type EINA_UNUS return ECORE_CALLBACK_RENEW; } -static void -_e_comp_x_pre_swap(void *data EINA_UNUSED, Evas *e EINA_UNUSED) -{ - if (!e_comp_config_get()->grab) return; - if (!e_comp->grabbed) return; - ecore_x_ungrab(); - e_comp->grabbed = 0; -} - static int _e_comp_x_cinerama_screen_sort_cb(const void *data1, const void *data2) { @@ -4907,18 +4898,6 @@ _e_comp_x_bindings_ungrab_cb(void) } } -static void -_e_comp_x_grab_cb(void) -{ - if (!e_comp->grabbed) - { -ecore_x_grab(); -ecore_x_sync(); - } - else - ecore_x_ungrab(); -} - static Eina_Bool _e_comp_x_desklock_key_down(void *d EINA_UNUSED, int t EINA_UNUSED, Ecore_Event_Key *ev) { @@ -5047,62 +5026,8 @@ _e_comp_x_setup(Ecore_X_Window root, int w, int h) e_alert_composite_win(root, e_comp->win); - if (e_comp_gl_get() && (e_comp_config_get()->engine == E_COMP_ENGINE_GL)) - { -int opt[20]; -int opt_i = 0; - -if (e_comp_config_get()->indirect) - { - opt[opt_i] = ECORE_EVAS_GL_X11_OPT_INDIRECT; - opt_i++; - opt[opt_i] = 1; - opt_i++; - } -if (e_comp_config_get()->vsync) - { - opt[opt_i] = ECORE_EVAS_GL_X11_OPT_VSYNC; - opt_i++; - opt[opt_i] = 1; - opt_i++; - } -#ifdef ECORE_EVAS_GL_X11_OPT_SWAP_MODE -if (e_comp_config_get()->swap_mode) - { - opt[opt_i] = ECORE_EVAS_GL_X11_OPT_SWAP_MODE; - opt_i++; - opt[opt_i] = e_comp_config_get()->swap_mode; - opt_i++; - } -#endif -if (opt_i > 0) - { - opt[opt_i] = ECORE_EVAS_GL_X11_OPT_NONE; - e_comp->ee = ecore_evas_gl_x11_options_new(NULL, e_comp->win, 0, 0, w, h, opt); - } -if (!e_comp->ee) - e_comp->ee = ecore_evas_gl_x11_new(NULL, e_comp->win, 0, 0, w, h); -if (e_comp->ee) - { - e_comp->gl = 1; - ecore_evas_gl_x11_pre_post_swap_callback_set(e_comp->ee, e_comp, _e_comp_x_pre_swap, NULL); - } - } - if (!e_comp->ee) - { -e_comp->ee = ecore_evas_software_x11_new(NULL, e_comp->win, 0, 0, w, h); -if (e_comp_config_get()->engine == E_COMP_ENGINE_GL) - ecore_job_add(_e_comp_x_add_fail_job, NULL); -e_comp_gl_set(0); -// tell elm and all elm apps to not allow acceleration since comp -// can't do it (or doesn't want to), so this may cause issues in -// gl drivers etc. - this addresses a vbox crash bug with vm -// opengl acceleration -elm_config_accel_preference_set("none"); -elm_config_accel_preference_override_set(EINA_TRUE); -elm_config_all_flush(); -elm_config_save(); - } + if (!e_comp_x_randr_canvas_new(e_comp->win, w, h)) + ecore_job_add(_e_comp_x_add_fail_job, NULL); ecore_x_composite_redirect_subwindows(root, ECORE_X_COMPOSITE_UPDATE_MANUAL); @@ -5115,7 +5040,6 @@ _e_comp_x_setup(Ecore_X_Window root, int w, int h) ecore_evas_callback_resize_set(e_comp->ee, _e_comp_x_ee_resize); ecore_evas_data_set(e_comp->ee, "comp", e_comp); - e_comp->grab_cb = _e_comp_x_grab_cb; e_comp->bindings_grab_cb = _e_comp_x_bindings_grab_cb; e_comp->bindings_ungrab_cb = _e_comp_x_bindings_ungrab_cb; @@ -5235,11 +5159,6 @@ e_comp_x_init(void) return EINA_FALSE; } - if (!getenv("ECORE_X_NO_XLIB")) - { -if (ecore_evas_engine_type_supported_get(ECORE_EVAS_ENGINE_OPENGL_X11)) - e_comp_gl_set(EINA_TRUE); - } ecore_x_screensaver_event_listen_set(1); clients_win_hash = eina_hash_int32_new(NULL); diff --git a/src/bin/e_comp_x_randr.c b/src/bin/e_comp_x_randr.c index eeb73c5..b0a6460 100644 --- a/src/bin/e_comp_x_randr.c +++ b/src/bin/e_comp_x_randr.c @@ -1,4 +1,5 @@ #include "e.h" +#include static char *_output_screen_get(Ecore_X_Window root, Ecore_X_Randr_Output o); static Ecore_X_Randr_Edid_Display_Interface_Type _output_conn_type_get(Ecore_X_Window root, Ecore_X_Randr_Output o); @@ -15,6 +16,27 @@ static Ecore_X_Randr_Mode _mode_s
[EGIT] [core/enlightenment] master 25/28: move canvas init after wl init in output modules
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=1eb6bb20b343a0e78a7e992cf6396b2cc4c27398 commit 1eb6bb20b343a0e78a7e992cf6396b2cc4c27398 Author: Mike Blumenkrantz Date: Wed Apr 22 19:27:36 2015 -0400 move canvas init after wl init in output modules ensure that randr screens have been created --- src/modules/wl_drm/e_mod_main.c | 4 +--- src/modules/wl_fb/e_mod_main.c | 2 +- src/modules/wl_x11/e_mod_main.c | 5 + 3 files changed, 3 insertions(+), 8 deletions(-) diff --git a/src/modules/wl_drm/e_mod_main.c b/src/modules/wl_drm/e_mod_main.c index 3547882..8096331 100644 --- a/src/modules/wl_drm/e_mod_main.c +++ b/src/modules/wl_drm/e_mod_main.c @@ -143,10 +143,8 @@ e_modapi_init(E_Module *m) e_xinerama_screens_set(eina_list_append(NULL, screen)); } - if (!e_comp_canvas_init(w, h)) return NULL; - - /* NB: This needs to be called AFTER the comp canvas has been setup */ if (!e_comp_wl_init()) return NULL; + if (!e_comp_canvas_init(w, h)) return NULL; ecore_evas_pointer_xy_get(e_comp->ee, &e_comp->wl_comp_data->ptr.x, &e_comp->wl_comp_data->ptr.y); diff --git a/src/modules/wl_fb/e_mod_main.c b/src/modules/wl_fb/e_mod_main.c index 406dbe1..c64db83 100644 --- a/src/modules/wl_fb/e_mod_main.c +++ b/src/modules/wl_fb/e_mod_main.c @@ -35,8 +35,8 @@ e_modapi_init(E_Module *m) screen->h = h; e_xinerama_screens_set(eina_list_append(NULL, screen)); } - e_comp_canvas_init(w, h); e_comp_wl_init(); + e_comp_canvas_init(w, h); e_comp->pointer = e_pointer_canvas_new(e_comp->ee, EINA_TRUE); ecore_wl_init(NULL); diff --git a/src/modules/wl_x11/e_mod_main.c b/src/modules/wl_x11/e_mod_main.c index 7c1434b..78da253 100644 --- a/src/modules/wl_x11/e_mod_main.c +++ b/src/modules/wl_x11/e_mod_main.c @@ -80,12 +80,9 @@ e_modapi_init(E_Module *m) ecore_evas_screen_geometry_get(e_comp->ee, NULL, NULL, &w, &h); - if (!e_comp_canvas_init(w, h)) return NULL; - e_comp_x_randr_screen_iface_set(); - /* NB: This needs to be called AFTER comp_canvas has been setup as it -* makes reference to the e_comp->evas */ if (!e_comp_wl_init()) return NULL; + if (!e_comp_canvas_init(w, h)) return NULL; e_comp_wl_input_pointer_enabled_set(e_comp->wl_comp_data, EINA_TRUE); e_comp_wl_input_keyboard_enabled_set(e_comp->wl_comp_data, EINA_TRUE); --
[EGIT] [core/enlightenment] master 21/28: enable conf_randr module unconditionally by default
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=f104ceb9229b66893faa7251d26c6bfd54088520 commit f104ceb9229b66893faa7251d26c6bfd54088520 Author: Mike Blumenkrantz Date: Wed Apr 22 18:28:33 2015 -0400 enable conf_randr module unconditionally by default this no longer uses/requires ecore-x --- configure.ac | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index b8752da..6b7afda 100644 --- a/configure.ac +++ b/configure.ac @@ -943,7 +943,7 @@ AC_E_OPTIONAL_MODULE([lokker], true) AC_E_OPTIONAL_MODULE([shot], true, $ecore_x) AC_E_OPTIONAL_MODULE([backlight], true) AC_E_OPTIONAL_MODULE([tasks], true) -AC_E_OPTIONAL_MODULE([conf_randr], true, $ecore_x) +AC_E_OPTIONAL_MODULE([conf_randr], true) AC_E_OPTIONAL_MODULE([xkbswitch], true, $ecore_x) AC_E_OPTIONAL_MODULE([tiling], true) #AC_E_OPTIONAL_MODULE([access], false, $ecore_x) --
[EGIT] [core/enlightenment] master 15/28: add a small screen management interface to E_Comp, remove hardcoded x11 randr calls
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=a4ea6e7f23959954f5eaa1b3254165f8fb27319c commit a4ea6e7f23959954f5eaa1b3254165f8fb27319c Author: Mike Blumenkrantz Date: Wed Apr 22 18:14:55 2015 -0400 add a small screen management interface to E_Comp, remove hardcoded x11 randr calls this interface is extremely basic and should allow easy additions for other display backends --- src/bin/e_comp.h | 16 src/bin/e_comp_x.c | 1 + src/bin/e_comp_x_randr.c | 16 src/bin/e_comp_x_randr.h | 1 + src/bin/e_includes.h | 4 ++-- src/bin/e_randr2.c | 18 ++ 6 files changed, 46 insertions(+), 10 deletions(-) diff --git a/src/bin/e_comp.h b/src/bin/e_comp.h index fcf79e6..dbab276 100644 --- a/src/bin/e_comp.h +++ b/src/bin/e_comp.h @@ -57,6 +57,20 @@ extern EAPI int E_EVENT_COMPOSITOR_ENABLE; typedef void (*E_Comp_Grab_Cb)(void); +typedef struct E_Comp_Screen_Iface +{ + /* can screen changes be made at all */ + Eina_Bool (*available)(void); + /* begin listening for screen events */ + void (*init)(void); + /* stop listening for screen events */ + void (*shutdown)(void); + /* gather screen info */ + E_Randr2 *(*create)(void); + /* apply current config */ + void (*apply)(void); +} E_Comp_Screen_Iface; + struct _E_Comp { E_Object e_obj_inherit; @@ -98,6 +112,8 @@ struct _E_Comp void *data; } autoclose; + E_Comp_Screen_Iface *screen; + Eina_List *debug_rects; Eina_List *ignore_wins; diff --git a/src/bin/e_comp_x.c b/src/bin/e_comp_x.c index 4990d63..fcb06e6 100644 --- a/src/bin/e_comp_x.c +++ b/src/bin/e_comp_x.c @@ -4559,6 +4559,7 @@ _e_comp_x_xinerama_setup(int rw, int rh) E_Randr2_Screen *s, *s2, *s_chosen; Eina_Bool removed; + e_comp_x_randr_screen_iface_set(); if (!e_randr2_init()) return 0; // put screens in tmp list diff --git a/src/bin/e_comp_x_randr.c b/src/bin/e_comp_x_randr.c index b0a6460..a0ca058 100644 --- a/src/bin/e_comp_x_randr.c +++ b/src/bin/e_comp_x_randr.c @@ -15,6 +15,14 @@ static Ecore_X_Randr_Mode _mode_screen_find(Ecore_X_Window root, E_Randr2_Screen static Eina_List *handlers; +E_Comp_Screen_Iface xiface = +{ + .available = e_comp_x_randr_available, + .init = e_comp_x_randr_init, + .shutdown = e_comp_x_randr_shutdown, + .create = e_comp_x_randr_create, + .apply = e_comp_x_randr_config_apply +}; static void _e_comp_x_randr_pre_swap(void *data EINA_UNUSED, Evas *e EINA_UNUSED) @@ -818,6 +826,14 @@ e_comp_x_randr_create(void) return r; } +EAPI void +e_comp_x_randr_screen_iface_set(void) +{ + if (e_comp->screen) + CRI("CANNOT SET XIFACE; IFACE ALREADY EXISTS!"); + e_comp->screen = &xiface; +} + EAPI Eina_Bool e_comp_x_randr_canvas_new(Ecore_Window parent, int w, int h) { diff --git a/src/bin/e_comp_x_randr.h b/src/bin/e_comp_x_randr.h index 9b3812c..84932d6 100644 --- a/src/bin/e_comp_x_randr.h +++ b/src/bin/e_comp_x_randr.h @@ -7,5 +7,6 @@ EAPI void e_comp_x_randr_config_apply(void); EAPI Eina_Bool e_comp_x_randr_available(void); EAPI E_Randr2 *e_comp_x_randr_create(void); +EAPI void e_comp_x_randr_screen_iface_set(void); EAPI Eina_Bool e_comp_x_randr_canvas_new(Ecore_Window parent, int w, int h); #endif diff --git a/src/bin/e_includes.h b/src/bin/e_includes.h index 0e68417..ccdaa2a 100644 --- a/src/bin/e_includes.h +++ b/src/bin/e_includes.h @@ -7,10 +7,9 @@ #include "e_zone.h" #include "e_desk.h" #include "e_auth.h" +#include "e_randr2.h" #ifdef NEED_X # include "e_comp_x.h" -# include "e_randr2.h" -# include "e_comp_x_randr.h" #endif #include "e_pixmap.h" #include "e_comp_object.h" @@ -149,6 +148,7 @@ #include "e_comp_canvas.h" #include "e_utils.h" #include "e_hints.h" +#include "e_comp_x_randr.h" #if defined(HAVE_WAYLAND_CLIENTS) || defined(HAVE_WAYLAND_ONLY) # include "e_comp_wl.h" diff --git a/src/bin/e_randr2.c b/src/bin/e_randr2.c index e25d30f..1c2e438 100644 --- a/src/bin/e_randr2.c +++ b/src/bin/e_randr2.c @@ -45,7 +45,7 @@ EINTERN Eina_Bool e_randr2_init(void) { if (!E_EVENT_RANDR_CHANGE) E_EVENT_RANDR_CHANGE = ecore_event_type_new(); - if (!e_comp_x_randr_available()) return EINA_FALSE; + if ((!e_comp->screen) || (!e_comp->screen->available) || (!e_comp->screen->available())) return EINA_FALSE; // create data descriptors for config storage _e_randr2_cfg_screen_edd = E_CONFIG_DD_NEW("E_Config_Randr2_Screen", E_Config_Randr2_Screen); @@ -76,9 +76,10 @@ e_randr2_init(void) E_CONFIG_VAL(D, T, ignore_acpi_events, UCHAR); // set up events from the driver - e_comp_x_randr_init(); + if (e_comp->screen->init) + e_comp->screen->init(); // get current screen info - e_randr2 = e_comp_x_randr_create(); + e_randr2 = e_comp->screen->create(); // from screen info calculate screen max dimensions _screen_config_maxsize(); // load config and apply it
[EGIT] [core/enlightenment] master 14/28: create wl-x11 canvas using comp_x canvas creation method
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=c9ff3b1434c38927d9fee8d671abb599ba2a6509 commit c9ff3b1434c38927d9fee8d671abb599ba2a6509 Author: Mike Blumenkrantz Date: Wed Apr 22 18:12:22 2015 -0400 create wl-x11 canvas using comp_x canvas creation method --- src/modules/wl_x11/e_mod_main.c | 6 ++ 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/modules/wl_x11/e_mod_main.c b/src/modules/wl_x11/e_mod_main.c index 8efd490..2d298b1 100644 --- a/src/modules/wl_x11/e_mod_main.c +++ b/src/modules/wl_x11/e_mod_main.c @@ -65,21 +65,19 @@ _cb_keymap_changed(void *data, int type EINA_UNUSED, void *event EINA_UNUSED) EAPI void * e_modapi_init(E_Module *m) { - Ecore_Evas *ee; E_Screen *screen; int w = 0, h = 0; printf("LOAD WL_X11 MODULE\n"); - ee = ecore_evas_software_x11_new(NULL, 0, 0, 0, 1, 1); - ecore_evas_callback_delete_request_set(ee, _cb_delete_request); + e_comp_x_randr_canvas_new(ecore_x_window_root_first_get(), 1, 1); - e_comp->ee = ee; if (!e_comp->ee) { ERR("Could not create ecore_evas canvas"); return NULL; } + ecore_evas_callback_delete_request_set(e_comp->ee, _cb_delete_request); ecore_evas_screen_geometry_get(e_comp->ee, NULL, NULL, &w, &h); --
[EGIT] [core/enlightenment] master 23/28: resize comp canvas on e_comp_canvas_init()
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=e64998b042591ce7db5436e9f092cfc674f585d0 commit e64998b042591ce7db5436e9f092cfc674f585d0 Author: Mike Blumenkrantz Date: Wed Apr 22 19:16:32 2015 -0400 resize comp canvas on e_comp_canvas_init() remove unnecessary call in wl drm output module --- src/bin/e_comp_canvas.c | 1 + src/modules/wl_drm/e_mod_main.c | 3 --- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/src/bin/e_comp_canvas.c b/src/bin/e_comp_canvas.c index 18ced73..f23440e 100644 --- a/src/bin/e_comp_canvas.c +++ b/src/bin/e_comp_canvas.c @@ -187,6 +187,7 @@ e_comp_canvas_init(int w, int h) e_comp->evas = ecore_evas_get(e_comp->ee); e_comp->w = w; e_comp->h = h; + ecore_evas_resize(e_comp->ee, w, h); if (e_first_frame) evas_event_callback_add(e_comp->evas, EVAS_CALLBACK_RENDER_POST, _e_comp_canvas_cb_first_frame, NULL); diff --git a/src/modules/wl_drm/e_mod_main.c b/src/modules/wl_drm/e_mod_main.c index e6f1691..3547882 100644 --- a/src/modules/wl_drm/e_mod_main.c +++ b/src/modules/wl_drm/e_mod_main.c @@ -128,9 +128,6 @@ e_modapi_init(E_Module *m) /* get the current screen geometry */ ecore_evas_screen_geometry_get(e_comp->ee, NULL, NULL, &w, &h); - /* resize the canvas */ - ecore_evas_resize(e_comp->ee, w, h); - ecore_evas_callback_resize_set(e_comp->ee, _e_mod_drm_cb_ee_resize); if (!e_xinerama_fake_screens_exist()) --
[EGIT] [core/enlightenment] master 08/28: always register E_EVENT_RANDR_CHANGE
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=e383b5b55af206183bb0c16e3be3a52573a1502b commit e383b5b55af206183bb0c16e3be3a52573a1502b Author: Mike Blumenkrantz Date: Wed Apr 22 17:01:53 2015 -0400 always register E_EVENT_RANDR_CHANGE failing to register this will cause event handlers for it to fail on creation --- src/bin/e_randr2.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bin/e_randr2.c b/src/bin/e_randr2.c index 4b16194..e25d30f 100644 --- a/src/bin/e_randr2.c +++ b/src/bin/e_randr2.c @@ -44,6 +44,7 @@ EAPI int E_EVENT_RANDR_CHANGE = 0; EINTERN Eina_Bool e_randr2_init(void) { + if (!E_EVENT_RANDR_CHANGE) E_EVENT_RANDR_CHANGE = ecore_event_type_new(); if (!e_comp_x_randr_available()) return EINA_FALSE; // create data descriptors for config storage _e_randr2_cfg_screen_edd = @@ -74,7 +75,6 @@ e_randr2_init(void) E_CONFIG_VAL(D, T, ignore_hotplug_events, UCHAR); E_CONFIG_VAL(D, T, ignore_acpi_events, UCHAR); - if (!E_EVENT_RANDR_CHANGE) E_EVENT_RANDR_CHANGE = ecore_event_type_new(); // set up events from the driver e_comp_x_randr_init(); // get current screen info --
[EGIT] [core/enlightenment] master 05/28: move all x11-related randr code into e_comp_x_randr.c
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=881e0ab80527a2b0de40de8e95334259c62c627f commit 881e0ab80527a2b0de40de8e95334259c62c627f Author: Mike Blumenkrantz Date: Wed Apr 22 16:16:05 2015 -0400 move all x11-related randr code into e_comp_x_randr.c --- src/bin/Makefile.mk |2 + src/bin/{e_randr2.c => e_comp_x_randr.c} | 1415 ++ src/bin/e_comp_x_randr.h |9 + src/bin/e_includes.h |1 + src/bin/e_randr2.c | 824 + 5 files changed, 287 insertions(+), 1964 deletions(-) diff --git a/src/bin/Makefile.mk b/src/bin/Makefile.mk index ecc6f7b..0266f21 100644 --- a/src/bin/Makefile.mk +++ b/src/bin/Makefile.mk @@ -59,6 +59,7 @@ src/bin/e_comp_canvas.h \ src/bin/e_comp_cfdata.h \ src/bin/e_comp_object.h \ src/bin/e_comp_x.h \ +src/bin/e_comp_x_randr.h \ src/bin/e_config_data.h \ src/bin/e_config_dialog.h \ src/bin/e_config.h \ @@ -358,6 +359,7 @@ $(ENLIGHTENMENTHEADERS) if ! HAVE_WAYLAND_ONLY enlightenment_src += \ src/bin/e_comp_x.c \ +src/bin/e_comp_x_randr.c \ src/bin/e_alert.c \ src/bin/e_randr2.c \ src/bin/e_xsettings.c diff --git a/src/bin/e_randr2.c b/src/bin/e_comp_x_randr.c similarity index 52% copy from src/bin/e_randr2.c copy to src/bin/e_comp_x_randr.c index c2d2f78..eeb73c5 100644 --- a/src/bin/e_randr2.c +++ b/src/bin/e_comp_x_randr.c @@ -1,909 +1,19 @@ #include "e.h" -#define E_RANDR_CONFIG_VERSION 1 - -/ -static Eina_Bool _screen_closed(E_Randr2_Screen *s); -static void_animated_apply_abort(void); -static Eina_Bool _cb_delay_timer(void *data); -static Eina_Bool _cb_fade_animator(void *data); -static void_animated_apply(void); -static void_do_apply(void); -static void_info_free(E_Randr2 *r); -static E_Config_Randr2*_config_load(void); -static void_config_free(E_Config_Randr2 *cfg); -static Eina_Bool _config_save(E_Randr2 *r, E_Config_Randr2 *cfg); -static void_config_update(E_Randr2 *r, E_Config_Randr2 *cfg); -static void_config_apply(E_Randr2 *r, E_Config_Randr2 *cfg); -static int _config_screen_match_count(E_Randr2 *r, E_Config_Randr2 *cfg); -static char *_screens_fingerprint(E_Randr2 *r); -static Eina_Bool _screens_differ(E_Randr2 *r1, E_Randr2 *r2); -static Eina_Bool _cb_screen_change_delay(void *data); -static E_Randr2_Screen*_screen_output_find(const char *out); -static E_Randr2_Screen*_screen_id_find(const char *id); -static void_screen_config_takeover(void); -static void_screen_config_do(E_Randr2_Screen *s); -static void_screen_config_eval(void); -static void_screen_config_maxsize(void); - -/ -static E_Config_DD *_e_randr2_cfg_edd = NULL; -static E_Config_DD *_e_randr2_cfg_screen_edd = NULL; -static Eina_List *_ev_handlers = NULL; -static Ecore_Timer *_screen_delay_timer = NULL; -static Eina_Bool event_screen = EINA_FALSE; -static Eina_Bool event_ignore = EINA_FALSE; - -/ -EAPI E_Config_Randr2 *e_randr2_cfg = NULL; -EAPI E_Randr2*e_randr2 = NULL; - -EAPI int E_EVENT_RANDR_CHANGE = 0; - -/ -// X11 backend -static Eina_Bool _output_init(void); -static void _output_shutdown(void); -static void _output_events_listen(void); -static void _output_events_unlisten(void); -static char *_output_screen_get(Ecore_X_Window root, Ecore_X_Randr_Output o); -static Ecore_X_Randr_Edid_Display_Interface_Type _output_conn_type_get(Ecore_X_Window root, Ecore_X_Randr_Output o); -static char *_output_name_get(Ecore_X_Window root, Ecore_X_Randr_Output o); -static Eina_Bool _is_lid_name(const char *name); -static E_Randr2 *_info_get(void); -static Eina_Bool _cb_screen_change(void *data, int type, void *event); -static Eina_Bool _cb_crtc_change(void *data, int type, void *event); -static Eina_Bool _cb_output_change(void *data, int type, void *event); -static Eina_Bool _output_name_find(Ecore_X_Window root, const char *name, Ecore_X_Randr_Output *outputs, int outputs_num, Ecore_X_Randr_Output *out_ret); -static Eina_Bool _output_exists(Ecore_X_Randr_Output out, Ecore_X_Randr_Crtc_Info *info); -static Eina_Bool _rotation_exists(int rot, Ecore_X_Randr_Crtc_Info *info); -static Ecore_X_Randr_Mode _mode_screen_find(Ecore_X_Window root, E_Randr2_Screen *s, Ecore_X_Randr_Output out); -static void _screen_config_app
[EGIT] [core/enlightenment] master 12/28: move comp_x randr init to screen init function
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=36ea1ba3725fd46bc4dc0713f8b6f6d65420a8e8 commit 36ea1ba3725fd46bc4dc0713f8b6f6d65420a8e8 Author: Mike Blumenkrantz Date: Wed Apr 22 18:06:26 2015 -0400 move comp_x randr init to screen init function --- src/bin/e_comp_x.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/bin/e_comp_x.c b/src/bin/e_comp_x.c index 569330c..2e5a5ca 100644 --- a/src/bin/e_comp_x.c +++ b/src/bin/e_comp_x.c @@ -4568,6 +4568,8 @@ _e_comp_x_xinerama_setup(int rw, int rh) E_Randr2_Screen *s, *s2, *s_chosen; Eina_Bool removed; + if (!e_randr2_init()) return 0; + // put screens in tmp list EINA_LIST_FOREACH(e_randr2->screens, l, s) { @@ -5332,13 +5334,11 @@ e_comp_x_init(void) e_desklock_show_hook_add(_e_comp_x_desklock_show); e_desklock_hide_hook_add(_e_comp_x_desklock_hide); - if (!e_randr2_init()) return 0; - E_LIST_HANDLER_APPEND(handlers, E_EVENT_RANDR_CHANGE, _e_comp_x_randr_change, NULL); - if (!e_atoms_init()) return 0; if (!_e_comp_x_screens_setup()) return EINA_FALSE; if (!e_xsettings_init()) e_error_message_show(_("Enlightenment cannot initialize the XSettings system.\n")); + E_LIST_HANDLER_APPEND(handlers, E_EVENT_RANDR_CHANGE, _e_comp_x_randr_change, NULL); ecore_x_sync(); --
[EGIT] [core/enlightenment] master 17/28: use randr for screen setup in wl-x11 output module
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=15540c01e41a9a2dc3d8caad9943fa4979f43248 commit 15540c01e41a9a2dc3d8caad9943fa4979f43248 Author: Mike Blumenkrantz Date: Wed Apr 22 18:18:39 2015 -0400 use randr for screen setup in wl-x11 output module enabling this module requires that e is linked against ecore-x to allow screen management --- src/bin/Makefile.mk | 5 + src/modules/wl_x11/e_mod_main.c | 13 + 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/src/bin/Makefile.mk b/src/bin/Makefile.mk index 8fe0706..3917170 100644 --- a/src/bin/Makefile.mk +++ b/src/bin/Makefile.mk @@ -363,6 +363,11 @@ src/bin/e_comp_x.c \ src/bin/e_comp_x_randr.c \ src/bin/e_alert.c \ src/bin/e_xsettings.c +else +if USE_MODULE_WL_X11 +enlightenment_src += \ +src/bin/e_comp_x_randr.c +endif endif if HAVE_WAYLAND diff --git a/src/modules/wl_x11/e_mod_main.c b/src/modules/wl_x11/e_mod_main.c index 2d298b1..7c1434b 100644 --- a/src/modules/wl_x11/e_mod_main.c +++ b/src/modules/wl_x11/e_mod_main.c @@ -65,7 +65,6 @@ _cb_keymap_changed(void *data, int type EINA_UNUSED, void *event EINA_UNUSED) EAPI void * e_modapi_init(E_Module *m) { - E_Screen *screen; int w = 0, h = 0; printf("LOAD WL_X11 MODULE\n"); @@ -81,19 +80,9 @@ e_modapi_init(E_Module *m) ecore_evas_screen_geometry_get(e_comp->ee, NULL, NULL, &w, &h); - if (!e_xinerama_fake_screens_exist()) - { -screen = E_NEW(E_Screen, 1); -screen->escreen = screen->screen = 0; -screen->x = 0; -screen->y = 0; -screen->w = w; -screen->h = h; -e_xinerama_screens_set(eina_list_append(NULL, screen)); - } - if (!e_comp_canvas_init(w, h)) return NULL; + e_comp_x_randr_screen_iface_set(); /* NB: This needs to be called AFTER comp_canvas has been setup as it * makes reference to the e_comp->evas */ if (!e_comp_wl_init()) return NULL; --
[EGIT] [core/enlightenment] master 16/28: always add e_randr2.c to e build
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=89ae59b40756568b13c11a0f8271a21d257c61f0 commit 89ae59b40756568b13c11a0f8271a21d257c61f0 Author: Mike Blumenkrantz Date: Wed Apr 22 18:18:01 2015 -0400 always add e_randr2.c to e build randr no longer requires x11 --- src/bin/Makefile.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bin/Makefile.mk b/src/bin/Makefile.mk index f8ade10..8fe0706 100644 --- a/src/bin/Makefile.mk +++ b/src/bin/Makefile.mk @@ -300,6 +300,7 @@ src/bin/e_place.c \ src/bin/e_pointer.c \ src/bin/e_powersave.c \ src/bin/e_prefix.c \ +src/bin/e_randr2.c \ src/bin/e_remember.c \ src/bin/e_resist.c \ src/bin/e_scale.c \ @@ -361,7 +362,6 @@ enlightenment_src += \ src/bin/e_comp_x.c \ src/bin/e_comp_x_randr.c \ src/bin/e_alert.c \ -src/bin/e_randr2.c \ src/bin/e_xsettings.c endif --
[EGIT] [core/enlightenment] master 04/28: _config_screen_find() -> e_randr2_config_screen_find()
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=7104e637ef85df18b233221cc1b7fc9cbc4afb40 commit 7104e637ef85df18b233221cc1b7fc9cbc4afb40 Author: Mike Blumenkrantz Date: Wed Apr 22 16:07:58 2015 -0400 _config_screen_find() -> e_randr2_config_screen_find() --- src/bin/e_randr2.c | 39 +++ src/bin/e_randr2.h | 1 + 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/src/bin/e_randr2.c b/src/bin/e_randr2.c index f64e1d2..c2d2f78 100644 --- a/src/bin/e_randr2.c +++ b/src/bin/e_randr2.c @@ -15,7 +15,6 @@ static void_config_free(E_Config_Randr2 *cfg); static Eina_Bool _config_save(E_Randr2 *r, E_Config_Randr2 *cfg); static void_config_update(E_Randr2 *r, E_Config_Randr2 *cfg); static void_config_apply(E_Randr2 *r, E_Config_Randr2 *cfg); -static E_Config_Randr2_Screen *_config_screen_find(E_Randr2_Screen *s, E_Config_Randr2 *cfg); static int _config_screen_match_count(E_Randr2 *r, E_Config_Randr2 *cfg); static char *_screens_fingerprint(E_Randr2 *r); static Eina_Bool _screens_differ(E_Randr2 *r1, E_Randr2 *r2); @@ -363,7 +362,7 @@ _config_update(E_Randr2 *r, E_Config_Randr2 *cfg) { printf("RRR: out id=%s: connected=%i\n", s->id, s->info.connected); if ((!s->id) || (!s->info.connected) || (_screen_closed(s))) continue; -cs = _config_screen_find(s, cfg); +cs = e_randr2_config_screen_find(s, cfg); if (!cs) { cs = calloc(1, sizeof(E_Config_Randr2_Screen)); @@ -403,7 +402,7 @@ _config_apply(E_Randr2 *r, E_Config_Randr2 *cfg) printf("RRR: apply '%s'...\n", s->info.name); cs = NULL; if ((!_screen_closed(s)) && (s->info.connected)) - cs = _config_screen_find(s, cfg); + cs = e_randr2_config_screen_find(s, cfg); printf("RRR: connected = %i\n", s->info.connected); if ((cs) && (cs->enabled)) { @@ -445,22 +444,6 @@ _config_apply(E_Randr2 *r, E_Config_Randr2 *cfg) } } -static E_Config_Randr2_Screen * -_config_screen_find(E_Randr2_Screen *s, E_Config_Randr2 *cfg) -{ - Eina_List *l; - E_Config_Randr2_Screen *cs; - - if ((!s) || (!cfg)) return NULL; - if (!s->id) return NULL; - EINA_LIST_FOREACH(cfg->screens, l, cs) - { -if (!cs->id) continue; -if (!strcmp(cs->id, s->id)) return cs; - } - return NULL; -} - static int _config_screen_match_count(E_Randr2 *r, E_Config_Randr2 *cfg) { @@ -1273,7 +1256,7 @@ _info_get(void) } cs = NULL; priority = 0; -if (e_randr2_cfg) cs = _config_screen_find(s, e_randr2_cfg); +if (e_randr2_cfg) cs = e_randr2_config_screen_find(s, e_randr2_cfg); if (cs) priority = cs->priority; else if (ecore_x_randr_primary_output_get(root) == outputs[i]) @@ -1677,3 +1660,19 @@ e_randr2_screen_refresh_queue(Eina_Bool lid_event) _screen_delay_timer = ecore_timer_add(1.0, _cb_screen_change_delay, NULL); event_screen = !!lid_event; } + +EAPI E_Config_Randr2_Screen * +e_randr2_config_screen_find(E_Randr2_Screen *s, E_Config_Randr2 *cfg) +{ + Eina_List *l; + E_Config_Randr2_Screen *cs; + + if ((!s) || (!cfg)) return NULL; + if (!s->id) return NULL; + EINA_LIST_FOREACH(cfg->screens, l, cs) + { +if (!cs->id) continue; +if (!strcmp(cs->id, s->id)) return cs; + } + return NULL; +} diff --git a/src/bin/e_randr2.h b/src/bin/e_randr2.h index f93762c..727b393 100644 --- a/src/bin/e_randr2.h +++ b/src/bin/e_randr2.h @@ -121,5 +121,6 @@ EAPIvoid e_randr2_config_apply(void); EAPIvoid e_randr2_screeninfo_update(void); EAPI void e_randr2_screen_refresh_queue(Eina_Bool lid_event); +EAPI E_Config_Randr2_Screen *e_randr2_config_screen_find(E_Randr2_Screen *s, E_Config_Randr2 *cfg); #endif #endif --
[EGIT] [core/enlightenment] master 24/28: move comp_x screen setup code into e_randr
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=a452baafca195328e045020456a5411c2b8dbdb6 commit a452baafca195328e045020456a5411c2b8dbdb6 Author: Mike Blumenkrantz Date: Wed Apr 22 19:24:33 2015 -0400 move comp_x screen setup code into e_randr this was not x-specific, so move it for use in wl compositors --- src/bin/e_comp_wl.c | 3 +- src/bin/e_comp_x.c | 148 +++- src/bin/e_randr2.c | 132 ++ src/bin/e_randr2.h | 1 + 4 files changed, 141 insertions(+), 143 deletions(-) diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c index b84781b..33f44c6 100644 --- a/src/bin/e_comp_wl.c +++ b/src/bin/e_comp_wl.c @@ -2497,7 +2497,8 @@ e_comp_wl_init(void) /* add event handlers to catch E events */ if (e_comp->comp_type != E_PIXMAP_TYPE_X) - e_randr2_init(); + if (e_randr2_init()) + e_randr2_screens_setup(-1, -1); E_LIST_HANDLER_APPEND(handlers, E_EVENT_RANDR_CHANGE, _e_comp_wl_cb_randr_change, NULL); diff --git a/src/bin/e_comp_x.c b/src/bin/e_comp_x.c index fcb06e6..e719852 100644 --- a/src/bin/e_comp_x.c +++ b/src/bin/e_comp_x.c @@ -4532,139 +4532,6 @@ _e_comp_x_cb_frame_extents_request(void *data EINA_UNUSED, int ev_type EINA_UNUS return ECORE_CALLBACK_RENEW; } -static int -_e_comp_x_cinerama_screen_sort_cb(const void *data1, const void *data2) -{ - const E_Randr2_Screen *s1 = data1, *s2 = data2; - int dif; - - dif = -(s1->config.priority - s2->config.priority); - if (dif == 0) - { -dif = s1->config.geom.x - s2->config.geom.x; -if (dif == 0) - dif = s1->config.geom.y - s2->config.geom.y; - } - return dif; -} - -static Eina_Bool -_e_comp_x_xinerama_setup(int rw, int rh) -{ - int i; - E_Screen *screen; - Eina_List *screens = NULL, *screens_rem; - Eina_List *all_screens = NULL; - Eina_List *l, *ll; - E_Randr2_Screen *s, *s2, *s_chosen; - Eina_Bool removed; - - e_comp_x_randr_screen_iface_set(); - if (!e_randr2_init()) return 0; - - // put screens in tmp list - EINA_LIST_FOREACH(e_randr2->screens, l, s) - { -if ((s->config.enabled) && -(s->config.geom.w > 0) && -(s->config.geom.h > 0)) - { - screens = eina_list_append(screens, s); - } - } - // remove overlapping screens - if a set of screens overlap, keep the - // smallest/lowest res - do - { -removed = EINA_FALSE; - -EINA_LIST_FOREACH(screens, l, s) - { - screens_rem = NULL; - - EINA_LIST_FOREACH(l->next, ll, s2) - { - if (E_INTERSECTS(s->config.geom.x, s->config.geom.y, - s->config.geom.w, s->config.geom.h, - s2->config.geom.x, s2->config.geom.y, - s2->config.geom.w, s2->config.geom.h)) -{ - if (!screens_rem) - screens_rem = eina_list_append(screens_rem, s); - screens_rem = eina_list_append(screens_rem, s2); -} - } - // we have intersecting screens - choose the lowest res one - if (screens_rem) - { - removed = EINA_TRUE; - // find the smallest screen (chosen one) - s_chosen = NULL; - EINA_LIST_FOREACH(screens_rem, ll, s2) -{ - if (!s_chosen) s_chosen = s2; - else - { -if ((s_chosen->config.geom.w * - s_chosen->config.geom.h) > -(s2->config.geom.w * - s2->config.geom.h)) - s_chosen = s2; - } -} - // remove all from screens but the chosen one - EINA_LIST_FREE(screens_rem, s2) -{ - if (s2 != s_chosen) - screens = eina_list_remove_list(screens, l); -} - // break our list walk and try again - break; - } - } - } - while (removed); - // sort screens by priority etc. - screens = eina_list_sort(screens, eina_list_count(screens), -_e_comp_x_cinerama_screen_sort_cb); - i = 0; - EINA_LIST_FOREACH(screens, l, s) - { -screen = E_NEW(E_Screen, 1); -screen->escreen = screen->screen = i; -screen->x = s->config.geom.x; -screen->y = s->config.geom.y; -screen->w = s->config.geom.w; -screen->h = s->config.geom.h; -all_screens = eina_list_a
[EGIT] [core/enlightenment] master 09/28: fix ecore-x cflags/libs inclusion for e binary
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=df4ada7e7577a26c7d6092c99fac26bd9c95004a commit df4ada7e7577a26c7d6092c99fac26bd9c95004a Author: Mike Blumenkrantz Date: Wed Apr 22 17:29:53 2015 -0400 fix ecore-x cflags/libs inclusion for e binary these variables will always exist --- src/bin/Makefile.mk | 9 +++-- 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/bin/Makefile.mk b/src/bin/Makefile.mk index 0266f21..f8ade10 100644 --- a/src/bin/Makefile.mk +++ b/src/bin/Makefile.mk @@ -373,19 +373,16 @@ src/bin/e_comp_wl_input.c \ src/bin/e_comp_wl.c endif -src_bin_enlightenment_CPPFLAGS = $(E_CPPFLAGS) -DEFL_BETA_API_SUPPORT -DEFL_EO_API_SUPPORT -DE_LOGGING=1 @WAYLAND_CFLAGS@ @WAYLAND_EGL_CFLAGS@ -DNEED_WL +src_bin_enlightenment_CPPFLAGS = $(E_CPPFLAGS) -DEFL_BETA_API_SUPPORT -DEFL_EO_API_SUPPORT -DE_LOGGING=1 @WAYLAND_CFLAGS@ @WAYLAND_EGL_CFLAGS@ @ECORE_X_CFLAGS@ if ! HAVE_WAYLAND_ONLY -src_bin_enlightenment_CPPFLAGS += @ECORE_X_CFLAGS@ -DNEED_X=1 +src_bin_enlightenment_CPPFLAGS += -DNEED_X=1 endif src_bin_enlightenment_SOURCES = \ src/bin/e_main.c \ $(enlightenment_src) src_bin_enlightenment_LDFLAGS = -export-dynamic -src_bin_enlightenment_LDADD = @e_libs@ @dlopen_libs@ @cf_libs@ @VALGRIND_LIBS@ @WAYLAND_LIBS@ @WL_DRM_LIBS@ @WAYLAND_EGL_LIBS@ -lm @SHM_OPEN_LIBS@ -if ! HAVE_WAYLAND_ONLY -src_bin_enlightenment_LDADD += @ECORE_X_LIBS@ -endif +src_bin_enlightenment_LDADD = @e_libs@ @dlopen_libs@ @cf_libs@ @VALGRIND_LIBS@ @WAYLAND_LIBS@ @WL_DRM_LIBS@ @WAYLAND_EGL_LIBS@ -lm @SHM_OPEN_LIBS@ @ECORE_X_LIBS@ src_bin_enlightenment_imc_SOURCES = \ src/bin/e.h \ --
[EGIT] [core/enlightenment] master 22/28: fix module blocking for wl modules
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=05d87a9b307bf4a9fc5e8b6e48b0fa0fc4fd9a50 commit 05d87a9b307bf4a9fc5e8b6e48b0fa0fc4fd9a50 Author: Mike Blumenkrantz Date: Wed Apr 22 19:09:19 2015 -0400 fix module blocking for wl modules these should never be saved to or loaded from the config --- src/bin/e_module.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bin/e_module.c b/src/bin/e_module.c index 1d2351b..1a33c57 100644 --- a/src/bin/e_module.c +++ b/src/bin/e_module.c @@ -241,7 +241,7 @@ e_module_all_load(void) if (!em) continue; if ((!e_util_strcmp(em->name, "comp")) || (!e_util_strcmp(em->name, "conf_comp")) || -(e_comp && (!strcmp(em->name, "wl_x11"))) //block wl_x11 if we've already created a compositor +(!strncmp(em->name, "wl_", 3)) //block wl_* modules from being saved ) { eina_stringshare_del(em->name); --
[EGIT] [core/enlightenment] master 19/28: init randr during wayland init...always
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=4b1925dadf95b40c04738d64b3e766407ce24d53 commit 4b1925dadf95b40c04738d64b3e766407ce24d53 Author: Mike Blumenkrantz Date: Wed Apr 22 18:20:47 2015 -0400 init randr during wayland init...always --- src/bin/e_comp_wl.c | 11 +++ 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c index 0d19ac2..b84781b 100644 --- a/src/bin/e_comp_wl.c +++ b/src/bin/e_comp_wl.c @@ -702,7 +702,6 @@ _e_comp_wl_client_evas_init(E_Client *ec) ec->comp_data->evas_init = EINA_TRUE; } -#ifndef HAVE_WAYLAND_ONLY static Eina_Bool _e_comp_wl_cb_randr_change(void *data EINA_UNUSED, int type EINA_UNUSED, void *event EINA_UNUSED) { @@ -743,7 +742,6 @@ _e_comp_wl_cb_randr_change(void *data EINA_UNUSED, int type EINA_UNUSED, void *e return ECORE_CALLBACK_RENEW; } -#endif static Eina_Bool _e_comp_wl_cb_comp_object_add(void *data EINA_UNUSED, int type EINA_UNUSED, E_Event_Comp_Object *ev) @@ -2367,9 +2365,7 @@ _e_comp_wl_compositor_create(void) goto comp_global_err; } -#ifndef HAVE_WAYLAND_ONLY _e_comp_wl_cb_randr_change(NULL, 0, NULL); -#endif /* try to init data manager */ if (!e_comp_wl_data_manager_init(cdata)) @@ -2500,12 +2496,11 @@ e_comp_wl_init(void) /* clients_win_hash = eina_hash_int64_new(NULL); */ /* add event handlers to catch E events */ -#ifndef HAVE_WAYLAND_ONLY - if (!e_randr2_init()) return EINA_FALSE; + if (e_comp->comp_type != E_PIXMAP_TYPE_X) + e_randr2_init(); E_LIST_HANDLER_APPEND(handlers, E_EVENT_RANDR_CHANGE, - _e_comp_wl_cb_randr_change, NULL); -#endif +_e_comp_wl_cb_randr_change, NULL); E_LIST_HANDLER_APPEND(handlers, E_EVENT_COMP_OBJECT_ADD, _e_comp_wl_cb_comp_object_add, NULL); --
[EGIT] [core/enlightenment] master 11/28: ensure valid strings are send when sending wl output geometry
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=3ac3e9bc71d13ee33efc19bf8297d85bf5a7466d commit 3ac3e9bc71d13ee33efc19bf8297d85bf5a7466d Author: Mike Blumenkrantz Date: Wed Apr 22 17:46:43 2015 -0400 ensure valid strings are send when sending wl output geometry --- src/bin/e_comp_wl.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c index 0977a8b..d49ae37 100644 --- a/src/bin/e_comp_wl.c +++ b/src/bin/e_comp_wl.c @@ -2288,7 +2288,7 @@ _e_comp_wl_cb_output_bind(struct wl_client *client, void *data, uint32_t version wl_output_send_geometry(resource, output->x, output->y, output->phys_width, output->phys_height, - output->subpixel, output->make, output->model, + output->subpixel, output->make ?: "", output->model ?: "", output->transform); if (version >= WL_OUTPUT_SCALE_SINCE_VERSION) @@ -2831,7 +2831,7 @@ e_comp_wl_output_init(const char *id, const char *make, const char *model, output->phys_width, output->phys_height, output->subpixel, -output->make, output->model, +output->make ?: "", output->model ?: "", output->transform); if (wl_resource_get_version(resource) >= WL_OUTPUT_SCALE_SINCE_VERSION) --
[EGIT] [core/enlightenment] master 18/28: change comp type check at start of e_comp_wl_init()
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=18c34ed1519e23f623f36e2536d64ceb1d323612 commit 18c34ed1519e23f623f36e2536d64ceb1d323612 Author: Mike Blumenkrantz Date: Wed Apr 22 18:19:52 2015 -0400 change comp type check at start of e_comp_wl_init() at present, this value will be set to either TYPE_NONE if no valid compositor has been created or TYPE_X if running a wl compositor inside an x11 compositor --- src/bin/e_comp_wl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c index d49ae37..0d19ac2 100644 --- a/src/bin/e_comp_wl.c +++ b/src/bin/e_comp_wl.c @@ -2475,7 +2475,7 @@ disp_err: EAPI Eina_Bool e_comp_wl_init(void) { - if (e_comp->comp_type == E_PIXMAP_TYPE_WL) + if (e_comp->comp_type != E_PIXMAP_TYPE_X) e_comp->root = ecore_evas_window_get(e_comp->ee); /* set gl available if we have ecore_evas support */ if (ecore_evas_engine_type_supported_get(ECORE_EVAS_ENGINE_WAYLAND_EGL) || --
[EGIT] [core/enlightenment] master 02/28: move e_randr internal screen changing timer -> e_randr2_screen_refresh_queue()
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=853d04592ef600aef718dcbdf1a09e408db07881 commit 853d04592ef600aef718dcbdf1a09e408db07881 Author: Mike Blumenkrantz Date: Wed Apr 22 16:01:48 2015 -0400 move e_randr internal screen changing timer -> e_randr2_screen_refresh_queue() --- src/bin/e_randr2.c | 41 - src/bin/e_randr2.h | 1 + 2 files changed, 17 insertions(+), 25 deletions(-) diff --git a/src/bin/e_randr2.c b/src/bin/e_randr2.c index 3b1c77b..c2b65c7 100644 --- a/src/bin/e_randr2.c +++ b/src/bin/e_randr2.c @@ -21,7 +21,6 @@ static char *_screens_fingerprint(E_Randr2 *r); static Eina_Bool _screens_differ(E_Randr2 *r1, E_Randr2 *r2); static void_cb_acpi_handler_add(void *data); static Eina_Bool _cb_screen_change_delay(void *data); -static void_screen_change_delay(void); static Eina_Bool _cb_acpi(void *data, int type, void *event); static E_Randr2_Screen*_screen_output_find(const char *out); static E_Randr2_Screen*_screen_id_find(const char *id); @@ -603,15 +602,6 @@ _cb_screen_change_delay(void *data EINA_UNUSED) return EINA_FALSE; } -static void -_screen_change_delay(void) -{ - // delay handling of screen shances as they can come in in a series over - // time and thus we can batch up responding to them by waiting 1.0 sec - if (_screen_delay_timer) ecore_timer_del(_screen_delay_timer); - _screen_delay_timer = ecore_timer_add(1.0, _cb_screen_change_delay, NULL); -} - static Eina_Bool _cb_acpi(void *data EINA_UNUSED, int type EINA_UNUSED, void *event) { @@ -625,10 +615,7 @@ _cb_acpi(void *data EINA_UNUSED, int type EINA_UNUSED, void *event) printf("RRR: lid event for lid %i\n", lid_closed); _lid_is_closed = lid_closed; if (!e_randr2_cfg->ignore_acpi_events) - { -event_screen = EINA_TRUE; -_screen_change_delay(); - } + e_randr2_screen_refresh_queue(EINA_TRUE); return EINA_TRUE; } @@ -1423,10 +1410,7 @@ _cb_screen_change(void *data EINA_UNUSED, int type EINA_UNUSED, void *event) ecore_x_randr_screen_current_size_get(ev->root, NULL, NULL, NULL, NULL); ecore_x_sync(); if (!e_randr2_cfg->ignore_hotplug_events) - { -event_screen = EINA_TRUE; -_screen_change_delay(); - } + e_randr2_screen_refresh_queue(EINA_TRUE); return EINA_TRUE; } @@ -1439,9 +1423,7 @@ _cb_crtc_change(void *data EINA_UNUSED, int type EINA_UNUSED, void *event) ecore_x_randr_screen_current_size_get(ev->win, NULL, NULL, NULL, NULL); ecore_x_sync(); if (!e_randr2_cfg->ignore_hotplug_events) - { -_screen_change_delay(); - } + e_randr2_screen_refresh_queue(EINA_FALSE); return EINA_TRUE; } @@ -1454,10 +1436,7 @@ _cb_output_change(void *data EINA_UNUSED, int type EINA_UNUSED, void *event) ecore_x_randr_screen_current_size_get(ev->win, NULL, NULL, NULL, NULL); ecore_x_sync(); if (!e_randr2_cfg->ignore_hotplug_events) - { -event_screen = EINA_TRUE; -_screen_change_delay(); - } + e_randr2_screen_refresh_queue(EINA_TRUE); return EINA_TRUE; } @@ -1722,3 +1701,15 @@ _screen_config_apply(void) // here if the randr config now doesnt match what we want to set up. // event_ignore = EINA_TRUE; } + +EAPI void +e_randr2_screen_refresh_queue(Eina_Bool lid_event) +{ + // delay handling of screen shances as they can come in in a series over + // time and thus we can batch up responding to them by waiting 1.0 sec + if (_screen_delay_timer) + ecore_timer_reset(_screen_delay_timer); + else + _screen_delay_timer = ecore_timer_add(1.0, _cb_screen_change_delay, NULL); + event_screen = !!lid_event; +} diff --git a/src/bin/e_randr2.h b/src/bin/e_randr2.h index 41480cc..f93762c 100644 --- a/src/bin/e_randr2.h +++ b/src/bin/e_randr2.h @@ -120,5 +120,6 @@ EAPIEina_Bool e_randr2_config_save(void); EAPIvoid e_randr2_config_apply(void); EAPIvoid e_randr2_screeninfo_update(void); +EAPI void e_randr2_screen_refresh_queue(Eina_Bool lid_event); #endif #endif --
[EGIT] [core/enlightenment] master 07/28: create e_comp during e_comp_init, set comp_type automatically
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=e1181c4d033e764fb7b4024ad707da588b2f80a6 commit e1181c4d033e764fb7b4024ad707da588b2f80a6 Author: Mike Blumenkrantz Date: Wed Apr 22 16:58:00 2015 -0400 create e_comp during e_comp_init, set comp_type automatically this simplifies comp creation slightly --- src/bin/e_comp.c| 16 +--- src/bin/e_comp_wl.c | 8 ++-- src/bin/e_comp_x.c | 2 -- src/modules/wl_drm/e_mod_main.c | 6 -- src/modules/wl_fb/e_mod_main.c | 11 ++- src/modules/wl_x11/e_mod_main.c | 31 --- 6 files changed, 29 insertions(+), 45 deletions(-) diff --git a/src/bin/e_comp.c b/src/bin/e_comp.c index ea37d52..5efd3ad 100644 --- a/src/bin/e_comp.c +++ b/src/bin/e_comp.c @@ -1016,6 +1016,8 @@ e_comp_init(void) actions = eina_list_append(actions, act); } + e_comp_new(); + e_comp->comp_type = E_PIXMAP_TYPE_NONE; { const char *eng; @@ -1026,12 +1028,17 @@ e_comp_init(void) snprintf(buf, sizeof(buf), "wl_%s", eng); if (e_module_enable(e_module_new(buf))) - goto out; + { +e_comp->comp_type = E_PIXMAP_TYPE_WL; +goto out; + } } } #ifndef HAVE_WAYLAND_ONLY - if (!e_comp_x_init()) + if (e_comp_x_init()) + e_comp->comp_type = E_PIXMAP_TYPE_X; + else #endif { const char **test, *eng[] = @@ -1050,7 +1057,10 @@ e_comp_init(void) for (test = eng; *test; test++) { if (e_module_enable(e_module_new(*test))) - goto out; + { + e_comp->comp_type = E_PIXMAP_TYPE_WL; + goto out; + } } return EINA_FALSE; } diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c index 719bcec..0977a8b 100644 --- a/src/bin/e_comp_wl.c +++ b/src/bin/e_comp_wl.c @@ -2309,12 +2309,8 @@ _e_comp_wl_compositor_create(void) int fd = 0; /* check for existing compositor. create if needed */ - if (!e_comp) - { -e_comp_new(); -e_comp->comp_type = E_PIXMAP_TYPE_WL; -E_OBJECT_DEL_SET(e_comp, _e_comp_wl_compositor_cb_del); - } + if (e_comp->comp_type == E_PIXMAP_TYPE_NONE) + E_OBJECT_DEL_SET(e_comp, _e_comp_wl_compositor_cb_del); /* create new compositor data */ if (!(cdata = E_NEW(E_Comp_Data, 1))) diff --git a/src/bin/e_comp_x.c b/src/bin/e_comp_x.c index e34fc98..569330c 100644 --- a/src/bin/e_comp_x.c +++ b/src/bin/e_comp_x.c @@ -5196,8 +5196,6 @@ _e_comp_x_screens_setup(void) if (!success) break; } if (!success) break; -e_comp_new(); -e_comp->comp_type = E_PIXMAP_TYPE_X; success = _e_comp_x_setup(root, rw, rh); if (!success) break; } diff --git a/src/modules/wl_drm/e_mod_main.c b/src/modules/wl_drm/e_mod_main.c index b6cf3cc..e6f1691 100644 --- a/src/modules/wl_drm/e_mod_main.c +++ b/src/modules/wl_drm/e_mod_main.c @@ -99,12 +99,6 @@ e_modapi_init(E_Module *m) /* return NULL; */ /* } */ - if (!e_comp) - { -e_comp_new(); -e_comp->comp_type = E_PIXMAP_TYPE_WL; - } - if (e_comp_config_get()->engine == E_COMP_ENGINE_GL) { e_comp->ee = ecore_evas_new("gl_drm", 0, 0, 1, 1, NULL); diff --git a/src/modules/wl_fb/e_mod_main.c b/src/modules/wl_fb/e_mod_main.c index 3a1c596..406dbe1 100644 --- a/src/modules/wl_fb/e_mod_main.c +++ b/src/modules/wl_fb/e_mod_main.c @@ -9,7 +9,6 @@ e_modapi_init(E_Module *m) { Ecore_Evas *ee; E_Screen *screen; - E_Comp *comp; int w, h; printf("LOAD WL_FB MODULE\n"); @@ -24,13 +23,7 @@ e_modapi_init(E_Module *m) ecore_fb_size_get(&w, &h); ee = ecore_evas_fb_new(NULL, 0, w, h); - if (!(comp = e_comp)) - { -comp = e_comp_new(); -comp->comp_type = E_PIXMAP_TYPE_WL; - } - - comp->ee = ee; + e_comp->ee = ee; if (!e_xinerama_fake_screens_exist()) { @@ -44,7 +37,7 @@ e_modapi_init(E_Module *m) } e_comp_canvas_init(w, h); e_comp_wl_init(); - comp->pointer = e_pointer_canvas_new(comp->ee, EINA_TRUE); + e_comp->pointer = e_pointer_canvas_new(e_comp->ee, EINA_TRUE); ecore_wl_init(NULL); ecore_wl_server_mode_set(1); diff --git a/src/modules/wl_x11/e_mod_main.c b/src/modules/wl_x11/e_mod_main.c index 7263893..8efd490 100644 --- a/src/modules/wl_x11/e_mod_main.c +++ b/src/modules/wl_x11/e_mod_main.c @@ -67,7 +67,6 @@ e_modapi_init(E_Module *m) { Ecore_Evas *ee; E_Screen *screen; - E_Comp *comp; int w = 0, h = 0; printf("LOAD WL_X11 MODULE\n"); @@ -75,20 +74,14 @@ e_modapi_init(E_Module *m) ee = ecore_evas_software_x11_new(NULL, 0, 0, 0, 1, 1); ecore_evas_callback_delete_request_set(ee, _cb_delete_request); - if (!(comp = e_comp)) - { -
[EGIT] [core/enlightenment] master 03/28: move acpi lid status tracking from e_randr to e_acpi
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=b4e65519d1f850b8f52497afe797cf1686d7daf9 commit b4e65519d1f850b8f52497afe797cf1686d7daf9 Author: Mike Blumenkrantz Date: Wed Apr 22 15:56:01 2015 -0400 move acpi lid status tracking from e_randr to e_acpi --- src/bin/e_acpi.c | 4 src/bin/e_randr2.c | 42 +++--- 2 files changed, 7 insertions(+), 39 deletions(-) diff --git a/src/bin/e_acpi.c b/src/bin/e_acpi.c index 62ea63c..07e0854 100644 --- a/src/bin/e_acpi.c +++ b/src/bin/e_acpi.c @@ -344,9 +344,13 @@ _e_acpi_cb_server_data(void *data EINA_UNUSED, int type EINA_UNUSED, void *event case E_ACPI_TYPE_LID: acpi_event->status = _e_acpi_lid_status_get(device, bus); + printf("RRR: acpi event\n"); /* no change in lid state */ if (lid_is_closed == (acpi_event->status == E_ACPI_LID_CLOSED)) break; lid_is_closed = (acpi_event->status == E_ACPI_LID_CLOSED); + printf("RRR: lid event for lid %i\n", lid_is_closed); + if (!e_randr2_cfg->ignore_acpi_events) +e_randr2_screen_refresh_queue(EINA_TRUE); break; default: diff --git a/src/bin/e_randr2.c b/src/bin/e_randr2.c index c2b65c7..f64e1d2 100644 --- a/src/bin/e_randr2.c +++ b/src/bin/e_randr2.c @@ -19,9 +19,7 @@ static E_Config_Randr2_Screen *_config_screen_find(E_Randr2_Screen *s, E_Config_ static int _config_screen_match_count(E_Randr2 *r, E_Config_Randr2 *cfg); static char *_screens_fingerprint(E_Randr2 *r); static Eina_Bool _screens_differ(E_Randr2 *r1, E_Randr2 *r2); -static void_cb_acpi_handler_add(void *data); static Eina_Bool _cb_screen_change_delay(void *data); -static Eina_Bool _cb_acpi(void *data, int type, void *event); static E_Randr2_Screen*_screen_output_find(const char *out); static E_Randr2_Screen*_screen_id_find(const char *id); static void_screen_config_takeover(void); @@ -33,8 +31,6 @@ static void_screen_config_maxsize(void); static E_Config_DD *_e_randr2_cfg_edd = NULL; static E_Config_DD *_e_randr2_cfg_screen_edd = NULL; static Eina_List *_ev_handlers = NULL; -static Eina_Bool _lid_is_closed = EINA_FALSE; -static Ecore_Job *_acpi_handler_add_job = NULL; static Ecore_Timer *_screen_delay_timer = NULL; static Eina_Bool event_screen = EINA_FALSE; static Eina_Bool event_ignore = EINA_FALSE; @@ -100,10 +96,6 @@ e_randr2_init(void) E_CONFIG_VAL(D, T, ignore_acpi_events, UCHAR); if (!E_EVENT_RANDR_CHANGE) E_EVENT_RANDR_CHANGE = ecore_event_type_new(); - // delay setting up acpi handler, as acpi is init'ed after randr - _acpi_handler_add_job = ecore_job_add(_cb_acpi_handler_add, NULL); - // get current lid status of a laptop - _lid_is_closed = (e_acpi_lid_status_get() == E_ACPI_LID_CLOSED); // set up events from the driver _output_events_listen(); // get current screen info @@ -136,9 +128,6 @@ e_randr2_shutdown(void) _screen_delay_timer = NULL; // stop listening to driver info _output_events_unlisten(); - // clean up acpi stuff - if (_acpi_handler_add_job) ecore_job_del(_acpi_handler_add_job); - _acpi_handler_add_job = NULL; // clear up all event handlers E_FREE_LIST(_ev_handlers, ecore_event_handler_del); // free up screen info @@ -188,7 +177,7 @@ static Eina_Bool _screen_closed(E_Randr2_Screen *s) { printf("RRR: check lid for %s...\n", s->info.name); - if (!_lid_is_closed) return EINA_FALSE; + if (!e_acpi_lid_is_closed()) return EINA_FALSE; if (s->info.is_lid) { printf("RRR: is closed lid\n"); @@ -493,14 +482,6 @@ _config_screen_match_count(E_Randr2 *r, E_Config_Randr2 *cfg) return count; } -static void -_cb_acpi_handler_add(void *data EINA_UNUSED) -{ - // add acpi handler in delayed job - E_LIST_HANDLER_APPEND(_ev_handlers, E_EVENT_ACPI, _cb_acpi, NULL); - _acpi_handler_add_job = NULL; -} - static char * _screens_fingerprint(E_Randr2 *r) { @@ -602,23 +583,6 @@ _cb_screen_change_delay(void *data EINA_UNUSED) return EINA_FALSE; } -static Eina_Bool -_cb_acpi(void *data EINA_UNUSED, int type EINA_UNUSED, void *event) -{ - E_Event_Acpi *ev = event; - Eina_Bool lid_closed; - - printf("RRR: acpi event\n"); - if (ev->type != E_ACPI_TYPE_LID) return EINA_TRUE; - lid_closed = (ev->status == E_ACPI_LID_CLOSED); - if (lid_closed == _lid_is_closed) return EINA_TRUE; - printf("RRR: lid event for lid %i\n", lid_closed); - _lid_is_closed = lid_closed; - if (!e_randr2_cfg->ignore_acpi_events) - e_randr2_screen_refresh_queue(EINA_TRUE); - return EINA_TRUE; -} - static E_Randr2_Screen * _screen_output_fi
[EGIT] [core/enlightenment] master 06/28: add E_PIXMAP_TYPE_NONE
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=de0b1b2d39f7fc7a17b32edfd69ff6fcdc7e8c04 commit de0b1b2d39f7fc7a17b32edfd69ff6fcdc7e8c04 Author: Mike Blumenkrantz Date: Wed Apr 22 16:57:47 2015 -0400 add E_PIXMAP_TYPE_NONE null type currently only used during comp init --- src/bin/e_pixmap.c | 1 + src/bin/e_pixmap.h | 1 + 2 files changed, 2 insertions(+) diff --git a/src/bin/e_pixmap.c b/src/bin/e_pixmap.c index 0e04bc6..eff8887 100644 --- a/src/bin/e_pixmap.c +++ b/src/bin/e_pixmap.c @@ -245,6 +245,7 @@ e_pixmap_new(E_Pixmap_Type type, ...) eina_hash_add(pixmaps[type], &id, cp); #endif break; + default: break; } va_end(l); return cp; diff --git a/src/bin/e_pixmap.h b/src/bin/e_pixmap.h index 1bf3878..3ee277e 100644 --- a/src/bin/e_pixmap.h +++ b/src/bin/e_pixmap.h @@ -6,6 +6,7 @@ typedef enum { E_PIXMAP_TYPE_X, E_PIXMAP_TYPE_WL, + E_PIXMAP_TYPE_NONE, } E_Pixmap_Type; #else --
[EGIT] [core/enlightenment] master 10/28: fix wl-x11 configure detection/check
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=825dbfdb0b2918b8889ff3177ee2273cc06e9681 commit 825dbfdb0b2918b8889ff3177ee2273cc06e9681 Author: Mike Blumenkrantz Date: Wed Apr 22 17:30:44 2015 -0400 fix wl-x11 configure detection/check previous check would not allow compiling against ecore-x which would prevent such a compositor from being able to manage its own xserver --- configure.ac | 19 +-- 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/configure.ac b/configure.ac index c29d9ba..b8752da 100644 --- a/configure.ac +++ b/configure.ac @@ -857,11 +857,18 @@ else ecore_x=false fi -if test "x${ecore_x}" = "xtrue" && test -n "$WAYLAND_CFLAGS" ; then - wl_x11=true -else - wl_x11=false -fi +define([CHECK_MODULE_WL_X11], +[ + if test "x${have_wayland_only}" = "xyes" ; then +PKG_CHECK_MODULES([ECORE_X], [ecore-x >= ${efl_version}]) + fi + if test "x${have_wayland_clients}" = "xyes" || test "x${have_wayland_only}" = "xyes"; then +AC_E_CHECK_PKG(WL_X11, [ ecore-x >= $efl_version ], [WL_X11=true], [WL_X11=false]) + else +WL_X11=false + fi +]) +AM_CONDITIONAL([HAVE_WL_X11], [test "x${WL_X11}" = "xtrue"]) define([CHECK_MODULE_WL_DESKTOP_SHELL], [ @@ -943,7 +950,7 @@ AC_E_OPTIONAL_MODULE([tiling], true) AC_E_OPTIONAL_MODULE([music_control], true, [CHECK_MODULE_MUSIC_CONTROL]) AC_E_OPTIONAL_MODULE([packagekit], true) AC_E_OPTIONAL_MODULE([wl_desktop_shell], $have_wayland, [CHECK_MODULE_WL_DESKTOP_SHELL]) -AC_E_OPTIONAL_MODULE([wl_x11], $have_wayland, $wl_x11) +AC_E_OPTIONAL_MODULE([wl_x11], $have_wayland, [CHECK_MODULE_WL_X11]) AC_E_OPTIONAL_MODULE([wl_fb], $have_wayland, [CHECK_MODULE_WL_FB]) AC_E_OPTIONAL_MODULE([wl_drm], $have_wayland, [CHECK_MODULE_WL_DRM]) #AC_E_OPTIONAL_MODULE([wl_screenshot], true, [CHECK_MODULE_WL_SCREENSHOT]) --
[EGIT] [core/enlightenment] master 01/28: add e_acpi_lid_is_closed() for returning cached state of computer lid
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=98068e9b9c995a550035fed766fa176c4ed9e364 commit 98068e9b9c995a550035fed766fa176c4ed9e364 Author: Mike Blumenkrantz Date: Wed Apr 22 15:50:05 2015 -0400 add e_acpi_lid_is_closed() for returning cached state of computer lid --- src/bin/e_acpi.c | 12 src/bin/e_acpi.h | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/bin/e_acpi.c b/src/bin/e_acpi.c index 09379bc..62ea63c 100644 --- a/src/bin/e_acpi.c +++ b/src/bin/e_acpi.c @@ -53,6 +53,7 @@ static int _e_acpi_events_frozen = 0; static Ecore_Con_Server *_e_acpid = NULL; static Eina_List *_e_acpid_hdls = NULL; static Eina_Strbuf *acpibuf = NULL; +static int lid_is_closed = -1; static E_ACPI_Device_Simple _devices_simple[] = { @@ -191,6 +192,14 @@ e_acpi_lid_status_get(void) return E_ACPI_LID_UNKNOWN; } +EINTERN Eina_Bool +e_acpi_lid_is_closed(void) +{ + if (lid_is_closed == -1) + lid_is_closed = (e_acpi_lid_status_get() == E_ACPI_LID_CLOSED); + return lid_is_closed; +} + EAPI void e_acpi_events_freeze(void) { @@ -335,6 +344,9 @@ _e_acpi_cb_server_data(void *data EINA_UNUSED, int type EINA_UNUSED, void *event case E_ACPI_TYPE_LID: acpi_event->status = _e_acpi_lid_status_get(device, bus); + /* no change in lid state */ + if (lid_is_closed == (acpi_event->status == E_ACPI_LID_CLOSED)) break; + lid_is_closed = (acpi_event->status == E_ACPI_LID_CLOSED); break; default: diff --git a/src/bin/e_acpi.h b/src/bin/e_acpi.h index 50440c1..f8a5481 100644 --- a/src/bin/e_acpi.h +++ b/src/bin/e_acpi.h @@ -72,7 +72,7 @@ EINTERN int e_acpi_init(void); EINTERN int e_acpi_shutdown(void); EINTERN E_Acpi_Lid_Status e_acpi_lid_status_get(void); - +EINTERN Eina_Bool e_acpi_lid_is_closed(void); EAPI void e_acpi_events_freeze(void); EAPI void e_acpi_events_thaw(void); --
[EGIT] [website/www-content] master 01/01: Wiki page about changed with summary [add icon links to projects at top of about page] by Raster
WWW-www.enlightenment.org pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=e4ecf4203cb707cb388086e264e85d042956e4a1 commit e4ecf4203cb707cb388086e264e85d042956e4a1 Author: Raster Date: Wed Apr 22 18:20:55 2015 -0700 Wiki page about changed with summary [add icon links to projects at top of about page] by Raster --- pages/about.txt | 11 ++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pages/about.txt b/pages/about.txt index b70e0ed..ad7 100644 --- a/pages/about.txt +++ b/pages/about.txt @@ -1,4 +1,12 @@ ~~Title: About~~ + +[[about-enlightenment|{{:icon-enlightenment.png|Enlightenment}}]] +[[about-efl|{{:efl-core.png|EFL}}]] +[[about-terminology|{{:icon-terminology.png|Terminology}}]] +[[about-rage|{{:icon-rage.png|Rage}}]] + + + More than a Window Manager Long ago Enlightenment was just a project to make a Window Manager for @@ -12,6 +20,7 @@ their environment. === Enlightenment === +{{:icon-enlightenment.png?nolink |Enlightenment}} {{ :shot-enlightenment.png?nolink&480|Enlightenment Sample screenshot}} The original reason Enlightenment exists - The Window Manager. From @@ -166,4 +175,4 @@ See [[about-rage|the Rage page]] for more details. === Media === If you want media like offical logos, screenshots etc. please see -[[media|our media page]] for details. +[[media|our media page]] for details. \ No newline at end of file --
[EGIT] [website/www-content] master 01/01: www e icon - update to higher res
raster pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=f556e2bde9ea15d743e4a38f6c2fe551601cd71b commit f556e2bde9ea15d743e4a38f6c2fe551601cd71b Author: Carsten Haitzler (Rasterman) Date: Thu Apr 23 10:12:30 2015 +0900 www e icon - update to higher res --- media/icon-enlightenment.png | Bin 3546 -> 10877 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/media/icon-enlightenment.png b/media/icon-enlightenment.png index 6a50872..8b10bb9 100644 Binary files a/media/icon-enlightenment.png and b/media/icon-enlightenment.png differ --
[EGIT] [apps/rage] master 01/01: rage - fix copying to say it's for rage, not terminology :)
raster pushed a commit to branch master. http://git.enlightenment.org/apps/rage.git/commit/?id=1ed1945a400407f64d64a44004b552e31f8b3963 commit 1ed1945a400407f64d64a44004b552e31f8b3963 Author: Carsten Haitzler (Rasterman) Date: Thu Apr 23 10:12:56 2015 +0900 rage - fix copying to say it's for rage, not terminology :) --- COPYING | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/COPYING b/COPYING index 198ac3d..a278c22 100644 --- a/COPYING +++ b/COPYING @@ -1,4 +1,4 @@ -Copyright notice for Terminology: +Copyright notice for Rage: Copyright (C) 2014 Carsten Haitzler and various contributors (see AUTHORS) --
[EGIT] [core/efl] master 01/01: ecore-drm: fix uninitialized output mode pointers when creating outputs
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=c8c9da3e197ac1e8f8d47735088473ee7eb9d957 commit c8c9da3e197ac1e8f8d47735088473ee7eb9d957 Author: Mike Blumenkrantz Date: Wed Apr 22 21:11:51 2015 -0400 ecore-drm: fix uninitialized output mode pointers when creating outputs --- src/lib/ecore_drm/ecore_drm_output.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/ecore_drm/ecore_drm_output.c b/src/lib/ecore_drm/ecore_drm_output.c index b59a66b..c07efc6 100644 --- a/src/lib/ecore_drm/ecore_drm_output.c +++ b/src/lib/ecore_drm/ecore_drm_output.c @@ -400,7 +400,7 @@ _ecore_drm_output_create(Ecore_Drm_Device *dev, drmModeRes *res, drmModeConnecto drmModeCrtc *crtc; drmModeEncoder *enc; drmModeModeInfo crtc_mode; - Ecore_Drm_Output_Mode *mode, *current, *preferred, *best; + Ecore_Drm_Output_Mode *mode, *current = NULL, *preferred = NULL, *best = NULL; Eina_List *l; /* try to find a crtc for this connector */ --
[EGIT] [website/www-content] master 01/01: Wiki page about-rage changed with summary [] by Raster
WWW-www.enlightenment.org pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=2489b6c69edaf9f4d4a500d19260f99e567ab11d commit 2489b6c69edaf9f4d4a500d19260f99e567ab11d Author: Raster Date: Wed Apr 22 18:03:57 2015 -0700 Wiki page about-rage changed with summary [] by Raster --- pages/about-rage.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pages/about-rage.txt b/pages/about-rage.txt index 60ca047..fa25368 100644 --- a/pages/about-rage.txt +++ b/pages/about-rage.txt @@ -3,6 +3,8 @@ [[download|Download Rage Here]] +Code quality - [[https://scan.coverity.com/projects/4920|Coverity scan status]] + {{:icon-rage.png?nolink |}} Rage is a video and audio player written with Enlightenment Foundation --
[EGIT] [website/www-content] master 01/01: Wiki page about-enlightenment changed with summary [add coverity scan status link] by Raster
WWW-www.enlightenment.org pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=48e6872a592ea76235e174e1e5165e50d4317413 commit 48e6872a592ea76235e174e1e5165e50d4317413 Author: Raster Date: Wed Apr 22 17:57:37 2015 -0700 Wiki page about-enlightenment changed with summary [add coverity scan status link] by Raster --- pages/about-enlightenment.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pages/about-enlightenment.txt b/pages/about-enlightenment.txt index 2e5aa2e..2974879 100644 --- a/pages/about-enlightenment.txt +++ b/pages/about-enlightenment.txt @@ -3,6 +3,8 @@ [[download|Download Enlightenment Here]] +Code quality - [[https://scan.coverity.com/projects/554|Coverity scan status]] + {{:icon-enlightenment.png?nolink |}} Enlightenment (0.17+) (a.k.a E17) is the next generation of @@ -336,4 +338,3 @@ regular basis. We bake options-cakes and hand them out at parties. Options are good. Options are awesome. We have lots of them. Spend some quality time getting to know your new garden of options in E17. It may just finally give you the control you have been pining for. - --
[EGIT] [website/www-content] master 01/01: Wiki page about-efl changed with summary [add coverity scan status link] by Raster
WWW-www.enlightenment.org pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=e7bc866d15478b466510dc74f3ff236c0e7d1cb1 commit e7bc866d15478b466510dc74f3ff236c0e7d1cb1 Author: Raster Date: Wed Apr 22 17:57:43 2015 -0700 Wiki page about-efl changed with summary [add coverity scan status link] by Raster --- pages/about-efl.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pages/about-efl.txt b/pages/about-efl.txt index f86bd3e..320cde8 100644 --- a/pages/about-efl.txt +++ b/pages/about-efl.txt @@ -3,6 +3,8 @@ [[download|Download EFL Here]] +Code quality - [[https://scan.coverity.com/projects/552|EFL Coverity scan status]] - [[https://scan.coverity.com/projects/553|Elementary Coverity scan status]] + {{:efl-core.png?nolink |}} EFL is made up of quite a few libraries that build on top of each other --
[EGIT] [website/www-content] master 01/01: Wiki page about-terminology changed with summary [add coverity scan status link] by Raster
WWW-www.enlightenment.org pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=39f78ee0bf47e136d871dda8c3b3956b964745ef commit 39f78ee0bf47e136d871dda8c3b3956b964745ef Author: Raster Date: Wed Apr 22 17:57:47 2015 -0700 Wiki page about-terminology changed with summary [add coverity scan status link] by Raster --- pages/about-terminology.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pages/about-terminology.txt b/pages/about-terminology.txt index 8222675..1117501 100644 --- a/pages/about-terminology.txt +++ b/pages/about-terminology.txt @@ -3,6 +3,8 @@ [[download|Download Terminology Here]] +Code quality - [[https://scan.coverity.com/projects/889|Coverity scan status]] + {{:icon-terminology.png?nolink |}} {{ :terminology-ls.png?&200|}} @@ -152,4 +154,3 @@ added all the time, and this may not represent everything you can do today. {{youtube>ibPziLRGvkg?large}} - --
[EGIT] [core/efl] master 01/02: efreet: fix leak in efreet_util_desktop_exec_find()
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=3571e7364eb4fa40769c9e897d8d48bde9272b4b commit 3571e7364eb4fa40769c9e897d8d48bde9272b4b Author: Mike Blumenkrantz Date: Wed Apr 22 15:32:49 2015 -0400 efreet: fix leak in efreet_util_desktop_exec_find() @fix --- src/lib/efreet/efreet_utils.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/lib/efreet/efreet_utils.c b/src/lib/efreet/efreet_utils.c index 2f59272..809d738 100644 --- a/src/lib/efreet/efreet_utils.c +++ b/src/lib/efreet/efreet_utils.c @@ -192,8 +192,7 @@ efreet_util_desktop_exec_find(const char *exec) exe = ecore_file_app_exe_get(names->array[i]); if (!exe) continue; file = ecore_file_file_get(exe); -if (!file) continue; -if (strcmp(exec, exe) && strcmp(exec, file)) +if ((!file) || (strcmp(exec, exe) && strcmp(exec, file))) { free(exe); continue; --
[EGIT] [core/efl] master 02/02: ecore-drm: fix ecore_drm_devices_get() to return a const value
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=4e7549683b274b5c1f86122d9a036b948e417b98 commit 4e7549683b274b5c1f86122d9a036b948e417b98 Author: Mike Blumenkrantz Date: Wed Apr 22 19:34:19 2015 -0400 ecore-drm: fix ecore_drm_devices_get() to return a const value this is the internal device list, we're pretty hosed if someone decides to free it because there's no const --- src/lib/ecore_drm/Ecore_Drm.h| 2 +- src/lib/ecore_drm/ecore_drm_device.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lib/ecore_drm/Ecore_Drm.h b/src/lib/ecore_drm/Ecore_Drm.h index 8e837e0..e3620df 100644 --- a/src/lib/ecore_drm/Ecore_Drm.h +++ b/src/lib/ecore_drm/Ecore_Drm.h @@ -746,6 +746,6 @@ EAPI void ecore_drm_device_pointer_xy_get(Ecore_Drm_Device *dev, int *x, int *y) * @ingroup Ecore_Drm_Device_Group * @since 1.14 */ -EAPI Eina_List *ecore_drm_devices_get(void); +EAPI const Eina_List *ecore_drm_devices_get(void); #endif diff --git a/src/lib/ecore_drm/ecore_drm_device.c b/src/lib/ecore_drm/ecore_drm_device.c index 6eaf418..f0908e2 100644 --- a/src/lib/ecore_drm/ecore_drm_device.c +++ b/src/lib/ecore_drm/ecore_drm_device.c @@ -353,7 +353,7 @@ ecore_drm_device_close(Ecore_Drm_Device *dev) return EINA_TRUE; } -EAPI Eina_List * +EAPI const Eina_List * ecore_drm_devices_get(void) { return drm_devices; --
[EGIT] [core/enlightenment] master 01/01: update wl shell parent setting code to use clients instead of pixmaps
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=f843b48eb235f541cf98bd2417abe4192fe75717 commit f843b48eb235f541cf98bd2417abe4192fe75717 Author: Mike Blumenkrantz Date: Wed Apr 22 14:54:49 2015 -0400 update wl shell parent setting code to use clients instead of pixmaps ref T2354 --- src/modules/wl_desktop_shell/e_mod_main.c | 12 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/modules/wl_desktop_shell/e_mod_main.c b/src/modules/wl_desktop_shell/e_mod_main.c index b42fb62..ba57527 100644 --- a/src/modules/wl_desktop_shell/e_mod_main.c +++ b/src/modules/wl_desktop_shell/e_mod_main.c @@ -8,7 +8,6 @@ static void _e_shell_surface_parent_set(E_Client *ec, struct wl_resource *parent_resource) { - E_Pixmap *pp; E_Client *pc; uint64_t pwin = 0; @@ -25,16 +24,13 @@ _e_shell_surface_parent_set(E_Client *ec, struct wl_resource *parent_resource) } return; } - else if (!(pp = wl_resource_get_user_data(parent_resource))) + else if (!(pc = wl_resource_get_user_data(parent_resource))) { -ERR("Could not get parent resource pixmap"); +ERR("Could not get parent resource client"); return; } - pwin = e_pixmap_window_get(pp); - - /* find the parent client */ - pc = e_pixmap_client_get(pp); + pwin = e_pixmap_window_get(pc->pixmap); e_pixmap_parent_window_set(ec->pixmap, pwin); @@ -52,7 +48,7 @@ _e_shell_surface_parent_set(E_Client *ec, struct wl_resource *parent_resource) pc = NULL; } - if ((pc) && (pc != ec) && + if ((pc != ec) && (eina_list_data_find(pc->transients, ec) != ec)) { pc->transients = eina_list_append(pc->transients, ec); --
[EGIT] [core/efl] master 01/01: ecore_drm: Don't crash if a device is assigned a bad output
devilhorns pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=67460e2d78c88f525f15620ae7a583b21fc997d4 commit 67460e2d78c88f525f15620ae7a583b21fc997d4 Author: Derek Foreman Date: Wed Apr 22 14:32:16 2015 -0400 ecore_drm: Don't crash if a device is assigned a bad output Summary: If an input device is assigned via udev to an output that we can't find we just assign it to the first output instead. Reviewers: zmike, devilhorns Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D2408 --- src/lib/ecore_drm/ecore_drm_evdev.c | 20 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/src/lib/ecore_drm/ecore_drm_evdev.c b/src/lib/ecore_drm/ecore_drm_evdev.c index 9f46516..04275fd 100644 --- a/src/lib/ecore_drm/ecore_drm_evdev.c +++ b/src/lib/ecore_drm/ecore_drm_evdev.c @@ -65,20 +65,16 @@ _device_output_set(Ecore_Drm_Evdev *edev) DBG("Device Has Output Name: %s", oname); EINA_LIST_FOREACH(input->dev->outputs, l, output) - { - if ((output->name) && (!strcmp(output->name, oname))) - { - edev->output = output; - break; - } - } - } - else - { -if (!(output = eina_list_nth(input->dev->outputs, 0))) return; -edev->output = output; + if ((output->name) && (!strcmp(output->name, oname))) break; } + if (!output) + output = eina_list_nth(input->dev->outputs, 0); + + if (!output) return; + + edev->output = output; + if (libinput_device_has_capability(edev->device, LIBINPUT_DEVICE_CAP_POINTER)) { --
[EGIT] [core/elementary] master 01/01: tests/elm_test_image: Give a proper path to test images
stefan pushed a commit to branch master. http://git.enlightenment.org/core/elementary.git/commit/?id=1ff7158dab3122d9908fc5090fff0a8aa82ea898 commit 1ff7158dab3122d9908fc5090fff0a8aa82ea898 Author: Stefan Schmidt Date: Wed Apr 22 17:08:59 2015 +0200 tests/elm_test_image: Give a proper path to test images ../../ does not always work. VPATH builds like distcheck have a different dir layout. ref T2028 --- src/tests/Makefile.am | 2 ++ src/tests/elm_test_image.c | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/tests/Makefile.am b/src/tests/Makefile.am index 185669c..551a255 100644 --- a/src/tests/Makefile.am +++ b/src/tests/Makefile.am @@ -76,6 +76,7 @@ elm_suite_SOURCES = \ elm_suite_CPPFLAGS = \ -DTESTS_BUILD_DIR=\"${top_builddir}/src/tests\" \ + -DELM_IMAGE_DATA_DIR=\"${top_srcdir}/data\" \ -I$(top_srcdir)/src/lib \ -I$(top_builddir)/src/lib \ @CHECK_CFLAGS@ \ @@ -93,6 +94,7 @@ check_PROGRAMS += elm_cxx_suite elm_cxx_suite_SOURCES = elm_cxx_suite.cc elm_cxx_suite_CPPFLAGS = \ -DTESTS_BUILD_DIR=\"${top_builddir}/src/tests\" \ + -DELM_IMAGE_DATA_DIR=\"${top_srcdir}/data\" \ -I$(top_srcdir)/src/lib \ -I$(top_builddir)/src/lib \ @CHECK_CFLAGS@ \ diff --git a/src/tests/elm_test_image.c b/src/tests/elm_test_image.c index 714689a..2d075f7 100644 --- a/src/tests/elm_test_image.c +++ b/src/tests/elm_test_image.c @@ -6,7 +6,7 @@ #include #include "elm_suite.h" -static const char pathfmt[] = "../../data/images/icon_%02d.png"; +static const char pathfmt[] = ELM_IMAGE_DATA_DIR"/images/icon_%02d.png"; static const char invalid[] = "thereisnosuchimage.png"; #define MAX_IMAGE_ID 23 --
[EGIT] [core/enlightenment] master 01/01: e-comp-wl: Init randr if we are not wayland only
devilhorns pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=57611c6d2f0e69c6de4acf9130f47948ce7181fc commit 57611c6d2f0e69c6de4acf9130f47948ce7181fc Author: Chris Michael Date: Wed Apr 22 10:29:42 2015 -0400 e-comp-wl: Init randr if we are not wayland only This is needed for the wl-x11 module Signed-off-by: Chris Michael --- src/bin/e_comp_wl.c | 4 1 file changed, 4 insertions(+) diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c index 4b8be36..719bcec 100644 --- a/src/bin/e_comp_wl.c +++ b/src/bin/e_comp_wl.c @@ -710,6 +710,8 @@ _e_comp_wl_cb_randr_change(void *data EINA_UNUSED, int type EINA_UNUSED, void *e E_Randr2_Screen *screen; unsigned int transform = WL_OUTPUT_TRANSFORM_NORMAL; + if (!e_randr2) return ECORE_CALLBACK_RENEW; + EINA_LIST_FOREACH(e_randr2->screens, l, screen) { if (!screen->config.enabled) continue; @@ -2503,6 +2505,8 @@ e_comp_wl_init(void) /* add event handlers to catch E events */ #ifndef HAVE_WAYLAND_ONLY + if (!e_randr2_init()) return EINA_FALSE; + E_LIST_HANDLER_APPEND(handlers, E_EVENT_RANDR_CHANGE, _e_comp_wl_cb_randr_change, NULL); #endif --
[EGIT] [core/enlightenment] master 01/02: Revert "wl-drm: Set initial compositor pointer values base on ecore_evas_pointer_position"
devilhorns pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=37223908a6a5fad265d9a6571cf777590d480f6c commit 37223908a6a5fad265d9a6571cf777590d480f6c Author: Chris Michael Date: Wed Apr 22 10:41:13 2015 -0400 Revert "wl-drm: Set initial compositor pointer values base on ecore_evas_pointer_position" This reverts commit 16e9126302c3a95f84921b62dbe547b1c112cd2f. Reverting this due to crash --- src/modules/wl_drm/e_mod_main.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/modules/wl_drm/e_mod_main.c b/src/modules/wl_drm/e_mod_main.c index 0891603..ab7c3ed 100644 --- a/src/modules/wl_drm/e_mod_main.c +++ b/src/modules/wl_drm/e_mod_main.c @@ -139,9 +139,6 @@ e_modapi_init(E_Module *m) ecore_evas_callback_resize_set(e_comp->ee, _e_mod_drm_cb_ee_resize); - ecore_evas_pointer_xy_get(e_comp->ee, &e_comp->wl_comp_data->ptr.x, - &e_comp->wl_comp_data->ptr.y); - if (!e_xinerama_fake_screens_exist()) { E_Screen *screen; --
[EGIT] [core/enlightenment] master 02/02: wl-drm: We need to set the compositor pointer values After wl_comp_data has been created else we crash
devilhorns pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=57191576db1cd48865fad58e8ce9edd59d5d8d8a commit 57191576db1cd48865fad58e8ce9edd59d5d8d8a Author: Chris Michael Date: Wed Apr 22 10:42:33 2015 -0400 wl-drm: We need to set the compositor pointer values After wl_comp_data has been created else we crash Signed-off-by: Chris Michael --- src/modules/wl_drm/e_mod_main.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/modules/wl_drm/e_mod_main.c b/src/modules/wl_drm/e_mod_main.c index ab7c3ed..b6cf3cc 100644 --- a/src/modules/wl_drm/e_mod_main.c +++ b/src/modules/wl_drm/e_mod_main.c @@ -157,6 +157,9 @@ e_modapi_init(E_Module *m) /* NB: This needs to be called AFTER the comp canvas has been setup */ if (!e_comp_wl_init()) return NULL; + ecore_evas_pointer_xy_get(e_comp->ee, &e_comp->wl_comp_data->ptr.x, + &e_comp->wl_comp_data->ptr.y); + e_comp_wl_input_pointer_enabled_set(e_comp->wl_comp_data, EINA_TRUE); e_comp_wl_input_keyboard_enabled_set(e_comp->wl_comp_data, EINA_TRUE); --
[EGIT] [core/efl] master 01/01: eina thread_queue: fix typo in doc.
hermet pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=0d1d62a6ab35ab22bd873dafffbf5b1469e4572e commit 0d1d62a6ab35ab22bd873dafffbf5b1469e4572e Author: ChunEon Park Date: Wed Apr 22 23:11:24 2015 +0900 eina thread_queue: fix typo in doc. --- src/lib/eina/eina_thread_queue.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lib/eina/eina_thread_queue.h b/src/lib/eina/eina_thread_queue.h index b23ca19..dc01917 100644 --- a/src/lib/eina/eina_thread_queue.h +++ b/src/lib/eina/eina_thread_queue.h @@ -17,7 +17,7 @@ * * This is a uni-directional zero-copy thread message queue specifically * designed with the idea of sending large volumes of messages with no - * copies from one thread to another (or from/to the mainloop). The ides + * copies from one thread to another (or from/to the mainloop). The idea * is that a thread queue is created and then one or more threads send * messages in one end and fetch messages on the other end. If you set a * parent message queue to 1 or more queues, then this parent will wake up @@ -92,7 +92,7 @@ eina_thread_queue_free(Eina_Thread_Queue *thq) EINA_ARG_NONNULL(1); /** * @brief Allocate a message to send down a thread queue * - * @param thq The thred queue to allocate the message on + * @param thq The thread queue to allocate the message on * @param size The size, in bytes, of the message, including standard header * @param allocref A pointer to store a general reference handle for the message * @return A pointer to the message data to fill in --
[EGIT] [core/enlightenment] master 01/01: wl-drm: Set initial compositor pointer values base on ecore_evas_pointer_position
devilhorns pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=16e9126302c3a95f84921b62dbe547b1c112cd2f commit 16e9126302c3a95f84921b62dbe547b1c112cd2f Author: Chris Michael Date: Wed Apr 22 09:41:23 2015 -0400 wl-drm: Set initial compositor pointer values base on ecore_evas_pointer_position This addresses the issue of initial compositor pointer values not being proper. They are 0,0 on startup, however things like ecore_drm will center the mouse on startup. The e_comp pointer values should reflect this. Signed-off-by: Chris Michael --- src/modules/wl_drm/e_mod_main.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/modules/wl_drm/e_mod_main.c b/src/modules/wl_drm/e_mod_main.c index ab7c3ed..0891603 100644 --- a/src/modules/wl_drm/e_mod_main.c +++ b/src/modules/wl_drm/e_mod_main.c @@ -139,6 +139,9 @@ e_modapi_init(E_Module *m) ecore_evas_callback_resize_set(e_comp->ee, _e_mod_drm_cb_ee_resize); + ecore_evas_pointer_xy_get(e_comp->ee, &e_comp->wl_comp_data->ptr.x, + &e_comp->wl_comp_data->ptr.y); + if (!e_xinerama_fake_screens_exist()) { E_Screen *screen; --
[EGIT] [core/efl] master 01/01: efl: Move test for gl library to evas-gl-drm engine checks and Fix T2167
devilhorns pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=64d11ec8063064570c38b61d288db18596cb41d0 commit 64d11ec8063064570c38b61d288db18596cb41d0 Author: Chris Michael Date: Wed Apr 22 09:19:07 2015 -0400 efl: Move test for gl library to evas-gl-drm engine checks and Fix T2167 Summary: Since we won't need gl library unless we are building evas-gl-drm engine, move the checks for with_opengl config option to the gl_drm engine checking macro. Also, since gl_drm is ONLY supported if we have --with-opengl=es configure option, let's error out with a message if someone passes anything Other than with_opengl=es. @fix Signed-off-by: Chris Michael --- m4/evas_check_engine.m4 | 29 + 1 file changed, 5 insertions(+), 24 deletions(-) diff --git a/m4/evas_check_engine.m4 b/m4/evas_check_engine.m4 index 5dc333f..8165aa2 100644 --- a/m4/evas_check_engine.m4 +++ b/m4/evas_check_engine.m4 @@ -601,24 +601,7 @@ have_hw_dep="no" evas_engine_[]$1[]_cflags="" evas_engine_[]$1[]_libs="" -if test "x${with_opengl}" = "xes" ; then -gl_library="glesv2" -else -gl_library="gl" -fi - if test "x${have_dep}" = "xyes" ; then - AC_MSG_CHECKING([whether to enable Drm hardware acceleration]) - if test "x${want_drm_hw_accel}" = "xyes" ; then -PKG_CHECK_EXISTS([egl >= 7.10 ${gl_library}], - [ - have_hw_dep="yes" - requirement="egl >= 7.10 ${gl_library}" - ], - [have_hw_dep="no"]) - fi - AC_MSG_RESULT([${have_hw_dep}]) - if test "x$3" = "xstatic" ; then requirements_pc_evas="${requirement} ${requirements_pc_evas}" requirements_pc_deps_evas="${requirement} ${requirements_pc_deps_evas}" @@ -628,12 +611,6 @@ if test "x${have_dep}" = "xyes" ; then fi fi -if test "x${have_hw_dep}" = "xyes" ; then - AC_DEFINE(HAVE_DRM_HW_ACCEL, [1], - [Enabled drm hardware accelerated rendering]) -fi - - AC_SUBST([evas_engine_$1_cflags]) AC_SUBST([evas_engine_$1_libs]) @@ -652,7 +629,11 @@ have_hw_dep="no" evas_engine_[]$1[]_cflags="" evas_engine_[]$1[]_libs="" -gl_library="glesv2" +if test "x${with_opengl}" = "xes" ; then + gl_library="glesv2" +else + AC_MSG_ERROR([We currently do not support GL DRM without OpenGL ES. Please consider OpenGL ES if you want to use it.]) +fi PKG_CHECK_EXISTS([egl >= 7.10 ${gl_library} gbm wayland-client >= 1.3.0], [ --
[EGIT] [core/efl] master 07/10: ecore_con: add another test case to cover remaining functions in ecore_con_eet.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=f4453bc00b9c27eb4d32b683dde9af000674dd9b commit f4453bc00b9c27eb4d32b683dde9af000674dd9b Author: Srivardhan Hebbar Date: Wed Apr 22 14:52:28 2015 +0200 ecore_con: add another test case to cover remaining functions in ecore_con_eet. Summary: When I checked the Jenkins report, I saw few of the functions were left off. So added another case and modified the existing case to cover all the functions or ecore_con_eet. Signed-off-by: Srivardhan Hebbar Reviewers: cedric Reviewed By: cedric Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D2383 Signed-off-by: Cedric BAIL --- src/tests/ecore_con/ecore_con_test_ecore_con_eet.c | 132 + 1 file changed, 109 insertions(+), 23 deletions(-) diff --git a/src/tests/ecore_con/ecore_con_test_ecore_con_eet.c b/src/tests/ecore_con/ecore_con_test_ecore_con_eet.c index d981a93..a9ce4b4 100644 --- a/src/tests/ecore_con/ecore_con_test_ecore_con_eet.c +++ b/src/tests/ecore_con/ecore_con_test_ecore_con_eet.c @@ -43,7 +43,7 @@ _ece_test_descriptor_shutdown(void) eet_data_descriptor_free(_ece_test_descriptor); } -Eina_Bool +static Eina_Bool _eet_client_discnct_cb(void *data EINA_UNUSED, Ecore_Con_Reply *reply EINA_UNUSED, Ecore_Con_Client *conn EINA_UNUSED) { ecore_main_loop_quit(); @@ -51,7 +51,7 @@ _eet_client_discnct_cb(void *data EINA_UNUSED, Ecore_Con_Reply *reply EINA_UNUSE return EINA_FALSE; } -Eina_Bool +static Eina_Bool _eet_client_cnct_cb(void *data EINA_UNUSED, Ecore_Con_Reply *reply, Ecore_Con_Client *conn EINA_UNUSED) { char *ec_eet_data; @@ -79,36 +79,45 @@ _eet_data_cb(void *data EINA_UNUSED, Ecore_Con_Reply *reply, const char *protoco strlen(toSend)); } -Eina_Bool -_eet_svr_discnct_cb(void *data EINA_UNUSED, Ecore_Con_Reply *reply EINA_UNUSED, Ecore_Con_Client *conn EINA_UNUSED) -{ - ecore_main_loop_quit(); - return EINA_FALSE; -} - -Eina_Bool -_eet_svr_cnct_cb(void *data EINA_UNUSED, Ecore_Con_Reply *reply, Ecore_Con_Client *conn EINA_UNUSED) +static Eina_Bool +_eet_svr_cnct_cb(void *data, Ecore_Con_Reply *reply, Ecore_Con_Client *conn EINA_UNUSED) { + int *i = data; ECE_Test toSend = {1, CLI_MSG}; + char rawMsg[] = CLI_MSG; + + if (*i) + ecore_con_eet_send(reply, TEST_STREAM, &toSend); + else + ecore_con_eet_raw_send(reply, TEST_STREAM, "message", rawMsg, +strlen(rawMsg)); - ecore_con_eet_send(reply, TEST_STREAM, &toSend); return EINA_TRUE; } static void -_eet_raw_data_cb(void *data EINA_UNUSED, Ecore_Con_Reply *reply EINA_UNUSED, const char *protocol_name EINA_UNUSED, const char *section, void *value, size_t length) +_eet_raw_data_cb(void *data, Ecore_Con_Reply *reply, const char *protocol_name EINA_UNUSED, const char *section, void *value, size_t length) { + Ecore_Con_Server *cl = data; + Ecore_Con_Eet *ece_cl = ecore_con_eet_reply(reply); + fprintf(stderr, "Section: %s\n", section); fprintf(stderr, "Value: %s\n", (char *) value); fail_if(strncmp((char *) value, SRV_MSG, length)); - ecore_main_loop_quit(); + ecore_con_eet_raw_data_callback_del(ece_cl, TEST_STREAM); + ecore_con_eet_server_connect_callback_del(ece_cl, _eet_svr_cnct_cb, NULL); + + ecore_con_eet_server_free(ece_cl); + ecore_con_server_del(cl); } START_TEST(ecore_con_test_ecore_con_eet_svr_cl) { Ecore_Con_Eet *ece_svr, *ece_cl; Ecore_Con_Server *svr, *cl; + int *cb_data = (int *) malloc(sizeof(int)); + *cb_data = 1; eina_init(); eet_init(); @@ -141,17 +150,12 @@ START_TEST(ecore_con_test_ecore_con_eet_svr_cl) ecore_con_eet_register(ece_cl, TEST_STREAM, _ece_test_descriptor); ecore_con_eet_raw_data_callback_add(ece_cl, TEST_STREAM, - _eet_raw_data_cb, NULL); - ecore_con_eet_server_connect_callback_add(ece_cl, _eet_svr_cnct_cb, NULL); - ecore_con_eet_server_disconnect_callback_add(ece_cl, _eet_svr_discnct_cb, -NULL); + _eet_raw_data_cb, cl); + ecore_con_eet_server_connect_callback_add(ece_cl, _eet_svr_cnct_cb, + cb_data); ecore_main_loop_begin(); - ecore_con_eet_raw_data_callback_del(ece_cl, TEST_STREAM); - ecore_con_eet_server_connect_callback_del(ece_cl, _eet_svr_cnct_cb, NULL); - ecore_con_eet_server_disconnect_callback_del(ece_cl, _eet_svr_discnct_cb, -NULL); ecore_con_eet_data_callback_del(ece_svr, TEST_STREAM); ecore_con_eet_client_connect_callback_del(ece_svr, _eet_client_cnct_cb, @@ -159,15 +163,97 @@ START_TEST(ecore_con_test_ecore_con_eet_svr_cl) ecore_con_eet_client_disconnect_callback_del(ece_svr,
[EGIT] [core/efl] master 09/10: ecore_con: example program for ecore_con_eet.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=9919a428c642af8ecbb13b1bb62beb1488406622 commit 9919a428c642af8ecbb13b1bb62beb1488406622 Author: Srivardhan Hebbar Date: Wed Apr 22 14:55:33 2015 +0200 ecore_con: example program for ecore_con_eet. Summary: Signed-off-by: Srivardhan Hebbar Reviewers: cedric Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D2323 Signed-off-by: Cedric BAIL --- src/examples/ecore/.gitignore | 2 + src/examples/ecore/ecore_con_eet_client_example.c | 97 + .../ecore/ecore_con_eet_descriptor_example.c | 42 .../ecore/ecore_con_eet_descriptor_example.h | 20 src/examples/ecore/ecore_con_eet_server_example.c | 115 + 5 files changed, 276 insertions(+) diff --git a/src/examples/ecore/.gitignore b/src/examples/ecore/.gitignore index 700be32..acc3750 100644 --- a/src/examples/ecore/.gitignore +++ b/src/examples/ecore/.gitignore @@ -6,6 +6,8 @@ /ecore_compose_get_example /ecore_con_client_example /ecore_con_client_simple_example +/ecore_con_eet_client_example +/ecore_con_eet_server_example /ecore_con_lookup_example /ecore_con_server_example /ecore_con_server_http_example diff --git a/src/examples/ecore/ecore_con_eet_client_example.c b/src/examples/ecore/ecore_con_eet_client_example.c new file mode 100644 index 000..710df2e --- /dev/null +++ b/src/examples/ecore/ecore_con_eet_client_example.c @@ -0,0 +1,97 @@ +/* + * This example shows how to register a eet descriptor to a ecore con client + * and send message to ecore con server. The eet descriptor is defined in + * ecore_con_eet_descriptor_example.c. + */ + +//Compile with: +// gcc -o ecore_con_eet_client_example ecore_con_eet_client_example.c ecore_con_eet_descriptor_example.c `pkg-config --cflags --libs eet ecore ecore-con eina` + +#include +#include +#include +#include +#include "ecore_con_eet_descriptor_example.h" + +Eina_Bool +_eet_svr_discnct_cb(void *data EINA_UNUSED, Ecore_Con_Reply *reply, Ecore_Con_Client *conn EINA_UNUSED) +{ + ecore_main_loop_quit(); + return EINA_FALSE; +} + +Eina_Bool +_eet_svr_cnct_cb(void *data EINA_UNUSED, Ecore_Con_Reply *reply, Ecore_Con_Client *conn EINA_UNUSED) +{ + /* Only id and message parameter are sent to server. not_sending, parameter +* is not sent, as it is not added to the eet descriptor. */ + ECE_Example toSend = {1, "Message from Client.", + "This is not sent to server"}; + + ecore_con_eet_send(reply, EXAMPLE_STREAM, &toSend); + return EINA_TRUE; +} + +static void +_eet_raw_data_cb(void *data EINA_UNUSED, Ecore_Con_Reply *reply EINA_UNUSED, const char *protocol_name EINA_UNUSED, const char *section, void *value, size_t length EINA_UNUSED) +{ + /* Only a perticular parameter's value is sent by Server. */ + fprintf(stdout, "Section: %s\n", section); + fprintf(stdout, "Value: %s\n", (char *) value); +} + +int main(int argc, const char *argv[]) +{ + Ecore_Con_Eet *ec_eet; + Ecore_Con_Server *svr; + + if (argc < 3) + { +printf("Syntax: \n./ecore_con_eet_server_example \n"); +exit(0); + } + + eina_init(); + eet_init(); + ecore_con_init(); + ece_example_descriptor_init(); // Initialize a eet descriptor. + + svr = ecore_con_server_connect(ECORE_CON_REMOTE_TCP, argv[1], + atoi(argv[2]), NULL); + if (!svr) + { +printf("could not connect to the server.\n"); +exit(1); + } + + ec_eet = ecore_con_eet_client_new(svr); // Associate it with the connection. + + // Register the descriptor to send messages. + ece_example_descriptor_register_descs(ec_eet); + + // Register call backs. + ecore_con_eet_raw_data_callback_add(ec_eet, EXAMPLE_STREAM, + _eet_raw_data_cb, NULL); + ecore_con_eet_server_connect_callback_add(ec_eet, _eet_svr_cnct_cb, NULL); + ecore_con_eet_server_disconnect_callback_add(ec_eet, _eet_svr_discnct_cb, +NULL); + + ecore_main_loop_begin(); + + // Delete all callbacks before closing connection. + ecore_con_eet_server_disconnect_callback_del(ec_eet, _eet_svr_discnct_cb, +NULL); + ecore_con_eet_server_connect_callback_del(ec_eet, _eet_svr_discnct_cb, + NULL); + ecore_con_eet_raw_data_callback_del(ec_eet, EXAMPLE_STREAM); + + // Free the descriptor. + ece_example_descriptor_shutdown(); + + ecore_con_server_del(svr); + ecore_con_shutdown(); + eet_shutdown(); + eina_shutdown(); + + return 0; +} diff --git a/src/examples/ecore/ecore_con_eet_descriptor_example.c b/src/examples/ecore/ecore_con_eet_descriptor_example.c new file mode 100644 index 000..cdf6c88 --- /dev/null +++ b/src/examples/ecore
[EGIT] [core/efl] master 06/10: ecore_con: add test cases to cover more ecore con functions.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=48db81cfb5e01e7993afa65b649de4e2c043b07d commit 48db81cfb5e01e7993afa65b649de4e2c043b07d Author: Srivardhan Hebbar Date: Wed Apr 22 14:26:57 2015 +0200 ecore_con: add test cases to cover more ecore con functions. Summary: The dns lookup test would result in a crash unless https://phab.enlightenment.org/D2398 fix. Also added more functions to existing case to cover ecore_con.c Signed-off-by: Srivardhan Hebbar Reviewers: cedric Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D2403 Signed-off-by: Cedric BAIL --- src/tests/ecore_con/ecore_con_test_ecore_con.c | 55 +- 1 file changed, 53 insertions(+), 2 deletions(-) diff --git a/src/tests/ecore_con/ecore_con_test_ecore_con.c b/src/tests/ecore_con/ecore_con_test_ecore_con.c index 1d8379e..dc31d8e 100644 --- a/src/tests/ecore_con/ecore_con_test_ecore_con.c +++ b/src/tests/ecore_con/ecore_con_test_ecore_con.c @@ -27,6 +27,10 @@ _add(void *data, int type EINA_UNUSED, void *ev) fail_if (data != (void *) 1); fail_if (!event->client); +fprintf(stderr, "client fd: %d\n", +ecore_con_client_fd_get(event->client)); +fail_unless(ecore_con_client_fd_get(event->client)); + printf("Client with ip %s, port %d, connected = %d!\n", ecore_con_client_ip_get(event->client), ecore_con_client_port_get(event->client), @@ -79,8 +83,11 @@ _del(void *data , int type EINA_UNUSED, void *ev) printf("Lost client with ip %s!\n", ecore_con_client_ip_get(event->client)); +fail_if(ecore_con_client_ip_get(event->client)); + printf("Client was connected for %0.3f seconds.\n", ecore_con_client_uptime_get(event->client)); +fail_unless(ecore_con_client_uptime_get(event->client)); del_data = ecore_con_client_del(event->client); fail_if (strcmp((char *)del_data, cdata)); @@ -93,7 +100,9 @@ _del(void *data , int type EINA_UNUSED, void *ev) fail_if (data != (void *) 2); -printf("Lost server with ip %s!\n", ecore_con_server_ip_get(event->server)); +printf("Lost server with ip %s!\n", +ecore_con_server_ip_get(event->server)); +fail_unless(ecore_con_server_ip_get(event->server)); ecore_con_server_del(event->server); } @@ -179,7 +188,7 @@ _dns_err(void *data, int type EINA_UNUSED, void *ev EINA_UNUSED) void _ecore_con_server_client_tests(Ecore_Con_Type compl_type, const char *name, Eina_Bool is_ssl, int server_port) { Ecore_Con_Server *server = NULL; - Ecore_Con_Server *client; + Ecore_Con_Server *client, *client2; Ecore_Con_Client *cl; const Eina_List *clients, *l; Ecore_Event_Handler *handlers[6]; @@ -248,6 +257,10 @@ void _ecore_con_server_client_tests(Ecore_Con_Type compl_type, const char *name, client_data); fail_if (client == NULL); + client2 = ecore_con_server_connect(compl_type, name, server_port, + client_data); + fail_if (client2 == NULL); + if (is_ssl) { fail_unless(ecore_con_ssl_server_cafile_add(server, TESTS_SRC_DIR"/server.pem")); @@ -259,6 +272,14 @@ void _ecore_con_server_client_tests(Ecore_Con_Type compl_type, const char *name, ecore_main_loop_begin(); + fprintf(stderr, "server fd for client 1: %d\n", + ecore_con_server_fd_get(client)); + fail_unless(ecore_con_server_fd_get(client)); + + fprintf(stderr, "server fd for client 2: %d\n", + ecore_con_server_fd_get(client2)); + fail_unless(ecore_con_server_fd_get(client2)); + clients = ecore_con_server_clients_get(server); printf("Clients connected to this server when exiting: %d\n", eina_list_count(clients)); @@ -270,6 +291,9 @@ void _ecore_con_server_client_tests(Ecore_Con_Type compl_type, const char *name, printf("Server was up for %0.3f seconds\n", ecore_con_server_uptime_get(server)); + del_ret = ecore_con_server_del(client2); + fail_if (del_ret != client_data); + del_ret = ecore_con_server_del(server); fail_if (strcmp((char *)del_ret, sdata)); free (server_data); @@ -532,6 +556,32 @@ START_TEST(ecore_test_ecore_con_shutdown_bef_init) } END_TEST +static void +_lookup_done_cb(const char *canonname, const char *ip, struct sockaddr *addr, int addrlen, void *data) +{ + fail_if(strncmp(canonname,(char *)data, strlen((char *)data))); + + fprintf(stderr, "canonname = %s\n", canonname); + fprintf(stderr, "ip = %s\n", ip); + fprintf(stderr, "addr = %p\n", addr); + fprintf(stderr, "addrlen = %d\n", addrlen); + + ecore_main_loop_quit(); +} + +START_TEST(ecore_test_ecore_con_dns_lookup) +{ + const char link[] = "www.google.com"; + ecore_con_init(); +
[EGIT] [core/efl] master 01/10: evas: fix rotation and flipping of image in gl engine
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=ce45d443c107ef0da87d407ffc5539e9eba9eef5 commit ce45d443c107ef0da87d407ffc5539e9eba9eef5 Author: kabeer khan Date: Wed Apr 22 11:25:38 2015 +0200 evas: fix rotation and flipping of image in gl engine Summary: fix rotation(90, 180, 270) and flipping(vertical, horizontal, transpose, transverse) of evas image in gl engine backend. @fix T2338 Signed-off-by: kabeer khan Reviewers: cedric, jpeg Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D2400 Signed-off-by: Cedric BAIL --- .../evas/engines/gl_common/evas_gl_common.h| 5 +- .../evas/engines/gl_common/evas_gl_context.c | 92 --- src/modules/evas/engines/gl_common/evas_gl_image.c | 1 + src/modules/evas/engines/gl_generic/evas_engine.c | 169 +++-- 4 files changed, 234 insertions(+), 33 deletions(-) diff --git a/src/modules/evas/engines/gl_common/evas_gl_common.h b/src/modules/evas/engines/gl_common/evas_gl_common.h index b81b913..d4ca68d 100644 --- a/src/modules/evas/engines/gl_common/evas_gl_common.h +++ b/src/modules/evas/engines/gl_common/evas_gl_common.h @@ -644,8 +644,9 @@ struct _Evas_GL_Image int scale_hint, content_hint; int csize; - Eina_List *filtered; - Eina_List *targets; + Eina_List *filtered; + Eina_List *targets; + Evas_Image_Orient orient; unsigned chardirty : 1; unsigned charcached : 1; diff --git a/src/modules/evas/engines/gl_common/evas_gl_context.c b/src/modules/evas/engines/gl_common/evas_gl_context.c index 9699bdd..b526eab 100644 --- a/src/modules/evas/engines/gl_common/evas_gl_context.c +++ b/src/modules/evas/engines/gl_common/evas_gl_context.c @@ -1256,9 +1256,53 @@ evas_gl_common_context_target_surface_set(Evas_Engine_GL_Context *gc, PUSH_VERTEX(pn, x, y + h, 0); PUSH_VERTEX(pn, x + w, y, 0); \ PUSH_VERTEX(pn, x + w, y + h, 0); PUSH_VERTEX(pn, x, y + h, 0); \ } while (0) -#define PUSH_6_TEXUV(pn, x1, y1, x2, y2) do { \ - PUSH_TEXUV(pn, x1, y1); PUSH_TEXUV(pn, x2, y1); PUSH_TEXUV(pn, x1, y2); \ - PUSH_TEXUV(pn, x2, y1); PUSH_TEXUV(pn, x2, y2); PUSH_TEXUV(pn, x1, y2); \ +#define PUSH_6_TEXUV(pn, Tex, x1, y1, x2, y2) do { \ + Evas_GL_Texture *_tex = Tex; \ + if (_tex && _tex->im)\ + { \ +switch (_tex->im->orient) \ + { \ + case EVAS_IMAGE_ORIENT_NONE: \ + PUSH_TEXUV(pn, x1, y1); PUSH_TEXUV(pn, x2, y1); PUSH_TEXUV(pn, x1, y2); \ + PUSH_TEXUV(pn, x2, y1); PUSH_TEXUV(pn, x2, y2); PUSH_TEXUV(pn, x1, y2); \ + break;\ + case EVAS_IMAGE_ORIENT_90: \ + PUSH_TEXUV(pn, x1, y2); PUSH_TEXUV(pn, x1, y1); PUSH_TEXUV(pn, x2, y2); \ + PUSH_TEXUV(pn, x1, y1); PUSH_TEXUV(pn, x2, y1); PUSH_TEXUV(pn, x2, y2); \ + break;\ + case EVAS_IMAGE_ORIENT_180: \ + PUSH_TEXUV(pn, x2, y2); PUSH_TEXUV(pn, x1, y2); PUSH_TEXUV(pn, x2, y1); \ + PUSH_TEXUV(pn, x1, y2); PUSH_TEXUV(pn, x1, y1); PUSH_TEXUV(pn, x2, y1); \ + break;\ + case EVAS_IMAGE_ORIENT_270: \ + PUSH_TEXUV(pn, x2, y1); PUSH_TEXUV(pn, x2, y2); PUSH_TEXUV(pn, x1, y1); \ + PUSH_TEXUV(pn, x2, y2); PUSH_TEXUV(pn, x1, y2); PUSH_TEXUV(pn, x1, y1); \ + break;\ + case EVAS_IMAGE_FLIP_HORIZONTAL: \ + PUSH_TEXUV(pn, x2, y1); PUSH_TEXUV(pn, x1, y1); PUSH_TEXUV(pn, x2, y2); \ + PUSH_TEXUV(pn, x1, y1); PUSH_TEXUV(pn, x1, y2); PUSH_TEXUV(pn, x2, y2); \ + break;\ + case EVAS_IMAGE_FLIP_VERTICAL: \ + PUSH_TEXUV(pn, x1, y2); PUSH_TEXUV(pn, x2, y2); PUSH_TEXUV(pn, x1, y1); \ + PUSH_TEXUV(pn, x2, y2); PUSH_TEXUV(pn, x2, y1); PUSH_TEXUV(pn, x1, y1); \ + break;\ + case EVAS_IMAGE_FLIP_TRANSVERSE: \ + PUSH_TEXUV(pn, x2, y2); PUSH_TEXUV(pn, x2, y1); PUSH_TEXUV(pn, x1, y2); \ + PUSH_TEXUV(pn, x2, y1); PUSH_TEXUV(pn, x1, y1); PUSH_TEXUV(p
[EGIT] [core/efl] master 02/10: eina: add test case for eina_strbuf_string_free function.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=08b99cf20169de924e935160d7b18efe6bdac12f commit 08b99cf20169de924e935160d7b18efe6bdac12f Author: vivek Date: Wed Apr 22 12:38:58 2015 +0200 eina: add test case for eina_strbuf_string_free function. Summary: Added test case for eina_strbuf_string_free function in eina_strbuf module Signed-off-by: vivek Reviewers: cedric Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D2382 Signed-off-by: Cedric BAIL --- src/tests/eina/eina_test_strbuf.c | 5 + 1 file changed, 5 insertions(+) diff --git a/src/tests/eina/eina_test_strbuf.c b/src/tests/eina/eina_test_strbuf.c index 406b467..7a1386c 100644 --- a/src/tests/eina/eina_test_strbuf.c +++ b/src/tests/eina/eina_test_strbuf.c @@ -56,6 +56,11 @@ START_TEST(strbuf_simple) fail_if(eina_strbuf_length_get(buf) != 0); fail_if(!strcmp(eina_strbuf_string_get(buf), TEXT)); + eina_strbuf_string_free(buf); + fail_if(eina_strbuf_length_get(buf)); + eina_strbuf_append(buf, TEXT); + fail_if(strcmp(eina_strbuf_string_get(buf), TEXT)); + eina_strbuf_free(buf); eina_shutdown(); --
[EGIT] [core/efl] master 04/10: ecore_con: fix dns lookup crash issue.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=05881ea61ab945fe255a71f9f900dc0fedc7f4f6 commit 05881ea61ab945fe255a71f9f900dc0fedc7f4f6 Author: Srivardhan Hebbar Date: Wed Apr 22 14:19:46 2015 +0200 ecore_con: fix dns lookup crash issue. Summary: When executed ecore_con_lookup_example function, we were getting a crash. This is the fix for the crash. I analysed it in the valgrind and found the error. Valgrind reported invalid free at this place. svr->name is getting freed in _ecore_con_server_eo_base_destructor function and svr is getting freed in ecore_con_shutdown function. Signed-off-by: Srivardhan Hebbar Reviewers: cedric Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D2398 Signed-off-by: Cedric BAIL --- src/lib/ecore_con/ecore_con.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/lib/ecore_con/ecore_con.c b/src/lib/ecore_con/ecore_con.c index e06a1a3..3e6ad7a 100644 --- a/src/lib/ecore_con/ecore_con.c +++ b/src/lib/ecore_con/ecore_con.c @@ -2950,9 +2950,7 @@ _ecore_con_lookup_done(void *data, else lk->done_cb(NULL, NULL, NULL, 0, (void *)lk->data); - free(svr->name); free(lk); - free(svr); } #include "ecore_con_base.eo.c" --
[EGIT] [core/efl] master 05/10: eina: add test cases for eina file xattr functions.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=dab4fb492a0f6689f3f64275945c4214e6a496b3 commit dab4fb492a0f6689f3f64275945c4214e6a496b3 Author: vivek Date: Wed Apr 22 14:21:36 2015 +0200 eina: add test cases for eina file xattr functions. Summary: Added test cases for eina_file_xattr_get and eina_file_xattr_value_get functions Signed-off-by: vivek Reviewers: cedric Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D2401 Signed-off-by: Cedric BAIL --- src/tests/eina/eina_test_file.c | 73 src/tests/eina/eina_test_xattr.c | 4 --- 2 files changed, 73 insertions(+), 4 deletions(-) diff --git a/src/tests/eina/eina_test_file.c b/src/tests/eina/eina_test_file.c index fec6054..38525bd 100644 --- a/src/tests/eina/eina_test_file.c +++ b/src/tests/eina/eina_test_file.c @@ -503,6 +503,76 @@ START_TEST(eina_test_file_path) } END_TEST +#ifdef XATTR_TEST_DIR +START_TEST(eina_test_file_xattr) +{ + Eina_File *ef; + char *filename = "tmpfile"; + const char *attribute[] = + { +"user.comment1", +"user.comment2", +"user.comment3" + }; + const char *data[] = + { +"This is a test file", +"This line is a comment", +"This file has extra attributes" + }; + char *ret_str; + unsigned int i; + Eina_Bool ret; + Eina_Tmpstr *test_file_path; + Eina_Iterator *it; + int fd; + Eina_Xattr *xattr; + + eina_init(); + test_file_path = get_full_path(XATTR_TEST_DIR, filename); + + fd = open(test_file_path, O_RDONLY | O_CREAT | O_TRUNC, S_IRWXU | S_IRWXG | S_IRWXO); + fail_if(fd == 0); + close(fd); + + for (i = 0; i < sizeof(attribute) / sizeof(attribute[0]); ++i) + { +ret = eina_xattr_set(test_file_path, attribute[i], data[i], strlen(data[i]), EINA_XATTR_INSERT); +fail_if(ret != EINA_TRUE); + } + + ef = eina_file_open(test_file_path, EINA_FALSE); + fail_if(!ef); + + it = eina_file_xattr_get(ef); + EINA_ITERATOR_FOREACH(it, ret_str) + { +for (i = 0; i < sizeof (attribute) / sizeof (attribute[0]); i++) + if (strcmp(attribute[i], ret_str) == 0) +break ; +fail_if(i == sizeof (attribute) / sizeof (attribute[0])); + } + eina_iterator_free(it); + + it = eina_file_xattr_value_get(ef); + EINA_ITERATOR_FOREACH(it, xattr) + { +for (i = 0; i < sizeof (data) / sizeof (data[0]); i++) + if (strcmp(attribute[i], xattr->name) == 0 && + strcmp(data[i], xattr->value) == 0) +break ; +fail_if(i == sizeof (data) / sizeof (data[0])); + } + eina_iterator_free(it); + + unlink(test_file_path); + eina_tmpstr_del(test_file_path); + eina_file_close(ef); + eina_shutdown(); +} +END_TEST +#endif + void eina_test_file(TCase *tc) { @@ -513,4 +583,7 @@ eina_test_file(TCase *tc) tcase_add_test(tc, eina_test_file_virtualize); tcase_add_test(tc, eina_test_file_thread); tcase_add_test(tc, eina_test_file_path); +#ifdef XATTR_TEST_DIR + tcase_add_test(tc, eina_test_file_xattr); +#endif } diff --git a/src/tests/eina/eina_test_xattr.c b/src/tests/eina/eina_test_xattr.c index 72c0c3d..50e1ad0 100644 --- a/src/tests/eina/eina_test_xattr.c +++ b/src/tests/eina/eina_test_xattr.c @@ -42,7 +42,6 @@ START_TEST(eina_test_xattr_set) char *filename = "tmpfile"; char *attribute1 = "user.comment1"; char *data1 = "This is comment 1"; - char *attribute2 = "user.comment2"; char *data2 = "This is comment 2"; char *ret_str; int fd; @@ -78,9 +77,6 @@ START_TEST(eina_test_xattr_set) ret = eina_xattr_del(test_file_path, attribute1); fail_if(ret != EINA_TRUE); - ret = eina_xattr_del(test_file_path, attribute2); - fail_if(ret != EINA_FALSE); - ret = eina_xattr_fd_set(fd, attribute1, data1, strlen(data1), EINA_XATTR_CREATED); fail_if(ret != EINA_TRUE); ret_str = eina_xattr_fd_get(fd, attribute1, &len); --
[EGIT] [core/efl] master 08/10: eio: add testcases for various eio_xattr types set and get functions.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=d86ed2a46c5f6a7a76fceff7d33ed934f87bb714 commit d86ed2a46c5f6a7a76fceff7d33ed934f87bb714 Author: vivek Date: Wed Apr 22 14:52:55 2015 +0200 eio: add testcases for various eio_xattr types set and get functions. Summary: Added test cases for eio_file_xattr_string_set, eio_file_xattr_string_get, eio_file_xattr_int_set, eio_file_xattr_int_get, eio_file_xattr_double_get, eio_file_xattr_double set functions Signed-off-by: vivek Reviewers: cedric Reviewed By: cedric Differential Revision: https://phab.enlightenment.org/D2380 Signed-off-by: Cedric BAIL --- src/tests/eio/eio_test_xattr.c | 103 + 1 file changed, 103 insertions(+) diff --git a/src/tests/eio/eio_test_xattr.c b/src/tests/eio/eio_test_xattr.c index a9a3582..f28d04f 100644 --- a/src/tests/eio/eio_test_xattr.c +++ b/src/tests/eio/eio_test_xattr.c @@ -13,6 +13,13 @@ #include "eio_suite.h" +static char *str_attr = "user.name"; +static char *str_data = "Vivek Ellur"; +static char *int_attr = "user.id"; +static int int_data = 1234; +static char *double_attr = "user.size"; +static double double_data = 123.456; + const char *attribute[] = { "user.comment1", @@ -85,6 +92,30 @@ _done_get_cb(void *data, Eio_File *handler EINA_UNUSED, const char *name, unsign } static void +_done_string_cb(void *data EINA_UNUSED, Eio_File *handler EINA_UNUSED, const char *xattr_string) +{ + fail_if(strcmp(xattr_string, str_data) != 0); + + ecore_main_loop_quit(); +} + +static void +_done_int_cb(void *data EINA_UNUSED, Eio_File *handler EINA_UNUSED, int xattr_int) +{ + fail_if(xattr_int != int_data); + + ecore_main_loop_quit(); +} + +static void +_done_double_cb(void *data EINA_UNUSED, Eio_File *handler EINA_UNUSED, double xattr_double) +{ + fail_if(xattr_double != double_data); + + ecore_main_loop_quit(); +} + +static void _error_cb(void *data EINA_UNUSED, Eio_File *handler EINA_UNUSED, int error) { @@ -152,12 +183,84 @@ START_TEST(eio_test_xattr_set) ecore_shutdown(); } END_TEST + +START_TEST(eio_test_xattr_types_set) +{ + char *filename = "eio-tmpfile"; + + Eina_Tmpstr *test_file_path; + int fd, num_of_attr=0; + Eio_File *fp; + + ecore_init(); + eina_init(); + eio_init(); + + test_file_path = get_file_path(XATTR_TEST_DIR, filename); + fd = open(test_file_path, + O_WRONLY | O_CREAT | O_TRUNC, + S_IRWXU | S_IRWXG | S_IRWXO); + fail_if(fd == 0); + fp = eio_file_xattr_string_set(test_file_path, str_attr, +str_data, EINA_XATTR_INSERT, +_done_once_cb, _error_cb, &num_of_attr); + + fail_if(num_of_attr != 0); // test asynchronous + fail_if(!fp); + + ecore_main_loop_begin(); + + fp = eio_file_xattr_string_get(test_file_path, str_attr, + _done_string_cb, _error_cb, NULL); + fail_if(!fp); + + ecore_main_loop_begin(); + + fp = eio_file_xattr_int_set(test_file_path, int_attr, +int_data, EINA_XATTR_INSERT, +_done_once_cb, _error_cb, &num_of_attr); + + fail_if(num_of_attr != 0); // test asynchronous + fail_if(!fp); + + ecore_main_loop_begin(); + + fp = eio_file_xattr_int_get(test_file_path, int_attr, + _done_int_cb, _error_cb, NULL); + fail_if(!fp); + + ecore_main_loop_begin(); + + fp = eio_file_xattr_double_set(test_file_path, double_attr, +double_data, EINA_XATTR_INSERT, +_done_once_cb, _error_cb, &num_of_attr); + + fail_if(num_of_attr != 0); // test asynchronous + fail_if(!fp); + + ecore_main_loop_begin(); + + fp = eio_file_xattr_double_get(test_file_path, double_attr, + _done_double_cb, _error_cb, NULL); + fail_if(!fp); + + ecore_main_loop_begin(); + + close(fd); + unlink(test_file_path); + eina_tmpstr_del(test_file_path); + eio_shutdown(); + eina_shutdown(); + ecore_shutdown(); +} +END_TEST #endif void eio_test_xattr(TCase *tc) { #ifdef XATTR_TEST_DIR tcase_add_test(tc, eio_test_xattr_set); + tcase_add_test(tc, eio_test_xattr_types_set); #else (void)tc; #endif --
[EGIT] [core/efl] master 10/10: ecore: build newly added Ecore_Con examples.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=e866b42de5c4ea477d24b45665ab2d22495b237e commit e866b42de5c4ea477d24b45665ab2d22495b237e Author: Cedric BAIL Date: Wed Apr 22 14:58:44 2015 +0200 ecore: build newly added Ecore_Con examples. --- src/examples/ecore/Makefile.am | 15 +-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/examples/ecore/Makefile.am b/src/examples/ecore/Makefile.am index 2f9db84..4479aa7 100644 --- a/src/examples/ecore/Makefile.am +++ b/src/examples/ecore/Makefile.am @@ -67,7 +67,9 @@ ecore_server_bench \ ecore_thread_example \ ecore_time_functions_example \ ecore_timer_example \ -ecore_getopt_example +ecore_getopt_example \ +ecore_con_eet_client_example \ +ecore_con_eet_server_example ECORE_COMMON_LDADD = \ $(top_builddir)/src/lib/ecore/libecore.la \ @@ -237,6 +239,12 @@ ecore_timer_example_LDADD = $(ECORE_COMMON_LDADD) ecore_getopt_example_SOURCES = ecore_getopt_example.c ecore_getopt_example_LDADD = $(ECORE_COMMON_LDADD) +ecore_con_eet_client_example_SOURCES = ecore_con_eet_client_example.c ecore_con_eet_descriptor_example.c +ecore_con_eet_client_example_LDADD = $(ECORE_CON_COMMON_LDADD) + +ecore_con_eet_server_example_SOURCES = ecore_con_eet_server_example.c ecore_con_eet_descriptor_example.c +ecore_con_eet_server_example_LDADD = $(ECORE_CON_COMMON_LDADD) + SRCS = \ ecore_animator_example.c \ ecore_audio_custom.c \ @@ -279,7 +287,10 @@ ecore_server_bench.c \ ecore_thread_example.c \ ecore_time_functions_example.c \ ecore_timer_example.c \ -ecore_getopt_example.c +ecore_getopt_example.c \ +ecore_con_eet_client_example.c \ +ecore_con_eet_server_example.c \ +ecore_con_eet_descriptor_example.c DATA_FILES = red.png Makefile.examples --
[EGIT] [core/efl] master 03/10: ecore_con: fix ecore_con_lookup_example to actually exit when done.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=d560fe99a1aa9038355f4fbe442a88e8a064661d commit d560fe99a1aa9038355f4fbe442a88e8a064661d Author: Srivardhan Hebbar Date: Wed Apr 22 12:41:43 2015 +0200 ecore_con: fix ecore_con_lookup_example to actually exit when done. Summary: Without ecore_main_loop_quit the example won't end. So added that and as ecore_init is done in ecore_con_init removed that. Signed-off-by: Srivardhan Hebbar Reviewers: cedric Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D2399 Signed-off-by: Cedric BAIL --- src/examples/ecore/ecore_con_lookup_example.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/examples/ecore/ecore_con_lookup_example.c b/src/examples/ecore/ecore_con_lookup_example.c index 41a001e..3217dac 100644 --- a/src/examples/ecore/ecore_con_lookup_example.c +++ b/src/examples/ecore/ecore_con_lookup_example.c @@ -11,7 +11,7 @@ _lookup_done_cb(const char *canonname, const char *ip, struct sockaddr *addr, in printf("canonname = %s\n", canonname); printf("ip = %s\n", ip); printf("addr = %p\n", addr); - printf("addrlen = %d\n", addrlen); + ecore_main_loop_quit(); } int @@ -23,7 +23,6 @@ main(int argc, const char *argv[]) return -1; } - ecore_init(); ecore_con_init(); if (!ecore_con_lookup(argv[1], _lookup_done_cb, NULL)) @@ -36,7 +35,6 @@ main(int argc, const char *argv[]) end: ecore_con_shutdown(); - ecore_shutdown(); return 0; } --
[EGIT] [core/elementary] master 02/03: Spinner: use fabs for floating point absolute value.
tasn pushed a commit to branch master. http://git.enlightenment.org/core/elementary.git/commit/?id=c0d2a15d5121465c0f84e3e709c2c92f2b89f4f4 commit c0d2a15d5121465c0f84e3e709c2c92f2b89f4f4 Author: Tom Hacohen Date: Wed Apr 22 13:31:10 2015 +0100 Spinner: use fabs for floating point absolute value. --- src/lib/elm_spinner.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/elm_spinner.c b/src/lib/elm_spinner.c index e0e16a5..90d602a 100644 --- a/src/lib/elm_spinner.c +++ b/src/lib/elm_spinner.c @@ -376,7 +376,7 @@ _spin_value(void *data) double real_speed = sd->spin_speed; /* Sanity check: our step size should be at least as large as our rounding value */ - if ((sd->spin_speed != 0.0) && (abs(sd->spin_speed) < sd->round)) + if ((sd->spin_speed != 0.0) && (fabs(sd->spin_speed) < sd->round)) { WRN("The spinning step is smaller than the rounding value, please check your code"); real_speed = sd->spin_speed > 0 ? sd->round : -sd->round; --
[EGIT] [core/elementary] master 03/03: Test gengrid: use the gengrid enum, and not the genlist one.
tasn pushed a commit to branch master. http://git.enlightenment.org/core/elementary.git/commit/?id=3d0197bad1348db73d41de57cdd31ec37e5a9404 commit 3d0197bad1348db73d41de57cdd31ec37e5a9404 Author: Tom Hacohen Date: Wed Apr 22 13:33:40 2015 +0100 Test gengrid: use the gengrid enum, and not the genlist one. They are probably in sync, but this is just wrong. Especially if people copy/paste this. --- src/bin/test_gengrid.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bin/test_gengrid.c b/src/bin/test_gengrid.c index 5cd87a5..9a9832d 100644 --- a/src/bin/test_gengrid.c +++ b/src/bin/test_gengrid.c @@ -1414,7 +1414,7 @@ _grid5_search_item(grid5_Event_Data *event_data, Elm_Object_Item * it) { printf("Found.\n"); elm_gengrid_item_selected_set(event_data->last_item_found, EINA_TRUE); -elm_gengrid_item_bring_in(event_data->last_item_found, ELM_GENLIST_ITEM_SCROLLTO_MIDDLE); +elm_gengrid_item_bring_in(event_data->last_item_found, ELM_GENGRID_ITEM_SCROLLTO_MIDDLE); elm_object_focus_set(event_data->en_obj, EINA_TRUE); } else --
[EGIT] [core/elementary] master 01/03: Gesture layer: fabs->abs for int parameters.
tasn pushed a commit to branch master. http://git.enlightenment.org/core/elementary.git/commit/?id=15764b5162c99a7561a236d38338012ab869379b commit 15764b5162c99a7561a236d38338012ab869379b Author: Tom Hacohen Date: Wed Apr 22 13:29:21 2015 +0100 Gesture layer: fabs->abs for int parameters. Clear more correct clang warnings. --- src/lib/elm_gesture_layer.c | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/lib/elm_gesture_layer.c b/src/lib/elm_gesture_layer.c index 81a7ee7..c126bbf 100644 --- a/src/lib/elm_gesture_layer.c +++ b/src/lib/elm_gesture_layer.c @@ -2260,8 +2260,8 @@ _angle_get(Evas_Coord xx1, { double a, xx, yy, rt = (-1); - xx = fabs(xx2 - xx1); - yy = fabs(yy2 - yy1); + xx = abs(xx2 - xx1); + yy = abs(yy2 - yy1); if (((int)xx) && ((int)yy)) { @@ -2528,8 +2528,8 @@ _momentum_test(Evas_Object *obj, st->line_end.y = pe_local.y; st->t_end = pe_local.timestamp; -if ((fabs(st->info.mx) > ELM_GESTURE_MINIMUM_MOMENTUM) || -(fabs(st->info.my) > ELM_GESTURE_MINIMUM_MOMENTUM)) +if ((abs(st->info.mx) > ELM_GESTURE_MINIMUM_MOMENTUM) || +(abs(st->info.my) > ELM_GESTURE_MINIMUM_MOMENTUM)) state_to_report = ELM_GESTURE_STATE_END; else state_to_report = ELM_GESTURE_STATE_ABORT; @@ -2997,8 +2997,8 @@ _finger_gap_length_get(Evas_Coord xx1, Evas_Coord *y) { double a, b, xx, yy, gap; - xx = fabs(xx2 - xx1); - yy = fabs(yy2 - yy1); + xx = abs(xx2 - xx1); + yy = abs(yy2 - yy1); gap = sqrt((xx * xx) + (yy * yy)); /* START - Compute zoom center point */ --
[EGIT] [core/efl] master 04/05: Ecore_evas wayland: remove double parenthesis around comparison.
tasn pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=5b5b7113b7d24cb8b3935834a99eaf23393605ec commit 5b5b7113b7d24cb8b3935834a99eaf23393605ec Author: Tom Hacohen Date: Wed Apr 22 13:13:19 2015 +0100 Ecore_evas wayland: remove double parenthesis around comparison. Double praenthesis should be used around assignments, not comparisons. Doing this correctly all aronud lets the compiler warn us about potential mistakes. --- src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c index 7e9e353..b5cfa56 100644 --- a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c +++ b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c @@ -380,7 +380,7 @@ _ecore_evas_wayland_shm_alpha_do(Ecore_Evas *ee, int alpha) LOGFN(__FILE__, __LINE__, __FUNCTION__); if (!ee) return; - if ((ee->alpha == alpha)) return; + if (ee->alpha == alpha) return; ee->alpha = alpha; wdata = ee->engine.data; @@ -419,7 +419,7 @@ _ecore_evas_wayland_shm_transparent_do(Ecore_Evas *ee, int transparent) LOGFN(__FILE__, __LINE__, __FUNCTION__); if (!ee) return; - if ((ee->transparent == transparent)) return; + if (ee->transparent == transparent) return; ee->transparent = transparent; wdata = ee->engine.data; --
[EGIT] [core/efl] master 03/05: Evas text utils: move the non-ot function into the current ifdef.
tasn pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=450ff212e2d184a5b5f3dbbaf11ec9555a24dbb2 commit 450ff212e2d184a5b5f3dbbaf11ec9555a24dbb2 Author: Tom Hacohen Date: Wed Apr 22 13:11:52 2015 +0100 Evas text utils: move the non-ot function into the current ifdef. This function should only be build when OT is off. Move it to the #else part of the ifdef. --- src/lib/evas/common/evas_text_utils.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lib/evas/common/evas_text_utils.c b/src/lib/evas/common/evas_text_utils.c index dc2407f..bef21fe 100644 --- a/src/lib/evas/common/evas_text_utils.c +++ b/src/lib/evas/common/evas_text_utils.c @@ -409,8 +409,7 @@ _content_create_ot(RGBA_Font_Int *fi, const Eina_Unicode *text, gl_itr++; } } -#endif - +#else static inline void _content_create_regular(RGBA_Font_Int *fi, const Eina_Unicode *text, Evas_Text_Props *text_props, const Evas_BiDi_Paragraph_Props *par_props, @@ -516,6 +515,7 @@ _content_create_regular(RGBA_Font_Int *fi, const Eina_Unicode *text, free(base_str); # endif } +#endif EAPI Eina_Bool evas_common_text_props_content_create(void *_fi, const Eina_Unicode *text, --
[EGIT] [core/efl] master 01/05: Eolian generator: remove unusued variable.
tasn pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=f62374b08a115ac1e8908755455cc5ca0233b227 commit f62374b08a115ac1e8908755455cc5ca0233b227 Author: Tom Hacohen Date: Wed Apr 22 13:03:17 2015 +0100 Eolian generator: remove unusued variable. --- src/bin/eolian/eo_generator.c | 10 -- 1 file changed, 10 deletions(-) diff --git a/src/bin/eolian/eo_generator.c b/src/bin/eolian/eo_generator.c index 9ab8946..fe81f1f 100644 --- a/src/bin/eolian/eo_generator.c +++ b/src/bin/eolian/eo_generator.c @@ -16,16 +16,6 @@ static _eolian_class_vars class_env; static Eina_Hash *_funcs_params_init = NULL; static const char -tmpl_dtor[] = "\ -static void\n\ -_gen_@#class_class_destructor(Eo_Class *klass)\n\ -{\n\ - _@#class_class_destructor(klass);\n\ -}\n\ -\n\ -"; - -static const char tmpl_eo_ops_desc[] = "\ static Eo_Op_Description _@#class_op_desc[] = {@#list_op\n\ EO_OP_SENTINEL\n\ --
[EGIT] [core/efl] master 05/05: Eldbus: fix potential unsigned int underflow.
tasn pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=5e4b523d51c11d073def64e3a2dd268eb3a9ae22 commit 5e4b523d51c11d073def64e3a2dd268eb3a9ae22 Author: Tom Hacohen Date: Wed Apr 22 13:17:28 2015 +0100 Eldbus: fix potential unsigned int underflow. Subtracting two unsigned values results in an unsigned value, which means abs() will have no effect. This also means that if base is smaller than size, we'll have an unsigned int underflow. I did it this way (with the if) because it looked like base might be smaller than size. However, please remove the if (and don't reinstate the abs) if this is not the case. --- src/lib/eldbus/eldbus_message_to_eina_value.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/eldbus/eldbus_message_to_eina_value.c b/src/lib/eldbus/eldbus_message_to_eina_value.c index 777bf17..bac9860 100644 --- a/src/lib/eldbus/eldbus_message_to_eina_value.c +++ b/src/lib/eldbus/eldbus_message_to_eina_value.c @@ -91,7 +91,7 @@ _type_offset(char type, unsigned base) return base; if (!(base % size)) return base; - padding = abs(base - size); + padding = (base > size) ? base - size : size - base; return base + padding; } --
[EGIT] [core/efl] master 02/05: Eina safety: remove unused error string.
tasn pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=811058a1ff074eebc5b1ed9bf5cedfa0a675e417 commit 811058a1ff074eebc5b1ed9bf5cedfa0a675e417 Author: Tom Hacohen Date: Wed Apr 22 13:06:16 2015 +0100 Eina safety: remove unused error string. At the moment there are no errors possible for safety checks. This may change in the future (unlikely), so we have the eina_error already exposed for that. However, there's no need for the string. One more down towards a warningless build. --- src/lib/eina/eina_safety_checks.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/lib/eina/eina_safety_checks.c b/src/lib/eina/eina_safety_checks.c index 5ae59ac..1ee6991 100644 --- a/src/lib/eina/eina_safety_checks.c +++ b/src/lib/eina/eina_safety_checks.c @@ -60,8 +60,6 @@ eina_safety_checks_shutdown(void) EAPI Eina_Error EINA_ERROR_SAFETY_FAILED = 0; -static const char EINA_ERROR_SAFETY_FAILED_STR[] = "Safety check failed."; - /** * @endcond */ --
[EGIT] [core/enlightenment] master 04/04: module/geolocation: Stop setting gadget icon from start and stop callbacks
stefan pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=c79d0b1f8c42fed8cfc5eb0b28b9792251707517 commit c79d0b1f8c42fed8cfc5eb0b28b9792251707517 Author: Stefan Schmidt Date: Wed Apr 22 13:54:51 2015 +0200 module/geolocation: Stop setting gadget icon from start and stop callbacks We keep track of this now by monitoring the InUse property which works also if other clients use the service. --- src/modules/geolocation/e_mod_main.c | 16 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/src/modules/geolocation/e_mod_main.c b/src/modules/geolocation/e_mod_main.c index 8b8f22d..641ab14 100644 --- a/src/modules/geolocation/e_mod_main.c +++ b/src/modules/geolocation/e_mod_main.c @@ -147,25 +147,17 @@ popup_new(Instance *inst) } void -cb_client_start(Eldbus_Proxy *proxy EINA_UNUSED, void *data, Eldbus_Pending *pending EINA_UNUSED, - Eldbus_Error_Info *error EINA_UNUSED) +cb_client_start(Eldbus_Proxy *proxy EINA_UNUSED, void *data EINA_UNUSED, + Eldbus_Pending *pending EINA_UNUSED, Eldbus_Error_Info *error EINA_UNUSED) { - Instance *inst = data; - DBG("Client proxy start callback received"); - - edje_object_signal_emit(inst->icon, "e,state,location_on", "e"); } void -cb_client_stop(Eldbus_Proxy *proxy EINA_UNUSED, void *data, Eldbus_Pending *pending EINA_UNUSED, - Eldbus_Error_Info *error EINA_UNUSED) +cb_client_stop(Eldbus_Proxy *proxy EINA_UNUSED, void *data EINA_UNUSED, + Eldbus_Pending *pending EINA_UNUSED, Eldbus_Error_Info *error EINA_UNUSED) { - Instance *inst = data; - DBG("Client proxy stop callback received"); - - edje_object_signal_emit(inst->icon, "e,state,location_off", "e"); } static void --
[EGIT] [core/enlightenment] master 02/04: modules/geolocation: Make module work with newer GeoClue2
stefan pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=0ac7f90aa77841fd3ead3a0585623191b4416eeb commit 0ac7f90aa77841fd3ead3a0585623191b4416eeb Author: Stefan Schmidt Date: Wed Apr 22 13:54:51 2015 +0200 modules/geolocation: Make module work with newer GeoClue2 In newer GeoClue2 version, tested with 2.1.10, we need to set the DesktopId and AccurancyLevel to get a location object. --- src/modules/geolocation/e_mod_main.c | 17 + 1 file changed, 17 insertions(+) diff --git a/src/modules/geolocation/e_mod_main.c b/src/modules/geolocation/e_mod_main.c index c07f96f..4568d51 100644 --- a/src/modules/geolocation/e_mod_main.c +++ b/src/modules/geolocation/e_mod_main.c @@ -52,6 +52,8 @@ struct _Instance const char *description; }; +#define GCLUE_ACCURACY_LEVEL_EXACT 8; + static Eina_List *geolocation_instances = NULL; static E_Module *geolocation_module = NULL; @@ -278,6 +280,14 @@ cb_location_prop_description_get(void *data EINA_UNUSED, Eldbus_Pending *p EINA_ } void +cb_client_prop_set(void *data EINA_UNUSED, const char *propname EINA_UNUSED, + Eldbus_Proxy *proxy EINA_UNUSED, Eldbus_Pending *p EINA_UNUSED, + Eldbus_Error_Info *error_info EINA_UNUSED) +{ + DBG("Client %s property set callback received", propname); +} + +void cb_client_location_updated_signal(void *data, const Eldbus_Message *msg) { const char *new_path, *old_path; @@ -312,6 +322,8 @@ cb_client_object_get(Eldbus_Proxy *proxy EINA_UNUSED, void *data, Eldbus_Pending Eldbus_Error_Info *error EINA_UNUSED, const char *client_path) { Instance *inst = data; + int accuracy; + const char *desktopid; DBG("Client object path: %s", client_path); inst->client = geo_clue2_client_proxy_get(inst->conn, "org.freedesktop.GeoClue2", client_path); @@ -321,6 +333,11 @@ cb_client_object_get(Eldbus_Proxy *proxy EINA_UNUSED, void *data, Eldbus_Pending return; } + desktopid = "Enlightenment-module"; + geo_clue2_client_desktop_id_propset(inst->client, cb_client_prop_set, inst, desktopid); + accuracy = GCLUE_ACCURACY_LEVEL_EXACT; + geo_clue2_client_requested_accuracy_level_propset(inst->client, cb_client_prop_set, inst, (void*)(intptr_t)accuracy); + eldbus_proxy_signal_handler_add(inst->client, "LocationUpdated", cb_client_location_updated_signal, inst); } --
[EGIT] [core/enlightenment] master 03/04: modules/geolocation: Follow InUse property change to give UI indication
stefan pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=da6297cc37b7538389840b7e0ae3f081eb609cbe commit da6297cc37b7538389840b7e0ae3f081eb609cbe Author: Stefan Schmidt Date: Wed Apr 22 13:54:51 2015 +0200 modules/geolocation: Follow InUse property change to give UI indication The InUse property of the manager object is available in newer GeoClue2 versions. It shows if the service is in use by any application at the moment. We use this to indicate the usage in the UI. A blue geolocation icon means the service is in use, the grey icon means it is inactive. --- src/modules/geolocation/e_mod_main.c | 32 ++-- 1 file changed, 30 insertions(+), 2 deletions(-) diff --git a/src/modules/geolocation/e_mod_main.c b/src/modules/geolocation/e_mod_main.c index 4568d51..8b8f22d 100644 --- a/src/modules/geolocation/e_mod_main.c +++ b/src/modules/geolocation/e_mod_main.c @@ -39,7 +39,7 @@ struct _Instance Evas_Object *popup_altitude; Evas_Object *popup_accuracy; Evas_Object *popup_description; - Eina_Bool in_use; + int in_use; Eldbus_Connection *conn; Eldbus_Service_Interface *iface; Eldbus_Proxy *manager; @@ -341,6 +341,32 @@ cb_client_object_get(Eldbus_Proxy *proxy EINA_UNUSED, void *data, Eldbus_Pending eldbus_proxy_signal_handler_add(inst->client, "LocationUpdated", cb_client_location_updated_signal, inst); } +static void +cb_manager_props_changed(void *data, Eldbus_Proxy *proxy EINA_UNUSED, void *event) +{ + Eldbus_Proxy_Event_Property_Changed *ev; + int val; + Eina_Value v; + Instance *inst = data; + + ev = event; + DBG("Manager property changed: %s", ev->name); + + if (strcmp(ev->name, "InUse") == 0) + { +eina_value_setup(&v, EINA_VALUE_TYPE_INT); +eina_value_convert(ev->value, &v); +eina_value_get(&v, &val); +inst->in_use = val; +DBG("Manager InUse property changed to %i", inst->in_use); + +if (inst->in_use) + edje_object_signal_emit(inst->icon, "e,state,location_on", "e"); + else + edje_object_signal_emit(inst->icon, "e,state,location_off", "e"); + } +} + static E_Gadcon_Client * _gc_init(E_Gadcon *gc, const char *name, const char *id, const char *style) { @@ -368,7 +394,7 @@ _gc_init(E_Gadcon *gc, const char *name, const char *id, const char *style) inst->accuracy = 0.0; inst->altitude= 0.0 ; inst->description = NULL; - inst->in_use = EINA_FALSE; + inst->in_use = 0; edje_object_signal_emit(inst->icon, "e,state,location_off", "e"); evas_object_event_callback_add(inst->icon, @@ -392,6 +418,8 @@ _gc_init(E_Gadcon *gc, const char *name, const char *id, const char *style) return NULL; } + eldbus_proxy_event_callback_add(inst->manager, ELDBUS_PROXY_EVENT_PROPERTY_CHANGED, cb_manager_props_changed, inst); + geo_clue2_manager_get_client_call(inst->manager, cb_client_object_get, inst); return gcc; --
[EGIT] [core/enlightenment] master 01/04: modules/geolocation: Only display a valid altitude value
stefan pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=e01edf1f5958e0dab565aec58181eaaa3e489faf commit e01edf1f5958e0dab565aec58181eaaa3e489faf Author: Stefan Schmidt Date: Wed Apr 22 13:54:51 2015 +0200 modules/geolocation: Only display a valid altitude value If our backends does no know the altitude it sets it to -DBL_MAX as 0 is a valid altitude value. Check for it and display N/A if it is not valid. --- src/modules/geolocation/e_mod_main.c | 14 -- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/modules/geolocation/e_mod_main.c b/src/modules/geolocation/e_mod_main.c index dad2b02..c07f96f 100644 --- a/src/modules/geolocation/e_mod_main.c +++ b/src/modules/geolocation/e_mod_main.c @@ -4,6 +4,8 @@ #include "eldbus_geo_clue2_client.h" #include "eldbus_geo_clue2_location.h" +#include + /* gadcon requirements */ static E_Gadcon_Client *_gc_init(E_Gadcon *gc, const char *name, const char *id, const char *style); static void _gc_shutdown(E_Gadcon_Client *gcc); @@ -67,7 +69,11 @@ popup_update(Instance *inst) snprintf(buf, sizeof(buf), _("Longitude: %f"), inst->longitude); e_widget_label_text_set(inst->popup_longitude, buf); - snprintf(buf, sizeof(buf), _("Altitude: %f"), inst->altitude); + if (inst->altitude != -DBL_MAX) +snprintf(buf, sizeof(buf), _("Altitude: %f"), inst->altitude); + else +snprintf(buf, sizeof(buf), _("Altitude: N/A")); + e_widget_label_text_set(inst->popup_altitude, buf); snprintf(buf, sizeof(buf), _("Accuracy: %f"), inst->accuracy); @@ -115,7 +121,11 @@ popup_new(Instance *inst) inst->popup_longitude = e_widget_label_add(evas, buf); e_widget_list_object_append(list, inst->popup_longitude, 1, 1, 0.5); - snprintf(buf, sizeof(buf), _("Altitude: %f"), inst->altitude); + if (inst->altitude != -DBL_MAX) +snprintf(buf, sizeof(buf), _("Altitude: %f"), inst->altitude); + else +snprintf(buf, sizeof(buf), _("Altitude: N/A")); + inst->popup_altitude = e_widget_label_add(evas, buf); e_widget_list_object_append(list, inst->popup_altitude, 1, 1, 0.5); --
[EGIT] [admin/release-management] master 01/01: distro_version_fetching: Add non-working section for Elive
stefan pushed a commit to branch master. http://git.enlightenment.org/admin/release-management.git/commit/?id=e1a0192dcb245cbb1923862a22fed10f7745283f commit e1a0192dcb245cbb1923862a22fed10f7745283f Author: Stefan Schmidt Date: Wed Apr 22 11:17:01 2015 +0200 distro_version_fetching: Add non-working section for Elive The regex handling seems to get it wrong here. --- distributions_versions_fetch_script.py | 8 +++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/distributions_versions_fetch_script.py b/distributions_versions_fetch_script.py index d7e2b88..a102eba 100755 --- a/distributions_versions_fetch_script.py +++ b/distributions_versions_fetch_script.py @@ -47,7 +47,13 @@ def main(): , "https://apps.fedoraproject.org/packages/enlightenment";, "//*[@id=\"package-info-bar\"]/div[1]/div[2]/text()", "" , "https://apps.fedoraproject.org/packages/terminology";, "//*[@id=\"package-info-bar\"]/div[1]/div[2]/text()", "" ), - #("Elive", "http://repository.elivecd.org/pool/efl/libe/libefl/";, "/html/body/pre/a/text()[starts-with(.,'libefl1_')]", "libefl1_"), + ("Elive", "http://repository.elivecd.org/pool/efl/libe/libefl/";, "/html/body/pre/a/text()[starts-with(.,'libefl1_')]", "libefl1_" + , "http://repository.elivecd.org/pool/efl/e/elementary/";, "/html/body/pre/a/text()[starts-with(.,'libelementary1_')]", "libelementary1_" + , "http://repository.elivecd.org/pool/efl/libe/libevas-generic-loaders/";, "/html/body/pre/a/text()[starts-with(.,'libevas-generic-loaders1_2.6.3+v')]", "libevas-generic-loaders1_2.6.3+v" + , "http://repository.elivecd.org/pool/efl/libe/libemotion-generic-players";, "/html/body/pre/a/text()[starts-with(.,'libemotion-generic-players1_')]", "libemotion-generic-players1_" + , "http://repository.elivecd.org/pool/efl/e/e19-plain/";, "/html/body/pre/a/text()[starts-with(.,'e19-plain_2.5.6+v')]", "e19-plain_2.5.6+v" + , "http://repository.elivecd.org/pool/efl/t/terminology/";, "/html/body/pre/a/text()[starts-with(.,'terminology_2.6.0+v')]", "terminology_2.6.0+v" +), #("Arch", "https://www.archlinux.org/packages/extra/x86_64/efl/";, "/html/body/div[@id=\"content\"]/div[@id=\"pkgdetails\"]/h2/text()", "efl "), #("openSUSE 13.2", "http://download.opensuse.org/update/13.2/x86_64/";, "/html/body/pre/a/text()[starts-with(., 'efl-')]", "efl-"), #("Gentoo", "https://packages.gentoo.org/package/dev-libs/efl";, "//td[@class=\"ebuild\"][2]/text()", ""), --
[EGIT] [core/enlightenment] master 01/01: e screenlock config diloag - note insecureness for personal pw/pin
raster pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=40a91376c6024b08e99981a61376be3927aa9c61 commit 40a91376c6024b08e99981a61376be3927aa9c61 Author: Carsten Haitzler (Rasterman) Date: Wed Apr 22 17:03:44 2015 +0900 e screenlock config diloag - note insecureness for personal pw/pin these store pin/pw in your user config files - it may be primitively hashed to obscure it, but it's there. it never pretended to have secure storage and even saved cleartext until e19. make sure people are aware --- src/modules/conf_display/e_int_config_desklock.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/modules/conf_display/e_int_config_desklock.c b/src/modules/conf_display/e_int_config_desklock.c index 8e36f88..cff0f73 100644 --- a/src/modules/conf_display/e_int_config_desklock.c +++ b/src/modules/conf_display/e_int_config_desklock.c @@ -238,23 +238,23 @@ _basic_create(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata) ow = e_widget_radio_add(evas, _("Use System Authentication"), E_DESKLOCK_AUTH_METHOD_SYSTEM, rg); evas_object_smart_callback_add(ow, "changed", _login_method_change, cfdata); e_widget_list_object_append(ol, ow, 1, 1, 0.5); - ow = e_widget_radio_add(evas, _("Use Personal Screenlock Password"), E_DESKLOCK_AUTH_METHOD_PERSONAL, rg); + ow = e_widget_radio_add(evas, _("Use Personal Screenlock Password (insecure)"), E_DESKLOCK_AUTH_METHOD_PERSONAL, rg); evas_object_smart_callback_add(ow, "changed", _login_method_change, cfdata); e_widget_list_object_append(ol, ow, 1, 1, 0.5); - ow = e_widget_radio_add(evas, _("Use PIN"), E_DESKLOCK_AUTH_METHOD_PIN, rg); + ow = e_widget_radio_add(evas, _("Use PIN (insecure)"), E_DESKLOCK_AUTH_METHOD_PIN, rg); evas_object_smart_callback_add(ow, "changed", _login_method_change, cfdata); e_widget_list_object_append(ol, ow, 1, 1, 0.5); ow = e_widget_radio_add(evas, _("Use External Screenlock Command"), E_DESKLOCK_AUTH_METHOD_EXTERNAL, rg); evas_object_smart_callback_add(ow, "changed", _login_method_change, cfdata); e_widget_list_object_append(ol, ow, 1, 1, 0.5); - of = e_widget_framelist_add(evas, _("Personal Screenlock Password"), 0); + of = e_widget_framelist_add(evas, _("Personal Screenlock Password (insecure)"), 0); cfdata->passwd_entry = ow = e_widget_entry_add(cfd->dia->win, &(cfdata->desklock_personal_passwd), NULL, NULL, NULL); e_widget_entry_password_set(ow, 1); e_widget_framelist_object_append(of, ow); e_widget_list_object_append(ol, of, 1, 1, 0.5); - of = e_widget_framelist_add(evas, _("PIN Entry"), 0); + of = e_widget_framelist_add(evas, _("PIN Entry (insecure)"), 0); cfdata->pin_entry = ow = e_widget_entry_add(cfd->dia->win, &(cfdata->pin_str), NULL, NULL, NULL); e_widget_entry_password_set(ow, 1); e_widget_framelist_object_append(of, ow); --
[EGIT] [core/elementary] master 01/01: elm_photocam: Limiting image reload in zoom in/out
raster pushed a commit to branch master. http://git.enlightenment.org/core/elementary.git/commit/?id=a7978f931a4b67820b6b65758ce6f362c1ebec70 commit a7978f931a4b67820b6b65758ce6f362c1ebec70 Author: kabeer khan Date: Wed Apr 22 17:05:51 2015 +0900 elm_photocam: Limiting image reload in zoom in/out Summary: Reloading image in zoom in/out only if its previous orientation was changed @fix Signed-off-by: kabeer khan Reviewers: jpeg, raster, cedric Differential Revision: https://phab.enlightenment.org/D2402 --- src/lib/elm_photocam.c | 7 +-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/lib/elm_photocam.c b/src/lib/elm_photocam.c index 96e98af..d60ceef 100644 --- a/src/lib/elm_photocam.c +++ b/src/lib/elm_photocam.c @@ -1301,8 +1301,11 @@ _elm_photocam_image_orient_set(Eo *obj, Elm_Photocam_Data *sd, Evas_Image_Orient Eina_List *l; Elm_Phocam_Grid *g, *g_orient = NULL; - if (sd->orient == orient) return; - + if (sd->orient == orient) + { +sd->orientation_changed = EINA_FALSE; +return; + } sd->orientation_changed = EINA_TRUE; sd->orient = orient; g = _grid_create(obj); --
[EGIT] [core/enlightenment] master 01/01: po: Remove unused e_int_config_randr.c file from POTFILES.in to pass distcheck
stefan pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=d65ed603ad55816d1b160ba0a4beebc479c75073 commit d65ed603ad55816d1b160ba0a4beebc479c75073 Author: Stefan Schmidt Date: Wed Apr 22 09:43:16 2015 +0200 po: Remove unused e_int_config_randr.c file from POTFILES.in to pass distcheck This file is still around while not really used. It is also not distributed and thus fails if po tries to update during distcheck with this file still in list. --- po/POTFILES.in | 1 - 1 file changed, 1 deletion(-) diff --git a/po/POTFILES.in b/po/POTFILES.in index f692a09..c59c782 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -172,7 +172,6 @@ src/modules/conf_paths/e_mod_main.c src/modules/conf_performance/e_int_config_performance.c src/modules/conf_performance/e_int_config_powermanagement.c src/modules/conf_performance/e_mod_main.c -src/modules/conf_randr/e_int_config_randr.c src/modules/conf_randr/e_int_config_randr2.c src/modules/conf_randr/e_mod_main.c src/modules/conf_shelves/e_int_config_shelf.c --
[EGIT] [apps/rage] master 01/01: mrk build -> 0.1.3
raster pushed a commit to branch master. http://git.enlightenment.org/apps/rage.git/commit/?id=db9781ac0ad1beb4f886fe6d7bb16b89adb5319d commit db9781ac0ad1beb4f886fe6d7bb16b89adb5319d Author: Carsten Haitzler (Rasterman) Date: Wed Apr 22 16:35:56 2015 +0900 mrk build -> 0.1.3 thanks stefan --- Marrakesh.mrk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marrakesh.mrk b/Marrakesh.mrk index 34d19bb..bbf043d 100644 --- a/Marrakesh.mrk +++ b/Marrakesh.mrk @@ -1,7 +1,7 @@ PROJ: Rage PROJICON: data/icons/rage.png BRIEF: A beautiful video media player -VERSION: 0.1.2 +VERSION: 0.1.3 LICENSE: BSD-2 COPYING: COPYING AUTHORS NEEDS: 1.13 --
[EGIT] [core/elementary] master 01/01: Genlist: Fix for memory leak
hermet pushed a commit to branch master. http://git.enlightenment.org/core/elementary.git/commit/?id=1baec2473b02fae0b15e7891aac523af95e5725a commit 1baec2473b02fae0b15e7891aac523af95e5725a Author: Vaibhav Gupta Date: Wed Apr 22 16:06:14 2015 +0900 Genlist: Fix for memory leak Summary: Fix memory leak in API _elm_genlist_item_elm_interface_atspi_accessible_name_get() added free after _elm_util_mkup_to_text. @fix Reviewers: raster, singh.amitesh, Hermet Reviewed By: Hermet Subscribers: sachin.dev, singh.amitesh Differential Revision: https://phab.enlightenment.org/D2390 --- src/lib/elm_genlist.c | 11 ++- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/lib/elm_genlist.c b/src/lib/elm_genlist.c index 17fa6d3..92101fc 100644 --- a/src/lib/elm_genlist.c +++ b/src/lib/elm_genlist.c @@ -7693,16 +7693,17 @@ _elm_genlist_item_elm_interface_atspi_accessible_name_get(Eo *eo_it EINA_UNUSED, EINA_LIST_FREE(texts, key) { - char *s = it->itc->func.text_get + char *str_markup = it->itc->func.text_get ((void *)WIDGET_ITEM_DATA_GET(EO_OBJ(it)), WIDGET(it), key); + char *str_utf8 = _elm_util_mkup_to_text(str_markup); - s = _elm_util_mkup_to_text(s); + free(str_markup); - if (s) + if (str_utf8) { if (eina_strbuf_length_get(buf) > 0) eina_strbuf_append(buf, ", "); - eina_strbuf_append(buf, s); - free(s); + eina_strbuf_append(buf, str_utf8); + free(str_utf8); } } } --