Skip to content

Commit 269fe2e

Browse files
Mary Hipppsychedelicious
authored andcommitted
track accordions in tabs separately so open/close state isnt shared
1 parent b32aa1c commit 269fe2e

File tree

3 files changed

+7
-26
lines changed

3 files changed

+7
-26
lines changed

invokeai/frontend/web/src/features/settingsAccordions/components/AdvancedSettingsAccordion/AdvancedSettingsAccordion.tsx

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import ParamVAEPrecision from 'features/parameters/components/VAEModel/ParamVAEP
1515
import { selectGenerationSlice } from 'features/parameters/store/generationSlice';
1616
import { useStandaloneAccordionToggle } from 'features/settingsAccordions/hooks/useStandaloneAccordionToggle';
1717
import { activeTabNameSelector } from 'features/ui/store/uiSelectors';
18-
import { memo, useEffect, useMemo } from 'react';
18+
import { memo, useMemo } from 'react';
1919
import { useTranslation } from 'react-i18next';
2020
import { useGetModelConfigQuery } from 'services/api/endpoints/models';
2121

@@ -63,17 +63,11 @@ export const AdvancedSettingsAccordion = memo(() => {
6363
);
6464
const badges = useAppSelector(selectBadges);
6565
const { t } = useTranslation();
66-
const { isOpen, onToggle, onClose } = useStandaloneAccordionToggle({
67-
id: 'advanced-settings',
66+
const { isOpen, onToggle } = useStandaloneAccordionToggle({
67+
id: `'advanced-settings-${activeTabName}`,
6868
defaultIsOpen: false,
6969
});
7070

71-
useEffect(() => {
72-
if (activeTabName === 'upscaling') {
73-
onClose();
74-
}
75-
}, [activeTabName, onClose]);
76-
7771
return (
7872
<StandaloneAccordion label={t('accordions.advanced.title')} badges={badges} isOpen={isOpen} onToggle={onToggle}>
7973
<Flex gap={4} alignItems="center" p={4} flexDir="column" data-testid="advanced-settings-accordion">

invokeai/frontend/web/src/features/settingsAccordions/components/GenerationSettingsAccordion/GenerationSettingsAccordion.tsx

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import { useExpanderToggle } from 'features/settingsAccordions/hooks/useExpander
1616
import { useStandaloneAccordionToggle } from 'features/settingsAccordions/hooks/useStandaloneAccordionToggle';
1717
import { activeTabNameSelector } from 'features/ui/store/uiSelectors';
1818
import { filter } from 'lodash-es';
19-
import { memo, useEffect, useMemo } from 'react';
19+
import { memo, useMemo } from 'react';
2020
import { useTranslation } from 'react-i18next';
2121
import { useSelectedModelConfig } from 'services/api/hooks/useSelectedModelConfig';
2222

@@ -43,21 +43,11 @@ export const GenerationSettingsAccordion = memo(() => {
4343
id: 'generation-settings-advanced',
4444
defaultIsOpen: false,
4545
});
46-
const {
47-
isOpen: isOpenAccordion,
48-
onToggle: onToggleAccordion,
49-
onClose: onCloseAccordion,
50-
} = useStandaloneAccordionToggle({
51-
id: 'generation-settings',
46+
const { isOpen: isOpenAccordion, onToggle: onToggleAccordion } = useStandaloneAccordionToggle({
47+
id: `generation-settings-${activeTabName}`,
5248
defaultIsOpen: activeTabName !== 'upscaling',
5349
});
5450

55-
useEffect(() => {
56-
if (activeTabName === 'upscaling') {
57-
onCloseAccordion();
58-
}
59-
}, [activeTabName, onCloseAccordion]);
60-
6151
return (
6252
<StandaloneAccordion
6353
label={t('accordions.generation.title')}

invokeai/frontend/web/src/features/settingsAccordions/hooks/useStandaloneAccordionToggle.ts

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,5 @@ export const useStandaloneAccordionToggle = (arg: UseStandaloneAccordionToggleAr
1919
dispatch(accordionStateChanged({ id: arg.id, isOpen: !isOpen }));
2020
}, [arg.id, dispatch, isOpen]);
2121

22-
const onClose = useCallback(() => {
23-
dispatch(accordionStateChanged({ id: arg.id, isOpen: false }));
24-
}, [arg.id, dispatch]);
25-
return { isOpen, onToggle, onClose };
22+
return { isOpen, onToggle };
2623
};

0 commit comments

Comments
 (0)