[EGIT] [apps/edi] v0.6.0 03/10: exe: fix cleanup on FreeBSD of ecore_con_server/clients.

2020-05-22 Thread Al Poole
netstar pushed a commit to tag v0.6.0.

http://git.enlightenment.org/apps/edi.git/commit/?id=85594c93a9882a593215b6e23859d01e1275e2e2

commit 85594c93a9882a593215b6e23859d01e1275e2e2
Author: Al Poole 
Date:   Sun Sep 24 11:30:55 2017 +0100

exe: fix cleanup on FreeBSD of ecore_con_server/clients.
---
 src/lib/edi_exe.c | 46 --
 1 file changed, 24 insertions(+), 22 deletions(-)

diff --git a/src/lib/edi_exe.c b/src/lib/edi_exe.c
index 078a033..72934dd 100644
--- a/src/lib/edi_exe.c
+++ b/src/lib/edi_exe.c
@@ -15,13 +15,11 @@ typedef struct _Edi_Exe_Args {
void ((*func)(int, void *));
void *data;
pid_t pid;
-   char *path;
-   Ecore_Con_Server *srv;
Ecore_Event_Handler *handler;
 } Edi_Exe_Args;
 
 static Eina_Bool
-_edi_exe_notify_data_cb(void *data, int type EINA_UNUSED, void *event 
EINA_UNUSED)
+_edi_exe_notify_client_data_cb(void *data, int type EINA_UNUSED, void *event 
EINA_UNUSED)
 {
int *status;
Edi_Exe_Args *args;
@@ -34,18 +32,7 @@ _edi_exe_notify_data_cb(void *data, int type EINA_UNUSED, 
void *event EINA_UNUSE
 
args->func(*status, args->data);
 
-   /* Manually cleaning up??? */
-   if (ecore_con_server_fd_get(args->srv) != -1)
- close(ecore_con_server_fd_get(args->srv));
-   if (ecore_con_client_fd_get(ev->client) != -1)
- close(ecore_con_client_fd_get(ev->client));
-
-   if (args->path)
- {
-if (ecore_file_exists(args->path))
-  unlink(args->path);
-free(args->path);
- }
+   ecore_con_client_send(ev->client, status, sizeof(int));
 
free(args);
 
@@ -65,13 +52,25 @@ edi_exe_notify_handle(const char *name, void ((*func)(int, 
void *)), void *data)
args = malloc(sizeof(Edi_Exe_Args));
args->func = func;
args->data = data;
-   args->path = ecore_con_local_path_new(EINA_FALSE, name, 0);
-   args->srv = srv;
-   args->handler = ecore_event_handler_add(ECORE_CON_EVENT_CLIENT_DATA, 
(Ecore_Event_Handler_Cb) _edi_exe_notify_data_cb, args);
+   args->handler = ecore_event_handler_add(ECORE_CON_EVENT_CLIENT_DATA, 
(Ecore_Event_Handler_Cb) _edi_exe_notify_client_data_cb, args);
 
return EINA_TRUE;
 }
 
+static Eina_Bool
+_edi_exe_notify_server_data_cb(void *data, int type EINA_UNUSED, void *event 
EINA_UNUSED)
+{
+   Ecore_Con_Event_Server_Data *ev = event;
+   Edi_Exe_Args *args = data;
+
+   ecore_event_handler_del(args->handler);
+   ecore_con_server_del(ev->server);
+
+   free(args);
+
+   return ECORE_CALLBACK_DONE;
+}
+
 static Eina_Bool
 _edi_exe_event_done_cb(void *data EINA_UNUSED, int type EINA_UNUSED, void 
*event)
 {
@@ -90,13 +89,16 @@ _edi_exe_event_done_cb(void *data EINA_UNUSED, int type 
EINA_UNUSED, void *event
   srv = ecore_con_server_connect(ECORE_CON_LOCAL_USER, name, 0, NULL);
   if (srv)
 {
+   ecore_event_handler_del(args->handler);
+   args->handler = ecore_event_handler_add(ECORE_CON_EVENT_SERVER_DATA, 
_edi_exe_notify_server_data_cb, args);
ecore_con_server_send(srv, >exit_code, sizeof(int));
ecore_con_server_flush(srv);
 }
-
-  ecore_event_handler_del(args->handler);
-
-  free(args);
+  else
+{
+   ecore_event_handler_del(args->handler);
+   free(args);
+}
 
   return ECORE_CALLBACK_DONE;
 }

-- 




[EGIT] [apps/edi] v0.6.0 02/10: filepanel: make dialogues more informative.

2020-05-22 Thread Al Poole
netstar pushed a commit to tag v0.6.0.

http://git.enlightenment.org/apps/edi.git/commit/?id=dcac3dc39c1401ebbdc6869a222d838cd4cc2612

commit dcac3dc39c1401ebbdc6869a222d838cd4cc2612
Author: Al Poole 
Date:   Fri Sep 22 15:07:23 2017 +0100

filepanel: make dialogues more informative.
---
 src/bin/edi_filepanel.c | 28 +---
 1 file changed, 25 insertions(+), 3 deletions(-)

diff --git a/src/bin/edi_filepanel.c b/src/bin/edi_filepanel.c
index 45442c9..565c5aa 100644
--- a/src/bin/edi_filepanel.c
+++ b/src/bin/edi_filepanel.c
@@ -336,8 +336,16 @@ static void
 _item_menu_del_cb(void *data, Evas_Object *obj EINA_UNUSED,
   void *event_info EINA_UNUSED)
 {
-   edi_screens_message_confirm(_main_win, _("Are you sure you want to delete 
this file?"),
+   Edi_Dir_Data *sd = data;
+   Eina_Strbuf *message = eina_strbuf_new();
+
+   eina_strbuf_append_printf(message, _("Are you sure you want to delete 
%s ?"),
+ ecore_file_file_get(sd->path));
+
+   edi_screens_message_confirm(_main_win, eina_strbuf_string_get(message),
_item_menu_del_do_cb, data);
+
+   eina_strbuf_free(message);
 }
 
 static void
@@ -374,8 +382,14 @@ static void
 _item_menu_scm_del_cb(void *data, Evas_Object *obj EINA_UNUSED,
   void *event_info EINA_UNUSED)
 {
-   edi_screens_message_confirm(_main_win, _("Are you sure you want to delete 
this file?"),
+   Edi_Dir_Data *sd = data;
+   Eina_Strbuf *message = eina_strbuf_new();
+
+   eina_strbuf_append_printf(message, _("Are you sure you want to delete 
%s ?"),
+ ecore_file_file_get(sd->path));
+   edi_screens_message_confirm(_main_win, eina_strbuf_string_get(message),
_item_menu_scm_del_do_cb, data);
+   eina_strbuf_free(message);
 }
 
 static void
@@ -477,8 +491,16 @@ static void
 _item_menu_rmdir_cb(void *data, Evas_Object *obj EINA_UNUSED,
   void *event_info EINA_UNUSED)
 {
-   edi_screens_message_confirm(_main_win, _("Are you sure you want to delete 
this directory?"),
+   Edi_Dir_Data *sd = data;
+   Eina_Strbuf *message = eina_strbuf_new();
+
+   eina_strbuf_append_printf(message, _("Are you sure you want to delete 
%s ?"),
+ ecore_file_file_get(sd->path));
+
+   edi_screens_message_confirm(_main_win, eina_strbuf_string_get(message),
_item_menu_rmdir_do_cb, data);
+
+   eina_strbuf_free(message);
 }
 
 static void

-- 




[EGIT] [apps/edi] v0.6.0 01/10: filepanel: make dir menu behave as file menu does.

2020-05-22 Thread Al Poole
netstar pushed a commit to tag v0.6.0.

http://git.enlightenment.org/apps/edi.git/commit/?id=bd1df1e399b85cf541c584232c72c22203ccdb35

commit bd1df1e399b85cf541c584232c72c22203ccdb35
Author: Al Poole 
Date:   Fri Sep 22 15:17:39 2017 +0100

filepanel: make dir menu behave as file menu does.
---
 src/bin/edi_filepanel.c | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/bin/edi_filepanel.c b/src/bin/edi_filepanel.c
index 610603d..45442c9 100644
--- a/src/bin/edi_filepanel.c
+++ b/src/bin/edi_filepanel.c
@@ -510,10 +510,13 @@ _item_menu_create_dir_cb(void *data EINA_UNUSED, 
Evas_Object *obj EINA_UNUSED,
 static void
 _item_menu_dir_create(Evas_Object *win, Edi_Dir_Data *sd)
 {
+   Elm_Object_Item *menu_it;
+
menu = elm_menu_add(win);
evas_object_smart_callback_add(menu, "dismissed", _item_menu_dismissed_cb, 
NULL);
 
-   elm_menu_item_add(menu, NULL, "document-properties", basename((char 
*)sd->path), NULL, NULL);
+   menu_it = elm_menu_item_add(menu, NULL, "document-properties", 
basename((char *)sd->path), NULL, NULL);
+   elm_object_item_disabled_set(menu_it, EINA_TRUE);
elm_menu_item_separator_add(menu, NULL);
 
elm_menu_item_add(menu, NULL, "document-new", _("Create File here"), 
_item_menu_create_file_cb, sd);

-- 




[EGIT] [core/enlightenment] enlightenment-0.22 05/30: AUTHORS: use netstar's real name.

2018-08-02 Thread Al Poole
discomfitor pushed a commit to branch enlightenment-0.22.

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

commit 04c8ec9c397037541e6d669452258940a37b130b
Author: Al Poole 
Date:   Thu Mar 22 15:38:43 2018 +

AUTHORS: use netstar's real name.
---
 AUTHORS | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/AUTHORS b/AUTHORS
index 6e7a9fe79..479cbb59a 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -60,4 +60,4 @@ Luis de Bethencourt (luisbg) 
 bu5hm4n (Marcel Hollerbach) 
 simotek (Simon Lees) 
 Derek Foreman 
-netstar (Al Poole) 
+netstar (Alastair Poole) 

-- 




[EGIT] [apps/rage] master 01/01: AUTHORS: use netstar's full name.

2018-03-22 Thread Al Poole
netstar pushed a commit to branch master.

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

commit 33127a90d548a00566b4fc7e44ef96b093734b27
Author: Al Poole <nets...@gmail.com>
Date:   Thu Mar 22 15:40:53 2018 +

AUTHORS: use netstar's full name.
---
 AUTHORS | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/AUTHORS b/AUTHORS
index 5a1e403..88e09f2 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -1,3 +1,3 @@
 Carsten Haitzler <ras...@rasterman.com>
 Eduardo Lima (Etrunko) <ebl...@gmail.com>
-Al Poole (netstar) <nets...@gmail.com>
+Alastair Poole (netstar) <nets...@gmail.com>

-- 




[EGIT] [core/efl] master 01/01: AUTHORS: use netstar's full name.

2018-03-22 Thread Al Poole
netstar pushed a commit to branch master.

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

commit b94649b0ac9ea06f8761ba4130933ba6a71a9df2
Author: Al Poole <nets...@gmail.com>
Date:   Thu Mar 22 15:39:37 2018 +

AUTHORS: use netstar's full name.
---
 AUTHORS | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/AUTHORS b/AUTHORS
index 894fd3a798..dcc9a2a918 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -676,7 +676,7 @@ Vitaliy Venzak <v.ven...@samsung.com>
 perepelits.m <perepelit...@samsung.com>
 rustyBSD <rusty...@gmx.fr>
 Haifeng Deng <haifeng.d...@samsung.com>
-Al Poole <nets...@gmail.com>
+Alastair Poole <nets...@gmail.com>
 Marcel Hollerbach <marcel-hollerb...@t-online.de>
 Hermet Park <hermetp...@gmail.com>
 Jeeyong Um <con...@gmail.com>

-- 




[EGIT] [core/enlightenment] master 01/01: AUTHORS: use netstar's real name.

2018-03-22 Thread Al Poole
netstar pushed a commit to branch master.

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

commit 6de4f5aa5974a7eae43823cf20f7432e2f929963
Author: Al Poole <nets...@gmail.com>
Date:   Thu Mar 22 15:38:43 2018 +

AUTHORS: use netstar's real name.
---
 AUTHORS | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/AUTHORS b/AUTHORS
index 6e7a9fe79..479cbb59a 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -60,4 +60,4 @@ Luis de Bethencourt (luisbg) <l...@debethencourt.com>
 bu5hm4n (Marcel Hollerbach) <marcel-hollerb...@t-online.de>
 simotek (Simon Lees) <si...@simotek.net>
 Derek Foreman <der...@osg.samsung.com>
-netstar (Al Poole) <nets...@gmail.com>
+netstar (Alastair Poole) <nets...@gmail.com>

-- 




[EGIT] [core/enlightenment] master 01/01: Revert "meson.build set PKG_SYSCONF_DIR properly."

2018-03-11 Thread Al Poole
netstar pushed a commit to branch master.

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

commit 672b4a565778824ae07e73adbe1c830c60a7e06e
Author: Al Poole <nets...@gmail.com>
Date:   Sun Mar 11 16:43:51 2018 +

Revert "meson.build set PKG_SYSCONF_DIR properly."

This wasn't broken. Use --sysconfdir instead!

This reverts commit 1469289701648f75dedba3a9fef7779c0554adca.
---
 meson.build | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meson.build b/meson.build
index b18abfc78..3cdb499c6 100644
--- a/meson.build
+++ b/meson.build
@@ -38,7 +38,7 @@ release = 'ver-0.23'
 add_global_arguments('-DHAVE_CONFIG_H=1', language: 'c')
 dir_prefix= get_option('prefix')
 dir_bin   = join_paths(dir_prefix, get_option('bindir'))
-dir_sysconf   = join_paths(dir_prefix, get_option('sysconfdir'))
+dir_sysconf   = get_option('sysconfdir')
 dir_data  = join_paths(dir_prefix, get_option('datadir'))
 dir_include   = join_paths(dir_prefix, get_option('includedir'))
 dir_include_e = join_paths(dir_include, proj)

-- 




[EGIT] [core/enlightenment] master 01/01: meson.build set PKG_SYSCONF_DIR properly.

2018-03-11 Thread Al Poole
netstar pushed a commit to branch master.

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

commit 1469289701648f75dedba3a9fef7779c0554adca
Author: Al Poole <nets...@gmail.com>
Date:   Sun Mar 11 11:41:40 2018 +

meson.build set PKG_SYSCONF_DIR properly.

@fix T6734
---
 meson.build | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meson.build b/meson.build
index 3cdb499c6..b18abfc78 100644
--- a/meson.build
+++ b/meson.build
@@ -38,7 +38,7 @@ release = 'ver-0.23'
 add_global_arguments('-DHAVE_CONFIG_H=1', language: 'c')
 dir_prefix= get_option('prefix')
 dir_bin   = join_paths(dir_prefix, get_option('bindir'))
-dir_sysconf   = get_option('sysconfdir')
+dir_sysconf   = join_paths(dir_prefix, get_option('sysconfdir'))
 dir_data  = join_paths(dir_prefix, get_option('datadir'))
 dir_include   = join_paths(dir_prefix, get_option('includedir'))
 dir_include_e = join_paths(dir_include, proj)

-- 




[EGIT] [core/efl] efl-1.20 01/01: efreet_xml: make certain we unmap the right pointer.

2018-03-10 Thread Al Poole
netstar pushed a commit to branch efl-1.20.

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

commit 73f68ae183c3ae835418b87c079ceb033b7768e6
Author: Al Poole <nets...@gmail.com>
Date:   Sat Mar 10 11:20:42 2018 +

efreet_xml: make certain we unmap the right pointer.

This resolves all sorts of issues on FreeBSD and OpenBSD. Linux
and valgrind seems to not detect these mmap/munmap problems.

@fix T5949
---
 src/lib/efreet/efreet_xml.c | 7 ---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/lib/efreet/efreet_xml.c b/src/lib/efreet/efreet_xml.c
index 05261b2a4a..4f4cd2fea8 100644
--- a/src/lib/efreet/efreet_xml.c
+++ b/src/lib/efreet/efreet_xml.c
@@ -86,7 +86,7 @@ efreet_xml_new(const char *file)
 {
 Efreet_Xml *xml = NULL;
 int size, fd = -1;
-char *data = MAP_FAILED;
+char *tmp, *data = MAP_FAILED;
 struct stat st;
 int error = 0;
 
@@ -109,11 +109,12 @@ efreet_xml_new(const char *file)
 data = mmap(NULL, st.st_size, PROT_READ, MAP_SHARED, fd, 0);
 if (data == MAP_FAILED) goto efreet_error;
 
+tmp = data;
+
 error = 0;
 size = st.st_size;
-xml = efreet_xml_parse(, , );
+xml = efreet_xml_parse(, , );
 if (!xml || error) goto efreet_error;
-
 munmap(data, st.st_size);
 close(fd);
 return xml;

-- 




[EGIT] [core/enlightenment] master 01/01: ckpasswd: fix build on OpenBSD (typo)

2018-03-09 Thread Al Poole
netstar pushed a commit to branch master.

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

commit f72aa5671d410f4514e17d485783f88af0015433
Author: Al Poole <nets...@gmail.com>
Date:   Fri Mar 9 16:37:04 2018 +

ckpasswd: fix build on OpenBSD (typo)
---
 src/bin/e_ckpasswd_main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/e_ckpasswd_main.c b/src/bin/e_ckpasswd_main.c
index 8b6479a1c..31b04e738 100644
--- a/src/bin/e_ckpasswd_main.c
+++ b/src/bin/e_ckpasswd_main.c
@@ -26,7 +26,7 @@ _check_auth(uid_t uid, const char *guess)
if (!pwent) return -1;
if (!pwent->pw_passwd) return -1;
 
-   return crypt_checkpass(guess, pw_ent->pw_passwd);
+   return crypt_checkpass(guess, pwent->pw_passwd);
 }
 
 

-- 




[EGIT] [core/efl] master 01/01: efreet_xml: make sure we unmap the right pointer.

2018-03-03 Thread Al Poole
netstar pushed a commit to branch master.

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

commit 300831cb3cbc95b733bdaf4a17617007631a1589
Author: Al Poole <nets...@gmail.com>
Date:   Sat Mar 3 13:13:05 2018 +

efreet_xml: make sure we unmap the right pointer.

Seems Linux would munmap a lump of coal without failing. Make
sure the pointers match. Again bogus unmap not detected by
valgrind and not failing.

@fix T5949
---
 src/lib/efreet/efreet_xml.c | 7 ---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/lib/efreet/efreet_xml.c b/src/lib/efreet/efreet_xml.c
index 05261b2a4a..4f4cd2fea8 100644
--- a/src/lib/efreet/efreet_xml.c
+++ b/src/lib/efreet/efreet_xml.c
@@ -86,7 +86,7 @@ efreet_xml_new(const char *file)
 {
 Efreet_Xml *xml = NULL;
 int size, fd = -1;
-char *data = MAP_FAILED;
+char *tmp, *data = MAP_FAILED;
 struct stat st;
 int error = 0;
 
@@ -109,11 +109,12 @@ efreet_xml_new(const char *file)
 data = mmap(NULL, st.st_size, PROT_READ, MAP_SHARED, fd, 0);
 if (data == MAP_FAILED) goto efreet_error;
 
+tmp = data;
+
 error = 0;
 size = st.st_size;
-xml = efreet_xml_parse(, , );
+xml = efreet_xml_parse(, , );
 if (!xml || error) goto efreet_error;
-
 munmap(data, st.st_size);
 close(fd);
 return xml;

-- 




[EGIT] [core/enlightenment] master 01/01: e_object: set pointer to NULL after cleanup func.

2018-03-02 Thread Al Poole
netstar pushed a commit to branch master.

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

commit eee5853dac52b9d4eaecb38b7d00ebea707c63cb
Author: Al Poole <nets...@gmail.com>
Date:   Fri Mar 2 11:40:53 2018 +

e_object: set pointer to NULL after cleanup func.
---
 src/bin/e_object.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/bin/e_object.c b/src/bin/e_object.c
index 3af9dcebb..55bbfa659 100644
--- a/src/bin/e_object.c
+++ b/src/bin/e_object.c
@@ -117,6 +117,7 @@ e_object_free(E_Object *obj)
obj->magic = E_OBJECT_MAGIC_FREED;
 #endif
obj->cleanup_func(obj);
+   obj = NULL;
 }
 
 E_API int

-- 




[EGIT] [core/enlightenment] master 01/01: Byte order macro. Be consistent and get rid of clang warnings.

2018-03-01 Thread Al Poole
netstar pushed a commit to branch master.

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

commit d70733bbdc2e612eff1b50a5f60d08a550a3c19b
Author: Al Poole <nets...@gmail.com>
Date:   Thu Mar 1 18:35:16 2018 +

Byte order macro. Be consistent and get rid of clang warnings.
---
 src/bin/e_xsettings.c| 2 +-
 src/modules/everything/md5.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/bin/e_xsettings.c b/src/bin/e_xsettings.c
index 73a66c812..344094f4e 100644
--- a/src/bin/e_xsettings.c
+++ b/src/bin/e_xsettings.c
@@ -353,7 +353,7 @@ _e_xsettings_apply(Settings_Manager *sm)
pos = data = calloc(1, len);
if (!data) return;
 
-#if (__BYTE_ORDER == __LITTLE_ENDIAN) || (__BYTE_ORDER__ == 
__ORDER_LITTLE_ENDIAN__)
+#if (defined __BYTE_ORDER && __BYTE_ORDER == __LITTLE_ENDIAN) || 
(__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)
*pos = 0; //LSBFirst
 #else
*pos = 1; //MSBFirst
diff --git a/src/modules/everything/md5.c b/src/modules/everything/md5.c
index 70baf0032..1fd97c29f 100644
--- a/src/modules/everything/md5.c
+++ b/src/modules/everything/md5.c
@@ -22,7 +22,7 @@
 #include  /* for memcpy() */
 #include "md5.h"
 
-#if (__BYTE_ORDER == 1234) || (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)
+#if (defined __BYTE_ORDER && __BYTE_ORDER == __LITTLE_ENDIAN) || 
(__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)
 #define byteReverse(buf, len) /* Nothing */
 #else
 void byteReverse(unsigned char *buf, unsigned longs);

-- 




[EGIT] [core/enlightenment] master 01/01: fileman: fix use after free and workaround issues on FreeBSD.

2018-03-01 Thread Al Poole
netstar pushed a commit to branch master.

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

commit bff91e0885679db55a1f7b73d1d3f8a5f94a0e7b
Author: Al Poole <nets...@gmail.com>
Date:   Thu Mar 1 17:52:56 2018 +

fileman: fix use after free and workaround issues on FreeBSD.

Reading from tmp is causing SIGBUS issues on FreeBSD, the easiest
and cleanest way round this atm is to avoid parsing /tmp. In the
process found another bug which occurred on Linux also which was
use after free.
---
 src/modules/fileman/e_mod_menu.c | 20 +---
 1 file changed, 17 insertions(+), 3 deletions(-)

diff --git a/src/modules/fileman/e_mod_menu.c b/src/modules/fileman/e_mod_menu.c
index e28c96d71..df6aef327 100644
--- a/src/modules/fileman/e_mod_menu.c
+++ b/src/modules/fileman/e_mod_menu.c
@@ -109,19 +109,31 @@ _e_mod_menu_populate_filter(void *data EINA_UNUSED, 
Eio_File *handler, const Ein
struct stat st;
long count;
 
-   count = (long)eio_file_associate_find(handler, "count");
+   if (!handler) return EINA_FALSE;
+
+   if (eio_file_check(handler)) return EINA_FALSE;
+
+#if defined(__FreeBSD__) || defined(__DragonFly__)
+/* XXX: Accessing tmp is causing SIGBUS issues. */
+   if (!strncmp(info->path, "/tmp", 3)) return EINA_FALSE;
+#endif
+
+   count = (long) eio_file_associate_find(handler, "count");
if (count > 100)
  {
 eio_file_cancel(handler);
 return EINA_FALSE;
  }
count++;
+
eio_file_associate_add(handler, "count", (void*)count, NULL);
/* don't show .dotfiles */
if (fileman_config->view.menu_shows_files)
  return (info->path[info->name_start] != '.');
+
if (lstat(info->path, )) return EINA_FALSE;
/* don't show links to prevent infinite submenus */
+
return (info->path[info->name_start] != '.') &&
   ((info->type == EINA_FILE_DIR) || eina_str_has_extension(info->path 
+ info->name_start, "desktop")) &&
   (!S_ISLNK(st.st_mode));
@@ -135,6 +147,8 @@ _e_mod_menu_populate_item(void *data, Eio_File *handler 
EINA_UNUSED, const Eina_
const char *dev, *path;
Efreet_Desktop *ed = NULL;
 
+   if (handler && eio_file_check(handler)) return;
+
mi = m->parent_item;
dev = e_object_data_get(E_OBJECT(m));
path = mi ? e_object_data_get(E_OBJECT(mi)) : "/";
@@ -271,7 +285,7 @@ _e_mod_menu_populate_done(void *data, Eio_File *handler 
EINA_UNUSED)
 static void
 _e_mod_menu_populate_err(void *data, Eio_File *handler, int error EINA_UNUSED)
 {
-   _e_mod_menu_populate_done(data, handler);
+   (void) data; (void) handler;
 }
 
 static void
@@ -290,7 +304,7 @@ _e_mod_menu_populate(void *d, E_Menu *m EINA_UNUSED, 
E_Menu_Item *mi)
if (!subm)
  {
 subm = e_menu_new();
-e_object_data_set(E_OBJECT(subm), d);
+e_object_data_set(E_OBJECT(subm), eina_stringshare_add(dev));
 e_object_free_attach_func_set(E_OBJECT(subm), _e_mod_menu_cleanup_cb);
 e_menu_item_submenu_set(mi, subm);
 e_menu_freeze(subm);

-- 




[EGIT] [core/efl] master 01/01: eio_file: fix some indentation.

2018-02-27 Thread Al Poole
netstar pushed a commit to branch master.

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

commit 34a25f031825622216a3bde4ab5e7a4b77fe2320
Author: Al Poole <nets...@gmail.com>
Date:   Tue Feb 27 17:33:47 2018 +

eio_file: fix some indentation.

Make this easier to read.
---
 src/lib/eio/eio_file.c | 91 +-
 1 file changed, 45 insertions(+), 46 deletions(-)

diff --git a/src/lib/eio/eio_file.c b/src/lib/eio/eio_file.c
index 1afa4ab165..7a46e9b865 100644
--- a/src/lib/eio/eio_file.c
+++ b/src/lib/eio/eio_file.c
@@ -42,8 +42,8 @@ _eio_file_heavy(void *data, Ecore_Thread *thread)
ls = eina_file_ls(async->ls.directory);
if (!ls)
  {
-   eio_file_thread_error(>ls.common, thread);
-   return;
+eio_file_thread_error(>ls.common, thread);
+return;
  }
 
eio_file_container_set(>ls.common, eina_iterator_container_get(ls));
@@ -52,14 +52,14 @@ _eio_file_heavy(void *data, Ecore_Thread *thread)
 
EINA_ITERATOR_FOREACH(ls, file)
  {
-   Eina_Bool filter = EINA_TRUE;
+Eina_Bool filter = EINA_TRUE;
 
-   if (async->filter_cb)
- {
-filter = async->filter_cb((void*) async->ls.common.data, 
>ls.common, file);
- }
+if (async->filter_cb)
+{
+ filter = async->filter_cb((void*) async->ls.common.data, 
>ls.common, file);
+}
 
-   if (filter)
+if (filter)
   {
  Eio_File_Char *send_fc;
 
@@ -67,14 +67,14 @@ _eio_file_heavy(void *data, Ecore_Thread *thread)
  if (!send_fc) goto on_error;
 
  send_fc->filename = file;
-send_fc->associated = async->ls.common.worker.associated;
-async->ls.common.worker.associated = NULL;
+   send_fc->associated = async->ls.common.worker.associated;
+ async->ls.common.worker.associated = NULL;
 
-pack = eina_list_append(pack, send_fc);
+   pack = eina_list_append(pack, send_fc);
   }
-   else
+else
   {
-  on_error:
+on_error:
  eina_stringshare_del(file);
 
  if (async->ls.common.worker.associated)
@@ -86,8 +86,8 @@ _eio_file_heavy(void *data, Ecore_Thread *thread)
 
 pack = eio_pack_send(thread, pack, );
 
-   if (ecore_thread_check(thread))
- break;
+if (ecore_thread_check(thread))
+  break;
  }
 
if (pack) ecore_thread_feedback(thread, pack);
@@ -155,8 +155,8 @@ _eio_file_eina_ls_heavy(Ecore_Thread *thread, 
Eio_File_Direct_Ls *async, Eina_It
 
if (!ls)
  {
-   eio_file_thread_error(>ls.common, thread);
-   return;
+eio_file_thread_error(>ls.common, thread);
+return;
  }
 
eio_file_container_set(>ls.common, eina_iterator_container_get(ls));
@@ -165,36 +165,36 @@ _eio_file_eina_ls_heavy(Ecore_Thread *thread, 
Eio_File_Direct_Ls *async, Eina_It
 
EINA_ITERATOR_FOREACH(ls, info)
  {
-   Eina_Bool filter = EINA_TRUE;
+Eina_Bool filter = EINA_TRUE;
 
-   if (async->filter_cb)
- {
-filter = async->filter_cb((void*) async->ls.common.data, 
>ls.common, info);
- }
+if (async->filter_cb)
+  {
+ filter = async->filter_cb((void*) async->ls.common.data, 
>ls.common, info);
+  }
 
-   if (filter)
- {
-Eio_File_Direct_Info *send_di;
+if (filter)
+  {
+   Eio_File_Direct_Info *send_di;
 
-send_di = eio_direct_info_malloc();
-if (!send_di) continue;
+ send_di = eio_direct_info_malloc();
+   if (!send_di) continue;
 
-memcpy(_di->info, info, sizeof (Eina_File_Direct_Info));
-send_di->associated = async->ls.common.worker.associated;
-async->ls.common.worker.associated = NULL;
+ memcpy(_di->info, info, sizeof (Eina_File_Direct_Info));
+ send_di->associated = async->ls.common.worker.associated;
+   async->ls.common.worker.associated = NULL;
 
  pack = eina_list_append(pack, send_di);
- }
-   else if (async->ls.common.worker.associated)
- {
+}
+else if (async->ls.common.worker.associated)
+  {
  eina_hash_free(async->ls.common.worker.associated);
  async->ls.common.worker.associated = NULL;
- }
+  }
 
 pack = eio_pack_send(thread, pack, );
 
-   if (ecore_thread_check(thread))
- break;
+if (ecore_thread_check(thread))
+  break;
  }
 
if (pack) ecore_thread_feedback(thread, pack);
@@ -415,24 +415,23 @@ _eio_file_move_error(void *data, Ecore_Thread

[EGIT] [core/enlightenment] master 01/01: sysinfo: fix linux build.

2018-02-24 Thread Al Poole
netstar pushed a commit to branch master.

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

commit 46764d59754ccdcc91ed5e8d3f08a5976a422355
Author: Al Poole <nets...@gmail.com>
Date:   Sat Feb 24 18:40:24 2018 +

sysinfo: fix linux build.
---
 src/modules/sysinfo/cpuclock/cpuclock_config.c | 2 +-
 src/modules/sysinfo/meson.build| 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/modules/sysinfo/cpuclock/cpuclock_config.c 
b/src/modules/sysinfo/cpuclock/cpuclock_config.c
index e6964fa20..5477fb84a 100644
--- a/src/modules/sysinfo/cpuclock/cpuclock_config.c
+++ b/src/modules/sysinfo/cpuclock/cpuclock_config.c
@@ -590,7 +590,7 @@ cpuclock_configure(Instance *inst)
 frequency / 100.);
 #endif
  elm_object_text_set(o, buf);
- evas_object_data_set(o, "frequency", (void *) (int) frequency);
+ evas_object_data_set(o, "frequency", (void *) (long) frequency);
  elm_box_pack_end(box, o);
  evas_object_smart_callback_add(o, "changed", _frequency_changed, 
cc);
  evas_object_show(o);
diff --git a/src/modules/sysinfo/meson.build b/src/modules/sysinfo/meson.build
index ac9dc9820..257f3ce2c 100644
--- a/src/modules/sysinfo/meson.build
+++ b/src/modules/sysinfo/meson.build
@@ -57,7 +57,7 @@ if get_option(m) == true
   suid_exes += join_paths(_dir_bin, 'cpuclock_sysfs')
 endif
 
-if get_option(m) == true
+if get_option(m) == true and host_os.startswith('freebsd') or 
host_os.startswith('dragonfly')
executable('cpuclock_sysctl',
   'cpuclock/cpuclock_sysctl.c',
   c_args: suid_cflags,

-- 




[EGIT] [core/enlightenment] master 01/01: sysinfo: fix cpuclock for BSD.

2018-02-24 Thread Al Poole
netstar pushed a commit to branch master.

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

commit e33a14b7e8ea92c1180b6bf5346f47f083c9f2ff
Author: Al Poole <nets...@gmail.com>
Date:   Sat Feb 24 18:19:48 2018 +

sysinfo: fix cpuclock for BSD.

This lets us use the cpuclock gadget on FreeBSD machines.

@fix T6259
---
 src/modules/sysinfo/cpuclock/cpuclock.c| 66 +-
 src/modules/sysinfo/cpuclock/cpuclock_config.c |  4 ++
 src/modules/sysinfo/cpuclock/cpuclock_sysctl.c | 13 -
 src/modules/sysinfo/meson.build| 11 +
 src/modules/sysinfo/sysinfo.h  |  2 +-
 5 files changed, 62 insertions(+), 34 deletions(-)

diff --git a/src/modules/sysinfo/cpuclock/cpuclock.c 
b/src/modules/sysinfo/cpuclock/cpuclock.c
index 7db20e348..787a86e9f 100644
--- a/src/modules/sysinfo/cpuclock/cpuclock.c
+++ b/src/modules/sysinfo/cpuclock/cpuclock.c
@@ -56,6 +56,7 @@ _cpuclock_status_free(Cpu_Status *s)
E_FREE(s);
 }
 
+#if defined(__linux__)
 static int
 _cpuclock_cb_sort(const void *item1, const void *item2)
 {
@@ -69,27 +70,11 @@ _cpuclock_cb_sort(const void *item1, const void *item2)
return 0;
 }
 
-#if defined(__FreeBSD__) || defined(__DragonFly__) || defined(__OpenBSD__)
-static void
-_cpuclock_set_thread_frequency(void *data, Ecore_Thread *th EINA_UNUSED)
-{
-   const char *freq = data;
-   int frequency = atoi(freq);
-   _cpuclock_sysctl_frequency(frequency);
-}
-
-static void
-_cpuclock_set_thread_done(void *data EINA_UNUSED, Ecore_Thread *th EINA_UNUSED)
-{
-   return;
-}
-
 #endif
-
 void
 _cpuclock_set_governor(const char *governor)
 {
-#if defined(__FreeBSD__) || defined(__OpenBSD__)
+#if defined(__FreeBSD__) || defined(__DragonFly__) || defined(__OpenBSD__)
return;
 #endif
char buf[4096], exe[4096];
@@ -107,20 +92,20 @@ _cpuclock_set_governor(const char *governor)
 void
 _cpuclock_set_frequency(int frequency)
 {
-   char buf[4096];
+   char buf[4096], exe[4096];
+   struct stat st;
 
-#if defined(__FreeBSD__)
+#if defined(__FreeBSD__) || defined(__DragonFly__)
frequency /= 1000;
 #endif
 
-   snprintf(buf, sizeof(buf), "%i", frequency);
 #if defined(__FreeBSD__) || defined(__DragonFly__) || defined(__OpenBSD__)
-   const char *freq;
-   freq = eina_stringshare_add(buf);
-   ecore_thread_run(_cpuclock_set_thread_frequency, _cpuclock_set_thread_done, 
NULL, freq);
+   snprintf(exe, sizeof(exe), "%s/%s/cpuclock_sysctl",
+e_module_dir_get(sysinfo_config->module), MODULE_ARCH);
+   if (stat(exe, ) < 0) return;
+   snprintf(buf, sizeof(buf), "%s %d", exe, frequency);
+   system(buf);
 #else
-   struct stat st;
-   char exe[4096];
snprintf(exe, 4096, "%s/%s/cpuclock_sysfs",
 e_module_dir_get(sysinfo_config->module), MODULE_ARCH);
if (stat(exe, ) < 0) return;
@@ -133,7 +118,7 @@ _cpuclock_set_frequency(int frequency)
 void
 _cpuclock_set_pstate(int min, int max, int turbo)
 {
-#if defined(__FreeBSD__) || defined(__OpenBSD__)
+#if defined(__FreeBSD__) || defined(__DragonFly__) || defined(__OpenBSD__)
return;
 #endif
char buf[4096], exe[4096];
@@ -456,6 +441,11 @@ _cpuclock_face_update_current(Instance *inst)
  }
else
  inst->cfg->cpuclock.percent = 0;
+
+#if defined(__FreeBSD__) || defined(__DragonFly__) || defined(__OpenBSD__)
+ inst->cfg->cpuclock.percent = inst->cfg->cpuclock.status->cur_percent;
+#endif
+
/* BSD crashes here without the if-condition
 * since it has no governors (yet) */
if (inst->cfg->cpuclock.status->cur_governor)
@@ -517,7 +507,7 @@ _cpuclock_status_check_available(Cpu_Status *s)
s->frequencies = eina_list_append(s->frequencies, (void *)(long int)p);
p = 25;
s->frequencies = eina_list_append(s->frequencies, (void *)(long int)p);
-#elif defined(__FreeBSD__)
+#elif defined(__FreeBSD__) || defined(__DragonFly__)
int freq;
size_t len = sizeof(buf);
char *pos, *q;
@@ -542,8 +532,8 @@ _cpuclock_status_check_available(Cpu_Status *s)
  *q = '\0';
  freq = atoi(pos);
  freq *= 1000;
- s->frequencies = eina_list_append(s->frequencies, (void 
*)(long)freq);
 
+ s->frequencies = eina_list_append(s->frequencies, (void 
*)(long)freq);
  pos = q + 1;
  pos = strchr(pos, ' ');
   }
@@ -711,21 +701,33 @@ _cpuclock_status_check_current(Cpu_Status *s)
s->can_set_frequency = 1;
s->cur_governor = NULL;
 
-#elif defined(__FreeBSD__)
+#elif defined(__FreeBSD__) || defined(__DragonFly__)
+   float ratio;
size_t len = sizeof(frequency);
s->active = 0;
 
+   _cpuclock_status_check_available(s);
+
+   s->can_set_frequency = eina_list_count(s->frequencies);
+
/* frequency is stored in dev.cpu.0.freq */
if (sysctlbyna

[EGIT] [core/efl] efl-1.20 01/10: elm_code_widget: make sure the widget is cleared properly.

2018-02-10 Thread Al Poole
ajwillia-ms pushed a commit to branch efl-1.20.

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

commit 80327232fb6a79bc98c8c9dae30d66c8519a96de
Author: Al Poole <nets...@gmail.com>
Date:   Sat Oct 21 01:28:06 2017 +0100

elm_code_widget: make sure the widget is cleared properly.

This ensures the widget is clearer if the file has been cleared.
@fix T6185

-- 




[EGIT] [core/efl] efl-1.20 03/10: elm_code_widget: keep track of visibility.

2018-02-10 Thread Al Poole
ajwillia-ms pushed a commit to branch efl-1.20.

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

commit 9db0d1f949ae7757f1c086e1d8ec2593afd2c78e
Author: Al Poole <nets...@gmail.com>
Date:   Thu Nov 9 00:38:51 2017 +

elm_code_widget: keep track of visibility.

Keep track of visibility and ensure the cursor can never be
filled when hidden. This should finally end any issue with the
cursor and visibility with the new focus system. Didn't see this
previously until working on Edi's bottom panes which caused redraw
on resize of the widgets.

@fix
---
 src/lib/elementary/elm_code_widget.c | 4 +++-
 src/lib/elementary/elm_code_widget_private.h | 2 +-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/lib/elementary/elm_code_widget.c 
b/src/lib/elementary/elm_code_widget.c
index 954b2f99a7..8880c2fc69 100644
--- a/src/lib/elementary/elm_code_widget.c
+++ b/src/lib/elementary/elm_code_widget.c
@@ -271,7 +271,7 @@ _elm_code_widget_fill_cursor(Elm_Code_Widget *widget, 
unsigned int number, int g
 
pd = efl_data_scope_get(widget, ELM_CODE_WIDGET_CLASS);
 
-   if (pd->editable && pd->focussed && pd->cursor_line == number)
+   if (pd->visible && pd->editable && pd->focussed && pd->cursor_line == 
number)
  {
 if (pd->cursor_col + gutter - 1 >= (unsigned int) w)
   return;
@@ -617,6 +617,7 @@ _elm_code_widget_show_cb(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj EINA_
 
pd = efl_data_scope_get(widget, ELM_CODE_WIDGET_CLASS);
 
+   pd->visible = EINA_TRUE;
if (pd->cursor_rect)
  evas_object_show(pd->cursor_rect);
 }
@@ -630,6 +631,7 @@ _elm_code_widget_hidden_cb(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj EIN
 
pd = efl_data_scope_get(widget, ELM_CODE_WIDGET_CLASS);
 
+   pd->visible = EINA_FALSE;
if (pd->cursor_rect)
  evas_object_hide(pd->cursor_rect);
 }
diff --git a/src/lib/elementary/elm_code_widget_private.h 
b/src/lib/elementary/elm_code_widget_private.h
index ebedec3ad7..bef2b088b3 100644
--- a/src/lib/elementary/elm_code_widget_private.h
+++ b/src/lib/elementary/elm_code_widget_private.h
@@ -24,7 +24,7 @@ typedef struct
unsigned int cursor_line, cursor_col;
Evas_Object *cursor_rect;
 
-   Eina_Bool editable, focussed;
+   Eina_Bool visible, editable, focussed;
Eina_Bool show_line_numbers;
unsigned int line_width_marker, tabstop;
Eina_Bool show_whitespace, tab_inserts_spaces;

-- 




[EGIT] [core/efl] efl-1.20 04/10: elm_code: add support for go and markdown syntax.

2018-02-10 Thread Al Poole
ajwillia-ms pushed a commit to branch efl-1.20.

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

commit 073ecdbea0788ee975f6dc54f107c47b1796f640
Author: Al Poole <nets...@gmail.com>
Date:   Sat Nov 11 13:23:12 2017 +

elm_code: add support for go and markdown syntax.
---
 src/lib/elementary/elm_code_syntax.c | 30 ++
 1 file changed, 30 insertions(+)

diff --git a/src/lib/elementary/elm_code_syntax.c 
b/src/lib/elementary/elm_code_syntax.c
index 45647cacea..1a567fc250 100644
--- a/src/lib/elementary/elm_code_syntax.c
+++ b/src/lib/elementary/elm_code_syntax.c
@@ -80,6 +80,32 @@ static Elm_Code_Syntax _elm_code_syntax_eo =
 "implements", "constructors", "get", "set", "keys", "values", "true", 
"false", "null"}
 };
 
+static Elm_Code_Syntax _elm_code_syntax_go =
+{
+   "{}()[]:;%^/*+&|~!=<->,.",
+   ".",
+   NULL,
+   "//",
+   "/*",
+   "*/",
+   { "break", "case", "chan", "const", "default", "defer", "else", 
"fallthrough", "for", "func", "go", "goto",  \
+ "if", "import", "interface", "map", "package", "range", "return", 
"select", "struct", "switch", "type", "var", \
+ "true", "false", "iota", "nil", \
+ "int", "int8", "int16", "int32", "int64", "uint", "uint8", "uint16", 
"uint32", "uint64", "uintptr", "float32", \
+ "float64", "complex64", "complex128", "bool", "byte", "rune", "string", 
"error", "make", "len", "cap", "new", "append", \
+ "copy", "close", "delete", "complex", "real", "imag", "panic", "recover", 
NULL }
+};
+
+static Elm_Code_Syntax _elm_code_syntax_md =
+{
+   "()[]*+-_=#.>!:\\`~|",
+   "",
+   NULL,
+   NULL,
+   "",
+   {}
+};
 
 EAPI Elm_Code_Syntax *
 elm_code_syntax_for_mime_get(const char *mime)
@@ -94,6 +120,10 @@ elm_code_syntax_for_mime_get(const char *mime)
  return &_elm_code_syntax_py;
if (!strcmp("text/x-eolian", mime))
  return &_elm_code_syntax_eo;
+   if (!strcmp("text/markdown", mime))
+ return &_elm_code_syntax_md;
+   if (!strcmp("text/x-go", mime))
+ return &_elm_code_syntax_go;
 
return NULL;
 }

-- 




[EGIT] [core/efl] efl-1.20 43/45: eina_file: make sure we use a stringshare when virtualized.

2018-02-06 Thread Al Poole
raster pushed a commit to branch efl-1.20.

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

commit df7873bd6fd136ebc3d1bda2b854e53c57e84590
Author: Al Poole <nets...@gmail.com>
Date:   Thu Nov 30 13:57:25 2017 +

eina_file: make sure we use a stringshare when virtualized.

As the filename is now a stringshare, also make sure virtual
files use stringshares for the filename! Also when unmapping
we still need to test whether it is copied or not as unmap
will break on less tolerant architectures.

@fix T6449
---
 src/lib/eina/eina_file.c| 2 +-
 src/lib/eina/eina_file_common.c | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/lib/eina/eina_file.c b/src/lib/eina/eina_file.c
index c2c7f8f4aa..608efb0f18 100644
--- a/src/lib/eina/eina_file.c
+++ b/src/lib/eina/eina_file.c
@@ -297,7 +297,7 @@ eina_file_real_close(Eina_File *file)
 
if (file->fd != -1)
  {
-if (file->global_map != MAP_FAILED)
+if (!file->copied && file->global_map != MAP_FAILED)
   munmap(file->global_map, file->length);
 close(file->fd);
  }
diff --git a/src/lib/eina/eina_file_common.c b/src/lib/eina/eina_file_common.c
index 91036398cc..27e92bac5b 100644
--- a/src/lib/eina/eina_file_common.c
+++ b/src/lib/eina/eina_file_common.c
@@ -422,9 +422,9 @@ eina_file_virtualize(const char *virtual_name, const void 
*data, unsigned long l
EINA_MAGIC_SET(file, EINA_FILE_MAGIC);
file->filename = (char *)(file + 1);
if (virtual_name)
- strcpy((char *)file->filename, virtual_name);
+ file->filename = eina_stringshare_add(virtual_name);
else
- sprintf((char *)file->filename, tmpname, ti);
+ file->filename = eina_stringshare_printf(tmpname, ti);
 
eina_lock_recursive_new(>lock);
file->mtime = ti / 1000;

-- 




[EGIT] [core/enlightenment] enlightenment-0.22 18/45: build: fix meson build on FreeBSD.

2018-01-30 Thread Al Poole
discomfitor pushed a commit to branch enlightenment-0.22.

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

commit 4f5598c62df34be63da0e1e8f71d954333de798a
Author: Al Poole <nets...@gmail.com>
Date:   Fri Dec 15 11:32:17 2017 -0800

build: fix meson build on FreeBSD.

Summary: -Dsystemd=false and -Ddevice-udev=false with this.

Reviewers: raster, zmike!

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 meson.build | 2 +-
 src/bin/e_fm/meson.build| 1 +
 src/bin/meson.build | 9 +
 src/modules/temperature/meson.build | 7 ++-
 4 files changed, 13 insertions(+), 6 deletions(-)

diff --git a/meson.build b/meson.build
index 76269fe0a..c9a6b532b 100644
--- a/meson.build
+++ b/meson.build
@@ -213,7 +213,7 @@ if get_option('systemd') == true
   endif
 endif
 
-if cc.has_function('eeze_disk_function', dependencies: dependency('eeze')) == 
true
+if host_os.startswith('linux') and cc.has_function('eeze_disk_function', 
dependencies: dependency('eeze')) == true
   config_h.set('HAVE_EEZE_MOUNT', '1')
   eeze_mount = true
 endif
diff --git a/src/bin/e_fm/meson.build b/src/bin/e_fm/meson.build
index 8d5796b75..55480bb10 100644
--- a/src/bin/e_fm/meson.build
+++ b/src/bin/e_fm/meson.build
@@ -1,6 +1,7 @@
 deps = [
   dep_eina,
   dep_ecore,
+  dep_eet,
   dep_ecore_con,
   dep_ecore_file,
   dep_ecore_ipc,
diff --git a/src/bin/meson.build b/src/bin/meson.build
index 5f903e985..a8f6aa760 100644
--- a/src/bin/meson.build
+++ b/src/bin/meson.build
@@ -556,10 +556,11 @@ suid_exes += join_paths(dir_e_utils, 'enlightenment_sys')
 if freebsd == true
   executable('enlightenment_ckpasswd',
  'e_ckpasswd_main.c',
- c_args : suid_cflags,
- link_args  : suid_ldflags,
- install_dir: dir_e_utils,
- install: true
+ dependencies : [ dep_crypt ],
+ c_args   : suid_cflags,
+ link_args: suid_ldflags,
+ install_dir  : dir_e_utils,
+ install  : true
 )
   suid_exes += join_paths(dir_e_utils, 'enlightenment_ckpasswd')
 endif
diff --git a/src/modules/temperature/meson.build 
b/src/modules/temperature/meson.build
index ade13081c..0846a8654 100644
--- a/src/modules/temperature/meson.build
+++ b/src/modules/temperature/meson.build
@@ -2,6 +2,11 @@ src = files(
   'e_mod_main.c',
   'e_mod_config.c',
   'e_mod_tempget.c',
-  'e_mod_udev.c',
   'e_mod_main.h'
  )
+
+if get_option('device-udev') == true
+   src += files(
+'e_mod_udev.c'
+   )
+endif

-- 




[EGIT] [core/enlightenment] enlightenment-0.22 19/45: luncher: fix slider on mouse scroll.

2018-01-30 Thread Al Poole
discomfitor pushed a commit to branch enlightenment-0.22.

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

commit 7b6ba297d170aa8ab19c7cae8f3ed8bcc85bffa2
Author: Al Poole <nets...@gmail.com>
Date:   Fri Dec 15 20:08:10 2017 +

luncher: fix slider on mouse scroll.
---
 src/modules/luncher/config.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/modules/luncher/config.c b/src/modules/luncher/config.c
index c4043c0a4..57c48caa6 100644
--- a/src/modules/luncher/config.c
+++ b/src/modules/luncher/config.c
@@ -399,7 +399,7 @@ config_luncher(E_Zone *zone, Instance *inst, Eina_Bool bar)
elm_slider_indicator_format_set(slider, "%1.0f");
elm_slider_min_max_set(slider, 1, 256);
elm_slider_value_set(slider, inst->cfg->preview_size);
-   elm_slider_step_set(slider, 1);
+   elm_slider_step_set(slider, 1 /  256.0);
elm_slider_span_size_set(slider, 256);
E_ALIGN(slider, 0.0, 0.0);
E_WEIGHT(slider, EVAS_HINT_EXPAND, 0);

-- 




[EGIT] [core/enlightenment] enlightenment-0.22 17/45: conf_theme: show appropriate background list.

2018-01-30 Thread Al Poole
discomfitor pushed a commit to branch enlightenment-0.22.

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

commit 2988791f95f2ef005ee340eb25fdc080d2c2f0f6
Author: Al Poole <nets...@gmail.com>
Date:   Fri Dec 15 19:15:27 2017 +

conf_theme: show appropriate background list.

If a new install show the system wallpapers. If a user supplied
wallpaper show the list of user supplied. If a system, show the
system list of wallpapers. On a fresh install on first use people
realise there are wallpapers!!!
---
 src/modules/conf_theme/e_int_config_wallpaper.c | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/src/modules/conf_theme/e_int_config_wallpaper.c 
b/src/modules/conf_theme/e_int_config_wallpaper.c
index 599c6662e..3342a28e3 100644
--- a/src/modules/conf_theme/e_int_config_wallpaper.c
+++ b/src/modules/conf_theme/e_int_config_wallpaper.c
@@ -480,6 +480,12 @@ _basic_create(E_Config_Dialog *cfd EINA_UNUSED, Evas 
*evas, E_Config_Dialog_Data
evas_object_show(ow);
e_widget_table_object_append(ot, oa, 0, 2, 2, 1, 1, 1, 1, 1);
e_widget_list_object_append(o, ot, 1, 1, 0.5);
+
+   if (!cfdata->bg || cfdata->fmdir == 1)
+ e_widget_radio_toggle_set(cfdata->o_system, EINA_TRUE);
+   else
+ e_widget_radio_toggle_set(cfdata->o_personal, EINA_TRUE);
+
return o;
 }
 

-- 




[EGIT] [apps/terminology] master 01/01: meson: fix build on FreeBSD of terminology.

2017-12-18 Thread Al Poole
netstar pushed a commit to branch master.

http://git.enlightenment.org/apps/terminology.git/commit/?id=16f3870fb50929602c03955a715e4bff3f4f0fea

commit 16f3870fb50929602c03955a715e4bff3f4f0fea
Author: Al Poole <nets...@gmail.com>
Date:   Tue Dec 19 01:02:53 2017 +

meson: fix build on FreeBSD of terminology.

The option generated file causes lot of issues when it's
included in source files via private.h. Linux needs these
but FreeBSD breaks. Other option is to change header
inclusion ordering but that is messy.
---
 meson.build | 20 +---
 1 file changed, 13 insertions(+), 7 deletions(-)

diff --git a/meson.build b/meson.build
index d00fb35..d41747e 100644
--- a/meson.build
+++ b/meson.build
@@ -26,13 +26,18 @@ config_data.set_quoted('PACKAGE_DATA_DIR',
 config_data.set_quoted('PACKAGE_LIB_DIR',
join_paths(prefix, get_option('libdir')))
 config_data.set_quoted('LOCALEDIR', join_paths(prefix, 
get_option('localedir')))
-config_data.set('_GNU_SOURCE', 1)
-config_data.set('__EXTENSIONS__', 1)
-config_data.set('_POSIX_PTHREAD_SEMANTICS', 1)
-config_data.set('_TANDEM_SOURCE', 1)
-config_data.set('_ALL_SOURCE', 1)
-config_data.set('_POSIX_SOURCE', 1)
-config_data.set('_POSIX_1_SOURCE', 1)
+
+host_os = host_machine.system()
+
+if host_os == 'linux'
+   config_data.set('_GNU_SOURCE', 1)
+   config_data.set('__EXTENSIONS__', 1)
+   config_data.set('_POSIX_PTHREAD_SEMANTICS', 1)
+   config_data.set('_TANDEM_SOURCE', 1)
+   config_data.set('_ALL_SOURCE', 1)
+   config_data.set('_POSIX_SOURCE', 1)
+   config_data.set('_POSIX_1_SOURCE', 1)
+endif
 
 efl_version = '1.8.0'
 efl_deps = ['edje',
@@ -58,6 +63,7 @@ edj_files = []
 
 if get_option('nls') == true
   subdir('po')
+  terminology_dependencies += cc.find_library('intl', required: false)
 endif
 
 foreach efl_dep: efl_deps

-- 




[EGIT] [apps/ephoto] master 01/01: ephoto_config: fix segv on start

2017-12-18 Thread Al Poole
netstar pushed a commit to branch master.

http://git.enlightenment.org/apps/ephoto.git/commit/?id=7714e3756b035c581094154938749355a08e2d03

commit 7714e3756b035c581094154938749355a08e2d03
Author: Al Poole <nets...@gmail.com>
Date:   Mon Dec 18 20:35:23 2017 +

ephoto_config: fix segv on start
---
 src/bin/ephoto_config.c | 11 +++
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/src/bin/ephoto_config.c b/src/bin/ephoto_config.c
index 5907a3d..f3b871d 100644
--- a/src/bin/ephoto_config.c
+++ b/src/bin/ephoto_config.c
@@ -764,10 +764,13 @@ ephoto_config_save(Ephoto *ephoto)
 void
 ephoto_config_free(Ephoto *ephoto)
 {
-   eina_stringshare_del(ephoto->config->directory);
-   eina_stringshare_del(ephoto->config->slideshow_transition);
-   free(ephoto->config);
-   ephoto->config = NULL;
+   if (ephoto->config)
+ {
+eina_stringshare_del(ephoto->config->directory);
+eina_stringshare_del(ephoto->config->slideshow_transition);
+free(ephoto->config);
+ephoto->config = NULL;
+ }
 }
 
 Eina_Bool

-- 




[EGIT] [core/enlightenment] master 01/01: luncher: fix slider on mouse scroll.

2017-12-15 Thread Al Poole
netstar pushed a commit to branch master.

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

commit 43928a70fca8d7bf7a9fd4611af7f69d321e5f54
Author: Al Poole <nets...@gmail.com>
Date:   Fri Dec 15 20:08:10 2017 +

luncher: fix slider on mouse scroll.
---
 src/modules/luncher/config.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/modules/luncher/config.c b/src/modules/luncher/config.c
index 71023f41d..557691217 100644
--- a/src/modules/luncher/config.c
+++ b/src/modules/luncher/config.c
@@ -433,7 +433,7 @@ config_luncher(E_Zone *zone, Instance *inst, Eina_Bool bar)
elm_slider_indicator_format_set(slider, "%1.0f");
elm_slider_min_max_set(slider, 1, 256);
elm_slider_value_set(slider, inst->cfg->preview_size);
-   elm_slider_step_set(slider, 1);
+   elm_slider_step_set(slider, 1 /  256.0);
elm_slider_span_size_set(slider, 256);
E_ALIGN(slider, 0.0, 0.0);
E_WEIGHT(slider, EVAS_HINT_EXPAND, 0);

-- 




[EGIT] [core/enlightenment] master 01/01: build: fix meson build on FreeBSD.

2017-12-15 Thread Al Poole
cedric pushed a commit to branch master.

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

commit 481a4d66116c277855e4bd7afc9508185909
Author: Al Poole <nets...@gmail.com>
Date:   Fri Dec 15 11:32:17 2017 -0800

build: fix meson build on FreeBSD.

Summary: -Dsystemd=false and -Ddevice-udev=false with this.

Reviewers: raster, zmike!

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 meson.build | 2 +-
 src/bin/e_fm/meson.build| 1 +
 src/bin/meson.build | 9 +
 src/modules/temperature/meson.build | 7 ++-
 4 files changed, 13 insertions(+), 6 deletions(-)

diff --git a/meson.build b/meson.build
index 5ab590b1b..87c1abbee 100644
--- a/meson.build
+++ b/meson.build
@@ -213,7 +213,7 @@ if get_option('systemd') == true
   endif
 endif
 
-if cc.has_function('eeze_disk_function', dependencies: dependency('eeze')) == 
true
+if host_os.startswith('linux') and cc.has_function('eeze_disk_function', 
dependencies: dependency('eeze')) == true
   config_h.set('HAVE_EEZE_MOUNT', '1')
   eeze_mount = true
 endif
diff --git a/src/bin/e_fm/meson.build b/src/bin/e_fm/meson.build
index 8d5796b75..55480bb10 100644
--- a/src/bin/e_fm/meson.build
+++ b/src/bin/e_fm/meson.build
@@ -1,6 +1,7 @@
 deps = [
   dep_eina,
   dep_ecore,
+  dep_eet,
   dep_ecore_con,
   dep_ecore_file,
   dep_ecore_ipc,
diff --git a/src/bin/meson.build b/src/bin/meson.build
index e63114572..b5c8d69c3 100644
--- a/src/bin/meson.build
+++ b/src/bin/meson.build
@@ -557,10 +557,11 @@ suid_exes += join_paths(dir_e_utils, 'enlightenment_sys')
 if freebsd == true
   executable('enlightenment_ckpasswd',
  'e_ckpasswd_main.c',
- c_args : suid_cflags,
- link_args  : suid_ldflags,
- install_dir: dir_e_utils,
- install: true
+ dependencies : [ dep_crypt ],
+ c_args   : suid_cflags,
+ link_args: suid_ldflags,
+ install_dir  : dir_e_utils,
+ install  : true
 )
   suid_exes += join_paths(dir_e_utils, 'enlightenment_ckpasswd')
 endif
diff --git a/src/modules/temperature/meson.build 
b/src/modules/temperature/meson.build
index ade13081c..0846a8654 100644
--- a/src/modules/temperature/meson.build
+++ b/src/modules/temperature/meson.build
@@ -2,6 +2,11 @@ src = files(
   'e_mod_main.c',
   'e_mod_config.c',
   'e_mod_tempget.c',
-  'e_mod_udev.c',
   'e_mod_main.h'
  )
+
+if get_option('device-udev') == true
+   src += files(
+'e_mod_udev.c'
+   )
+endif

-- 




[EGIT] [core/enlightenment] master 01/01: conf_theme: show appropriate background list.

2017-12-15 Thread Al Poole
netstar pushed a commit to branch master.

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

commit cb66473320bbde536aa2cc0bc2b06f2ccbbf565a
Author: Al Poole <nets...@gmail.com>
Date:   Fri Dec 15 19:15:27 2017 +

conf_theme: show appropriate background list.

If a new install show the system wallpapers. If a user supplied
wallpaper show the list of user supplied. If a system, show the
system list of wallpapers. On a fresh install on first use people
realise there are wallpapers!!!
---
 src/modules/conf_theme/e_int_config_wallpaper.c | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/src/modules/conf_theme/e_int_config_wallpaper.c 
b/src/modules/conf_theme/e_int_config_wallpaper.c
index 599c6662e..3342a28e3 100644
--- a/src/modules/conf_theme/e_int_config_wallpaper.c
+++ b/src/modules/conf_theme/e_int_config_wallpaper.c
@@ -480,6 +480,12 @@ _basic_create(E_Config_Dialog *cfd EINA_UNUSED, Evas 
*evas, E_Config_Dialog_Data
evas_object_show(ow);
e_widget_table_object_append(ot, oa, 0, 2, 2, 1, 1, 1, 1, 1);
e_widget_list_object_append(o, ot, 1, 1, 0.5);
+
+   if (!cfdata->bg || cfdata->fmdir == 1)
+ e_widget_radio_toggle_set(cfdata->o_system, EINA_TRUE);
+   else
+ e_widget_radio_toggle_set(cfdata->o_personal, EINA_TRUE);
+
return o;
 }
 

-- 




[EGIT] [core/efl] master 01/01: Revert "BSD: resolve issue of missing symbols building E on FreeBSD."

2017-12-03 Thread Al Poole
netstar pushed a commit to branch master.

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

commit e12b5352a1e96b6f3b35f24642ed64e631b5bba1
Author: Al Poole <nets...@gmail.com>
Date:   Sun Dec 3 21:46:15 2017 +

Revert "BSD: resolve issue of missing symbols building E on FreeBSD."

This reverts commit 482724d52aaebb21ebb228eead9ddc107b094780.

Sorry!!!
---
 pc/ecore.pc.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pc/ecore.pc.in b/pc/ecore.pc.in
index 4be77bcf94..7611e968af 100644
--- a/pc/ecore.pc.in
+++ b/pc/ecore.pc.in
@@ -13,6 +13,6 @@ Name: ecore
 Description: Ecore event abstraction library
 Requires.private: @requirements_pc_ecore@
 Version: @VERSION@
-Libs: -L${libdir} -lecore -lefl -lintl
+Libs: -L${libdir} -lecore -lefl
 Libs.private: @requirements_libs_ecore@
 Cflags: -I${includedir}/efl-@VMAJ@ -I${includedir}/ecore-@VMAJ@

-- 




[EGIT] [core/efl] master 01/01: BSD: resolve issue of missing symbols building E on FreeBSD.

2017-12-03 Thread Al Poole
netstar pushed a commit to branch master.

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

commit 482724d52aaebb21ebb228eead9ddc107b094780
Author: Al Poole <nets...@gmail.com>
Date:   Sun Dec 3 13:37:42 2017 +

BSD: resolve issue of missing symbols building E on FreeBSD.
---
 pc/ecore.pc.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pc/ecore.pc.in b/pc/ecore.pc.in
index 7611e968af..4be77bcf94 100644
--- a/pc/ecore.pc.in
+++ b/pc/ecore.pc.in
@@ -13,6 +13,6 @@ Name: ecore
 Description: Ecore event abstraction library
 Requires.private: @requirements_pc_ecore@
 Version: @VERSION@
-Libs: -L${libdir} -lecore -lefl
+Libs: -L${libdir} -lecore -lefl -lintl
 Libs.private: @requirements_libs_ecore@
 Cflags: -I${includedir}/efl-@VMAJ@ -I${includedir}/ecore-@VMAJ@

-- 




[EGIT] [core/efl] master 01/01: eina_file_win32: also check for copy before unmapping region.

2017-12-02 Thread Al Poole
netstar pushed a commit to branch master.

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

commit 1be1ef168ac5d86ed46a147e3a93789cf1de0179
Author: Al Poole <nets...@gmail.com>
Date:   Sat Dec 2 11:45:53 2017 +

eina_file_win32: also check for copy before unmapping region.
---
 src/lib/eina/eina_file_win32.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/eina/eina_file_win32.c b/src/lib/eina/eina_file_win32.c
index 0ebbfe6737..9307b59e7f 100644
--- a/src/lib/eina/eina_file_win32.c
+++ b/src/lib/eina/eina_file_win32.c
@@ -385,7 +385,7 @@ eina_file_real_close(Eina_File *file)
 
if (file->handle != INVALID_HANDLE_VALUE)
  {
-if (file->global_map != MAP_FAILED)
+if (!file->copied && file->global_map != MAP_FAILED)
   UnmapViewOfFile(file->global_map);
 CloseHandle(file->handle);
  }

-- 




[EGIT] [core/efl] master 01/01: eina_file: make sure we use a stringshare when virtualized.

2017-11-30 Thread Al Poole
netstar pushed a commit to branch master.

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

commit a538f478545e094ae4f158aaf6293ccef4bfb99d
Author: Al Poole <nets...@gmail.com>
Date:   Thu Nov 30 13:57:25 2017 +

eina_file: make sure we use a stringshare when virtualized.

As the filename is now a stringshare, also make sure virtual
files use stringshares for the filename! Also when unmapping
we still need to test whether it is copied or not as unmap
will break on less tolerant architectures.

@fix T6449
---
 src/lib/eina/eina_file.c| 2 +-
 src/lib/eina/eina_file_common.c | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/lib/eina/eina_file.c b/src/lib/eina/eina_file.c
index d56612fc75..bf02410ff5 100644
--- a/src/lib/eina/eina_file.c
+++ b/src/lib/eina/eina_file.c
@@ -300,7 +300,7 @@ eina_file_real_close(Eina_File *file)
 
if (file->fd != -1)
  {
-if (file->global_map != MAP_FAILED)
+if (!file->copied && file->global_map != MAP_FAILED)
   munmap(file->global_map, file->length);
 close(file->fd);
  }
diff --git a/src/lib/eina/eina_file_common.c b/src/lib/eina/eina_file_common.c
index edebaed326..1c53226a35 100644
--- a/src/lib/eina/eina_file_common.c
+++ b/src/lib/eina/eina_file_common.c
@@ -422,9 +422,9 @@ eina_file_virtualize(const char *virtual_name, const void 
*data, unsigned long l
EINA_MAGIC_SET(file, EINA_FILE_MAGIC);
file->filename = (char *)(file + 1);
if (virtual_name)
- strcpy((char *)file->filename, virtual_name);
+ file->filename = eina_stringshare_add(virtual_name);
else
- sprintf((char *)file->filename, tmpname, ti);
+ file->filename = eina_stringshare_printf(tmpname, ti);
 
eina_lock_recursive_new(>lock);
file->mtime = ti / 1000;

-- 




[EGIT] [core/efl] master 01/01: elm_code: set the color scheme from the default edc.

2017-11-26 Thread Al Poole
netstar pushed a commit to branch master.

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

commit 5abeeb980a9fb82136a70c24f822cdc3eb633dd0
Author: Al Poole <nets...@gmail.com>
Date:   Sun Nov 26 12:36:42 2017 +

elm_code: set the color scheme from the default edc.

This allows us to override in the application also. Work from
myself and @ajwillia.ms.
---
 data/elementary/themes/edc/elm/code.edc |  38 +
 src/lib/elementary/elm_code_widget.c| 132 ++--
 2 files changed, 95 insertions(+), 75 deletions(-)

diff --git a/data/elementary/themes/edc/elm/code.edc 
b/data/elementary/themes/edc/elm/code.edc
index fc589b8fcb..608b16f671 100644
--- a/data/elementary/themes/edc/elm/code.edc
+++ b/data/elementary/themes/edc/elm/code.edc
@@ -18,3 +18,41 @@ group { name: "elm/code/layout/default";
   }
}
 }
+
+color_classes {
+color_class { name: "elm/code/status/default"; color: 36 36 36 255; }
+color_class { name: "elm/code/status/current"; color: 12 12 12 255; }
+color_class { name: "elm/code/status/ignored"; color: 36 36 36 255; }
+color_class { name: "elm/code/status/note"; color: 221 119 17 255;  }
+color_class { name: "elm/code/status/warning"; color: 221 119 17 255; }
+color_class { name: "elm/code/status/error"; color: 204 17 17 255; }
+color_class { name: "elm/code/status/fatal"; color: 204 17 17 255; }
+color_class { name: "elm/code/status/added"; color: 36 96 36 255; }
+color_class { name: "elm/code/status/removed"; color: 96 36 36 255; }
+color_class { name: "elm/code/status/changed"; color: 36 36 96 255; }
+color_class { name: "elm/code/status/passed"; color: 54 96 54 255; }
+color_class { name: "elm/code/status/failed"; color: 96 54 54 255; }
+color_class { name: "elm/code/status/todo"; color: 51 85 187 255; }
+
+color_class { name: "elm/code/token/default"; color: 187 187 187 255; }
+color_class { name: "elm/code/token/comment"; color: 85 85 85 255; }
+color_class { name: "elm/code/token/string"; color: 255 136 119 255; }
+color_class { name: "elm/code/token/number"; color: 170 153 34 255; }
+color_class { name: "elm/code/token/brace"; color: 170 102 170 255; }
+color_class { name: "elm/code/token/type"; color: 255 255 255 255; }
+color_class { name: "elm/code/token/class"; color: 255 255 255 255; }
+color_class { name: "elm/code/token/function"; color: 255 255 255 255; }
+color_class { name: "elm/code/token/param"; color: 187 187 187 255; }
+color_class { name: "elm/code/token/keyword"; color: 68 136 204 255; }
+color_class { name: "elm/code/token/preprocessor"; color: 102 255 85 255; }
+color_class { name: "elm/code/token/added"; color: 54 255 54 255; }
+color_class { name: "elm/code/token/removed"; color: 255 54 54 255; }
+color_class { name: "elm/code/token/changed"; color: 54 54 255 255; }
+color_class { name: "elm/code/token/match"; color: 187 187 51 255; }
+
+color_class { name: "elm/code/widget/color/selection"; color: 51 153 255 
255; }
+color_class { name: "elm/code/widget/color/gutter/bg"; color: 75 75 75 
255; }
+color_class { name: "elm/code/widget/color/gutter/fg"; color: 139 139 139 
255; }
+color_class { name: "elm/code/widget/color/gutter/scope/bg"; color: 54 54 
54 255; }
+color_class { name: "elm/code/widget/color/whitespace"; color: 50 50 50 
127; }
+}
diff --git a/src/lib/elementary/elm_code_widget.c 
b/src/lib/elementary/elm_code_widget.c
index ce42ab53e4..e61aa6afea 100644
--- a/src/lib/elementary/elm_code_widget.c
+++ b/src/lib/elementary/elm_code_widget.c
@@ -1782,87 +1782,64 @@ _elm_code_widget_elm_widget_widget_event(Eo *obj 
EINA_UNUSED, Elm_Code_Widget_Da
return EINA_FALSE;
 }
 
+// load a named colour class from the theme and apply it to the grid's 
specified palette
 static void
-_elm_code_widget_setup_palette(Evas_Object *o)
+_elm_code_widget_setup_palette_item(Evas_Object *grid, int type, const char 
*name, Evas_Object *edje)
 {
-   double feint = 0.5;
+   int r, g, b, a;
+
+   if (!edje_object_color_class_get(edje, name, , , , ,
+NULL, NULL, NULL, NULL, NULL, NULL, NULL, 
NULL))
+ return;
+
+   evas_object_textgrid_palette_set(grid, EVAS_TEXTGRID_PALETTE_STANDARD, 
type, r, g, b, a);
+}
+
+static void
+_elm_code_widget_setup_palette(Evas_Object *o, Evas_Object *layout)
+{
+   Evas_Object *edje;
+
+   edje = elm_layout_edje_get(layout);
 
// setup status colors
-   evas_object_textgrid_palette_set(o, EVAS_TEXTGRID_PALETTE_STANDARD,

[EGIT] [core/efl] master 01/01: efl_ui_focus_manager: remove unnecessary debugging printf.

2017-11-22 Thread Al Poole
netstar pushed a commit to branch master.

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

commit 75a450f2bad22c1798d7b20412e3d547b0d7fefe
Author: Al Poole <nets...@gmail.com>
Date:   Wed Nov 22 16:11:12 2017 +

efl_ui_focus_manager: remove unnecessary debugging printf.
---
 src/lib/elementary/efl_ui_focus_manager_calc.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/src/lib/elementary/efl_ui_focus_manager_calc.c 
b/src/lib/elementary/efl_ui_focus_manager_calc.c
index 85b6845be6..a5c6ea5af4 100644
--- a/src/lib/elementary/efl_ui_focus_manager_calc.c
+++ b/src/lib/elementary/efl_ui_focus_manager_calc.c
@@ -1454,7 +1454,6 @@ 
_efl_ui_focus_manager_calc_efl_ui_focus_manager_focus_set(Eo *obj, Efl_Ui_Focus_
 EOLIAN static void
 _efl_ui_focus_manager_calc_efl_ui_focus_manager_setup_on_first_touch(Eo *obj, 
Efl_Ui_Focus_Manager_Calc_Data *pd, Efl_Ui_Focus_Direction direction, 
Efl_Ui_Focus_Object *entry)
 {
-   printf("SETUP\n");
if (direction == EFL_UI_FOCUS_DIRECTION_PREVIOUS && entry)
  {
 Efl_Ui_Focus_Manager_Logical_End_Detail last;

-- 




[EGIT] [core/efl] master 01/01: elm_code: add support for go syntax.

2017-11-11 Thread Al Poole
netstar pushed a commit to branch master.

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

commit 42484606d0e1fbc5a36bf7a65ae7e5486e288508
Author: Al Poole <nets...@gmail.com>
Date:   Sat Nov 11 13:23:12 2017 +

elm_code: add support for go syntax.
---
 src/lib/elementary/elm_code_syntax.c | 18 ++
 1 file changed, 18 insertions(+)

diff --git a/src/lib/elementary/elm_code_syntax.c 
b/src/lib/elementary/elm_code_syntax.c
index e6542f7aac..2cef6c33a2 100644
--- a/src/lib/elementary/elm_code_syntax.c
+++ b/src/lib/elementary/elm_code_syntax.c
@@ -80,6 +80,22 @@ static Elm_Code_Syntax _elm_code_syntax_eo =
 "implements", "constructors", "get", "set", "keys", "values", "true", 
"false", "null"}
 };
 
+static Elm_Code_Syntax _elm_code_syntax_go =
+{
+   "{}()[]:;%^/*+&|~!=<->,.",
+   ".",
+   NULL,
+   "//",
+   "/*",
+   "*/",
+   { "break", "case", "chan", "const", "default", "defer", "else", 
"fallthrough", "for", "func", "go", "goto",  \
+ "if", "import", "interface", "map", "package", "range", "return", 
"select", "struct", "switch", "type", "var", \
+ "true", "false", "iota", "nil", \
+ "int", "int8", "int16", "int32", "int64", "uint", "uint8", "uint16", 
"uint32", "uint64", "uintptr", "float32", \
+ "float64", "complex64", "complex128", "bool", "byte", "rune", "string", 
"error", "make", "len", "cap", "new", "append", \
+ "copy", "close", "delete", "complex", "real", "imag", "panic", "recover", 
NULL }
+};
+
 static Elm_Code_Syntax _elm_code_syntax_md =
 {
"()[]*+-_=#.>!:\\`~|",
@@ -106,6 +122,8 @@ elm_code_syntax_for_mime_get(const char *mime)
  return &_elm_code_syntax_eo;
if (!strcmp("text/markdown", mime))
  return &_elm_code_syntax_md;
+   if (!strcmp("text/x-go", mime))
+ return &_elm_code_syntax_go;
 
return NULL;
 }

-- 




[EGIT] [core/efl] master 01/01: elm_code_widget: keep track of visibility.

2017-11-08 Thread Al Poole
netstar pushed a commit to branch master.

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

commit e63e2d7e21df13520cca1b05437e556b3fd6624f
Author: Al Poole <nets...@gmail.com>
Date:   Thu Nov 9 00:38:51 2017 +

elm_code_widget: keep track of visibility.

Keep track of visibility and ensure the cursor can never be
filled when hidden. This should finally end any issue with the
cursor and visibility with the new focus system. Didn't see this
previously until working on Edi's bottom panes which caused redraw
on resize of the widgets.

@fix
---
 src/lib/elementary/elm_code_widget.c | 4 +++-
 src/lib/elementary/elm_code_widget_private.h | 2 +-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/lib/elementary/elm_code_widget.c 
b/src/lib/elementary/elm_code_widget.c
index 1ce0ffa99c..fc20eac6ec 100644
--- a/src/lib/elementary/elm_code_widget.c
+++ b/src/lib/elementary/elm_code_widget.c
@@ -270,7 +270,7 @@ _elm_code_widget_fill_cursor(Elm_Code_Widget *widget, 
unsigned int number, int g
 
pd = efl_data_scope_get(widget, ELM_CODE_WIDGET_CLASS);
 
-   if (pd->editable && pd->focussed && pd->cursor_line == number)
+   if (pd->visible && pd->editable && pd->focussed && pd->cursor_line == 
number)
  {
 if (pd->cursor_col + gutter - 1 >= (unsigned int) w)
   return;
@@ -564,6 +564,7 @@ _elm_code_widget_show_cb(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj EINA_
 
pd = efl_data_scope_get(widget, ELM_CODE_WIDGET_CLASS);
 
+   pd->visible = EINA_TRUE;
if (pd->cursor_rect)
  evas_object_show(pd->cursor_rect);
 }
@@ -577,6 +578,7 @@ _elm_code_widget_hidden_cb(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj EIN
 
pd = efl_data_scope_get(widget, ELM_CODE_WIDGET_CLASS);
 
+   pd->visible = EINA_FALSE;
if (pd->cursor_rect)
  evas_object_hide(pd->cursor_rect);
 }
diff --git a/src/lib/elementary/elm_code_widget_private.h 
b/src/lib/elementary/elm_code_widget_private.h
index d9e071c246..4e050a799b 100644
--- a/src/lib/elementary/elm_code_widget_private.h
+++ b/src/lib/elementary/elm_code_widget_private.h
@@ -24,7 +24,7 @@ typedef struct
unsigned int cursor_line, cursor_col;
Evas_Object *cursor_rect;
 
-   Eina_Bool editable, focussed;
+   Eina_Bool visible, editable, focussed;
Eina_Bool show_line_numbers;
unsigned int line_width_marker, tabstop;
Eina_Bool show_whitespace, tab_inserts_spaces;

-- 




[EGIT] [core/efl] efl-1.20 13/47: elm_code_widget: make sure the widget is cleared properly.

2017-11-07 Thread Al Poole
raster pushed a commit to branch efl-1.20.

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

commit 5526474e8f560c6bf63888ed2adb9f47e76c6c53
Author: Al Poole <nets...@gmail.com>
Date:   Sat Oct 21 01:28:06 2017 +0100

elm_code_widget: make sure the widget is cleared properly.

This ensures the widget is clearer if the file has been cleared.
@fix T6185
---
 src/lib/elementary/elm_code_widget.c | 21 -
 1 file changed, 20 insertions(+), 1 deletion(-)

diff --git a/src/lib/elementary/elm_code_widget.c 
b/src/lib/elementary/elm_code_widget.c
index 185a9a435a..0b4b817c25 100644
--- a/src/lib/elementary/elm_code_widget.c
+++ b/src/lib/elementary/elm_code_widget.c
@@ -463,6 +463,19 @@ _elm_code_widget_refresh(Elm_Code_Widget *widget, 
Elm_Code_Line *line)
 }
 
 static void
+_elm_code_widget_clear(Elm_Code_Widget *widget)
+{
+   Elm_Code_Widget_Data *pd;
+   Evas_Object *grid;
+
+   pd = efl_data_scope_get(widget, ELM_CODE_WIDGET_CLASS);
+   EINA_LIST_FREE(pd->grids, grid)
+ {
+evas_object_del(grid);
+ }
+}
+
+static void
 _elm_code_widget_fill(Elm_Code_Widget *widget)
 {
Elm_Code_Widget_Data *pd;
@@ -492,10 +505,16 @@ static void
 _elm_code_widget_file_cb(void *data, const Efl_Event *event EINA_UNUSED)
 {
Elm_Code_Widget *widget;
+   Elm_Code_Widget_Data *pd;
 
widget = (Elm_Code_Widget *)data;
 
-   _elm_code_widget_fill(widget);
+   pd = efl_data_scope_get(widget, ELM_CODE_WIDGET_CLASS);
+
+   if (elm_code_file_lines_get(pd->code->file))
+ _elm_code_widget_fill(widget);
+   else
+ _elm_code_widget_clear(widget);
 }
 
 static void

-- 




[EGIT] [tools/edi] master 01/01: edi_about: include Edi version in title again.

2017-10-31 Thread Al Poole
netstar pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=1841082de844b11f93e1712f8e6e8cff79200fb0

commit 1841082de844b11f93e1712f8e6e8cff79200fb0
Author: Al Poole <nets...@gmail.com>
Date:   Tue Oct 31 21:07:00 2017 +

edi_about: include Edi version in title again.
---
 src/bin/screens/edi_about.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/bin/screens/edi_about.c b/src/bin/screens/edi_about.c
index ccbf4c9..e05b203 100644
--- a/src/bin/screens/edi_about.c
+++ b/src/bin/screens/edi_about.c
@@ -24,13 +24,15 @@ edi_about_show(Evas_Object *mainwin)
 {
Evas_Object *win, *vbox, *box, *table, *bg;
Evas_Object *text, *title, *authors, *buttonbox, *button, *space;
+   const char *title_text;
int alpha, r, g, b;
char buf[PATH_MAX];
 
win = elm_win_add(mainwin, "about", ELM_WIN_BASIC);
if (!win) return NULL;
 
-   elm_win_title_set(win, _("About Edi"));
+   title_text = eina_slstr_printf(_("About Edi %s"), PACKAGE_VERSION);
+   elm_win_title_set(win, title_text);
elm_win_focus_highlight_enabled_set(win, EINA_TRUE);
evas_object_smart_callback_add(win, "delete,request", _edi_about_exit, win);
 

-- 




[EGIT] [tools/edi] master 01/01: Revert "edi_filepanel: if file is deleted close item in view."

2017-10-29 Thread Al Poole
netstar pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=22b903fdcfc5a2271cfd5f81109d8f10356b136a

commit 22b903fdcfc5a2271cfd5f81109d8f10356b136a
Author: Al Poole <nets...@gmail.com>
Date:   Sun Oct 29 09:54:11 2017 +

Revert "edi_filepanel: if file is deleted close item in view."

This reverts commit 2e10b48162090a806124328ebd273cbd0d5cb191.
---
 src/bin/edi_filepanel.c | 10 ++
 1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/src/bin/edi_filepanel.c b/src/bin/edi_filepanel.c
index b676714..64a838d 100644
--- a/src/bin/edi_filepanel.c
+++ b/src/bin/edi_filepanel.c
@@ -958,15 +958,9 @@ _file_listing_updated(void *data EINA_UNUSED, int type 
EINA_UNUSED,
parent_it = _file_listing_item_find(dir);
 
if (type == EIO_MONITOR_FILE_CREATED)
- {
-_file_listing_item_insert(ev->filename, EINA_FALSE, parent_it);
- }
+ _file_listing_item_insert(ev->filename, EINA_FALSE, parent_it);
else if (type == EIO_MONITOR_FILE_DELETED)
- {
-_file_listing_item_delete(ev->filename);
-edi_mainview_item_close_path(ev->filename);
- }
-
+ _file_listing_item_delete(ev->filename);
if (type == EIO_MONITOR_DIRECTORY_CREATED)
  _file_listing_item_insert(ev->filename, EINA_TRUE, parent_it);
else if (type == EIO_MONITOR_DIRECTORY_DELETED)

-- 




[EGIT] [tools/edi] master 01/01: edi_filepanel: if file is deleted close item in view.

2017-10-29 Thread Al Poole
netstar pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=2e10b48162090a806124328ebd273cbd0d5cb191

commit 2e10b48162090a806124328ebd273cbd0d5cb191
Author: Al Poole <nets...@gmail.com>
Date:   Sun Oct 29 09:46:37 2017 +

edi_filepanel: if file is deleted close item in view.

If file is deleted outside of Edi or we stash and the file is
removed we should close the item in the editor also.
---
 src/bin/edi_filepanel.c | 10 --
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/src/bin/edi_filepanel.c b/src/bin/edi_filepanel.c
index 64a838d..b676714 100644
--- a/src/bin/edi_filepanel.c
+++ b/src/bin/edi_filepanel.c
@@ -958,9 +958,15 @@ _file_listing_updated(void *data EINA_UNUSED, int type 
EINA_UNUSED,
parent_it = _file_listing_item_find(dir);
 
if (type == EIO_MONITOR_FILE_CREATED)
- _file_listing_item_insert(ev->filename, EINA_FALSE, parent_it);
+ {
+_file_listing_item_insert(ev->filename, EINA_FALSE, parent_it);
+ }
else if (type == EIO_MONITOR_FILE_DELETED)
- _file_listing_item_delete(ev->filename);
+ {
+_file_listing_item_delete(ev->filename);
+edi_mainview_item_close_path(ev->filename);
+ }
+
if (type == EIO_MONITOR_DIRECTORY_CREATED)
  _file_listing_item_insert(ev->filename, EINA_TRUE, parent_it);
else if (type == EIO_MONITOR_DIRECTORY_DELETED)

-- 




[EGIT] [tools/edi] master 01/01: edi_main: don't start build, test, clean when unknown project type.

2017-10-28 Thread Al Poole
netstar pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=50cbcc3d93facd4716ac40872f3a50864b773de0

commit 50cbcc3d93facd4716ac40872f3a50864b773de0
Author: Al Poole <nets...@gmail.com>
Date:   Sat Oct 28 21:47:59 2017 +0100

edi_main: don't start build,test,clean when unknown project type.
---
 src/bin/edi_main.c | 9 +
 1 file changed, 9 insertions(+)

diff --git a/src/bin/edi_main.c b/src/bin/edi_main.c
index b1b04c5..d00fed7 100644
--- a/src/bin/edi_main.c
+++ b/src/bin/edi_main.c
@@ -732,6 +732,9 @@ _edi_build_display_status_cb(int status, void *data)
 static void
 _edi_build_project(void)
 {
+   if (!edi_build_provider_for_project_get())
+ return;
+
if (edi_exe_notify_handle("edi_build", _edi_build_display_status_cb, 
_("Build")))
  {
 _edi_build_menu_items_disabled_set(EINA_TRUE);
@@ -743,6 +746,9 @@ _edi_build_project(void)
 static void
 _edi_build_clean_project(void)
 {
+   if (!edi_build_provider_for_project_get())
+ return;
+
if (edi_exe_notify_handle("edi_clean", _edi_build_display_status_cb, 
_("Clean")))
  {
 _edi_build_menu_items_disabled_set(EINA_TRUE);
@@ -754,6 +760,9 @@ _edi_build_clean_project(void)
 static void
 _edi_build_test_project(void)
 {
+   if (!edi_build_provider_for_project_get())
+ return;
+
if (edi_exe_notify_handle("edi_test", _edi_build_display_status_cb, 
_("Test")))
  {
 _edi_build_menu_items_disabled_set(EINA_TRUE);

-- 




[EGIT] [tools/edi] master 01/01: mainview: add support for the new EFL focus subsystem.

2017-10-28 Thread Al Poole
netstar pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=4dc1cdf8ceb174522597a08974c614d6596f3ab0

commit 4dc1cdf8ceb174522597a08974c614d6596f3ab0
Author: Al Poole <nets...@gmail.com>
Date:   Sat Oct 28 20:53:30 2017 +0100

mainview: add support for the new EFL focus subsystem.
---
 src/bin/mainview/edi_mainview_panel.c | 102 +++---
 1 file changed, 83 insertions(+), 19 deletions(-)

diff --git a/src/bin/mainview/edi_mainview_panel.c 
b/src/bin/mainview/edi_mainview_panel.c
index e326597..a6308ab 100644
--- a/src/bin/mainview/edi_mainview_panel.c
+++ b/src/bin/mainview/edi_mainview_panel.c
@@ -57,6 +57,39 @@ edi_mainview_panel_item_current_tab_get(Edi_Mainview_Panel 
*panel)
return i;
 }
 
+static void
+_edi_mainview_panel_current_tab_hide(Edi_Mainview_Panel *panel)
+{
+   Edi_Editor *editor;
+
+   edi_mainview_panel_focus(panel);
+
+   editor = (Edi_Editor *)evas_object_data_get(panel->current->view, "editor");
+   if (editor)
+ {
+elm_object_focus_set(editor->entry, EINA_FALSE);
+evas_object_hide(editor->entry);
+ }
+}
+
+static void
+_edi_mainview_panel_current_tab_show(Edi_Mainview_Panel *panel)
+{
+   Edi_Editor *editor;
+
+   edi_mainview_panel_focus(panel);
+
+   if (!panel || !panel->current)
+ return;
+
+   editor = (Edi_Editor *)evas_object_data_get(panel->current->view, "editor");
+   if (editor)
+ {
+evas_object_show(editor->entry);
+elm_object_focus_set(editor->entry, EINA_TRUE);
+ }
+}
+
 Edi_Mainview_Item *
 _edi_mainview_panel_item_for_view_get(Edi_Mainview_Panel *panel, Evas_Object 
*view)
 {
@@ -205,9 +238,13 @@ _content_load(Edi_Mainview_Item *item)
 void
 edi_mainview_panel_item_close(Edi_Mainview_Panel *panel, Edi_Mainview_Item 
*item)
 {
+   int item_index;
+
if (!item)
  return;
 
+   item_index = eina_list_data_idx(panel->items, item);
+
edi_mainview_item_prev();
if (item->view)
  evas_object_del(item->view);
@@ -222,6 +259,20 @@ edi_mainview_panel_item_close(Edi_Mainview_Panel *panel, 
Edi_Mainview_Item *item
 
if (eina_list_count(panel->items) == 0)
  _edi_mainview_panel_show(panel, panel->welcome);
+
+   if (panel == edi_mainview_panel_current_get())
+ {
+if (eina_list_count(panel->items))
+  {
+ if (item_index)
+   item = eina_list_nth(panel->items, item_index - 1);
+ else
+   item = eina_list_nth(panel->items, item_index);
+
+ edi_mainview_panel_item_select(panel, item);
+ _edi_mainview_panel_current_tab_show(panel);
+  }
+ }
 }
 
 void
@@ -268,21 +319,15 @@ _promote(void *data, Evas_Object *obj EINA_UNUSED,
  const char *emission EINA_UNUSED, const char *source EINA_UNUSED)
 {
Edi_Mainview_Panel *panel;
-   Edi_Editor *editor;
Edi_Mainview_Item *item = (Edi_Mainview_Item *) data;
 
panel = edi_mainview_panel_for_item_get(item);
 
-   edi_mainview_panel_focus(panel);
-
-   editor = (Edi_Editor *)evas_object_data_get(panel->current->view, "editor");
-   if (editor)
- elm_object_focus_set(editor->entry, EINA_FALSE);
+   _edi_mainview_panel_current_tab_hide(panel);
 
edi_mainview_panel_item_select(panel, (Edi_Mainview_Item *)data);
-   editor = (Edi_Editor *)evas_object_data_get(panel->current->view, "editor");
-   if (editor)
- elm_object_focus_set(editor->entry, EINA_TRUE);
+
+   _edi_mainview_panel_current_tab_show(panel);
 
edi_filepanel_select_path(item->path);
 }
@@ -301,8 +346,12 @@ _closetab(void *data, Evas_Object *obj EINA_UNUSED,
 edi_mainview_panel_remove(panel);
 index = edi_mainview_panel_count() - 1;
 panel = edi_mainview_panel_by_index(index);
-edi_mainview_panel_focus(panel);
  }
+
+   edi_mainview_panel_focus(panel);
+
+   if (eina_list_count(panel->items))
+ _edi_mainview_panel_current_tab_show(panel);
 }
 
 static Evas_Object *
@@ -332,6 +381,12 @@ _edi_mainview_panel_item_tab_add(Edi_Mainview_Panel 
*panel, Edi_Path_Options *op
 
int id = edi_mainview_panel_id(panel);
 
+   if (panel == edi_mainview_panel_current_get())
+ {
+if (eina_list_count(panel->items))
+  _edi_mainview_panel_current_tab_hide(panel);
+ }
+
item = edi_mainview_item_add(options, mime, NULL, NULL);
content = _edi_mainview_panel_content_create(item, panel->content);
item->view = content;
@@ -365,6 +420,7 @@ _edi_mainview_panel_item_tab_add(Edi_Mainview_Panel *panel, 
Edi_Path_Options *op
editor = (Edi_Editor *)evas_object_data_get(content, "editor");
if (editor)
  {
+evas_object_show(editor->entry);
 elm_object_focus_set(editor->entry, EINA_TRUE);
 code = elm_code_widget_code_get(editor->entry);
 editor->save_time = 
ec

[EGIT] [tools/edi] master 01/01: tests: fix build on FreeBSD.

2017-10-28 Thread Al Poole
netstar pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=ebee8283de8311a1dacb3446bc0e3d15d6dd220d

commit ebee8283de8311a1dacb3446bc0e3d15d6dd220d
Author: Al Poole <nets...@gmail.com>
Date:   Sat Oct 28 13:47:54 2017 +0100

tests: fix build on FreeBSD.
---
 src/tests/meson.build | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/tests/meson.build b/src/tests/meson.build
index 1bf75e0..5c50f9a 100644
--- a/src/tests/meson.build
+++ b/src/tests/meson.build
@@ -11,7 +11,7 @@ src = files([
 
 check = dependency('check')
 
-deps = [elm, check, edi_lib]
+deps = [elm, check, edi_lib, intl]
 incls = [include_directories('../../../src/bin'), 
include_directories('../../../src/lib'), top_inc]
 
 if get_option('libclang') == true

-- 




[EGIT] [core/efl] master 01/01: elm_code: hide cursor if we hide the widget.

2017-10-26 Thread Al Poole
netstar pushed a commit to branch master.

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

commit e663e4d00921acb12758d88b8effccb4ec900a00
Author: Al Poole <nets...@gmail.com>
Date:   Thu Oct 26 22:39:21 2017 +0100

elm_code: hide cursor if we hide the widget.

The cursor isn't clipped so if we decide to hide the widget
this ensures the cursor also is hidden. This should not affect
any existing application using elm_code API.
---
 src/lib/elementary/elm_code_widget.c | 28 
 1 file changed, 28 insertions(+)

diff --git a/src/lib/elementary/elm_code_widget.c 
b/src/lib/elementary/elm_code_widget.c
index a99eba1aca..175bc86ce4 100644
--- a/src/lib/elementary/elm_code_widget.c
+++ b/src/lib/elementary/elm_code_widget.c
@@ -557,6 +557,32 @@ _elm_code_widget_resize_cb(void *data, Evas *e 
EINA_UNUSED, Evas_Object *obj EIN
 }
 
 static void
+_elm_code_widget_show_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED,
+   void *event_info EINA_UNUSED)
+{
+   Elm_Code_Widget_Data *pd;
+   Elm_Code_Widget *widget = (Elm_Code_Widget *) data;
+
+   pd = efl_data_scope_get(widget, ELM_CODE_WIDGET_CLASS);
+
+   if (pd->cursor_rect)
+ evas_object_show(pd->cursor_rect);
+}
+
+static void
+_elm_code_widget_hidden_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED,
+   void *event_info EINA_UNUSED)
+{
+   Elm_Code_Widget_Data *pd;
+   Elm_Code_Widget *widget = (Elm_Code_Widget *) data;
+
+   pd = efl_data_scope_get(widget, ELM_CODE_WIDGET_CLASS);
+
+   if (pd->cursor_rect)
+ evas_object_hide(pd->cursor_rect);
+}
+
+static void
 _elm_code_widget_cursor_ensure_visible(Elm_Code_Widget *widget)
 {
Evas_Coord viewx, viewy, vieww, viewh, cellw = 0, cellh = 0;
@@ -2182,6 +2208,8 @@ _elm_code_widget_efl_canvas_group_group_add(Eo *obj, 
Elm_Code_Widget_Data *pd)
 
evas_object_event_callback_add(obj, EVAS_CALLBACK_RESIZE, 
_elm_code_widget_resize_cb, obj);
evas_object_event_callback_add(obj, EVAS_CALLBACK_KEY_DOWN, 
_elm_code_widget_key_down_cb, obj);
+   evas_object_event_callback_add(obj, EVAS_CALLBACK_HIDE, 
_elm_code_widget_hidden_cb, obj);
+   evas_object_event_callback_add(obj, EVAS_CALLBACK_SHOW, 
_elm_code_widget_show_cb, obj);
 
evas_object_smart_callback_add(obj, "focused", 
_elm_code_widget_focused_event_cb, obj);
evas_object_smart_callback_add(obj, "unfocused", 
_elm_code_widget_unfocused_event_cb, obj);

-- 




[EGIT] [tools/edi] master 01/01: editor: align search and replace entries. Neater.

2017-10-23 Thread Al Poole
netstar pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=90e842638532bf44cfc33c5116b13e2fd7bdeb2e

commit 90e842638532bf44cfc33c5116b13e2fd7bdeb2e
Author: Al Poole <nets...@gmail.com>
Date:   Tue Oct 24 00:51:13 2017 +0100

editor: align search and replace entries. Neater.
---
 src/bin/editor/edi_editor_search.c | 27 +--
 1 file changed, 13 insertions(+), 14 deletions(-)

diff --git a/src/bin/editor/edi_editor_search.c 
b/src/bin/editor/edi_editor_search.c
index ae6284d..6adbbc9 100644
--- a/src/bin/editor/edi_editor_search.c
+++ b/src/bin/editor/edi_editor_search.c
@@ -420,8 +420,8 @@ _edi_search_key_up_cb(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj,
 void
 edi_editor_search_add(Evas_Object *parent, Edi_Editor *editor)
 {
-   Evas_Object *entry, *wrapped, *lbl, *btn, *box, *big_box;
-   Evas_Object *replace_entry, *replace_lbl, *replace_btn, *replace_box;
+   Evas_Object *entry, *wrapped, *lbl, *btn, *box, *big_box, *table;
+   Evas_Object *replace_entry, *replace_lbl, *replace_btn;
Evas_Object *checkbox;
Edi_Editor_Search *search;
 
@@ -438,11 +438,18 @@ edi_editor_search_add(Evas_Object *parent, Edi_Editor 
*editor)
evas_object_show(box);
elm_box_pack_end(big_box, box);
 
+   table = elm_table_add(parent);
+   evas_object_size_hint_align_set(table, EVAS_HINT_FILL, EVAS_HINT_FILL);
+   evas_object_size_hint_weight_set(table, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   elm_table_padding_set(table, 5, 0);
+   evas_object_show(table);
+   elm_box_pack_end(box, table);
+
lbl = elm_label_add(parent);
elm_object_text_set(lbl, _("Search term"));
evas_object_size_hint_align_set(lbl, EVAS_HINT_FILL, 0.5);
evas_object_size_hint_weight_set(lbl, 0.0, 0.0);
-   elm_box_pack_end(box, lbl);
+   elm_table_pack(table, lbl, 0, 0, 1, 1);
evas_object_show(lbl);
 
entry = elm_entry_add(parent);
@@ -450,22 +457,14 @@ edi_editor_search_add(Evas_Object *parent, Edi_Editor 
*editor)
elm_entry_single_line_set(entry, EINA_TRUE);
evas_object_size_hint_align_set(entry, EVAS_HINT_FILL, 0.0);
evas_object_size_hint_weight_set(entry, EVAS_HINT_EXPAND, 0.0);
-   elm_box_pack_end(box, entry);
+   elm_table_pack(table, entry, 1, 0, 1, 1);
evas_object_show(entry);
 
-   replace_box = elm_box_add(parent);
-   elm_box_padding_set(replace_box, 15, 0);
-   elm_box_horizontal_set(replace_box, EINA_TRUE);
-   evas_object_size_hint_align_set(replace_box, EVAS_HINT_FILL, 
EVAS_HINT_FILL);
-   evas_object_size_hint_weight_set(replace_box, EVAS_HINT_EXPAND, 0.0);
-   evas_object_show(replace_box);
-   elm_box_pack_end(big_box, replace_box);
-
replace_lbl = elm_label_add(parent);
elm_object_text_set(replace_lbl, _("Replace term"));
evas_object_size_hint_align_set(replace_lbl, EVAS_HINT_FILL, 0.5);
evas_object_size_hint_weight_set(replace_lbl, 0.0, 0.0);
-   elm_box_pack_end(replace_box, replace_lbl);
+   elm_table_pack(table, replace_lbl, 0, 1, 1, 1);
evas_object_show(replace_lbl);
 
replace_entry = elm_entry_add(parent);
@@ -473,7 +472,7 @@ edi_editor_search_add(Evas_Object *parent, Edi_Editor 
*editor)
elm_entry_single_line_set(replace_entry, EINA_TRUE);
evas_object_size_hint_align_set(replace_entry, EVAS_HINT_FILL, 0.0);
evas_object_size_hint_weight_set(replace_entry, EVAS_HINT_EXPAND, 0.0);
-   elm_box_pack_end(replace_box, replace_entry);
+   elm_table_pack(table, replace_entry, 1, 1, 1, 1);
evas_object_show(replace_entry);
evas_object_smart_callback_add(replace_entry, "changed", 
_edi_replace_entry_changed, editor);
 

-- 




[EGIT] [tools/edi] master 01/02: build: meson, fine tweaking of meson preparation.

2017-10-21 Thread Al Poole
netstar pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=1a4533b4714f02b25518a1608792e0fb2a7130ca

commit 1a4533b4714f02b25518a1608792e0fb2a7130ca
Author: Al Poole <nets...@gmail.com>
Date:   Sat Oct 21 23:49:39 2017 +0100

build: meson, fine tweaking of meson preparation.
---
 src/lib/edi_build_provider_meson.c | 21 +
 1 file changed, 1 insertion(+), 20 deletions(-)

diff --git a/src/lib/edi_build_provider_meson.c 
b/src/lib/edi_build_provider_meson.c
index 01f10df..a62f72d 100644
--- a/src/lib/edi_build_provider_meson.c
+++ b/src/lib/edi_build_provider_meson.c
@@ -100,35 +100,16 @@ _meson_ninja_do(Meson_Data *md, const char *arg)
 }
 
 static Eina_Bool
-_meson_prepare_end(void *data, int evtype EINA_UNUSED, void *evinfo)
-{
-   Meson_Data *me = data;
-   Ecore_Exe_Event_Del *ev = evinfo;
-
-   if (!ev->exe) return ECORE_CALLBACK_RENEW;
-   if (ecore_exe_data_get(ev->exe) != me) return ECORE_CALLBACK_RENEW;
-
-   return ECORE_CALLBACK_RENEW;
-}
-
-static Eina_Bool
 _meson_prepare(Meson_Data *md)
 {
const char *cmd;
-   Ecore_Exe *exe;
 
if (_meson_configured_check(md->fulldir)) return EINA_TRUE;
if (chdir(md->basedir) != 0) return EINA_FALSE;
 
cmd = eina_slstr_printf("meson %s && %s", md->builddir, 
_meson_ninja_cmd(md, ""));
 
-   exe = ecore_exe_pipe_run(cmd,
-ECORE_EXE_PIPE_READ_LINE_BUFFERED | 
ECORE_EXE_PIPE_READ |
-ECORE_EXE_PIPE_ERROR_LINE_BUFFERED | 
ECORE_EXE_PIPE_ERROR |
-ECORE_EXE_PIPE_WRITE | ECORE_EXE_USE_SH, md);
-
-   if (!exe) return EINA_FALSE;
-   ecore_event_handler_add(ECORE_EXE_EVENT_DEL, _meson_prepare_end, md);
+   edi_exe_notify("edi_build", cmd);
 
return EINA_FALSE;
 }

-- 




[EGIT] [tools/edi] master 02/02: Merge branch 'master' of git+ssh://git.enlightenment.org/tools/edi

2017-10-21 Thread Al Poole
netstar pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=70a5ee304b3c84d79e253b61f615b3d568768b09

commit 70a5ee304b3c84d79e253b61f615b3d568768b09
Merge: 1a4533b 1d2cf4a
Author: Al Poole <nets...@gmail.com>
Date:   Sat Oct 21 23:50:09 2017 +0100

Merge branch 'master' of git+ssh://git.enlightenment.org/tools/edi

 INSTALL  | 376 ---
 Makefile.am  | 108 ---
 Makefile_Edje_Helper.am  |   9 -
 Makefile_Eolian_Helper.am|  24 ---
 README   |  36 
 README.md|  19 +-
 autogen.sh   |  15 --
 configure.ac | 219 ---
 data/Makefile.am |   4 -
 data/desktop/Makefile.am |   9 -
 data/extra/Makefile.am   |   4 -
 data/extra/templates/Makefile.am |  28 ---
 data/images/Makefile.am  |   8 -
 data/themes/Makefile.am  |   4 -
 data/themes/default/Makefile.am  |  22 ---
 doc/Makefile.am  |  38 
 m4/efl.m4| 123 -
 m4/efl_binary.m4 |  79 
 m4/efl_compiler_flag.m4  |  57 --
 m4/efl_doxygen.m4|  98 --
 m4/efl_path_max.m4   |  36 
 m4/efl_tests.m4  |  65 ---
 packaging/Makefile.am|   4 -
 packaging/pkgbuild/Makefile.am   |   3 -
 src/Makefile.am  |   4 -
 src/bin/Makefile.am  |  81 -
 src/lib/Makefile.am  |  41 -
 src/tests/Makefile.am|  35 
 28 files changed, 46 insertions(+), 1503 deletions(-)

-- 




[EGIT] [tools/edi] master 01/01: edi_main: find a consistent icon for "close" across icon themes.

2017-10-21 Thread Al Poole
netstar pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=8b9d3106d5b221003fae9ac60484c4287ee32a65

commit 8b9d3106d5b221003fae9ac60484c4287ee32a65
Author: Al Poole <nets...@gmail.com>
Date:   Sat Oct 21 14:19:40 2017 +0100

edi_main: find a consistent icon for "close" across icon themes.

tested with adwaita, elm, faenza,  breeze etc etc.
---
 src/bin/edi_main.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/bin/edi_main.c b/src/bin/edi_main.c
index 606b699..b1b04c5 100644
--- a/src/bin/edi_main.c
+++ b/src/bin/edi_main.c
@@ -1147,8 +1147,8 @@ _edi_menu_setup(Evas_Object *win)
elm_menu_item_add(menu, menu_it, "document-new", _("New ..."), 
_edi_menu_new_cb, NULL);
elm_menu_item_add(menu, menu_it, "folder-new", _("New Directory ..."), 
_edi_menu_new_dir_cb, NULL);
_edi_menu_save = elm_menu_item_add(menu, menu_it, "document-save", 
_("Save"), _edi_menu_save_cb, NULL);
-   elm_menu_item_add(menu, menu_it, "document-close", _("Close"), 
_edi_menu_close_cb, NULL);
-   elm_menu_item_add(menu, menu_it, "document-close", _("Close all"), 
_edi_menu_closeall_cb, NULL);
+   elm_menu_item_add(menu, menu_it, "window-close", _("Close"), 
_edi_menu_close_cb, NULL);
+   elm_menu_item_add(menu, menu_it, "window-close", _("Close all"), 
_edi_menu_closeall_cb, NULL);
elm_menu_item_separator_add(menu, menu_it);
elm_menu_item_add(menu, menu_it, "preferences-desktop", _("Settings"), 
_edi_menu_settings_cb, NULL);
elm_menu_item_separator_add(menu, menu_it);
@@ -1228,7 +1228,7 @@ edi_toolbar_setup(Evas_Object *parent)
 
_edi_toolbar_item_add(tb, "document-new", _("New File"), _tb_new_cb);
_edi_toolbar_save =_edi_toolbar_item_add(tb, "document-save", _("Save"), 
_tb_save_cb);
-   _edi_toolbar_item_add(tb, "document-close", _("Close"), _tb_close_cb);
+   _edi_toolbar_item_add(tb, "window-close", _("Close"), _tb_close_cb);
 
tb_it = elm_toolbar_item_append(tb, "separator", "", NULL, NULL);
elm_toolbar_item_separator_set(tb_it, EINA_TRUE);

-- 




[EGIT] [tools/edi] master 01/01: edi_scm: use better gravity when loading the diff into the widget.

2017-10-21 Thread Al Poole
netstar pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=316b7db9bdef37a62fcaa745983eeb7f4ac428a0

commit 316b7db9bdef37a62fcaa745983eeb7f4ac428a0
Author: Al Poole <nets...@gmail.com>
Date:   Sat Oct 21 14:09:57 2017 +0100

edi_scm: use better gravity when loading the diff into the widget.
---
 src/bin/edi_scm_ui.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/edi_scm_ui.c b/src/bin/edi_scm_ui.c
index 1ef46b8..47bd316 100644
--- a/src/bin/edi_scm_ui.c
+++ b/src/bin/edi_scm_ui.c
@@ -741,7 +741,7 @@ edi_scm_ui_add(Evas_Object *parent)
edi_scm->code = code = elm_code_create();
entry = elm_code_widget_add(box, code);
elm_code_parser_standard_add(code, ELM_CODE_PARSER_STANDARD_DIFF);
-   elm_obj_code_widget_gravity_set(entry, 1.0, 0.0);
+   elm_obj_code_widget_gravity_set(entry, 0.0, 0.0);
elm_obj_code_widget_editable_set(entry, EINA_FALSE);
elm_obj_code_widget_line_numbers_set(entry, EINA_FALSE);
evas_object_size_hint_weight_set(entry, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);

-- 




[EGIT] [tools/edi] master 01/01: edi_file: replace. use a local temp directory rather than /tmp.

2017-10-21 Thread Al Poole
netstar pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=3ec3d476fde66d39d188dba9917d9da3b73b3c65

commit 3ec3d476fde66d39d188dba9917d9da3b73b3c65
Author: Al Poole <nets...@gmail.com>
Date:   Sat Oct 21 14:05:13 2017 +0100

edi_file: replace. use a local temp directory rather than /tmp.

This is firstly more portable and also some distrbutors won't allow
us to move from /tmp (wise).
---
 src/bin/edi_file.c | 11 +--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/src/bin/edi_file.c b/src/bin/edi_file.c
index a67e79e..4c94928 100644
--- a/src/bin/edi_file.c
+++ b/src/bin/edi_file.c
@@ -1,5 +1,6 @@
 #include "Edi.h"
 #include "edi_file.h"
+#include "edi_config.h"
 #include "edi_private.h"
 
 Eina_Bool
@@ -23,10 +24,14 @@ edi_file_text_replace(const char *path, const char *search, 
const char *replace)
char *map, *found;
FILE *tempfile;
Eina_File *f;
-   char tempfilepath[PATH_MAX];
+   char *tempfiledir, *tempfilepath;
unsigned long long len, idx;
unsigned int slen;
 
+   tempfiledir = edi_path_append(_edi_config_dir_get(), ".tmp");
+
+   ecore_file_mkdir(tempfiledir);
+
f = eina_file_open(path, EINA_FALSE);
if (!f) return;
 
@@ -44,7 +49,7 @@ edi_file_text_replace(const char *path, const char *search, 
const char *replace)
 return;
  }
 
-   snprintf(tempfilepath, sizeof(tempfilepath), "/tmp/%s.tmp", 
ecore_file_file_get(path));
+   tempfilepath = edi_path_append(tempfiledir, ecore_file_file_get(path));
 
tempfile = fopen(tempfilepath, "wb");
if (!tempfile) goto done;
@@ -78,9 +83,11 @@ edi_file_text_replace(const char *path, const char *search, 
const char *replace)
 
fclose(tempfile);
ecore_file_mv(tempfilepath, path);
+   free(tempfilepath);
 done:
eina_file_map_free(f, map);
eina_file_close(f);
+   free(tempfiledir);
 }
 
 static void

-- 




[EGIT] [core/efl] master 01/01: elm_code_widget: make sure the widget is cleared properly.

2017-10-20 Thread Al Poole
netstar pushed a commit to branch master.

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

commit eeb25519b3b56094aa889d99a15dbe17f8f61786
Author: Al Poole <nets...@gmail.com>
Date:   Sat Oct 21 01:28:06 2017 +0100

elm_code_widget: make sure the widget is cleared properly.

This ensures the widget is clearer if the file has been cleared.
@fix T6185
---
 src/lib/elementary/elm_code_widget.c | 21 -
 1 file changed, 20 insertions(+), 1 deletion(-)

diff --git a/src/lib/elementary/elm_code_widget.c 
b/src/lib/elementary/elm_code_widget.c
index aa160f803f..a99eba1aca 100644
--- a/src/lib/elementary/elm_code_widget.c
+++ b/src/lib/elementary/elm_code_widget.c
@@ -463,6 +463,19 @@ _elm_code_widget_refresh(Elm_Code_Widget *widget, 
Elm_Code_Line *line)
 }
 
 static void
+_elm_code_widget_clear(Elm_Code_Widget *widget)
+{
+   Elm_Code_Widget_Data *pd;
+   Evas_Object *grid;
+
+   pd = efl_data_scope_get(widget, ELM_CODE_WIDGET_CLASS);
+   EINA_LIST_FREE(pd->grids, grid)
+ {
+evas_object_del(grid);
+ }
+}
+
+static void
 _elm_code_widget_fill(Elm_Code_Widget *widget)
 {
Elm_Code_Widget_Data *pd;
@@ -492,10 +505,16 @@ static void
 _elm_code_widget_file_cb(void *data, const Efl_Event *event EINA_UNUSED)
 {
Elm_Code_Widget *widget;
+   Elm_Code_Widget_Data *pd;
 
widget = (Elm_Code_Widget *)data;
 
-   _elm_code_widget_fill(widget);
+   pd = efl_data_scope_get(widget, ELM_CODE_WIDGET_CLASS);
+
+   if (elm_code_file_lines_get(pd->code->file))
+ _elm_code_widget_fill(widget);
+   else
+ _elm_code_widget_clear(widget);
 }
 
 static void

-- 




[EGIT] [tools/edi] master 01/01: edi_scm: remove bogus hack when clearing elm_code_file.

2017-10-20 Thread Al Poole
netstar pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=bdde32ba8819a4f8ff3dc2f28c400e526debea95

commit bdde32ba8819a4f8ff3dc2f28c400e526debea95
Author: Al Poole <nets...@gmail.com>
Date:   Sat Oct 21 01:26:59 2017 +0100

edi_scm: remove bogus hack when clearing elm_code_file.
---
 src/bin/edi_scm_ui.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/src/bin/edi_scm_ui.c b/src/bin/edi_scm_ui.c
index 0e0f7d8..1ef46b8 100644
--- a/src/bin/edi_scm_ui.c
+++ b/src/bin/edi_scm_ui.c
@@ -456,8 +456,6 @@ _edi_scm_ui_refresh(Edi_Scm_Ui *edi_scm)
elm_genlist_clear(edi_scm->list);
 
elm_code_file_clear(edi_scm->code->file);
-   /* FIXME: Clears but does not render until it *has* to. */
-   elm_code_file_line_append(edi_scm->code->file, "\n", 1, NULL);
 
staged = _edi_scm_ui_status_list_fill(edi_scm);
 

-- 




[EGIT] [tools/edi] master 01/01: mainview: remove pointless code and guard against crash.

2017-10-19 Thread Al Poole
netstar pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=e6a0cce26a09d4e24a7f90708957b987cb6ac088

commit e6a0cce26a09d4e24a7f90708957b987cb6ac088
Author: Al Poole <nets...@gmail.com>
Date:   Thu Oct 19 21:41:26 2017 +0100

mainview: remove pointless code and guard against crash.
---
 src/bin/mainview/edi_mainview.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/bin/mainview/edi_mainview.c b/src/bin/mainview/edi_mainview.c
index 5661114..6d1d86e 100644
--- a/src/bin/mainview/edi_mainview.c
+++ b/src/bin/mainview/edi_mainview.c
@@ -316,7 +316,9 @@ void edi_mainview_split_current(void)
  return;
 
panel = edi_mainview_panel_current_get();
-   edi_mainview_panel_focus(panel);
+
+   if (!panel->current)
+ return;
 
editor = evas_object_data_get(panel->current->view, "editor");
if (!editor)

-- 




[EGIT] [tools/edi] master 01/01: welcome: make _edi_welcome_user_fullname_get less complex.

2017-10-16 Thread Al Poole
netstar pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=cf476eaee78c2f67c4dc9cd5bf991c5812bd16e7

commit cf476eaee78c2f67c4dc9cd5bf991c5812bd16e7
Author: Al Poole <nets...@gmail.com>
Date:   Mon Oct 16 10:34:59 2017 +0100

welcome: make _edi_welcome_user_fullname_get less complex.
---
 src/bin/screens/edi_welcome.c | 13 -
 1 file changed, 4 insertions(+), 9 deletions(-)

diff --git a/src/bin/screens/edi_welcome.c b/src/bin/screens/edi_welcome.c
index 78bd2d0..177f6d8 100644
--- a/src/bin/screens/edi_welcome.c
+++ b/src/bin/screens/edi_welcome.c
@@ -322,17 +322,11 @@ _edi_welcome_user_fullname_get(const char *username, char 
*fullname, size_t max)
unsigned int n;
 
if (!username)
- return -1;
+ return 0;
 
-   errno = 0;
p = getpwnam(username);
if (p == NULL || max == 0)
- {
-if (errno == 0)
-  return 0;
-else
-  return -1;
- }
+ return 0;
 
pos = strchr(p->pw_gecos, ',');
if (!pos)
@@ -347,6 +341,7 @@ _edi_welcome_user_fullname_get(const char *username, char 
*fullname, size_t max)
 
memcpy(fullname, p->pw_gecos, n);
fullname[n] = '\0';
+
return 1;
 }
 
@@ -370,7 +365,7 @@ _edi_welcome_project_details(Evas_Object *naviframe, 
Edi_Template *template)
_edi_welcome_project_new_directory_row_add(_("Parent Path"), row++, 
content);
_edi_welcome_project_new_input_row_add(_("Project Name"), NULL, row++, 
content);
_edi_welcome_project_new_input_row_add(_("Project URL"), NULL, row++, 
content);
-   if (_edi_welcome_user_fullname_get(username, fullname, 1024) > 0)
+   if (_edi_welcome_user_fullname_get(username, fullname, sizeof(fullname)))
   _edi_welcome_project_new_input_row_add(_("Creator Name"), fullname, 
row++, content);
else
   _edi_welcome_project_new_input_row_add(_("Creator Name"), username, 
row++, content);

-- 




[EGIT] [tools/edi] master 01/01: skeletons: rearrange template/skeleton directory structure

2017-10-15 Thread Al Poole
netstar pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=4737aa611c85981b011f3dcbc9fb9c3d269f3acc

commit 4737aa611c85981b011f3dcbc9fb9c3d269f3acc
Author: Al Poole <nets...@gmail.com>
Date:   Sun Oct 15 16:29:06 2017 +0100

skeletons: rearrange template/skeleton directory structure
---
 COPYING|   2 +-
 configure.ac   |   2 +-
 data/extra/Makefile.am |   2 +-
 data/extra/skeleton/Makefile.am|  23 --
 data/extra/templates/Makefile.am   |  26 +
 data/extra/{skeleton => templates}/eflproject.edc  |   2 +-
 .../{skeleton => templates}/eflproject_python.edc  |   2 +-
 data/extra/{skeleton => templates}/images/c.png| Bin
 .../{skeleton => templates}/images/python.png  | Bin
 data/extra/{skeleton => templates}/meson.build |  12 +-
 .../skeletons}/eflproject/.gitignore   |   0
 .../skeletons}/eflproject/AUTHORS  |   0
 .../skeletons}/eflproject/COPYING  |   0
 .../skeletons}/eflproject/ChangeLog|   0
 .../skeletons}/eflproject/INSTALL  |   0
 .../skeletons}/eflproject/Makefile.am  |   0
 .../skeletons}/eflproject/Makefile_Edje_Helper.am  |   0
 .../skeletons}/eflproject/NEWS |   0
 .../skeletons}/eflproject/README   |   0
 .../skeletons}/eflproject/TODO |   0
 .../skeletons}/eflproject/autogen.sh   |   0
 .../skeletons}/eflproject/configure.ac |   0
 .../skeletons}/eflproject/data/Makefile.am |   0
 .../eflproject/data/desktop/${edi_name}.desktop.in |   0
 .../eflproject/data/desktop/${edi_name}.png| Bin
 .../skeletons}/eflproject/data/desktop/Makefile.am |   0
 .../skeletons}/eflproject/data/themes/Makefile.am  |   0
 .../eflproject/data/themes/default/Makefile.am |   0
 .../eflproject/data/themes/default/default.edc |   0
 .../data/themes/default/images/enlightenment.png   | Bin
 .../eflproject/data/themes/default/sounds/bell.wav | Bin
 .../skeletons}/eflproject/description  |   0
 .../skeletons}/eflproject/doc/${edi_name}.1.in |   0
 .../skeletons}/eflproject/doc/Makefile.am  |   0
 .../skeletons}/eflproject/m4/efl.m4|   0
 .../skeletons}/eflproject/m4/efl_attribute.m4  |   0
 .../skeletons}/eflproject/m4/efl_binary.m4 |   0
 .../skeletons}/eflproject/m4/efl_compiler_flag.m4  |   0
 .../skeletons}/eflproject/m4/efl_doxygen.m4|   0
 .../skeletons}/eflproject/m4/efl_path_max.m4   |   0
 .../skeletons}/eflproject/m4/efl_tests.m4  |   0
 .../skeletons}/eflproject/po/Makevars  |   0
 .../skeletons}/eflproject/po/POTFILES.in   |   0
 .../skeletons}/eflproject/src/Makefile.am  |   0
 .../eflproject/src/bin/${edi_name}_main.c  |   0
 .../eflproject/src/bin/${edi_name}_private.h   |   0
 .../skeletons}/eflproject/src/bin/Makefile.am  |   0
 .../skeletons}/eflproject/src/bin/gettext.h|   0
 .../skeletons}/eflproject/src/lib/${Edi_Name}.h|   0
 .../skeletons}/eflproject/src/lib/${edi_name}.c|   0
 .../eflproject/src/lib/${edi_name}_private.h   |   0
 .../skeletons}/eflproject/src/lib/Makefile.am  |   0
 .../skeletons}/eflproject/src/tests/Makefile.am|   0
 .../eflproject/src/tests/test_${edi_name}.c|   0
 .../skeletons}/eflproject_python/COPYING   |   0
 .../skeletons}/eflproject_python/README|   0
 .../skeletons}/eflproject_python/bin/${Edi_Name}   |   0
 .../data/desktop/${edi_name}.desktop   |   0
 .../data/icons/48x48/apps/${edi_name}.png  | Bin
 .../skeletons}/eflproject_python/setup.py  |   0
 .../skeletons}/eflproject_python/src/__init__.py   |   0
 .../skeletons}/eflproject_python/src/main.py   |   0
 data/meson.build   |   2 +-
 src/bin/screens/edi_welcome.c  |   4 ++--
 64 files changed, 40 insertions(+), 37 deletions(-)

