From c013d74df98309f7cc57fd854bfd8e35634cba67 Mon Sep 17 00:00:00 2001 From: Stephen Smith Date: Wed, 7 Dec 2022 18:46:59 -0500 Subject: [PATCH] 19504: Allow breadcrumbs to collapse to icons instead of wrapping Arvados-DCO-1.1-Signed-off-by: Stephen Smith --- src/components/breadcrumbs/breadcrumbs.tsx | 12 ++++++++++-- .../main-content-bar/main-content-bar.tsx | 7 +++++-- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/src/components/breadcrumbs/breadcrumbs.tsx b/src/components/breadcrumbs/breadcrumbs.tsx index 1d4b7b27..c887727e 100644 --- a/src/components/breadcrumbs/breadcrumbs.tsx +++ b/src/components/breadcrumbs/breadcrumbs.tsx @@ -19,12 +19,13 @@ export interface Breadcrumb { uuid: string; } -type CssRules = "item" | "label" | "icon" | "frozenIcon"; +type CssRules = "item" | "label" | "buttonLabel" | "icon" | "frozenIcon"; const styles: StyleRulesCallback = (theme: ArvadosTheme) => ({ item: { borderRadius: '16px', height: '32px', + minWidth: '36px', color: theme.customs.colors.grey700, '&.parentItem': { color: `${theme.palette.primary.main}`, @@ -36,6 +37,10 @@ const styles: StyleRulesCallback = (theme: ArvadosTheme) => ({ paddingLeft: '3px', lineHeight: '1.4', }, + buttonLabel: { + overflow: 'hidden', + justifyContent: 'flex-start', + }, icon: { fontSize: 20, color: grey["600"], @@ -57,7 +62,7 @@ export interface BreadcrumbsProps { export const Breadcrumbs = withStyles(styles)( ({ classes, onClick, onContextMenu, items, resources }: BreadcrumbsProps & WithStyles) => - + { items.map((item, index) => { const isLastItem = index === items.length - 1; @@ -78,6 +83,9 @@ export const Breadcrumbs = withStyles(styles)( isLastItem ? null : 'parentItem', classes.item )} + classes={{ + label: classes.buttonLabel + }} color="inherit" onClick={() => onClick(item)} onContextMenu={event => onContextMenu(event, item)}> diff --git a/src/views-components/main-content-bar/main-content-bar.tsx b/src/views-components/main-content-bar/main-content-bar.tsx index 5c1bec90..3f4de301 100644 --- a/src/views-components/main-content-bar/main-content-bar.tsx +++ b/src/views-components/main-content-bar/main-content-bar.tsx @@ -15,12 +15,15 @@ import RefreshButton from "components/refresh-button/refresh-button"; import { loadSidePanelTreeProjects } from "store/side-panel-tree/side-panel-tree-actions"; import { Dispatch } from "redux"; -type CssRules = 'mainBar' | 'infoTooltip'; +type CssRules = 'mainBar' | 'breadcrumbContainer' | 'infoTooltip'; const styles: StyleRulesCallback = theme => ({ mainBar: { flexWrap: 'nowrap', }, + breadcrumbContainer: { + overflow: 'hidden', + }, infoTooltip: { marginTop: '-10px', marginLeft: '10px', @@ -65,7 +68,7 @@ const mapDispatchToProps = () => (dispatch: Dispatch) => ({ export const MainContentBar = connect(mapStateToProps, mapDispatchToProps)(withStyles(styles)( (props: MainContentBarProps & WithStyles & any) => - + -- 2.30.2