From 84d65b1a77504f75a023d40c80c215e5fd08cdcc Mon Sep 17 00:00:00 2001 From: Michel Weststrate Date: Thu, 6 May 2021 04:26:41 -0700 Subject: [PATCH] DataTable tweaks Summary: Found a small issue in the column width calculation where initial invisible columns still got space assigned. Reviewed By: passy Differential Revision: D28221659 fbshipit-source-id: ef052533bc37bc833bab72979803ce36bcf50e61 --- desktop/flipper-plugin/src/ui/DataList.tsx | 3 +++ .../flipper-plugin/src/ui/data-table/DataTableManager.tsx | 5 +++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/desktop/flipper-plugin/src/ui/DataList.tsx b/desktop/flipper-plugin/src/ui/DataList.tsx index 4b8690df7..9be896662 100644 --- a/desktop/flipper-plugin/src/ui/DataList.tsx +++ b/desktop/flipper-plugin/src/ui/DataList.tsx @@ -94,6 +94,9 @@ export const DataList: React.FC> = function DataList< const tableManagerRef = tableProps.tableManagerRef ?? createRef>(); useAssertStableRef(baseSelection, 'selection'); + useAssertStableRef(onRenderItem, 'onRenderItem'); + useAssertStableRef(enableArrow, 'enableArrow'); + // create local selection atom if none provided // eslint-disable-next-line const selection = baseSelection ?? useState(() => createState())[0]; diff --git a/desktop/flipper-plugin/src/ui/data-table/DataTableManager.tsx b/desktop/flipper-plugin/src/ui/data-table/DataTableManager.tsx index ba2e5d059..16abf85b0 100644 --- a/desktop/flipper-plugin/src/ui/data-table/DataTableManager.tsx +++ b/desktop/flipper-plugin/src/ui/data-table/DataTableManager.tsx @@ -443,8 +443,9 @@ function computeInitialColumns( columns: DataTableColumn[], ): DataTableColumn[] { const visibleColumnCount = columns.filter((c) => c.visible !== false).length; - const columnsWithoutWidth = columns.filter((c) => c.width === undefined) - .length; + const columnsWithoutWidth = columns.filter( + (c) => c.visible !== false && c.width === undefined, + ).length; return columns.map((c) => ({ ...c,