sway

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

commit d8f364a8460aa28cd0e859bfa1e84e37b7bdf6ef
parent 8cc2c6fa7a4b5e8b2d2030033a4bb9f7df45fc42
Author: Jose Diez <jose.manuel.diez@gmail.com>
Date:   Mon, 10 Aug 2015 22:45:50 +0200

workspaces: follow_pointer_mouse doesn't follow hidden containers

Diffstat:
Msway/handlers.c | 3++-
Msway/layout.h | 4+++-
Msway/workspace.c | 1+
3 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/sway/handlers.c b/sway/handlers.c @@ -85,7 +85,8 @@ bool handle_key(wlc_handle view, uint32_t time, const struct wlc_modifiers bool pointer_test(swayc_t *view, void *_origin) { const struct wlc_origin *origin = _origin; if (view->type == C_VIEW && origin->x >= view->x && origin->y >= view->y - && origin->x < view->x + view->width && origin->y < view->y + view->height) { + && origin->x < view->x + view->width && origin->y < view->y + view->height + && view->visible) { return true; } return false; diff --git a/sway/layout.h b/sway/layout.h @@ -29,7 +29,9 @@ struct sway_container { int x, y; - int weight; + bool visible; + + int weight; char *name; diff --git a/sway/workspace.c b/sway/workspace.c @@ -40,6 +40,7 @@ void set_mask(swayc_t *view, void *data) { if(view->type == C_VIEW) { wlc_view_set_mask(view->handle, *p); + view->visible = (*p == 2); } }