e_server: move the init/deinit of e_explicit_sync
[platform/upstream/enlightenment.git] / src / bin / server / e_server.c
index f1f15c8..6fd2af0 100644 (file)
@@ -15,6 +15,7 @@
 #include "e_blender_intern.h"
 #include "e_blur_intern.h"
 #include "e_foreign_intern.h"
+#include "e_explicit_sync_intern.h"
 #include "e_tizen_screen_manager_intern.h"
 
 typedef struct _E_Server E_Server;
@@ -43,6 +44,7 @@ struct _E_Server
         Dummy_Handle *tizen_blender_handle;
         Dummy_Handle *tizen_blur_manager_handle;
         Dummy_Handle *tizen_foreign_handle;
+        Dummy_Handle *explicit_sync_handle;
         E_Tizen_Screen_Manager *tizen_screen_manager;
     } handles; // feature handles
 };
@@ -95,6 +97,8 @@ e_server_init(void)
      e_server_feature_register(E_SERVER_FEATURE_TIZEN_BLUR_MANAGER, &dummy_handle);
    if (e_foreign_global_init(e_comp_wl->wl.disp))
      e_server_feature_register(E_SERVER_FEATURE_TIZEN_FOREIGN, &dummy_handle);
+   if (e_explicit_sync_init())
+     e_server_feature_register(E_SERVER_FEATURE_EXPLICIT_SYNC, &dummy_handle);
 
    e_server_feature_register(E_SERVER_FEATURE_TIZEN_SRCREEN_MANAGER, e_tizen_screen_manager_init());
 
@@ -104,6 +108,7 @@ e_server_init(void)
 EINTERN void
 e_server_shutdown(void)
 {
+   e_explicit_sync_deinit();
    e_foreign_global_shutdown();
    e_blur_manager_shutdown();
    e_blender_shutdown();
@@ -183,6 +188,9 @@ e_server_feature_register(E_SERVER_FEATURE feature, void *handle)
        case E_SERVER_FEATURE_TIZEN_FOREIGN:
          g_server->handles.tizen_foreign_handle = handle;
          break;
+       case E_SERVER_FEATURE_EXPLICIT_SYNC:
+         g_server->handles.explicit_sync_handle = handle;
+         break;
        case E_SERVER_FEATURE_TIZEN_SRCREEN_MANAGER:
          g_server->handles.tizen_screen_manager = handle;
          break;
@@ -249,6 +257,9 @@ e_server_feature_handle_get(E_SERVER_FEATURE feature)
        case E_SERVER_FEATURE_TIZEN_FOREIGN:
          handle = g_server->handles.tizen_foreign_handle;
          break;
+       case E_SERVER_FEATURE_EXPLICIT_SYNC:
+         handle = g_server->handles.explicit_sync_handle;
+         break;
        case E_SERVER_FEATURE_TIZEN_SRCREEN_MANAGER:
          handle = g_server->handles.tizen_screen_manager;
          break;