discomfitor pushed a commit to branch master.

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

commit c662eab4340dd857dbad00047f4796749e79ad36
Author: Mike Blumenkrantz <zm...@osg.samsung.com>
Date:   Fri Jan 5 12:33:02 2018 -0500

    add sandbox gadget event to indicate gadget configure
    
    ref T6443
---
 src/bin/e_gadget_loader.c | 10 ++++++++++
 src/bin/e_gadget_runner.c |  9 ++++++++-
 src/protocol/e-gadget.xml |  1 +
 3 files changed, 19 insertions(+), 1 deletion(-)

diff --git a/src/bin/e_gadget_loader.c b/src/bin/e_gadget_loader.c
index cd725622a..d516ef194 100644
--- a/src/bin/e_gadget_loader.c
+++ b/src/bin/e_gadget_loader.c
@@ -68,12 +68,22 @@ _gadget_removed(void *data, struct e_gadget *e_gadget 
EINA_UNUSED)
    evas_object_smart_callback_call(win, "gadget_removed", NULL);
 }
 
+static void
+_gadget_configure(void *data, struct e_gadget *e_gadget EINA_UNUSED)
+{
+   Evas_Object *win;
+
+   win = eina_list_data_get(eina_hash_find(wins, &data));
+   evas_object_smart_callback_call(win, "gadget_configure", NULL);
+}
+
 static const struct e_gadget_listener _gadget_listener =
 {
    _gadget_anchor,
    _gadget_orient,
    _gadget_gravity,
    _gadget_removed,
+   _gadget_configure,
 };
 
 static void
diff --git a/src/bin/e_gadget_runner.c b/src/bin/e_gadget_runner.c
index c927d1aaf..c96b84d8a 100644
--- a/src/bin/e_gadget_runner.c
+++ b/src/bin/e_gadget_runner.c
@@ -398,7 +398,14 @@ static Evas_Object *
 runner_gadget_configure(Evas_Object *g)
 {
    Instance *inst = evas_object_data_get(g, "runner");
-   return config_runner(inst->ci, e_comp_object_util_zone_get(g));
+   if (inst->ci->sandbox)
+     {
+        if (inst->gadget_resource)
+          e_gadget_send_gadget_configure(inst->gadget_resource);
+        return NULL;
+     }
+   else
+     return config_runner(inst->ci, e_comp_object_util_zone_get(g));
 }
 
 static void
diff --git a/src/protocol/e-gadget.xml b/src/protocol/e-gadget.xml
index f3e63e113..ad80fdc79 100644
--- a/src/protocol/e-gadget.xml
+++ b/src/protocol/e-gadget.xml
@@ -31,6 +31,7 @@
       <arg name="gravity" type="uint" enum="gravity"/>
     </event>
     <event name="gadget_removed"/>
+    <event name="gadget_configure"/>
     <request name="open_uri">
       <arg name="uri" type="string"/>
     </request>

-- 


Reply via email to