The link is now just "Speed hacks", with a hint under it saying they can
cause rendering errors, and the page starts with a longer explanation.
Adds SettingsPage::Description() for text between the groups.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
It now collects the page's settings when its view is created, so it can be
put first. Moved it to the top of Speed Hacks.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
SettingsPage::RestoreDefaults() adds a button that, after asking, puts the
config settings added to the page before it back to their defaults, running
the config's OnChanged reactions. Config::RestoreSettingToDefault() does the
work for a single setting, including those in blocks that reset as a whole.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Links to other pages already had one. SettingItem::OpensScreen() gives the same to
choices (and custom items that are choices) that open a full screen, like control
mapping or the savedata manager. Ones that open popups don't get it.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Also adds the missing "Latency" key for the header of that name, and removes
the unused "Performance" key.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Android replaces both when it loses the surface (a recreate, which
changing the display resolution does, or switching away), but the
settings screen and its views live on. The external display setting's
enabled check, which runs on every draw, then called into the deleted
DrawContext ("Pure virtual function called!"). The UI scale and
"Reload UI atlas" handlers had the same problem with the UIContext.
Look them up through the screen manager when needed instead.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Only moves code. The tabs other than System were built by static functions
in GameSettingsScreen.cpp, in place of the old methods, to keep the previous
change's diff readable. Now each tab has its own file, with just the
includes it needs, and MainSettingsPages.h declares their builders.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>