void meta_compositor_window_opacity_changed (MetaCompositor *compositor, MetaWindow *window) { MetaWindowActor *window_actor; window_actor = META_WINDOW_ACTOR (meta_window_get_compositor_private (window)); if (!window_actor) return; meta_window_actor_update_opacity (window_actor); }
static void process_property_notify (MetaCompositor *compositor, XPropertyEvent *event, MetaWindow *window) { MetaWindowActor *window_actor; if (event->atom == compositor->atom_x_root_pixmap) { GSList *l; for (l = meta_display_get_screens (compositor->display); l; l = l->next) { MetaScreen *screen = l->data; if (event->window == meta_screen_get_xroot (screen)) { meta_background_actor_update (screen); return; } } } if (window == NULL) return; window_actor = META_WINDOW_ACTOR (meta_window_get_compositor_private (window)); if (window_actor == NULL) return; /* Check for the opacity changing */ if (event->atom == compositor->atom_net_wm_window_opacity) { meta_window_actor_update_opacity (window_actor); DEBUG_TRACE ("process_property_notify: net_wm_window_opacity\n"); return; } DEBUG_TRACE ("process_property_notify: unknown\n"); }