compositor: Add debug key-binding to display/dump flight recorder contents
authorMarius Vlad <marius.vlad@collabora.com>
Thu, 27 Jun 2019 16:19:26 +0000 (19:19 +0300)
committerMarius Vlad <marius.vlad@collabora.com>
Thu, 18 Jul 2019 10:34:04 +0000 (13:34 +0300)
Uses (debug key-binding mod+shift+space) KEY_D to display/dump
the contents of the flight recorder.

Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
compositor/main.c

index 7e423d1caa2f45c89c95488bd9125074e160c9b1..2d9097f807fa6117a77ec07d2b0f00a2badc71ea 100644 (file)
@@ -2927,6 +2927,15 @@ weston_log_setup_scopes(struct weston_log_context *log_ctx,
        free(tokenize);
 }
 
+static void
+flight_rec_key_binding_handler(struct weston_keyboard *keyboard,
+                              const struct timespec *time, uint32_t key,
+                              void *data)
+{
+       struct weston_log_subscriber *flight_rec = data;
+       weston_log_subscriber_display_flight_rec(flight_rec);
+}
+
 int main(int argc, char *argv[])
 {
        int ret = EXIT_FAILURE;
@@ -3118,6 +3127,10 @@ int main(int argc, char *argv[])
                weston_compositor_enable_debug_protocol(wet.compositor);
        }
 
+       weston_compositor_add_debug_binding(wet.compositor, KEY_D,
+                                           flight_rec_key_binding_handler,
+                                           flight_rec);
+
        if (weston_compositor_init_config(wet.compositor, config) < 0)
                goto out;