editor: explicit runtime path contract

This commit is contained in:
2026-04-28 14:49:41 +08:00
parent 0e506f21ec
commit cd166037bf
38 changed files with 210 additions and 129 deletions

View File

@@ -52,9 +52,9 @@ UIEditorWorkspacePanelPresentationModel* FindMutablePresentation(
} // namespace
bool EditorContext::Initialize(const std::filesystem::path& repoRoot) {
bool EditorContext::Initialize(const EditorRuntimePaths& runtimePaths) {
AppendUIEditorRuntimeTrace("startup", "EditorContext::Initialize begin");
m_shellAsset = BuildEditorApplicationShellAsset(repoRoot);
m_shellAsset = BuildEditorApplicationShellAsset(runtimePaths);
AppendUIEditorRuntimeTrace("startup", "BuildEditorApplicationShellAsset complete");
m_shellValidation = ValidateEditorShellAsset(m_shellAsset);
AppendUIEditorRuntimeTrace(
@@ -66,13 +66,13 @@ bool EditorContext::Initialize(const std::filesystem::path& repoRoot) {
}
m_session = {};
m_session.repoRoot = repoRoot;
m_session.projectRoot = (repoRoot / "project").lexically_normal();
m_session.workspaceRoot = runtimePaths.workspaceRoot;
m_session.projectRoot = runtimePaths.projectRoot;
m_commandFocusService = {};
m_selectionService = {};
m_projectRuntime.Reset();
AppendUIEditorRuntimeTrace("startup", "EditorProjectRuntime::Initialize begin");
m_projectRuntime.Initialize(repoRoot);
m_projectRuntime.Initialize(runtimePaths.projectRoot);
AppendUIEditorRuntimeTrace("startup", "EditorProjectRuntime::Initialize end");
m_projectRuntime.BindSelectionService(&m_selectionService);
m_sceneRuntime.Reset();