From 4f2c162203dbd5742eaf6dc4aa0c79102589a758 Mon Sep 17 00:00:00 2001 From: Michael Grant Date: Tue, 16 Jun 2026 18:27:07 +0200 Subject: [PATCH] Changed name of the mouse drag functions to be consistent with similar functions in cmd-join-pane.c. Specifically added what these callbacks actually do in the name. Added comment in code so it's clear too. --- cmd-resize-pane.c | 35 +++++++++++++++++++++++++---------- 1 file changed, 25 insertions(+), 10 deletions(-) diff --git a/cmd-resize-pane.c b/cmd-resize-pane.c index 5ea3b03b..83b2393a 100644 --- a/cmd-resize-pane.c +++ b/cmd-resize-pane.c @@ -31,10 +31,10 @@ static enum cmd_retval cmd_resize_pane_exec(struct cmd *, struct cmdq_item *); static enum cmd_retval cmd_resize_pane_mouse_update(struct cmd *, struct cmdq_item *); -static void cmd_resize_pane_mouse_update_floating(struct client *, - struct mouse_event *); -static void cmd_resize_pane_mouse_update_tiled(struct client *, - struct mouse_event *); +static void cmd_resize_pane_mouse_update_resize_move_floating( + struct client *, struct mouse_event *); +static void cmd_resize_pane_mouse_update_resize_tiled( + struct client *, struct mouse_event *); const struct cmd_entry cmd_resize_pane_entry = { .name = "resize-pane", @@ -205,21 +205,36 @@ cmd_resize_pane_mouse_update(__unused struct cmd *self, struct cmdq_item *item) return (CMD_RETURN_NORMAL); if (!window_pane_is_floating(wp)) { - c->tty.mouse_drag_update = cmd_resize_pane_mouse_update_tiled; - cmd_resize_pane_mouse_update_tiled(c, &event->m); + c->tty.mouse_drag_update = + cmd_resize_pane_mouse_update_resize_tiled; + cmd_resize_pane_mouse_update_resize_tiled(c, &event->m); return (CMD_RETURN_NORMAL); } window_redraw_active_switch(w, wp); window_set_active_pane(w, wp, 1); - c->tty.mouse_drag_update = cmd_resize_pane_mouse_update_floating; - cmd_resize_pane_mouse_update_floating(c, &event->m); + /* Set up mouse_drag_update callback. */ + c->tty.mouse_drag_update = + cmd_resize_pane_mouse_update_resize_move_floating; + cmd_resize_pane_mouse_update_resize_move_floating(c, &event->m); return (CMD_RETURN_NORMAL); } +/* + * Resizes or moves the pane by dragging. + * server-client.c calls c->tty.mouse_drag_update(c, m) which + * calls this function. + * Resize a floating pane by dragging the borders or corners. + * Grabbing an edge only resizes that axis. + * (Special case) Moves the pane if dragging the top border. + * Since characters are generally rectangular, to make it + * easier to grab the corner, the character next to the corner + * is also considered the corner. + */ static void -cmd_resize_pane_mouse_update_floating(struct client *c, struct mouse_event *m) +cmd_resize_pane_mouse_update_resize_move_floating(struct client *c, + struct mouse_event *m) { struct winlink *wl; struct window *w; @@ -345,7 +360,7 @@ cmd_resize_pane_mouse_update_floating(struct client *c, struct mouse_event *m) } static void -cmd_resize_pane_mouse_update_tiled(struct client *c, struct mouse_event *m) +cmd_resize_pane_mouse_update_resize_tiled(struct client *c, struct mouse_event *m) { struct winlink *wl; struct window *w;