[E-devel] Fwd: [Webkit-unassigned] [Bug 151188] [EFL] Fix EFL 1.16 with enabled NEON support

2015-11-16 Thread ryuan Choi
Hi,

Could anyone know about this build break in EFL 1.6 with neon support ?
Maybe CEDRIC? :)

Thanks to ossy, made a patch for it,
https://bug-151188-attachments.webkit.org/attachment.cgi?id=265585 .
I think that he allows to use or land after modified the patch if this
break is still valid.

Best regards,
Ryuan Choi

-- Forwarded message --
From: <bugzilla-dae...@webkit.org>
Date: 2015-11-12 22:42 GMT+09:00
Subject: [Webkit-unassigned] [Bug 151188] [EFL] Fix EFL 1.16 with enabled
NEON support
To: webkit-unassig...@lists.webkit.org


*Comment # 2 <https://bugs.webkit.org/show_bug.cgi?id=151188#c2> on bug
151188 <https://bugs.webkit.org/show_bug.cgi?id=151188> from Csaba
Osztrogonác <o...@webkit.org> *

Maybe the following patch fixes this issue:

diff --git a/src/lib/ector/software/ector_drawhelper_private.h
b/src/lib/ector/software/ector_drawhelper_private.h
index d15a8f6..d62830a 100644
--- a/src/lib/ector/software/ector_drawhelper_private.h
+++ b/src/lib/ector/software/ector_drawhelper_private.h
@@ -11,6 +11,10 @@
 #define MAX( a, b )  ( (a) > (b) ? (a) : (b) )
 #endif

+#ifndef DATA32
+typedef unsigned int DATA32;
+#endif
+
 #ifndef uint
 typedef unsigned int uint;
 #endif



I'll try it later and will submit if it is enough.

--
You are receiving this mail because:

   - You are the assignee for the bug.


___
webkit-unassigned mailing list
webkit-unassig...@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-unassigned
--
Presto, an open source distributed SQL query engine for big data, initially
developed by Facebook, enables you to easily query your data on Hadoop in a 
more interactive manner. Teradata is also now providing full enterprise
support for Presto. Download a free open source copy now.
http://pubads.g.doubleclick.net/gampad/clk?id=250295911=/4140
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [webkit-dev] Proposal: Remove TextureMapperImageBuffer

2015-04-27 Thread ryuan Choi
Hi,

I saw below email but I don't know about llvmpipe which is blacklisted in
EFL.
Could anyone answer it?

Some information is here : https://bugs.webkit.org/show_bug.cgi?id=137842
Now, ewebkit is developing with official efl-1.13.0

Best Regards,
Ryuan Choi

2015-04-24 14:35 GMT+09:00 Gwang Yoon Hwang y...@igalia.com:

 Hi all,

 After llvmpipe(Mesa) is blacklisted in EFL (after bumped up EFL),
 I couldn’t fix regressions related with TextureMapper and
 CoordinatedGraphics in EFL port.

 I agree to remove TextureMapperImageBuffer and disable accelerated
 compositing in EFL port
 for awhile.

 Gyuyoung, could you find out a reason why EFL blacklisted llvmpipe for
 OpenGL(ES) backend?

 Regards,
 Yoon

  On Apr 24, 2015, at 11:04 AM, Gyuyoung Kim gyuyoung@webkit.org
 wrote:
 
  Hello Martin,
 
  I and Ossy have maintained EFL bots and EWS so far. Recently WebGL
 feature has been broken on EFL port since we bumped EFL version to 1.11.2.
 That's why we skipped to run WebGL tests on EFL layout test. -
 https://trac.webkit.org/changeset/167345.
 
  But, unfortunately I'm not sure when we can fix it for EFL port. Thus I
 agree to disable the accelerated compositing and skip related tests
  in order not to block your work.
 
  If any EFL folks know better solution for now, please let us know.
 
  Gyuyoung.
 
  On Fri, Apr 24, 2015 at 5:38 AM, Martin Robinson mrobin...@webkit.org
 wrote:
  I'd love to coordinate with whoever is running the EFL bots to get a
  configuration that can run these tests with OpenGL. The WebKitGTK+
  bots use llvmpipe to make this happen.
 
  --Martin
 
  On Thu, Apr 23, 2015 at 1:15 PM, Benjamin Poulain benja...@webkit.org
 wrote:
   It seems undesirable to use a completely different stack for testing
 and for
   shipping.
  
   Wouldn't it be possible to use Mesa on the EFL bots?
  
  
   On 4/23/15 12:10 PM, Martin Robinson wrote:
  
   A slight update on this issue. It's already been attempted here:
   https://bugs.webkit.org/show_bug.cgi?id=143561
  
   The issue is that WebKitEFL is using the TextureMapperImageBuffer to
   run tests on their bots, because the EFL bots don't support OpenGL
   tests. My suggestion is that we disable accelerated compositing
   completely for WebKitEFL (if possible) and skip those tests. Once the
   bots have the ability to run tests that use OpenGL, we can re-enable
   that code path for WebKitEFL.
  
   --Martin
  
   On Thu, Apr 23, 2015 at 11:12 AM, Martin Robinson 
 mrobin...@webkit.org
   wrote:
  
   Background: There currently exists a fallback TextureMapper
   implementation that does not use OpenGL to composite and project
   layers, but instead relies on 2D rasterization. This does not work
   correctly for Cairo, since Cairo only supports affine
 transformations.
   I believe this path is only used by GTK+ (and perhaps WinCairo) now.
  
   Proposal: I would like to remove TextureMapperImageBuffer and make
   TextureMapperGL the only implementation of TextureMapper. Not only
   will this simplify the code, it will remove a build flag
   (TEXTURE_MAPPER_GL). The current path isn't (or really shouldn't) be
   enabled by default.
  
   Please speak up if you are opposed. :)
  
   --Martin
  
   ___
   webkit-dev mailing list
   webkit-...@lists.webkit.org
   https://lists.webkit.org/mailman/listinfo/webkit-dev
  
  
   ___
   webkit-dev mailing list
   webkit-...@lists.webkit.org
   https://lists.webkit.org/mailman/listinfo/webkit-dev
  ___
  webkit-dev mailing list
  webkit-...@lists.webkit.org
  https://lists.webkit.org/mailman/listinfo/webkit-dev
 
  ___
  webkit-dev mailing list
  webkit-...@lists.webkit.org
  https://lists.webkit.org/mailman/listinfo/webkit-dev


 ___
 webkit-dev mailing list
 webkit-...@lists.webkit.org
 https://lists.webkit.org/mailman/listinfo/webkit-dev


--
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: fileselector: Do not call _populate directly in APIs

2014-10-28 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 3b392e004590ae930db4e4f145a8ed62252c2801
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Wed Oct 29 10:07:44 2014 +0900

fileselector: Do not call _populate directly in APIs

Summary:
User application may call some fileselector APIs to configure fileselector 
instance.
And some of them may call _populate but only last request is needed.
However, T1663 raises that last request might be rejected with expansion 
option and
multiple requests of _populate.
It's because expansion mode do not allow next _populate until previous one 
is finished.

So, this patch fixes it via scheduling _populate instead of calling 
_populate() directly in APIs.

@fix

Maniphest Tasks: T1663
---
 src/lib/elc_fileselector.c| 130 --
 src/lib/elm_widget_fileselector.h |   5 +-
 2 files changed, 86 insertions(+), 49 deletions(-)

diff --git a/src/lib/elc_fileselector.c b/src/lib/elc_fileselector.c
index e1145c4..b6e7d01 100644
--- a/src/lib/elc_fileselector.c
+++ b/src/lib/elc_fileselector.c
@@ -736,29 +736,50 @@ static Eina_Bool
 _populate_do(void *data)
 {
struct sel_data *sdata = data;
-   const char *p;
-
ELM_FILESELECTOR_DATA_GET(sdata-fs, sd);
 
-   /* keep a ref to path 'couse it will be destroyed by _populate */
-   p = eina_stringshare_add(sdata-path);
-   _populate(sdata-fs, p, NULL, NULL);
-   eina_stringshare_del(p);
+   _populate(sdata-fs, sdata-path, NULL, sdata-selected);
+   eina_stringshare_del(sdata-path);
+   eina_stringshare_del(sdata-selected);
 
sd-populate_idler = NULL;
+
free(sdata);
return ECORE_CALLBACK_CANCEL;
 }
 
 static void
