Skip to content

Commit

Permalink
[DataGrid] Fix print export failure when hideFooter option is set (m…
Browse files Browse the repository at this point in the history
…ui#13034)

Co-authored-by: Bilal Shafi <[email protected]>
  • Loading branch information
2 people authored and thomasmoon committed Sep 6, 2024
1 parent 8195e03 commit 173369e
Showing 1 changed file with 12 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -177,15 +177,18 @@ export const useGridPrintExport = (
// The height above does not include grid border width, so we need to exclude it
gridClone.style.boxSizing = 'content-box';

// the footer is always being placed at the bottom of the page as if all rows are exported
// so if getRowsToExport is being used to only export a subset of rows then we need to
// adjust the footer position to be correctly placed at the bottom of the grid
const gridFooterElement: HTMLElement | null = gridClone.querySelector(
`.${gridClasses.footerContainer}`,
);
gridFooterElement!.style.position = 'absolute';
gridFooterElement!.style.width = '100%';
gridFooterElement!.style.top = `${computedTotalHeight - gridFooterElementHeight}px`;
if (!normalizeOptions.hideFooter) {
// the footer is always being placed at the bottom of the page as if all rows are exported
// so if getRowsToExport is being used to only export a subset of rows then we need to
// adjust the footer position to be correctly placed at the bottom of the grid
const gridFooterElement: HTMLElement | null = gridClone.querySelector(
`.${gridClasses.footerContainer}`,
)!;

gridFooterElement.style.position = 'absolute';
gridFooterElement.style.width = '100%';
gridFooterElement.style.top = `${computedTotalHeight - gridFooterElementHeight}px`;
}

// printDoc.body.appendChild(gridClone); should be enough but a clone isolation bug in Safari
// prevents us to do it
Expand Down

0 comments on commit 173369e

Please sign in to comment.