Force fullscreen views to be fully opaque
This commit is contained in:
parent
96d575b252
commit
205a1732cf
|
@ -307,11 +307,11 @@ static void premultiply_alpha(float color[4], float opacity) {
|
||||||
}
|
}
|
||||||
|
|
||||||
static void render_view_surfaces(struct sway_view *view,
|
static void render_view_surfaces(struct sway_view *view,
|
||||||
struct sway_output *output, pixman_region32_t *damage) {
|
struct sway_output *output, pixman_region32_t *damage, float alpha) {
|
||||||
struct render_data data = {
|
struct render_data data = {
|
||||||
.output = output,
|
.output = output,
|
||||||
.damage = damage,
|
.damage = damage,
|
||||||
.alpha = view->swayc->alpha,
|
.alpha = alpha,
|
||||||
};
|
};
|
||||||
output_view_for_each_surface(
|
output_view_for_each_surface(
|
||||||
view, &data.root_geo, render_surface_iterator, &data);
|
view, &data.root_geo, render_surface_iterator, &data);
|
||||||
|
@ -323,7 +323,7 @@ static void render_view_surfaces(struct sway_view *view,
|
||||||
static void render_view(struct sway_output *output, pixman_region32_t *damage,
|
static void render_view(struct sway_output *output, pixman_region32_t *damage,
|
||||||
struct sway_container *con, struct border_colors *colors) {
|
struct sway_container *con, struct border_colors *colors) {
|
||||||
struct sway_view *view = con->sway_view;
|
struct sway_view *view = con->sway_view;
|
||||||
render_view_surfaces(view, output, damage);
|
render_view_surfaces(view, output, damage, view->swayc->alpha);
|
||||||
|
|
||||||
struct wlr_box box;
|
struct wlr_box box;
|
||||||
float output_scale = output->wlr_output->scale;
|
float output_scale = output->wlr_output->scale;
|
||||||
|
@ -810,7 +810,7 @@ static void render_output(struct sway_output *output, struct timespec *when,
|
||||||
|
|
||||||
// TODO: handle views smaller than the output
|
// TODO: handle views smaller than the output
|
||||||
render_view_surfaces(
|
render_view_surfaces(
|
||||||
workspace->sway_workspace->fullscreen, output, damage);
|
workspace->sway_workspace->fullscreen, output, damage, 1.0f);
|
||||||
|
|
||||||
if (workspace->sway_workspace->fullscreen->type == SWAY_VIEW_XWAYLAND) {
|
if (workspace->sway_workspace->fullscreen->type == SWAY_VIEW_XWAYLAND) {
|
||||||
render_unmanaged(output, damage,
|
render_unmanaged(output, damage,
|
||||||
|
|
Loading…
Reference in a new issue