feat: Unfocus cells when mouse leaves the table (#2442)
* feat: Unfocus cells when mouse leaves the table * fix: only unfocus cells that are not in edit mode
This commit is contained in:
@ -90,6 +90,7 @@ export const RecordTableV1 = ({ updateEntityMutation }: RecordTableV1Props) => {
|
|||||||
setRowSelectedState,
|
setRowSelectedState,
|
||||||
resetTableRowSelection,
|
resetTableRowSelection,
|
||||||
useMapKeyboardToSoftFocus,
|
useMapKeyboardToSoftFocus,
|
||||||
|
getIsSomeCellInEditMode,
|
||||||
} = useRecordTable();
|
} = useRecordTable();
|
||||||
|
|
||||||
useMapKeyboardToSoftFocus();
|
useMapKeyboardToSoftFocus();
|
||||||
@ -117,11 +118,17 @@ export const RecordTableV1 = ({ updateEntityMutation }: RecordTableV1Props) => {
|
|||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const handleMouseLeave = () => {
|
||||||
|
const isSomeCellInEditMode = getIsSomeCellInEditMode();
|
||||||
|
if (isSomeCellInEditMode) return;
|
||||||
|
leaveTableFocus();
|
||||||
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<EntityUpdateMutationContext.Provider value={updateEntityMutation}>
|
<EntityUpdateMutationContext.Provider value={updateEntityMutation}>
|
||||||
<StyledTableWithHeader>
|
<StyledTableWithHeader>
|
||||||
<StyledTableContainer>
|
<StyledTableContainer>
|
||||||
<div ref={tableBodyRef}>
|
<div ref={tableBodyRef} onMouseLeave={handleMouseLeave}>
|
||||||
<StyledTable className="entity-table-cell">
|
<StyledTable className="entity-table-cell">
|
||||||
<RecordTableHeader />
|
<RecordTableHeader />
|
||||||
<RecordTableBodyV1 />
|
<RecordTableBodyV1 />
|
||||||
|
|||||||
Reference in New Issue
Block a user