shod

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

commit f6f7921e6704abe1a71c7098c207f0d1001a83de
parent d66f50100d7a5b12bf7f0557e33bb1d3fcfaa9aa
Author: phillbush <phillbush@cock.li>
Date:   Wed, 15 Sep 2021 19:26:26 -0300

avoid calculating rows twice when rearranging them

Diffstat:
Mshod.c | 10++++++----
1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/shod.c b/shod.c @@ -2484,7 +2484,7 @@ tabdel(struct Tab *t) /* detach row from column */ static void -rowdetach(struct Row *row) +rowdetach(struct Row *row, int recalc) { if (row->col->selrow == row) row->col->selrow = (row->prev != NULL) ? row->prev : row->next; @@ -2499,7 +2499,9 @@ rowdetach(struct Row *row) row->col->maxrow = NULL; row->next = NULL; row->prev = NULL; - colcalcrows(row->col, 0); + if (recalc) { + colcalcrows(row->col, 0); + } } /* delete row */ @@ -2508,7 +2510,7 @@ rowdel(struct Row *row) { while (row->tabs) tabdel(row->tabs); - rowdetach(row); + rowdetach(row, 1); XDestroyWindow(dpy, row->frame); XDestroyWindow(dpy, row->bar); XDestroyWindow(dpy, row->bl); @@ -4021,7 +4023,7 @@ done: break; } if (prev != row && prev != NULL) { - rowdetach(row); + rowdetach(row, 0); coladdrow(newcol, row, prev); } if (row->prev != NULL) {