Skip to content

Commit 370c3cd

Browse files
feat(ui): update select object info tooltip
1 parent 67214e1 commit 370c3cd

File tree

2 files changed

+31
-15
lines changed

2 files changed

+31
-15
lines changed

invokeai/frontend/web/public/locales/en.json

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2453,9 +2453,14 @@
24532453
"saveAs": "Save As",
24542454
"cancel": "Cancel",
24552455
"process": "Process",
2456-
"help1": "Select a single target object. Add <Bold>Include</Bold> and <Bold>Exclude</Bold> points to indicate which parts of the layer are part of the target object.",
2457-
"help2": "Start with one <Bold>Include</Bold> point within the target object. Add more points to refine the selection. Fewer points typically produce better results.",
2458-
"help3": "Invert the selection to select everything except the target object.",
2456+
"desc": "Select a single target object. After selection is complete, click <Bold>Apply</Bold> to discard everything outside the selected area, or save the selection as a new layer.",
2457+
"visualModeDesc": "Visual mode uses box and point inputs to select an object.",
2458+
"visualMode1": "Click and drag to draw a box around the object you want to select. You may get better results by drawing the box a bit larger or smaller than the object.",
2459+
"visualMode2": "Click to add a green <Bold>include</Bold> point, or shift-click to add a red <Bold>exclude</Bold> point to tell the model what to include or exclude.",
2460+
"visualMode3": "Points can be used to refine a box selection or used independently.",
2461+
"promptModeDesc": "Prompt mode uses text input to select an object.",
2462+
"promptMode1": "Type a brief description of the object you want to select.",
2463+
"promptMode2": "Use simple language, avoiding complex descriptions or multiple objects.",
24592464
"clickToAdd": "Click on the layer to add a point",
24602465
"dragToMove": "Drag a point to move it",
24612466
"clickToRemove": "Click on a point to remove it",

invokeai/frontend/web/src/features/controlLayers/components/SelectObject/SelectObjectInfoTooltip.tsx

Lines changed: 23 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { Flex, Icon, ListItem, Text, Tooltip, UnorderedList } from '@invoke-ai/ui-library';
22
import type { PropsWithChildren } from 'react';
33
import { memo } from 'react';
4-
import { Trans, useTranslation } from 'react-i18next';
4+
import { Trans } from 'react-i18next';
55
import { PiInfoBold } from 'react-icons/pi';
66

77
const Bold = (props: PropsWithChildren) => (
@@ -10,24 +10,35 @@ const Bold = (props: PropsWithChildren) => (
1010
</Text>
1111
);
1212

13-
const SelectObjectHelpTooltipContent = memo(() => {
14-
const { t } = useTranslation();
13+
const components = { Bold: <Bold /> };
1514

15+
const SelectObjectHelpTooltipContent = memo(() => {
1616
return (
1717
<Flex gap={3} flexDir="column">
1818
<Text>
19-
<Trans i18nKey="controlLayers.selectObject.help1" components={{ Bold: <Bold /> }} />
20-
</Text>
21-
<Text>
22-
<Trans i18nKey="controlLayers.selectObject.help2" components={{ Bold: <Bold /> }} />
19+
<Trans i18nKey="controlLayers.selectObject.desc" components={components} />
2320
</Text>
21+
<UnorderedList>
22+
<ListItem>
23+
<Trans i18nKey="controlLayers.selectObject.visualMode1" components={components} />
24+
</ListItem>
25+
<ListItem>
26+
<Trans i18nKey="controlLayers.selectObject.visualMode2" components={components} />
27+
</ListItem>
28+
<ListItem>
29+
<Trans i18nKey="controlLayers.selectObject.visualMode3" components={components} />
30+
</ListItem>
31+
</UnorderedList>
2432
<Text>
25-
<Trans i18nKey="controlLayers.selectObject.help3" />
33+
<Trans i18nKey="controlLayers.selectObject.promptModeDesc" components={components} />
2634
</Text>
2735
<UnorderedList>
28-
<ListItem>{t('controlLayers.selectObject.clickToAdd')}</ListItem>
29-
<ListItem>{t('controlLayers.selectObject.dragToMove')}</ListItem>
30-
<ListItem>{t('controlLayers.selectObject.clickToRemove')}</ListItem>
36+
<ListItem>
37+
<Trans i18nKey="controlLayers.selectObject.promptMode1" components={components} />
38+
</ListItem>
39+
<ListItem>
40+
<Trans i18nKey="controlLayers.selectObject.promptMode2" components={components} />
41+
</ListItem>
3142
</UnorderedList>
3243
</Flex>
3344
);
@@ -37,7 +48,7 @@ SelectObjectHelpTooltipContent.displayName = 'SelectObjectHelpTooltipContent';
3748

3849
export const SelectObjectInfoTooltip = memo(() => {
3950
return (
40-
<Tooltip label={<SelectObjectHelpTooltipContent />}>
51+
<Tooltip label={<SelectObjectHelpTooltipContent />} minW={420}>
4152
<Flex alignItems="center">
4253
<Icon as={PiInfoBold} color="base.500" />
4354
</Flex>

0 commit comments

Comments
 (0)