From df795da0700ca71611dc2a6656f39eb7fc4e975e Mon Sep 17 00:00:00 2001 From: Derrick Timmermans Date: Thu, 25 Sep 2025 10:41:01 +0200 Subject: [PATCH 1/2] Fix composition tool tooltip not changing text when enabled --- osu.Game/Rulesets/Edit/HitObjectComposer.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/osu.Game/Rulesets/Edit/HitObjectComposer.cs b/osu.Game/Rulesets/Edit/HitObjectComposer.cs index b38b0291e8..27ea7863bf 100644 --- a/osu.Game/Rulesets/Edit/HitObjectComposer.cs +++ b/osu.Game/Rulesets/Edit/HitObjectComposer.cs @@ -266,7 +266,7 @@ namespace osu.Game.Rulesets.Edit { item.Selected.DisabledChanged += isDisabled => { - item.TooltipText = isDisabled ? "Add at least one timing point first!" : ((HitObjectCompositionToolButton)item).TooltipText; + item.TooltipText = isDisabled ? "Add at least one timing point first!" : ((HitObjectCompositionToolButton)item).Tool.TooltipText; }; } From c66cc5ebb149b59280447fe1e60ec8c3f20a7134 Mon Sep 17 00:00:00 2001 From: Derrick Timmermans Date: Fri, 26 Sep 2025 09:28:04 +0200 Subject: [PATCH 2/2] Handle disabled text in composition tool button --- osu.Game/Rulesets/Edit/HitObjectComposer.cs | 8 -------- osu.Game/Rulesets/Edit/HitObjectCompositionToolButton.cs | 5 ++++- 2 files changed, 4 insertions(+), 9 deletions(-) diff --git a/osu.Game/Rulesets/Edit/HitObjectComposer.cs b/osu.Game/Rulesets/Edit/HitObjectComposer.cs index 27ea7863bf..c138808890 100644 --- a/osu.Game/Rulesets/Edit/HitObjectComposer.cs +++ b/osu.Game/Rulesets/Edit/HitObjectComposer.cs @@ -262,14 +262,6 @@ namespace osu.Game.Rulesets.Edit .Select(t => new HitObjectCompositionToolButton(t, () => toolSelected(t))) .ToList(); - foreach (var item in toolboxCollection.Items) - { - item.Selected.DisabledChanged += isDisabled => - { - item.TooltipText = isDisabled ? "Add at least one timing point first!" : ((HitObjectCompositionToolButton)item).Tool.TooltipText; - }; - } - togglesCollection.AddRange(CreateTernaryButtons().ToArray()); sampleBankTogglesCollection.AddRange(BlueprintContainer.SampleBankTernaryStates); diff --git a/osu.Game/Rulesets/Edit/HitObjectCompositionToolButton.cs b/osu.Game/Rulesets/Edit/HitObjectCompositionToolButton.cs index 641d60dbd3..65a0fb983a 100644 --- a/osu.Game/Rulesets/Edit/HitObjectCompositionToolButton.cs +++ b/osu.Game/Rulesets/Edit/HitObjectCompositionToolButton.cs @@ -16,7 +16,10 @@ namespace osu.Game.Rulesets.Edit { Tool = tool; - TooltipText = tool.TooltipText; + Selected.BindDisabledChanged(isDisabled => + { + TooltipText = isDisabled ? "Add at least one timing point first!" : Tool.TooltipText; + }, true); } } }