public void OnVisualTreeAssetsImported(HashSet <VisualTreeAsset> changedAssets, HashSet <string> deletedAssets)
        {
            if (panel.contextType == ContextType.Editor && m_EditorVisualTreeAssetTracker != null)
            {
                if (m_EditorVisualTreeAssetTracker.OnAssetsImported(changedAssets, deletedAssets))
                {
                    m_TrackersToRefresh.Add(m_EditorVisualTreeAssetTracker);
                }
            }
            else
            {
                foreach (var tracker in m_RuntimeVisualTreeAssetTrackers.Values)
                {
                    if (tracker.OnAssetsImported(changedAssets, deletedAssets))
                    {
                        m_TrackersToRefresh.Add(tracker);
                    }
                }
            }

            if (m_TrackersToRefresh.Count == 0)
            {
                return;
            }

            UIElementsUtility.InMemoryAssetsHaveBeenChanged();

            // Player panel require an update here or else it will only update when Unity is focused
            if (panel.contextType == ContextType.Player)
            {
                Update();
            }
        }