diff --git a/kicad b/kicad index d701b23..3ced43c 160000 --- a/kicad +++ b/kicad @@ -1 +1 @@ -Subproject commit d701b2365aeb327b9737d97b72aafa1da4d07dc2 +Subproject commit 3ced43c0b471b607ce263f78216f7e6cf4e834ed diff --git a/web/apps/frontend/src/wasm/constants.ts b/web/apps/frontend/src/wasm/constants.ts index a4c645c..2ddda4e 100644 --- a/web/apps/frontend/src/wasm/constants.ts +++ b/web/apps/frontend/src/wasm/constants.ts @@ -27,15 +27,18 @@ export const TOOL_ARGV0: Record = { }; /** - * Tools whose standalone entry (single_top.cpp) runs the first-run setup wizard - * on launch. That wizard's modal loop crashes Asyncify in our ephemeral MEMFS, - * so for these we seed a default KiCad config before main() to suppress it. - * Mirrors which harness HTMLs include `seedKicadConfig` in preRun (eeschema only). + * Every standalone tool here boots through common/single_top.cpp, which runs + * STARTWIZARD::CheckAndRun() — the first-run "KiCad Setup" wizard. It shows + * whenever any provider (SETTINGS / LIBRARIES / PRIVACY) reports + * NeedsUserInput(), which is always true on our ephemeral MEMFS with no config, + * and its modal loop crashes Asyncify. So for all of them we seed a default + * KiCad config before main() (kicad_common.json privacy flags + the lib-tables + * the providers check) so NeedsUserInput() is false and the wizard is skipped. */ export const TOOL_NEEDS_CONFIG_SEED: Record = { - pcbnew: false, + pcbnew: true, eeschema: true, - calculator: false, + calculator: true, }; /** KiCad user settings dir for this build (PATHS::GetUserSettingsPath()). */