Skip to content

Commit

Permalink
Change: Be selective about clearing sprite/font caches on interface s…
Browse files Browse the repository at this point in the history
…cale change. (OpenTTD#11576)

Sprite cache contains all zoom levels anyway, so does not need to be reloaded.

Font cache does not need to be clear if the font zoom hasn't changed, i.e. when changing the max sprite zoom level setting.
  • Loading branch information
PeterN authored Dec 11, 2023
1 parent b62fafc commit 0a8bcdd
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions src/gfx.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1982,17 +1982,17 @@ bool AdjustGUIZoom(bool automatic)
UpdateGUIZoom();
if (old_scale == _gui_scale && old_gui_zoom == _gui_zoom) return false;

/* Reload sprites if sprite zoom level has changed. */
/* Update cursors if sprite zoom level has changed. */
if (old_gui_zoom != _gui_zoom) {
GfxClearSpriteCache();
VideoDriver::GetInstance()->ClearSystemSprites();
UpdateCursorSize();
} else if (old_font_zoom != _font_zoom) {
}
if (old_font_zoom != _font_zoom) {
GfxClearFontSpriteCache();
ClearFontCache();
LoadStringWidthTable();
}

ClearFontCache();
LoadStringWidthTable();
UpdateAllVirtCoords();

/* Adjust all window sizes to match the new zoom level, so that they don't appear
Expand Down

0 comments on commit 0a8bcdd

Please sign in to comment.