Esempio n. 1
0
    /// <summary>
    /// Obsolete. Use editorWindow.IsFullscreenOnDisplay(display) method.
    /// </summary>
    public static bool EditorWindowIsFullscreenOnDisplay(UnityEditor.EditorWindow editorWin, SystemDisplay display)
    {
        string     windowTitle = editorWin.GetWindowTitle();
        MethodInfo windowIsFullscreenOnDisplay = null;

        try
        {
            windowIsFullscreenOnDisplay = typeof(NativeDisplay).BaseType.GetMethod("WindowIsFullscreenOnDisplay", BindingFlags.Static | BindingFlags.Public | BindingFlags.NonPublic, null, new[] { typeof(string), typeof(SystemDisplay) }, null);
        } catch { }

        bool winIsFullscreen = false;

        //If the OS Native Display class has the method, call that, otherwise use a fallback.
        if (windowIsFullscreenOnDisplay != null)
        {
            winIsFullscreen = (bool)windowIsFullscreenOnDisplay.Invoke(null, new object[] { windowTitle, display });
        }
        else
        {
            winIsFullscreen = editorWin.position.Contains(display.Bounds) && editorWin.position.width == display.Bounds.width;
        }

        return(winIsFullscreen);
    }