elm: access: fix - socket proxy should be created before bridge is connected
authorShinwoo Kim <cinoo.kim@samsung.com>
Mon, 18 Dec 2017 14:40:59 +0000 (20:10 +0530)
committerWonki Kim <wonki_.kim@samsung.com>
Wed, 27 Dec 2017 08:58:44 +0000 (17:58 +0900)
Change-Id: Ia41b77c2d747bc4b332882ee6e7155b63946688c
Signed-off-by: Shilpa Singh <shilpa.singh@samsung.com>
src/lib/elementary/efl_ui_win_socket.c

index 54f647a..46fd047 100644 (file)
@@ -101,13 +101,23 @@ _efl_ui_win_socket_efl_gfx_visible_set(Eo *obj, Efl_Ui_Win_Socket_Data *sd EINA_
    efl_gfx_visible_set(efl_super(obj, EFL_UI_WIN_SOCKET_CLASS), vis);
 
    // TIZEN_ONLY(20160705) - enable atspi_proxy to work
-   if (vis)
+    /* _elm_atspi_enabled() is not necessary, because it could be disconnected at this point */
+   if (_elm_config->atspi_mode)
      {
-        if (_elm_atspi_enabled())
+        const char *plug_id_2;
+        if (vis)
           {
-             //TIZEN_ONLY(20170613) -listen if atspi is enabled
-             _access_socket_proxy_listen(obj);
-             //
+             if ((plug_id_2 = evas_object_data_get(obj, "___PLUGID")) != NULL)
+               {
+                  char *svcname, *svcnum;
+                  if (!sd->socket_proxy && _elm_atspi_bridge_plug_id_split(plug_id_2, &svcname, &svcnum))
+                    {
+                       sd->socket_proxy = _elm_atspi_bridge_utils_proxy_create(obj, svcname, atoi(svcnum), ELM_ATSPI_PROXY_TYPE_SOCKET);
+                       elm_atspi_bridge_utils_proxy_listen(sd->socket_proxy);
+                       free(svcname);
+                       free(svcnum);
+                    }
+               }
           }
      }
    //