void FSlateWindowHelper::BringWindowToFront( TArray<TSharedRef<SWindow>>& Windows, const TSharedRef<SWindow>& BringMeToFront )
{
	const TSharedRef<SWindow> TopLeveWindowToReorder = BringToFrontInParent(BringMeToFront);
	if (!PLATFORM_MAC || TopLeveWindowToReorder == BringMeToFront)
	{
		FSlateWindowHelper::ArrangeWindowToFront(Windows, TopLeveWindowToReorder);
	}
}
TSharedRef<SWindow> FSlateWindowHelper::BringToFrontInParent( const TSharedRef<SWindow>& WindowToBringToFront )
{
	const TSharedPtr<SWindow> ParentWindow = WindowToBringToFront->GetParentWindow();

	if (!ParentWindow.IsValid())
	{
		return WindowToBringToFront;
	}

	FSlateWindowHelper::ArrangeWindowToFront(ParentWindow->GetChildWindows(), WindowToBringToFront);

	return BringToFrontInParent(ParentWindow.ToSharedRef());
}