exposay: set an alpha on fullscreen surfaces

This makes the desktop background actually draw when there is
a fullscreen surface and we go to exposay.
dev
Emilio Pozuelo Monfort 11 years ago committed by Kristian Høgsberg
parent e6bbe5a90d
commit 1a26f1baba
  1. 2
      desktop-shell/exposay.c
  2. 7
      desktop-shell/shell.c
  3. 3
      desktop-shell/shell.h

@ -286,6 +286,8 @@ exposay_layout(struct desktop_shell *shell)
if (shell->exposay.focus_current == esurface->view)
highlight = esurface;
set_alpha_if_fullscreen(get_shell_surface(view->surface));
exposay_animate_in(esurface);
i++;

@ -222,6 +222,13 @@ struct shell_seat {
} popup_grab;
};
void
set_alpha_if_fullscreen(struct shell_surface *shsurf)
{
if (shsurf && shsurf->state.fullscreen)
shsurf->fullscreen.black_view->alpha = 0.25;
}
static struct desktop_shell *
shell_surface_get_shell(struct shell_surface *shsurf);

@ -188,6 +188,9 @@ struct desktop_shell {
char *client;
};
void
set_alpha_if_fullscreen(struct shell_surface *shsurf);
struct weston_output *
get_default_output(struct weston_compositor *compositor);

Loading…
Cancel
Save