From 2b38eb9712df12045ebffb8c43e6eb260b8ada66 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Thu, 24 Sep 2015 16:02:44 -0400 Subject: [PATCH] block border-affecting client functions for csd clients --- src/bin/e_actions.c | 4 ++++ src/bin/e_client.c | 2 ++ 2 files changed, 6 insertions(+) diff --git a/src/bin/e_actions.c b/src/bin/e_actions.c index ae8a3cecc..3d8d2c4cb 100644 --- a/src/bin/e_actions.c +++ b/src/bin/e_actions.c @@ -732,6 +732,7 @@ ACT_FN_GO(window_shaded, ) E_Client *ec; ec = (E_Client *)obj; + if (!e_comp_object_frame_allowed(ec->frame)) return; if (params) { int v; @@ -777,6 +778,7 @@ ACT_FN_GO(window_borderless_toggle, EINA_UNUSED) E_Client *ec; ec = (E_Client *)obj; + if (!e_comp_object_frame_allowed(ec->frame)) return; ec->borderless = !ec->borderless; ec->border.changed = 1; @@ -795,6 +797,7 @@ ACT_FN_GO(window_border_set, EINA_UNUSED) E_Client *ec; ec = (E_Client *)obj; + if (!e_comp_object_frame_allowed(ec->frame)) return; if (ec && params) { eina_stringshare_replace(&ec->bordername, params); @@ -815,6 +818,7 @@ ACT_FN_GO(window_border_cycle, EINA_UNUSED) E_Client *ec; ec = (E_Client *)obj; + if (!e_comp_object_frame_allowed(ec->frame)) return; if (ec && params) { const char *space; diff --git a/src/bin/e_client.c b/src/bin/e_client.c index c001eddc1..85b463a56 100644 --- a/src/bin/e_client.c +++ b/src/bin/e_client.c @@ -3662,6 +3662,7 @@ e_client_shade(E_Client *ec, E_Direction dir) if ((ec->shaded) || (ec->shading) || (ec->fullscreen) || ((ec->maximized) && (!e_config->allow_manip))) return; if (!e_util_strcmp("borderless", ec->bordername)) return; + if (!e_comp_object_frame_allowed(ec->frame)) return; e_hints_window_shaded_set(ec, 1); e_hints_window_shade_direction_set(ec, dir); @@ -4194,6 +4195,7 @@ e_client_border_set(E_Client *ec, const char *name) E_OBJECT_CHECK_RETURN(ec, EINA_FALSE); E_OBJECT_TYPE_CHECK_RETURN(ec, E_CLIENT_TYPE, EINA_FALSE); + if (!e_comp_object_frame_allowed(ec->frame)) return EINA_FALSE; if (ec->border.changed) CRI("CALLING WHEN border.changed SET!");