|
@@ -45,21 +45,38 @@ Other changes:
|
|
|
|
|
|
- Fonts: added ImFontAtlas::SetFontLoader() to dynamically change font
|
|
- Fonts: added ImFontAtlas::SetFontLoader() to dynamically change font
|
|
loader at runtime without using internal API. (#8752, #8465)
|
|
loader at runtime without using internal API. (#8752, #8465)
|
|
|
|
+- Fonts: fixed a bug where dynamically changing font loader would lose
|
|
|
|
+ the Fallback and Ellipsis glyphs under some circumstance. (#8763)
|
|
- Fonts: for large size fonts, layout/size calculation only load glyphs metrics.
|
|
- Fonts: for large size fonts, layout/size calculation only load glyphs metrics.
|
|
Actual glyphs are renderer+packed when used by drawing functions. (#8758, #8465)
|
|
Actual glyphs are renderer+packed when used by drawing functions. (#8758, #8465)
|
|
- Fonts: set a maximum font size of 512.0f at ImGui:: API level to reduce
|
|
- Fonts: set a maximum font size of 512.0f at ImGui:: API level to reduce
|
|
edge cases (e.g. out of memory errors). ImDrawList:: API doesn't have the
|
|
edge cases (e.g. out of memory errors). ImDrawList:: API doesn't have the
|
|
constraint. (#8758)
|
|
constraint. (#8758)
|
|
|
|
+- Fonts: Restore ImFontConfig::FontNo being a 32-bits value as this is needed
|
|
|
|
+ to pass full range of information into e.g. FreeType's face_index, as higher
|
|
|
|
+ bits are used from FreeType 2.6.1. (#8775) [@Valakor]
|
|
|
|
+ (the field has been erroneously reduced from 32-bits to 8-bit in 1.92.0)
|
|
- Textures: Fixed support for `#define ImTextureID_Invalid` to non-zero value:
|
|
- Textures: Fixed support for `#define ImTextureID_Invalid` to non-zero value:
|
|
ImTextureData() was incorrectly cleared with zeroes. (#8745) [@rachit7645]
|
|
ImTextureData() was incorrectly cleared with zeroes. (#8745) [@rachit7645]
|
|
- Demo: Added "Text -> Font Size" demo section. (#8738) [@Demonese]
|
|
- Demo: Added "Text -> Font Size" demo section. (#8738) [@Demonese]
|
|
- CI: Fixed dllimport/dllexport tests. (#8757) [@AidanSun05]
|
|
- CI: Fixed dllimport/dllexport tests. (#8757) [@AidanSun05]
|
|
|
|
+- CI: Updated to use latest Windows image + VS2022.
|
|
|
|
+- Examples: GLFW+OpenGL3, GLFW+WGPU: Emscripten Makefiles uses GLFW port
|
|
|
|
+ 'contrib.glfw3' which offers better HiDPI support. (#8742) [@pthom]
|
|
|
|
+- Backends: GLFW, SDL2 made ImGui_ImplGLFW_GetContentScaleXXX() and
|
|
|
|
+ ImGui_ImplSDL2_GetContentScaleXXXX() helpers return 1.0f on Emscripten
|
|
|
|
+ and Android platforms, matching macOS logic. (#8742, #8733) [@pthom]
|
|
- Backends: SDL3: avoid calling SDL_StartTextInput() again if already active.
|
|
- Backends: SDL3: avoid calling SDL_StartTextInput() again if already active.
|
|
- (#8727) [@morrazzzz]
|
|
|
|
|
|
+ (fixes e.g.: an issue on iOS where the keyboard animation will popup every
|
|
|
|
+ time the user types a key + probably other things) (#8727) [@morrazzzz]
|
|
- Backends: OSX: added ImGuiMouseCursor_Wait and ImGuiMouseCursor_Progress
|
|
- Backends: OSX: added ImGuiMouseCursor_Wait and ImGuiMouseCursor_Progress
|
|
mouse cursor support. (#8739) [@cfillion]
|
|
mouse cursor support. (#8739) [@cfillion]
|
|
|
|
+- Backends: Allegro5: fixed texture update broken on some platforms where
|
|
|
|
+ ALLEGRO_LOCK_WRITEONLY needed all texels to be rewritten. (#8770)
|
|
- Backends: Vulkan: use nonCoherentAtomSize to align upload_size, fixing
|
|
- Backends: Vulkan: use nonCoherentAtomSize to align upload_size, fixing
|
|
validation error on some setups. (#8743, #8744) [@tquante]
|
|
validation error on some setups. (#8743, #8744) [@tquante]
|
|
|
|
+- Backends: Vulkan: fixed texture synchronization issue introduced in 1.92.0,
|
|
|
|
+ leading to validation layers reacting. (#8772) [@Majora320]
|
|
|
|
|
|
Docking+Viewports Branch:
|
|
Docking+Viewports Branch:
|
|
|
|
|
|
@@ -161,6 +178,8 @@ Breaking changes:
|
|
and IsBuilt() functions. The new protocol for backends to handle textures doesn't need them.
|
|
and IsBuilt() functions. The new protocol for backends to handle textures doesn't need them.
|
|
Kept redirection functions (will obsolete).
|
|
Kept redirection functions (will obsolete).
|
|
- A majority of old backends should still work with new code (behaving like they did before).
|
|
- A majority of old backends should still work with new code (behaving like they did before).
|
|
|
|
+ - For instructions to upgrade your custom backend:
|
|
|
|
+ https://github.com/ocornut/imgui/blob/master/docs/BACKENDS.md
|
|
- Calling ImFontAtlas::Build() before initializing new backends will erroneously trigger
|
|
- Calling ImFontAtlas::Build() before initializing new backends will erroneously trigger
|
|
preloading all glyphs. Will be detected with an assertion after the backend is initialized.
|
|
preloading all glyphs. Will be detected with an assertion after the backend is initialized.
|
|
- Fonts: ImFontConfig::OversampleH/OversampleV default to automatic (== 0)
|
|
- Fonts: ImFontConfig::OversampleH/OversampleV default to automatic (== 0)
|
|
@@ -195,6 +214,7 @@ Breaking changes:
|
|
While in theory a vast majority of users shouldn't be affected, some use cases or
|
|
While in theory a vast majority of users shouldn't be affected, some use cases or
|
|
extensions might be. Among other things:
|
|
extensions might be. Among other things:
|
|
- ImDrawCmd::TextureId has been changed to ImDrawCmd::TexRef.
|
|
- ImDrawCmd::TextureId has been changed to ImDrawCmd::TexRef.
|
|
|
|
+ - ImFontAtlas::TexID has been changed to ImFontAtlas::TexRef.
|
|
- ImFontAtlas::ConfigData[] has been renamed to ImFontAtlas::Sources[].
|
|
- ImFontAtlas::ConfigData[] has been renamed to ImFontAtlas::Sources[].
|
|
- ImFont::ConfigData[], ConfigDataCount has been renamed to Sources[], SourceCount.
|
|
- ImFont::ConfigData[], ConfigDataCount has been renamed to Sources[], SourceCount.
|
|
- Each ImFont has a number of ImFontBaked instances corresponding to actively used
|
|
- Each ImFont has a number of ImFontBaked instances corresponding to actively used
|
|
@@ -212,6 +232,11 @@ Breaking changes:
|
|
g.Font == ImGui::GetFont()
|
|
g.Font == ImGui::GetFont()
|
|
g.FontSize == ImGui::GetFontSize()
|
|
g.FontSize == ImGui::GetFontSize()
|
|
g.FontBaked == ImGui::GetFontBaked() == ImGui::GetFont()->GetFontBaked(ImGui::GetFontSize())
|
|
g.FontBaked == ImGui::GetFontBaked() == ImGui::GetFont()->GetFontBaked(ImGui::GetFontSize())
|
|
|
|
+ - Fields moved from ImFontAtlas to ImTextureData
|
|
|
|
+ - ImFontAtlas->TexWidth -> ImFontAtlas->TexData->Width
|
|
|
|
+ - ImFontAtlas->TexHeight -> ImFontAtlas->TexData->Height
|
|
|
|
+ - ImFontAtlas->TexPixelsAlpha8 -> ImFontAtlas->TexData->GetPixels() (when ImFontAtlas::TexDesiredFormat == ImTextureFormat_Alpha8)
|
|
|
|
+ - ImFontAtlas->TexPixelsRGBA32 -> ImFontAtlas->TexData->GetPixels() (when ImFontAtlas::TexDesiredFormat == ImTextureFormat_RGBA32)
|
|
Please report if you are affected!
|
|
Please report if you are affected!
|
|
- Fonts: (users of imgui_freetype)
|
|
- Fonts: (users of imgui_freetype)
|
|
- renamed ImFontAtlas::FontBuilderFlags to ImFontAtlas::FontLoaderFlags.
|
|
- renamed ImFontAtlas::FontBuilderFlags to ImFontAtlas::FontLoaderFlags.
|