X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/407d1f609f40e8a7d21cf5846690b63706befaa4..21abfcbaba4e8e735f353a1e3b030dd5dae8465b:/src/views/project-panel/project-panel.tsx diff --git a/src/views/project-panel/project-panel.tsx b/src/views/project-panel/project-panel.tsx index 47dbd9b0..35a7f9c1 100644 --- a/src/views/project-panel/project-panel.tsx +++ b/src/views/project-panel/project-panel.tsx @@ -44,6 +44,7 @@ import { getInitialProcessStatusFilters } from '~/store/resource-type-filters/resource-type-filters'; import { GroupContentsResource } from '~/services/groups-service/groups-service'; +import { GroupClass, GroupResource } from '~/models/group'; type CssRules = 'root' | "button"; @@ -167,7 +168,14 @@ export const ProjectPanel = withStyles(styles)( handleContextMenu = (event: React.MouseEvent, resourceUuid: string) => { const { resources } = this.props; const resource = getResource(resourceUuid)(resources); - const menuKind = this.props.dispatch(resourceUuidToContextMenuKind(resourceUuid)); + // When viewing the contents of a filter group, all contents should be treated as read only. + let readonly = false; + const project = getResource(this.props.currentItemId)(resources); + if (project && project.groupClass === GroupClass.FILTER) { + readonly = true; + } + + const menuKind = this.props.dispatch(resourceUuidToContextMenuKind(resourceUuid, readonly)); if (menuKind && resource) { this.props.dispatch(openContextMenu(event, { name: resource.name,