mirror of
https://github.com/tmate-io/tmate.git
synced 2025-02-03 11:59:13 +01:00
mouse-resize-pane: Only resize on border select
The current behaviour of mouse-resize-pane is such that if the mouse button is held down and a selection takes place within a pane, that if the mouse pointer then hits a border edge, that pane-resize would initiate. This seems counter-intuitive; instead, check for a resize condition if the border of a pane is selected, and in the case of mouse selection within a pane, no longer resize the pane if edge of the border is hit. By Thomas Adam.
This commit is contained in:
parent
b822d24b15
commit
d2160e3f83
5
layout.c
5
layout.c
@ -533,6 +533,9 @@ layout_resize_pane_mouse(struct client *c)
|
|||||||
pane_border = 0;
|
pane_border = 0;
|
||||||
if (m->event & MOUSE_EVENT_DRAG && m->flags & MOUSE_RESIZE_PANE) {
|
if (m->event & MOUSE_EVENT_DRAG && m->flags & MOUSE_RESIZE_PANE) {
|
||||||
TAILQ_FOREACH(wp, &w->panes, entry) {
|
TAILQ_FOREACH(wp, &w->panes, entry) {
|
||||||
|
if (!window_pane_visible(wp))
|
||||||
|
continue;
|
||||||
|
|
||||||
if (wp->xoff + wp->sx == m->lx &&
|
if (wp->xoff + wp->sx == m->lx &&
|
||||||
wp->yoff <= 1 + m->ly &&
|
wp->yoff <= 1 + m->ly &&
|
||||||
wp->yoff + wp->sy >= m->ly) {
|
wp->yoff + wp->sy >= m->ly) {
|
||||||
@ -550,7 +553,7 @@ layout_resize_pane_mouse(struct client *c)
|
|||||||
}
|
}
|
||||||
if (pane_border)
|
if (pane_border)
|
||||||
server_redraw_window(w);
|
server_redraw_window(w);
|
||||||
} else if (~m->event & MOUSE_EVENT_UP) {
|
} else if (m->event & MOUSE_EVENT_DOWN) {
|
||||||
TAILQ_FOREACH(wp, &w->panes, entry) {
|
TAILQ_FOREACH(wp, &w->panes, entry) {
|
||||||
if ((wp->xoff + wp->sx == m->x &&
|
if ((wp->xoff + wp->sx == m->x &&
|
||||||
wp->yoff <= 1 + m->y &&
|
wp->yoff <= 1 + m->y &&
|
||||||
|
Loading…
Reference in New Issue
Block a user