feat(console): persist the output zoom level across launches
The console zoom (s_console_zoom) was a plain static reset to 1.0 each launch, unlike the sibling toggles. Wire it through Settings (console_zoom float), restored into the static at startup in the App ctor and written back via the existing post-render diff-and-save. Loading clamps to [0.25, 4.0] (also catching NaN) so a corrupt value can't feed the scanline divisor. Verified: seeding console_zoom=1.5 survives a relaunch and the console text renders larger. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -313,6 +313,7 @@ bool App::init()
|
||||
ui::ConsoleTab::s_scanline_enabled = settings_->getScanlineEnabled();
|
||||
ui::ConsoleTab::s_line_accents_enabled = settings_->getConsoleLineAccents();
|
||||
ui::ConsoleTab::s_line_text_color_enabled = settings_->getConsoleTextColor();
|
||||
ui::ConsoleTab::s_console_zoom = settings_->getConsoleZoom();
|
||||
|
||||
// Apply saved user font scale so fonts are correct on first reload
|
||||
{
|
||||
@@ -1798,9 +1799,11 @@ void App::render()
|
||||
// disk I/O — and only here in the Console case where these statics can change.
|
||||
if (settings_) {
|
||||
if (ui::ConsoleTab::s_line_accents_enabled != settings_->getConsoleLineAccents() ||
|
||||
ui::ConsoleTab::s_line_text_color_enabled != settings_->getConsoleTextColor()) {
|
||||
ui::ConsoleTab::s_line_text_color_enabled != settings_->getConsoleTextColor() ||
|
||||
ui::ConsoleTab::s_console_zoom != settings_->getConsoleZoom()) {
|
||||
settings_->setConsoleLineAccents(ui::ConsoleTab::s_line_accents_enabled);
|
||||
settings_->setConsoleTextColor(ui::ConsoleTab::s_line_text_color_enabled);
|
||||
settings_->setConsoleZoom(ui::ConsoleTab::s_console_zoom);
|
||||
settings_->save();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user