Adds escape hotkey to close floating panels

This commit is contained in:
psychedelicious 2022-11-03 02:07:00 +11:00 committed by Lincoln Stein
parent a1971f6830
commit 1f0bd3ca6c
5 changed files with 29 additions and 2 deletions

View File

@ -163,6 +163,15 @@ export default function ImageGallery() {
[shouldPinGallery]
);
useHotkeys(
'esc',
() => {
if (shouldPinGallery) return;
dispatch(setShouldShowGallery(false));
},
[shouldPinGallery]
);
const IMAGE_SIZE_STEP = 32;
useHotkeys(

View File

@ -32,10 +32,12 @@ import {
setUpscalingStrength,
setWidth,
setInitialImage,
setShouldShowImageDetails,
} from '../../options/optionsSlice';
import promptToString from '../../../common/util/promptToString';
import { seedWeightsToString } from '../../../common/util/seedWeightPairs';
import { FaCopy } from 'react-icons/fa';
import { useHotkeys } from 'react-hotkeys-hook';
type MetadataItemProps = {
isLink?: boolean;
@ -107,7 +109,10 @@ const memoEqualityCheck = (
const ImageMetadataViewer = memo(
({ image, styleClass }: ImageMetadataViewerProps) => {
const dispatch = useAppDispatch();
// const jsonBgColor = useColorModeValue('blackAlpha.100', 'whiteAlpha.100');
useHotkeys('esc', () => {
dispatch(setShouldShowImageDetails(false));
});
const metadata = image?.metadata?.image || {};
const {

View File

@ -75,6 +75,10 @@ const Console = () => {
[shouldShowLogViewer]
);
useHotkeys('esc', () => {
dispatch(setShouldShowLogViewer(false));
});
const handleOnScroll = () => {
if (!viewerRef.current) return;
if (

View File

@ -100,6 +100,7 @@ export default function HotkeysModal({ children }: HotkeysModalProps) {
hotkey: 'Shift+I',
},
{ title: 'Delete Image', desc: 'Delete the current image', hotkey: 'Del' },
{ title: 'Close Panels', desc: 'Closes open panels', hotkey: 'Esc' },
];
const galleryHotkeys = [

View File

@ -67,6 +67,15 @@ const InvokeOptionsPanel = (props: Props) => {
[shouldShowOptionsPanel]
);
useHotkeys(
'esc',
() => {
if (shouldPinOptionsPanel) return;
dispatch(setShouldShowOptionsPanel(false));
},
[shouldPinOptionsPanel]
);
useHotkeys(
'shift+o',
() => {
@ -74,7 +83,6 @@ const InvokeOptionsPanel = (props: Props) => {
},
[shouldPinOptionsPanel]
);
//
const handleCloseOptionsPanel = useCallback(() => {
if (shouldPinOptionsPanel) return;