aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--generate-binding-glue.py6
-rw-r--r--src/afb_binding_api.cpp5
2 files changed, 10 insertions, 1 deletions
diff --git a/generate-binding-glue.py b/generate-binding-glue.py
index 7e003a5..db0b546 100644
--- a/generate-binding-glue.py
+++ b/generate-binding-glue.py
@@ -49,7 +49,10 @@ def emit_func_impl(api, f):
def emit_func(api, f):
p('void %(impl_name)s(afb_req req) noexcept {' % f)
- p(' std::lock_guard<std::mutex> guard(binding_m);')
+ #p(' std::lock_guard<std::mutex> guard(binding_m);')
+ p(' #ifdef ST')
+ p(' ST();')
+ p(' #endif')
p(' if (g_afb_instance == nullptr) {',
' afb_req_fail(req, "failed", "Binding not initialized, did the compositor die?");',
' return;',
@@ -127,6 +130,7 @@ API = {
],
},
{ 'name': 'list_drawing_names', },
+ { 'name': 'ping' },
{ 'name': 'debug_status', },
{ 'name': 'debug_layers', },
diff --git a/src/afb_binding_api.cpp b/src/afb_binding_api.cpp
index d0df3b6..7e6aa89 100644
--- a/src/afb_binding_api.cpp
+++ b/src/afb_binding_api.cpp
@@ -99,4 +99,9 @@ binding_api::result_type binding_api::debug_terminate() {
return Ok(json_object_new_object());
}
+binding_api::result_type binding_api::ping() {
+ this->app->dispatch_events();
+ return Ok(json_object_new_object());
+}
+
} // namespace wm