diff --git a/src/components/image-editor/ImageCanvasGenerationDialogModel.test.ts b/src/components/image-editor/ImageCanvasGenerationDialogModel.test.ts index 50272e3be..2e4153947 100644 --- a/src/components/image-editor/ImageCanvasGenerationDialogModel.test.ts +++ b/src/components/image-editor/ImageCanvasGenerationDialogModel.test.ts @@ -1986,5 +1986,18 @@ describe('ImageCanvasGenerationDialogModel', () => { ...generateDialog, composerOpen: false, }); + + // 3D 两个模式同样要在失焦与关闭时收起面板,与其它生成模式一致。 + for (const mode of ['model3d-text-to-model', 'model3d-image-to-model']) { + const model3dDialog = { ...generateDialog, mode } as GenerateDialogState; + expect(hideGeneratedLayerComposerAfterBlur(model3dDialog), mode).toEqual({ + ...model3dDialog, + composerOpen: false, + }); + expect(closeGenerateComposerDialog(model3dDialog), mode).toEqual({ + ...model3dDialog, + composerOpen: false, + }); + } }); }); diff --git a/src/components/image-editor/ImageCanvasGenerationDialogModel.ts b/src/components/image-editor/ImageCanvasGenerationDialogModel.ts index 0b01bc6d6..81af2a047 100644 --- a/src/components/image-editor/ImageCanvasGenerationDialogModel.ts +++ b/src/components/image-editor/ImageCanvasGenerationDialogModel.ts @@ -2415,7 +2415,9 @@ export function hideGeneratedLayerComposerAfterBlur( dialog?.mode === 'video' || dialog?.mode === 'publication' || dialog?.mode === 'audio-sound-effect' || - dialog?.mode === 'audio-background-music') && + dialog?.mode === 'audio-background-music' || + dialog?.mode === 'model3d-text-to-model' || + dialog?.mode === 'model3d-image-to-model') && dialog.status !== 'generating' ? { ...dialog, @@ -2438,7 +2440,9 @@ export function closeGenerateComposerDialog( dialog?.mode === 'video' || dialog?.mode === 'publication' || dialog?.mode === 'audio-sound-effect' || - dialog?.mode === 'audio-background-music' + dialog?.mode === 'audio-background-music' || + dialog?.mode === 'model3d-text-to-model' || + dialog?.mode === 'model3d-image-to-model' ? { ...dialog, composerOpen: false,