+_schedule_populate(Evas_Object *fs,
+   Elm_Fileselector_Data *sd,
+   Eina_Stringshare *path,
+   Eina_Stringshare *selected)
+{
+   struct sel_data *sdata;
+   sdata = malloc(sizeof(*sdata));
+   if (!sdata) return;
+
+   sdata-fs = fs;
+   sdata-path = path;
+   sdata-selected = selected;
+
+   if (sd-populate_idler)
+ {
+struct sel_data *old_sdata;
+old_sdata = ecore_idler_del(sd-populate_idler);
+eina_stringshare_del(old_sdata-path);
+eina_stringshare_del(old_sdata-selected);
+free(old_sdata);
+ }
+   sd-populate_idler = ecore_idler_add(_populate_do, sdata);
+}
+
+static void
 _on_item_activated(void *data,
Evas_Object *obj EINA_UNUSED,
void *event_info)
 {
//This event_info could be a list or gengrid item
Elm_Object_Item *it = event_info;
-   struct sel_data *sdata;
-   void *old_sdata;
const char *path;
Eina_Bool is_dir;
 
@@ -776,18 +797,7 @@ _on_item_activated(void *data,
 
if (!sd-double_tap_navigation) return;
 
-   sdata = malloc(sizeof(*sdata));
-   if (!sdata) return;
-
-   sdata-fs = data;
-   sdata-path = path;
-
-   if (sd-populate_idler)
- {
-old_sdata = ecore_idler_del(sd-populate_idler);
-free(old_sdata);
- }
-   sd-populate_idler = ecore_idler_add(_populate_do, sdata);
+   _schedule_populate(data, sd, eina_stringshare_add(path), NULL);
 }
 
 static void
@@ -825,8 +835,6 @@ _on_item_selected(void *data,
 {
//This event_info could be a list or gengrid item
Elm_Object_Item *it = event_info;
-   struct sel_data *sdata;
-   void *old_sdata;
const char *path;
char *parent_path;
Eina_Bool is_dir;
@@ -904,18 +912,7 @@ _on_item_selected(void *data,
 
if (sd-double_tap_navigation) return;
 
-   sdata = malloc(sizeof(*sdata));
-   if (!sdata) return;
-
-   sdata-fs = data;
-   sdata-path = path;
-
-   if (sd-populate_idler)
- {
-old_sdata = ecore_idler_del(sd-populate_idler);
-free(old_sdata);
- }
-   sd-populate_idler = ecore_idler_add(_populate_do, sdata);
+   _schedule_populate(data, sd, eina_stringshare_add(path), NULL);
 }
 
 static void
@@ -1605,7 +1602,11 @@ 
_elm_fileselector_elm_interface_fileselector_folder_only_set(Eo *obj, Elm_Filese
if (sd-only_folder == only) return;
 
sd-only_folder = !!only;
-   if (sd-path) _populate(obj, sd-path, NULL, NULL);
+   if (sd-path)
+ {
+eina_stringshare_ref(sd-path);
+_schedule_populate(obj, sd, sd-path, NULL);
+ }
 }
 
 EAPI Eina_Bool
@@ -1676,7 +1677,11 @@ 
_elm_fileselector_elm_interface_fileselector_expandable_set(Eo *obj, Elm_Filesel
 {
sd-expand = !!expand;
 
-   if (sd-path) _populate(obj, sd-path, NULL, NULL);
+   if (sd-path)
+ {
+eina_stringshare_ref(sd-path);
+_schedule_populate(obj, sd, sd-path, NULL);
+ }
 }
 
 EAPI Eina_Bool
@@ -1703,12 +1708,12 @@ elm_fileselector_path_set(Evas_Object *obj,
 }
 
 EOLIAN static void
-_elm_fileselector_elm_interface_fileselector_path_set(Eo *obj, 
Elm_Fileselector_Data *sd EINA_UNUSED, const char *_path

[EGIT] [core/elementary] elementary-1.11 01/01: fileselector: Do not call _populate directly in APIs

2014-10-28 Thread Ryuan Choi
ryuan pushed a commit to branch elementary-1.11.

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

commit 2af91698d26596f4f9eeb6b2e665ed425312b930
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Wed Oct 29 10:07:44 2014 +0900

fileselector: Do not call _populate directly in APIs

Summary:
User application may call some fileselector APIs to configure fileselector 
instance.
And some of them may call _populate but only last request is needed.
However, T1663 raises that last request might be rejected with expansion 
option and
multiple requests of _populate.
It's because expansion mode do not allow next _populate until previous one 
is finished.

So, this patch fixes it via scheduling _populate instead of calling 
_populate() directly in APIs.

@fix

Maniphest Tasks: T1663
---
 src/lib/elc_fileselector.c| 130 --
 src/lib/elm_widget_fileselector.h |   5 +-
 2 files changed, 86 insertions(+), 49 deletions(-)

diff --git a/src/lib/elc_fileselector.c b/src/lib/elc_fileselector.c
index 6fb87f2..99a5489 100644
--- a/src/lib/elc_fileselector.c
+++ b/src/lib/elc_fileselector.c
@@ -736,29 +736,50 @@ static Eina_Bool
 _populate_do(void *data)
 {
struct sel_data *sdata = data;
-   const char *p;
-
ELM_FILESELECTOR_DATA_GET(sdata-fs, sd);
 
-   /* keep a ref to path 'couse it will be destroyed by _populate */
-   p = eina_stringshare_add(sdata-path);
-   _populate(sdata-fs, p, NULL, NULL);
-   eina_stringshare_del(p);
+   _populate(sdata-fs, sdata-path, NULL, sdata-selected);
+   eina_stringshare_del(sdata-path);
+   eina_stringshare_del(sdata-selected);
 
sd-populate_idler = NULL;
+
free(sdata);
return ECORE_CALLBACK_CANCEL;
 }
 
 static void
+_schedule_populate(Evas_Object *fs,
+   Elm_Fileselector_Data *sd,
+   Eina_Stringshare *path,
+   Eina_Stringshare *selected)
+{
+   struct sel_data *sdata;
+   sdata = malloc(sizeof(*sdata));
+   if (!sdata) return;
+
+   sdata-fs = fs;
+   sdata-path = path;
+   sdata-selected = selected;
+
+   if (sd-populate_idler)
+ {
+struct sel_data *old_sdata;
+old_sdata = ecore_idler_del(sd-populate_idler);
+eina_stringshare_del(old_sdata-path);
+eina_stringshare_del(old_sdata-selected);
+free(old_sdata);
+ }
+   sd-populate_idler = ecore_idler_add(_populate_do, sdata);
+}
+
+static void
 _on_item_activated(void *data,
Evas_Object *obj EINA_UNUSED,
void *event_info)
 {
//This event_info could be a list or gengrid item
Elm_Object_Item *it = event_info;
-   struct sel_data *sdata;
-   void *old_sdata;
const char *path;
Eina_Bool is_dir;
 
@@ -776,18 +797,7 @@ _on_item_activated(void *data,
 
if (!sd-double_tap_navigation) return;
 
-   sdata = malloc(sizeof(*sdata));
-   if (!sdata) return;
-
-   sdata-fs = data;
-   sdata-path = path;
-
-   if (sd-populate_idler)
- {
-old_sdata = ecore_idler_del(sd-populate_idler);
-free(old_sdata);
- }
-   sd-populate_idler = ecore_idler_add(_populate_do, sdata);
+   _schedule_populate(data, sd, eina_stringshare_add(path), NULL);
 }
 
 static void
@@ -825,8 +835,6 @@ _on_item_selected(void *data,
 {
//This event_info could be a list or gengrid item
Elm_Object_Item *it = event_info;
-   struct sel_data *sdata;
-   void *old_sdata;
const char *path;
char *parent_path;
Eina_Bool is_dir;
@@ -909,18 +917,7 @@ _on_item_selected(void *data,
 
if (sd-double_tap_navigation) return;
 
-   sdata = malloc(sizeof(*sdata));
-   if (!sdata) return;
-
-   sdata-fs = data;
-   sdata-path = path;
-
-   if (sd-populate_idler)
- {
-old_sdata = ecore_idler_del(sd-populate_idler);
-free(old_sdata);
- }
-   sd-populate_idler = ecore_idler_add(_populate_do, sdata);
+   _schedule_populate(data, sd, eina_stringshare_add(path), NULL);
 }
 
 static void
@@ -1600,7 +1597,11 @@ 
_elm_fileselector_elm_interface_fileselector_folder_only_set(Eo *obj, Elm_Filese
if (sd-only_folder == only) return;
 
sd-only_folder = !!only;
-   if (sd-path) _populate(obj, sd-path, NULL, NULL);
+   if (sd-path)
+ {
+eina_stringshare_ref(sd-path);
+_schedule_populate(obj, sd, sd-path, NULL);
+ }
 }
 
 EAPI Eina_Bool
@@ -1671,7 +1672,11 @@ 
_elm_fileselector_elm_interface_fileselector_expandable_set(Eo *obj, Elm_Filesel
 {
sd-expand = !!expand;
 
-   if (sd-path) _populate(obj, sd-path, NULL, NULL);
+   if (sd-path)
+ {
+eina_stringshare_ref(sd-path);
+_schedule_populate(obj, sd, sd-path, NULL);
+ }
 }
 
 EAPI Eina_Bool
@@ -1698,12 +1703,12 @@ elm_fileselector_path_set(Evas_Object *obj,
 }
 
 EOLIAN static void
-_elm_fileselector_elm_interface_fileselector_path_set(Eo *obj, 
Elm_Fileselector_Data *sd EINA_UNUSED, const char *_path

[EGIT] [core/elementary] master 01/01: Introduce current_name_{set|get}

2014-10-05 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit ecdacf03537f210f17c3c572e13f20023f32992f
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Mon Oct 6 08:08:24 2014 +0900

Introduce current_name_{set|get}

Summary:
When fileselector is opened, it would be nice to be able to provide initial 
filename.
Like Untitled Document in Gedit, when save for the first time.

More details in Gedit,
Gedit provies default name, Untitled Document and does not change default 
name
while navigating directories.
Once we selected any file, Gedit changes value of name entry to selected 
filename and
it is not also changed while navigating directories.

@feature

Reviewers: seoz, yakov-g

Reviewed By: yakov-g

Subscribers: seoz

Maniphest Tasks: T1664

Differential Revision: https://phab.enlightenment.org/D1504
---
 src/bin/test_fileselector.c   |  3 +++
 src/lib/elc_fileselector.c| 46 ---
 src/lib/elc_fileselector_legacy.h |  3 +++
 src/lib/elm_fileselector.eo   |  1 +
 src/lib/elm_interface_fileselector.eo | 11 +
 5 files changed, 55 insertions(+), 9 deletions(-)

diff --git a/src/bin/test_fileselector.c b/src/bin/test_fileselector.c
index b32cd87..18dcae6 100644
--- a/src/bin/test_fileselector.c
+++ b/src/bin/test_fileselector.c
@@ -550,6 +550,9 @@ test_fileselector(void *data   EINA_UNUSED,
/* start the fileselector in the home dir */
elm_fileselector_path_set(fs, getenv(HOME));
 
+   /* provides suggested name (just for showing) */
+   elm_fileselector_current_name_set(fs, No name);
+
/* add filesters */
elm_fileselector_mime_types_filter_append(fs, text/*, Text Files);
elm_fileselector_mime_types_filter_append(fs, image/*, Image Files);
diff --git a/src/lib/elc_fileselector.c b/src/lib/elc_fileselector.c
index 7a83cd1..9ca2563 100644
--- a/src/lib/elc_fileselector.c
+++ b/src/lib/elc_fileselector.c
@@ -553,7 +553,6 @@ _signal_first(Listing_Request *lreq)
   elm_gengrid_clear(lreq-sd-files_view);
 eina_stringshare_replace(lreq-sd-path, lreq-path);
 _anchors_do(lreq-obj, lreq-path);
-elm_object_text_set(lreq-sd-name_entry, );
  }
 
lreq-first = EINA_FALSE;
@@ -690,6 +689,11 @@ _populate(Evas_Object *obj,
   _ls_done_cb, _ls_error_cb, lreq);
elm_progressbar_pulse(sd-spinner, EINA_TRUE);
elm_layout_signal_emit(lreq-obj, elm,action,spinner,show, elm);
+
+   // Clear name entry not in case of save mode.
+   if (elm_object_disabled_get(sd-name_entry))
+ elm_object_text_set(sd-name_entry, );
+
 }
 
 static void
@@ -874,15 +878,10 @@ _on_item_selected(void *data,
 
 evas_object_smart_callback_call(data, SIG_SELECTED, (void *)path);
  }
-   else
+   else if (sd-multi  is_dir  sd-double_tap_navigation)
  {
-if (sd-multi  is_dir  sd-double_tap_navigation)
-  {
- _clear_selections(sd, it);
- sd-dir_selected = EINA_TRUE;
-  }
-
-elm_object_text_set(sd-name_entry, );
+_clear_selections(sd, it);
+sd-dir_selected = EINA_TRUE;
  }
 
/* We need to populate, if path is directory and:
@@ -1946,6 +1945,35 @@ 
_elm_fileselector_elm_interface_fileselector_selected_paths_get(Eo *obj EINA_UNU
  return NULL;
 }
 
+EAPI const char *
+elm_fileselector_current_name_get(const Evas_Object *obj)
+{
+   ELM_FILESELECTOR_INTERFACE_CHECK(obj, NULL);
+   const char *ret = NULL;
+   eo_do((Eo *) obj, ret = elm_interface_fileselector_current_name_get());
+   return ret;
+}
+
+EOLIAN static const char *
+_elm_fileselector_elm_interface_fileselector_current_name_get(Eo *obj 
EINA_UNUSED, Elm_Fileselector_Data *sd)
+{
+   return elm_object_text_get(sd-name_entry);
+}
+
+EAPI void
+elm_fileselector_current_name_set(Evas_Object *obj,
+  const char *name)
+{
+   ELM_FILESELECTOR_INTERFACE_CHECK(obj);
+   eo_do((Eo *) obj, elm_interface_fileselector_current_name_set(name));
+}
+
+EOLIAN static void
+_elm_fileselector_elm_interface_fileselector_current_name_set(Eo *obj 
EINA_UNUSED, Elm_Fileselector_Data *sd, const char *name)
+{
+   elm_object_text_set(sd-name_entry, name);
+}
+
 static Elm_Fileselector_Filter *
 _filter_add(Elm_Fileselector_Data *sd, const char *filter_name)
 {
diff --git a/src/lib/elc_fileselector_legacy.h 
b/src/lib/elc_fileselector_legacy.h
index 9aa97d1..2c7fcd6 100644
--- a/src/lib/elc_fileselector_legacy.h
+++ b/src/lib/elc_fileselector_legacy.h
@@ -245,6 +245,9 @@ EAPI Eina_Bool 
elm_fileselector_selected_set(Evas_Object *obj, const
  */
 EAPI const char   *elm_fileselector_selected_get(const Evas_Object 
*obj);
 
+EAPI void  elm_fileselector_current_name_set(Evas_Object *obj, 
const char *name);
+EAPI const char

Re: [E-devel] Preparing EFL Korea Seminar

2014-10-02 Thread ryuan Choi
Hi,

OK, I will try to prepare something about the ewebkit.

Best Regards,
Ryuan Choi

2014-10-02 18:53 GMT+09:00 ChunEon Park her...@naver.com:

 Hello.

 I failed to reserve the seminar room on 25/Oct.
 But I could reserve on 26th(SUN)/Oct instead.

 Please reply me, speakers if you are not available on 26th/Oct.

 Opening (10 min) - Hermet
 Introduction of EFL and Enlightenment (30 min) - Hermet
 Getting Started - Writing EFL App (30 min) - WooChan Lee
 Various widget themes with Elm Theme Viewer (20 min) - SeoZ
 Scalable GUI in EFL (30 min) - JaeHwan Kim
 EDC Programming with Enventor (30 min) - JaeHyun Jo
 Webkit EFL (30 min) - Ryuan (NOT CONFIRMED)
 Enlightenment Window Manager (30 min) - Raster
 Closing (10 min) - Hermet

 And please update details
 https://phab.enlightenment.org/w/events/efl_korean_seminar_2014/

 so that i notice the seminar schedule on our community and some social
 communities.

 Thank you.

 

 -Regards, Hermet-

 -Original Message-
 From: ChunEon Parklt;her...@naver.comgt;
 To: EFL-Devellt;enlightenment-devel@lists.sourceforge.netgt;;
 EFL-Userlt;enlightenment-us...@lists.sourceforge.netgt;;
 Cc:
 Sent: 2014-09-29 (월) 21:24:30
 Subject: [E-devel] Preparing EFL Korea Seminar

 Hi, This is Hermet.

 I and SeoZ 're planning 2nd EFL Korea Seminar for EFl Korea Community
 continued to last year.
 The purpose of this seminar is not only for introducing EFL to developers
 in Korea but sharing EFL information each others.
 Im expecting students, 3rd party developers, Samsung engineers... and some
 efl korea commnunity members will attend the event.

 Im trying to reserve the seminar room in Kangnam.
 It's gonna be held on 25th(Sat)/Oct from 13:30 to 18:00. (If the place is
 not available, the date could be changed.)

 Here is the sessions of the main event.

 Opening (10 min) - Hermet
 Introduction of EFL and Enlightenment (30 min) - Hermet (NOT CONFIRMED)
 Getting Started - Writing EFL App (30 min) - WooChan Lee
 Various widget themes with Elm Theme Viewer (20 min) - SeoZ
 Scalable GUI in EFL (30 min) - JaeHwan Kim
 EDC Programming with Enventor (30 min) - JaeHyun Jo (NOT CONFIRMED)
 Webkit EFL (30 min) - Ryuan (NOT CONFIRMED)
 Enlightenment Window Manager (30 min) - Raster
 Closing (10 min) - Hermet

 In the last year, the count of the attendees was around 35,

 but I'm expecting more than 50 people will attend this seminar,
 since Tizen and EFL have been much more spreaded.
 Even I checked about 150 members have joined in our efl korea community
 additionally since the last year.

 After the main event is over, we will have E-Korea Dinner as usual.

 Please update your session info in our phabricator page. (see Details)

 https://phab.enlightenment.org/w/events/efl_korean_seminar_2014/

 Notify me if you can't prepare the session in advance,

 And give me any suggestions for better event.

 Thank you.

 
 -Regards, Hermet-

 --
 Slashdot TV.  Videos for Nerds.  Stuff that Matters.

 http://pubads.g.doubleclick.net/gampad/clk?id=160591471amp;iu=/4140/ostg.clktrk
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel



 --
 Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
 Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
 Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
 Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer

 http://pubads.g.doubleclick.net/gampad/clk?id=154622311iu=/4140/ostg.clktrk
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: Fix build break with elm_web since 4664b183e

2014-09-17 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 925d346da0fdfd709d01b9a659e4ebb4835ea13c
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Thu Sep 18 07:40:20 2014 +0900

Fix build break with elm_web since 4664b183e

Maniphest Tasks: T1482
---
 m4/elm_check_option.m4 | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/m4/elm_check_option.m4 b/m4/elm_check_option.m4
index 7690d0c..9fae5ff 100644
--- a/m4/elm_check_option.m4
+++ b/m4/elm_check_option.m4
@@ -79,7 +79,7 @@ if test x${want_elementary_web} != xnone; then
AC_DEFINE([HAVE_ELEMENTARY_WEB], [1], [Web support for Elementary])
webkit_datadir=$(${PKG_CONFIG} ${want_elementary_web} 
--variable=datadir)
AC_DEFINE_UNQUOTED([WEBKIT_DATADIR],
-  [${webkit_datadir}],
+  [${webkit_datadir}],
   [WebKit's data dir])
ELM_WEB2_DEF=#define
elementary_web=${want_elementary_web}

-- 




[EGIT] [core/efl] master 01/01: configure: Fix the possible build break after 715da43d3

2014-09-15 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 329c07452ac526dc238a10e2c4915dd4c20e60e5
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Tue Sep 16 06:56:50 2014 +0900

configure: Fix the possible build break after 715da43d3

Added eet into internal dependencies for ethumb_client

I got below errors for ethumb_client

CCLD bin/ethumb_client/ethumbd
lib/edje/.libs/libedje.so: undefined reference to 
`ecore_imf_context_input_hint_set'
lib/edje/.libs/libedje.so: undefined reference to 
`ecore_imf_context_input_hint_get'
collect2: error: ld returned 1 exit status
---
 configure.ac | 1 +
 1 file changed, 1 insertion(+)

diff --git a/configure.ac b/configure.ac
index 6eac3e5..a0f60c9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -4287,6 +4287,7 @@ EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [eo])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [efl])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [eet])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [ecore-imf])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [edje])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [eldbus])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [ethumb])

-- 




[EGIT] [core/elementary] master 01/01: fileselector: Fix that anchors are remained when path_entry was focused via keyboard.

2014-09-02 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 85ef73cdb499dc0ea73b9a5085e543ae67c5d931
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Wed Sep 3 12:44:05 2014 +0900

fileselector: Fix that anchors are remained when path_entry was focused via 
keyboard.

Removed trick that checks whether mouse is pressed in text field or anchors.
---
 src/lib/elc_fileselector.c| 52 ---
 src/lib/elm_widget_fileselector.h |  1 +
 2 files changed, 33 insertions(+), 20 deletions(-)

diff --git a/src/lib/elc_fileselector.c b/src/lib/elc_fileselector.c
index cedbc7a..2013453 100644
--- a/src/lib/elc_fileselector.c
+++ b/src/lib/elc_fileselector.c
@@ -69,6 +69,7 @@ _elm_fileselector_smart_del_do(Elm_Fileselector_Data *sd)
eina_stringshare_del(sd-path);
eina_stringshare_del(sd-selection);
free(ecore_idler_del(sd-populate_idler));
+   ecore_idler_del(sd-path_entry_idler);
 
eo_do_super(sd-obj, MY_CLASS, evas_obj_smart_del());
 }
@@ -1048,25 +1049,6 @@ _canc(void *data,
 }
 
 static void
-_on_text_clicked(void *data EINA_UNUSED,
- Evas_Object *obj,
- void *event_info EINA_UNUSED)
-{
-   ELM_FILESELECTOR_DATA_GET(data, sd);
-
-   /* FIXME: When anchor is clicked, current callback is also called.
-* But when it is anchor,clicked entry should be unfocused, so we remove
-* focus in achor_clicked.
-*
-* Check if entry is focused.
-* It will be so if empty place (not anchor) was clicked. */
-   if (!elm_object_focus_get(obj)) return;
-
-   elm_entry_entry_set(obj, sd-path);
-   elm_entry_cursor_pos_set(obj, eina_stringshare_strlen(sd-path));
-}
-
-static void
 _on_text_activated(void *data,
Evas_Object *obj,
void *event_info EINA_UNUSED)
@@ -1150,6 +1132,29 @@ end:
elm_object_focus_set(obj, EINA_FALSE);
 }
 
+static Eina_Bool
+_anchors_undo(void *data)
+{
+   ELM_FILESELECTOR_DATA_GET(data, sd);
+
+   elm_entry_entry_set(sd-path_entry, sd-path);
+   elm_entry_cursor_pos_set(sd-path_entry, eina_stringshare_strlen(sd-path));
+
+   sd-path_entry_idler = NULL;
+
+   return ECORE_CALLBACK_CANCEL;
+}
+
+static void
+_on_text_focused(void *data,
+ Evas_Object *obj EINA_UNUSED,
+ void *event_info EINA_UNUSED)
+{
+   ELM_FILESELECTOR_DATA_GET(data, sd);
+
+   if (!sd-path_entry_idler)
+   sd-path_entry_idler = ecore_idler_add(_anchors_undo, data);
+}
 static void
 _on_text_unfocused(void *data,
Evas_Object *obj EINA_UNUSED,
@@ -1168,6 +1173,8 @@ _anchor_clicked(void *data,
Evas_Object *fs = data;
const char *p;
 
+   ELM_FILESELECTOR_DATA_GET(fs, sd);
+
// keep a ref to path 'couse it will be destroyed by _populate
p = eina_stringshare_add(info-name);
_populate(fs, p, NULL, NULL);
@@ -1175,6 +1182,11 @@ _anchor_clicked(void *data,
/* After anchor was clicked, entry will be focused, and will be editable.
 * It's wrong. So remove focus. */
elm_object_focus_set(obj, EINA_FALSE);
+
+   if (sd-path_entry_idler) {
+   ecore_idler_del(sd-path_entry_idler);
+   sd-path_entry_idler = NULL;
+   }
 }
 
 static Evas_Object *
@@ -1444,7 +1456,7 @@ _elm_fileselector_evas_object_smart_add(Eo *obj, 
Elm_Fileselector_Data *priv)
evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL);
 
evas_object_smart_callback_add(en, anchor,clicked, _anchor_clicked, obj);
-   evas_object_smart_callback_add(en, clicked, _on_text_clicked, obj);
+   evas_object_smart_callback_add(en, focused, _on_text_focused, obj);
evas_object_smart_callback_add(en, unfocused, _on_text_unfocused, obj);
evas_object_smart_callback_add(en, activated, _on_text_activated, obj);
 
diff --git a/src/lib/elm_widget_fileselector.h 
b/src/lib/elm_widget_fileselector.h
index b970f84..08c0f69 100644
--- a/src/lib/elm_widget_fileselector.h
+++ b/src/lib/elm_widget_fileselector.h
@@ -51,6 +51,7 @@ struct _Elm_Fileselector_Data
const char  *path;
const char  *selection;
Ecore_Idler *populate_idler;
+   Ecore_Idler *path_entry_idler;
 
const char  *path_separator;
const char  *search_string;

-- 




[E-devel] Question about eina_stringshare_refplace

2014-08-25 Thread ryuan Choi
Hi,

While trying to use eina_stringshare_refplace(), I have newbie question in
its code.

I can see the if (*p_str == news) check routine two times in
eina_stringshare_refplace()

Can I know the example which we should check second if statement.

Best Regards,
Ryuan Choi
--
Slashdot TV.  
Video for Nerds.  Stuff that matters.
http://tv.slashdot.org/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] ewebkit 1.11.0

2014-08-22 Thread ryuan Choi
= EWebKit 1.11 tarballs =

I'd like to share new ewebkit tarball beta.
(1 weeks late.)

I reduced binary size more from beta by removing unnecessary files.
Now, binary size of ewebkit-1.11.0.tar.gz is about 12MB

And added NEWS for little information of ewebkit release.

You can find the script in below git to know what I exclude from tarball
https://github.com/ewebkit/script

And, I generated doxygen based on ewebkit-1.11.0
http://ewebkit.github.io/ewebkit-doc/ewebkit2/html/index.html

== Source ==
https://github.com/ewebkit/webkit
branch : ewebkit-1.11
(master branch is for sync with webkit.org)

== Download ==

http://download.enlightenment.org/rel/libs/webkit-efl/ewebkit-1.11.0.tar.gz
2e93961f3d735d9e5889570a38087452e1bbc1bf889f48836f970d46d3da318d

http://download.enlightenment.org/rel/libs/webkit-efl/ewebkit-1.11.0.tar.xz
d8d21e27f4a21cd77c41914548c184ddb98693ba23851aa66c8e51c0be4b90b7

== NEWS ==
From the previous snapshot,

  * WebKit1/EFL was dropped.
  * fixed color picker bug (intput type=color)
  * refactor vibration API.
  * Add ewk_application_cache_manager APIs
  * Add an API to set process model
  * Add ewk APIs to control TLS error policy on WebContext
  * Add ewk_view_bg_color_set
  * Add API to get contents size of current web page.
  * Removed NETWORK_INFO.
  * Refactor favicon database APIs
  * Add ewk_view_fixed_layout_size_set|get()
  * Use default context for ewk_view_add
  * Change ewk_view_settings_get to ewk_page_group_settings_get
  * Add new Public API in ewk_download_job.h to get size of the data
already downloaded.
  * Add a focus,notfound signal.
  * Provide VERSION information in EWebKit2.h like EFL and Elementary.
  * Media Control of video tag is changed from edj to HTML/javascript.
  * Enable CSS Filter
  * Turn off Indexed Database

And many common webkit(WebCore,JSC) changes.
--
Slashdot TV.  
Video for Nerds.  Stuff that matters.
http://tv.slashdot.org/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] ewebkit 1.11.0 - beta 1

2014-08-13 Thread ryuan Choi
= EWebKit 1.11 beta tarballs =

I'd like to share new ewebkit tarball beta.

I reduced binary size by removing big ChangeLog-XXX.
Now, binary size of ewebkit-1.11.0-beta1.tar.gz is about 18MB (the size of
alpha was about 44MB)

You can find the script in below git to know what I exclude from tarball
https://github.com/ewebkit/script

== Source ==
https://github.com/ewebkit/webkit
branch : ewebkit-1.11
(master branch is for sync with webkit.org)

== Download ==

http://download.enlightenment.org/rel/libs/webkit-efl/ewebkit-1.11.0-beta1.tar.gz
ceb03ccefecccb5fc3a646e9b66806d605f2e8af35f72edb53fe56e14262351c

http://download.enlightenment.org/rel/libs/webkit-efl/ewebkit-1.11.0-beta1.tar.xz
7d0545f79be3633973eb7340318552f80a213c5afddd2c3fee5ccd543cc0418d


== NEWS ==
From the previous snapshot,

  * WebKit1/EFL was dropped.
  * fixed color picker bug (intput type=color)
  * refactor vibration API.
  * Add ewk_application_cache_manager APIs
  * Add an API to set process model
  * Add ewk APIs to control TLS error policy on WebContext
  * Add ewk_view_bg_color_set
  * Add API to get contents size of current web page.
  * Removed NETWORK_INFO.
  * Refactor favicon database APIs
  * Add ewk_view_fixed_layout_size_set|get()
  * Use default context for ewk_view_add
  * Change ewk_view_settings_get to ewk_page_group_settings_get
  * Add new Public API in ewk_download_job.h to get size of the data
already downloaded.
  * Add a focus,notfound signal.
  * Provide VERSION information in EWebKit2.h like EFL and Elementary.
  * Media Control of video tag is changed from edj to HTML/javascript.
  * Enable CSS Filter
  * Turn off Indexed Database

And many common webkit(WebCore,JSC) changes.
--
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] ewebkit 1.11.- alpha 1

2014-08-05 Thread ryuan Choi
= Ewebkit 1.11 alpha taballs =

I'd like to share new ewebkit tarball as the first attempt to release
ewebkit library.

Although version is 1.11 like EFL and Elementary, I think that it's still
unstable.
So, I hope that there are many requirements and tests (and supports).

== Source ==
https://github.com/ewebkit/webkit
branch : ewebkit-1.11
(master branch is for sync with webkit.org)

== Download ==

http://download.enlightenment.org/rel/libs/webkit-efl/ewebkit-1.11.0-alpha1.tar.gz
58ae62aeab25a8dfddd3b377d6f6503a525f8df3164207e26d1da216a293bd4b

http://download.enlightenment.org/rel/libs/webkit-efl/ewebkit-1.11.0-alpha1.tar.xz
3392b1d2e8b9acd9e0461f8235c22fde42420ae4e6c964aa7ec33695d3ceb10c


== NEWS ==
From the previous snapshot,

  * WebKit1/EFL was dropped.
  * fixed color picker bug (intput type=color)
  * refactor vibration API.
  * Add ewk_application_cache_manager APIs
  * Add an API to set process model
  * Add ewk APIs to control TLS error policy on WebContext
  * Add ewk_view_bg_color_set
  * Add API to get contents size of current web page.
  * Removed NETWORK_INFO.
  * Refactor favicon database APIs
  * Add ewk_view_fixed_layout_size_set|get()
  * Use default context for ewk_view_add
  * Change ewk_view_settings_get to ewk_page_group_settings_get
  * Add new Public API in ewk_download_job.h to get size of the data
already downloaded.
  * Add a focus,notfound signal.
  * Provide VERSION information in EWebKit2.h like EFL and Elementary.
  * Media Control of video tag is changed from edj to HTML/javascript.
  * Enable CSS Filter
  * Turn off Indexed Database

And many common webkit(WebCore,JSC) changes.
--
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls. 
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=153845071iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] ewebkit 1.11.- alpha 1

2014-08-05 Thread ryuan Choi
Hi,

Sorry, I didn' check with gstreamer 1.4.

But, I found weird changes and made the patch (but not tested yet).

Could check with the below patch.
https://github.com/ewebkit/webkit/commit/3e431a5bdd20c264a4636ddaa6b4d5a331020695.patch

I will also try it with the latest gstreamer.

Thanks.
Ryuan Choi
 2014. 8. 6. 오전 8:06에 Doug Newgard scimmi...@outlook.com님이 작성:



 
  Date: Tue, 5 Aug 2014 22:11:40 +0900
  From: ryuan.c...@gmail.com
  To: enlightenment-devel@lists.sourceforge.net
  Subject: [E-devel] ewebkit 1.11.- alpha 1
 
  = Ewebkit 1.11 alpha taballs =
 
  I'd like to share new ewebkit tarball as the first attempt to release
  ewebkit library.
 
  Although version is 1.11 like EFL and Elementary, I think that it's still
  unstable.
  So, I hope that there are many requirements and tests (and supports).
 
  == Source ==
  https://github.com/ewebkit/webkit
  branch : ewebkit-1.11
  (master branch is for sync with webkit.org)
 
  == Download ==
 
 
 http://download.enlightenment.org/rel/libs/webkit-efl/ewebkit-1.11.0-alpha1.tar.gz
  58ae62aeab25a8dfddd3b377d6f6503a525f8df3164207e26d1da216a293bd4b
 
 
 http://download.enlightenment.org/rel/libs/webkit-efl/ewebkit-1.11.0-alpha1.tar.xz
  3392b1d2e8b9acd9e0461f8235c22fde42420ae4e6c964aa7ec33695d3ceb10c
 
 
  == NEWS ==
 From the previous snapshot,
 
  * WebKit1/EFL was dropped.
  * fixed color picker bug (intput type=color)
  * refactor vibration API.
  * Add ewk_application_cache_manager APIs
  * Add an API to set process model
  * Add ewk APIs to control TLS error policy on WebContext
  * Add ewk_view_bg_color_set
  * Add API to get contents size of current web page.
  * Removed NETWORK_INFO.
  * Refactor favicon database APIs
  * Add ewk_view_fixed_layout_size_set|get()
  * Use default context for ewk_view_add
  * Change ewk_view_settings_get to ewk_page_group_settings_get
  * Add new Public API in ewk_download_job.h to get size of the data
  already downloaded.
  * Add a focus,notfound signal.
  * Provide VERSION information in EWebKit2.h like EFL and Elementary.
  * Media Control of video tag is changed from edj to HTML/javascript.
  * Enable CSS Filter
  * Turn off Indexed Database
 
  And many common webkit(WebCore,JSC) changes.


 Linking CXX shared library ../../lib/libewebkit2.so
 ../../lib/../Source/WebCore/CMakeFiles/WebCore.dir/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp.o:
 In function
 `WebCore::MediaPlayerPrivateGStreamer::processMpegTsSection(_GstMpegtsSection*)':
 MediaPlayerPrivateGStreamer.cpp:(.text._ZN7WebCore27MediaPlayerPrivateGStreamer20processMpegTsSectionEP17_GstMpegtsSection+0x14b):
 undefined reference to `gst_mpegts_section_get_data'
 MediaPlayerPrivateGStreamer.cpp:(.text._ZN7WebCore27MediaPlayerPrivateGStreamer20processMpegTsSectionEP17_GstMpegtsSection+0x278):
 undefined reference to `gst_mpegts_section_get_pmt'
 ../../lib/../Source/WebCore/CMakeFiles/WebCore.dir/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp.o:
 In function
 `WebCore::MediaPlayerPrivateGStreamer::handleMessage(_GstMessage*)':
 MediaPlayerPrivateGStreamer.cpp:(.text._ZN7WebCore27MediaPlayerPrivateGStreamer13handleMessageEP11_GstMessage+0x621):
 undefined reference to `gst_message_parse_mpegts_section'
 collect2: error: ld returned 1 exit status
 Source/WebKit2/CMakeFiles/WebKit2.dir/build.make:15581: recipe for target
 'lib/libewebkit2.so.1.11.0' failed
 make[2]: *** [lib/libewebkit2.so.1.11.0] Error 1
 CMakeFiles/Makefile2:560: recipe for target
 'Source/WebKit2/CMakeFiles/WebKit2.dir/all' failed
 make[1]: *** [Source/WebKit2/CMakeFiles/WebKit2.dir/all] Error 2
 Makefile:137: recipe for target 'all' failed
 make: *** [all] Error 2

 What am I missing here? Have gstreamer 1.4.0 installed along with all of
 the plugins.

 Doug

 --
 Infragistics Professional
 Build stunning WinForms apps today!
 Reboot your WinForms applications with our WinForms controls.
 Build a bridge from your legacy apps to the future.

 http://pubads.g.doubleclick.net/gampad/clk?id=153845071iu=/4140/ostg.clktrk
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls. 
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=153845071iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] Consideration about first release of ewebkit

2014-07-31 Thread ryuan Choi
Hi, all

I need your opinion about first version of ewebkit.

ewebkit was always under development without any version.
(always 0.1.0)

Within this state (almost 4 years I joined), we made ewebkit1, made
ewebkit2 and dropped ewebkit1.
Because I am still newbie, I don't know the level for stable version.
But, I think that we might not release ewebkit ever if we want more stable
version.
About few months, we didn't have any big changes in ewebkit2 interface.
(Only one big news was dropping ewebkit1)
Our almost work was following changes of webkit.org.(build fix or
regression)

EFL 1.11 will be released after few days later.

So, what do you think about releasing first version of ewebkit as 1.11 (or
any suggestion?)

My simple idea is
1. when second merge window of EFL is over, bump the version of ewebkit in
the webkit trunk(webkit.org)
2. sync and fork that to the version branch in github.
3. clear some code if needed.
- disable features which are still unstable or under development.
- cherry-pick patches which are still under review but very important
for ewebkit.
4. test and fix some critical bugs within last three stabilization phase of
EFL.
5. When new version of EFL is released, tag the version like EFL.
6. After released, only hot fix is allowed in the version branch for the
minor release.


In a short,
- sync the release process with EFL after second merge window is over.
- develop the ewebkit in the trunk(webkit.org) always like current sitation.
- maintain the version branch for the hot fix(crash, ...)

What do you think about it?

Best Regards,
Ryuan Choi
--
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls. 
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=153845071iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [webkit-efl] Consideration about first release of ewebkit

2014-07-31 Thread ryuan Choi
I created https://bugs.webkit.org/show_bug.cgi?id=135487 to bump ewebkit
version.

And, created https://github.com/ewebkit
If someone want to make changes, please let me know with your github
username.
If you also know some patch which is not merged but I should cherry-pick,
please let me know.

Thanks for your support.
Ryuan choi
 2014. 8. 1. 오전 10:44에 Cedric BAIL cedric.b...@free.fr님이 작성:

 Hello,

 On Thu, Jul 31, 2014 at 11:39 PM, ryuan Choi ry...@enlightenment.org
 wrote:
  I need your opinion about first version of ewebkit.
 
  ewebkit was always under development without any version.
  (always 0.1.0)
 
  Within this state (almost 4 years I joined), we made ewebkit1, made
 ewebkit2
  and dropped ewebkit1.
  Because I am still newbie, I don't know the level for stable version.
  But, I think that we might not release ewebkit ever if we want more
 stable
  version.
  About few months, we didn't have any big changes in ewebkit2 interface.
  (Only one big news was dropping ewebkit1)
  Our almost work was following changes of webkit.org.(build fix or
  regression)
 
  EFL 1.11 will be released after few days later.
 
  So, what do you think about releasing first version of ewebkit as 1.11
 (or
  any suggestion?)
 
  My simple idea is
  1. when second merge window of EFL is over, bump the version of ewebkit
 in
  the webkit trunk(webkit.org)
  2. sync and fork that to the version branch in github.
  3. clear some code if needed.
  - disable features which are still unstable or under development.
  - cherry-pick patches which are still under review but very important
  for ewebkit.
  4. test and fix some critical bugs within last three stabilization phase
 of
  EFL.
  5. When new version of EFL is released, tag the version like EFL.
  6. After released, only hot fix is allowed in the version branch for the
  minor release.
 
 
  In a short,
  - sync the release process with EFL after second merge window is over.
  - develop the ewebkit in the trunk(webkit.org) always like current
 sitation.
  - maintain the version branch for the hot fix(crash, ...)
 
  What do you think about it?

 You just made my day way better ! It's a very good proposal that I am
 all for it. I think we can also all agree here that you are going to
 be the release manager for ewebkit. Do you have all the needed access
 for doing the release on enlightenment server ?
 --
 Cedric BAIL
 ___
 webkit-efl mailing list
 webkit-...@lists.webkit.org
 https://lists.webkit.org/mailman/listinfo/webkit-efl

--
Want fast and easy access to all the code in your enterprise? Index and
search up to 200,000 lines of code with a free copy of Black Duck
Code Sight - the same software that powers the world's largest code
search on Ohloh, the Black Duck Open Hub! Try it now.
http://p.sf.net/sfu/bds
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: test_sys_notify: Refactoring to solve weird behavior when tested with more then two instances

2014-07-22 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit b933cfcad0ee5e37f5001692c36297ae8497118c
Author: Ryuan Choi ryuan.c...@samsung.com
Date:   Wed Jul 23 11:01:41 2014 +0900

test_sys_notify: Refactoring to solve weird behavior when tested with more 
then two instances

- _ev_handler can't know whether elm_win still exists, so changed log style 
from notify to printf.
  In addition, release the callbacks when elm_win is destroyed.
- use elm_sys_notify_send instead of elm_sys_notify_simple_send to show 
more functionality.
- remove static variables not to print warnings when with more than two 
test_sys_notify pannel.
---
 src/bin/test_sys_notify.c | 86 ---
 1 file changed, 58 insertions(+), 28 deletions(-)

diff --git a/src/bin/test_sys_notify.c b/src/bin/test_sys_notify.c
index 0a6dacc..92cbdd1 100644
--- a/src/bin/test_sys_notify.c
+++ b/src/bin/test_sys_notify.c
@@ -6,49 +6,72 @@
 #define WIDTH  320
 #define HEIGHT 160
 
-static Evas_Object *s = NULL;
-static Evas_Object *b = NULL;
-static Evas_Object *l = NULL;
-static Evas_Object *n = NULL;
+struct _Sys_Notify_Data {
+Evas_Object *l;
+Evas_Object *n;
+Ecore_Event_Handler *handlers[2];
+};
+typedef struct _Sys_Notify_Data Sys_Notify_Data;
 
 static Eina_Bool
 _ev_handler(void *data EINA_UNUSED,
 int type,
 void *event)
 {
-   char msg[256];
-
Elm_Sys_Notify_Notification_Closed *closed;
Elm_Sys_Notify_Action_Invoked *action;
 
if (type == ELM_EVENT_SYS_NOTIFY_NOTIFICATION_CLOSED)
  {
 closed = event;
-sprintf(msg, Notification Closed Event: %u %d.,
+printf(Notification Closed Event: %u %d.\n,
closed-id, closed-reason);
  }
else if (type == ELM_EVENT_SYS_NOTIFY_ACTION_INVOKED)
  {
 action = event;
-sprintf(msg, Notification Action Event: %u %s.,
+printf(Notification Action Event: %u %s.\n,
action-id, action-action_key);
  }
else
  return ECORE_CALLBACK_PASS_ON;
 
-   elm_object_text_set(l, msg);
-   evas_object_show(n);
-
return ECORE_CALLBACK_DONE;
 }
 
+static void _sys_notify_cb(void *data, unsigned int id EINA_UNUSED)
+{
+   Sys_Notify_Data *notify_data = data;
+
+   elm_object_text_set(notify_data-l, notify is done);
+   evas_object_show(notify_data-n);
+}
+
 static void
-_bt_clicked(void *data EINA_UNUSED,
-Evas_Object *obj EINA_UNUSED,
+_bt_clicked(void *data,
+Evas_Object *obj,
 void *event_info EINA_UNUSED)
 {
-   elm_sys_notify_simple_send
-  (, elm_entry_entry_get(s), elm_entry_entry_get(b));
+   Evas_Object *s, *b;
+   s = evas_object_data_get(obj, summary);
+   b = evas_object_data_get(obj, body);
+
+   elm_sys_notify_send(0, , elm_entry_entry_get(s), elm_entry_entry_get(b),
+   ELM_SYS_NOTIFY_URGENCY_NORMAL,
+   -1, _sys_notify_cb, data);
+}
+
+static void
+_test_sys_notify_win_del_cb(void *data,
+Evas *e EINA_UNUSED,
+Evas_Object *obj EINA_UNUSED,
+void *event_info EINA_UNUSED)
+{
+   Sys_Notify_Data *notify_data = data;
+   ecore_event_handler_del(notify_data-handlers[0]);
+   ecore_event_handler_del(notify_data-handlers[1]);
+
+   free(notify_data);
 }
 
 void
@@ -56,20 +79,20 @@ test_sys_notify(void *data EINA_UNUSED,
 Evas_Object *obj EINA_UNUSED,
 void *event_info EINA_UNUSED)
 {
-   Evas_Object *win, *bx, *it;
+   Evas_Object *win, *bx, *it, *btn;
+   Evas_Object *s, *b, *n, *l;
+   Sys_Notify_Data *notify_data;
 
elm_need_sys_notify();
 
-   ecore_event_handler_add(ELM_EVENT_SYS_NOTIFY_NOTIFICATION_CLOSED,
-   _ev_handler, NULL);
-
-   ecore_event_handler_add(ELM_EVENT_SYS_NOTIFY_ACTION_INVOKED,
-   _ev_handler, NULL);
+   notify_data = malloc(sizeof(Sys_Notify_Data));
 
win = elm_win_add(NULL, Sys Notify, ELM_WIN_BASIC);
elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);
elm_win_title_set(win, System Notification);
elm_win_autodel_set(win, EINA_TRUE);
+   evas_object_event_callback_add(win, EVAS_CALLBACK_DEL,
+  _test_sys_notify_win_del_cb, notify_data);
 
it = elm_bg_add(win);
elm_win_resize_object_add(win, it);
@@ -77,12 +100,12 @@ test_sys_notify(void *data EINA_UNUSED,
evas_object_size_hint_max_set(it, WIDTH, HEIGHT);
evas_object_show(it);
 
-   n = elm_notify_add(win);
+   notify_data-n = n = elm_notify_add(win);
evas_object_size_hint_weight_set(n, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
elm_notify_align_set(n, 0.5, 0.0);
elm_notify_timeout_set(n, 2.0);
 
-   l = elm_label_add(win);
+   notify_data-l = l = elm_label_add(win);
elm_object_content_set(n, l

[EGIT] [core/elementary] master 01/01: tests: Pass the interval to elm_test_helper_wait_flag for the caller to change

2014-07-17 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 6e1f65b739e4c576d133c7ff464ccddf12ed2657
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Thu Jul 17 22:30:01 2014 +0900

tests: Pass the interval to elm_test_helper_wait_flag for the caller to 
change

Like JackDanielZ suggested.
---
 src/tests/elm_test_fileselector.c | 4 ++--
 src/tests/elm_test_helper.c   | 6 ++
 src/tests/elm_test_helper.h   | 2 +-
 3 files changed, 5 insertions(+), 7 deletions(-)

diff --git a/src/tests/elm_test_fileselector.c 
b/src/tests/elm_test_fileselector.c
index a204917..11e52b1 100644
--- a/src/tests/elm_test_fileselector.c
+++ b/src/tests/elm_test_fileselector.c
@@ -69,13 +69,13 @@ START_TEST (elm_fileselector_selected)
 
selected = EINA_FALSE;
ck_assert(elm_fileselector_selected_set(fileselector, path));
-   ck_assert(elm_test_helper_wait_flag(selected));
+   ck_assert(elm_test_helper_wait_flag(10, selected));
 
ck_assert_str_eq(elm_fileselector_selected_get(fileselector), path);
 
selected = EINA_FALSE;
ck_assert(elm_fileselector_selected_set(fileselector, exist));
-   ck_assert(elm_test_helper_wait_flag(selected));
+   ck_assert(elm_test_helper_wait_flag(10, selected));
 
ck_assert_str_eq(elm_fileselector_selected_get(fileselector), exist);
 
diff --git a/src/tests/elm_test_helper.c b/src/tests/elm_test_helper.c
index 453e888..6e11ef3 100644
--- a/src/tests/elm_test_helper.c
+++ b/src/tests/elm_test_helper.c
@@ -5,8 +5,6 @@
 #include Ecore.h
 #include elm_suite.h
 
-const double timeout = 10;
-
 typedef struct _Callback_Data
 {
Ecore_Timer *timer;
@@ -24,12 +22,12 @@ timer_expired_cb(void *user_data)
 }
 
 Eina_Bool
-elm_test_helper_wait_flag(Eina_Bool *done)
+elm_test_helper_wait_flag(double in, Eina_Bool *done)
 {
Callback_Data data;
 
data.did_timeout = EINA_FALSE;
-   data.timer = ecore_timer_add(timeout, timer_expired_cb, data);
+   data.timer = ecore_timer_add(in, timer_expired_cb, data);
 
while (*done == EINA_FALSE  data.did_timeout == EINA_FALSE)
  ecore_main_loop_iterate();
diff --git a/src/tests/elm_test_helper.h b/src/tests/elm_test_helper.h
index 62974f1..0bfc5ca 100644
--- a/src/tests/elm_test_helper.h
+++ b/src/tests/elm_test_helper.h
@@ -3,6 +3,6 @@
 
 #include Eina.h
 
-Eina_Bool elm_test_helper_wait_flag(Eina_Bool *done);
+Eina_Bool elm_test_helper_wait_flag(double in, Eina_Bool *done);
 
 #endif /* _ELM_TEST_HELPER_H */

-- 




Re: [E-devel] [EGIT] [core/elementary] master 01/01: tests: Add elm_test_helper_wait_flag to avoid infinite loop

2014-07-17 Thread ryuan Choi
I updated like you suggested.

It's not critical to me but I agree that it might be also usefull.

Thanks,
Ryuan Choi


2014-07-17 13:30 GMT+09:00 Daniel Zaoui daniel.za...@samsung.com:

 Hi Ryuan,

 Thank you for this patch.
 Don't you think it would be better if the timeout could be chosen by the
 caller itself?

 D2, alias JackDanielZ

 On 07/16/2014 06:36 PM, Daniel Juyung Seo wrote:
  Oh.. this must be useful :)
 
  Thanks.
 
  Daniel Juyung Seo (SeoZ)
 
 
  On Wed, Jul 16, 2014 at 11:32 PM, Ryuan Choi ryuan.c...@gmail.com
 wrote:
 
  ryuan pushed a commit to branch master.
 
 
 
 http://git.enlightenment.org/core/elementary.git/commit/?id=bbb916375d99e65b8083a037323d88acbbcdbec5
 
  commit bbb916375d99e65b8083a037323d88acbbcdbec5
  Author: Ryuan Choi ryuan.c...@gmail.com
  Date:   Wed Jul 16 23:17:31 2014 +0900
 
  tests: Add elm_test_helper_wait_flag to avoid infinite loop
 
  Test of elm_fileselector_selected and future tests may have
  conditional loop
  which some flag.
  This patch adds elm_test_helper_wait_flag, simple wrapper of the
 loop
  with timer
  in order to exit the loop when expected callbacks are not called.
  ---
   src/tests/Makefile.am |  1 +
   src/tests/elm_suite.h |  1 +
   src/tests/elm_test_fileselector.c |  6 --
   src/tests/elm_test_helper.c   | 41
  +++
   src/tests/elm_test_helper.h   |  8 
   5 files changed, 55 insertions(+), 2 deletions(-)
 
  diff --git a/src/tests/Makefile.am b/src/tests/Makefile.am
  index 11dcd87..12fc454 100644
  --- a/src/tests/Makefile.am
  +++ b/src/tests/Makefile.am
  @@ -6,6 +6,7 @@ TESTS = elm_suite
   check_PROGRAMS = elm_suite
   elm_suite_SOURCES = \
  elm_suite.c \
  +   elm_test_helper.c \
  elm_test_atspi.c \
  elm_test_check.c \
  elm_test_colorselector.c \
  diff --git a/src/tests/elm_suite.h b/src/tests/elm_suite.h
  index 7918a4e..1a19179 100644
  --- a/src/tests/elm_suite.h
  +++ b/src/tests/elm_suite.h
  @@ -2,6 +2,7 @@
   #define _ELM_SUITE_H
 
   #include check.h
  +#include elm_test_helper.h
 
   void elm_test_init(TCase *tc);
   void elm_test_check(TCase *tc);
  diff --git a/src/tests/elm_test_fileselector.c
  b/src/tests/elm_test_fileselector.c
  index e5dd067..a204917 100644
  --- a/src/tests/elm_test_fileselector.c
  +++ b/src/tests/elm_test_fileselector.c
  @@ -69,12 +69,14 @@ START_TEST (elm_fileselector_selected)
 
  selected = EINA_FALSE;
  ck_assert(elm_fileselector_selected_set(fileselector, path));
  -   while (!selected) ecore_main_loop_iterate();
  +   ck_assert(elm_test_helper_wait_flag(selected));
  +
  ck_assert_str_eq(elm_fileselector_selected_get(fileselector), path);
 
  selected = EINA_FALSE;
  ck_assert(elm_fileselector_selected_set(fileselector, exist));
  -   while (!selected) ecore_main_loop_iterate();
  +   ck_assert(elm_test_helper_wait_flag(selected));
  +
  ck_assert_str_eq(elm_fileselector_selected_get(fileselector),
 exist);
 
  eina_stringshare_del(exist);
  diff --git a/src/tests/elm_test_helper.c b/src/tests/elm_test_helper.c
  new file mode 100644
  index 000..453e888
  --- /dev/null
  +++ b/src/tests/elm_test_helper.c
  @@ -0,0 +1,41 @@
  +#ifdef HAVE_CONFIG_H
  +# include elementary_config.h
  +#endif
  +
  +#include Ecore.h
  +#include elm_suite.h
  +
  +const double timeout = 10;
  +
  +typedef struct _Callback_Data
  +{
  +   Ecore_Timer *timer;
  +   Eina_Bool did_timeout;
  +} Callback_Data;
  +
  +static Eina_Bool
  +timer_expired_cb(void *user_data)
  +{
  +   Callback_Data *data = user_data;
  +   data-did_timeout = EINA_TRUE;
  +   data-timer = NULL;
  +
  +   return ECORE_CALLBACK_CANCEL;
  +}
  +
  +Eina_Bool
  +elm_test_helper_wait_flag(Eina_Bool *done)
  +{
  +   Callback_Data data;
  +
  +   data.did_timeout = EINA_FALSE;
  +   data.timer = ecore_timer_add(timeout, timer_expired_cb, data);
  +
  +   while (*done == EINA_FALSE  data.did_timeout == EINA_FALSE)
  + ecore_main_loop_iterate();
  +
  +   if (data.timer)
  + ecore_timer_del(data.timer);
  +
  +   return !data.did_timeout;
  +}
  diff --git a/src/tests/elm_test_helper.h b/src/tests/elm_test_helper.h
  new file mode 100644
  index 000..62974f1
  --- /dev/null
  +++ b/src/tests/elm_test_helper.h
  @@ -0,0 +1,8 @@
  +#ifndef _ELM_TEST_HELPER_H
  +#define _ELM_TEST_HELPER_H
  +
  +#include Eina.h
  +
  +Eina_Bool elm_test_helper_wait_flag(Eina_Bool *done);
  +
  +#endif /* _ELM_TEST_HELPER_H */
 
  --
 
 
 
 
 --
  Want fast and easy access to all the code in your enterprise? Index and
  search up to 200,000 lines of code with a free copy of Black Duck
  Code Sight - the same software that powers the world's largest code
  search on Ohloh, the Black Duck Open Hub! Try it now.
  http://p.sf.net/sfu/bds
  ___
  enlightenment

[EGIT] [core/elementary] master 01/01: tests: Add elm_test_helper_wait_flag to avoid infinite loop

2014-07-16 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit bbb916375d99e65b8083a037323d88acbbcdbec5
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Wed Jul 16 23:17:31 2014 +0900

tests: Add elm_test_helper_wait_flag to avoid infinite loop

Test of elm_fileselector_selected and future tests may have conditional loop
which some flag.
This patch adds elm_test_helper_wait_flag, simple wrapper of the loop with 
timer
in order to exit the loop when expected callbacks are not called.
---
 src/tests/Makefile.am |  1 +
 src/tests/elm_suite.h |  1 +
 src/tests/elm_test_fileselector.c |  6 --
 src/tests/elm_test_helper.c   | 41 +++
 src/tests/elm_test_helper.h   |  8 
 5 files changed, 55 insertions(+), 2 deletions(-)

diff --git a/src/tests/Makefile.am b/src/tests/Makefile.am
index 11dcd87..12fc454 100644
--- a/src/tests/Makefile.am
+++ b/src/tests/Makefile.am
@@ -6,6 +6,7 @@ TESTS = elm_suite
 check_PROGRAMS = elm_suite
 elm_suite_SOURCES = \
elm_suite.c \
+   elm_test_helper.c \
elm_test_atspi.c \
elm_test_check.c \
elm_test_colorselector.c \
diff --git a/src/tests/elm_suite.h b/src/tests/elm_suite.h
index 7918a4e..1a19179 100644
--- a/src/tests/elm_suite.h
+++ b/src/tests/elm_suite.h
@@ -2,6 +2,7 @@
 #define _ELM_SUITE_H
 
 #include check.h
+#include elm_test_helper.h
 
 void elm_test_init(TCase *tc);
 void elm_test_check(TCase *tc);
diff --git a/src/tests/elm_test_fileselector.c 
b/src/tests/elm_test_fileselector.c
index e5dd067..a204917 100644
--- a/src/tests/elm_test_fileselector.c
+++ b/src/tests/elm_test_fileselector.c
@@ -69,12 +69,14 @@ START_TEST (elm_fileselector_selected)
 
selected = EINA_FALSE;
ck_assert(elm_fileselector_selected_set(fileselector, path));
-   while (!selected) ecore_main_loop_iterate();
+   ck_assert(elm_test_helper_wait_flag(selected));
+
ck_assert_str_eq(elm_fileselector_selected_get(fileselector), path);
 
selected = EINA_FALSE;
ck_assert(elm_fileselector_selected_set(fileselector, exist));
-   while (!selected) ecore_main_loop_iterate();
+   ck_assert(elm_test_helper_wait_flag(selected));
+
ck_assert_str_eq(elm_fileselector_selected_get(fileselector), exist);
 
eina_stringshare_del(exist);
diff --git a/src/tests/elm_test_helper.c b/src/tests/elm_test_helper.c
new file mode 100644
index 000..453e888
--- /dev/null
+++ b/src/tests/elm_test_helper.c
@@ -0,0 +1,41 @@
+#ifdef HAVE_CONFIG_H
+# include elementary_config.h
+#endif
+
+#include Ecore.h
+#include elm_suite.h
+
+const double timeout = 10;
+
+typedef struct _Callback_Data
+{
+   Ecore_Timer *timer;
+   Eina_Bool did_timeout;
+} Callback_Data;
+
+static Eina_Bool
+timer_expired_cb(void *user_data)
+{
+   Callback_Data *data = user_data;
+   data-did_timeout = EINA_TRUE;
+   data-timer = NULL;
+
+   return ECORE_CALLBACK_CANCEL;
+}
+
+Eina_Bool
+elm_test_helper_wait_flag(Eina_Bool *done)
+{
+   Callback_Data data;
+
+   data.did_timeout = EINA_FALSE;
+   data.timer = ecore_timer_add(timeout, timer_expired_cb, data);
+
+   while (*done == EINA_FALSE  data.did_timeout == EINA_FALSE)
+ ecore_main_loop_iterate();
+
+   if (data.timer)
+ ecore_timer_del(data.timer);
+
+   return !data.did_timeout;
+}
diff --git a/src/tests/elm_test_helper.h b/src/tests/elm_test_helper.h
new file mode 100644
index 000..62974f1
--- /dev/null
+++ b/src/tests/elm_test_helper.h
@@ -0,0 +1,8 @@
+#ifndef _ELM_TEST_HELPER_H
+#define _ELM_TEST_HELPER_H
+
+#include Eina.h
+
+Eina_Bool elm_test_helper_wait_flag(Eina_Bool *done);
+
+#endif /* _ELM_TEST_HELPER_H */

-- 




[E-devel] Build error while building ELM with '--with-tests=regular'

2014-07-15 Thread ryuan Choi
I compiled Elementary with tests and got below errors.
Some APIs look changed.

What I did:
cd elementary
./autogen.sh --prefix=/usr/elocal --with-tests=regular
make -j8
sudo make install
make check -j8

Error message:

elm_suite-elm_test_atspi.o: In function
`elm_test_atspi_object_children_get':
/home/ryuan/workspace/project/efl/elementary/src/tests/elm_test_atspi.c:262:
undefined reference to `_elm_atspi_root_get'
elm_suite-elm_test_atspi.o: In function `generate_app':
/home/ryuan/workspace/project/efl/elementary/src/tests/elm_test_atspi.c:35:
undefined reference to `_elm_atspi_init'
/home/ryuan/workspace/project/efl/elementary/src/tests/elm_test_atspi.c:37:
undefined reference to `_elm_atspi_root_get'
elm_suite-elm_test_entry.o: In function `elm_entry_atspi_text_text_get':
/home/ryuan/workspace/project/efl/elementary/src/tests/elm_test_entry.c:271:
undefined reference to `elm_interface_atspi_text_text_get'

Best Regards,
Ryuan Choi
--
Want fast and easy access to all the code in your enterprise? Index and
search up to 200,000 lines of code with a free copy of Black Duck
Code Sight - the same software that powers the world's largest code
search on Ohloh, the Black Duck Open Hub! Try it now.
http://p.sf.net/sfu/bds
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: Fix build break while building with --with-tests=regular

2014-07-15 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 24099ace287416712a885d589a70c7b20a995a31
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Wed Jul 16 07:19:25 2014 +0900

Fix build break while building with --with-tests=regular

_elm_atspi_init and _elm_atspi_root_get was removed at 99a32ea4b
---
 src/tests/elm_test_atspi.c | 23 ++-
 1 file changed, 2 insertions(+), 21 deletions(-)

diff --git a/src/tests/elm_test_atspi.c b/src/tests/elm_test_atspi.c
index 7ff6712..d7ec2a8 100644
--- a/src/tests/elm_test_atspi.c
+++ b/src/tests/elm_test_atspi.c
@@ -30,27 +30,9 @@ Eo* generate_app(void)
evas_object_show(g_bg);
evas_object_show(g_win);
 
-   Eo *obj = NULL;
-
-   _elm_atspi_init();
-
-   obj = _elm_atspi_root_get();
-
-   return obj;
+   return _elm_atspi_bridge_root_get();
 }
 
-START_TEST (elm_atspi_root_get)
-{
-   elm_init(0, NULL);
-
-   Eo* obj = generate_app();
-
-   ck_assert(obj != NULL);
-
-   elm_shutdown();
-}
-END_TEST
-
 START_TEST (elm_atspi_name_get)
 {
elm_init(0, NULL);
@@ -259,7 +241,7 @@ START_TEST (elm_test_atspi_object_children_get)
 {
elm_init(0, NULL);
 
-   Eo *root = _elm_atspi_root_get();
+   Eo *root = _elm_atspi_bridge_root_get();
 
Eina_List *children = NULL;
eo_do(root, children = elm_interface_atspi_accessible_children_get());
@@ -391,7 +373,6 @@ END_TEST
 
 void elm_test_atspi(TCase *tc)
 {
-   tcase_add_test(tc, elm_atspi_root_get);
tcase_add_test(tc, elm_atspi_name_get);
tcase_add_test(tc, elm_atspi_role_get);
tcase_add_test(tc, elm_atspi_role_name_get);

-- 




Re: [E-devel] Build error while building ELM with '--with-tests=regular'

2014-07-15 Thread ryuan Choi
Tom, Thanks for the quick fix.

Others look broken after 99a32ea4b atspi: unify atspi initialization

Lukasz, I tried to fix it at 24099ace2 .
Please check whether my simple fix is right.

Best Regards,
Ryuan Choi



2014-07-16 6:53 GMT+09:00 Tom Hacohen tom.haco...@samsung.com:

 On 15/07/14 22:46, ryuan Choi wrote:
  I compiled Elementary with tests and got below errors.
  Some APIs look changed.
 
  What I did:
  cd elementary
  ./autogen.sh --prefix=/usr/elocal --with-tests=regular
  make -j8
  sudo make install
  make check -j8
 
  Error message:
 
  elm_suite-elm_test_atspi.o: In function
  `elm_test_atspi_object_children_get':
 
 /home/ryuan/workspace/project/efl/elementary/src/tests/elm_test_atspi.c:262:
  undefined reference to `_elm_atspi_root_get'
  elm_suite-elm_test_atspi.o: In function `generate_app':
 
 /home/ryuan/workspace/project/efl/elementary/src/tests/elm_test_atspi.c:35:
  undefined reference to `_elm_atspi_init'
 
 /home/ryuan/workspace/project/efl/elementary/src/tests/elm_test_atspi.c:37:
  undefined reference to `_elm_atspi_root_get'
  elm_suite-elm_test_entry.o: In function `elm_entry_atspi_text_text_get':
 
 /home/ryuan/workspace/project/efl/elementary/src/tests/elm_test_entry.c:271:
  undefined reference to `elm_interface_atspi_text_text_get'
 
  Best Regards,
  Ryuan Choi
 
 --
  Want fast and easy access to all the code in your enterprise? Index and
  search up to 200,000 lines of code with a free copy of Black Duck
  Code Sight - the same software that powers the world's largest code
  search on Ohloh, the Black Duck Open Hub! Try it now.
  http://p.sf.net/sfu/bds
  ___
  enlightenment-devel mailing list
  enlightenment-devel@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
 

 Hey,

 I fixed the issue with the entry test, thanks for reporting. No idea
 about the rest. Can't find those functions or any trace of them, and
 don't really have the time to try and find them in history. It would be
 great if whoever who wrote it will fix it.

 Stefan: don't we make check for elementary on jenkins? I wonder how
 this was missed for so long.

 --
 Tom.



 --
 Want fast and easy access to all the code in your enterprise? Index and
 search up to 200,000 lines of code with a free copy of Black Duck
 Code Sight - the same software that powers the world's largest code
 search on Ohloh, the Black Duck Open Hub! Try it now.
 http://p.sf.net/sfu/bds
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Want fast and easy access to all the code in your enterprise? Index and
search up to 200,000 lines of code with a free copy of Black Duck
Code Sight - the same software that powers the world's largest code
search on Ohloh, the Black Duck Open Hub! Try it now.
http://p.sf.net/sfu/bds
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/elementary] master 01/01: Fix build break while building with --with-tests=regular

2014-07-15 Thread ryuan Choi
There are many tests for the atspi since I touched. I don't know them.

Except them, the others are very small but valid.

Best regards,
ryuan choi
2014. 7. 16. 오전 7:28에 Tom Hacohen tom.haco...@samsung.com님이 작성:

 Cool, so you found it. :)

 I wonder, are the tests still valid and make sense?

 --
 Tom.

 On 15/07/14 23:20, Ryuan Choi wrote:
  ryuan pushed a commit to branch master.
 
 
 http://git.enlightenment.org/core/elementary.git/commit/?id=24099ace287416712a885d589a70c7b20a995a31
 
  commit 24099ace287416712a885d589a70c7b20a995a31
  Author: Ryuan Choi ryuan.c...@gmail.com
  Date:   Wed Jul 16 07:19:25 2014 +0900
 
   Fix build break while building with --with-tests=regular
 
   _elm_atspi_init and _elm_atspi_root_get was removed at 99a32ea4b
  ---
src/tests/elm_test_atspi.c | 23 ++-
1 file changed, 2 insertions(+), 21 deletions(-)
 
  diff --git a/src/tests/elm_test_atspi.c b/src/tests/elm_test_atspi.c
  index 7ff6712..d7ec2a8 100644
  --- a/src/tests/elm_test_atspi.c
  +++ b/src/tests/elm_test_atspi.c
  @@ -30,27 +30,9 @@ Eo* generate_app(void)
   evas_object_show(g_bg);
   evas_object_show(g_win);
 
  -   Eo *obj = NULL;
  -
  -   _elm_atspi_init();
  -
  -   obj = _elm_atspi_root_get();
  -
  -   return obj;
  +   return _elm_atspi_bridge_root_get();
}
 
  -START_TEST (elm_atspi_root_get)
  -{
  -   elm_init(0, NULL);
  -
  -   Eo* obj = generate_app();
  -
  -   ck_assert(obj != NULL);
  -
  -   elm_shutdown();
  -}
  -END_TEST
  -
START_TEST (elm_atspi_name_get)
{
   elm_init(0, NULL);
  @@ -259,7 +241,7 @@ START_TEST (elm_test_atspi_object_children_get)
{
   elm_init(0, NULL);
 
  -   Eo *root = _elm_atspi_root_get();
  +   Eo *root = _elm_atspi_bridge_root_get();
 
   Eina_List *children = NULL;
   eo_do(root, children =
 elm_interface_atspi_accessible_children_get());
  @@ -391,7 +373,6 @@ END_TEST
 
void elm_test_atspi(TCase *tc)
{
  -   tcase_add_test(tc, elm_atspi_root_get);
   tcase_add_test(tc, elm_atspi_name_get);
   tcase_add_test(tc, elm_atspi_role_get);
   tcase_add_test(tc, elm_atspi_role_name_get);
 




 --
 Want fast and easy access to all the code in your enterprise? Index and
 search up to 200,000 lines of code with a free copy of Black Duck
 Code Sight - the same software that powers the world's largest code
 search on Ohloh, the Black Duck Open Hub! Try it now.
 http://p.sf.net/sfu/bds
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Want fast and easy access to all the code in your enterprise? Index and
search up to 200,000 lines of code with a free copy of Black Duck
Code Sight - the same software that powers the world's largest code
search on Ohloh, the Black Duck Open Hub! Try it now.
http://p.sf.net/sfu/bds
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/02: atspi: Set roles for elm_web2

2014-07-04 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 304a922778ef1bf53538742408ba7280087877dc
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Sat Jul 5 01:07:06 2014 +0900

atspi: Set roles for elm_web2

7f44b9f57 set roles for other widgets except elm_web2
---
 src/lib/elm_web2.c | 7 ++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/lib/elm_web2.c b/src/lib/elm_web2.c
index f5a92c4..ffe768a 100644
--- a/src/lib/elm_web2.c
+++ b/src/lib/elm_web2.c
@@ -10,6 +10,10 @@
 #if defined(HAVE_ELEMENTARY_WEB)  defined(USE_WEBKIT2)
 #include EWebKit2.h
 
+#define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
+#include elm_interface_atspi_accessible.h
+#include elm_interface_atspi_accessible.eo.h
+
 #define MY_CLASS ELM_WEB_CLASS
 
 #define MY_CLASS_NAME Elm_Web
@@ -695,7 +699,8 @@ _elm_web_eo_base_constructor(Eo *obj, Elm_Web_Data *sd)
eo_do_super(obj, MY_CLASS, eo_constructor());
eo_do(obj,
  evas_obj_type_set(MY_CLASS_NAME_LEGACY),
- evas_obj_smart_callbacks_descriptions_set(_elm_web_smart_callbacks));
+ evas_obj_smart_callbacks_descriptions_set(_elm_web_smart_callbacks),
+ 
elm_interface_atspi_accessible_role_set(ELM_ATSPI_ROLE_HTML_CONTAINER));
 }
 
 EOLIAN static Evas_Object*

-- 




[EGIT] [core/elementary] master 01/01: elm_web: Remove elm_web.c from the list in POTFILES.in

2014-07-04 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit dd87d438cecdc3d65715770b772867f6b873b41a
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Sat Jul 5 12:29:25 2014 +0900

elm_web: Remove elm_web.c from the list in POTFILES.in

Since afb1d4a1e, elm_web.c was removed.
---
 po/POTFILES.in | 1 -
 1 file changed, 1 deletion(-)

diff --git a/po/POTFILES.in b/po/POTFILES.in
index 00ce0b1..b88a72f 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -169,7 +169,6 @@
 ./src/lib/elm_transit.c
 ./src/lib/elm_util.c
 ./src/lib/elm_video.c
-./src/lib/elm_web.c
 ./src/lib/elm_web2.c
 ./src/lib/elm_widget.c
 ./src/lib/elm_win.c

-- 




Re: [E-devel] Anyone feel like fixing make dist?

2014-07-04 Thread ryuan Choi
Sorry, I fixed elementary.


2014-07-05 8:36 GMT+09:00 Simon si...@simotek.net:

 elementary
 Simotek make[3]: *** No rule to make target `.././src/lib/elm_web.c',
 needed by `elementary.pot-update'.  Stop.

 efl
 Simotek make[1]: *** No rule to make target
 `modules/evas/engines/gl_common/shader/img_mask_frag.h', needed by
 `distdir'.  Stop.

 Cheers
 Simon


 --
 Open source business process management suite built on Java and Eclipse
 Turn processes into business applications with Bonita BPM Community Edition
 Quickly connect people, data, and systems into organized workflows
 Winner of BOSSIE, CODIE, OW2 and Gartner awards
 http://p.sf.net/sfu/Bonitasoft
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [webkit-efl] Stop to maintain EFL WK1 port

2014-07-03 Thread ryuan Choi
Yep, I will keep webkit2 support (as the backend of elm_web) and improve it
more and more.

Until you kick elm_web out. :)


2014-07-03 9:21 GMT+09:00 Carsten Haitzler ras...@rasterman.com:

 On Wed, 2 Jul 2014 20:59:16 +0900 ryuan Choi ryuan.c...@gmail.com said:

  Hi.
 
  It might be possible to refactor ewebkit2 to use EFL++ directly after
  dropping the support of the lower version of EFL.
 
  But in my two cents, it's not important.
  Unfortunately, ewebkit2 developers not familiar with the latest EFL
  changes. They only have small experience with the EFL on the tizen.
  (me too. :/ )
 
  By the way, I removed(and checked) the all of WebKit1/Efl (ewebkit) code
  from the webkit.org repository.
  (https://bugs.webkit.org/show_bug.cgi?id=134087)
  Should(Can) I remove ewebkit backend for elm_web ?

 you mean remove just the webkitefl for webkit1 support in elm_web - keep
 wenkit2 support... right?

  Best Regards,
  Ryuan Choi
 
 
 
  2014-07-01 18:39 GMT+09:00 Carsten Haitzler ras...@rasterman.com:
 
   On Wed, 25 Jun 2014 12:44:19 -0300 Felipe Magno de Almeida
   felipe.m.alme...@gmail.com said:
  
On Sat, Jun 21, 2014 at 1:20 AM, Cedric BAIL moa.blueb...@gmail.com
 
   wrote:
 On Jun 21, 2014 2:26 AM, Carsten Haitzler ras...@rasterman.com
   wrote:
 On Fri, 20 Jun 2014 21:25:54 -0300 Felipe Magno de Almeida
 felipe.m.alme...@gmail.com said:
  On Fri, Jun 20, 2014 at 9:07 PM, Carsten Haitzler 
   ras...@rasterman.com
  wrote:
   On Fri, 20 Jun 2014 15:02:37 -0300 Felipe Magno de Almeida
   felipe.m.alme...@gmail.com said:
   
[snip]
   
  I think it would make the port easier to mantain. It would give
   RAII,
  STL-compatibility, easier callback support with lambda-support
 and a
  value-based API. But that's just my opinion.

 elm web has a c api. will always have one. thus we then would
 have to
 write a c+
 + elm web by hand AND a c+eo one. no. use eo to write one and
 efl++
 exposes elm
 web. webkit api is internal then and thats how it should be.

 I think Felipe was referring to the internal of WebKit talking to
 efl
   which
 is already in c++ and would likely benefit from using the c++ with
 no
 penalty.
   
Exactly. Sorry for not being clear. I didn't mean use EFL++ for the
elm_web, but for the WebKit backend for EFL. There's no reason to use
the C EFL API by C++ code, IMO.
  
   oh - then i don't know .. but i suspect the code is already done and
 using
   efl's c interface inside the c++ code as that is working today already.
  
   --
   - Codito, ergo sum - I code, therefore I am
 --
   The Rasterman (Carsten Haitzler)ras...@rasterman.com
  
  
  
  
 --
   Open source business process management suite built on Java and Eclipse
   Turn processes into business applications with Bonita BPM Community
 Edition
   Quickly connect people, data, and systems into organized workflows
   Winner of BOSSIE, CODIE, OW2 and Gartner awards
   http://p.sf.net/sfu/Bonitasoft
   ___
   enlightenment-devel mailing list
   enlightenment-devel@lists.sourceforge.net
   https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
  
 
 --
  Open source business process management suite built on Java and Eclipse
  Turn processes into business applications with Bonita BPM Community
 Edition
  Quickly connect people, data, and systems into organized workflows
  Winner of BOSSIE, CODIE, OW2 and Gartner awards
  http://p.sf.net/sfu/Bonitasoft
  ___
  enlightenment-devel mailing list
  enlightenment-devel@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
 


 --
 - Codito, ergo sum - I code, therefore I am --
 The Rasterman (Carsten Haitzler)ras...@rasterman.com


--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [webkit-efl] Stop to maintain EFL WK1 port

2014-07-02 Thread ryuan Choi
Hi.

It might be possible to refactor ewebkit2 to use EFL++ directly after
dropping the support of the lower version of EFL.

But in my two cents, it's not important.
Unfortunately, ewebkit2 developers not familiar with the latest EFL
changes. They only have small experience with the EFL on the tizen.
(me too. :/ )

By the way, I removed(and checked) the all of WebKit1/Efl (ewebkit) code
from the webkit.org repository.
(https://bugs.webkit.org/show_bug.cgi?id=134087)
Should(Can) I remove ewebkit backend for elm_web ?

Best Regards,
Ryuan Choi



2014-07-01 18:39 GMT+09:00 Carsten Haitzler ras...@rasterman.com:

 On Wed, 25 Jun 2014 12:44:19 -0300 Felipe Magno de Almeida
 felipe.m.alme...@gmail.com said:

  On Sat, Jun 21, 2014 at 1:20 AM, Cedric BAIL moa.blueb...@gmail.com
 wrote:
   On Jun 21, 2014 2:26 AM, Carsten Haitzler ras...@rasterman.com
 wrote:
   On Fri, 20 Jun 2014 21:25:54 -0300 Felipe Magno de Almeida
   felipe.m.alme...@gmail.com said:
On Fri, Jun 20, 2014 at 9:07 PM, Carsten Haitzler 
 ras...@rasterman.com
wrote:
 On Fri, 20 Jun 2014 15:02:37 -0300 Felipe Magno de Almeida
 felipe.m.alme...@gmail.com said:
 
  [snip]
 
I think it would make the port easier to mantain. It would give
 RAII,
STL-compatibility, easier callback support with lambda-support and a
value-based API. But that's just my opinion.
  
   elm web has a c api. will always have one. thus we then would have to
   write a c+
   + elm web by hand AND a c+eo one. no. use eo to write one and efl++
   exposes elm
   web. webkit api is internal then and thats how it should be.
  
   I think Felipe was referring to the internal of WebKit talking to efl
 which
   is already in c++ and would likely benefit from using the c++ with no
   penalty.
 
  Exactly. Sorry for not being clear. I didn't mean use EFL++ for the
  elm_web, but for the WebKit backend for EFL. There's no reason to use
  the C EFL API by C++ code, IMO.

 oh - then i don't know .. but i suspect the code is already done and using
 efl's c interface inside the c++ code as that is working today already.

 --
 - Codito, ergo sum - I code, therefore I am --
 The Rasterman (Carsten Haitzler)ras...@rasterman.com



 --
 Open source business process management suite built on Java and Eclipse
 Turn processes into business applications with Bonita BPM Community Edition
 Quickly connect people, data, and systems into organized workflows
 Winner of BOSSIE, CODIE, OW2 and Gartner awards
 http://p.sf.net/sfu/Bonitasoft
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: fileselector: Make selected_set actually select the file

2014-07-01 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 5622df6914329bca7e816aac334c2dda25d296a8
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Wed Jul 2 07:55:53 2014 +0900

fileselector: Make selected_set actually select the file

This patch comes from Kai Huuhko.

Added test case for selected_set/get.

@fix
---
 src/lib/elc_fileselector.c|  2 +-
 src/tests/elm_test_fileselector.c | 61 ++-
 2 files changed, 61 insertions(+), 2 deletions(-)

diff --git a/src/lib/elc_fileselector.c b/src/lib/elc_fileselector.c
index 0f6903c..106b910 100644
--- a/src/lib/elc_fileselector.c
+++ b/src/lib/elc_fileselector.c
@@ -1902,7 +1902,7 @@ 
_elm_fileselector_elm_interface_fileselector_selected_set(Eo *obj, Elm_Fileselec
   }
 
 selected = ecore_file_dir_get(path);
-_populate(obj, selected, NULL, NULL);
+_populate(obj, selected, NULL, path);
 eina_stringshare_replace(sd-selection, path);
 free(selected);
  }
diff --git a/src/tests/elm_test_fileselector.c 
b/src/tests/elm_test_fileselector.c
index 5d09430..e5dd067 100644
--- a/src/tests/elm_test_fileselector.c
+++ b/src/tests/elm_test_fileselector.c
@@ -27,8 +27,67 @@ START_TEST (elm_atspi_role_get)
 }
 END_TEST
 
+static void
+_directory_open_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
+{
+Eina_Bool *ret = data;
+*ret = EINA_TRUE;
+}
+
+START_TEST (elm_fileselector_selected)
+{
+   Evas_Object *win, *fileselector;
+   Eina_Tmpstr *tmp_path;
+   Eina_Stringshare *exist, *no_exist;
+   FILE *fp;
+   char *path;
+   Eina_Bool selected;
+
+   elm_init(1, NULL);
+
+   if (!eina_file_mkdtemp(elm_test-XX, tmp_path))
+ {
+/* can not test */
+ck_assert(EINA_FALSE);
+return;
+ }
+
+   path = strdup(tmp_path);
+   eina_tmpstr_del(tmp_path);
+
+   exist = eina_stringshare_printf(%s/exist, path);
+   no_exist = eina_stringshare_printf(%s/no_exist, path);
+   fp = fopen(exist, w);
+   fclose(fp);
+
+   win = elm_win_add(NULL, fileselector, ELM_WIN_BASIC);
+
+   fileselector = elm_fileselector_add(win);
+   evas_object_smart_callback_add(fileselector, directory,open, 
_directory_open_cb, selected);
+
+   ck_assert(!elm_fileselector_selected_set(fileselector, no_exist));
+
+   selected = EINA_FALSE;
+   ck_assert(elm_fileselector_selected_set(fileselector, path));
+   while (!selected) ecore_main_loop_iterate();
+   ck_assert_str_eq(elm_fileselector_selected_get(fileselector), path);
+
+   selected = EINA_FALSE;
+   ck_assert(elm_fileselector_selected_set(fileselector, exist));
+   while (!selected) ecore_main_loop_iterate();
+   ck_assert_str_eq(elm_fileselector_selected_get(fileselector), exist);
+
+   eina_stringshare_del(exist);
+   eina_stringshare_del(no_exist);
+   free(path);
+
+   elm_shutdown();
+}
+END_TEST
+
 void elm_test_fileselector(TCase *tc)
 {
- tcase_add_test(tc, elm_atspi_role_get);
+   tcase_add_test(tc, elm_atspi_role_get);
+   tcase_add_test(tc, elm_fileselector_selected);
 }
 

-- 




[EGIT] [core/elementary] elementary-1.10 01/01: fileselector: Make selected_set actually select the file

2014-07-01 Thread Ryuan Choi
ryuan pushed a commit to branch elementary-1.10.

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

commit e289faeb2a799caec15ab0eab3cab10b6597ba5b
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Wed Jul 2 07:55:53 2014 +0900

fileselector: Make selected_set actually select the file

This patch comes from Kai Huuhko.

@fix
---
 src/lib/elc_fileselector.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elc_fileselector.c b/src/lib/elc_fileselector.c
index 686369d..1d87014 100644
--- a/src/lib/elc_fileselector.c
+++ b/src/lib/elc_fileselector.c
@@ -1854,7 +1854,7 @@ 
_elm_fileselector_elm_interface_fileselector_selected_set(Eo *obj, Elm_Fileselec
   }
 
 selected = ecore_file_dir_get(path);
-_populate(obj, selected, NULL, NULL);
+_populate(obj, selected, NULL, path);
 eina_stringshare_replace(sd-selection, path);
 free(selected);
  }

-- 




[EGIT] [core/elementary] elementary-1.9 01/01: fileselector: Make selected_set actually select the file

2014-07-01 Thread Ryuan Choi
ryuan pushed a commit to branch elementary-1.9.

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

commit e1a5af2e3b9001eb00563f0eb219c28a538167ba
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Wed Jul 2 07:55:53 2014 +0900

fileselector: Make selected_set actually select the file

This patch comes from Kai Huuhko.

@fix
---
 src/lib/elc_fileselector.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elc_fileselector.c b/src/lib/elc_fileselector.c
index d6c3e6d..90a107b 100644
--- a/src/lib/elc_fileselector.c
+++ b/src/lib/elc_fileselector.c
@@ -1924,7 +1924,7 @@ _selected_set(Eo *obj, void *_pd, va_list *list)
   }
 
 selected = ecore_file_dir_get(path);
-_populate(obj, selected, NULL, NULL);
+_populate(obj, selected, NULL, path);
 eina_stringshare_replace(sd-selection, path);
 free(selected);
  }

-- 




Re: [E-devel] [webkit-efl] Stop to maintain EFL WK1 port

2014-06-16 Thread ryuan Choi
I cc'd efl mailing list for someone who may use EFL WK1 port.

Unfortunately, I agree with you.
Nowadays, we don't have enough man power to maintain two ports.

If nobody volunteer, I will also support it.

Best Regards,
Ryuan Choi



2014-06-14 23:50 GMT+09:00 Laszlo Gombos l.gom...@samsung.com:

 Hi Gyuyoung,

 Thanks for initiating this discussion.

 I support the removal of EFL WK1 port from WebKit trunk and I think this
 should help maintaining EFL WK2 port.

 Best Regards,
   Laszlo


 On Sat, Jun 14, 2014 at 5:52 AM, Gyuyoung Kim gyuyoung@webkit.org
 wrote:

 Hello WebKit-EFL folks,

 I would like to talk about our old issue - How long will we support EFL
 WK1 port ?

 We had used EFL WK1 port for some projects internally as well as elm-web
 as one of elementary's sub libraries. However, now we don't use EFL WK1
 port anymore. Besides, AFAIK, elm-web is gonna use EFL WK2.

 Thus I'd like to stop to maintain the EFL WK1 port.

 If anyone objects to remove EFL WK1 port, please let me know.

 Thanks,
 Gyuyoung.

 ___
 webkit-efl mailing list
 webkit-...@lists.webkit.org
 https://lists.webkit.org/mailman/listinfo/webkit-efl



 ___
 webkit-efl mailing list
 webkit-...@lists.webkit.org
 https://lists.webkit.org/mailman/listinfo/webkit-efl


--
HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions
Find What Matters Most in Your Big Data with HPCC Systems
Open Source. Fast. Scalable. Simple. Ideal for Dirty Data.
Leverages Graph Analysis for Fast Processing  Easy Data Exploration
http://p.sf.net/sfu/hpccsystems
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: elm_web2: Implement _elm_web_elm_widget_on_focus

2014-06-11 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit ce6f8f8380857eeebe0407087f9f09b9305065c1
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Thu Jun 12 15:50:27 2014 +0900

elm_web2: Implement _elm_web_elm_widget_on_focus
---
 src/lib/elm_web2.c | 22 --
 1 file changed, 20 insertions(+), 2 deletions(-)

diff --git a/src/lib/elm_web2.c b/src/lib/elm_web2.c
index cc0bd98..f5a92c4 100644
--- a/src/lib/elm_web2.c
+++ b/src/lib/elm_web2.c
@@ -607,8 +607,26 @@ _elm_web_elm_widget_theme_apply(Eo *obj, Elm_Web_Data *sd 
EINA_UNUSED)
 EOLIAN static Eina_Bool
 _elm_web_elm_widget_on_focus(Eo *obj, Elm_Web_Data *sd)
 {
-   (void)obj;
-   (void)sd;
+   Evas_Object *top;
+
+   ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, EINA_TRUE);
+   Eina_Bool int_ret = EINA_FALSE;
+
+   eo_do_super(obj, MY_CLASS, int_ret = elm_obj_widget_on_focus());
+   if (!int_ret) return EINA_TRUE;
+
+   top = elm_widget_top_get(obj);
+
+   if (elm_object_focus_get(obj))
+ {
+evas_object_focus_set(wd-resize_obj, EINA_TRUE);
+if (top) elm_win_keyboard_mode_set(top, sd-input_method);
+ }
+   else
+ {
+evas_object_focus_set(wd-resize_obj, EINA_FALSE);
+if (top) elm_win_keyboard_mode_set(top, ELM_WIN_KEYBOARD_OFF);
+ }
return EINA_TRUE;
 }
 

-- 




[EGIT] [tools/enventor] master 01/01: Fix the crash when user passed wrong input file.

2014-05-15 Thread Ryuan Choi
ryuan pushed a commit to branch master.

http://git.enlightenment.org/tools/enventor.git/commit/?id=c88e9bf9d38259a1f4a3581033b9b09479bdf20e

commit c88e9bf9d38259a1f4a3581033b9b09479bdf20e
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Thu May 15 20:54:14 2014 +0900

Fix the crash when user passed wrong input file.

ex) enventor a/b.edc
---
 src/bin/edc_editor.c | 9 ++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/bin/edc_editor.c b/src/bin/edc_editor.c
index 9a95b10..a6b4bd1 100644
--- a/src/bin/edc_editor.c
+++ b/src/bin/edc_editor.c
@@ -831,16 +831,19 @@ edit_edc_read(edit_data *ed, const char *file_path)
 
ed-line_max = 0;
 
+   Eina_Iterator *itr = NULL;
+   Eina_Strbuf *strbuf_line = NULL, *strbuf_edit = NULL;
+
Eina_File *file = eina_file_open(file_path, EINA_FALSE);
if (!file) goto err;
 
-   Eina_Iterator *itr = eina_file_map_lines(file);
+   itr = eina_file_map_lines(file);
if (!itr) goto err;
 
-   Eina_Strbuf *strbuf_line = eina_strbuf_new();
+   strbuf_line = eina_strbuf_new();
if (!strbuf_line) goto err;
 
-   Eina_Strbuf *strbuf_edit = eina_strbuf_new();
+   strbuf_edit = eina_strbuf_new();
if (!strbuf_edit) goto err;
 
Eina_File_Line *line;

-- 




[EGIT] [core/elementary] master 01/01: ctxpopup: Fixes that remains diskselector when dismissed ctxpopup of elm_datetime.

2014-05-09 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit d03af718eff3b645b2d7b794b4a5dafc42af85db
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Wed May 7 12:51:51 2014 +0900

ctxpopup: Fixes that remains diskselector when dismissed ctxpopup of 
elm_datetime.

elm_object_content_unset should return child element which is unset.

Tests: elementary_test -to datetime
---
 src/lib/elc_ctxpopup.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elc_ctxpopup.c b/src/lib/elc_ctxpopup.c
index b118bc1..01dbf2f 100644
--- a/src/lib/elc_ctxpopup.c
+++ b/src/lib/elc_ctxpopup.c
@@ -828,7 +828,7 @@ _elm_ctxpopup_elm_container_content_unset(Eo *obj, 
Elm_Ctxpopup_Data *sd, const
 
if (sd-visible) elm_layout_sizing_eval(obj);
 
-   return NULL;
+   return content;
 }
 
 static void

-- 




[EGIT] [core/elementary] master 01/01: Fix the leak when closed alert/prompt/confirm since 1be3950fd

2014-05-03 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit e8d5ffd2ab58e7a20c8ca020d048eddc633d7c3c
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Sat May 3 19:36:54 2014 +0900

Fix the leak when closed alert/prompt/confirm since 1be3950fd

Spotted by seoz.
---
 src/lib/elm_web2.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/lib/elm_web2.c b/src/lib/elm_web2.c
index 1f51f47..5549381 100644
--- a/src/lib/elm_web2.c
+++ b/src/lib/elm_web2.c
@@ -289,6 +289,7 @@ _bt_close(void *data,
 
 end:
evas_object_del(d-dialog);
+   free(d);
 }
 
 static Dialog_Data *

-- 




[EGIT] [core/elementary] master 01/01: entry: Create selection handles as lazily as possible

2014-04-24 Thread Ryuan Choi
raster pushed a commit to branch master.

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

commit c3160425059612caa4b811232533e86ca37de158
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Thu Apr 24 17:52:22 2014 +0900

entry: Create selection handles as lazily as possible

Summary:
Moved the construction of selection handles to _update_selection_handler in 
order to
reduce the cost of construction of elm_entry little bit.

Reviewers: thiepha, Hermet, seoz, raster

CC: seoz, raster

Differential Revision: https://phab.enlightenment.org/D756
---
 src/lib/elm_entry.c | 64 +++--
 1 file changed, 42 insertions(+), 22 deletions(-)

diff --git a/src/lib/elm_entry.c b/src/lib/elm_entry.c
index 2e21415..fd21682 100644
--- a/src/lib/elm_entry.c
+++ b/src/lib/elm_entry.c
@@ -79,6 +79,8 @@ struct _Mod_Api
void (*obj_longpress)(Evas_Object *obj);
 };
 
+static void _create_selection_handlers(Evas_Object *obj, Elm_Entry_Data *sd);
+
 static Mod_Api *
 _module_find(Evas_Object *obj EINA_UNUSED)
 {
@@ -380,6 +382,8 @@ _hide_selection_handler(Evas_Object *obj)
 {
ELM_ENTRY_DATA_GET(obj, sd);
 
+   if (!sd-start_handler) return;
+
edje_object_signal_emit(sd-start_handler, elm,handler,hide, elm);
sd-start_handler_shown = EINA_FALSE;
edje_object_signal_emit(sd-end_handler, elm,handler,hide, elm);
@@ -436,6 +440,9 @@ _update_selection_handler(Evas_Object *obj)
 Evas_Coord hx, hy;
 Eina_Bool hidden = EINA_FALSE;
 
+if (!sd-start_handler)
+  _create_selection_handlers(obj, sd);
+
 rect = _viewport_region_get(obj);
 start_pos = edje_object_part_text_cursor_pos_get
(sd-entry_edje, elm.text, EDJE_CURSOR_SELECTION_BEGIN);
@@ -763,10 +770,13 @@ _elm_entry_elm_widget_theme_apply(Eo *obj, Elm_Entry_Data 
*sd)
else
  elm_widget_highlight_in_theme_set(obj, EINA_FALSE);
 
-   elm_widget_theme_object_set(obj, sd-start_handler,
-   entry, handler/start, style);
-   elm_widget_theme_object_set(obj, sd-end_handler,
-   entry, handler/end, style);
+   if (sd-start_handler)
+ {
+elm_widget_theme_object_set(obj, sd-start_handler,
+entry, handler/start, style);
+elm_widget_theme_object_set(obj, sd-end_handler,
+entry, handler/end, style);
+ }
 
sd-changed = EINA_TRUE;
elm_layout_sizing_eval(obj);
@@ -3424,29 +3434,36 @@ _elm_entry_evas_smart_add(Eo *obj, Elm_Entry_Data *priv)
_elm_access_callback_set
  (_elm_access_info_get(obj), ELM_ACCESS_STATE, _access_state_cb, NULL);
 
-   priv-start_handler = edje_object_add(evas_object_evas_get(obj));
-   _elm_theme_object_set(obj, priv-start_handler,
- entry, handler/start, default);
-   evas_object_event_callback_add(priv-start_handler, 
EVAS_CALLBACK_MOUSE_DOWN,
+   if (_elm_config-desktop_entry)
+ priv-sel_handler_disabled = EINA_TRUE;
+}
+
+static void
+_create_selection_handlers(Evas_Object *obj, Elm_Entry_Data *sd)
+{
+   Evas_Object *handle;
+
+   handle = edje_object_add(evas_object_evas_get(obj));
+   sd-start_handler = handle;
+   _elm_theme_object_set(obj, handle, entry, handler/start, default);
+   evas_object_event_callback_add(handle, EVAS_CALLBACK_MOUSE_DOWN,
   _start_handler_mouse_down_cb, obj);
-   evas_object_event_callback_add(priv-start_handler, 
EVAS_CALLBACK_MOUSE_MOVE,
+   evas_object_event_callback_add(handle, EVAS_CALLBACK_MOUSE_MOVE,
   _start_handler_mouse_move_cb, obj);
-   evas_object_event_callback_add(priv-start_handler, EVAS_CALLBACK_MOUSE_UP,
+   evas_object_event_callback_add(handle, EVAS_CALLBACK_MOUSE_UP,
   _start_handler_mouse_up_cb, obj);
-   evas_object_show(priv-start_handler);
+   evas_object_show(handle);
 
-   priv-end_handler = edje_object_add(evas_object_evas_get(obj));
-   _elm_theme_object_set(obj, priv-end_handler,
- entry, handler/end, default);
-   evas_object_event_callback_add(priv-end_handler, EVAS_CALLBACK_MOUSE_DOWN,
+   handle = edje_object_add(evas_object_evas_get(obj));
+   sd-end_handler = handle;
+   _elm_theme_object_set(obj, handle, entry, handler/end, default);
+   evas_object_event_callback_add(handle, EVAS_CALLBACK_MOUSE_DOWN,
   _end_handler_mouse_down_cb, obj);
-   evas_object_event_callback_add(priv-end_handler, EVAS_CALLBACK_MOUSE_MOVE,
+   evas_object_event_callback_add(handle, EVAS_CALLBACK_MOUSE_MOVE,
   _end_handler_mouse_move_cb, obj);
-   evas_object_event_callback_add(priv-end_handler, EVAS_CALLBACK_MOUSE_UP,
+   evas_object_event_callback_add(handle, EVAS_CALLBACK_MOUSE_UP

[EGIT] [core/efl] master 01/01: Clear the values of pipe before calling handler.

2014-04-24 Thread Ryuan Choi
raster pushed a commit to branch master.

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

commit 203006799186d47851509514786d05b4ae7fb644
Author: Ryuan Choi ryuan.c...@samsung.com
Date:   Fri Apr 25 10:29:01 2014 +0900

Clear the values of pipe before calling handler.

Summary:
Applications are stuck when handler of pipe made nested loop.
In the nested loop, _ecore_pipe_read() tried to read new data based on 
previous information which is not cleared yet.

Spotted by gyuyoung.kim, sy302.park.

Related webkit bug is https://bugs.webkit.org/show_bug.cgi?id=129294

Reviewers: cedric, seoz, raster

CC: seoz, cedric

Differential Revision: https://phab.enlightenment.org/D790
---
 src/lib/ecore/ecore_pipe.c | 44 +++-
 1 file changed, 11 insertions(+), 33 deletions(-)

diff --git a/src/lib/ecore/ecore_pipe.c b/src/lib/ecore/ecore_pipe.c
index 705673b..9783c2f 100644
--- a/src/lib/ecore/ecore_pipe.c
+++ b/src/lib/ecore/ecore_pipe.c
@@ -586,12 +586,22 @@ _ecore_pipe_handler_call(Ecore_Pipe *p,
  size_t len)
 {
void *data = (void*) p-data;
+
+   // clear all values of pipe first.
+   p-passed_data = NULL;
+   p-already_read = 0;
+   p-len = 0;
+   p-message++;
+
if (!p-delete_me)
  {
 _ecore_unlock();
 p-handler(data, buf, len);
 _ecore_lock();
  }
+
+   // free p-passed_data
+   free(buf);
 }
 
 static Eina_Bool
@@ -634,11 +644,6 @@ _ecore_pipe_read(void *data,
   {
  /* no data on first try through means an error */
   _ecore_pipe_handler_call(p, NULL, 0);
-  if (p-passed_data) free(p-passed_data);
-  p-passed_data = NULL;
-  p-already_read = 0;
-  p-len = 0;
-  p-message++;
   pipe_close(p-fd_read);
   p-fd_read = PIPE_FD_INVALID;
   p-fd_handler = NULL;
@@ -673,11 +678,6 @@ _ecore_pipe_read(void *data,
if (WSAGetLastError() != WSAEWOULDBLOCK)
  {
 _ecore_pipe_handler_call(p, NULL, 0);
-if (p-passed_data) free(p-passed_data);
-p-passed_data = NULL;
-p-already_read = 0;
-p-len = 0;
-p-message++;
 pipe_close(p-fd_read);
 p-fd_read = PIPE_FD_INVALID;
 p-fd_handler = NULL;
@@ -694,12 +694,6 @@ _ecore_pipe_read(void *data,
 if (p-len == 0)
   {
  _ecore_pipe_handler_call(p, NULL, 0);
- /* reset all values to 0 */
- if (p-passed_data) free(p-passed_data);
- p-passed_data = NULL;
- p-already_read = 0;
- p-len = 0;
- p-message++;
  _ecore_pipe_unhandle(p);
  return ECORE_CALLBACK_RENEW;
   }
@@ -713,9 +707,6 @@ _ecore_pipe_read(void *data,
{
   _ecore_pipe_handler_call(p, NULL, 0);
  /* close the pipe */
-  p-already_read = 0;
-  p-len = 0;
-  p-message++;
   pipe_close(p-fd_read);
   p-fd_read = PIPE_FD_INVALID;
   p-fd_handler = NULL;
@@ -732,15 +723,7 @@ _ecore_pipe_read(void *data,
 /* catch the non error case first */
 /* if we read enough data to finish the message/buffer */
 if (ret == (ssize_t)(p-len - p-already_read))
-  {
- _ecore_pipe_handler_call(p, p-passed_data, p-len);
- free(p-passed_data);
- /* reset all values to 0 */
- p-passed_data = NULL;
- p-already_read = 0;
- p-len = 0;
- p-message++;
-  }
+  _ecore_pipe_handler_call(p, p-passed_data, p-len);
 else if (ret  0)
   {
  /* more data left to read */
@@ -775,11 +758,6 @@ _ecore_pipe_read(void *data,
  if (WSAGetLastError() != WSAEWOULDBLOCK)
{
   _ecore_pipe_handler_call(p, NULL, 0);
-  if (p-passed_data) free(p-passed_data);
-  p-passed_data = NULL;
-  p-already_read = 0;
-  p-len = 0;
-  p-message++;
   pipe_close(p-fd_read);
   p-fd_read = PIPE_FD_INVALID;
   p-fd_handler = NULL;

-- 




[EGIT] [core/elementary] master 01/01: elm_web: Fixed build warning with ewebkit

2014-04-22 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit e195428df0270cbeee43a682fd52dbe7d9babd78
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Wed Apr 23 01:27:47 2014 +0900

elm_web: Fixed build warning with ewebkit
---
 src/lib/elm_web.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib/elm_web.c b/src/lib/elm_web.c
index 14d315d..318d11e 100644
--- a/src/lib/elm_web.c
+++ b/src/lib/elm_web.c
@@ -198,7 +198,8 @@ EOLIAN static Eina_Bool
 _elm_web_elm_widget_event(Eo *obj, Elm_Web_Data *sd, Evas_Object *src, 
Evas_Callback_Type type, void *event_info)
 {
Evas_Event_Key_Down *ev = event_info;
-   (void) src;
+   (void)sd;
+   (void)src;
 
 #ifdef HAVE_ELEMENTARY_WEB
if (type != EVAS_CALLBACK_KEY_DOWN) return EINA_FALSE;
@@ -211,7 +212,6 @@ _elm_web_elm_widget_event(Eo *obj, Elm_Web_Data *sd, 
Evas_Object *src, Evas_Call
return EINA_TRUE;
 #else
(void)obj;
-   (void)sd;
(void)type;
(void)ev;
 #endif

-- 




Re: [E-devel] [EGIT] [admin/devs] master 01/01: welcome new developer eunue

2014-04-22 Thread ryuan Choi
Congratulations.

Better EFL, more ice cream. :)
2014. 4. 23. 오전 11:54에 ChunEon Park her...@naver.com님이 작성:

 icecream?!
 yay!

 
 -Regards, Hermet-

 -Original Message-
 From: Kim Shinwookimcinoo@gmail.com
 To: Enlightenment developer list
 enlightenment-devel@lists.sourceforge.net;
 Cc:
 Sent: 2014-04-23 (수) 00:22:53
 Subject: Re: [E-devel] [EGIT] [admin/devs] master 01/01: welcome new
 developer eunue

 [cheers and applause]

 It's time to go for coffee and ice cream! Yummy! :]

 Sincerely,
 Shinwoo Kim.


 On Tue, Apr 22, 2014 at 10:41 PM, Daniel Juyung Seo seojuyung2@gmail.com
 wrote:

  On Tue, Apr 22, 2014 at 9:08 PM, Tom Hacohen tom.hacohen@samsung.com
  wrote:
 
   On 21/04/14 12:35, Daniel Juyung Seo wrote:
Congratulations!!! Jaeun!
Great Power comes with great responsibility.
  
   Haha you got it the other way around. The responsibility comes with the
   power, not the power with the responsibility. :P
  
   Go home, and read some spiderman!
  
 
  Hahahaha yes I need to go home and watch spiderman again.
 
  Daniel Juyung Seo (SeoZ)
 
 
  
   --
   Tom.
  
  
  
 
 --
   Start Your Social Network Today - Download eXo Platform
   Build your Enterprise Intranet with eXo Platform Software
   Java Based Open Source Intranet - Social, Extensible, Cloud Ready
   Get Started Now And Turn Your Intranet Into A Collaboration Platform
   http://p.sf.net/sfu/ExoPlatform
   ___
   enlightenment-devel mailing list
   enlightenment-devel@lists.sourceforge.net
   https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
  
 
 
 --
  Start Your Social Network Today - Download eXo Platform
  Build your Enterprise Intranet with eXo Platform Software
  Java Based Open Source Intranet - Social, Extensible, Cloud Ready
  Get Started Now And Turn Your Intranet Into A Collaboration Platform
  http://p.sf.net/sfu/ExoPlatform
  ___
  enlightenment-devel mailing list
  enlightenment-devel@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
 

 --
 Start Your Social Network Today - Download eXo Platform
 Build your Enterprise Intranet with eXo Platform Software
 Java Based Open Source Intranet - Social, Extensible, Cloud Ready
 Get Started Now And Turn Your Intranet Into A Collaboration Platform
 http://p.sf.net/sfu/ExoPlatform
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


 --
 Start Your Social Network Today - Download eXo Platform
 Build your Enterprise Intranet with eXo Platform Software
 Java Based Open Source Intranet - Social, Extensible, Cloud Ready
 Get Started Now And Turn Your Intranet Into A Collaboration Platform
 http://p.sf.net/sfu/ExoPlatform
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Start Your Social Network Today - Download eXo Platform
Build your Enterprise Intranet with eXo Platform Software
Java Based Open Source Intranet - Social, Extensible, Cloud Ready
Get Started Now And Turn Your Intranet Into A Collaboration Platform
http://p.sf.net/sfu/ExoPlatform
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: web2: Implemented alert/confirm/prompt

2014-04-21 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 1be3950fd336b3624ff9c4d7e46f33cec8363a32
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Tue Apr 22 01:42:53 2014 +0900

web2: Implemented alert/confirm/prompt

Added test cases for alert/confirm/prompt
---
 src/bin/test_web.c |  32 ++
 src/lib/elm_web2.c | 296 -
 2 files changed, 280 insertions(+), 48 deletions(-)

diff --git a/src/bin/test_web.c b/src/bin/test_web.c
index 370adf7..5cc4b85 100644
--- a/src/bin/test_web.c
+++ b/src/bin/test_web.c
@@ -363,6 +363,36 @@ _useragent_cb(void *data, Evas_Object *obj EINA_UNUSED, 
void *event_info)
 }
 
 static void
+_dialog_test_cb(void *data, Evas_Object *obj, void *event_info)
+{
+   Web_Test *wt = data;
+   const char *selected = elm_object_item_text_get(event_info);
+   const char dialog_html[] = !doctype htmlbody
+   script
+   var confirm_test = function() {
+if (window.confirm('confirm') == true) {
+  document.getElementById('r').innerHTML = 'You pressed OK';
+} else {
+  document.getElementById('r').innerHTML = 'You pressed Cancel';
+}
+   };
+   var prompt_test = function() {
+document.getElementById('r').innerHTML = window.prompt('Enter your 
name', 'EFL');
+   };
+   /script
+   Result: div id='r' /div
+   input type='button' value='alert' onclick=\window.alert('alert 
pressed');\
+   input type='button' value='confirm' onclick=\confirm_test();\
+   input type='button' value='prompt' onclick=\prompt_test();\
+   /body;
+
+   printf(selected test : %s\n, selected);
+   elm_object_text_set(obj, selected);
+
+   elm_web_html_string_load(wt-web, dialog_html, NULL, NULL);
+}
+
+static void
 _select_tag_test_cb(void *data, Evas_Object *obj, void *event_info)
 {
Web_Test *wt = data;
@@ -629,6 +659,8 @@ test_web_ui(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_in
elm_hoversel_hover_parent_set(hoversel, win);
elm_object_text_set(hoversel, Test cases);
 
+   elm_hoversel_item_add(hoversel, alert/confirm/prompt, NULL, ELM_ICON_NONE,
+ _dialog_test_cb, wt);
elm_hoversel_item_add(hoversel, select tag, NULL, ELM_ICON_NONE,
  _select_tag_test_cb, wt);
elm_hoversel_item_add(hoversel, new window, NULL, ELM_ICON_NONE,
diff --git a/src/lib/elm_web2.c b/src/lib/elm_web2.c
index 479dc2e..1f51f47 100644
--- a/src/lib/elm_web2.c
+++ b/src/lib/elm_web2.c
@@ -272,6 +272,238 @@ _view_smart_fullscreen_exit(Ewk_View_Smart_Data *sd)
return EINA_TRUE;
 }
 
+static void
+_bt_close(void *data,
+  Evas_Object *obj,
+  void *event_info EINA_UNUSED)
+{
+   Dialog_Data *d = data;
+
+   if (d-type == DIALOG_ALERT) goto end;
+
+   *d-response = (obj == d-bt_ok);
+   if (d-type == DIALOG_CONFIRM) goto end;
+
+   if (d-type == DIALOG_PROMPT)
+ *d-entry_value = strdup(elm_entry_entry_get(d-entry));
+
+end:
+   evas_object_del(d-dialog);
+}
+
+static Dialog_Data *
+_dialog_new(Evas_Object *web, Eina_Bool inwin_mode)
+{
+   Dialog_Data *d;
+
+   d = calloc(1, sizeof(Dialog_Data));
+   if (!d) return NULL;
+
+   if (!web || inwin_mode)
+ {
+Evas_Object *bg;
+
+d-dialog = elm_win_add(NULL, elm-web-popup, ELM_WIN_DIALOG_BASIC);
+evas_object_smart_callback_add
+  (d-dialog, delete,request, _bt_close, d);
+
+bg = elm_bg_add(d-dialog);
+evas_object_size_hint_weight_set
+  (bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+elm_win_resize_object_add(d-dialog, bg);
+evas_object_show(bg);
+
+d-box = elm_box_add(d-dialog);
+evas_object_size_hint_weight_set
+  (d-box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+elm_win_resize_object_add(d-dialog, d-box);
+evas_object_show(d-box);
+ }
+   else
+ {
+Evas_Object *win = elm_widget_top_get(web);
+
+d-dialog = elm_win_inwin_add(win);
+elm_object_style_set(d-dialog, minimal);
+evas_object_size_hint_weight_set
+  (d-dialog, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+
+d-box = elm_box_add(win);
+evas_object_size_hint_weight_set
+  (d-box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+elm_win_inwin_content_set(d-dialog, d-box);
+evas_object_show(d-box);
+ }
+
+   return d;
+}
+
+static void
+_dialog_ok_cancel_buttons_add(Dialog_Data *dialog_data)
+{
+   Evas_Object *bx, *bt;
+   bx = elm_box_add(dialog_data-box);
+   elm_box_horizontal_set(bx, EINA_TRUE);
+   elm_box_pack_end(dialog_data-box, bx);
+   evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   evas_object_size_hint_align_set(bx, EVAS_HINT_FILL, EVAS_HINT_FILL);
+   evas_object_show(bx);
+
+   dialog_data-bt_cancel = bt = elm_button_add(bx);
+   elm_object_text_set(bt, Cancel

[EGIT] [core/elementary] master 01/02: elm_web2: Implement several interfaces

2014-04-16 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 19240f91b25ead9cda063a5b89627c13e2f25fc2
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Wed Apr 16 01:55:22 2014 +0900

elm_web2: Implement several interfaces

- elm_web_bg_color_{get|set}
- elm_web_zoom_{get|set}
---
 src/lib/elm_web2.c | 47 ---
 1 file changed, 12 insertions(+), 35 deletions(-)

diff --git a/src/lib/elm_web2.c b/src/lib/elm_web2.c
index 7630c8b..dc5379e 100644
--- a/src/lib/elm_web2.c
+++ b/src/lib/elm_web2.c
@@ -464,19 +464,9 @@ _elm_web_title_get(Eo *obj, Elm_Web_Data *_pd EINA_UNUSED)
 EOLIAN static void
 _elm_web_bg_color_set(Eo *obj, Elm_Web_Data *_pd EINA_UNUSED, int r, int g, 
int b, int a)
 {
-#ifdef HAVE_ELEMENTARY_WEB
-   (void)obj;
-   (void)r;
-   (void)g;
-   (void)b;
-   (void)a;
-#else
-   (void)obj;
-   (void)r;
-   (void)g;
-   (void)b;
-   (void)a;
-#endif
+   ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
+
+   ewk_view_bg_color_set(wd-resize_obj, r, g, b, a);
 }
 
 EOLIAN static void
@@ -486,11 +476,10 @@ _elm_web_bg_color_get(Eo *obj, Elm_Web_Data *_pd 
EINA_UNUSED, int *r, int *g, in
if (g) *g = 0;
if (b) *b = 0;
if (a) *a = 0;
-#ifdef HAVE_ELEMENTARY_WEB
-   (void)obj;
-#else
-   (void)obj;
-#endif
+
+   ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
+
+   return ewk_view_bg_color_get(wd-resize_obj, r, g, b, a);
 }
 
 EOLIAN static const char*
@@ -813,29 +802,17 @@ _elm_web_history_enabled_set(Eo *obj, Elm_Web_Data *_pd 
EINA_UNUSED, Eina_Bool e
 EOLIAN static void
 _elm_web_zoom_set(Eo *obj, Elm_Web_Data *_pd EINA_UNUSED, double zoom)
 {
-#ifdef HAVE_ELEMENTARY_WEB
-   (void)obj;
-   (void)_pd;
-   (void)zoom;
-#else
-   (void)obj;
-   (void)_pd;
-   (void)zoom;
-#endif
+   ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
+
+   ewk_view_page_zoom_set(wd-resize_obj, zoom);
 }
 
 EOLIAN static double
 _elm_web_zoom_get(Eo *obj EINA_UNUSED, Elm_Web_Data *_pd EINA_UNUSED)
 {
-   double ret;
-   ret = -1.0;
-#ifdef HAVE_ELEMENTARY_WEB
-   (void)_pd;
-#else
-   (void)_pd;
-#endif
+   ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, -1);
 
-   return ret;
+   return ewk_view_page_zoom_get(wd-resize_obj);
 }
 
 EOLIAN static void

-- 




[EGIT] [core/elementary] master 02/02: elm_web2: Implement select popup interfaces

2014-04-16 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 531102934db71e6ba8904e0a2aa24a6fb45be268
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Thu Apr 17 00:32:18 2014 +0900

elm_web2: Implement select popup interfaces
---
 src/lib/elm_web2.c | 133 +
 1 file changed, 133 insertions(+)

diff --git a/src/lib/elm_web2.c b/src/lib/elm_web2.c
index dc5379e..479dc2e 100644
--- a/src/lib/elm_web2.c
+++ b/src/lib/elm_web2.c
@@ -76,6 +76,137 @@ _view_smart_window_close(Ewk_View_Smart_Data *sd)
 }
 
 static void
+_popup_item_selected(void *data,
+ Evas_Object *obj,
+ void *event_info EINA_UNUSED)
+{
+   Elm_Object_Item *list_it = elm_list_selected_item_get(obj);
+   const Eina_List *itr, *list = elm_list_items_get(obj);
+   Ewk_Popup_Menu *menu = data;
+   int i = 0;
+   void *d;
+
+   EINA_LIST_FOREACH(list, itr, d)
+ {
+if (d == list_it)
+  break;
+
+i++;
+ }
+
+   ewk_popup_menu_selected_index_set(menu, i);
+   ewk_popup_menu_close(menu);
+
+   evas_object_del(evas_object_data_get(obj, _notify));
+}
+
+static void
+_popup_dismiss_cb(void *data,
+  Evas_Object *obj,
+  void *event_info EINA_UNUSED)
+{
+   ewk_popup_menu_close(data);
+   evas_object_del(obj);
+}
+
+static Eina_Bool
+_view_smart_popup_menu_show(Ewk_View_Smart_Data *sd,
+Eina_Rectangle r,
+Ewk_Text_Direction dir EINA_UNUSED,
+double scale EINA_UNUSED,
+Ewk_Popup_Menu *menu)
+{
+   Evas_Object *notify, *list, *grid, *win;
+   const Eina_List* items = ewk_popup_menu_items_get(menu);
+   Evas_Object *obj = evas_object_smart_parent_get(sd-self);
+   int h, ww, wh;
+
+   Elm_Object_Item *lit;
+   Eina_Bool disabled;
+   const char *txt;
+   Ewk_Popup_Menu_Item *it;
+   const Eina_List *itr;
+
+   Evas_Object *popup = evas_object_data_get(sd-self, _select_popup);
+   if (popup) evas_object_del(popup);
+
+   win = elm_widget_top_get(obj);
+
+   notify = elm_notify_add(win);
+   elm_notify_allow_events_set(notify, EINA_FALSE);
+   elm_notify_align_set(notify, 0.5, 1.0);
+
+   list = elm_list_add(notify);
+   evas_object_data_set(list, _notify, notify);
+   elm_list_select_mode_set(list, ELM_OBJECT_SELECT_MODE_ALWAYS);
+   elm_scroller_bounce_set(list, EINA_FALSE, EINA_FALSE);
+   elm_list_mode_set(list, ELM_LIST_EXPAND);
+   evas_object_size_hint_weight_set(list, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   evas_object_size_hint_align_set(list, EVAS_HINT_FILL, EVAS_HINT_FILL);
+   evas_object_show(list);
+
+   EINA_LIST_FOREACH(items, itr, it)
+ {
+switch (ewk_popup_menu_item_type_get(it))
+  {
+   case EWK_POPUP_MENU_SEPARATOR:
+ // TODO:
+ break;
+   case EWK_POPUP_MENU_ITEM:
+ txt = ewk_popup_menu_item_text_get(it);
+ if (ewk_popup_menu_item_is_label_get(it))
+   {
+  lit = elm_list_item_append(list, txt, NULL, NULL, NULL, 
NULL);
+  disabled = EINA_TRUE;
+   }
+ else
+   {
+  lit = elm_list_item_append(list, txt, NULL, NULL, 
_popup_item_selected, menu);
+  disabled = !ewk_popup_menu_item_enabled_get(it);
+   }
+
+ elm_object_item_disabled_set(lit, disabled);
+ break;
+   default:
+ break;
+  }
+ }
+   elm_list_go(list);
+
+   grid = elm_grid_add(win);
+   elm_grid_size_set(grid, 1, 1);
+   elm_grid_pack(grid, list, 0, 0, 1, 1);
+   evas_object_geometry_get(win, NULL, NULL, ww, wh);
+
+   //FIXME: it should be the real height of items in the list.
+   h = r.h * eina_list_count(items);
+   evas_object_size_hint_min_set(grid, ww, h  wh / 2 ? h : wh / 2);
+   elm_object_content_set(notify, grid);
+   evas_object_show(grid);
+
+   evas_object_show(notify);
+
+   evas_object_data_set(sd-self, _select_popup, notify);
+
+   evas_object_smart_callback_add
+ (notify, block,clicked, _popup_dismiss_cb, menu);
+
+   return EINA_TRUE;
+}
+
+static Eina_Bool
+_view_smart_popup_menu_hide(Ewk_View_Smart_Data *sd)
+{
+   Evas_Object *popup = evas_object_data_get(sd-self, _select_popup);
+   if (!popup) return EINA_FALSE;
+
+   evas_object_del(popup);
+   evas_object_data_del(sd-self, _select_popup);
+
+   return EINA_TRUE;
+}
+
+static void
 _fullscreen_accept(void *data, Evas_Object *obj EINA_UNUSED, void *ev 
EINA_UNUSED)
 {
Evas_Object *ewk = data;
@@ -173,6 +304,8 @@ _view_add(Evas_Object *parent)
 api.sc.del = _view_smart_del;
 api.window_create = _view_smart_window_create;
 api.window_close = _view_smart_window_close;
+api.popup_menu_show = _view_smart_popup_menu_show;
+api.popup_menu_hide

[EGIT] [core/elementary] master 01/01: elm_web2: Fix build break with latest EFL

2014-04-14 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit d60da4e70218724c0c3f7da8b48c39966a49b527
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Mon Apr 14 14:00:33 2014 +0900

elm_web2: Fix build break with latest EFL

Followes Eo2 changes.
---
 src/lib/elm_web2.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib/elm_web2.c b/src/lib/elm_web2.c
index a70b9f2..7630c8b 100644
--- a/src/lib/elm_web2.c
+++ b/src/lib/elm_web2.c
@@ -308,7 +308,7 @@ _elm_web_eo_base_constructor(Eo *obj, Elm_Web_Data *sd)
eo_do_super(obj, MY_CLASS, eo_constructor());
eo_do(obj,
  evas_obj_type_set(MY_CLASS_NAME_LEGACY),
- evas_obj_smart_callbacks_descriptions_set(_elm_web_smart_callbacks, 
NULL));
+ evas_obj_smart_callbacks_descriptions_set(_elm_web_smart_callbacks));
 }
 
 EOLIAN static Evas_Object*
@@ -427,7 +427,7 @@ elm_web_uri_set(Evas_Object *obj,
 {
ELM_WEB_CHECK(obj) EINA_FALSE;
Eina_Bool ret = EINA_FALSE;
-   eo_do(obj, elm_obj_web_url_set(url, ret));
+   eo_do(obj, ret = elm_obj_web_url_set(url));
return ret;
 }
 

-- 




[EGIT] [core/elementary] master 01/01: elm_web2: Fix build break.

2014-04-11 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit ff9d82c091a3480feb53c87f1df5631ce8c7377b
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Sat Apr 12 05:20:23 2014 +0900

elm_web2: Fix build break.

There are some missing implementations whith elm_web implements
but elm_web2 didn't yet.

This patch just added dummy implementations to fix build break.
---
 src/lib/elm_web2.c | 38 ++
 1 file changed, 38 insertions(+)

diff --git a/src/lib/elm_web2.c b/src/lib/elm_web2.c
index 2d9305a..a70b9f2 100644
--- a/src/lib/elm_web2.c
+++ b/src/lib/elm_web2.c
@@ -228,6 +228,44 @@ elm_need_web(void)
return EINA_TRUE;
 }
 
+EOLIAN static Eina_Bool
+_elm_web_elm_widget_theme_apply(Eo *obj, Elm_Web_Data *sd EINA_UNUSED)
+{
+   (void)obj;
+   return EINA_TRUE;
+}
+
+EOLIAN static Eina_Bool
+_elm_web_elm_widget_on_focus(Eo *obj, Elm_Web_Data *sd)
+{
+   (void)obj;
+   (void)sd;
+   return EINA_TRUE;
+}
+
+EOLIAN static Eina_Bool
+_elm_web_elm_widget_event(Eo *obj, Elm_Web_Data *sd, Evas_Object *src, 
Evas_Callback_Type type, void *event_info)
+{
+   (void)obj;
+   (void)sd;
+   (void)src;
+   (void)type;
+   (void)event_info;
+   return EINA_FALSE;
+}
+
+EOLIAN static Eina_Bool
+_elm_web_tab_propagate_get(Eo *obj EINA_UNUSED, Elm_Web_Data *sd)
+{
+   return sd-tab_propagate;
+}
+
+EOLIAN static void
+_elm_web_tab_propagate_set(Eo *obj EINA_UNUSED, Elm_Web_Data *sd, Eina_Bool 
propagate)
+{
+   sd-tab_propagate = propagate;
+}
+
 EOLIAN static void
 _elm_web_evas_smart_add(Eo *obj, Elm_Web_Data *_pd EINA_UNUSED)
 {

-- 




[EGIT] [core/elementary] master 01/01: fleselector_button: Implement some missing interfaces of Elm_Interface_Fileselector

2014-04-09 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit f2ae512868f19314e20c8d6d0ccda187fc5d116a
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Thu Apr 10 00:49:10 2014 +0900

fleselector_button: Implement some missing interfaces of 
Elm_Interface_Fileselector

Implemented below.
- Elm_Interface_Fileselector::selected_paths::get;
- Elm_Interface_Fileselector::thumbnail_size;
- Elm_Interface_Fileselector::selected;
- Elm_Interface_Fileselector::hidden_visible;
- Elm_Interface_Fileselector::sort_method;
- Elm_Interface_Fileselector::multi_select;
- Elm_Interface_Fileselector::mode;
---
 src/lib/elc_fileselector_button.c| 119 +++
 src/lib/elc_fileselector_button.eo   |  11 ++-
 src/lib/elm_widget_fileselector_button.h |  14 ++--
 3 files changed, 138 insertions(+), 6 deletions(-)

diff --git a/src/lib/elc_fileselector_button.c 
b/src/lib/elc_fileselector_button.c
index ce04f31..6bc3c2f 100644
--- a/src/lib/elc_fileselector_button.c
+++ b/src/lib/elc_fileselector_button.c
@@ -12,6 +12,9 @@
 #define MY_CLASS_NAME Elm_Fileselector_Button
 #define MY_CLASS_NAME_LEGACY elm_fileselector_button
 
+/* FIXME: need a way to find a gap between the size of item and thumbnail */
+#define GENGRID_PADDING 16
+
 #define DEFAULT_WINDOW_TITLE Select a file
 
 #define ELM_PRIV_FILESELECTOR_BUTTON_SIGNALS(cmd) \
@@ -188,6 +191,7 @@ _elc_fileselector_button_evas_smart_del(Eo *obj, 
Elc_Fileselector_Button_Data *s
 {
eina_stringshare_del(sd-window_title);
eina_stringshare_del(sd-fsd.path);
+   eina_stringshare_del(sd-fsd.selection);
evas_object_del(sd-fsw);
 
eo_do_super(obj, MY_CLASS, evas_obj_smart_del());
@@ -374,6 +378,121 @@ 
_elc_fileselector_button_elm_interface_fileselector_is_save_get(Eo *obj EINA_UNU
 }
 
 EOLIAN static void
+_elc_fileselector_button_elm_interface_fileselector_mode_set(Eo *obj 
EINA_UNUSED, Elc_Fileselector_Button_Data *sd, Elm_Fileselector_Mode mode)
+{
+   sd-fsd.mode = mode;
+
+   if (sd-fs) elm_fileselector_mode_set(sd-fs, mode);
+}
+
+EOLIAN static Elm_Fileselector_Mode
+_elc_fileselector_button_elm_interface_fileselector_mode_get(Eo *obj 
EINA_UNUSED, Elc_Fileselector_Button_Data *sd)
+{
+   return sd-fsd.mode;
+}
+
+EOLIAN static void
+_elc_fileselector_button_elm_interface_fileselector_sort_method_set(Eo *obj 
EINA_UNUSED, Elc_Fileselector_Button_Data *sd, Elm_Fileselector_Sort sort)
+{
+   sd-fsd.sort_type = sort;
+
+   if (sd-fs) elm_fileselector_sort_method_set(sd-fs, sort);
+}
+
+EOLIAN static Elm_Fileselector_Sort
+_elc_fileselector_button_elm_interface_fileselector_sort_method_get(Eo *obj 
EINA_UNUSED, Elc_Fileselector_Button_Data *sd)
+{
+   return sd-fsd.sort_type;
+}
+
+EOLIAN static void
+_elc_fileselector_button_elm_interface_fileselector_multi_select_set(Eo *obj 
EINA_UNUSED, Elc_Fileselector_Button_Data *sd, Eina_Bool value)
+{
+   sd-fsd.multi = value;
+
+   if (sd-fs) elm_fileselector_multi_select_set(sd-fs, sd-fsd.multi);
+}
+
+EOLIAN static Eina_Bool
+_elc_fileselector_button_elm_interface_fileselector_multi_select_get(Eo *obj 
EINA_UNUSED, Elc_Fileselector_Button_Data *sd)
+{
+   return sd-fsd.multi;
+}
+
+EOLIAN static const Eina_List*
+_elc_fileselector_button_elm_interface_fileselector_selected_paths_get(Eo *obj 
EINA_UNUSED, Elc_Fileselector_Button_Data *sd)
+{
+   if (sd-fs) return elm_fileselector_selected_paths_get(sd-fs);
+
+   return NULL;
+}
+
+EOLIAN static const char*
+_elc_fileselector_button_elm_interface_fileselector_selected_get(Eo *obj 
EINA_UNUSED, Elc_Fileselector_Button_Data *sd)
+{
+   if (sd-fs) return elm_fileselector_selected_get(sd-fs);
+
+   return sd-fsd.selection;
+}
+
+EOLIAN static Eina_Bool
+_elc_fileselector_button_elm_interface_fileselector_selected_set(Eo *obj 
EINA_UNUSED, Elc_Fileselector_Button_Data *sd, const char *_path)
+{
+   Eina_Bool ret = EINA_TRUE;
+
+   if (sd-fs) ret = elm_fileselector_selected_set(sd-fs, _path);
+   else
+ {
+char *path = ecore_file_realpath(_path);
+if (!ecore_file_is_dir(path)  !ecore_file_exists(path))
+  {
+ free(path);
+ return EINA_FALSE;
+  }
+ }
+
+   eina_stringshare_replace(sd-fsd.selection, _path);
+
+   return ret;
+}
+
+EOLIAN static void
+_elc_fileselector_button_elm_interface_fileselector_thumbnail_size_set(Eo *obj 
EINA_UNUSED, Elc_Fileselector_Button_Data *sd, Evas_Coord w, Evas_Coord h)
+{
+   if (sd-fs)
+ {
+elm_fileselector_thumbnail_size_set(sd-fs, w, h);
+elm_fileselector_thumbnail_size_get(sd-fs, w, h);
+ }
+   else if (!w || !h)
+ w = h = elm_config_finger_size_get() * 2 - GENGRID_PADDING;
+
+   sd-fsd.thumbnail_size.w = w;
+   sd-fsd.thumbnail_size.h = h;
+}
+
+EOLIAN static void
+_elc_fileselector_button_elm_interface_fileselector_thumbnail_size_get(Eo *obj 
EINA_UNUSED, Elc_Fileselector_Button_Data *sd

[EGIT] [core/efl] master 01/01: configure: Fix the possible build break after 83af91c8b

2014-04-06 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 89d6e0b142af61b7501ed7f894017592da6ece1b
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Mon Apr 7 10:21:19 2014 +0900

configure: Fix the possible build break after 83af91c8b

Added eet into internal dependencies for ecore_evas_connect, ethumb, 
ethumb_client

I got below errors for ecore_evas_connect, ethumb, ethumb_client

lib/evas/.libs/libevas.so: undefined reference to 
`eet_data_image_colorspace_get'
lib/evas/.libs/libevas.so: undefined reference to 
`eet_data_image_read_to_cspace_surface_cipher'
collect2: error: ld returned 1 exit status
---
 configure.ac | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/configure.ac b/configure.ac
index 409e48e..01d4ee9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3459,6 +3459,7 @@ EFL_PLATFORM_DEPEND([ECORE_EVAS], [evil])
 EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [ecore-input-evas])
 EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [ecore-input])
 EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [eet])
 EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [evas])
 EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [eo])
 EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [eina])
@@ -3975,6 +3976,7 @@ EFL_PLATFORM_DEPEND([ETHUMB], [evil])
 EFL_PLATFORM_DEPEND([EINA], [evil])
 
 EFL_INTERNAL_DEPEND_PKG([ETHUMB], [eina])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB], [eet])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB], [evas])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB], [eo])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB], [ecore])
@@ -4019,6 +4021,7 @@ EFL_PLATFORM_DEPEND([ETHUMB_CLIENT], [evil])
 ### Checks for libraries
 EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [eina])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [eo])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [eet])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [ecore])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [edje])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [eldbus])

-- 




[EGIT] [core/efl] efl-1.9 01/01: edje_cc: Fix the crash when compiled wrong edc file containing empty part

2014-03-31 Thread Ryuan Choi
ryuan pushed a commit to branch efl-1.9.

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

commit c2088d83260ccd6b24001aa34aa233f46c621f30
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Sat Mar 29 12:52:16 2014 +0900

edje_cc: Fix the crash when compiled wrong edc file containing empty part

It's regression since cff3ec04b.

@fix (master : c2077f48539257dfb06df13a7758eacc7318b5ca)
---
 src/bin/edje/edje_cc_out.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/bin/edje/edje_cc_out.c b/src/bin/edje/edje_cc_out.c
index e30b596..88ecd97 100644
--- a/src/bin/edje/edje_cc_out.c
+++ b/src/bin/edje/edje_cc_out.c
@@ -2248,6 +2248,7 @@ _data_image_id_update(Eina_List *images_unused_list)
  if (part-type == EDJE_PART_TYPE_IMAGE)
{
   part_desc_image = (Edje_Part_Description_Image 
*)part-default_desc;
+  if (!part_desc_image) continue;
   PART_DESC_IMAGE_ID_UPDATE
   for (j = 0; j  part-other.desc_count; j++)
  {

-- 




Re: [E-devel] [EGIT] [core/efl] master 01/01: edje_cc: Fix the crash when compiled wrong edc file containing empty part

2014-03-31 Thread ryuan Choi
Yes, done.

I think that it could be backported but I fogot it.

ps Should I backport it to efl-1.8 also ?

Best Regards,
Ryuan Choi



2014-03-31 17:27 GMT+09:00 Stefan Schmidt ste...@datenfreihafen.org:

 Hello.

 On Fri, 2014-03-28 at 21:01, Ryuan Choi wrote:
  ryuan pushed a commit to branch master.
 
 
 http://git.enlightenment.org/core/efl.git/commit/?id=c2077f48539257dfb06df13a7758eacc7318b5ca
 
  commit c2077f48539257dfb06df13a7758eacc7318b5ca
  Author: Ryuan Choi ryuan.c...@gmail.com
  Date:   Sat Mar 29 12:52:16 2014 +0900
 
  edje_cc: Fix the crash when compiled wrong edc file containing empty
 part
 
  It's regression since cff3ec04b.
 
  @fix


 Ryuan, if you want this to get backported to efl-1.9 you have to take
 care of ot. You marked it as a fix thus I wondered if you want to
 backport it.

 regards
 Stefan Schmidt


 --
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/efl] master 01/01: edje_cc: Fix the crash when compiled wrong edc file containing empty part

2014-03-28 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit c2077f48539257dfb06df13a7758eacc7318b5ca
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Sat Mar 29 12:52:16 2014 +0900

edje_cc: Fix the crash when compiled wrong edc file containing empty part

It's regression since cff3ec04b.

@fix
---
 src/bin/edje/edje_cc_out.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/bin/edje/edje_cc_out.c b/src/bin/edje/edje_cc_out.c
index 4b303a5..b89dd45 100644
--- a/src/bin/edje/edje_cc_out.c
+++ b/src/bin/edje/edje_cc_out.c
@@ -2534,6 +2534,7 @@ _data_image_id_update(Eina_List *images_unused_list)
  if (part-type == EDJE_PART_TYPE_IMAGE)
{
   part_desc_image = (Edje_Part_Description_Image 
*)part-default_desc;
+  if (!part_desc_image) continue;
   PART_DESC_IMAGE_ID_UPDATE
   for (j = 0; j  part-other.desc_count; j++)
  {

-- 




[EGIT] [core/elementary] master 01/01: test_web: Improve fullscreen test case.

2014-03-20 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 7bc24d0b0ce82bf258fcfae75a8b952cf5fae531
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Thu Mar 20 23:28:53 2014 +0900

test_web: Improve fullscreen test case.

Improved fullscreen api tests not to show other widgets when web page 
requires fullscreen.
---
 src/bin/test_web.c | 22 ++
 1 file changed, 22 insertions(+)

diff --git a/src/bin/test_web.c b/src/bin/test_web.c
index d9e7cc0..370adf7 100644
--- a/src/bin/test_web.c
+++ b/src/bin/test_web.c
@@ -9,6 +9,8 @@ typedef struct
Evas_Object *btn_back;
Evas_Object *btn_fwd;
Evas_Object *url_entry;
+   Evas_Object *bx;
+   Evas_Object *hoversel;
Eina_List *sub_wins;
Eina_Bool js_hooks : 1;
 } Web_Test;
@@ -313,6 +315,22 @@ _bring_in_region_cb(void *data, Evas_Object *obj 
EINA_UNUSED, void *event_info E
elm_web_region_bring_in(wt-web, 50, 0, 1, 1);
 }
 
+static void
+_on_fullscreen_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
+{
+   Web_Test *wt = data;
+   elm_box_unpack(wt-bx, wt-hoversel);
+   evas_object_hide(wt-hoversel);
+}
+
+static void
+_on_unfullscreen_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
+{
+   Web_Test *wt = data;
+   elm_box_pack_start(wt-bx, wt-hoversel);
+   evas_object_show(wt-hoversel);
+}
+
 typedef struct
 {
const char* name;
@@ -598,6 +616,8 @@ test_web_ui(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_in
wt = calloc(1, sizeof(*wt));
win = elm_win_util_standard_add(web, Web);
 
+   evas_object_smart_callback_add(win, fullscreen, _on_fullscreen_cb, wt);
+   evas_object_smart_callback_add(win, unfullscreen, _on_unfullscreen_cb, 
wt);
elm_win_autodel_set(win, EINA_TRUE);
 
bx = elm_box_add(win);
@@ -628,6 +648,8 @@ test_web_ui(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_in
 
evas_object_event_callback_add(web, EVAS_CALLBACK_DEL, _main_web_del_cb, 
wt);
wt-web = web;
+   wt-bx = bx;
+   wt-hoversel = hoversel;
 
 
elm_web_html_string_load(wt-web,

-- 




[EGIT] [core/elementary] master 01/01: elm_web: Moved legacy APIs from elm_web_common.h to elm_web_legacy.h

2014-03-17 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 4c0995a4f0b628687577d8cce30fa15aae1e2901
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Tue Mar 18 02:40:31 2014 +0900

elm_web: Moved legacy APIs from elm_web_common.h to elm_web_legacy.h

elm_web_add and elm_web_zoom_mode_{get|set} are legacy APIs so they should 
be
in elm_web_legacy.h
---
 src/lib/elm_web_common.h | 46 --
 src/lib/elm_web_legacy.h | 46 ++
 2 files changed, 46 insertions(+), 46 deletions(-)

diff --git a/src/lib/elm_web_common.h b/src/lib/elm_web_common.h
index 36e757c..0436bb4 100644
--- a/src/lib/elm_web_common.h
+++ b/src/lib/elm_web_common.h
@@ -277,52 +277,6 @@ typedef Evas_Object *(*Elm_Web_Dialog_File_Selector)(void 
*data, Evas_Object *ob
 typedef void (*Elm_Web_Console_Message)(void *data, Evas_Object *obj, const 
char *message, unsigned int line_number, const char *source_id);
 
 /**
- * Add a new web object to the parent.
- *
- * @param parent The parent object.
- * @return The new object or @c NULL if it cannot be created.
- *
- * @see elm_web_uri_set()
- * @see elm_web_webkit_view_get()
- *
- * @ingroup Web
- */
-EAPI Evas_Object  *elm_web_add(Evas_Object *parent);
-
-/**
- * Sets the zoom mode to use
- *
- * The modes can be any of those defined in ::Elm_Web_Zoom_Mode, except
- * ::ELM_WEB_ZOOM_MODE_LAST. The default is ::ELM_WEB_ZOOM_MODE_MANUAL.
- *
- * ::ELM_WEB_ZOOM_MODE_MANUAL means the zoom level will be controlled
- * with the elm_web_zoom_set() function.
- * ::ELM_WEB_ZOOM_MODE_AUTO_FIT will calculate the needed zoom level to
- * make sure the entirety of the web object's contents are shown.
- * ::ELM_WEB_ZOOM_MODE_AUTO_FILL will calculate the needed zoom level to
- * fit the contents in the web object's size, without leaving any space
- * unused.
- *
- * @param obj The web object
- * @param mode The mode to set
- *
- * @ingroup Web
- */
-EAPI void  elm_web_zoom_mode_set(Evas_Object *obj, 
Elm_Web_Zoom_Mode mode);
-
-/**
- * Get the currently set zoom mode
- *
- * @param obj The web object
- *
- * @return The current zoom mode set for the object,
- * or ::ELM_WEB_ZOOM_MODE_LAST on error
- *
- * @ingroup Web
- */
-EAPI Elm_Web_Zoom_Mode elm_web_zoom_mode_get(const Evas_Object *obj);
-
-/**
  * Get boolean properties from Elm_Web_Window_Features
  * (such as statusbar, menubar, etc) that are on a window.
  *
diff --git a/src/lib/elm_web_legacy.h b/src/lib/elm_web_legacy.h
index 533c06b..ee29824 100644
--- a/src/lib/elm_web_legacy.h
+++ b/src/lib/elm_web_legacy.h
@@ -1,4 +1,17 @@
 /**
+ * Add a new web object to the parent.
+ *
+ * @param parent The parent object.
+ * @return The new object or @c NULL if it cannot be created.
+ *
+ * @see elm_web_url_set()
+ * @see elm_web_webkit_view_get()
+ *
+ * @ingroup Web
+ */
+EAPI Evas_Object  *elm_web_add(Evas_Object *parent);
+
+/**
  * Get internal ewk_view object from web object.
  *
  * Elementary may not provide some low level features of EWebKit,
@@ -597,6 +610,39 @@ EAPI void  
elm_web_history_enabled_set(Evas_Object *obj, Eina_Bool e
 EAPI void  elm_web_zoom_set(Evas_Object *obj, double zoom);
 
 /**
+ * Sets the zoom mode to use
+ *
+ * The modes can be any of those defined in ::Elm_Web_Zoom_Mode, except
+ * ::ELM_WEB_ZOOM_MODE_LAST. The default is ::ELM_WEB_ZOOM_MODE_MANUAL.
+ *
+ * ::ELM_WEB_ZOOM_MODE_MANUAL means the zoom level will be controlled
+ * with the elm_web_zoom_set() function.
+ * ::ELM_WEB_ZOOM_MODE_AUTO_FIT will calculate the needed zoom level to
+ * make sure the entirety of the web object's contents are shown.
+ * ::ELM_WEB_ZOOM_MODE_AUTO_FILL will calculate the needed zoom level to
+ * fit the contents in the web object's size, without leaving any space
+ * unused.
+ *
+ * @param obj The web object
+ * @param mode The mode to set
+ *
+ * @ingroup Web
+ */
+EAPI void  elm_web_zoom_mode_set(Evas_Object *obj, 
Elm_Web_Zoom_Mode mode);
+
+/**
+ * Get the currently set zoom mode
+ *
+ * @param obj The web object
+ *
+ * @return The current zoom mode set for the object,
+ * or ::ELM_WEB_ZOOM_MODE_LAST on error
+ *
+ * @ingroup Web
+ */
+EAPI Elm_Web_Zoom_Mode elm_web_zoom_mode_get(const Evas_Object *obj);
+
+/**
  * Get the current zoom level set on the web object
  *
  * Note that this is the zoom level set on the web object and not that

-- 




[EGIT] [core/elementary] master 01/01: elm_web2: Implemented to support HTML5 fullscreen API

2014-03-12 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 85af615900976fc330d4c6b9e7eb13abc339d71d
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Thu Mar 13 00:41:48 2014 +0900

elm_web2: Implemented to support HTML5 fullscreen API

test case : elementary_test -to webui
---
 src/bin/test_web.c | 29 +++
 src/lib/elm_web2.c | 68 ++
 2 files changed, 97 insertions(+)

diff --git a/src/bin/test_web.c b/src/bin/test_web.c
index ca80758..d9e7cc0 100644
--- a/src/bin/test_web.c
+++ b/src/bin/test_web.c
@@ -394,6 +394,33 @@ _new_window_test_cb(void *data, Evas_Object *obj, void 
*event_info)
 
elm_web_html_string_load(wt-web, new_window_html, NULL, NULL);
 }
+
+static void
+_fullscreen_test_cb(void *data, Evas_Object *obj, void *event_info)
+{
+   Web_Test *wt = data;
+   const char *selected = elm_object_item_text_get(event_info);
+   const char fullscreen_html[] = !doctype htmlbody
+   script
+   var launch = function(obj) {
+ var f = document.webkitFullscreenElement;
+ if (f) document.webkitExitFullscreen();
+ if (f != obj) obj.webkitRequestFullscreen();
+   }\n
+   var test_full = function() { launch(document.documentElement); }\n
+   var test_small = function() { launch(document.getElementById('box')); 
}\n
+   /script
+   input type='button' onclick='test_full();' value='request 
fullscreen'
+   div id='box' style='width:100px;height:100px;background-color:blue;' 
onclick='test_small();'small box/div
+   input type='button' onclick='test_small();' value='request fullscreen 
of box'
+   /body;
+
+   printf(selected test : %s\n, selected);
+   elm_object_text_set(obj, selected);
+
+   elm_web_html_string_load(wt-web, fullscreen_html, NULL, NULL);
+}
+
 static void
 _main_web_del_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_info EINA_UNUSED)
 {
@@ -586,6 +613,8 @@ test_web_ui(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_in
  _select_tag_test_cb, wt);
elm_hoversel_item_add(hoversel, new window, NULL, ELM_ICON_NONE,
  _new_window_test_cb, wt);
+   elm_hoversel_item_add(hoversel, fullscreen, NULL, ELM_ICON_NONE,
+ _fullscreen_test_cb, wt);
elm_box_pack_end(bx, hoversel);
evas_object_show(hoversel);
 
diff --git a/src/lib/elm_web2.c b/src/lib/elm_web2.c
index dfaf9b9..24418e4 100644
--- a/src/lib/elm_web2.c
+++ b/src/lib/elm_web2.c
@@ -77,6 +77,72 @@ _view_smart_window_close(Ewk_View_Smart_Data *sd)
evas_object_smart_callback_call(obj, windows,close,request, NULL);
 }
 
+static void
+_fullscreen_accept(void *data, Evas_Object *obj EINA_UNUSED, void *ev 
EINA_UNUSED)
+{
+   Evas_Object *ewk = data;
+   evas_object_del(evas_object_data_get(ewk, _fullscreen_permission_popup));
+}
+
+static void
+_fullscreen_deny(void *data, Evas_Object *obj EINA_UNUSED, void *ev 
EINA_UNUSED)
+{
+   Evas_Object *ewk = data;
+   ewk_view_fullscreen_exit(ewk);
+   evas_object_del(evas_object_data_get(ewk, _fullscreen_permission_popup));
+}
+
+static Eina_Bool
+_view_smart_fullscreen_enter(Ewk_View_Smart_Data *sd, Ewk_Security_Origin 
*origin)
+{
+   Evas_Object *btn, *popup, *top;
+   const char *host;
+   char buffer[2048];
+
+   Evas_Object *obj = evas_object_smart_parent_get(sd-self);
+
+   ELM_WEB_CHECK(obj) EINA_FALSE;
+
+   top = elm_widget_top_get(obj);
+   elm_win_fullscreen_set(top, EINA_TRUE);
+
+   popup = elm_popup_add(top);
+   elm_popup_orient_set(popup, ELM_POPUP_ORIENT_TOP);
+   evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+
+   host = ewk_security_origin_host_get(origin);
+   snprintf(buffer, sizeof(buffer), %s is now fullscreen.brPress ESC at any 
time to exit fullscreen,brAllow fullscreen?br, host);
+   elm_object_text_set(popup, buffer);
+
+   btn = elm_button_add(popup);
+   elm_object_text_set(btn, Accept);
+   elm_object_part_content_set(popup, button1, btn);
+   evas_object_smart_callback_add(btn, clicked, _fullscreen_accept, 
sd-self);
+
+   btn = elm_button_add(popup);
+   elm_object_text_set(btn, Deny);
+   elm_object_part_content_set(popup, button2, btn);
+   evas_object_smart_callback_add(btn, clicked, _fullscreen_deny, sd-self);
+
+   evas_object_data_set(sd-self, _fullscreen_permission_popup, popup);
+   evas_object_show(popup);
+
+   return EINA_TRUE;
+}
+
+static Eina_Bool
+_view_smart_fullscreen_exit(Ewk_View_Smart_Data *sd)
+{
+   Evas_Object *obj = evas_object_smart_parent_get(sd-self);
+
+   ELM_WEB_CHECK(obj) EINA_FALSE;
+
+   Evas_Object *top = elm_widget_top_get(obj);
+   elm_win_fullscreen_set(top, EINA_FALSE);
+
+   return EINA_TRUE;
+}
+
 /**
  * Creates a new view object given the parent.
  *
@@ -109,6 +175,8 @@ _view_add(Evas_Object *parent)
 api.sc.del = _view_smart_del

[EGIT] [core/efl] master 01/01: Fix build break because of evas_object_line_class_get

2014-03-08 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit c2bdda6f9bae5b931abbe34859591c6e5d5829fa
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Sun Mar 9 09:12:25 2014 +0900

Fix build break because of evas_object_line_class_get

Added edje into internal dependencies for ethumb_client.

I got below error.
/usr/elocal/lib/libedje.so.1: undefined reference to 
`evas_object_line_class_get'
collect2: error: ld returned 1 exit status
make[4]: *** [bin/ethumb_client/ethumbd] Error 1
make[4]: *** Waiting for unfinished jobs
---
 configure.ac | 1 +
 1 file changed, 1 insertion(+)

diff --git a/configure.ac b/configure.ac
index f6d0900..754ad09 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3972,6 +3972,7 @@ EFL_PLATFORM_DEPEND([ETHUMB_CLIENT], [evil])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [eina])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [eo])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [edje])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [eldbus])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [ethumb])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [evas])