diff --git a/COPYING b/COPYING
index 739c37e..a7ed6c9 100644
--- a/COPYING
+++ b/COPYING
@@ -6,6 +6,6 @@ With the exception of "edi" which constitutes all remaining work
 in this code base the licenses apply to projects within their
 own top level directory. The project licenses are as follows:
 
-data/extra/skeletonNo license - public domain
+data/extra/templates/  No license - public domain
 edi:   COPYING.GPLv2
 
diff --git a/configure.ac b/configure.ac
index fa72c17..7c7d79a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -180,7 +180,7 @@ data/desktop/edi.desktop
 data/themes/Makefile
 data/themes/default/Makefile
 data/extra/Makefile
-data/extra/skeleton/Makefile
+data/extra/templates/Makefile
 doc/Makefile
 packaging/Makefile
 packaging/pkgbuild/Makefile
diff

[EGIT] [tools/edi] master 01/01: welcome: change layout, making it slightly smaller.

2017-10-15 Thread Al Poole
netstar pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=f5a236bf7d6f5d2cd37c47a62427c3b8cd02c74a

commit f5a236bf7d6f5d2cd37c47a62427c3b8cd02c74a
Author: Al Poole <nets...@gmail.com>
Date:   Sun Oct 15 13:50:29 2017 +0100

