hybridclr_unity/Editor/Settings/EditorStatusWatcher.cs

29 lines
749 B
C#
Raw Normal View History

using HybridCLR.Editor;
using System;
using UnityEditor;
using UnityEditorInternal;
namespace HybridCLR.Editor.Settings
{
[InitializeOnLoad]
public static class EditorStatusWatcher
{
public static Action OnEditorFocused;
static bool isFocused;
static EditorStatusWatcher() => EditorApplication.update += Update;
static void Update()
{
if (isFocused != InternalEditorUtility.isApplicationActive)
{
isFocused = InternalEditorUtility.isApplicationActive;
if (isFocused)
{
HybridCLRSettings.LoadOrCreate();
OnEditorFocused?.Invoke();
}
}
}
}
}