diff options
Diffstat (limited to 'src/core/window-props.c')
-rw-r--r-- | src/core/window-props.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/core/window-props.c b/src/core/window-props.c index cd4d012ae..447ac3e92 100644 --- a/src/core/window-props.c +++ b/src/core/window-props.c @@ -1655,6 +1655,20 @@ reload_bypass_compositor (MetaWindow *window, window->bypass_compositor = requested_value; } +static void +reload_window_opacity (MetaWindow *window, + MetaPropValue *value, + gboolean initial) + +{ + int requested_value = 0xFF; + + if (value->type != META_PROP_VALUE_INVALID) + requested_value = (int) value->v.cardinal; + + meta_window_set_opacity (window, requested_value); +} + #define RELOAD_STRING(var_name, propname) \ static void \ reload_ ## var_name (MetaWindow *window, \ @@ -1757,6 +1771,7 @@ meta_display_init_window_prop_hooks (MetaDisplay *display) { display->atom__NET_WM_STRUT, META_PROP_VALUE_INVALID, reload_struts, FALSE, FALSE }, { display->atom__NET_WM_STRUT_PARTIAL, META_PROP_VALUE_INVALID, reload_struts, FALSE, FALSE }, { display->atom__NET_WM_BYPASS_COMPOSITOR, META_PROP_VALUE_CARDINAL, reload_bypass_compositor, FALSE, FALSE }, + { display->atom__NET_WM_WINDOW_OPACITY, META_PROP_VALUE_CARDINAL, reload_window_opacity, TRUE, TRUE }, { 0 }, }; |