-- 




[EGIT] [core/elementary] master 01/01: elm_web2: Implemented window_create / window_close

2014-03-08 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 8add8f11ce80e48acc89a1f150e2a7f2cca0adaf
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Sun Mar 9 12:21:58 2014 +0900

elm_web2: Implemented window_create / window_close

In addition, improved test_webui to check close scenario.
---
 src/bin/test_web.c | 16 +++---
 src/lib/elm_web2.c | 85 +++---
 2 files changed, 74 insertions(+), 27 deletions(-)

diff --git a/src/bin/test_web.c b/src/bin/test_web.c
index cb6ecf1..ca80758 100644
--- a/src/bin/test_web.c
+++ b/src/bin/test_web.c
@@ -374,11 +374,19 @@ _new_window_test_cb(void *data, Evas_Object *obj, void 
*event_info)
const char *selected = elm_object_item_text_get(event_info);
const char new_window_html[] = !doctype htmlbody
script
-   var open = function() {
- 
window.open('http://www.enlightenment.org','','width=400,height=300');
-   };
+   var h = null;
+   var test = function() {
+ if (!h) {
+   h = 
window.open('http://www.enlightenment.org','','width=400,height=300');
+   document.getElementById('btn').value='close window';
+ } else {
+   h.close();
+   h = null;
+   document.getElementById('btn').value='open new window';
+ }
+   }
/script
-   input type='button' onclick='open();' value='click to open new 
window'
+   input type='button' id='btn' onclick='test();' value='open new 
window'
/body;
 
