From 8aeeacf178b234cefd046aa4ea8ec9c076d3f7b1 Mon Sep 17 00:00:00 2001 From: Drew DeVault Date: Thu, 1 Dec 2016 22:09:33 -0500 Subject: [PATCH] Enforce keyboard permissions --- sway/handlers.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sway/handlers.c b/sway/handlers.c index 24784330..3b85679d 100644 --- a/sway/handlers.c +++ b/sway/handlers.c @@ -725,6 +725,15 @@ static bool handle_key(wlc_handle view, uint32_t time, const struct wlc_modifier } list_free(candidates); + + swayc_t *focused = get_focused_container(&root_container); + if (focused->type == C_VIEW) { + pid_t pid = wlc_view_get_pid(focused->handle); + if (!(get_feature_policy(pid) & FEATURE_KEYBOARD)) { + sway_log(L_INFO, "Denying keypress to %d (%s)", pid, focused->name); + return EVENT_HANDLED; + } + } return EVENT_PASSTHROUGH; }