21224: close button now always closes Arvados-DCO-1.1-Signed-off-by: Lisa Knox <lisa...
authorLisa Knox <lisaknox83@gmail.com>
Wed, 7 Feb 2024 20:27:01 +0000 (15:27 -0500)
committerLisa Knox <lisaknox83@gmail.com>
Wed, 7 Feb 2024 20:27:01 +0000 (15:27 -0500)
services/workbench2/src/store/details-panel/details-panel-action.ts
services/workbench2/src/views-components/details-panel/details-panel.tsx

index bdfeaa18c1df60832eb5609b198cdf6533e9b5ad..6cf599720d3dd2af0b2b2f861eb9e58db96a7c72 100644 (file)
@@ -70,6 +70,7 @@ export const toggleDetailsPanel = (uuid: string = '') => (dispatch: Dispatch, ge
     const { detailsPanel, router }= getState()
     const currentRoute = router.location?.pathname.split('/') || [];
     const currentItemUuid = currentRoute[currentRoute.length - 1];
+    console.log('toggleDetailsPanel', uuid, detailsPanel.resourceUuid, currentItemUuid)
     // because of material-ui issue resizing details panel breaks tabs.
     // triggering window resize event fixes that.
     if(uuid !== detailsPanel.resourceUuid  && (detailsPanel.isOpened || uuid === currentItemUuid)){
index 2653a2103345fe40a99cf9deb467e162efb05572..f4e0766d87014ff6d785d611f7aeb2e6d1b92936 100644 (file)
@@ -103,12 +103,13 @@ const mapStateToProps = ({ auth, detailsPanel, resources, collectionPanelFiles,
         isOpened: detailsPanel.isOpened,
         tabNr: detailsPanel.tabNr,
         res: resource || (file && file.value) || EMPTY_RESOURCE,
+        currentItemUuid
     };
 };
 
 const mapDispatchToProps = (dispatch: Dispatch) => ({
-    onCloseDrawer: () => {
-        dispatch<any>(toggleDetailsPanel());
+    onCloseDrawer: (currentItemId) => {
+        dispatch<any>(toggleDetailsPanel(currentItemId));
     },
     setActiveTab: (tabNr: number) => {
         dispatch<any>(openDetailsPanel(undefined, tabNr));
@@ -116,13 +117,14 @@ const mapDispatchToProps = (dispatch: Dispatch) => ({
 });
 
 export interface DetailsPanelDataProps {
-    onCloseDrawer: () => void;
+    onCloseDrawer: (currentItemId) => void;
     setActiveTab: (tabNr: number) => void;
     authConfig: Config;
     isOpened: boolean;
     tabNr: number;
     res: DetailsResource;
     isFrozen: boolean;
+    currentItemUuid: string;
 }
 
 type DetailsPanelProps = DetailsPanelDataProps & WithStyles<CssRules>;
@@ -162,7 +164,7 @@ export const DetailsPanel = withStyles(styles)(
             }
 
             renderContent() {
-                const { classes, onCloseDrawer, res, tabNr, authConfig } = this.props;
+                const { classes, onCloseDrawer, res, tabNr, authConfig, currentItemUuid } = this.props;
 
                 let shouldShowInlinePreview = false;
                 if (!('kind' in res)) {
@@ -199,7 +201,7 @@ export const DetailsPanel = withStyles(styles)(
                             </Tooltip>
                         </Grid>
                         <Grid item>
-                            <IconButton color="inherit" onClick={onCloseDrawer}>
+                            <IconButton color="inherit" onClick={()=>onCloseDrawer(currentItemUuid)}>
                                 <CloseIcon />
                             </IconButton>
                         </Grid>