printf(selected test : %s\n, selected);
diff --git a/src/lib/elm_web2.c b/src/lib/elm_web2.c
index 7e1c891..dfaf9b9 100644
--- a/src/lib/elm_web2.c
+++ b/src/lib/elm_web2.c
@@ -48,6 +48,35 @@ _view_smart_del(Evas_Object *obj)
_ewk_view_parent_sc.sc.del(obj);
 }
 
+static Evas_Object *
+_view_smart_window_create(Ewk_View_Smart_Data *vsd,
+  const Ewk_Window_Features *window_features)
+{
+   Evas_Object *new;
+   Evas_Object *obj = evas_object_smart_parent_get(vsd-self);
+
+   ELM_WEB_DATA_GET_OR_RETURN_VAL(obj, sd, NULL);
+
+   if (!sd-hook.window_create) return NULL;
+
+   new = sd-hook.window_create
+   (sd-hook.window_create_data, obj, EINA_TRUE,
+   (const Elm_Web_Window_Features *)window_features);
+   if (new) return elm_web_webkit_view_get(new);
+
+   return NULL;
+}
+
+static void
+_view_smart_window_close(Ewk_View_Smart_Data *sd)
+{
+   Evas_Object *obj = evas_object_smart_parent_get(sd-self);
+
+   ELM_WEB_CHECK(obj);
+
+   evas_object_smart_callback_call(obj, windows,close,request, NULL);
+}
+
 /**
  * Creates a new view object given the parent.
  *
@@ -78,6 +107,8 @@ _view_add(Evas_Object *parent)
 // TODO: by default, but user could override it to show as inwin.
 api.sc.add = _view_smart_add;
 api.sc.del = _view_smart_del;
+api.window_create = _view_smart_window_create;
+api.window_close = _view_smart_window_close;
 
 smart = evas_smart_class_new(api.sc);
 if (!smart)
@@ -210,13 +241,11 @@ _window_create_hook_set(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED, va_list *lis
 {
Elm_Web_Window_Open func = va_arg(*list, Elm_Web_Window_Open);
void *data = va_arg(*list, void *);
-#ifdef HAVE_ELEMENTARY_WEB
-  (void)func;
-  (void)data;
-#else
-  (void)func;
-  (void)data;
-#endif
+
+   Elm_Web_Smart_Data *sd = _pd;
+
+   sd-hook.window_create = func;
+   sd-hook.window_create_data = data;
 }
 
 EAPI void
@@ -1292,24 +1321,41 @@ _inwin_mode_get(Eo *obj EINA_UNUSED, void *_pd, va_list 
*list)
 EAPI void
 elm_web_window_features_ref(Elm_Web_Window_Features *wf)
 {
-   // FIXME : need to implement
-   (void)wf;
+   ewk_object_ref((Ewk_Object *)wf);
 }
 
 EAPI void
 elm_web_window_features_unref(Elm_Web_Window_Features *wf)
 {
-   // FIXME : need to implement
-   (void)wf;
+   ewk_object_unref((Ewk_Object *)wf);
 }
 
 EAPI Eina_Bool
 elm_web_window_features_property_get(const Elm_Web_Window_Features *wf,
  Elm_Web_Window_Feature_Flag flag)
 {
-   // FIXME : need to implement
-   (void)wf;
-   (void)flag;
+   const Ewk_Window_Features *ewf = (const Ewk_Window_Features *)wf;
+   switch (flag)
+ {
+  case ELM_WEB_WINDOW_FEATURE_TOOLBAR:
+return ewk_window_features_toolbar_visible_get(ewf);
+
+  case ELM_WEB_WINDOW_FEATURE_STATUSBAR:
+return ewk_window_features_statusbar_visible_get(ewf);
+
+  case ELM_WEB_WINDOW_FEATURE_SCROLLBARS:
+return ewk_window_features_scrollbars_visible_get(ewf);
+
+  case ELM_WEB_WINDOW_FEATURE_MENUBAR:
+return ewk_window_features_menubar_visible_get(ewf);
+
+  case ELM_WEB_WINDOW_FEATURE_LOCATIONBAR:
+return ewk_window_features_locationbar_visible_get(ewf);
+
+  case ELM_WEB_WINDOW_FEATURE_FULLSCREEN:
+return ewk_window_features_fullscreen_get(ewf);
+ }
+
return EINA_FALSE

[EGIT] [core/elementary] master 01/01: datetime : Enhance launching time more by reducing calls of sizing_eval()

2014-03-05 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit ea9a029ca3bba2c3bcadfaaa98ff6a36fdeb0ec1
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Wed Mar 5 23:52:53 2014 +0900

datetime : Enhance launching time more by reducing calls of sizing_eval()

elm_layout_content_set() calls elm_layout_sizing_eval() internally.
So, there are many calls in _field_list_arrange() and it takes long time.
---
 src/lib/elm_datetime.c| 10 ++
 src/lib/elm_widget_datetime.h |  2 ++
 2 files changed, 12 insertions(+)

diff --git a/src/lib/elm_datetime.c b/src/lib/elm_datetime.c
index f5df6bd..38a68ae 100644
--- a/src/lib/elm_datetime.c
+++ b/src/lib/elm_datetime.c
@@ -217,9 +217,12 @@ _field_list_arrange(Evas_Object *obj)
Datetime_Field *field;
char buf[BUFFER_SIZE];
int idx;
+   Eina_Bool freeze;
 
ELM_DATETIME_DATA_GET(obj, sd);
 
+   freeze = sd-freeze_sizing;
+   sd-freeze_sizing = EINA_TRUE;
for (idx = 0; idx  ELM_DATETIME_TYPE_COUNT; idx++)
  {
 field = sd-field_list + idx;
@@ -233,6 +236,7 @@ _field_list_arrange(Evas_Object *obj)
 else
   evas_object_hide(elm_layout_content_unset(obj, buf));
  }
+   sd-freeze_sizing = freeze;
 
elm_layout_sizing_eval(obj);
_field_list_display(obj);
@@ -502,6 +506,8 @@ _elm_datetime_smart_sizing_eval(Eo *obj, void *_pd, va_list 
*list EINA_UNUSED)
Evas_Coord minw = -1, minh = -1;
 
Elm_Datetime_Smart_Data *sd = _pd;
+   if (sd-freeze_sizing) return;
+
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
 
if (sd-enabled_field_count)
@@ -829,6 +835,7 @@ _elm_datetime_smart_add(Eo *obj, void *_pd, va_list *list 
EINA_UNUSED)
   }
  }
 
+   priv-freeze_sizing = EINA_TRUE;
if (!elm_layout_theme_set(obj, datetime, base,
  elm_widget_style_get(obj)))
  CRI(Failed to set layout!);
@@ -838,6 +845,7 @@ _elm_datetime_smart_add(Eo *obj, void *_pd, va_list *list 
EINA_UNUSED)
 
elm_widget_can_focus_set(obj, EINA_TRUE);
 
+   priv-freeze_sizing = EINA_FALSE;
elm_layout_sizing_eval(obj);
 
// ACCESS
@@ -992,6 +1000,7 @@ _field_visible_set(Eo *obj, void *_pd, va_list *list)
 
field-visible = visible;
 
+   sd-freeze_sizing = EINA_TRUE;
if (visible)
  {
 sd-enabled_field_count++;
@@ -1025,6 +1034,7 @@ _field_visible_set(Eo *obj, void *_pd, va_list *list)
 snprintf(buf, sizeof(buf), EDC_PART_FIELD_STR, field-location);
 evas_object_hide(elm_layout_content_unset(obj, buf));
  }
+   sd-freeze_sizing = EINA_FALSE;
 
elm_layout_sizing_eval(obj);
 
diff --git a/src/lib/elm_widget_datetime.h b/src/lib/elm_widget_datetime.h
index 58e25ff..12bdd6d 100644
--- a/src/lib/elm_widget_datetime.h
+++ b/src/lib/elm_widget_datetime.h
@@ -65,6 +65,8 @@ struct _Elm_Datetime_Smart_Data
Eina_Bool user_format : 1;  /* whether user set
 * format or default
 * format. */
