From cc92459ee14d995ad2c78f437188e796ce5eb5a1 Mon Sep 17 00:00:00 2001 From: Andrey Zavadskiy Date: Wed, 1 Mar 2017 13:22:01 +0300 Subject: [PATCH 1/2] KeyCounter visibility --- osu.Game/Configuration/OsuConfigManager.cs | 3 ++- osu.Game/Modes/UI/ScoreOverlay.cs | 24 ++++++++++++++++++++++ 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/osu.Game/Configuration/OsuConfigManager.cs b/osu.Game/Configuration/OsuConfigManager.cs index 84116a1f70..70bfbb5992 100644 --- a/osu.Game/Configuration/OsuConfigManager.cs +++ b/osu.Game/Configuration/OsuConfigManager.cs @@ -33,6 +33,8 @@ namespace osu.Game.Configuration Set(OsuConfig.SnakingOutSliders, false); Set(OsuConfig.MenuParallax, true); + + Set(OsuConfig.KeyOverlay, false); //todo: implement all settings below this line (remove the Disabled set when doing so). Set(OsuConfig.MouseSpeed, 1.0).Disabled = true; @@ -80,7 +82,6 @@ namespace osu.Game.Configuration Set(OsuConfig.IgnoreBeatmapSamples, false).Disabled = true; Set(OsuConfig.IgnoreBeatmapSkins, false).Disabled = true; Set(OsuConfig.IgnoreList, string.Empty).Disabled = true; - Set(OsuConfig.KeyOverlay, false).Disabled = true; Set(OsuConfig.Language, @"unknown").Disabled = true; Set(OsuConfig.AllowNowPlayingHighlights, false).Disabled = true; Set(OsuConfig.LastVersion, string.Empty).Disabled = true; diff --git a/osu.Game/Modes/UI/ScoreOverlay.cs b/osu.Game/Modes/UI/ScoreOverlay.cs index e43009adda..cd676fc7ef 100644 --- a/osu.Game/Modes/UI/ScoreOverlay.cs +++ b/osu.Game/Modes/UI/ScoreOverlay.cs @@ -9,6 +9,9 @@ using osu.Game.Modes.Objects; using OpenTK; using osu.Framework.Graphics.Primitives; using osu.Game.Screens.Play; +using osu.Framework.Allocation; +using osu.Game.Configuration; +using osu.Framework.Configuration; namespace osu.Game.Modes.UI { @@ -21,6 +24,8 @@ namespace osu.Game.Modes.UI public HealthDisplay HealthDisplay; public Score Score { get; set; } + private Bindable showKeyCounter; + protected abstract KeyCounterCollection CreateKeyCounter(); protected abstract ComboCounter CreateComboCounter(); protected abstract PercentageCounter CreateAccuracyCounter(); @@ -58,6 +63,25 @@ namespace osu.Game.Modes.UI }; } + [BackgroundDependencyLoader] + private void load(OsuConfigManager config) + { + showKeyCounter = config.GetBindable(OsuConfig.KeyOverlay); + + if (showKeyCounter) + KeyCounter.Show(); + else KeyCounter.Hide(); + + showKeyCounter.ValueChanged += visibilityChanged; + } + + private void visibilityChanged(object sender, EventArgs e) + { + if (showKeyCounter) + KeyCounter.Show(); + else KeyCounter.Hide(); + } + public void BindProcessor(ScoreProcessor processor) { //bind processor bindables to combocounter, score display etc. From a6504e8f220c52b7744803b9451a6f420f49e114 Mon Sep 17 00:00:00 2001 From: Andrey Zavadskiy Date: Wed, 1 Mar 2017 13:36:53 +0300 Subject: [PATCH 2/2] Triggering fix --- osu.Game/Modes/UI/ScoreOverlay.cs | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/osu.Game/Modes/UI/ScoreOverlay.cs b/osu.Game/Modes/UI/ScoreOverlay.cs index cd676fc7ef..d9283c52cb 100644 --- a/osu.Game/Modes/UI/ScoreOverlay.cs +++ b/osu.Game/Modes/UI/ScoreOverlay.cs @@ -67,19 +67,16 @@ namespace osu.Game.Modes.UI private void load(OsuConfigManager config) { showKeyCounter = config.GetBindable(OsuConfig.KeyOverlay); - - if (showKeyCounter) - KeyCounter.Show(); - else KeyCounter.Hide(); - showKeyCounter.ValueChanged += visibilityChanged; + showKeyCounter.TriggerChange(); } private void visibilityChanged(object sender, EventArgs e) { if (showKeyCounter) KeyCounter.Show(); - else KeyCounter.Hide(); + else + KeyCounter.Hide(); } public void BindProcessor(ScoreProcessor processor)