diff --git a/playwright.config.ts b/playwright.config.ts index e360ab9050..2557cfb96e 100644 --- a/playwright.config.ts +++ b/playwright.config.ts @@ -21,18 +21,23 @@ if (isElectron) { host: z.string(), executionFilePath: z.string(), executionArgs: z.array(z.string()), + executionEnabled: z.boolean(), }) .passthrough() .array(); const engineInfos = envSchema.parse(JSON.parse(defaultEngineInfosEnv)); - engineInfos.forEach((info) => { + for (const info of engineInfos) { + if (!info.executionEnabled) { + continue; + } + additionalWebServer.push({ command: `${info.executionFilePath} ${info.executionArgs.join(" ")}`, url: `${info.host}/version`, reuseExistingServer: !process.env.CI, }); - }); + } } else { throw new Error(`VITE_TARGETの指定が不正です。${process.env.VITE_TARGET}`); } diff --git a/src/components/AudioCell.vue b/src/components/AudioCell.vue index d958607a95..14123c541c 100644 --- a/src/components/AudioCell.vue +++ b/src/components/AudioCell.vue @@ -10,6 +10,7 @@ @keydown.prevent.up="moveUpCell" @keydown.prevent.down="moveDownCell" @focus="onRootFocus" + @click.stop="" > diff --git a/src/views/EditorHome.vue b/src/views/EditorHome.vue index 9b0585917f..a34c16c412 100644 --- a/src/views/EditorHome.vue +++ b/src/views/EditorHome.vue @@ -95,6 +95,7 @@ dragEventCounter = 0; loadDraggedFile($event); " + @click="onAudioCellPaneClick" > HotkeyReturnType>([ [ "テキスト欄にフォーカスを戻す", () => { - if (activeAudioKey.value !== undefined) { + if (activeAudioKey.value != undefined) { focusCell({ audioKey: activeAudioKey.value, focusTarget: "textField" }); } return false; // this is the same with event.preventDefault() @@ -405,7 +406,7 @@ const addAudioItem = async () => { let presetKey: PresetKey | undefined = undefined; let baseAudioItem: AudioItem | undefined = undefined; - if (prevAudioKey !== undefined) { + if (prevAudioKey != undefined) { voice = store.state.audioItems[prevAudioKey].voice; presetKey = store.state.audioItems[prevAudioKey].presetKey; baseAudioItem = store.state.audioItems[prevAudioKey]; @@ -652,7 +653,7 @@ const allEngineState = computed(() => { // 登録されているすべてのエンジンについて状態を確認する for (const engineId of store.state.engineIds) { const engineState: EngineState | undefined = engineStates[engineId]; - if (engineState === undefined) + if (engineState == undefined) throw new Error(`No such engineState set: engineId == ${engineId}`); // FIXME: 1つでも接続テストに成功していないエンジンがあれば、暫定的に起動中とする @@ -669,7 +670,7 @@ const allEngineState = computed(() => { const isEngineWaitingLong = ref(false); let engineTimer: number | undefined = undefined; watch(allEngineState, (newEngineState) => { - if (engineTimer !== undefined) { + if (engineTimer != undefined) { clearTimeout(engineTimer); engineTimer = undefined; } @@ -869,6 +870,17 @@ watch(activeAudioKey, (audioKey) => { const showAddAudioItemButton = computed(() => { return store.state.showAddAudioItemButton; }); + +const onAudioCellPaneClick = () => { + if ( + store.state.experimentalSetting.enableMultiSelect && + activeAudioKey.value + ) { + store.dispatch("SET_SELECTED_AUDIO_KEYS", { + audioKeys: [activeAudioKey.value], + }); + } +};