+   Eina_Bool freeze_sizing : 1; /* freeze sizing_eval to
+ * reduce unnecessary sizing */
 };
 
 struct _Format_Map

-- 




[EGIT] [core/elementary] master 01/01: test_fileselector_entry: null check

2014-02-24 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 09c6d1326d2604a608d10696781999e5d025f6c4
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Fri Feb 21 23:04:19 2014 +0900

test_fileselector_entry: null check

There are warning when toggled folder after pressing api state which 
clear icon.
---
 src/bin/test_fileselector_entry.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/bin/test_fileselector_entry.c 
b/src/bin/test_fileselector_entry.c
index 8e41ac1..07d6cf0 100644
--- a/src/bin/test_fileselector_entry.c
+++ b/src/bin/test_fileselector_entry.c
@@ -121,12 +121,12 @@ _folder_only_toggle(void*data,
printf(Folder only flag set to: %s\n, value ? false : true);
if (!value)
  {
-elm_icon_standard_set(ic, folder);
+if (ic) elm_icon_standard_set(ic, folder);
 elm_object_text_set(fs_en, Select a folder);
  }
else
  {
-elm_icon_standard_set(ic, file);
+if (ic) elm_icon_standard_set(ic, file);
 elm_object_text_set(fs_en, Select a file);
  }
 }

-- 




Re: [E-devel] New snapshot of Webkit-EFL

2014-02-20 Thread Ryuan Choi
Hi,

There are some API changes.
So, elm_web on elementary 1.8.x (and lower version) will not work with it.
(I think that eve (in svn) is also not available with this version without some 
patch)

others will be fine.

Best Regards,
Ryuan Choi

--- Original Message ---
Sender : Vasiliy Tolstovv.tols...@selfip.ru
Date : 2014-02-19 20:34 (GMT+09:00)
Title : Re: [E-devel] New snapshot of Webkit-EFL

2014-02-19 15:31 GMT+04:00 Cedric BAIL :
 Hello,

 Along with the latest beta of EFL 1.9, Ryuan Choi did prepare a new
 snapshot of Webkit-EFL. You will need to update to this webkit-efl if
 you want to build elm_web with latest EFL. I also did release an
 update of Arch Linux package with debug symbol in it. You can find
 both in
 http://download.enlightenment.org/rel/libs/webkit-efl/ .

 1a90bd20d9b38b86566349163a72ffbd869dd1c2 webkit-efl-164189.tar.xz
 c9207c1eb427c8d0eaf98ef7fddd89ab1f63c74c ewebkit-1.9-1-x86_64.pkg.tar.xz

 Thanks to Ryuan and the rest of the team working on webkit-efl to
 continuously keep it alive !


Thanks! Does this version can build with efl 1.8?

-- 
Vasiliy Tolstov,
e-mail: v.tols...@selfip.ru
jabber: v...@selfip.ru



 +
  Listen and listen and listen
---+
--
Managing the Performance of Cloud-Based Applications
Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
Read the Whitepaper.
http://pubads.g.doubleclick.net/gampad/clk?id=121054471iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: colorselector: Do not add custom palette color to the palette of config

2014-02-17 Thread Ryuan Choi
raster pushed a commit to branch master.

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

commit 00dc69e2b45c16c65fe67e6522f363b68180304b
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Mon Feb 17 21:26:14 2014 +0900

colorselector: Do not add custom palette color to the palette of config

Summary:
elm_colorselector_palette_color_add() clears the palette if config_load is 
true.
It means that this API will add paletter color only for this colorselector 
object.

Fixes T786

Test Plan: Added elm_colorselector_palette.

Reviewers: seoz, raster

Maniphest Tasks: T786

Differential Revision: https://phab.enlightenment.org/D557
---
 src/lib/elm_colorselector.c|  3 ---
 src/tests/Makefile.am  |  1 +
 src/tests/elm_suite.c  |  1 +
 src/tests/elm_suite.h  |  1 +
 src/tests/elm_test_colorselector.c | 38 ++
 5 files changed, 41 insertions(+), 3 deletions(-)

diff --git a/src/lib/elm_colorselector.c b/src/lib/elm_colorselector.c
index a41cb63..ac72504 100644
--- a/src/lib/elm_colorselector.c
+++ b/src/lib/elm_colorselector.c
@@ -2115,9 +2115,6 @@ _palette_color_add(Eo *obj, void *_pd, va_list *list)
item-color-g = g;
item-color-b = b;
item-color-a = a;
-   _elm_config_color_set
- (sd-palette_name, item-color-r, item-color-g, item-color-b,
- item-color-a);
 
elm_box_pack_end(sd-palette_box, VIEW(item));
evas_object_color_set(item-color_obj,
diff --git a/src/tests/Makefile.am b/src/tests/Makefile.am
index fa97686..84c763b 100644
--- a/src/tests/Makefile.am
+++ b/src/tests/Makefile.am
@@ -7,6 +7,7 @@ check_PROGRAMS = elm_suite
 elm_suite_SOURCES = \
elm_suite.c \
elm_test_check.c \
+   elm_test_colorselector.c \
elm_test_init.c
 
 elm_suite_CPPFLAGS = \
diff --git a/src/tests/elm_suite.c b/src/tests/elm_suite.c
index e73a768..7056b35 100644
--- a/src/tests/elm_suite.c
+++ b/src/tests/elm_suite.c
@@ -16,6 +16,7 @@ struct _Elementary_Test_Case
 static const Elementary_Test_Case etc[] = {
   { Elementary, elm_test_init },
   { elm_check, elm_test_check },
+  { elm_colorselector, elm_test_colorselector },
   { NULL, NULL }
 };
 
diff --git a/src/tests/elm_suite.h b/src/tests/elm_suite.h
index ec13e38..3d4be29 100644
--- a/src/tests/elm_suite.h
+++ b/src/tests/elm_suite.h
@@ -5,5 +5,6 @@
 
 void elm_test_init(TCase *tc);
 void elm_test_check(TCase *tc);
+void elm_test_colorselector(TCase *tc);
 
 #endif /* _ELM_SUITE_H */
diff --git a/src/tests/elm_test_colorselector.c 
b/src/tests/elm_test_colorselector.c
new file mode 100644
index 000..3c3cbd1
--- /dev/null
+++ b/src/tests/elm_test_colorselector.c
@@ -0,0 +1,38 @@
+#ifdef HAVE_CONFIG_H
+# include elementary_config.h
+#endif
+
+#include Elementary.h
+#include elm_suite.h
+
+START_TEST (elm_colorselector_palette)
+{
+   Evas_Object *win, *c;
+   unsigned int palette_cnt;
+
+   elm_init(1, NULL);
+   win = elm_win_add(NULL, check, ELM_WIN_BASIC);
+
+   c = elm_colorselector_add(win);
+   /* Get the count of default palettes */
+   palette_cnt = eina_list_count(elm_colorselector_palette_items_get(c));
+   evas_object_del(c);
+
+   c = elm_colorselector_add(win);
+   ck_assert(eina_list_count(elm_colorselector_palette_items_get(c)) == 
palette_cnt);
+   elm_colorselector_palette_color_add(c, 255, 255, 255, 255);
+   ck_assert(eina_list_count(elm_colorselector_palette_items_get(c)) == 1);
+   evas_object_del(c);
+
+   c = elm_colorselector_add(win);
+   ck_assert(eina_list_count(elm_colorselector_palette_items_get(c)) == 
palette_cnt);
+   evas_object_del(c);
+
+   elm_shutdown();
+}
+END_TEST
+
+void elm_test_colorselector(TCase *tc)
+{
+   tcase_add_test(tc, elm_colorselector_palette);
+}

-- 




[EGIT] [core/elementary] master 01/01: elm_web2: Fix possible crash when loaded the contents which contains form elements

2014-02-16 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit f38e08b77765daf52fbf94f60dc715e4868c16a9
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Sun Feb 16 21:12:05 2014 +0900

elm_web2: Fix possible crash when loaded the contents which contains form 
elements

ewebkit requires webkit theme to draw form elements so elm_web might be 
crashed
when ewebkit didn't get theme path at debug build.
---
 src/lib/elm_web2.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/lib/elm_web2.c b/src/lib/elm_web2.c
index a9afd0d..7e1c891 100644
--- a/src/lib/elm_web2.c
+++ b/src/lib/elm_web2.c
@@ -143,6 +143,9 @@ _elm_web_smart_add(Eo *obj, void *_pd EINA_UNUSED, va_list 
*list EINA_UNUSED)
eo_do_super(obj, MY_CLASS, evas_obj_smart_add());
elm_widget_sub_object_parent_add(obj);
 
+   //TODO: need a way to change theme
+   ewk_view_theme_set(resize_obj, WEBKIT_DATADIR /themes/default.edj);
+
_view_smart_callback_proxy(resize_obj, obj);
elm_widget_can_focus_set(obj, EINA_TRUE);
 #endif

-- 




Re: [E-devel] [EGIT] [core/elementary] master 01/01: Colorselector: Item Selection/Unselection logic changes and corresponding API additions.

2014-02-08 Thread ryuan Choi
I think that it should be improved little bit more.

For example, what do you think about below scenarios?

1) Calls elm_colorselector_palette_item_selected_set(unselected_item,
EINA_FALSE);
Shouled we send elm,state,unselected signal? with clearing
sd-selected?

2) When elm_colorselector_palette_clear is called, should we send signals
for selected item?

Best Regards,
Ryuan Choi



