aboutsummaryrefslogtreecommitdiff
path: root/sway/handlers.c
diff options
context:
space:
mode:
authortaiyu <taiyu.len@gmail.com>2015-08-16 18:41:51 -0700
committertaiyu <taiyu.len@gmail.com>2015-08-16 18:41:51 -0700
commitffb34583220005889fea117d3b9bc65a4714b6bf (patch)
treec1c7f522904f6fb0e1c2a081ed7db7840b5e3dad /sway/handlers.c
parent498cf268f712e0bc8d00cf9ef7e3886129904c67 (diff)
focus changes when mouse moves over border instead of all mouse movement
Diffstat (limited to 'sway/handlers.c')
-rw-r--r--sway/handlers.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/sway/handlers.c b/sway/handlers.c
index 817f197e..0e68a3c8 100644
--- a/sway/handlers.c
+++ b/sway/handlers.c
@@ -239,10 +239,11 @@ static bool handle_key(wlc_handle view, uint32_t time, const struct wlc_modifier
static bool handle_pointer_motion(wlc_handle view, uint32_t time, const struct wlc_origin *origin) {
mouse_origin = *origin;
- if (!config->focus_follows_mouse) {
- return false;
+ static wlc_handle prev_view = -1;
+ if (config->focus_follows_mouse && prev_view != view) {
+ focus_pointer();
}
- focus_pointer();
+ prev_view = view;
return false;
}