Initialize studio controller refs before UI boot
This commit is contained in:
parent
7727676e31
commit
091c0102da
2 changed files with 24 additions and 14 deletions
|
|
@ -4755,14 +4755,16 @@ export function startWorldshaperStudio(bootstrap: WorldshaperStudioBootstrap, in
|
||||||
worldRuntimeState,
|
worldRuntimeState,
|
||||||
syncWorldNeighborhoodForViewport,
|
syncWorldNeighborhoodForViewport,
|
||||||
drawNow,
|
drawNow,
|
||||||
|
setControllerRefs: (controllerRefs) => {
|
||||||
|
historyController = controllerRefs.historyController;
|
||||||
|
npcController = controllerRefs.npcController;
|
||||||
|
sidebarController = controllerRefs.sidebarController;
|
||||||
|
renderController = controllerRefs.renderController;
|
||||||
|
persistenceController = controllerRefs.persistenceController;
|
||||||
|
importController = controllerRefs.importController;
|
||||||
|
interactionController = controllerRefs.interactionController;
|
||||||
|
},
|
||||||
});
|
});
|
||||||
historyController = runtimeControllerBootstrap.historyController;
|
|
||||||
npcController = runtimeControllerBootstrap.npcController;
|
|
||||||
sidebarController = runtimeControllerBootstrap.sidebarController;
|
|
||||||
renderController = runtimeControllerBootstrap.renderController;
|
|
||||||
persistenceController = runtimeControllerBootstrap.persistenceController;
|
|
||||||
importController = runtimeControllerBootstrap.importController;
|
|
||||||
interactionController = runtimeControllerBootstrap.interactionController;
|
|
||||||
statusLogWindowController = runtimeControllerBootstrap.statusLogWindowController;
|
statusLogWindowController = runtimeControllerBootstrap.statusLogWindowController;
|
||||||
runtimeLogging.setStatusLogWindowController(statusLogWindowController);
|
runtimeLogging.setStatusLogWindowController(statusLogWindowController);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -48,6 +48,7 @@ export function initializeRuntimeControllers(config) {
|
||||||
worldRuntimeState,
|
worldRuntimeState,
|
||||||
syncWorldNeighborhoodForViewport,
|
syncWorldNeighborhoodForViewport,
|
||||||
drawNow,
|
drawNow,
|
||||||
|
setControllerRefs,
|
||||||
} = config;
|
} = config;
|
||||||
|
|
||||||
const toolWindowController = createToolWindowController(scope);
|
const toolWindowController = createToolWindowController(scope);
|
||||||
|
|
@ -150,6 +151,19 @@ export function initializeRuntimeControllers(config) {
|
||||||
const persistenceController = createPersistenceController(scope);
|
const persistenceController = createPersistenceController(scope);
|
||||||
const importController = createImportController(scope);
|
const importController = createImportController(scope);
|
||||||
const interactionController = createInteractionController(scope);
|
const interactionController = createInteractionController(scope);
|
||||||
|
const controllerRefs = {
|
||||||
|
historyController,
|
||||||
|
npcController,
|
||||||
|
sidebarController,
|
||||||
|
renderController,
|
||||||
|
persistenceController,
|
||||||
|
importController,
|
||||||
|
interactionController,
|
||||||
|
};
|
||||||
|
|
||||||
|
if (typeof setControllerRefs === "function") {
|
||||||
|
setControllerRefs(controllerRefs);
|
||||||
|
}
|
||||||
|
|
||||||
const persistPopupBoundsDeferred = createDebouncedCallback(() => {
|
const persistPopupBoundsDeferred = createDebouncedCallback(() => {
|
||||||
persistPopupBounds();
|
persistPopupBounds();
|
||||||
|
|
@ -193,13 +207,7 @@ export function initializeRuntimeControllers(config) {
|
||||||
});
|
});
|
||||||
|
|
||||||
return {
|
return {
|
||||||
historyController,
|
...controllerRefs,
|
||||||
npcController,
|
|
||||||
sidebarController,
|
|
||||||
renderController,
|
|
||||||
persistenceController,
|
|
||||||
importController,
|
|
||||||
interactionController,
|
|
||||||
statusLogWindowController,
|
statusLogWindowController,
|
||||||
changelogSplashWindowController,
|
changelogSplashWindowController,
|
||||||
persistPopupBoundsDeferred,
|
persistPopupBoundsDeferred,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue