mirror of
https://github.com/stenzek/duckstation.git
synced 2025-06-08 04:25:37 +00:00
System: Always display OSD warning messages
I regretted what I did in f2720b98dd5c781a0b028968fc7fa166279047b1 less than a week after I pushed the change. As a compromise, only display the unsafe settings warnings on startup.
This commit is contained in:
parent
4e588bb6c1
commit
af58740f5d
@ -1220,7 +1220,7 @@ void System::LoadSettings(bool display_osd_messages)
|
|||||||
Host::LoadSettings(si, lock);
|
Host::LoadSettings(si, lock);
|
||||||
InputManager::ReloadSources(controller_si, lock);
|
InputManager::ReloadSources(controller_si, lock);
|
||||||
InputManager::ReloadBindings(controller_si, hotkey_si);
|
InputManager::ReloadBindings(controller_si, hotkey_si);
|
||||||
if (IsValidOrInitializing())
|
if (IsValidOrInitializing() && display_osd_messages)
|
||||||
WarnAboutUnsafeSettings();
|
WarnAboutUnsafeSettings();
|
||||||
|
|
||||||
// apply compatibility settings
|
// apply compatibility settings
|
||||||
@ -4739,15 +4739,12 @@ void System::WarnAboutUnsafeSettings()
|
|||||||
};
|
};
|
||||||
|
|
||||||
if (!g_settings.disable_all_enhancements)
|
if (!g_settings.disable_all_enhancements)
|
||||||
{
|
|
||||||
if (ImGuiManager::IsShowingOSDMessages())
|
|
||||||
{
|
{
|
||||||
if (g_settings.cpu_overclock_active)
|
if (g_settings.cpu_overclock_active)
|
||||||
{
|
{
|
||||||
append_format(ICON_EMOJI_WARNING,
|
append_format(
|
||||||
TRANSLATE_FS("System", "CPU clock speed is set to {}% ({} / {}). This may crash games."),
|
ICON_EMOJI_WARNING, TRANSLATE_FS("System", "CPU clock speed is set to {}% ({} / {}). This may crash games."),
|
||||||
g_settings.GetCPUOverclockPercent(), g_settings.cpu_overclock_numerator,
|
g_settings.GetCPUOverclockPercent(), g_settings.cpu_overclock_numerator, g_settings.cpu_overclock_denominator);
|
||||||
g_settings.cpu_overclock_denominator);
|
|
||||||
}
|
}
|
||||||
if (g_settings.cdrom_read_speedup != 1)
|
if (g_settings.cdrom_read_speedup != 1)
|
||||||
{
|
{
|
||||||
@ -4756,8 +4753,8 @@ void System::WarnAboutUnsafeSettings()
|
|||||||
speed = TRANSLATE_SV("System", "Maximum");
|
speed = TRANSLATE_SV("System", "Maximum");
|
||||||
else
|
else
|
||||||
speed.format("{}x", g_settings.cdrom_read_speedup);
|
speed.format("{}x", g_settings.cdrom_read_speedup);
|
||||||
append_format(ICON_EMOJI_WARNING,
|
append_format(ICON_EMOJI_WARNING, TRANSLATE_FS("System", "CD-ROM read speedup set to {}. This may crash games."),
|
||||||
TRANSLATE_FS("System", "CD-ROM read speedup set to {}. This may crash games."), speed);
|
speed);
|
||||||
}
|
}
|
||||||
if (g_settings.cdrom_seek_speedup != 1)
|
if (g_settings.cdrom_seek_speedup != 1)
|
||||||
{
|
{
|
||||||
@ -4766,13 +4763,12 @@ void System::WarnAboutUnsafeSettings()
|
|||||||
speed = TRANSLATE_SV("System", "Maximum");
|
speed = TRANSLATE_SV("System", "Maximum");
|
||||||
else
|
else
|
||||||
speed.format("{}x", g_settings.cdrom_seek_speedup);
|
speed.format("{}x", g_settings.cdrom_seek_speedup);
|
||||||
append_format(ICON_EMOJI_WARNING,
|
append_format(ICON_EMOJI_WARNING, TRANSLATE_FS("System", "CD-ROM seek speedup set to {}. This may crash games."),
|
||||||
TRANSLATE_FS("System", "CD-ROM seek speedup set to {}. This may crash games."), speed);
|
speed);
|
||||||
}
|
}
|
||||||
if (g_settings.gpu_force_video_timing != ForceVideoTimingMode::Disabled)
|
if (g_settings.gpu_force_video_timing != ForceVideoTimingMode::Disabled)
|
||||||
{
|
{
|
||||||
append(ICON_FA_TV,
|
append(ICON_FA_TV, TRANSLATE_SV("System", "Force frame timings is enabled. Games may run at incorrect speeds."));
|
||||||
TRANSLATE_SV("System", "Force frame timings is enabled. Games may run at incorrect speeds."));
|
|
||||||
}
|
}
|
||||||
if (!g_settings.IsUsingSoftwareRenderer())
|
if (!g_settings.IsUsingSoftwareRenderer())
|
||||||
{
|
{
|
||||||
@ -4793,7 +4789,6 @@ void System::WarnAboutUnsafeSettings()
|
|||||||
append(ICON_EMOJI_WARNING,
|
append(ICON_EMOJI_WARNING,
|
||||||
TRANSLATE_SV("System", "8MB RAM is enabled, this may be incompatible with some games."));
|
TRANSLATE_SV("System", "8MB RAM is enabled, this may be incompatible with some games."));
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
// Always display TC warning.
|
// Always display TC warning.
|
||||||
if (g_settings.gpu_texture_cache)
|
if (g_settings.gpu_texture_cache)
|
||||||
@ -4817,8 +4812,6 @@ void System::WarnAboutUnsafeSettings()
|
|||||||
{
|
{
|
||||||
append(ICON_EMOJI_WARNING, TRANSLATE_SV("System", "Safe mode is enabled."));
|
append(ICON_EMOJI_WARNING, TRANSLATE_SV("System", "Safe mode is enabled."));
|
||||||
|
|
||||||
if (ImGuiManager::IsShowingOSDMessages())
|
|
||||||
{
|
|
||||||
#define APPEND_SUBMESSAGE(msg) \
|
#define APPEND_SUBMESSAGE(msg) \
|
||||||
do \
|
do \
|
||||||
{ \
|
{ \
|
||||||
@ -4880,7 +4873,6 @@ void System::WarnAboutUnsafeSettings()
|
|||||||
|
|
||||||
#undef APPEND_SUBMESSAGE
|
#undef APPEND_SUBMESSAGE
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!g_settings.apply_compatibility_settings)
|
if (!g_settings.apply_compatibility_settings)
|
||||||
{
|
{
|
||||||
@ -4897,7 +4889,10 @@ void System::WarnAboutUnsafeSettings()
|
|||||||
messages.pop_back();
|
messages.pop_back();
|
||||||
|
|
||||||
LogUnsafeSettingsToConsole(messages);
|
LogUnsafeSettingsToConsole(messages);
|
||||||
Host::AddKeyedOSDWarning("performance_settings_warning", std::string(messages.view()), Host::OSD_WARNING_DURATION);
|
|
||||||
|
// Force the message, but use a reduced duration if they have OSD messages disabled.
|
||||||
|
Host::AddKeyedOSDWarning("performance_settings_warning", std::string(messages.view()),
|
||||||
|
ImGuiManager::IsShowingOSDMessages() ? Host::OSD_INFO_DURATION : Host::OSD_QUICK_DURATION);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user