Merge branch 'amir9480-fix_issue_3083'

This commit is contained in:
Wojtek Figat
2025-01-27 11:58:46 +01:00
2 changed files with 14 additions and 7 deletions

View File

@@ -714,16 +714,15 @@ namespace FlaxEditor
private bool RayCastControl(ref Float2 location, out Control hit) private bool RayCastControl(ref Float2 location, out Control hit)
{ {
#if false // First, raycast only controls with content (eg. skips transparent panels)
// Raycast only controls with content (eg. skips transparent panels) RayCastChildren(ref location, out hit);
return RayCastChildren(ref location, out hit);
#else // If raycast failed, then find any control under mouse (hierarchical)
// Find any control under mouse (hierarchical) hit = hit ?? GetChildAtRecursive(location);
hit = GetChildAtRecursive(location);
if (hit is View || hit is CanvasContainer) if (hit is View || hit is CanvasContainer)
hit = null; hit = null;
return hit != null; return hit != null;
#endif
} }
private UIControlNode FindUIControlNode(Control control) private UIControlNode FindUIControlNode(Control control)

View File

@@ -858,6 +858,14 @@ namespace FlaxEngine.GUI
} }
} }
/// <inheritdoc />
public override bool ContainsPoint(ref Float2 location, bool precise = false)
{
if (precise && this.GetType() == typeof(ContainerControl) && BackgroundColor.A <= 0.0f) // Go through transparency
return false;
return base.ContainsPoint(ref location, precise);
}
/// <inheritdoc /> /// <inheritdoc />
public override void PerformLayout(bool force = false) public override void PerformLayout(bool force = false)
{ {