diff --git a/osu.Game/Screens/Edit/Compose/Components/BlueprintContainer.cs b/osu.Game/Screens/Edit/Compose/Components/BlueprintContainer.cs
index 4b98d42c7c..df9cadebfc 100644
--- a/osu.Game/Screens/Edit/Compose/Components/BlueprintContainer.cs
+++ b/osu.Game/Screens/Edit/Compose/Components/BlueprintContainer.cs
@@ -337,6 +337,7 @@ namespace osu.Game.Screens.Edit.Compose.Components
/// Whether a selection was performed.
private bool beginClickSelection(MouseButtonEvent e)
{
+ // Iterate from the top of the input stack (blueprints closest to the front of the screen first).
foreach (SelectionBlueprint blueprint in SelectionBlueprints.AliveChildren.Reverse())
{
if (!blueprint.IsHovered) continue;
diff --git a/osu.Game/Screens/Edit/Compose/Components/HitObjectOrderedSelectionContainer.cs b/osu.Game/Screens/Edit/Compose/Components/HitObjectOrderedSelectionContainer.cs
index ae50b0fd61..9e95fe4fa1 100644
--- a/osu.Game/Screens/Edit/Compose/Components/HitObjectOrderedSelectionContainer.cs
+++ b/osu.Game/Screens/Edit/Compose/Components/HitObjectOrderedSelectionContainer.cs
@@ -6,9 +6,13 @@ using osu.Framework.Bindables;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Game.Rulesets.Edit;
+using osu.Game.Rulesets.Objects;
namespace osu.Game.Screens.Edit.Compose.Components
{
+ ///
+ /// A container for ordered by their start times.
+ ///
public sealed class HitObjectOrderedSelectionContainer : Container
{
public override void Add(SelectionBlueprint drawable)