public static void BringToTop(this IntPtr windowHandle, bool restoreIfMinimizedOrHidden = true)
        {
            SEBWindowHandler.SetForegroundWindow(windowHandle);
            SEBWindowHandler.BringWindowToTop(windowHandle);
            int showCmd = windowHandle.GetPlacement().showCmd;

            if (!restoreIfMinimizedOrHidden || showCmd != 2 && showCmd != 0)
            {
                return;
            }
            SEBWindowHandler.EditWindowByHandle(windowHandle, SEBWindowHandler.ShowWindowCommand.SW_RESTORE, false);
        }