2014-02-08 13:37 GMT+09:00 Shilpa Singh shilpa.si...@samsung.com:

 raster pushed a commit to branch master.


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

 commit 68f2f6e7f2a8fc432d2b1e455839022f20e71e34
 Author: Shilpa Singh shilpa.si...@samsung.com
 Date:   Sat Feb 8 13:33:58 2014 +0900

 Colorselector: Item Selection/Unselection logic changes and
 corresponding API additions.

 SUMMARY
 Item should remain selected once pressed.
 When one item is selected other items should be unselected.
 No special behavior on long press, item gets selected on mouse up.
 APIs added are to get current selected item and to programmatically
 control the selection/unselection of an item.

 This is patch D515 (had to do by hand).
 ---
  src/bin/test_colorselector.c   |  5 ++-
  src/lib/elm_colorselector.c| 87
 --
  src/lib/elm_colorselector_common.h | 21 +
  src/lib/elm_colorselector_eo.h | 13 ++
  src/lib/elm_colorselector_legacy.h | 11 +
  src/lib/elm_widget_colorselector.h |  1 -
  6 files changed, 124 insertions(+), 14 deletions(-)

 diff --git a/src/bin/test_colorselector.c b/src/bin/test_colorselector.c
 index 411d7a0..5947632 100644
 --- a/src/bin/test_colorselector.c
 +++ b/src/bin/test_colorselector.c
 @@ -84,6 +84,7 @@ test_colorselector(void *data EINA_UNUSED, Evas_Object
 *obj EINA_UNUSED,
 const Eina_List *item_list, *last_item_list;
 Elm_Object_Item *color_item;
 int r, g, b, a;
 +   Elm_Object_Item *item;

 win = elm_win_util_standard_add(colorselector, ColorSelector);
 elm_win_autodel_set(win, EINA_TRUE);
 @@ -113,7 +114,9 @@ test_colorselector(void *data EINA_UNUSED, Evas_Object
 *obj EINA_UNUSED,
 evas_object_show(fr);

 cs = elm_colorselector_add(fr);
 -   elm_colorselector_palette_color_add(cs, 255, 90, 18, 128);
 +   item = elm_colorselector_palette_color_add(cs, 255, 90, 18, 128);
 +   elm_colorselector_palette_item_selected_set(item, EINA_TRUE);
 +
 elm_colorselector_palette_color_add(cs, 255, 213, 0, 255);
 elm_colorselector_palette_color_add(cs, 146, 255, 11, 255);
 elm_colorselector_palette_color_add(cs, 9, 186, 10, 255);
 diff --git a/src/lib/elm_colorselector.c b/src/lib/elm_colorselector.c
 index 714cd79..daf3261 100644
 --- a/src/lib/elm_colorselector.c
 +++ b/src/lib/elm_colorselector.c
 @@ -1272,7 +1272,7 @@ _on_color_long_press(void *data)
 ELM_COLORSELECTOR_DATA_GET(WIDGET(item), sd);

 sd-longpress_timer = NULL;
 -   sd-longpressed = EINA_TRUE;
 +
 evas_object_smart_callback_call
   (WIDGET(item), SIG_COLOR_ITEM_LONGPRESSED, item);

 @@ -1293,8 +1293,6 @@ _on_color_pressed(void *data,
 ELM_COLORSELECTOR_DATA_GET(WIDGET(item), sd);

 if (ev-button != 1) return;
 -   elm_object_signal_emit(VIEW(item), elm,state,selected, elm);
 -   sd-longpressed = EINA_FALSE;

 ecore_timer_del(sd-longpress_timer);
 sd-longpress_timer = ecore_timer_add
 @@ -1317,15 +1315,17 @@ _on_color_released(void *data,

 if (ev-button != 1) return;
 ELM_SAFE_FREE(sd-longpress_timer, ecore_timer_del);
 -   elm_object_signal_emit(VIEW(item), elm,state,unselected, elm);
 -   if (!sd-longpressed)
 - {
 -elm_colorselector_color_set
 -  (WIDGET(item), item-color-r, item-color-g, item-color-b,
 -  item-color-a);
 -evas_object_smart_callback_call
 -  (WIDGET(item), SIG_COLOR_ITEM_SELECTED, item);
 - }
 +
 +   elm_object_signal_emit(VIEW(item), elm,state,selected, elm);
 +   elm_colorselector_color_set(WIDGET(item), item-color-r,
 item-color-g,
 +   item-color-b, item-color-a);
 +   evas_object_smart_callback_call(WIDGET(item), SIG_COLOR_ITEM_SELECTED,
 +   item);
 +
 +   temp_item = eina_list_data_get(sd-selected);
 +   if (temp_item  (temp_item != item))
 + elm_object_signal_emit(VIEW(temp_item), elm,state,unselected,
 elm);
 +
 EINA_LIST_FOREACH(sd-items, l, temp_item)
   if (item == temp_item) sd-selected = l;
 sd-focused = ELM_COLORSELECTOR_PALETTE;
 @@ -2167,6 +2167,67 @@ _palette_items_get(Eo *obj EINA_UNUSED, void *_pd,
 va_list *list)
  }

  EAPI void
 +elm_colorselector_palette_item_selected_set(Elm_Object_Item *it,
 +  Eina_Bool selected)
 +{
 +   Elm_Color_Item *temp_item, *item;
 +   item = (Elm_Color_Item *)it;
 +   Eina_List *l;
 +
 +   ELM_COLORSELECTOR_DATA_GET(WIDGET(item), sd);
 +   ELM_COLORSELECTOR_ITEM_CHECK_OR_RETURN

[EGIT] [core/elementary] master 01/01: datetime: fix wrong condition for validation in _field_limit_get()

2014-02-06 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit f1730bdff9405995a2b9d920015dacd595290be2
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Fri Feb 7 01:04:18 2014 +0900

datetime: fix wrong condition for validation in _field_limit_get()

It's regression since 9dc3a2829.
We don't need to consider min_limit/max_limit for ELM_DATETIME_AMPM.

This will fix CID 1167969, 1167970
---
 src/lib/elm_datetime.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elm_datetime.c b/src/lib/elm_datetime.c
index 5db4251..d0f9618 100644
--- a/src/lib/elm_datetime.c
+++ b/src/lib/elm_datetime.c
@@ -712,7 +712,7 @@ _field_limit_get(Evas_Object *obj,
Datetime_Field *field;
unsigned int idx;
 
-   if (field_type  ELM_DATETIME_AMPM) return;
+   if (field_type  ELM_DATETIME_MINUTE) return;
 
ELM_DATETIME_DATA_GET(obj, sd);
 

-- 




[EGIT] [core/elementary] master 01/01: datetime: Simplify the nested loop in _datetime_items_get()

2014-02-06 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 388829387e4fccbb8187abbd5c14220ef9496a8e
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Fri Feb 7 01:11:58 2014 +0900

datetime: Simplify the nested loop in _datetime_items_get()
---
 src/lib/elm_datetime.c | 18 +++---
 1 file changed, 7 insertions(+), 11 deletions(-)

diff --git a/src/lib/elm_datetime.c b/src/lib/elm_datetime.c
index d0f9618..9beadf7 100644
--- a/src/lib/elm_datetime.c
+++ b/src/lib/elm_datetime.c
@@ -389,26 +389,22 @@ _datetime_items_get(const Evas_Object *obj)
 {
Eina_List *items = NULL;
Datetime_Field *field;
-   int loc = 0;
unsigned int idx;
-   Eina_Bool visible[ELM_DATETIME_TYPE_COUNT];
+   Datetime_Field *sorted_fields[ELM_DATETIME_TYPE_COUNT];
 
ELM_DATETIME_DATA_GET(obj, sd);
 
for (idx = 0; idx  ELM_DATETIME_TYPE_COUNT; idx++)
  {
 field = sd-field_list + idx;
-if (field-fmt_exist  field-visible) visible[idx] = EINA_TRUE;
-else visible[idx] = EINA_FALSE;
+sorted_fields[field-location] = field;
  }
-   for (loc = 0; loc  ELM_DATETIME_TYPE_COUNT; loc++)
+
+   for (idx = 0; idx  ELM_DATETIME_TYPE_COUNT; idx++)
  {
-for (idx = 0; idx  ELM_DATETIME_TYPE_COUNT; idx++)
-  {
- field = sd-field_list + idx;
- if ((field-location == loc)  (visible[idx]))
-   items = eina_list_append(items, field-item_obj);
-  }
+field = sorted_fields + idx;
+if (field-fmt_exist  field-visible)
+  items = eina_list_append(items, field-item_obj);
  }
 
// ACCESS

-- 




[EGIT] [core/elementary] master 01/01: datetime: Enhance launching time of test_datetime by avoiding _reload_format() in visible_set()

2014-02-05 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 3fb3eaf6942512937177188b1ab6462f1b493a39
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Thu Feb 6 01:02:39 2014 +0900

datetime: Enhance launching time of test_datetime by avoiding 
_reload_format() in visible_set()

visible_set() only changes the visibility of one field while 
_reload_format()
changes everything.

This patch makes visible_set() just change only related field when only 
it's state
is really changd(enabled - disabled) instead of calling _reload_format().
---
 src/lib/elm_datetime.c | 44 +++-
 1 file changed, 43 insertions(+), 1 deletion(-)

diff --git a/src/lib/elm_datetime.c b/src/lib/elm_datetime.c
index e47188b..6100b1c 100644
--- a/src/lib/elm_datetime.c
+++ b/src/lib/elm_datetime.c
@@ -982,6 +982,7 @@ _field_visible_set(Eo *obj, void *_pd, va_list *list)
 {
Elm_Datetime_Field_Type fieldtype = va_arg(*list, Elm_Datetime_Field_Type);
Eina_Bool visible = va_arg(*list, int);
+   char buf[BUFFER_SIZE];
Datetime_Field *field;
 
Elm_Datetime_Smart_Data *sd = _pd;
@@ -989,10 +990,51 @@ _field_visible_set(Eo *obj, void *_pd, va_list *list)
if (fieldtype  ELM_DATETIME_AMPM) return;
 
field = sd-field_list + fieldtype;
+   visible = !!visible;
if (field-visible == visible) return;
 
field-visible = visible;
-   _reload_format(obj);
+
+   if (visible)
+ {
+sd-enabled_field_count++;
+
+if (!field-fmt_exist) return;
+
+snprintf(buf, sizeof(buf), EDC_PART_FIELD_ENABLE_SIG_STR,
+ field-location);
+elm_layout_signal_emit(obj, buf, elm);
+
+ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
+edje_object_message_signal_process(wd-resize_obj);
+
+snprintf(buf, sizeof(buf), EDC_PART_FIELD_STR, field-location);
+elm_layout_content_unset(obj, buf);
+elm_layout_content_set(obj, buf, field-item_obj);
+ }
+   else
+ {
+sd-enabled_field_count--;
+
+if (!field-fmt_exist) return;
+
+snprintf(buf, sizeof(buf), EDC_PART_FIELD_DISABLE_SIG_STR,
+ field-location);
+elm_layout_signal_emit(obj, buf, elm);
+
+ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
+edje_object_message_signal_process(wd-resize_obj);
+
+snprintf(buf, sizeof(buf), EDC_PART_FIELD_STR, field-location);
+evas_object_hide(elm_layout_content_unset(obj, buf));
+ }
+
+   elm_layout_sizing_eval(obj);
+
+   if (!visible) return;
+   if (!dt_mod || !dt_mod-field_value_display) return;
+
+   dt_mod-field_value_display(sd-mod_data, field-item_obj);
 }
 
 EAPI void

-- 




[EGIT] [core/elementary] master 01/01: elm datetime module: Fix that registers clicked callback of diskselector multiple

2014-02-05 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 7a2fa5fc2cbf91b88be27233de69c49b8fe8ff47
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Thu Feb 6 01:45:31 2014 +0900

elm datetime module: Fix that registers clicked callback of diskselector 
multiple

It drains the performance when selected value in diskselector.
---
 src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c 
b/src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c
index 3a34440..81cf947 100644
--- a/src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c
+++ b/src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c
@@ -155,6 +155,7 @@ _field_clicked_cb(void *data, Evas_Object *obj, void 
*event_info EINA_UNUSED)
 
// because of the diskselector behaviour, it is being recreated
diskselector = 
elm_diskselector_add(elm_widget_top_get(ctx_mod-mod_data.base));
+   evas_object_smart_callback_add(diskselector, clicked, _diskselector_cb, 
NULL);
elm_object_style_set(diskselector, buf);
elm_object_content_set(ctx_mod-ctxpopup, diskselector);
 
@@ -193,7 +194,6 @@ _field_clicked_cb(void *data, Evas_Object *obj, void 
*event_info EINA_UNUSED)
  disk_data-sel_field_type = field_type;
  disk_data-sel_field_value = idx;
  item = elm_diskselector_item_append(diskselector, label, NULL, 
NULL, disk_data);
- evas_object_smart_callback_add(diskselector, clicked, 
_diskselector_cb, NULL);
  elm_object_item_del_cb_set(item, _diskselector_item_free_cb);
   }
  }

-- 




[EGIT] [core/elementary] master 01/01: datetime: Correct the validation of parameter in _field_format_get/_field_limit_get

2014-02-04 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 9dc3a2829676dab8026a7ca172614521aeaf1cc9
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Wed Feb 5 00:53:14 2014 +0900

datetime: Correct the validation of parameter in 
_field_format_get/_field_limit_get

Because field_list is an array, we should check boundary instead of NULL.
---
 src/lib/elm_datetime.c | 6 --
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/lib/elm_datetime.c b/src/lib/elm_datetime.c
index 9436478..e47188b 100644
--- a/src/lib/elm_datetime.c
+++ b/src/lib/elm_datetime.c
@@ -693,10 +693,11 @@ _field_format_get(Evas_Object *obj,
 {
Datetime_Field *field;
 
+   if (field_type  ELM_DATETIME_AMPM) return NULL;
+
ELM_DATETIME_DATA_GET(obj, sd);
 
field = sd-field_list + field_type;
-   if (!field) return NULL;
 
return field-fmt;
 }
@@ -711,10 +712,11 @@ _field_limit_get(Evas_Object *obj,
Datetime_Field *field;
unsigned int idx;
 
+   if (field_type  ELM_DATETIME_AMPM) return;
+
ELM_DATETIME_DATA_GET(obj, sd);
 
field = sd-field_list + field_type;
-   if (!field) return;
 
min = field-min;
max = field-max;

-- 




[EGIT] [core/elementary] master 01/01: datetime_input_ctxpopup: delay creation of ctxpopup until it is really needed.

2014-02-04 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit b44bc5ed31a1f1c0810e3873ad278e63a2ea0560
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Wed Feb 5 01:26:37 2014 +0900

datetime_input_ctxpopup: delay creation of ctxpopup until it is really 
needed.
---
 .../datetime_input_ctxpopup.c  | 33 +++---
 1 file changed, 17 insertions(+), 16 deletions(-)

diff --git a/src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c 
b/src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c
index ac744ae..3a34440 100644
--- a/src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c
+++ b/src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c
@@ -48,7 +48,7 @@ _datetime_resize_cb(void *data, Evas *e 
EINA_UNUSED,Evas_Object *obj EINA_UNUSED
Ctxpopup_Module_Data *ctx_mod;
 
ctx_mod = (Ctxpopup_Module_Data *)data;
-   if (!ctx_mod) return;
+   if (!ctx_mod || !ctx_mod-ctxpopup) return;
 
evas_object_hide(ctx_mod-ctxpopup);
 }
@@ -60,7 +60,7 @@ _datetime_move_cb(void *data, Evas *e EINA_UNUSED,Evas_Object 
*obj EINA_UNUSED,
Ctxpopup_Module_Data *ctx_mod;
 
ctx_mod = (Ctxpopup_Module_Data *)data;
-   if (!ctx_mod) return;
+   if (!ctx_mod || !ctx_mod-ctxpopup) return;
 
evas_object_hide(ctx_mod-ctxpopup);
 }
@@ -135,13 +135,26 @@ _field_clicked_cb(void *data, Evas_Object *obj, void 
*event_info EINA_UNUSED)
Evas_Coord x = 0, y = 0, w = 0, h = 0, width;
 
ctx_mod = (Ctxpopup_Module_Data *)data;
-   if (!ctx_mod || !ctx_mod-ctxpopup) return;
+   if (!ctx_mod) return;
+
+   snprintf(buf, sizeof(buf), datetime/%s, elm_object_style_get(obj));
+
+   if (!ctx_mod-ctxpopup)
+ {
+ctx_mod-ctxpopup = elm_ctxpopup_add(obj);
+elm_object_style_set(ctx_mod-ctxpopup, buf);
+elm_ctxpopup_horizontal_set(ctx_mod-ctxpopup, EINA_TRUE);
+evas_object_size_hint_weight_set(ctx_mod-ctxpopup, EVAS_HINT_EXPAND,
+ EVAS_HINT_EXPAND);
+evas_object_size_hint_align_set(ctx_mod-ctxpopup, EVAS_HINT_FILL, 
0.5);
+evas_object_smart_callback_add(ctx_mod-ctxpopup, dismissed,
+   _ctxpopup_dismissed_cb, ctx_mod);
+ }
 
elm_ctxpopup_hover_parent_set(ctx_mod-ctxpopup, elm_widget_top_get(obj));
 
// because of the diskselector behaviour, it is being recreated
diskselector = 
elm_diskselector_add(elm_widget_top_get(ctx_mod-mod_data.base));
-   snprintf(buf, sizeof(buf), datetime/%s, elm_object_style_get(obj));
elm_object_style_set(diskselector, buf);
elm_object_content_set(ctx_mod-ctxpopup, diskselector);
 
@@ -314,21 +327,9 @@ EAPI Elm_Datetime_Module_Data *
 obj_hook(Evas_Object *obj)
 {
Ctxpopup_Module_Data *ctx_mod;
-   char buf[BUFF_SIZE];
-
ctx_mod = ELM_NEW(Ctxpopup_Module_Data);
if (!ctx_mod) return NULL;
 
-   ctx_mod-ctxpopup = elm_ctxpopup_add(obj);
-   snprintf(buf, sizeof(buf), datetime/%s, elm_object_style_get(obj));
-   elm_object_style_set(ctx_mod-ctxpopup, buf);
-   elm_ctxpopup_horizontal_set(ctx_mod-ctxpopup, EINA_TRUE);
-   evas_object_size_hint_weight_set(ctx_mod-ctxpopup, EVAS_HINT_EXPAND,
-EVAS_HINT_EXPAND);
-   evas_object_size_hint_align_set(ctx_mod-ctxpopup, EVAS_HINT_FILL, 0.5);
-   evas_object_smart_callback_add(ctx_mod-ctxpopup, dismissed,
-  _ctxpopup_dismissed_cb, ctx_mod);
-
evas_object_event_callback_add(obj, EVAS_CALLBACK_RESIZE,
   _datetime_resize_cb, ctx_mod);
evas_object_event_callback_add(obj, EVAS_CALLBACK_MOVE,

-- 




[EGIT] [core/elementary] master 01/01: fileselector: Fixed typo of warning message in ELM_FILESELECTOR_INTERFACE_CHECK

2014-02-03 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit dd54af226897b63dfd87df49064ca4990937f487
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Tue Feb 4 01:23:10 2014 +0900

fileselector: Fixed typo of warning message in 
ELM_FILESELECTOR_INTERFACE_CHECK

It's cp mistake.
---
 src/lib/elm_interface_fileselector.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elm_interface_fileselector.h 
b/src/lib/elm_interface_fileselector.h
index 74dfda7..2bd0cb2 100644
--- a/src/lib/elm_interface_fileselector.h
+++ b/src/lib/elm_interface_fileselector.h
@@ -367,7 +367,7 @@ enum
 #define ELM_FILESELECTOR_INTERFACE_CHECK(obj, ...) \
   if (EINA_UNLIKELY(!eo_isa(obj, ELM_FILESELECTOR_INTERFACE))) \
 { \
-   ERR(The object (%p) doesn't implement the Elementary scrollable \
+   ERR(The object (%p) doesn't implement the Elementary fileselector \
  interface, obj); \
if (getenv(ELM_ERROR_ABORT)) abort(); \
return __VA_ARGS__; \

-- 




[EGIT] [core/elementary] master 01/01: datetime: fix doxygen

2014-02-03 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit eaa17d1d11c860fc12d5d855d81d940db5967187
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Tue Feb 4 01:41:45 2014 +0900

datetime: fix doxygen
---
 src/lib/elm_datetime.c| 2 +-
 src/lib/elm_datetime_eo.h | 2 +-
 src/lib/elm_datetime_legacy.h | 4 ++--
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/lib/elm_datetime.c b/src/lib/elm_datetime.c
index 5553b30..9436478 100644
--- a/src/lib/elm_datetime.c
+++ b/src/lib/elm_datetime.c
@@ -1284,7 +1284,7 @@ static const Eo_Op_Description op_desc[] = {
  EO_OP_DESCRIPTION(ELM_OBJ_DATETIME_SUB_ID_FIELD_VISIBLE_SET, Set a field 
to be visible or not.),
  EO_OP_DESCRIPTION(ELM_OBJ_DATETIME_SUB_ID_FIELD_LIMIT_GET, Get the field 
limits of a field.),
  EO_OP_DESCRIPTION(ELM_OBJ_DATETIME_SUB_ID_FIELD_LIMIT_SET, Set the field 
limits of a field.),
- EO_OP_DESCRIPTION(ELM_OBJ_DATETIME_SUB_ID_VALUE_GET, Get the current 
value of a field.),
+ EO_OP_DESCRIPTION(ELM_OBJ_DATETIME_SUB_ID_VALUE_GET, Get the current 
value of a Datetime object.),
  EO_OP_DESCRIPTION(ELM_OBJ_DATETIME_SUB_ID_VALUE_SET, Set the current 
value of a Datetime object.),
  EO_OP_DESCRIPTION(ELM_OBJ_DATETIME_SUB_ID_VALUE_MIN_GET, Get the lower 
boundary of a field.),
  EO_OP_DESCRIPTION(ELM_OBJ_DATETIME_SUB_ID_VALUE_MIN_SET, Set the lower 
boundary of a field.),
diff --git a/src/lib/elm_datetime_eo.h b/src/lib/elm_datetime_eo.h
index ec5a9dd..0c29e8e 100644
--- a/src/lib/elm_datetime_eo.h
+++ b/src/lib/elm_datetime_eo.h
@@ -118,7 +118,7 @@ enum
  * @def elm_obj_datetime_value_get
  * @since 1.8
  *
- * @brief Get the current value of a field.
+ * @brief Get the current value of a Datetime object.
  *
  * @param[in,out] currtime
  * @param[out] ret
diff --git a/src/lib/elm_datetime_legacy.h b/src/lib/elm_datetime_legacy.h
index 70f39f2..82a466a 100644
--- a/src/lib/elm_datetime_legacy.h
+++ b/src/lib/elm_datetime_legacy.h
@@ -243,7 +243,7 @@ EAPI void  elm_datetime_field_limit_get(const 
Evas_Object *obj, Elm_Datetime
 EAPI void  elm_datetime_field_limit_set(Evas_Object *obj, 
Elm_Datetime_Field_Type fieldtype, int min, int max);
 
 /**
- * @brief Get the current value of a field.
+ * @brief Get the current value of a Datetime object.
  *
  * Year: years since 1900. Negative value represents year below 1900 (year
  * value -30 represents 1870). Year default range is from 70 to 137.
@@ -260,7 +260,7 @@ EAPI void  elm_datetime_field_limit_set(Evas_Object 
*obj, Elm_Datetime_Field
  * @param currtime Time structure.
  * @return EINA_TRUE if current time is returned successfully.
  *
- * @see elm_datetime_field_value_set()
+ * @see elm_datetime_value_set()
  * @ingroup Datetime
  */
 EAPI Eina_Bool elm_datetime_value_get(const Evas_Object *obj, struct tm 
*currtime);

-- 




[EGIT] [core/elementary] master 01/01: datetime: Refactor to launch test_datetime little bit faster

2014-02-02 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 5cb9d937e6d5f73bd8dba00fdddbc830ab4192af
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Mon Feb 3 09:03:26 2014 +0900

datetime: Refactor to launch test_datetime little bit faster

- Added enabled_filed_count to avoid loop in 
_elm_datetime_smart_sizing_eval().
  sizing_eval is called many times but field_count is only changed when 
called
  _reload_format().
- Moved redundant if statement out of the loop in _field_list_display().
- Removed redundant call from _elm_datetime_smart_add().
  _field_list_arrange() is called in _reload_format().
---
 src/lib/elm_datetime.c| 29 ++---
 src/lib/elm_widget_datetime.h |  1 +
 2 files changed, 15 insertions(+), 15 deletions(-)

diff --git a/src/lib/elm_datetime.c b/src/lib/elm_datetime.c
index bb5ede9..5553b30 100644
--- a/src/lib/elm_datetime.c
+++ b/src/lib/elm_datetime.c
@@ -103,14 +103,13 @@ _field_list_display(Evas_Object *obj)
 
ELM_DATETIME_DATA_GET(obj, sd);
 
+   if (!dt_mod || !dt_mod-field_value_display) return;
+
for (idx = 0; idx  ELM_DATETIME_TYPE_COUNT; idx++)
  {
 field = sd-field_list + idx;
 if (field-fmt_exist  field-visible)
-  {
- if ((dt_mod)  (dt_mod-field_value_display))
-   dt_mod-field_value_display(sd-mod_data, field-item_obj);
-  }
+  dt_mod-field_value_display(sd-mod_data, field-item_obj);
  }
 }
 
@@ -326,6 +325,7 @@ _reload_format(Evas_Object *obj)
_expand_format(dt_fmt);
 
// reset all the fields to disable state
+   sd-enabled_field_count = 0;
for (idx = 0; idx  ELM_DATETIME_TYPE_COUNT; idx++)
  {
 field = sd-field_list + idx;
@@ -336,6 +336,13 @@ _reload_format(Evas_Object *obj)
field_count = _parse_format(obj, dt_fmt);
free(dt_fmt);
 
+   for (idx = 0; idx  ELM_DATETIME_TYPE_COUNT; idx++)
+ {
+field = sd-field_list + idx;
+if (field-fmt_exist  field-visible)
+  sd-enabled_field_count++;
+ }
+
// assign locations to disabled fields for uniform usage
for (idx = 0; idx  ELM_DATETIME_TYPE_COUNT; idx++)
  {
@@ -495,20 +502,14 @@ _elm_datetime_smart_disable(Eo *obj, void *_pd, va_list 
*list)
 static void
 _elm_datetime_smart_sizing_eval(Eo *obj, void *_pd, va_list *list EINA_UNUSED)
 {
-   Datetime_Field *field;
Evas_Coord minw = -1, minh = -1;
-   unsigned int idx, field_count = 0;
 
Elm_Datetime_Smart_Data *sd = _pd;
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
 
-   for (idx = 0; idx  ELM_DATETIME_TYPE_COUNT; idx++)
- {
-field = sd-field_list + idx;
-if ((field-visible)  (field-fmt_exist)) field_count++;
- }
-   if (field_count)
- elm_coords_finger_size_adjust(field_count, minw, 1, minh);
+   if (sd-enabled_field_count)
+ elm_coords_finger_size_adjust(sd-enabled_field_count, minw, 1, minh);
+
edje_object_size_min_restricted_calc
  (wd-resize_obj, minw, minh, minw, minh);
evas_object_size_hint_min_set(obj, minw, minh);
@@ -836,8 +837,6 @@ _elm_datetime_smart_add(Eo *obj, void *_pd, va_list *list 
EINA_UNUSED)
_field_list_init(obj);
_reload_format(obj);
 
-   _field_list_arrange(obj);
-
elm_widget_can_focus_set(obj, EINA_TRUE);
 
elm_layout_sizing_eval(obj);
diff --git a/src/lib/elm_widget_datetime.h b/src/lib/elm_widget_datetime.h
index f49b790..58e25ff 100644
--- a/src/lib/elm_widget_datetime.h
+++ b/src/lib/elm_widget_datetime.h
@@ -61,6 +61,7 @@ struct _Elm_Datetime_Smart_Data
Elm_Datetime_Module_Data *mod_data;
char  format[ELM_DATETIME_MAX_FORMAT_LEN];
Evas_Object  *access_obj;
+   int   enabled_field_count;
Eina_Bool user_format : 1;  /* whether user set
 * format or default
 * format. */

-- 




Re: [E-devel] [EGIT] [core/elementary] master 01/01: datetime: Refactor to launch test_datetime little bit faster

2014-02-02 Thread ryuan Choi
Thanks for the feed back and perf report.

I agree that we should improve it more.
I just touched simple redundancies after reading the code.

I also tried profiling but I could not see the root cause quickly.
I will analyze more in my free time.

Best Regards,
Ryuan Choi



2014-02-03 Daniel Juyung Seo seojuyu...@gmail.com:

 Here is the perf analysis report.
 edje part calculation consumes cpu cycle a lot.

  8.28%  elementary_test  libedje.so.1.8.99[.]
 _edje_part_recalc_single
  6.69%  elementary_test  libedje.so.1.8.99[.] _edje_part_recalc
  5.29%  elementary_test  libeo.so.1.8.99  [.]
 _eo_obj_pointer_get
  4.32%  elementary_test  libeo.so.1.8.99  [.] _eo_dov_internal
  4.29%  elementary_test  libedje.so.1.8.99[.]
 _edje_part_recalc_single_min_max
  3.85%  elementary_test  libedje.so.1.8.99[.]
 _edje_part_recalc_single_rel
  3.75%  elementary_test  libeo.so.1.8.99  [.]
 _eo_data_scope_get
  3.57%  elementary_test  libeina.so.1.8.99[.]
 eina_hash_superfast
  3.53%  elementary_test  libeo.so.1.8.99  [.] _dich_func_get
  3.51%  elementary_test  libedje.so.1.8.99[.]
 _edje_part_recalc_single_aspect
  2.73%  elementary_test  libeo.so.1.8.99  [.]
 _eo_obj_dov_internal
  2.70%  elementary_test  libeo.so.1.8.99  [.]
 _eo_kls_itr_func_get
  2.61%  elementary_test  libedje.so.1.8.99[.]
 _edje_text_recalc_apply
  2.53%  elementary_test  libeo.so.1.8.99  [.] _eo_op_internal
  2.42%  elementary_test  [kernel.kallsyms][k] 0xc10359d8
  2.03%  elementary_test  libeo.so.1.8.99  [.] eo_do_internal
  1.84%  elementary_test  libeina.so.1.8.99[.]
 _eina_string_key_length
  1.81%  elementary_test  libedje.so.1.8.99[.] .L1100
  1.73%  elementary_test  libedje.so.1.8.99[.]
 _edje_part_recalc_single_map
  1.60%  elementary_test  libedje.so.1.8.99[.]
 _edje_part_recalc_single_min_length
  1.30%  elementary_test  libeo.so.1.8.99  [.] _eo_unref
  1.29%  elementary_test  libevas.so.1.8.99[.] .L698
  1.19%  elementary_test  libeina.so.1.8.99[.] eina_hash_find
  0.98%  elementary_test  libedje.so.1.8.99[.]
 _edje_part_recalc_single_min
  0.88%  elementary_test  libevas.so.1.8.99[.] _size_get
  0.86%  elementary_test  libedje.so.1.8.99[.]
 _edje_part_recalc_single_max


 41.75%  libedje.so.1.8.99
 31.72%  libeo.so.1.8.99
 13.19%  libevas.so.1.8.99
  7.78%  libeina.so.1.8.99
  2.42%  [kernel.kallsyms]
  1.44%  libc-2.15.so
  1.12%  libpthread-2.15.so
  0.36%  libdbus-1.so.3.5.8
  0.13%  libelementary.so.1.8.99
  0.06%  libecore.so.1.8.99
  0.02%  ld-2.15.so

 Daniel Juyung Seo (SeoZ)



 On Mon, Feb 3, 2014 at 10:16 AM, Daniel Juyung Seo seojuyu...@gmail.com
 wrote:

  Thanks for the nice patch!
 
 
   datetime: Refactor to launch test_datetime little bit faster
 
  But the commit message should be changed to something like:
   datetime: Enhance datetime launching time by reducing redundant
  calculation.
 
  Anyhow, datetime launching time is reduced but it is still slow... hmm.
  Need to analyze it more.
 
  Thanks.
 
  Daniel Juyung Seo (SeoZ)
 
 
 
  On Mon, Feb 3, 2014 at 9:13 AM, Ryuan Choi ryuan.c...@gmail.com wrote:
 
  ryuan pushed a commit to branch master.
 
 
 
 http://git.enlightenment.org/core/elementary.git/commit/?id=5cb9d937e6d5f73bd8dba00fdddbc830ab4192af
 
  commit 5cb9d937e6d5f73bd8dba00fdddbc830ab4192af
  Author: Ryuan Choi ryuan.c...@gmail.com
  Date:   Mon Feb 3 09:03:26 2014 +0900
 
  datetime: Refactor to launch test_datetime little bit faster
 
  - Added enabled_filed_count to avoid loop in
  _elm_datetime_smart_sizing_eval().
sizing_eval is called many times but field_count is only changed
  when called
_reload_format().
  - Moved redundant if statement out of the loop in
  _field_list_display().
  - Removed redundant call from _elm_datetime_smart_add().
_field_list_arrange() is called in _reload_format().
  ---
   src/lib/elm_datetime.c| 29 ++---
   src/lib/elm_widget_datetime.h |  1 +
   2 files changed, 15 insertions(+), 15 deletions(-)
 
  diff --git a/src/lib/elm_datetime.c b/src/lib/elm_datetime.c
  index bb5ede9..5553b30 100644
  --- a/src/lib/elm_datetime.c
  +++ b/src/lib/elm_datetime.c
  @@ -103,14 +103,13 @@ _field_list_display(Evas_Object *obj)
 
  ELM_DATETIME_DATA_GET(obj, sd);
 
  +   if (!dt_mod || !dt_mod-field_value_display) return;
  +
  for (idx = 0; idx  ELM_DATETIME_TYPE_COUNT; idx++)
{
   field = sd-field_list + idx;
   if (field-fmt_exist  field-visible)
  -  {
  - if ((dt_mod)  (dt_mod-field_value_display))
  -   dt_mod-field_value_display(sd-mod_data,
  field-item_obj

[EGIT] [core/elementary] master 01/01: fileselector: Fixed that data of done signal may start with two slash

2014-01-29 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 924effdd717fa25a4963c274f5a19273399c55c7
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Wed Jan 29 23:08:55 2014 +0900

fileselector: Fixed that data of done signal may start with two slash

When moved to root(/) and typed something in name_entry,
ok button sent //something as as data of done signal.

This patch checked current path string not to concatenate two slash.
---
 src/lib/elc_fileselector.c | 8 +++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/lib/elc_fileselector.c b/src/lib/elc_fileselector.c
index fa610e6..9c05086 100644
--- a/src/lib/elc_fileselector.c
+++ b/src/lib/elc_fileselector.c
@@ -990,7 +990,13 @@ _ok(void *data,
 
name = elm_object_text_get(sd-name_entry);
if (name  name[0] != '\0')
- selection = eina_stringshare_printf(%s/%s, sd-path, name);
+ {
+int len = eina_stringshare_strlen(sd-path);
+if (sd-path[len - 1] == '/')
+  selection = eina_stringshare_printf(%s%s, sd-path, name);
+else
+  selection = eina_stringshare_printf(%s/%s, sd-path, name);
+ }
else
  selection = eina_stringshare_add(elm_fileselector_selected_get(fs));
 

-- 




[EGIT] [core/elementary] master 01/01: fileselector: Fixed that does not navigate / on path_entry

2014-01-27 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit f731f2ed435431d8563c27597644ea328df260b4
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Tue Jan 28 16:16:44 2014 +0900

fileselector: Fixed that does not navigate / on path_entry

href=/ are not working because / is considered to self closing tag.

Instead. href='/' is fine since rEFL2d4ba9e8d
---
 src/lib/elc_fileselector.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elc_fileselector.c b/src/lib/elc_fileselector.c
index 65a9b04..fa610e6 100644
--- a/src/lib/elc_fileselector.c
+++ b/src/lib/elc_fileselector.c
@@ -291,7 +291,7 @@ _anchors_do(Evas_Object *obj,
tok = eina_str_split(s, /, 0);
free(s);
 
-   eina_strlcat(buf, a href=/root/a, sizeof(buf));
+   eina_strlcat(buf, a href='/'root/a, sizeof(buf));
for (i = 0; tok[i]; i++)
  {
 if ((!tok[i]) || (!tok[i][0])) continue;

-- 




[EGIT] [core/elementary] master 01/02: web: Follow latest webkit change to fix build break with latest ewebkit

2014-01-25 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 0e465290be2016f12adcbc8c8d74645b3e6a1d9a
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Sun Jan 26 12:16:07 2014 +0900

web: Follow latest webkit change to fix build break with latest ewebkit

ewk_view_tiled was dropped.
ewk_view_single - ewk_view.
---
 src/lib/elm_web.c | 6 +-
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/src/lib/elm_web.c b/src/lib/elm_web.c
index 38f70e8..3d2b4fa 100644
--- a/src/lib/elm_web.c
+++ b/src/lib/elm_web.c
@@ -773,11 +773,7 @@ _view_add(Evas_Object *parent)
 static Ewk_View_Smart_Class api =
   EWK_VIEW_SMART_CLASS_INIT_NAME_VERSION(EWK_View_Elementary);
 
-#ifndef TILED_BACKING_STORE
-ewk_view_single_smart_set(api);
-#else
-ewk_view_tiled_smart_set(api);
-#endif
+ewk_view_smart_set(api);
 
 _ewk_view_parent_sc = api;
 

-- 




[EGIT] [core/elementary] master 02/02: test_web_ui: Added a button to test select tag and window.open()

2014-01-25 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 3ba4e4f7a3ca2acb850cb22c7adf29f4abc7ac52
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Sun Jan 26 12:20:03 2014 +0900

test_web_ui: Added a button to test select tag and window.open()

elm_web provide UI compoents by extending ewebkit.
This patch adds a button to test select tag and window.open()
---
 src/bin/test_web.c | 58 +-
 1 file changed, 57 insertions(+), 1 deletion(-)

diff --git a/src/bin/test_web.c b/src/bin/test_web.c
index ee20420..cb6ecf1 100644
--- a/src/bin/test_web.c
+++ b/src/bin/test_web.c
@@ -345,6 +345,48 @@ _useragent_cb(void *data, Evas_Object *obj EINA_UNUSED, 
void *event_info)
 }
 
 static void
+_select_tag_test_cb(void *data, Evas_Object *obj, void *event_info)
+{
+   Web_Test *wt = data;
+   const char *selected = elm_object_item_text_get(event_info);
+   const char select_html[] = !doctype htmlbody
+   select
+   optioneina/option
+   optionecore/option
+   optionevas/option
+   optionedje/option
+   optioneet/option
+   optionemotion/option
+   optionelementary/option
+   /select
+   /body;
+
+   printf(selected test : %s\n, selected);
+   elm_object_text_set(obj, selected);
+
+   elm_web_html_string_load(wt-web, select_html, NULL, NULL);
+}
+
+static void
+_new_window_test_cb(void *data, Evas_Object *obj, void *event_info)
+{
+   Web_Test *wt = data;
+   const char *selected = elm_object_item_text_get(event_info);
+   const char new_window_html[] = !doctype htmlbody
+   script
+   var open = function() {
+ 
window.open('http://www.enlightenment.org','','width=400,height=300');
+   };
+   /script
+   input type='button' onclick='open();' value='click to open new 
window'
+   /body;
+
+   printf(selected test : %s\n, selected);
+   elm_object_text_set(obj, selected);
+
+   elm_web_html_string_load(wt-web, new_window_html, NULL, NULL);
+}
+static void
 _main_web_del_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_info EINA_UNUSED)
 {
Web_Test *wt = data;
@@ -513,7 +555,7 @@ test_web(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_info
 void
 test_web_ui(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void 
*event_info EINA_UNUSED)
 {
-   Evas_Object *win, *bx, *web;
+   Evas_Object *win, *bx, *web, *hoversel;
Web_Test *wt;
 
elm_need_web();
@@ -528,15 +570,29 @@ test_web_ui(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_in
elm_win_resize_object_add(win, bx);
evas_object_show(bx);
 
+   hoversel = elm_hoversel_add(bx);
+   elm_hoversel_hover_parent_set(hoversel, win);
+   elm_object_text_set(hoversel, Test cases);
+
+   elm_hoversel_item_add(hoversel, select tag, NULL, ELM_ICON_NONE,
+ _select_tag_test_cb, wt);
+   elm_hoversel_item_add(hoversel, new window, NULL, ELM_ICON_NONE,
+ _new_window_test_cb, wt);
+   elm_box_pack_end(bx, hoversel);
+   evas_object_show(hoversel);
+
web = elm_web_add(win);
evas_object_size_hint_weight_set(web, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(web, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_box_pack_end(bx, web);
evas_object_show(web);
 
+   elm_web_window_create_hook_set(web, _new_window_hook, wt);
+
evas_object_event_callback_add(web, EVAS_CALLBACK_DEL, _main_web_del_cb, 
wt);
wt-web = web;
 
+
elm_web_html_string_load(wt-web,
 !doctype htmlbodyHello, WebKit/Efl/body,
 NULL, NULL);

-- 




[EGIT] [core/efl] master 01/01: configure: Add ecore-imf to ETHUMB_INTERNAL_LIBS

2014-01-24 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit a9c0a6c30b293e86c8b5538ed8bada20ffa3737e
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Fri Jan 24 20:14:23 2014 +0900

configure: Add ecore-imf to ETHUMB_INTERNAL_LIBS

It is to fix possible build break of ethumb

I got below message.
lib/edje/.libs/libedje.so: undefined reference to 
`ecore_imf_context_retrieve_selection_callback_set'
collect2: error: ld returned 1 exit status
make[4]: *** [bin/ethumb/ethumb] Error 1
---
 configure.ac | 1 +
 1 file changed, 1 insertion(+)

diff --git a/configure.ac b/configure.ac
index 373ea6d..cb08021 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3790,6 +3790,7 @@ EFL_INTERNAL_DEPEND_PKG([ETHUMB], [eo])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB], [ecore])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB], [ecore-evas])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB], [ecore-file])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB], [ecore-imf])
 EFL_INTERNAL_DEPEND_PKG([ETHUMB], [edje])
 
 ## modules

-- 




[EGIT] [core/elementary] master 01/01: elm_cnp: Fix that calls _x11_elm_widget_xwin_get two times at elm_cnp_selection_{set|get}

2014-01-23 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit fd5a62d31d50bf9ba60f2b4c55c05f7117c6622d
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Thu Jan 23 22:22:33 2014 +0900

elm_cnp: Fix that calls _x11_elm_widget_xwin_get two times at 
elm_cnp_selection_{set|get}

small refactoring.
---
 src/lib/elm_cnp.c | 20 ++--
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/src/lib/elm_cnp.c b/src/lib/elm_cnp.c
index 5efcd05..a23562f 100644
--- a/src/lib/elm_cnp.c
+++ b/src/lib/elm_cnp.c
@@ -298,10 +298,10 @@ static void   _x11_drag_move(void 
*data EINA_UNUSED, Eco
 static Ecore_X_Window _x11_elm_widget_xwin_get   (const Evas_Object 
*obj);
 
 static Eina_Bool _x11_elm_cnp_init   (void);
-static Eina_Bool _x11_elm_cnp_selection_set  (Evas_Object *obj, 
Elm_Sel_Type selection, Elm_Sel_Format format, const void *selbuf, size_t 
buflen);
+static Eina_Bool _x11_elm_cnp_selection_set  (Ecore_X_Window xwin, 
Evas_Object *obj, Elm_Sel_Type selection, Elm_Sel_Format format, const void 
*selbuf, size_t buflen);
 static void  _x11_elm_cnp_selection_loss_callback_set(Evas_Object *obj 
EINA_UNUSED, Elm_Sel_Type selection, Elm_Selection_Loss_Cb func, const void 
*data);
 static Eina_Bool _x11_elm_object_cnp_selection_clear (Evas_Object *obj, 
Elm_Sel_Type selection);
-static Eina_Bool _x11_elm_cnp_selection_get  (Evas_Object *obj, 
Elm_Sel_Type selection, Elm_Sel_Format format, Elm_Drop_Cb datacb, void *udata);
+static Eina_Bool _x11_elm_cnp_selection_get  (Ecore_X_Window xwin, 
Evas_Object *obj, Elm_Sel_Type selection, Elm_Sel_Format format, Elm_Drop_Cb 
datacb, void *udata);
 static Eina_Bool _x11_elm_drop_target_add(Evas_Object *obj, 
Elm_Sel_Format format,
   Elm_Drag_State 
entercb, void *enterdata,
   Elm_Drag_State 
leavecb, void *leavedata,
@@ -1726,9 +1726,8 @@ _x11_elm_cnp_init(void)
 }
 
 static Eina_Bool
-_x11_elm_cnp_selection_set(Evas_Object *obj, Elm_Sel_Type selection, 
Elm_Sel_Format format, const void *selbuf, size_t buflen)
+_x11_elm_cnp_selection_set(Ecore_X_Window xwin, Evas_Object *obj, Elm_Sel_Type 
selection, Elm_Sel_Format format, const void *selbuf, size_t buflen)
 {
-   Ecore_X_Window xwin = _x11_elm_widget_xwin_get(obj);
X11_Cnp_Selection *sel;
 
_x11_elm_cnp_init();
@@ -1819,11 +1818,10 @@ _x11_elm_object_cnp_selection_clear(Evas_Object *obj, 
Elm_Sel_Type selection)
 }
 
 static Eina_Bool
-_x11_elm_cnp_selection_get(Evas_Object *obj, Elm_Sel_Type selection,
+_x11_elm_cnp_selection_get(Ecore_X_Window xwin, Evas_Object *obj, Elm_Sel_Type 
selection,
Elm_Sel_Format format, Elm_Drop_Cb datacb,
void *udata)
 {
-   Ecore_X_Window xwin = _x11_elm_widget_xwin_get(obj);
X11_Cnp_Selection *sel;
 
_x11_elm_cnp_init();
@@ -3619,8 +3617,9 @@ elm_cnp_selection_set(Evas_Object *obj, Elm_Sel_Type 
selection,
if (selection  ELM_SEL_TYPE_CLIPBOARD) return EINA_FALSE;
if (!_elm_cnp_init_count) _elm_cnp_init();
 #ifdef HAVE_ELEMENTARY_X
-   if (_x11_elm_widget_xwin_get(obj))
- return _x11_elm_cnp_selection_set(obj, selection, format, selbuf, buflen);
+   Ecore_X_Window xwin = _x11_elm_widget_xwin_get(obj);
+   if (xwin)
+ return _x11_elm_cnp_selection_set(xwin, obj, selection, format, selbuf, 
buflen);
 #endif
 #ifdef HAVE_ELEMENTARY_WAYLAND
if (elm_win_wl_window_get(obj))
@@ -3670,8 +3669,9 @@ elm_cnp_selection_get(Evas_Object *obj, Elm_Sel_Type 
selection,
if (selection  ELM_SEL_TYPE_CLIPBOARD) return EINA_FALSE;
if (!_elm_cnp_init_count) _elm_cnp_init();
 #ifdef HAVE_ELEMENTARY_X
-   if (_x11_elm_widget_xwin_get(obj))
- return _x11_elm_cnp_selection_get(obj, selection, format, datacb, udata);
+   Ecore_X_Window xwin = _x11_elm_widget_xwin_get(obj);
+   if (xwin)
+ return _x11_elm_cnp_selection_get(xwin, obj, selection, format, datacb, 
udata);
 #endif
 #ifdef HAVE_ELEMENTARY_WAYLAND
if (elm_win_wl_window_get(obj))

-- 




[EGIT] [core/elementary] master 01/01: fileselector_button, fileselector_entry: Updated FOO_inwin_mode_set() documentation.

2014-01-18 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 49f93324f97586438e4e327d779852591c9f48a6
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Sun Jan 19 15:31:20 2014 +0900

fileselector_button, fileselector_entry: Updated FOO_inwin_mode_set() 
documentation.

fileselector_button initialize inwin mode using the configuration.
Fixed wrong information about default value in API documentation.

In addition, fixed test_fileselector_button.cpp not to show wrong 
information at initial time.
---
 src/bin/test_fileselector_button.c   | 2 +-
 src/lib/elc_fileselector_button_legacy.h | 3 ++-
 src/lib/elc_fileselector_entry_legacy.h  | 3 ++-
 3 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/bin/test_fileselector_button.c 
b/src/bin/test_fileselector_button.c
index b7cde88..cba4462 100644
--- a/src/bin/test_fileselector_button.c
+++ b/src/bin/test_fileselector_button.c
@@ -212,7 +212,7 @@ test_fileselector_button(void *data   EINA_UNUSED,
bt = elm_check_add(win);
elm_object_style_set(bt, toggle);
elm_object_text_set(bt, Inwin mode);
-   elm_check_state_set (bt, EINA_TRUE);
+   elm_check_state_set(bt, elm_fileselector_button_inwin_mode_get(fs_bt));
evas_object_smart_callback_add(bt, changed, _inwin_mode_toggle, fs_bt);
elm_box_pack_end(hbox, bt);
evas_object_show(bt);
diff --git a/src/lib/elc_fileselector_button_legacy.h 
b/src/lib/elc_fileselector_button_legacy.h
index 9d80684..4afbef1 100644
--- a/src/lib/elc_fileselector_button_legacy.h
+++ b/src/lib/elc_fileselector_button_legacy.h
@@ -217,7 +217,8 @@ EAPI Eina_Bool   
elm_fileselector_button_is_save_get(const Evas_
 /**
  * Set whether a given file selector button widget's internal file
  * selector will raise an Elementary inner window, instead of a
- * dedicated Elementary window. By default, it won't.
+ * dedicated Elementary window. By default, it depends on the current
+ * profile.
  *
  * @param obj The file selector button widget
  * @param value @c EINA_TRUE to make it use an inner window, @c
diff --git a/src/lib/elc_fileselector_entry_legacy.h 
b/src/lib/elc_fileselector_entry_legacy.h
index e6f2099..475b476 100644
--- a/src/lib/elc_fileselector_entry_legacy.h
+++ b/src/lib/elc_fileselector_entry_legacy.h
@@ -217,7 +217,8 @@ EAPI Eina_Bool   
elm_fileselector_entry_is_save_get(const Evas_O
 /**
  * Set whether a given file selector entry widget's internal file
  * selector will raise an Elementary inner window, instead of a
- * dedicated Elementary window. By default, it won't.
+ * dedicated Elementary window. By default, it depends on the current
+ * profile.
  *
  * @param obj The file selector entry widget
  * @param value @c EINA_TRUE to make it use an inner window, @c

-- 




[EGIT] [core/elementary] master 01/01: datetime: Delay elm_layout_theme_set until memebers are initialized in _smart_add

2014-01-16 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 28609ee56e8b2d1a8a693bac1f512ea805a146b9
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Thu Jan 16 22:44:07 2014 +0900

datetime: Delay elm_layout_theme_set until memebers are initialized in 
_smart_add

There are some warnings in elm_object_disabled_set() because 
elm_layout_theme_set()
calls _elm_datetime_smart_disable() before creating file-item_obj.
This patch refactors _smart_add to initialize file-item_obj before calling
elm_layout_theme_set().
---
 src/lib/elm_datetime.c | 44 +---
 1 file changed, 25 insertions(+), 19 deletions(-)

diff --git a/src/lib/elm_datetime.c b/src/lib/elm_datetime.c
index 42d6c80..008b687 100644
--- a/src/lib/elm_datetime.c
+++ b/src/lib/elm_datetime.c
@@ -803,34 +803,40 @@ _elm_datetime_smart_add(Eo *obj, void *_pd, va_list *list 
EINA_UNUSED)
eo_do_super(obj, MY_CLASS, evas_obj_smart_add());
elm_widget_sub_object_parent_add(obj);
 
-   if (!elm_layout_theme_set(obj, datetime, base,
- elm_widget_style_get(obj)))
- CRI(Failed to set layout!);
-
// module - initialise module for datetime
if (!dt_mod) dt_mod = _dt_mod_init();
-   if ((dt_mod)  (dt_mod-obj_hook)) priv-mod_data = dt_mod-obj_hook(obj);
-
-   // update module data
-   if (priv-mod_data)
+   if (dt_mod)
  {
-priv-mod_data-base = obj;
-priv-mod_data-field_limit_get = _field_limit_get;
-priv-mod_data-field_format_get = _field_format_get;
- }
+if (dt_mod-obj_hook)
+  {
+ priv-mod_data = dt_mod-obj_hook(obj);
 
-   _field_list_init(obj);
-   _reload_format(obj);
+ // update module data
+ if (priv-mod_data)
+   {
+  priv-mod_data-base = obj;
+  priv-mod_data-field_limit_get = _field_limit_get;
+  priv-mod_data-field_format_get = _field_format_get;
+   }
+  }
 
-   if ((dt_mod)  (dt_mod-field_create))
- {
-for (idx = 0; idx  ELM_DATETIME_TYPE_COUNT; idx++)
+if (dt_mod-field_create)
   {
- field = priv-field_list + idx;
- field-item_obj = dt_mod-field_create(priv-mod_data, idx);
+ for (idx = 0; idx  ELM_DATETIME_TYPE_COUNT; idx++)
+   {
+  field = priv-field_list + idx;
+  field-item_obj = dt_mod-field_create(priv-mod_data, idx);
+   }
   }
  }
 
+   if (!elm_layout_theme_set(obj, datetime, base,
+ elm_widget_style_get(obj)))
+ CRI(Failed to set layout!);
+
+   _field_list_init(obj);
+   _reload_format(obj);
+
_field_list_arrange(obj);
 
elm_widget_can_focus_set(obj, EINA_TRUE);

-- 




[EGIT] [core/elementary] master 01/01: test_flipselector: Fixed that buttons use wrong flipselector which is not intended.

2014-01-16 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit af2170a8ec53a9e56b54493c2396517864cce474
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Thu Jan 16 23:48:36 2014 +0900

test_flipselector: Fixed that buttons use wrong flipselector which is not 
intended.

Since e2db48abe, disabled flipselector was passed button callbacks.
So, buttons just print warnings instead of the intended behavior.
---
 src/bin/test_flipselector.c | 14 +++---
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/src/bin/test_flipselector.c b/src/bin/test_flipselector.c
index 71cf48d..62a67cf 100644
--- a/src/bin/test_flipselector.c
+++ b/src/bin/test_flipselector.c
@@ -81,7 +81,7 @@ test_flipselector(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *ev
 {
char buf[8];
unsigned int i;
-   Evas_Object *win, *bx, *fp, *bt, *bx2, *sl;
+   Evas_Object *win, *bx, *fp, *fpd, *bt, *bx2, *sl;
Elm_Object_Item *it;
static const char *lbl[] = {
 Elementary,
@@ -148,12 +148,12 @@ test_flipselector(void *data EINA_UNUSED, Evas_Object 
*obj EINA_UNUSED, void *ev
elm_box_pack_end(bx2, bt);
evas_object_show(bt);
 
-   fp = elm_flipselector_add(bx);
-   evas_object_size_hint_weight_set(fp, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-   elm_flipselector_item_append(fp, disabled, NULL, NULL);
-   elm_object_disabled_set(fp, EINA_TRUE);
-   elm_box_pack_end(bx, fp);
-   evas_object_show(fp);
+   fpd = elm_flipselector_add(bx);
+   evas_object_size_hint_weight_set(fpd, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   elm_flipselector_item_append(fpd, disabled, NULL, NULL);
+   elm_object_disabled_set(fpd, EINA_TRUE);
+   elm_box_pack_end(bx, fpd);
+   evas_object_show(fpd);
 
sl = elm_slider_add(bx);
elm_object_text_set(sl, Flip Interval:);

-- 




[EGIT] [core/elementary] master 01/01: flipselector: Remove unused variable of Elm_Flipselector_Item

2014-01-16 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 686b7586eb9045bfd72f2b0633b8c687e9cc876e
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Fri Jan 17 00:19:49 2014 +0900

flipselector: Remove unused variable of Elm_Flipselector_Item

The data for callback is stored in Widget's data variable.
So, Elm_Flipselector_Item's data variable is not needed.
---
 src/lib/elm_widget_flipselector.h | 1 -
 1 file changed, 1 deletion(-)

diff --git a/src/lib/elm_widget_flipselector.h 
b/src/lib/elm_widget_flipselector.h
index 2512f59..bc640b2 100644
--- a/src/lib/elm_widget_flipselector.h
+++ b/src/lib/elm_widget_flipselector.h
@@ -42,7 +42,6 @@ struct _Elm_Flipselector_Item
 
const char   *label;
Evas_Smart_Cb func;
-   void *data;
int   deleted : 1;
 };
 

-- 




[EGIT] [core/elementary] master 01/01: fileselector_entry: Delay elm_layout_theme_set until memebers are initialized in _smart_add

2014-01-15 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit e21e2aec2d8c1cf7a778d7a3d6977084c136af00
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Wed Jan 15 21:44:21 2014 +0900

fileselector_entry: Delay elm_layout_theme_set until memebers are 
initialized in _smart_add

Summary:
elm_layout_theme_set can call some methods like _smart_disable and there 
are some warnings
when these methods manipulate some member variabls which are not 
initialized yet.
It's because elm_layout_theme_set is called too early in _smart_add.

Spotted while digging warnings after rELM4c3e23de9e46

Reviewers: seoz, raster

Reviewed By: seoz

Differential Revision: https://phab.enlightenment.org/D459
---
 src/lib/elc_fileselector_entry.c | 15 +--
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/src/lib/elc_fileselector_entry.c b/src/lib/elc_fileselector_entry.c
index fcf0800..3d93712 100644
--- a/src/lib/elc_fileselector_entry.c
+++ b/src/lib/elc_fileselector_entry.c
@@ -349,15 +349,10 @@ _elm_fileselector_entry_smart_add(Eo *obj, void *_pd, 
va_list *list EINA_UNUSED)
eo_do_super(obj, MY_CLASS, evas_obj_smart_add());
elm_widget_sub_object_parent_add(obj);
 
-   if (!elm_layout_theme_set
-   (obj, fileselector_entry, base, elm_widget_style_get(obj)))
- CRI(Failed to set layout!);
-
priv-button = elm_fileselector_button_add(obj);
elm_widget_mirrored_automatic_set(priv-button, EINA_FALSE);
elm_widget_style_set(priv-button, fileselector_entry/default);
 
-   elm_layout_content_set(obj, elm.swallow.button, priv-button);
elm_fileselector_button_expandable_set
  (priv-button, _elm_config-fileselector_expand_enable);
 
@@ -374,7 +369,6 @@ _elm_fileselector_entry_smart_add(Eo *obj, void *_pd, 
va_list *list EINA_UNUSED)
elm_widget_style_set(priv-entry, fileselector_entry/default);
elm_entry_single_line_set(priv-entry, EINA_TRUE);
elm_entry_editable_set(priv-entry, EINA_TRUE);
-   elm_layout_content_set(obj, elm.swallow.entry, priv-entry);
 
 #define SIG_FWD(name) \
   evas_object_smart_callback_add(priv-entry, SIG_##name, _##name##_fwd, obj)
@@ -391,6 +385,15 @@ _elm_fileselector_entry_smart_add(Eo *obj, void *_pd, 
va_list *list EINA_UNUSED)
SIG_FWD(SELECTION_CUT);
 #undef SIG_FWD
 
+   if (!elm_layout_theme_set
+   (obj, fileselector_entry, base, elm_widget_style_get(obj)))
+ CRI(Failed to set layout!);
+   else
+ {
+elm_layout_content_set(obj, elm.swallow.button, priv-button);
+elm_layout_content_set(obj, elm.swallow.entry, priv-entry);
+ }
+
elm_widget_can_focus_set(obj, EINA_FALSE);
 
_mirrored_set(obj, elm_widget_mirrored_get(obj));

-- 




[EGIT] [core/elementary] master 01/01: fileselector_entry: Removed _mirrored_set(), one line local function

2014-01-15 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 421e368bb44061d9dfe0e1e83b700af5ec5babaa
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Wed Jan 15 21:58:07 2014 +0900

fileselector_entry: Removed _mirrored_set(), one line local function

Small refactoring.
It is unnecessary one line function which just calls 
elm_widget_mirrored_set.
---
 src/lib/elc_fileselector_entry.c | 13 ++---
 1 file changed, 2 insertions(+), 11 deletions(-)

diff --git a/src/lib/elc_fileselector_entry.c b/src/lib/elc_fileselector_entry.c
index 3d93712..a5f88e0 100644
--- a/src/lib/elc_fileselector_entry.c
+++ b/src/lib/elc_fileselector_entry.c
@@ -175,15 +175,6 @@ end:
 }
 
 static void
-_mirrored_set(Evas_Object *obj,
-  Eina_Bool rtl)
-{
-   ELM_FILESELECTOR_ENTRY_DATA_GET(obj, sd);
-
-   elm_widget_mirrored_set(sd-button, rtl);
-}
-
-static void
 _elm_fileselector_entry_smart_theme(Eo *obj, void *_pd, va_list *list)
 {
const char *style;
@@ -201,7 +192,7 @@ _elm_fileselector_entry_smart_theme(Eo *obj, void *_pd, 
va_list *list)
 
style = elm_widget_style_get(obj);
 
-   _mirrored_set(obj, elm_widget_mirrored_get(obj));
+   elm_widget_mirrored_set(sd-button, elm_widget_mirrored_get(obj));
 
if (elm_object_disabled_get(obj))
  elm_layout_signal_emit(obj, elm,state,disabled, elm);
@@ -351,6 +342,7 @@ _elm_fileselector_entry_smart_add(Eo *obj, void *_pd, 
va_list *list EINA_UNUSED)
 
priv-button = elm_fileselector_button_add(obj);
elm_widget_mirrored_automatic_set(priv-button, EINA_FALSE);
+   elm_widget_mirrored_set(priv-button, elm_widget_mirrored_get(obj));
elm_widget_style_set(priv-button, fileselector_entry/default);
 
elm_fileselector_button_expandable_set
@@ -396,7 +388,6 @@ _elm_fileselector_entry_smart_add(Eo *obj, void *_pd, 
va_list *list EINA_UNUSED)
 
elm_widget_can_focus_set(obj, EINA_FALSE);
 
-   _mirrored_set(obj, elm_widget_mirrored_get(obj));
elm_layout_sizing_eval(obj);
 }
 

-- 




[EGIT] [core/elementary] master 01/02: panel: Delay elm_layout_theme_set until memebers are initialized in _smart_add

2014-01-15 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit ec698973246a9d6f9428ff0988fdff88627192c5
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Thu Jan 16 04:02:11 2014 +0900

panel: Delay elm_layout_theme_set until memebers are initialized in 
_smart_add

elm_layout_theme_set can call some methods like _elm_panel_smart_theme and 
there are some warnings
when these methods manipulate some member variabls which are not 
initialized yet.
It's because elm_layout_theme_set is called too early in _smart_add.

Spotted while digging warnings after rELM4c3e23de9e46
---
 src/lib/elm_panel.c | 28 
 1 file changed, 16 insertions(+), 12 deletions(-)

diff --git a/src/lib/elm_panel.c b/src/lib/elm_panel.c
index 82b2cac..e856a94 100644
--- a/src/lib/elm_panel.c
+++ b/src/lib/elm_panel.c
@@ -359,16 +359,11 @@ _elm_panel_smart_add(Eo *obj, void *_pd, va_list *list 
EINA_UNUSED)
elm_widget_sub_object_parent_add(obj);
elm_widget_can_focus_set(obj, EINA_TRUE);
 
-   /* just to bootstrap and have theme hook to work */
-   if (!elm_layout_theme_set(obj, panel, top, elm_widget_style_get(obj)))
- CRI(Failed to set layout!);
-
eo_do(obj, elm_wdg_theme(NULL));
 
priv-bx = evas_object_box_add(evas_object_evas_get(obj));
evas_object_size_hint_align_set(priv-bx, 0.5, 0.5);
evas_object_box_layout_set(priv-bx, _box_layout_cb, priv, NULL);
-   elm_layout_content_set(obj, elm.swallow.content, priv-bx);
evas_object_show(priv-bx);
 
elm_layout_signal_callback_add
@@ -379,16 +374,25 @@ _elm_panel_smart_add(Eo *obj, void *_pd, va_list *list 
EINA_UNUSED)
priv-event = evas_object_rectangle_add(evas_object_evas_get(obj));
evas_object_color_set(priv-event, 0, 0, 0, 0);
evas_object_pass_events_set(priv-event, EINA_TRUE);
-   if (edje_object_part_exists
-   (wd-resize_obj, elm.swallow.event))
+   elm_widget_sub_object_add(obj, priv-event);
+
+   /* just to bootstrap and have theme hook to work */
+   if (!elm_layout_theme_set(obj, panel, top, elm_widget_style_get(obj)))
+ CRI(Failed to set layout!);
+   else
  {
-Evas_Coord minw = 0, minh = 0;
+elm_layout_content_set(obj, elm.swallow.content, priv-bx);
 
-elm_coords_finger_size_adjust(1, minw, 1, minh);
-evas_object_size_hint_min_set(priv-event, minw, minh);
-elm_layout_content_set(obj, elm.swallow.event, priv-event);
+if (edje_object_part_exists
+(wd-resize_obj, elm.swallow.event))
+  {
+ Evas_Coord minw = 0, minh = 0;
+
+ elm_coords_finger_size_adjust(1, minw, 1, minh);
+ evas_object_size_hint_min_set(priv-event, minw, minh);
+ elm_layout_content_set(obj, elm.swallow.event, priv-event);
+  }
  }
-   elm_widget_sub_object_add(obj, priv-event);
 
elm_layout_sizing_eval(obj);
 }

-- 




[EGIT] [core/elementary] master 02/02: panel: Check whether sd-content is NULL in _panel_toggle

2014-01-15 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 1c1f95454c878332cc6aa61b43274f747ad22ae2
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Thu Jan 16 04:10:38 2014 +0900

panel: Check whether sd-content is NULL in _panel_toggle

sd-content can be NULL when elm_panel_hidden_set is called.
---
 src/lib/elm_panel.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elm_panel.c b/src/lib/elm_panel.c
index e856a94..4e43b7d 100644
--- a/src/lib/elm_panel.c
+++ b/src/lib/elm_panel.c
@@ -237,7 +237,7 @@ _panel_toggle(void *data EINA_UNUSED,
 elm_layout_signal_emit(obj, elm,action,hide, elm);
 sd-hidden = EINA_TRUE;
 evas_object_repeat_events_set(obj, EINA_TRUE);
-if (elm_widget_focus_get(sd-content))
+if (sd-content  elm_widget_focus_get(sd-content))
   {
  elm_widget_focused_object_clear(obj);
  elm_widget_focus_steal(obj);

-- 




[EGIT] [core/elementary] master 01/01: panel: Guarantee the integrity of parameter

2014-01-15 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 5aa098c257b1538b1c6a5f5f2a24c4e1d6ce3f59
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Thu Jan 16 04:27:47 2014 +0900

panel: Guarantee the integrity of parameter

- Check whether ret is NULL.
- Guarantee hidden variable is only EINA_TRUE or EINA_FALSE.
---
 src/lib/elm_panel.c | 8 +---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/lib/elm_panel.c b/src/lib/elm_panel.c
index 4e43b7d..af9672b 100644
--- a/src/lib/elm_panel.c
+++ b/src/lib/elm_panel.c
@@ -313,6 +313,8 @@ _elm_panel_smart_content_get(Eo *obj, void *_pd, va_list 
*list)
Elm_Panel_Smart_Data *sd = _pd;
const char *part = va_arg(*list, const char *);
Evas_Object **ret = va_arg(*list, Evas_Object **);
+   if (!ret) return;
+
*ret = NULL;
 
if (part  strcmp(part, default))
@@ -492,7 +494,7 @@ _orient_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list)
Elm_Panel_Orient *ret = va_arg(*list, Elm_Panel_Orient *);
Elm_Panel_Smart_Data *sd = _pd;
 
-   *ret = sd-orient;
+   if (ret) *ret = sd-orient;
 }
 
 EAPI void
@@ -509,7 +511,7 @@ _hidden_set(Eo *obj, void *_pd, va_list *list)
Eina_Bool hidden = va_arg(*list, int);
Elm_Panel_Smart_Data *sd = _pd;
 
-   if (sd-hidden == hidden) return;
+   if (sd-hidden == !!hidden) return;
 
_panel_toggle(NULL, obj, NULL, NULL);
 }
@@ -529,7 +531,7 @@ _hidden_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list)
Eina_Bool *ret = va_arg(*list, Eina_Bool *);
Elm_Panel_Smart_Data *sd = _pd;
 
-   *ret = sd-hidden;
+   if (ret) *ret = sd-hidden;
 }
 
 EAPI void

-- 




[EGIT] [core/elementary] master 01/01: fileselector: Fix that folder only mode shows only files instead of only folders

2014-01-14 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 690fd049268d9e3d89cc2f473d0aee1b29ca9abb
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Tue Jan 14 18:11:30 2014 +0900

fileselector: Fix that folder only mode shows only files instead of only 
folders

Issues: T756

It's regression of rELM4693736bb028
---
 src/lib/elc_fileselector.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elc_fileselector.c b/src/lib/elc_fileselector.c
index cc7f602..82d0365 100644
--- a/src/lib/elc_fileselector.c
+++ b/src/lib/elc_fileselector.c
@@ -336,7 +336,7 @@ _ls_filter_cb(void *data,
if (info-type == EINA_FILE_DIR)
  dir = EINA_TRUE;
 
-   if (lreq-sd-only_folder  dir)
+   if (lreq-sd-only_folder  !dir)
  return EINA_FALSE;
 
cf = lreq-sd-current_filter;

-- 




Re: [E-devel] [EGIT] [core/elementary] master 01/01: Widget: Removed !obj checks from ELM_WIDGET_DATA_GET_OR_RETURN and ELM_WIDGET_CHECK

2014-01-14 Thread ryuan Choi
Wow, amazing.

I will try to fix them if it is correct approach.(I think so)

Thank you so much about good feedback.

Best Regards,
Ryuan Choi



2014/1/14 daniel.za...@samsung.com daniel.za...@samsung.com

 We finally found one!


 On 01/14/2014 11:14 AM, Yakov Goldberg wrote:

 Hi Ryuan,
 we (Jack 'boss' Danielz) and I found the usecase when it print's
 errors.

 Try to add item to toolbar with NULL icon.
 I believe it will also fail, if you add any element with NULL icon (or
 maybe NULL content)

 it = elm_toolbar_item_append(toolbar, NULL, Toolbar item, NULL, NULL);
 elm_object_item_disabled_set(it, EINA_TRUE);

 Yakov

 On 01/13/2014 08:39 PM, ryuan Choi wrote:

 Sure, I checked several items of elementary_test (not all). They don't
 complain to me at least in my laptop.
 It looks fixed.



 2014/1/13 daniel.za...@samsung.com daniel.za...@samsung.com

 I don't have an example just here now. Did you check tests of
 elementary_test?
 I just remember that there were a lot of prints. Maybe it has been
 fixed.


 On 01/13/2014 03:32 PM, ryuan Choi wrote:

 Weird,

 I tested little bit and ELM_WIDGET_CHECK with null object just printed
 only one line complaint.
 I thought that null object is wrong case which we should fix (or blame)

Could you let me know more information or reproduce step to get a
 lot of
 errors to ensure that my reading is wrong.

Best Regards,
 Ryuan Choi



 2014/1/13 daniel.za...@samsung.com daniel.za...@samsung.com

  Hi Ryuan,

 The problem here is that now you will have a lot of errors from eo_isa
 and his brother. At least, this check was helping on this.

 JackDanielZ, alias Daniel the 3rd


 On 01/13/2014 02:18 PM, Ryuan Choi wrote:

  ryuan pushed a commit to branch master.


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

 commit 4c3e23de9e46fd89672ab657f5da153a3c26a029
 Author: Ryuan Choi ryuan.c...@gmail.com
 Date:   Mon Jan 13 21:11:04 2014 +0900

Widget: Removed !obj checks from ELM_WIDGET_DATA_GET_OR_RETURN
 and
 ELM_WIDGET_CHECK
 eo_data_scope_get and eo_isa returns NULL with complaint
 when
 NULL is passed.
So, Removed unnecessary !obj check routine.
 In addition, adopt EINA_UNLIKELY for these macros and fix
 indentation.
 ---
 src/lib/elm_widget.h | 16 +++-
 1 file changed, 7 insertions(+), 9 deletions(-)

 diff --git a/src/lib/elm_widget.h b/src/lib/elm_widget.h
 index f7170f6..ded37bc 100644
 --- a/src/lib/elm_widget.h
 +++ b/src/lib/elm_widget.h
 @@ -801,19 +801,17 @@ EAPI void elm_widget_tree_dump(const
 Evas_Object *top);
 EAPI void elm_widget_tree_dot_dump(const Evas_Object
 *top,
 FILE *output);
   #define ELM_WIDGET_DATA_GET_OR_RETURN(o, ptr, ...)   \
 -  Elm_Widget_Smart_Data *ptr;   \
 -  ptr = (o ?\
 -eo_data_scope_get(o, ELM_OBJ_WIDGET_CLASS) :\
 -NULL);  \
 -  if (!ptr) \
 +  Elm_Widget_Smart_Data *ptr;\
 +  ptr = eo_data_scope_get(o, ELM_OBJ_WIDGET_CLASS);  \
 +  if (EINA_UNLIKELY(!ptr))   \
 {\
 -   CRI(no widget data for object %p (%s), \
 -o, evas_object_type_get(o));\
 +   CRI(no widget data for object %p (%s),  \
 +   o, evas_object_type_get(o));  \
return __VA_ARGS__;   \
 }
 -#define ELM_WIDGET_CHECK(obj)   \
 -  if (!obj || !eo_isa((obj), ELM_OBJ_WIDGET_CLASS)) \
 +#define ELM_WIDGET_CHECK(obj)  \
 +  if (EINA_UNLIKELY(!eo_isa((obj), ELM_OBJ_WIDGET_CLASS))) \
 return
   /**


  
 --
 CenturyLink Cloud: The Leader in Enterprise Cloud Services.
 Learn Why More Businesses Are Choosing CenturyLink Cloud For
 Critical Workloads, Development Environments  Everything In Between.
 Get a Quote or Start a Free Trial Today.
 http://pubads.g.doubleclick.net/gampad/clk?id=119420431;
 iu=/4140/ostg.clktrk
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


 
 --
 CenturyLink Cloud: The Leader in Enterprise Cloud Services.
 Learn Why More Businesses Are Choosing CenturyLink Cloud For
 Critical Workloads, Development Environments  Everything In Between.
 Get a Quote or Start a Free Trial Today.
 http://pubads.g.doubleclick.net/gampad/clk?id=119420431;
 iu=/4140/ostg.clktrk
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net

[EGIT] [core/elementary] master 01/01: toolbar: Check whether icon is null before sending signal

2014-01-14 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 4c8677166163316468da56c53b203ac572085c40
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Tue Jan 14 21:32:28 2014 +0900

toolbar: Check whether icon is null before sending signal

There are warnings when icon is null since rELM4c3e23de9e46.
---
 src/lib/elm_toolbar.c | 45 +++--
 1 file changed, 27 insertions(+), 18 deletions(-)

diff --git a/src/lib/elm_toolbar.c b/src/lib/elm_toolbar.c
index fbda072..ac22055 100644
--- a/src/lib/elm_toolbar.c
+++ b/src/lib/elm_toolbar.c
@@ -139,7 +139,8 @@ _item_unselect(Elm_Toolbar_Item *item)
item-selected = EINA_FALSE;
sd-selected_item = NULL;
edje_object_signal_emit(VIEW(item), elm,state,unselected, elm);
-   elm_widget_signal_emit(item-icon, elm,state,unselected, elm);
+   if (item-icon)
+ elm_widget_signal_emit(item-icon, elm,state,unselected, elm);
 }
 
 static void
@@ -744,16 +745,16 @@ _item_disable_hook(Elm_Object_Item *it)
 {
Elm_Toolbar_Item *toolbar_it = (Elm_Toolbar_Item *)it;
 
+   const char* emission;
+
if (elm_widget_item_disabled_get(toolbar_it))
- {
-edje_object_signal_emit(VIEW(toolbar_it), elm,state,disabled, elm);
-elm_widget_signal_emit(toolbar_it-icon, elm,state,disabled, elm);
- }
+ emission = elm,state,disabled;
else
- {
-edje_object_signal_emit(VIEW(toolbar_it), elm,state,enabled, elm);
-elm_widget_signal_emit(toolbar_it-icon, elm,state,enabled, elm);
- }
+ emission = elm,state,enabled;
+
+   edje_object_signal_emit(VIEW(toolbar_it), emission, elm);
+   if (toolbar_it-icon)
+ edje_object_signal_emit(toolbar_it-icon, emission, elm);
 
_resize_cb(WIDGET(toolbar_it), NULL, NULL, NULL);
 }
@@ -879,7 +880,8 @@ _item_select(Elm_Toolbar_Item *it)
 }
}
  edje_object_signal_emit(VIEW(it), elm,state,selected, elm);
- elm_widget_signal_emit(it-icon, elm,state,selected, elm);
+ if (it-icon)
+   elm_widget_signal_emit(it-icon, elm,state,selected, elm);
  _item_show(it);
   }
  }
@@ -960,12 +962,14 @@ _item_theme_hook(Evas_Object *obj,
 if (it-selected)
   {
  edje_object_signal_emit(view, elm,state,selected, elm);
- elm_widget_signal_emit(it-icon, elm,state,selected, elm);
+ if (it-icon)
+   elm_widget_signal_emit(it-icon, elm,state,selected, elm);
   }
 if (elm_widget_item_disabled_get(it))
   {
  edje_object_signal_emit(view, elm,state,disabled, elm);
- elm_widget_signal_emit(it-icon, elm,state,disabled, elm);
+ if (it-icon)
+   elm_widget_signal_emit(it-icon, elm,state,disabled, elm);
   }
 if (it-icon)
   {
@@ -1891,7 +1895,8 @@ _mouse_in_cb(void *data,
Elm_Toolbar_Item *it = data;
 
edje_object_signal_emit(VIEW(it), elm,state,highlighted, elm);
-   elm_widget_signal_emit(it-icon, elm,state,highlighted, elm);
+   if (it-icon)
+ elm_widget_signal_emit(it-icon, elm,state,highlighted, elm);
 }
 
 static void
@@ -1903,7 +1908,8 @@ _mouse_out_cb(void *data,
Elm_Toolbar_Item *it = data;
 
edje_object_signal_emit(VIEW(it), elm,state,unhighlighted, elm);
-   elm_widget_signal_emit(it-icon, elm,state,unhighlighted, elm);
+   if (it-icon)
+ elm_widget_signal_emit(it-icon, elm,state,unhighlighted, elm);
 }
 
 static void
@@ -3655,10 +3661,13 @@ elm_toolbar_item_state_set(Elm_Object_Item *it,
   (obj, item, it_state-icon, it_state-icon_str,
   sd-icon_size, elm,state,icon_set,backward);
  }
-   if (elm_widget_item_disabled_get(item))
- elm_widget_signal_emit(item-icon, elm,state,disabled, elm);
-   else
- elm_widget_signal_emit(item-icon, elm,state,enabled, elm);
+   if (item-icon)
+ {
+if (elm_widget_item_disabled_get(item))
+  elm_widget_signal_emit(item-icon, elm,state,disabled, elm);
+else
+  elm_widget_signal_emit(item-icon, elm,state,enabled, elm);
+ }
 
item-current_state = next_state;
 

-- 




[EGIT] [core/elementary] master 02/02: genlist: Check return value out of the loop in _realized_items_get

2014-01-13 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 2ab2d561d4a5e4ad129fce7da3c519d5d2dec877
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Fri Jan 10 21:05:00 2014 +0900

genlist: Check return value out of the loop in _realized_items_get
---
 src/lib/elm_genlist.c | 6 --
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/lib/elm_genlist.c b/src/lib/elm_genlist.c
index f7d9788..b6d0be3 100644
--- a/src/lib/elm_genlist.c
+++ b/src/lib/elm_genlist.c
@@ -5952,7 +5952,9 @@ _realized_items_get(Eo *obj EINA_UNUSED, void *_pd, 
va_list *list)
 
Eina_List **ret = va_arg(*list, Eina_List **);
Elm_Genlist_Smart_Data *sd = _pd;
-   if (ret) *ret = NULL;
+   if (!ret) return;
+
+   *ret = NULL;
 
EINA_INLIST_FOREACH(sd-blocks, itb)
  {
@@ -5964,7 +5966,7 @@ _realized_items_get(Eo *obj EINA_UNUSED, void *_pd, 
va_list *list)
  done = EINA_TRUE;
  EINA_LIST_FOREACH(itb-items, l, it)
{
-  if (it-realized  ret) *ret = eina_list_append(*ret, it);
+  if (it-realized) *ret = eina_list_append(*ret, it);
}
   }
 else

-- 




[EGIT] [core/elementary] master 01/02: fileselector: Fix that the enter key does not navigate directory

2014-01-13 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 3dd195f4b28a1d621c4d3bf90b8f5ef2e487c473
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Fri Jan 10 08:24:22 2014 +0900

fileselector: Fix that the enter key does not navigate directory

Moved the navigation logic from callback of clicked,double to callback of 
activated.
---
 src/lib/elc_fileselector.c | 37 ++---
 1 file changed, 10 insertions(+), 27 deletions(-)

diff --git a/src/lib/elc_fileselector.c b/src/lib/elc_fileselector.c
index fe40d50..cc7f602 100644
--- a/src/lib/elc_fileselector.c
+++ b/src/lib/elc_fileselector.c
@@ -685,9 +685,9 @@ _populate_do(void *data)
 }
 
 static void
-_on_item_double_clicked(void *data,
-  Evas_Object *obj EINA_UNUSED,
-  void *event_info)
+_on_item_activated(void *data,
+   Evas_Object *obj EINA_UNUSED,
+   void *event_info)
 {
//This event_info could be a list or gengrid item
Elm_Object_Item *it = event_info;
@@ -698,13 +698,17 @@ _on_item_double_clicked(void *data,
 
ELM_FILESELECTOR_DATA_GET(data, sd);
 
-   if (!sd-double_tap_navigation) return;
-
path = elm_object_item_data_get(it);
if (!path) return;
 
is_dir = ecore_file_is_dir(path);
-   if (!is_dir) return;
+   if (!is_dir)
+ {
+evas_object_smart_callback_call(data, SIG_ACTIVATED, (void *)path);
+return;
+ }
+
+   if (!sd-double_tap_navigation) return;
 
sdata = malloc(sizeof(*sdata));
if (!sdata) return;
@@ -721,25 +725,6 @@ _on_item_double_clicked(void *data,
 }
 
 static void
-_on_item_activated(void *data,
-   Evas_Object *obj EINA_UNUSED,
-   void *event_info)
-{
-   //This event_info could be a list or gengrid item
-   Elm_Object_Item *it = event_info;
-   const char *path;
-   Eina_Bool is_dir;
-
-   path = elm_object_item_data_get(it);
-   if (!path) return;
-
-   is_dir = ecore_file_is_dir(path);
-   if (is_dir) return;
-
-   evas_object_smart_callback_call(data, SIG_ACTIVATED, (void *)path);
-}
-
-static void
 _clear_selections(Elm_Fileselector_Smart_Data *sd, Elm_Object_Item 
*last_selected)
 {
Eina_List *items;
@@ -1132,7 +1117,6 @@ _files_list_add(Evas_Object *obj)
 
evas_object_smart_callback_add(li, selected, _on_item_selected, obj);
evas_object_smart_callback_add(li, unselected, _on_item_unselected, obj);
-   evas_object_smart_callback_add(li, clicked,double, 
_on_item_double_clicked, obj);
evas_object_smart_callback_add(li, activated, _on_item_activated, obj);
evas_object_smart_callback_add
  (li, expand,request, _on_list_expand_req, obj);
@@ -1165,7 +1149,6 @@ _files_grid_add(Evas_Object *obj)
 
evas_object_smart_callback_add(grid, selected, _on_item_selected, obj);
evas_object_smart_callback_add(grid, unselected, _on_item_unselected, 
obj);
-   evas_object_smart_callback_add(grid, clicked,double, 
_on_item_double_clicked, obj);
evas_object_smart_callback_add(grid, activated, _on_item_activated, obj);
 
elm_widget_sub_object_add(obj, grid);

-- 




[EGIT] [core/elementary] master 01/01: elm_win: Removed EE_ENGINE_COMPARE macro to reduce redundant function calls.

2014-01-13 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 907c7fea266388af63e005f7d19ad83eec27
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Wed Jan 8 09:05:08 2014 +0900

elm_win: Removed EE_ENGINE_COMPARE macro to reduce redundant function calls.

EE_ENGINE_COMPARE reduces typing little bit, but it makes redundant 
function calls
because almost callers call it more than once.
And, there is no way to check whether ecore_evas_engine_name_get is null.

This patch removed EE_ENGINE_COMPARE with small refactoring.
In addition, removed unnecessary check routines from _elm_ee_xwin_get.
---
 src/lib/elm_win.c | 78 +++
 1 file changed, 44 insertions(+), 34 deletions(-)

diff --git a/src/lib/elm_win.c b/src/lib/elm_win.c
index 6c46438..637612a 100644
--- a/src/lib/elm_win.c
+++ b/src/lib/elm_win.c
@@ -54,7 +54,6 @@ static const Elm_Win_Trap *trap = NULL;
 
 #define ENGINE_GET() (_elm_preferred_engine ? _elm_preferred_engine : 
(_elm_config-engine ? _elm_config-engine : ))
 #define ENGINE_COMPARE(name) (!strcmp(ENGINE_GET(), name))
-#define EE_ENGINE_COMPARE(ee, name) (!strcmp(ecore_evas_engine_name_get(ee), 
name))
 
 typedef struct _Elm_Win_Smart_Data Elm_Win_Smart_Data;
 
@@ -1653,31 +1652,24 @@ Ecore_X_Window
 _elm_ee_xwin_get(const Ecore_Evas *ee)
 {
 #ifdef HAVE_ELEMENTARY_X
-   Ecore_X_Window xwin = 0;
-
+   const char *engine_name;
if (!ee) return 0;
-   if (EE_ENGINE_COMPARE(ee, ELM_SOFTWARE_X11))
- {
-if (ee) xwin = ecore_evas_software_x11_window_get(ee);
- }
-   else if (EE_ENGINE_COMPARE(ee, ELM_SOFTWARE_FB) ||
-EE_ENGINE_COMPARE(ee, ELM_SOFTWARE_16_WINCE) ||
-EE_ENGINE_COMPARE(ee, ELM_SOFTWARE_SDL) ||
-EE_ENGINE_COMPARE(ee, ELM_SOFTWARE_16_SDL) ||
-EE_ENGINE_COMPARE(ee, ELM_OPENGL_SDL) ||
-EE_ENGINE_COMPARE(ee, ELM_OPENGL_COCOA))
+
+   engine_name = ecore_evas_engine_name_get(ee);
+   if (EINA_UNLIKELY(!engine_name)) return 0;
+
+   if (!strcmp(engine_name, ELM_SOFTWARE_X11))
  {
+return ecore_evas_software_x11_window_get(ee);
  }
-   else if (EE_ENGINE_COMPARE(ee, ELM_OPENGL_X11))
+   else if (!strcmp(engine_name, ELM_OPENGL_X11))
  {
-if (ee) xwin = ecore_evas_gl_x11_window_get(ee);
+return ecore_evas_gl_x11_window_get(ee);
  }
-   else if (EE_ENGINE_COMPARE(ee, ELM_SOFTWARE_WIN32))
+   else if (!strcmp(engine_name, ELM_SOFTWARE_WIN32))
  {
-if (ee) xwin = (long)ecore_evas_win32_window_get(ee);
+return (long)ecore_evas_win32_window_get(ee);
  }
-   return xwin;
-
 #endif
return 0;
 }
@@ -1694,15 +1686,18 @@ Ecore_Wl_Window *
 _elm_ee_wlwin_get(const Ecore_Evas *ee)
 {
 #ifdef HAVE_ELEMENTARY_WAYLAND
-   Ecore_Wl_Window *win = NULL;
+   const char *engine_name;
 
if (!ee) return NULL;
-   if ((EE_ENGINE_COMPARE(ee, ELM_WAYLAND_SHM)) ||
-   (EE_ENGINE_COMPARE(ee, ELM_WAYLAND_EGL)))
+
+   engine_name = ecore_evas_engine_name_get(ee);
+   if (EINA_UNLIKELY(!engine_name)) return NULL;
+
+   if ((!strcmp(engine_name, ELM_WAYLAND_SHM)) ||
+   (!strcmp(engine_name, ELM_WAYLAND_EGL)))
  {
-if (ee) win = ecore_evas_wayland_window_get(ee);
+return ecore_evas_wayland_window_get(ee);
  }
-   return win;
 #else
(void)ee;
 #endif
@@ -3556,16 +3551,21 @@ _borderless_set(Eo *obj EINA_UNUSED, void *_pd, va_list 
*list)
Eina_Bool borderless = va_arg(*list, int);
Elm_Win_Smart_Data *sd = _pd;
 
+   Eina_Bool need_frame = EINA_FALSE;
+
+   const char *engine_name = ecore_evas_engine_name_get(sd-ee);
+   need_frame = engine_name 
+((!strcmp(engine_name, ELM_WAYLAND_SHM)) ||
+ (!strcmp(engine_name, ELM_WAYLAND_EGL)));
+
if (borderless)
  {
-if (EE_ENGINE_COMPARE(sd-ee, ELM_WAYLAND_SHM) ||
-EE_ENGINE_COMPARE(sd-ee, ELM_WAYLAND_EGL))
+if (need_frame)
   _elm_win_frame_del(sd);
  }
else
  {
-if (EE_ENGINE_COMPARE(sd-ee, ELM_WAYLAND_SHM) ||
-EE_ENGINE_COMPARE(sd-ee, ELM_WAYLAND_EGL))
+if (need_frame)
   _elm_win_frame_add(sd, default);
 
 if (sd-frame_obj)
@@ -3759,18 +3759,23 @@ _fullscreen_set(Eo *obj EINA_UNUSED, void *_pd, va_list 
*list)
  {
 //sd-fullscreen = fullscreen;
 
+Eina_Bool need_frame = EINA_FALSE;
+
+const char *engine_name = ecore_evas_engine_name_get(sd-ee);
+need_frame = engine_name 
+ ((!strcmp(engine_name, ELM_WAYLAND_SHM)) ||
+  (!strcmp(engine_name, ELM_WAYLAND_EGL)));
+
 TRAP(sd, fullscreen_set, fullscreen);
 
 if (fullscreen)
   {
- if (EE_ENGINE_COMPARE(sd-ee, ELM_WAYLAND_SHM) ||
- EE_ENGINE_COMPARE(sd-ee, ELM_WAYLAND_EGL))
+ if (need_frame

[EGIT] [core/elementary] master 01/01: Widget: Removed !obj checks from ELM_WIDGET_DATA_GET_OR_RETURN and ELM_WIDGET_CHECK

2014-01-13 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 4c3e23de9e46fd89672ab657f5da153a3c26a029
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Mon Jan 13 21:11:04 2014 +0900

Widget: Removed !obj checks from ELM_WIDGET_DATA_GET_OR_RETURN and 
ELM_WIDGET_CHECK

eo_data_scope_get and eo_isa returns NULL with complaint when NULL is 
passed.
So, Removed unnecessary !obj check routine.

In addition, adopt EINA_UNLIKELY for these macros and fix indentation.
---
 src/lib/elm_widget.h | 16 +++-
 1 file changed, 7 insertions(+), 9 deletions(-)

diff --git a/src/lib/elm_widget.h b/src/lib/elm_widget.h
index f7170f6..ded37bc 100644
--- a/src/lib/elm_widget.h
+++ b/src/lib/elm_widget.h
@@ -801,19 +801,17 @@ EAPI void elm_widget_tree_dump(const 
Evas_Object *top);
 EAPI void elm_widget_tree_dot_dump(const Evas_Object *top, FILE 
*output);
 
 #define ELM_WIDGET_DATA_GET_OR_RETURN(o, ptr, ...)   \
-  Elm_Widget_Smart_Data *ptr;   \
-  ptr = (o ?\
-eo_data_scope_get(o, ELM_OBJ_WIDGET_CLASS) :\
-NULL);  \
-  if (!ptr) \
+  Elm_Widget_Smart_Data *ptr;\
+  ptr = eo_data_scope_get(o, ELM_OBJ_WIDGET_CLASS);  \
+  if (EINA_UNLIKELY(!ptr))   \
 {\
-   CRI(no widget data for object %p (%s), \
-o, evas_object_type_get(o));\
+   CRI(no widget data for object %p (%s),  \
+   o, evas_object_type_get(o));  \
return __VA_ARGS__;   \
 }
 
-#define ELM_WIDGET_CHECK(obj)   \
-  if (!obj || !eo_isa((obj), ELM_OBJ_WIDGET_CLASS)) \
+#define ELM_WIDGET_CHECK(obj)  \
+  if (EINA_UNLIKELY(!eo_isa((obj), ELM_OBJ_WIDGET_CLASS))) \
 return
 
 /**

-- 




Re: [E-devel] [EGIT] [core/elementary] master 01/01: Widget: Removed !obj checks from ELM_WIDGET_DATA_GET_OR_RETURN and ELM_WIDGET_CHECK

2014-01-13 Thread ryuan Choi
Weird,

I tested little bit and ELM_WIDGET_CHECK with null object just printed only
one line complaint.
I thought that null object is wrong case which we should fix (or blame)

Could you let me know more information or reproduce step to get a lot of
errors to ensure that my reading is wrong.

Best Regards,
Ryuan Choi



2014/1/13 daniel.za...@samsung.com daniel.za...@samsung.com

 Hi Ryuan,

 The problem here is that now you will have a lot of errors from eo_isa and
 his brother. At least, this check was helping on this.

 JackDanielZ, alias Daniel the 3rd


 On 01/13/2014 02:18 PM, Ryuan Choi wrote:

 ryuan pushed a commit to branch master.

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

 commit 4c3e23de9e46fd89672ab657f5da153a3c26a029
 Author: Ryuan Choi ryuan.c...@gmail.com
 Date:   Mon Jan 13 21:11:04 2014 +0900

  Widget: Removed !obj checks from ELM_WIDGET_DATA_GET_OR_RETURN and
 ELM_WIDGET_CHECK
   eo_data_scope_get and eo_isa returns NULL with complaint when
 NULL is passed.
  So, Removed unnecessary !obj check routine.
   In addition, adopt EINA_UNLIKELY for these macros and fix
 indentation.
 ---
   src/lib/elm_widget.h | 16 +++-
   1 file changed, 7 insertions(+), 9 deletions(-)

 diff --git a/src/lib/elm_widget.h b/src/lib/elm_widget.h
 index f7170f6..ded37bc 100644
 --- a/src/lib/elm_widget.h
 +++ b/src/lib/elm_widget.h
 @@ -801,19 +801,17 @@ EAPI void elm_widget_tree_dump(const
 Evas_Object *top);
   EAPI void elm_widget_tree_dot_dump(const Evas_Object *top,
 FILE *output);
 #define ELM_WIDGET_DATA_GET_OR_RETURN(o, ptr, ...)   \
 -  Elm_Widget_Smart_Data *ptr;   \
 -  ptr = (o ?\
 -eo_data_scope_get(o, ELM_OBJ_WIDGET_CLASS) :\
 -NULL);  \
 -  if (!ptr) \
 +  Elm_Widget_Smart_Data *ptr;\
 +  ptr = eo_data_scope_get(o, ELM_OBJ_WIDGET_CLASS);  \
 +  if (EINA_UNLIKELY(!ptr))   \
   {\
 -   CRI(no widget data for object %p (%s), \
 -o, evas_object_type_get(o));\
 +   CRI(no widget data for object %p (%s),  \
 +   o, evas_object_type_get(o));  \
  return __VA_ARGS__;   \
   }
   -#define ELM_WIDGET_CHECK(obj)   \
 -  if (!obj || !eo_isa((obj), ELM_OBJ_WIDGET_CLASS)) \
 +#define ELM_WIDGET_CHECK(obj)  \
 +  if (EINA_UNLIKELY(!eo_isa((obj), ELM_OBJ_WIDGET_CLASS))) \
   return
 /**



--
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments  Everything In Between.
Get a Quote or Start a Free Trial Today. 
http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: els_box: Used Eina_Bool instead of int for the parameters of _els_box_layout

2014-01-13 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 8527ab9401027115c42d5a2a2afc066f46d21918
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Tue Jan 14 03:26:16 2014 +0900

els_box: Used Eina_Bool instead of int for the parameters of _els_box_layout
---
 src/lib/elm_index.c | 2 +-
 src/lib/els_box.c   | 4 ++--
 src/lib/els_box.h   | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/lib/elm_index.c b/src/lib/elm_index.c
index d065a2e..d3fd8ef 100644
--- a/src/lib/elm_index.c
+++ b/src/lib/elm_index.c
@@ -65,7 +65,7 @@ _box_custom_layout(Evas_Object *o,
 {
Elm_Index_Smart_Data *sd = data;
 
-   _els_box_layout(o, priv, sd-horizontal, 1, 0);
+   _els_box_layout(o, priv, sd-horizontal, EINA_TRUE, EINA_FALSE);
 }
 
 static void
diff --git a/src/lib/els_box.c b/src/lib/els_box.c
index a78b77d..be0edc9 100644
--- a/src/lib/els_box.c
+++ b/src/lib/els_box.c
@@ -8,7 +8,7 @@
 #include els_box.h
 
 static void
-_smart_extents_calculate(Evas_Object *box, Evas_Object_Box_Data *priv, int 
horizontal, int homogeneous)
+_smart_extents_calculate(Evas_Object *box, Evas_Object_Box_Data *priv, 
Eina_Bool horizontal, Eina_Bool homogeneous)
 {
Evas_Coord minw, minh, mnw, mnh, maxw, maxh;
const Eina_List *l;
@@ -119,7 +119,7 @@ _smart_extents_calculate(Evas_Object *box, 
Evas_Object_Box_Data *priv, int horiz
 }
 
 void
-_els_box_layout(Evas_Object *o, Evas_Object_Box_Data *priv, int horizontal, 
int homogeneous, int rtl)
+_els_box_layout(Evas_Object *o, Evas_Object_Box_Data *priv, Eina_Bool 
horizontal, Eina_Bool homogeneous, Eina_Bool rtl)
 {
Evas_Coord x, y, w, h, xx, yy;
const Eina_List *l;
diff --git a/src/lib/els_box.h b/src/lib/els_box.h
index 026f3af..4adde0d 100644
--- a/src/lib/els_box.h
+++ b/src/lib/els_box.h
@@ -1 +1 @@
-void _els_box_layout(Evas_Object *o, Evas_Object_Box_Data *priv, int 
horizontal, int homogeneous, int rtl);
+void _els_box_layout(Evas_Object *o, Evas_Object_Box_Data *priv, Eina_Bool 
horizontal, Eina_Bool homogeneous, Eina_Bool rtl);

-- 




Re: [E-devel] [EGIT] [core/elementary] master 01/01: Widget: Removed !obj checks from ELM_WIDGET_DATA_GET_OR_RETURN and ELM_WIDGET_CHECK

2014-01-13 Thread ryuan Choi
Sure, I checked several items of elementary_test (not all). They don't
complain to me at least in my laptop.
It looks fixed.



2014/1/13 daniel.za...@samsung.com daniel.za...@samsung.com

  I don't have an example just here now. Did you check tests of
 elementary_test?
 I just remember that there were a lot of prints. Maybe it has been fixed.


 On 01/13/2014 03:32 PM, ryuan Choi wrote:

   Weird,

 I tested little bit and ELM_WIDGET_CHECK with null object just printed
 only one line complaint.
 I thought that null object is wrong case which we should fix (or blame)

  Could you let me know more information or reproduce step to get a lot of
 errors to ensure that my reading is wrong.

  Best Regards,
 Ryuan Choi



 2014/1/13 daniel.za...@samsung.com daniel.za...@samsung.com

 Hi Ryuan,

 The problem here is that now you will have a lot of errors from eo_isa
 and his brother. At least, this check was helping on this.

 JackDanielZ, alias Daniel the 3rd


 On 01/13/2014 02:18 PM, Ryuan Choi wrote:

 ryuan pushed a commit to branch master.


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

 commit 4c3e23de9e46fd89672ab657f5da153a3c26a029
 Author: Ryuan Choi ryuan.c...@gmail.com
 Date:   Mon Jan 13 21:11:04 2014 +0900

  Widget: Removed !obj checks from ELM_WIDGET_DATA_GET_OR_RETURN and
 ELM_WIDGET_CHECK
   eo_data_scope_get and eo_isa returns NULL with complaint when
 NULL is passed.
  So, Removed unnecessary !obj check routine.
   In addition, adopt EINA_UNLIKELY for these macros and fix
 indentation.
 ---
   src/lib/elm_widget.h | 16 +++-
   1 file changed, 7 insertions(+), 9 deletions(-)

 diff --git a/src/lib/elm_widget.h b/src/lib/elm_widget.h
 index f7170f6..ded37bc 100644
 --- a/src/lib/elm_widget.h
 +++ b/src/lib/elm_widget.h
 @@ -801,19 +801,17 @@ EAPI void elm_widget_tree_dump(const
 Evas_Object *top);
   EAPI void elm_widget_tree_dot_dump(const Evas_Object *top,
 FILE *output);
 #define ELM_WIDGET_DATA_GET_OR_RETURN(o, ptr, ...)   \
 -  Elm_Widget_Smart_Data *ptr;   \
 -  ptr = (o ?\
 -eo_data_scope_get(o, ELM_OBJ_WIDGET_CLASS) :\
 -NULL);  \
 -  if (!ptr) \
 +  Elm_Widget_Smart_Data *ptr;\
 +  ptr = eo_data_scope_get(o, ELM_OBJ_WIDGET_CLASS);  \
 +  if (EINA_UNLIKELY(!ptr))   \
   {\
 -   CRI(no widget data for object %p (%s), \
 -o, evas_object_type_get(o));\
 +   CRI(no widget data for object %p (%s),  \
 +   o, evas_object_type_get(o));  \
  return __VA_ARGS__;   \
   }
   -#define ELM_WIDGET_CHECK(obj)   \
 -  if (!obj || !eo_isa((obj), ELM_OBJ_WIDGET_CLASS)) \
 +#define ELM_WIDGET_CHECK(obj)  \
 +  if (EINA_UNLIKELY(!eo_isa((obj), ELM_OBJ_WIDGET_CLASS))) \
   return
 /**





--
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments  Everything In Between.
Get a Quote or Start a Free Trial Today. 
http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 06/06: els_box : Move horizontal condition out of some loop in _els_box_layout

2014-01-12 Thread Ryuan Choi
raster pushed a commit to branch master.

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

commit 2fdb1b33c1b8a516a6e53b706d519ef540dd3fb4
Author: Ryuan Choi ryuan.c...@samsung.com
Date:   Mon Jan 13 15:47:04 2014 +0900

els_box : Move horizontal condition out of some loop in _els_box_layout

Summary:
Almost logic of both horizontal and vertical are same except different axis 
in
_els_box_layout.
This patch reduced code size and improved speed little bit by moving 
condition
out of the loop using some extra pointer variables.

In addition, removed unnecessary check routines.
There are already similar logic for them before and after.

Reviewers: raster, seoz, cedric

Reviewed By: raster

Differential Revision: https://phab.enlightenment.org/D423
---
 src/lib/els_box.c | 98 ++-
 1 file changed, 39 insertions(+), 59 deletions(-)

diff --git a/src/lib/els_box.c b/src/lib/els_box.c
index 5edf2df..a78b77d 100644
--- a/src/lib/els_box.c
+++ b/src/lib/els_box.c
@@ -57,49 +57,44 @@ _smart_extents_calculate(Evas_Object *box, 
Evas_Object_Box_Data *priv, int horiz
  }
else
  {
+/* calculate but after switched w and h for horizontal mode */
+Evas_Coord *rw, *rh, *rminw, *rminh, *rmaxw, *rmaxh;
+if (!horizontal)
+  {
+ rw = mnw;
+ rh = mnh;
+ rminw = minw;
+ rminh = minh;
+ rmaxw = maxw;
+ rmaxh = maxh;
+  }
+else
+  {
+ rw = mnh;
+ rh = mnw;
+ rminw = minh;
+ rminh = minw;
+ rmaxw = maxh;
+ rmaxh = maxw;
+  }
 EINA_LIST_FOREACH(priv-children, l, opt)
   {
  evas_object_size_hint_min_get(opt-obj, mnw, mnh);
- if (horizontal)
-   {
-  if (minh  mnh) minh = mnh;
-  minw += mnw;
-   }
- else
-   {
-  if (minw  mnw) minw = mnw;
-  minh += mnh;
-   }
+ if (*rminw  *rw) *rminw = *rw;
+ *rminh += *rh;
+
  evas_object_size_hint_max_get(opt-obj, mnw, mnh);
- if (horizontal)
+ if (*rh  0)
{
-  if (mnw  0)
-{
-   maxw = -1;
-   max = EINA_FALSE;
-}
-  if (max) maxw += mnw;
-
-  if (mnh = 0)
-{
-   if (maxh == -1) maxh = mnh;
-   else if (maxh  mnh) maxh = mnh;
-}
+  *rmaxh = -1;
+  max = EINA_FALSE;
}
- else
-   {
-  if (mnh  0)
-{
-   maxh = -1;
-   max = EINA_FALSE;
-}
-  if (max) maxh += mnh;
+ if (max) *rmaxh += *rh;
 
-  if (mnw = 0)
-{
-   if (maxw == -1) maxw = mnw;
-   else if (maxw  mnw) maxw = mnw;
-}
+ if (*rw = 0)
+   {
+  if (*rmaxw == -1) *rmaxw = *rw;
+  else if (*rmaxw  *rw) *rmaxw = *rw;
}
   }
  }
@@ -133,6 +128,8 @@ _els_box_layout(Evas_Object *o, Evas_Object_Box_Data *priv, 
int horizontal, int
int count = 0;
double expand = 0.0;
double ax, ay;
+   double wx, wy;
+   double *rwy;
Evas_Object_Box_Option *opt;
 
_smart_extents_calculate(o, priv, horizontal, homogeneous);
@@ -140,34 +137,18 @@ _els_box_layout(Evas_Object *o, Evas_Object_Box_Data 
*priv, int horizontal, int
evas_object_geometry_get(o, x, y, w, h);
 
evas_object_size_hint_min_get(o, minw, minh);
-   evas_object_size_hint_align_get(o, ax, ay);
if ((w  minw) || (h  minh)) return;
count = eina_list_count(priv-children);
-   if (rtl) ax = 1.0 - ax;
 
-   if (w  minw)
- {
-x = x + ((w - minw) * (1.0 - ax));
-w = minw;
- }
-   if (h  minh)
- {
-y = y + ((h - minh) * (1.0 - ay));
-h = minh;
- }
+   /* accummulate expand as same way but after switched x and y for horizontal 
mode */
+   if (!horizontal)
+ rwy = wy;
+   else
+ rwy = wx;
EINA_LIST_FOREACH(priv-children, l, opt)
  {
-double wx, wy;
-
 evas_object_size_hint_weight_get(opt-obj, wx, wy);
-if (horizontal)
-  {
- if (wx  0.0) expand += wx;
-  }
-else
-  {
- if (wy  0.0) expand += wy;
-  }
+if (*rwy  0.0) expand += *rwy;
  }
if (!expand)
  {
@@ -189,7 +170,6 @@ _els_box_layout(Evas_Object *o

[EGIT] [core/elementary] master 01/01: web: Move EWebKit headers out of Elementary.h again

2014-01-09 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit f4d48471e227d560d1ba386483fed0407a4197df
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Thu Jan 9 21:10:57 2014 +0900

web: Move EWebKit headers out of Elementary.h again

Since rELM166ca9e86a72, I moved EWebKit header into Elementary.h like other 
libraries.
But, it made possible build break while building test browser in webkit.
It's because EWebKit.h and EWebKit2.h have same symbols and test browser 
should
be compiled with EWebKit2.h although Elementary was built with ewebkit.

This patch reverts a part of changes in rELM166ca9e86a72, which includes 
EWebkit.h
in Elementary.h
---
 src/lib/Elementary.h.in | 8 
 src/lib/elm_web.c   | 1 +
 src/lib/elm_web2.c  | 1 +
 3 files changed, 2 insertions(+), 8 deletions(-)

diff --git a/src/lib/Elementary.h.in b/src/lib/Elementary.h.in
index c2a8660..30164d9 100644
--- a/src/lib/Elementary.h.in
+++ b/src/lib/Elementary.h.in
@@ -93,14 +93,6 @@
 #include EMap.h
 #endif
 
-#ifdef ELM_WEB
-#include EWebKit.h
-#endif
-
-#ifdef ELM_WEB2
-#include EWebKit2.h
-#endif
-
 #ifdef EAPI
 # undef EAPI
 #endif
diff --git a/src/lib/elm_web.c b/src/lib/elm_web.c
index c9bac2a..24059ea 100644
--- a/src/lib/elm_web.c
+++ b/src/lib/elm_web.c
@@ -22,6 +22,7 @@ EAPI Eo_Op ELM_OBJ_WEB_BASE_ID = EO_NOOP;
 #define MY_CLASS_NAME_LEGACY elm_web
 
 #ifdef HAVE_ELEMENTARY_WEB
+#include EWebKit.h
 
 /* Similar to iPhone */
 // TODO: switch between iPhone, iPad or Chrome/Safari based on some
diff --git a/src/lib/elm_web2.c b/src/lib/elm_web2.c
index be4ecd2..b042ec1 100644
--- a/src/lib/elm_web2.c
+++ b/src/lib/elm_web2.c
@@ -8,6 +8,7 @@
 #include elm_widget_web.h
 
 #if defined(HAVE_ELEMENTARY_WEB)  defined(USE_WEBKIT2)
+#include EWebKit2.h
 
 EAPI Eo_Op ELM_OBJ_WEB_BASE_ID = EO_NOOP;
 

-- 




[EGIT] [core/elementary] master 01/01: web: Disable more logics to reduce binary size when web backend is none

2014-01-02 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit e20f04630e95797ab282440cdcd76597f4d03b71
Author: Ryuan Choi ryuan.c...@gmail.com
Date:   Fri Jan 3 16:12:11 2014 +0900

web: Disable more logics to reduce binary size when web backend is none

It will reduce binary size about 4K.
2,626,465 - 2,622,369 (Byte, tested with -Os, unstriped)
---
 src/lib/elm_web.c | 316 +-
 1 file changed, 267 insertions(+), 49 deletions(-)

diff --git a/src/lib/elm_web.c b/src/lib/elm_web.c
index fea18dc..e8ae89c 100644
--- a/src/lib/elm_web.c
+++ b/src/lib/elm_web.c
@@ -31,9 +31,7 @@ EAPI Eo_Op ELM_OBJ_WEB_BASE_ID = EO_NOOP;
   Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en)  \
AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A543a \
Safari/419.3  PACKAGE_NAME / PACKAGE_VERSION
-#endif
 
-#ifdef HAVE_ELEMENTARY_WEB
 static Ewk_View_Smart_Class _ewk_view_parent_sc =
   EWK_VIEW_SMART_CLASS_INIT_NULL;
 
@@ -1266,12 +1264,18 @@ elm_web_window_create_hook_set(Evas_Object *obj,
Elm_Web_Window_Open func,
void *data)
 {
+#ifdef HAVE_ELEMENTARY_WEB
ELM_WEB_CHECK(obj);
eo_do(obj, elm_obj_web_window_create_hook_set(func, data));
+#else
+   (void)obj;
+   (void)func;
+   (void)data;
+#endif
 }
 
 static void
-_window_create_hook_set(Eo *obj EINA_UNUSED, void *_pd EINA_UNUSED, va_list 
*list)
+_window_create_hook_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list)
 {
Elm_Web_Window_Open func = va_arg(*list, Elm_Web_Window_Open);
void *data = va_arg(*list, void *);
@@ -1281,8 +1285,9 @@ _window_create_hook_set(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED, va_list *lis
sd-hook.window_create = func;
sd-hook.window_create_data = data;
 #else
-  (void)func;
-  (void)data;
+   (void)_pd;
+   (void)func;
+   (void)data;
 #endif
 }
 
@@ -1291,8 +1296,14 @@ elm_web_dialog_alert_hook_set(Evas_Object *obj,
   Elm_Web_Dialog_Alert func,
   void *data)
 {
+#ifdef HAVE_ELEMENTARY_WEB
ELM_WEB_CHECK(obj);
eo_do(obj, elm_obj_web_dialog_alert_hook_set(func, data));
+#else
+   (void)obj;
+   (void)func;
+   (void)data;
+#endif
 }
 
 static void
@@ -1318,8 +1329,14 @@ elm_web_dialog_confirm_hook_set(Evas_Object *obj,
 Elm_Web_Dialog_Confirm func,
 void *data)
 {
+#ifdef HAVE_ELEMENTARY_WEB
ELM_WEB_CHECK(obj);
eo_do(obj, elm_obj_web_dialog_confirm_hook_set(func, data));
+#else
+   (void)obj;
+   (void)func;
+   (void)data;
+#endif
 }
 
 static void
@@ -1345,8 +1362,14 @@ elm_web_dialog_prompt_hook_set(Evas_Object *obj,
Elm_Web_Dialog_Prompt func,
void *data)
 {
+#ifdef HAVE_ELEMENTARY_WEB
ELM_WEB_CHECK(obj);
eo_do(obj, elm_obj_web_dialog_prompt_hook_set(func, data));
+#else
+   (void)obj;
+   (void)func;
+   (void)data;
+#endif
 }
 
 static void
@@ -1371,8 +1394,14 @@ elm_web_dialog_file_selector_hook_set(Evas_Object *obj,
   Elm_Web_Dialog_File_Selector func,
   void *data)
 {
+#ifdef HAVE_ELEMENTARY_WEB
ELM_WEB_CHECK(obj);
eo_do(obj, elm_obj_web_dialog_file_selector_hook_set(func, data));
+#else
+   (void)obj;
+   (void)func;
+   (void)data;
+#endif
 }
 
 static void
@@ -1397,8 +1426,14 @@ elm_web_console_message_hook_set(Evas_Object *obj,
  Elm_Web_Console_Message func,
  void *data)
 {
+#ifdef HAVE_ELEMENTARY_WEB
ELM_WEB_CHECK(obj);
eo_do(obj, elm_obj_web_console_message_hook_set(func, data));
+#else
+   (void)obj;
+   (void)func;
+   (void)data;
+#endif
 }
 
 static void
@@ -1423,8 +1458,13 @@ EAPI void
 elm_web_useragent_set(Evas_Object *obj,
   const char *user_agent)
 {
+#ifdef HAVE_ELEMENTARY_WEB
ELM_WEB_CHECK(obj);
eo_do(obj, elm_obj_web_useragent_set(user_agent));
+#else
+   (void)user_agent;
+   (void)obj;
+#endif
 }
 
 static void
@@ -1445,10 +1485,15 @@ _useragent_set(Eo *obj, void *_pd EINA_UNUSED, va_list 
*list)
 EAPI const char *
 elm_web_useragent_get(const Evas_Object *obj)
 {
+#ifdef HAVE_ELEMENTARY_WEB
ELM_WEB_CHECK(obj) NULL;
const char *ret = NULL;
eo_do((Eo *) obj, elm_obj_web_useragent_get(ret));
return ret;
+#else
+   (void)obj;
+   return NULL;
+#endif
 }
 
 static void
@@ -1469,10 +1514,15 @@ _useragent_get(Eo *obj, void *_pd EINA_UNUSED, va_list 
*list)
 EAPI Eina_Bool
 elm_web_tab_propagate_get(const Evas_Object *obj)
 {
+#ifdef HAVE_ELEMENTARY_WEB
ELM_WEB_CHECK(obj) EINA_FALSE;
Eina_Bool ret = EINA_FALSE;
eo_do((Eo *) obj, elm_obj_web_tab_propagate_get(ret));
return ret;
+#else
+   (void)obj;
+   return EINA_FALSE;
+#endif
 }
 
 static

  1   2   >