summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--generate-binding-glue.py2
-rw-r--r--src/app.cpp12
-rw-r--r--src/app.hpp1
-rw-r--r--src/main.cpp6
4 files changed, 13 insertions, 8 deletions
diff --git a/generate-binding-glue.py b/generate-binding-glue.py
index 82f71ae..3fd0828 100644
--- a/generate-binding-glue.py
+++ b/generate-binding-glue.py
@@ -88,7 +88,7 @@ def emit_afb_api(api):
p('struct binding_api {')
p(' typedef wm::result<json_object *> result_type;')
p(' struct wm::App *app;')
- p(' void send_event(char const *evname, json_object *payload);')
+ p(' void send_event(char const *evname, char const *label);')
for f in api['functions']:
p(' result_type %(name)s(' % f + ', '.join(map(lambda x: '%(type)s %(name)s' % x, f.get('args', []))) + ');')
p('};', '')
diff --git a/src/app.cpp b/src/app.cpp
index 6d47928..b8d3a86 100644
--- a/src/app.cpp
+++ b/src/app.cpp
@@ -464,19 +464,23 @@ void App::surface_removed(uint32_t surface_id) {
}
void App::emit_activated(char const *label) {
- this->api.send_event("activated", json_object_new_string(label));
+ this->api.send_event("activated", label);
}
void App::emit_deactivated(char const *label) {
- this->api.send_event("deactivated", json_object_new_string(label));
+ this->api.send_event("deactivated", label);
}
void App::emit_syncdraw(char const *label) {
- this->api.send_event("syncdraw", json_object_new_string(label));
+ this->api.send_event("syncdraw", label);
+}
+
+void App::emit_flushdraw(char const *label) {
+ this->api.send_event("syncdraw", label);
}
void App::emit_visible(char const *label, bool is_visible) {
- this->api.send_event(is_visible ? "visible" : "invisible", json_object_new_string(label));
+ this->api.send_event(is_visible ? "visible" : "invisible", label);
}
result<int> App::request_surface(char const *drawing_name) {
diff --git a/src/app.hpp b/src/app.hpp
index 8a5dc2f..6921865 100644
--- a/src/app.hpp
+++ b/src/app.hpp
@@ -154,6 +154,7 @@ struct App {
void emit_activated(char const *label);
void emit_deactivated(char const *label);
void emit_syncdraw(char const *label);
+ void emit_flushdraw(char const *label);
void emit_visible(char const *label, bool is_visible);
};
diff --git a/src/main.cpp b/src/main.cpp
index 373ec5f..de10291 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -135,9 +135,9 @@ int binding_init() noexcept {
// XXX implement send_event right here...
namespace wm {
-void binding_api::send_event(char const *evname, json_object *payload) {
- logdebug("%s: %s(%s)", __func__, evname, json_object_to_json_string(payload));
- int ret = afb_daemon_broadcast_event(evname, payload);
+void binding_api::send_event(char const *evname, char const *label) {
+ logdebug("%s: %s(%s)", __func__, evname, label);
+ int ret = afb_daemon_broadcast_event(evname, json_object_new_string(label));
if (ret != 0) {
logdebug("afb_event_broadcast failed: %m");
}