@@ -4,34 +4,27 @@ import { useCanvasIsBusy } from 'features/controlLayers/hooks/useCanvasIsBusy';
4
4
import { entityDeleted } from 'features/controlLayers/store/canvasSlice' ;
5
5
import { selectSelectedEntityIdentifier } from 'features/controlLayers/store/selectors' ;
6
6
import { useRegisteredHotkeys } from 'features/system/components/HotkeysModal/useHotkeyData' ;
7
- import { selectActiveTab , selectActiveTabCanvasRightPanel } from 'features/ui/store/uiSelectors' ;
8
- import { useCallback , useMemo } from 'react' ;
7
+ import { selectActiveTabCanvasRightPanel } from 'features/ui/store/uiSelectors' ;
8
+ import { useCallback } from 'react' ;
9
9
10
10
export function useCanvasDeleteLayerHotkey ( ) {
11
11
useAssertSingleton ( useCanvasDeleteLayerHotkey . name ) ;
12
12
const dispatch = useAppDispatch ( ) ;
13
13
const selectedEntityIdentifier = useAppSelector ( selectSelectedEntityIdentifier ) ;
14
14
const isBusy = useCanvasIsBusy ( ) ;
15
15
const canvasRightPanelTab = useAppSelector ( selectActiveTabCanvasRightPanel ) ;
16
- const appTab = useAppSelector ( selectActiveTab ) ;
17
16
18
17
const deleteSelectedLayer = useCallback ( ( ) => {
19
- if ( selectedEntityIdentifier === null ) {
18
+ if ( selectedEntityIdentifier === null || isBusy || canvasRightPanelTab !== 'layers' ) {
20
19
return ;
21
20
}
22
21
dispatch ( entityDeleted ( { entityIdentifier : selectedEntityIdentifier } ) ) ;
23
- } , [ dispatch , selectedEntityIdentifier ] ) ;
24
-
25
- const isDeleteEnabled = useMemo (
26
- ( ) => selectedEntityIdentifier !== null && ! isBusy && canvasRightPanelTab === 'layers' && appTab === 'canvas' ,
27
- [ selectedEntityIdentifier , isBusy , canvasRightPanelTab , appTab ]
28
- ) ;
22
+ } , [ canvasRightPanelTab , dispatch , isBusy , selectedEntityIdentifier ] ) ;
29
23
30
24
useRegisteredHotkeys ( {
31
25
id : 'deleteSelected' ,
32
26
category : 'canvas' ,
33
27
callback : deleteSelectedLayer ,
34
- options : { enabled : isDeleteEnabled } ,
35
- dependencies : [ isDeleteEnabled , deleteSelectedLayer ] ,
28
+ dependencies : [ deleteSelectedLayer ] ,
36
29
} ) ;
37
30
}
0 commit comments