internal static void StageNavigationManagerAfterSuccessfullySwitchedToStage(Stage newStage) { RevertIsolationCurrentStage(); SceneVisibilityState.ForceDataUpdate(); if (newStage is MainStage) { SceneVisibilityState.CleanTempScenes(); } }
private static void Initialize() { Undo.undoRedoPerformed += UndoRedoPerformed; EditorSceneManager.newSceneCreated += EditorSceneManagerOnNewSceneCreated; EditorSceneManager.sceneSaving += EditorSceneManagerOnSceneSaving; EditorSceneManager.sceneSaved += EditorSceneManagerOnSceneSaved; EditorSceneManager.sceneOpening += EditorSceneManagerOnSceneOpening; EditorSceneManager.sceneOpened += EditorSceneManagerOnSceneOpened; EditorSceneManager.sceneClosing += EditorSceneManagerOnSceneClosing; EditorApplication.playModeStateChanged += EditorApplicationPlayModeStateChanged; StageNavigationManager.instance.afterSuccessfullySwitchedToStage += StageNavigationManagerAfterSuccessfullySwitchedToStage; SceneVisibilityState.internalStructureChanged += InternalStructureChanged; PreviewSceneStage stage = StageNavigationManager.instance.currentStage as PreviewSceneStage; SceneVisibilityState.ForceDataUpdate(); s_ShortcutContext = new ShortcutContext(); EditorApplication.delayCall += () => ShortcutIntegration.instance.contextManager.RegisterToolContext(s_ShortcutContext); }
private static void UndoRedoPerformed() { SceneVisibilityState.ForceDataUpdate(); }