- Converted the font size to float, to allow specifying more precise size, and support the sizes that would be wanted at (for instance) 72 DPI, without losing information (ie rounding to the closest 96DPI int).
- Change various font caches behavior (glyph, advance, kerning...) to match behavior of Freetype, and ensure that a given size in Freetype will be stored only once in the font caches.
- Added cvar commands:
- Slate.DumpFontCacheStats: will display the list of all font combinations used, with the number of glyphs for each combination.
- Slate.FlushFontCache: will clear the font caches as well as the font atlases, then will invalidate all the widgets to force the cache to be refilled.
- Fixed the combo box for font typeface selection not disabled when necessary.
#tests:
- changed the Font display settings between various values and customDPI, validatet that everything was save correctly, and that the display was reacting to the value change.
- tested all the tooltips, simple, extended (ctrl + alt), and dynamic (display of the current DPI setting next to the font size).
- validated that the font atlas/cache was containing not more than one time each glyph rendered by Freetype.
- validated that the edition of the font size was still fully functionnal (spinbox, undo/redo, support of disable state,...).
- tested default value for a new project (72DPI).
- compiled Slate/SlateCore/UMG with UnsafeTypeCastWarningLevel = WarningLevel.Warning to fix warnings related to the change.
- tested in a game with latest changes from BP team (CL 26034633), ensuring that there are no regression related to the change of type (int to float) from the Font size.
- running with it in a game and UE branch for months.
#jira UE-152161
#rb patrick.boutot
[CL 26074522 by yohann dossantos in ue5-main branch]
Fix a crash in some asset editors when you force deleted an asset with pending changes and hit "cancel" on the save dialog
#jira UE-107248
#preflight 64517c880e33f2d51d6e3adb
[CL 25321878 by aditya ravichandran in ue5-main branch]
This can also be overridden using the "CopyrightNotice" option in the "CommonSettings" of a GatherText config
#preflight 63c9c142d368fed9e5d07f7a
#rb Leon.Huang
[CL 23784893 by jamie dale in ue5-main branch]
Removed redundant private include paths from build.cs files.
Fixed include paths to be relative to the private or public folders.
Hid or removed includes that reached into other private module folders.
Updated PublicInclude paths when necessary.
#jira
#preflight 631e283bec5b0c765fc0ffdb
[CL 21960084 by bryan sefcik in ue5-main branch]
For context, other editors commonly use OnRequestClose as an opportunity to see if their data has changed, and pop up a message box asking the user if they want to save or cancel the closure. Actual cleanup is performed in OnClose() or as part of their destructor.
#jira none
#rb alejandro.arango tom.tillotson patrick.hardy
#preflight 60b0079c072a1d00012bc01e
[CL 16495334 by justin hare in ue5-main branch]