sway

i3-compatible Wayland compositor
git clone https://git.awy.one/sway
Log | Files | Refs | README | LICENSE

commit 8dae168b77173f086880db0878f0a4b34a53e8b3
parent fbcbbb976c29bb2c4b1bc6aeb6331acd10c70f5f
Author: Drew DeVault <sir@cmpwn.com>
Date:   Sat,  5 May 2018 07:25:10 -0400

Merge pull request #1918 from RyanDwyer/title-scissor

Use scissor to render title texture
Diffstat:
Msway/desktop/output.c | 8+++-----
Msway/tree/arrange.c | 1-
Msway/tree/container.c | 6------
3 files changed, 3 insertions(+), 12 deletions(-)

diff --git a/sway/desktop/output.c b/sway/desktop/output.c @@ -308,12 +308,10 @@ static void render_container_simple_border_normal(struct sway_output *output, // Title text if (title_texture) { - double x = (con->x + con->sway_view->border_thickness) - * output->wlr_output->scale; - double y = (con->y + con->sway_view->border_thickness) - * output->wlr_output->scale; + wlr_renderer_scissor(renderer, &box); wlr_render_texture(renderer, title_texture, - output->wlr_output->transform_matrix, x, y, 1); + output->wlr_output->transform_matrix, box.x, box.y, 1); + wlr_renderer_scissor(renderer, NULL); } } diff --git a/sway/tree/arrange.c b/sway/tree/arrange.c @@ -203,7 +203,6 @@ void arrange_children_of(struct sway_container *parent) { } else { arrange_children_of(child); } - container_update_title_textures(child); } container_damage_whole(parent); update_debug_tree(); diff --git a/sway/tree/container.c b/sway/tree/container.c @@ -584,12 +584,6 @@ static void update_title_texture(struct sway_container *con, get_text_size(c, config->font, &width, NULL, scale, false, "%s", con->name); cairo_destroy(c); - int borders = (con->type == C_VIEW ? con->sway_view->border_thickness : - config->border_thickness) * 2 * scale; - if (width > con->width * scale - borders) { - width = con->width * scale - borders; - } - cairo_surface_t *surface = cairo_image_surface_create( CAIRO_FORMAT_ARGB32, width, height); cairo_t *cairo = cairo_create(surface);