From d3f090edac60d35fc14d481cb994b95041d2760c Mon Sep 17 00:00:00 2001 From: Sagar Vora <16315650+sagarvora@users.noreply.github.com> Date: Thu, 19 Feb 2026 22:54:35 +0530 Subject: [PATCH] perf: avoid layout thrashing in grid `setup_toolbar` (#37265) --- frappe/public/js/frappe/form/grid.js | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/frappe/public/js/frappe/form/grid.js b/frappe/public/js/frappe/form/grid.js index c4ef420b8d..8086abc224 100644 --- a/frappe/public/js/frappe/form/grid.js +++ b/frappe/public/js/frappe/form/grid.js @@ -593,8 +593,9 @@ export default class Grid { } setup_toolbar() { - if (this.is_editable()) { - this.wrapper.find(".grid-footer").toggle(true); + const is_editable = this.is_editable(); + if (is_editable) { + this.wrapper.find(".grid-footer").removeClass("hidden"); const num_selected_rows = this.get_selected_children().length; // show, hide buttons to add rows @@ -619,12 +620,12 @@ export default class Grid { this.grid_rows.length < this.grid_pagination.page_length && !this.df.allow_bulk_edit ) { - this.wrapper.find(".grid-footer").toggle(false); + this.wrapper.find(".grid-footer").addClass("hidden"); } this.wrapper .find(".grid-add-row, .grid-add-multiple-rows, .grid-upload") - .toggle(this.is_editable()); + .toggleClass("hidden", !is_editable); } truncate_rows() {