diff --git a/osu.Game/Screens/Select/SearchTextBox.cs b/osu.Game/Screens/Select/SearchTextBox.cs index 8b95d74fb5..a6790e1130 100644 --- a/osu.Game/Screens/Select/SearchTextBox.cs +++ b/osu.Game/Screens/Select/SearchTextBox.cs @@ -68,7 +68,13 @@ namespace osu.Game.Screens.Select protected override void Update() { if (GrabFocus && !HasFocus && IsVisible) - TriggerFocus(); + { + var inputManager = Parent; + while (inputManager != null && !(inputManager is InputManager)) + inputManager = inputManager.Parent; + if (inputManager != null && (inputManager as InputManager)?.FocusedDrawable == null) + TriggerFocus(); + } base.Update(); }