diff options
| -rw-r--r-- | sway/input_state.c | 7 | 
1 files changed, 7 insertions, 0 deletions
| diff --git a/sway/input_state.c b/sway/input_state.c index a63fc01c..03904322 100644 --- a/sway/input_state.c +++ b/sway/input_state.c @@ -114,14 +114,21 @@ static void pointer_mode_set_right(void) {  	if (initial.ptr->is_floating) {  		pointer_state.mode = M_RESIZING | M_FLOATING;  	} else { +		bool reset = true;  		pointer_state.mode = M_RESIZING | M_TILING;  		if ((initial.lr.ptr = get_swayc_in_direction(initial.ptr, lock.left ? MOVE_RIGHT: MOVE_LEFT))) {  			initial.lr.x = initial.lr.ptr->x;  			initial.lr.w = initial.lr.ptr->width; +			reset = false;  		}  		if ((initial.tb.ptr = get_swayc_in_direction(initial.ptr, lock.top ? MOVE_DOWN: MOVE_UP))) {  			initial.tb.y = initial.tb.ptr->y;  			initial.tb.h = initial.tb.ptr->height; +			reset = false; +		} +		// If nothing changes just undo the mode +		if (reset) { +			pointer_state.mode = 0;  		}  	}  } | 
