modify
[apps/agl-service-homescreen.git] / src / hs-proxy.cpp
index f0ee5f0..967c1b1 100644 (file)
@@ -16,8 +16,9 @@
 
 #include "hs-proxy.h"
 
-const char _afm_main[] = "afm-main";
-
+static const char _afm_main[] = "afm-main";
+static const char _windowmanager[] = "windowmanager";
+static const char _event[] = "event";
 
 /**
  * the callback function
@@ -80,6 +81,8 @@ static int api_call_sync(afb_api_t api, const char *service, const char *verb, s
     return ret;
 }
 
+/* -------------------------------------HS_AfmMainProxy------------------------------------------ */
+
 /**
  * get runnables application list
  *
@@ -131,4 +134,24 @@ void HS_AfmMainProxy::start(afb_req_t request, const std::string &id)
 {
     struct json_object *args = json_object_new_string(id.c_str());
     api_call(request->api, _afm_main, __FUNCTION__, args);
-}
\ No newline at end of file
+}
+
+/* -------------------------------------HS_WmProxy------------------------------------------ */
+
+/**
+ * subscribe windowmanager event
+ *
+ * #### Parameters
+ *  - api : the api serving the request
+ *  - event : windowmanager event
+ *
+ * #### Return
+ *  None
+ *
+ */
+void HS_WmProxy::subscribe(afb_api_t api, EventType event)
+{
+    struct json_object* push_obj = json_object_new_object();
+    json_object_object_add(push_obj, _event, json_object_new_int(event));
+    api_call(api, _windowmanager, "wm_subscribe", push_obj);
+}