Exemple #1
0
    /// <summary>
    /// Frees resources used by the InteractivityManager.
    /// </summary>
    public static void Dispose()
    {
        InteractivityManager interactivityManager = InteractivityManager.SingletonInstance;

        if (interactivityManager != null)
        {
            interactivityManager.OnInteractivityStateChanged -= HandleInteractivityStateChangedInternal;

#if !UNITY_WSA && !UNITY_EDITOR
            // Run initialization in another thread.
            backgroundWorker.DoWork -= BackgroundWorkerDoWork;
#endif
        }
        if (queuedEvents != null)
        {
            queuedEvents.Clear();
        }
        previousRunInBackgroundValue      = true;
        pendingGoInteractive              = false;
        outstandingSetDefaultSceneRequest = string.Empty;
        if (outstandingCreateGroupsRequests != null)
        {
            outstandingCreateGroupsRequests.Clear();
        }
        outstandingRequestsCompleted        = false;
        lastCheckForOutstandingRequestsTime = -1;
        processedSerializedProperties       = false;
        hasFiredGoInteractiveEvent          = false;
        interactivityManager.Dispose();
    }