From 30fb3d3285e0d254fc40c38afbb6828fbcb29039 Mon Sep 17 00:00:00 2001 From: Bircck <55695195+Bircck@users.noreply.github.com> Date: Fri, 11 Sep 2026 07:12:18 +0200 Subject: [PATCH] fix(website): preserve keyboard scrolling in metadata margins --- Website/app/metadata/page.tsx | 2 +- Website/components/datamodelview/List.tsx | 147 ++++++++++++---------- 2 files changed, 79 insertions(+), 70 deletions(-) diff --git a/Website/app/metadata/page.tsx b/Website/app/metadata/page.tsx index 5e5f38f..e5b480c 100644 --- a/Website/app/metadata/page.tsx +++ b/Website/app/metadata/page.tsx @@ -9,7 +9,7 @@ export default function Data() { - + diff --git a/Website/components/datamodelview/List.tsx b/Website/components/datamodelview/List.tsx index 37a77d5..7190f13 100644 --- a/Website/components/datamodelview/List.tsx +++ b/Website/components/datamodelview/List.tsx @@ -9,7 +9,7 @@ import { updateURL } from "@/lib/url-utils"; import { copyToClipboard, generateGroupLink } from "@/lib/clipboard-utils"; import { useSnackbar } from "@/contexts/SnackbarContext"; import { useEntityFilters } from "@/contexts/EntityFiltersContext"; -import { Box, CircularProgress, debounce, Tooltip } from '@mui/material'; +import { Box, CircularProgress, Container, debounce, Tooltip } from '@mui/material'; interface IListProps { setCurrentIndex: (index: number) => void; @@ -284,76 +284,85 @@ export const List = ({ setCurrentIndex, entityActiveTabs }: IListProps) => { -
- - {/* Show no results message when searching but no items found */} - {flatItems.length === 0 && search && search.length >= 3 && ( -
-
No tables found
-
- No attributes match your search for "{search}" +
+ + + {/* Show no results message when searching but no items found */} + {flatItems.length === 0 && search && search.length >= 3 && ( +
+
No tables found
+
+ No attributes match your search for "{search}" +
+ )} + + {/* Virtualized list */} +
+ {rowVirtualizer.getVirtualItems().map((virtualItem) => { + const item = flatItems[virtualItem.index]; + + return ( +
{ + if (el) { + rowVirtualizer.measureElement(el); + } + }} + > + {item.type === 'group' ? ( +
+
+ +
handleCopyGroupLink(item.group.Name)} + > + {item.group.Name} +
+
+
+
+ ) : ( +
+
0 && hasSecurityRoleAccess(item.entity)} + /> +
+ )} +
+ ); + })}
- )} - - {/* Virtualized list */} -
- {rowVirtualizer.getVirtualItems().map((virtualItem) => { - const item = flatItems[virtualItem.index]; - - return ( -
{ - if (el) { - rowVirtualizer.measureElement(el); - } - }} - > - {item.type === 'group' ? ( -
-
- -
handleCopyGroupLink(item.group.Name)} - > - {item.group.Name} -
-
-
-
- ) : ( -
-
0 && hasSecurityRoleAccess(item.entity)} - /> -
- )} -
- ); - })} -
+
);