interface BreadcrumbsProps {
items: Breadcrumb[];
onClick: (breadcrumb: Breadcrumb) => void;
+ onContextMenu: (event: React.MouseEvent<HTMLElement>, breadcrumb: Breadcrumb) => void;
}
-const Breadcrumbs: React.SFC<BreadcrumbsProps & WithStyles<CssRules>> = ({ classes, onClick, items }) => {
+const Breadcrumbs: React.SFC<BreadcrumbsProps & WithStyles<CssRules>> = ({ classes, onClick, onContextMenu, items }) => {
return <Grid container alignItems="center" wrap="nowrap">
{
items.map((item, index) => {
color="inherit"
className={isLastItem ? classes.currentItem : classes.item}
onClick={() => onClick(item)}
- >
+ onContextMenu={event => onContextMenu(event, item)}>
<Typography
noWrap
color="inherit"
- className={classes.label}
- >
+ className={classes.label}>
{item.label}
</Typography>
</Button>
onSearch: (searchText: string) => void;
onBreadcrumbClick: (breadcrumb: Breadcrumb) => void;
onMenuItemClick: (menuItem: MainAppBarMenuItem) => void;
+ onContextMenu: (event: React.MouseEvent<HTMLElement>, breadcrumb: Breadcrumb) => void;
onDetailsPanelToggle: () => void;
}
</Toolbar>
<Toolbar >
{
- props.user && <Breadcrumbs items={props.breadcrumbs} onClick={props.onBreadcrumbClick} />
+ props.user && <Breadcrumbs
+ items={props.breadcrumbs}
+ onClick={props.onBreadcrumbClick}
+ onContextMenu={props.onContextMenu} />
}
<IconButton color="inherit" onClick={props.onDetailsPanelToggle}>
<InfoIcon />
onMenuItemClick: (menuItem: NavMenuItem) => menuItem.action(),
onDetailsPanelToggle: () => {
this.setState(prev => ({ isDetailsPanelOpened: !prev.isDetailsPanelOpened }));
+ },
+ onContextMenu: (event: React.MouseEvent<HTMLElement>, breadcrumb: Breadcrumb) => {
+ this.openContextMenu(event, breadcrumb);
}
};