welcome: change layout, making it slightly smaller.
---
 src/bin/screens/edi_welcome.c | 6 --
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/bin/screens/edi_welcome.c b/src/bin/screens/edi_welcome.c
index ce8ac91..fd919a0 100644
--- a/src/bin/screens/edi_welcome.c
+++ b/src/bin/screens/edi_welcome.c
@@ -416,6 +416,7 @@ _content_get(void *data, Evas_Object *obj, const char 
*source)
  return NULL;
 
frame = elm_frame_add(obj);
+   elm_object_style_set(frame, "pad_medium");
evas_object_size_hint_weight_set(frame, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(frame, EVAS_HINT_FILL, EVAS_HINT_FILL);
evas_object_show(frame);
@@ -423,6 +424,7 @@ _content_get(void *data, Evas_Object *obj, const char 
*source)
table = elm_table_add(obj);
evas_object_size_hint_weight_set(table, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(table, EVAS_HINT_FILL, EVAS_HINT_FILL);
+   elm_table_padding_set(table, 5, 5);
evas_object_show(table);
 
label = elm_label_add(table);
@@ -439,7 +441,7 @@ _content_get(void *data, Evas_Object *obj, const char 
*source)
rect = evas_object_rectangle_add(table);
evas_object_size_hint_weight_set(rect, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(rect, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   evas_object_size_hint_min_set(rect, 128 * elm_config_scale_get(), 128 * 
elm_config_scale_get());
+   evas_object_size_hint_min_set(rect, 96 * elm_config_scale_get(), 96 * 
elm_config_scale_get());
elm_table_pack(table, rect, 0, 1, 1, 1);
 
box = elm_box_add(obj);
@@ -449,7 +451,7 @@ _content_get(void *data, Evas_Object *obj, const char 
*source)
rect = evas_object_rectangle_add(table);
evas_object_size_hint_weight_set(rect, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(rect, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   evas_object_size_hint_min_set(rect, 300 * elm_config_scale_get(), 128 * 
elm_config_scale_get());
+   evas_object_size_hint_min_set(rect, 300 * elm_config_scale_get(), 96 * 
elm_config_scale_get());
elm_table_pack(table, rect, 1, 1, 1, 1);
 
entry = elm_entry_add(box);

-- 




[EGIT] [tools/edi] master 01/01: welcome: add visual notifcation when fields are empty.

2017-10-14 Thread Al Poole
netstar pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=6ad43c27158497d880a2e5b663b545b4b22be539

commit 6ad43c27158497d880a2e5b663b545b4b22be539
Author: Al Poole <nets...@gmail.com>
Date:   Sat Oct 14 13:26:29 2017 +0100

welcome: add visual notifcation when fields are empty.

This is quite subtle but I like it.
---
 src/bin/screens/edi_welcome.c | 7 +++
 1 file changed, 7 insertions(+)

diff --git a/src/bin/screens/edi_welcome.c b/src/bin/screens/edi_welcome.c
index 5c26377..ce8ac91 100644
--- a/src/bin/screens/edi_welcome.c
+++ b/src/bin/screens/edi_welcome.c
@@ -305,6 +305,13 @@ _edi_welcome_project_new_create_cb(void *data EINA_UNUSED, 
Evas_Object *obj EINA
 edi_create_efl_project(template->skeleton_path, path, name, url, user, 
email,
_edi_welcome_project_new_create_done_cb);
  }
+   else
+ {
+if (path && !path[0])
+  elm_object_focus_set(_create_inputs[0], EINA_TRUE);
+else if (name && !name[0])
+  elm_object_focus_set(_create_inputs[1], EINA_TRUE);
+ }
 }
 
 static int

-- 




[EGIT] [tools/edi] master 01/01: welcome: Improve project creation.

2017-10-13 Thread Al Poole
netstar pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=f155a58983587296b3662884f92e020061306182

commit f155a58983587296b3662884f92e020061306182
Author: Al Poole <nets...@gmail.com>
Date:   Fri Oct 13 22:03:20 2017 +0100

welcome: Improve project creation.

Add support for additional meta data including images and
title/descriptions. Also add a new frame to the project
creation process with more descriptive choices of project type.
Layouts can change later.
---
 data/extra/skeleton/Makefile.am   |  11 +-
 data/extra/skeleton/eflproject.edc|  23 ++
 data/extra/skeleton/eflproject_python.edc |  23 ++
 data/extra/skeleton/images/c.png  | Bin 0 -> 7097 bytes
 data/extra/skeleton/images/python.png | Bin 0 -> 8510 bytes
 data/extra/skeleton/meson.build   |  23 +-
 src/bin/screens/edi_welcome.c | 378 ++
 7 files changed, 312 insertions(+), 146 deletions(-)

diff --git a/data/extra/skeleton/Makefile.am b/data/extra/skeleton/Makefile.am
index 46df77b..6787854 100644
--- a/data/extra/skeleton/Makefile.am
+++ b/data/extra/skeleton/Makefile.am
@@ -1,9 +1,12 @@
+
 MAINTAINERCLEANFILES = Makefile.in
 
 skeletondir = $(datadir)/$(PACKAGE)/skeleton
 skeleton_DATA = \
 eflproject.tar.gz \
-eflproject_python.tar.gz 
+eflproject.edj \
+eflproject_python.tar.gz \
+eflproject_python.edj
 
 eflproject.tar.gz:
tar zcvf eflproject.tar.gz -C $(srcdir) eflproject
@@ -11,4 +14,10 @@ eflproject.tar.gz:
 eflproject_python.tar.gz:
tar zcvf eflproject_python.tar.gz -C $(srcdir) eflproject_python
 
+eflproject.edj:
+   edje_cc -id images/ eflproject.edc
+
+eflproject_python.edj:
+   edje_cc -id images/ eflproject_python.edc
+
 EXTRA_DIST = $(skeleton_DATA)
diff --git a/data/extra/skeleton/eflproject.edc 
b/data/extra/skeleton/eflproject.edc
new file mode 100644
index 000..fa5056a
--- /dev/null
+++ b/data/extra/skeleton/eflproject.edc
@@ -0,0 +1,23 @@
+data {
+item: "title" "C EFL Project";
+item: "file"  "eflproject.tar.gz";
+item: "description"
+
+"C EFL Project.Begin your C programming EFL project. All content 
is freely modifiable and distributable and licensed in the 
public-domain.Happy hacking!";
+}
+
+collections {
+group {
+   name: "logo";
+   max: 128 128;
+   parts {
+   part { name: "icon";
+  description { state: "default" 0.0;
+ max: 128 128;
+ image.image: "c.png" COMP;
+ image.normal: "c.png";
+  }
+}
+   }
+}
+}
diff --git a/data/extra/skeleton/eflproject_python.edc 
b/data/extra/skeleton/eflproject_python.edc
new file mode 100644
index 000..87bd914
--- /dev/null
+++ b/data/extra/skeleton/eflproject_python.edc
@@ -0,0 +1,23 @@
+data {
+item: "title" "Python EFL Project";
+item: "file"  "eflproject_python.tar.gz";
+item: "description"
+
+"Python EFL Project.Start your new EFL Python programming project. 
All code is in the public-domain, you are free to modify and distribute as you 
wish.";
+}
+
+collections {
+group {
+   name: "logo";
+   max: 128 128;
+   parts {
+   part { name: "icon";
+  description { state: "default" 0.0;
+ max: 128 128;
+ image.image: "python.png" COMP;
+ image.normal: "python.png";
+  }
+}
+   }
+}
+}
diff --git a/data/extra/skeleton/images/c.png b/data/extra/skeleton/images/c.png
new file mode 100644
index 000..9d94aaa
Binary files /dev/null and b/data/extra/skeleton/images/c.png differ
diff --git a/data/extra/skeleton/images/python.png 
b/data/extra/skeleton/images/python.png
new file mode 100644
index 000..0eabd23
Binary files /dev/null and b/data/extra/skeleton/images/python.png differ
diff --git a/data/extra/skeleton/meson.build b/data/extra/skeleton/meson.build
index fc134d5..7ae8183 100644
--- a/data/extra/skeleton/meson.build
+++ b/data/extra/skeleton/meson.build
@@ -1,11 +1,12 @@
 tar = find_program('tar')
+edje_cc = find_program('edje_cc')
 
 skeleton_names = ['eflproject', 'eflproject_python']
 
 foreach skeleton_name : skeleton_names
 
   custom_target('skeleton ' + skeleton_name,
- command : [tar, 'zcf', '@OUTPUT@', '@INPUT@'],
+ command : [tar, 'zcf', '@OUTPUT@', '-C', '../data/extra/skeleton', 
skeleton_name],
  input : skeleton_name,
  output : skeleton_name + '.tar.gz',
  install_dir: join_paths(get_option('prefix'), get_option('datadir'), 
'edi', 'skeleton'),
@@ -13,3 +14,23 @@ foreach skeleton_name : skeleton_names
   )
 
 endforeach
+
+c