mirror of
https://github.com/ppy/osu.git
synced 2025-02-21 23:47:21 +08:00
Merge pull request #30976 from frenzibyte/hide-some-settings
Hide debug settings in release builds
This commit is contained in:
commit
3d6e766b32
@ -9,21 +9,6 @@ namespace osu.Game.Localisation
|
|||||||
{
|
{
|
||||||
private const string prefix = @"osu.Game.Resources.Localisation.DebugSettings";
|
private const string prefix = @"osu.Game.Resources.Localisation.DebugSettings";
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// "Debug"
|
|
||||||
/// </summary>
|
|
||||||
public static LocalisableString DebugSectionHeader => new TranslatableString(getKey(@"debug_section_header"), @"Debug");
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// "Show log overlay"
|
|
||||||
/// </summary>
|
|
||||||
public static LocalisableString ShowLogOverlay => new TranslatableString(getKey(@"show_log_overlay"), @"Show log overlay");
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// "Bypass front-to-back render pass"
|
|
||||||
/// </summary>
|
|
||||||
public static LocalisableString BypassFrontToBackPass => new TranslatableString(getKey(@"bypass_front_to_back_pass"), @"Bypass front-to-back render pass");
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// "Import files"
|
/// "Import files"
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -34,16 +19,6 @@ namespace osu.Game.Localisation
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public static LocalisableString RunLatencyCertifier => new TranslatableString(getKey(@"run_latency_certifier"), @"Run latency certifier");
|
public static LocalisableString RunLatencyCertifier => new TranslatableString(getKey(@"run_latency_certifier"), @"Run latency certifier");
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// "Memory"
|
|
||||||
/// </summary>
|
|
||||||
public static LocalisableString MemoryHeader => new TranslatableString(getKey(@"memory_header"), @"Memory");
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// "Clear all caches"
|
|
||||||
/// </summary>
|
|
||||||
public static LocalisableString ClearAllCaches => new TranslatableString(getKey(@"clear_all_caches"), @"Clear all caches");
|
|
||||||
|
|
||||||
private static string getKey(string key) => $"{prefix}:{key}";
|
private static string getKey(string key) => $"{prefix}:{key}";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -5,6 +5,7 @@
|
|||||||
|
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using osu.Framework.Allocation;
|
using osu.Framework.Allocation;
|
||||||
|
using osu.Framework.Development;
|
||||||
using osu.Framework.Graphics;
|
using osu.Framework.Graphics;
|
||||||
using osu.Framework.Graphics.Containers;
|
using osu.Framework.Graphics.Containers;
|
||||||
using osu.Framework.Localisation;
|
using osu.Framework.Localisation;
|
||||||
@ -90,11 +91,13 @@ namespace osu.Game.Overlays.FirstRunSetup
|
|||||||
new GraphicsSection(),
|
new GraphicsSection(),
|
||||||
new OnlineSection(),
|
new OnlineSection(),
|
||||||
new MaintenanceSection(),
|
new MaintenanceSection(),
|
||||||
new DebugSection(),
|
|
||||||
},
|
},
|
||||||
SearchTerm = SettingsItem<bool>.CLASSIC_DEFAULT_SEARCH_TERM,
|
SearchTerm = SettingsItem<bool>.CLASSIC_DEFAULT_SEARCH_TERM,
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
if (DebugUtils.IsDebugBuild)
|
||||||
|
searchContainer.Add(new DebugSection());
|
||||||
}
|
}
|
||||||
|
|
||||||
private void applyClassic()
|
private void applyClassic()
|
||||||
|
@ -1,19 +1,17 @@
|
|||||||
// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence.
|
// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence.
|
||||||
// See the LICENCE file in the repository root for full licence text.
|
// See the LICENCE file in the repository root for full licence text.
|
||||||
|
|
||||||
using osu.Framework.Development;
|
|
||||||
using osu.Framework.Graphics;
|
using osu.Framework.Graphics;
|
||||||
using osu.Framework.Graphics.Sprites;
|
using osu.Framework.Graphics.Sprites;
|
||||||
using osu.Framework.Localisation;
|
using osu.Framework.Localisation;
|
||||||
using osu.Game.Graphics;
|
using osu.Game.Graphics;
|
||||||
using osu.Game.Localisation;
|
|
||||||
using osu.Game.Overlays.Settings.Sections.DebugSettings;
|
using osu.Game.Overlays.Settings.Sections.DebugSettings;
|
||||||
|
|
||||||
namespace osu.Game.Overlays.Settings.Sections
|
namespace osu.Game.Overlays.Settings.Sections
|
||||||
{
|
{
|
||||||
public partial class DebugSection : SettingsSection
|
public partial class DebugSection : SettingsSection
|
||||||
{
|
{
|
||||||
public override LocalisableString Header => DebugSettingsStrings.DebugSectionHeader;
|
public override LocalisableString Header => @"Debug";
|
||||||
|
|
||||||
public override Drawable CreateIcon() => new SpriteIcon
|
public override Drawable CreateIcon() => new SpriteIcon
|
||||||
{
|
{
|
||||||
@ -22,12 +20,12 @@ namespace osu.Game.Overlays.Settings.Sections
|
|||||||
|
|
||||||
public DebugSection()
|
public DebugSection()
|
||||||
{
|
{
|
||||||
Add(new GeneralSettings());
|
Children = new Drawable[]
|
||||||
|
{
|
||||||
if (DebugUtils.IsDebugBuild)
|
new GeneralSettings(),
|
||||||
Add(new BatchImportSettings());
|
new BatchImportSettings(),
|
||||||
|
new MemorySettings(),
|
||||||
Add(new MemorySettings());
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -5,43 +5,28 @@ using osu.Framework.Allocation;
|
|||||||
using osu.Framework.Configuration;
|
using osu.Framework.Configuration;
|
||||||
using osu.Framework.Graphics;
|
using osu.Framework.Graphics;
|
||||||
using osu.Framework.Localisation;
|
using osu.Framework.Localisation;
|
||||||
using osu.Framework.Screens;
|
|
||||||
using osu.Game.Localisation;
|
|
||||||
using osu.Game.Screens;
|
|
||||||
using osu.Game.Screens.Import;
|
|
||||||
using osu.Game.Screens.Utility;
|
|
||||||
|
|
||||||
namespace osu.Game.Overlays.Settings.Sections.DebugSettings
|
namespace osu.Game.Overlays.Settings.Sections.DebugSettings
|
||||||
{
|
{
|
||||||
public partial class GeneralSettings : SettingsSubsection
|
public partial class GeneralSettings : SettingsSubsection
|
||||||
{
|
{
|
||||||
protected override LocalisableString Header => CommonStrings.General;
|
protected override LocalisableString Header => @"General";
|
||||||
|
|
||||||
[BackgroundDependencyLoader]
|
[BackgroundDependencyLoader]
|
||||||
private void load(FrameworkDebugConfigManager config, FrameworkConfigManager frameworkConfig, IPerformFromScreenRunner? performer)
|
private void load(FrameworkDebugConfigManager config, FrameworkConfigManager frameworkConfig)
|
||||||
{
|
{
|
||||||
Children = new Drawable[]
|
Children = new Drawable[]
|
||||||
{
|
{
|
||||||
new SettingsCheckbox
|
new SettingsCheckbox
|
||||||
{
|
{
|
||||||
LabelText = DebugSettingsStrings.ShowLogOverlay,
|
LabelText = @"Show log overlay",
|
||||||
Current = frameworkConfig.GetBindable<bool>(FrameworkSetting.ShowLogOverlay)
|
Current = frameworkConfig.GetBindable<bool>(FrameworkSetting.ShowLogOverlay)
|
||||||
},
|
},
|
||||||
new SettingsCheckbox
|
new SettingsCheckbox
|
||||||
{
|
{
|
||||||
LabelText = DebugSettingsStrings.BypassFrontToBackPass,
|
LabelText = @"Bypass front-to-back render pass",
|
||||||
Current = config.GetBindable<bool>(DebugSetting.BypassFrontToBackPass)
|
Current = config.GetBindable<bool>(DebugSetting.BypassFrontToBackPass)
|
||||||
},
|
},
|
||||||
new SettingsButton
|
|
||||||
{
|
|
||||||
Text = DebugSettingsStrings.ImportFiles,
|
|
||||||
Action = () => performer?.PerformFromScreen(menu => menu.Push(new FileImportScreen()))
|
|
||||||
},
|
|
||||||
new SettingsButton
|
|
||||||
{
|
|
||||||
Text = DebugSettingsStrings.RunLatencyCertifier,
|
|
||||||
Action = () => performer?.PerformFromScreen(menu => menu.Push(new LatencyCertifierScreen()))
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -11,13 +11,12 @@ using osu.Framework.Localisation;
|
|||||||
using osu.Framework.Logging;
|
using osu.Framework.Logging;
|
||||||
using osu.Framework.Platform;
|
using osu.Framework.Platform;
|
||||||
using osu.Game.Database;
|
using osu.Game.Database;
|
||||||
using osu.Game.Localisation;
|
|
||||||
|
|
||||||
namespace osu.Game.Overlays.Settings.Sections.DebugSettings
|
namespace osu.Game.Overlays.Settings.Sections.DebugSettings
|
||||||
{
|
{
|
||||||
public partial class MemorySettings : SettingsSubsection
|
public partial class MemorySettings : SettingsSubsection
|
||||||
{
|
{
|
||||||
protected override LocalisableString Header => DebugSettingsStrings.MemoryHeader;
|
protected override LocalisableString Header => @"Memory";
|
||||||
|
|
||||||
[BackgroundDependencyLoader]
|
[BackgroundDependencyLoader]
|
||||||
private void load(GameHost host, RealmAccess realm)
|
private void load(GameHost host, RealmAccess realm)
|
||||||
@ -29,27 +28,27 @@ namespace osu.Game.Overlays.Settings.Sections.DebugSettings
|
|||||||
{
|
{
|
||||||
new SettingsButton
|
new SettingsButton
|
||||||
{
|
{
|
||||||
Text = DebugSettingsStrings.ClearAllCaches,
|
Text = @"Clear all caches",
|
||||||
Action = host.Collect
|
Action = host.Collect
|
||||||
},
|
},
|
||||||
new SettingsButton
|
new SettingsButton
|
||||||
{
|
{
|
||||||
Text = "Compact realm",
|
Text = @"Compact realm",
|
||||||
Action = () =>
|
Action = () =>
|
||||||
{
|
{
|
||||||
// Blocking operations implicitly causes a Compact().
|
// Blocking operations implicitly causes a Compact().
|
||||||
using (realm.BlockAllOperations("compact"))
|
using (realm.BlockAllOperations(@"compact"))
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
blockAction = new SettingsButton
|
blockAction = new SettingsButton
|
||||||
{
|
{
|
||||||
Text = "Block realm",
|
Text = @"Block realm",
|
||||||
},
|
},
|
||||||
unblockAction = new SettingsButton
|
unblockAction = new SettingsButton
|
||||||
{
|
{
|
||||||
Text = "Unblock realm",
|
Text = @"Unblock realm",
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -57,7 +56,7 @@ namespace osu.Game.Overlays.Settings.Sections.DebugSettings
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
IDisposable? token = realm.BlockAllOperations("maintenance");
|
IDisposable? token = realm.BlockAllOperations(@"maintenance");
|
||||||
|
|
||||||
blockAction.Enabled.Value = false;
|
blockAction.Enabled.Value = false;
|
||||||
|
|
||||||
@ -89,7 +88,7 @@ namespace osu.Game.Overlays.Settings.Sections.DebugSettings
|
|||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
Logger.Error(e, "Blocking realm failed");
|
Logger.Error(e, @"Blocking realm failed");
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,36 @@
|
|||||||
|
// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence.
|
||||||
|
// See the LICENCE file in the repository root for full licence text.
|
||||||
|
|
||||||
|
using osu.Framework.Allocation;
|
||||||
|
using osu.Framework.Localisation;
|
||||||
|
using osu.Framework.Screens;
|
||||||
|
using osu.Game.Localisation;
|
||||||
|
using osu.Game.Screens;
|
||||||
|
using osu.Game.Screens.Import;
|
||||||
|
using osu.Game.Screens.Utility;
|
||||||
|
|
||||||
|
namespace osu.Game.Overlays.Settings.Sections.Maintenance
|
||||||
|
{
|
||||||
|
public partial class GeneralSettings : SettingsSubsection
|
||||||
|
{
|
||||||
|
protected override LocalisableString Header => CommonStrings.General;
|
||||||
|
|
||||||
|
[BackgroundDependencyLoader]
|
||||||
|
private void load(IPerformFromScreenRunner? performer)
|
||||||
|
{
|
||||||
|
Children = new[]
|
||||||
|
{
|
||||||
|
new SettingsButton
|
||||||
|
{
|
||||||
|
Text = DebugSettingsStrings.ImportFiles,
|
||||||
|
Action = () => performer?.PerformFromScreen(menu => menu.Push(new FileImportScreen()))
|
||||||
|
},
|
||||||
|
new SettingsButton
|
||||||
|
{
|
||||||
|
Text = DebugSettingsStrings.RunLatencyCertifier,
|
||||||
|
Action = () => performer?.PerformFromScreen(menu => menu.Push(new LatencyCertifierScreen()))
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -23,6 +23,7 @@ namespace osu.Game.Overlays.Settings.Sections
|
|||||||
{
|
{
|
||||||
Children = new Drawable[]
|
Children = new Drawable[]
|
||||||
{
|
{
|
||||||
|
new GeneralSettings(),
|
||||||
new BeatmapSettings(),
|
new BeatmapSettings(),
|
||||||
new SkinSettings(),
|
new SkinSettings(),
|
||||||
new CollectionsSettings(),
|
new CollectionsSettings(),
|
||||||
|
@ -7,6 +7,7 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using osu.Framework.Allocation;
|
using osu.Framework.Allocation;
|
||||||
using osu.Framework.Bindables;
|
using osu.Framework.Bindables;
|
||||||
|
using osu.Framework.Development;
|
||||||
using osu.Framework.Graphics;
|
using osu.Framework.Graphics;
|
||||||
using osu.Framework.Graphics.Containers;
|
using osu.Framework.Graphics.Containers;
|
||||||
using osu.Framework.Graphics.Sprites;
|
using osu.Framework.Graphics.Sprites;
|
||||||
@ -27,21 +28,28 @@ namespace osu.Game.Overlays
|
|||||||
public LocalisableString Title => SettingsStrings.HeaderTitle;
|
public LocalisableString Title => SettingsStrings.HeaderTitle;
|
||||||
public LocalisableString Description => SettingsStrings.HeaderDescription;
|
public LocalisableString Description => SettingsStrings.HeaderDescription;
|
||||||
|
|
||||||
protected override IEnumerable<SettingsSection> CreateSections() => new SettingsSection[]
|
protected override IEnumerable<SettingsSection> CreateSections()
|
||||||
{
|
{
|
||||||
// This list should be kept in sync with ScreenBehaviour.
|
var sections = new List<SettingsSection>
|
||||||
new GeneralSection(),
|
{
|
||||||
new SkinSection(),
|
// This list should be kept in sync with ScreenBehaviour.
|
||||||
new InputSection(createSubPanel(new KeyBindingPanel())),
|
new GeneralSection(),
|
||||||
new UserInterfaceSection(),
|
new SkinSection(),
|
||||||
new GameplaySection(),
|
new InputSection(createSubPanel(new KeyBindingPanel())),
|
||||||
new RulesetSection(),
|
new UserInterfaceSection(),
|
||||||
new AudioSection(),
|
new GameplaySection(),
|
||||||
new GraphicsSection(),
|
new RulesetSection(),
|
||||||
new OnlineSection(),
|
new AudioSection(),
|
||||||
new MaintenanceSection(),
|
new GraphicsSection(),
|
||||||
new DebugSection(),
|
new OnlineSection(),
|
||||||
};
|
new MaintenanceSection(),
|
||||||
|
};
|
||||||
|
|
||||||
|
if (DebugUtils.IsDebugBuild)
|
||||||
|
sections.Add(new DebugSection());
|
||||||
|
|
||||||
|
return sections;
|
||||||
|
}
|
||||||
|
|
||||||
private readonly List<SettingsSubPanel> subPanels = new List<SettingsSubPanel>();
|
private readonly List<SettingsSubPanel> subPanels = new List<SettingsSubPanel>();
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user