Commit Graph

2669 Commits

Author SHA1 Message Date
ocornut
42656b3aa1 Scrollbar, Style: added style.ScrollbarPadding, ImGuiStyleVar_ScrollbarPadding. (#8895) 2025-08-20 18:27:35 +02:00
ocornut
0c4f50090a DrawList: fixed CloneOutput() taking a copy of the ImDrawListSharedData pointer. (#8894, #1860)
Amend b82e99c032
2025-08-20 17:49:18 +02:00
ocornut
86ec5c8342 Version 1.92.3 WIP 2025-08-19 15:15:49 +02:00
ocornut
45acd5e0e8 Version 1.92.2b 2025-08-13 17:31:01 +02:00
ocornut
774ddb58bd Fixed IsItemHovered() failing on disabled items and items that have no identifier. Made holding on disabled items not leak IsItemDisabled() between disabled items when window has _NoMove. (#8877, #8883)
See amends to "widgets_status_common", "widgets_disabled_2" tests.
2025-08-13 17:08:04 +02:00
ocornut
af920e1e6f Version 1.92.3 WIP 2025-08-12 11:30:41 +02:00
ocornut
2b24f5fa71 Version 1.92.2 2025-08-11 16:47:06 +02:00
ocornut
5a6fa33b88 Fixed an inconsistency between IsItemHovered() and internal hovering check, where IsItemHovered() would return true if mouse was first clicked on the background of a non-moveable window. (#8877) 2025-08-11 15:41:38 +02:00
Ian
ea075ed973 ImVector: skip memcpy in operator= if Data isn't initialized to play nice with -fsanitize=undefined. (#8874) 2025-08-11 09:53:01 +02:00
ocornut
9ee3d731b5 Backends: SDL_GPU3: changed ImTextureID type from SDL_GPUTextureSamplerBinding* to SDL_GPUTexture*. Added ImGui_ImplSDLGPU3_RenderState. (#8866, #8163, #7998, #7988) 2025-08-08 15:51:16 +02:00
LEE KYOUNGHEON
e7d0ad092c Removed static inline usages from free functions. (#8867, #8813)
For C++20 module compatibility. See https://github.com/stripe2933/imgui-module/
2025-08-07 17:01:23 +02:00
ocornut
3ef6c8410a Tabs: added new fitting policy ImGuiTabBarFlags_FittingPolicyMixed, new default. (#3421, #8800) 2025-07-31 23:42:25 +09:00
ocornut
78d11cd781 Tabs: (Breaking) renamed ImGuiTabBarFlags_FittingPolicyResizeDown to ImGuiTabBarFlags_FittingPolicyShrink. (#261, #351)
Amend 54a60aaa40
2025-07-31 22:58:01 +09:00
ocornut
7278cda039 Tabs: added TabMinWidthBase, ImGuiStyleVar_TabMinWidthBase. 2025-07-31 22:57:11 +09:00
ocornut
a0cdac48e0 Tables: fixed TableGetHoveredRow() (#7350, #6588, #6250) + TableGetRowIndex() which never correctly worked when using a clipper.
Amend e09454aec. Can't understand the comment nor why code was commented. Code looks alright. Compared TableEndRow() between 1.80 and current as well.
2025-07-31 13:21:26 +09:00
ocornut
87d7f7744e Fonts: (Internal) Added undocumented ImFontBaked::LoadNoRenderOnLayout. (#8758, #8465)
Amend fd75bdccb0.
2025-07-27 20:33:57 +09:00
ocornut
10dc1882c8 Fonts: (Internal) rename ImFontBaked::LockLoadingFallback to ImFontBaked::LoadNoFallback. 2025-07-27 20:31:37 +09:00
ocornut
da6c97203e Fixed comments for io.KeyCtrl / io.KeySuper to match the one for ImGuiMod_Ctrl, ImGuiMod_Super. (#8839) 2025-07-27 19:37:30 +09:00
ocornut
ed5bd1f9ef Changed ImTextCharToUtf8() to return bytes count rather than original pointer. (#8820)
Amend c2bf4abfa1
2025-07-22 14:17:11 +09:00
ocornut
336d9212fc Backends: using range-for to iterate draw_data->CmdLists[]. 2025-07-11 17:41:52 +02:00
ocornut
a0d3e405a3 Textures: ImTextureData::Create() sets status. RegisterUserTexture() increases RefCount. Added comments about ImTextureData::GetTexRef(). (#8789) 2025-07-11 16:49:28 +02:00
ocornut
0e6e876f23 Docs: update docs/comments about ImTextureRef, ImTextureID. (#8783) 2025-07-10 19:07:28 +02:00
ocornut
4d745bc602 Version 1.92.2 WIP 2025-07-10 18:41:05 +02:00
ocornut
5d4126876b Version 1.92.1 2025-07-09 18:53:58 +02:00
Pascal Thomet
18dca11dd0 Backends: GLFW, SDL2: ImplXXX_GetContentScaleXXX() helpers return 1.0f on emscripten / apple / android (#8742, #8733)
We can divide platforms into two cases based on how they report screen geometry:
- Case 1: Platforms which report screen size in "physical pixels": Windows (for "Dpi aware" apps), Linux (with Wayland)
- Case 2: Platforms which report screen size in "density-independent pixels": macOS, iOS, Android, emscripten

As a consequence, there are two important things we need to know:
- FramebufferScale: The scaling factor FrameBufferSize / ScreenSize
  - In case 1, the framebuffer size is equal to the screen size and DisplayFramebufferScale=1.
  - In case 2, the framebuffer size is equal to the screen size multiplied by a factor, for example DisplayFramebufferScale=2.
- ContentScale The scaling factor for the content that we will display
  - In case 1, the content scale will often need to be > 1 (e.g., 2), because we will need to display bigger elements so that they show with a correct physical size on the screen.
  - In case 2, the content scale is equal to 1
This commit fixes ContentScale for platforms in case 2.
2025-07-08 15:53:42 +02:00
ocornut
495d6f1e39 Undef 'Status' in main header file. (#8751, #8765) 2025-07-07 14:56:50 +02:00
Matthew Pohlmann
0448428322 Fonts: Change ImFontConfig::FontNo back to int from S8 (#8775)
When used with FreeType this value is passed as `face_index` which needs to be 32-bits.

# Conflicts:
#	docs/CHANGELOG.txt
2025-07-05 19:25:45 +02:00
ocornut
b7e5d76c79 Fonts: added ImFontAtlas::SetFontLoader() to dynamically change font loader at runtime without using internal API. (#8752, #8465) 2025-06-30 20:01:02 +02:00
ocornut
bc051dcf91 Textures: Fixed support for #define ImTextureID_Invalid to non-zero value. 2025-06-27 17:03:13 +02:00
ocornut
47570d045d Docs: update Backends with direction for implementing RenderDrawData function and supporting ImGuiBackendFlags_RendererHasTextures. (#8735, #8465) 2025-06-27 15:03:10 +02:00
ocornut
f18aea5246 Version 1.92.1 WIP 2025-06-27 13:30:45 +02:00
Aidan Sun
4f4bc7cc8f Replace IMGUI_API with inline for PushTextureID() and PopTextureID() (#8729) 2025-06-26 09:46:54 +02:00
ocornut
673eb7de96 Version 1.92.0 2025-06-25 18:19:56 +02:00
ocornut
6f21bed66d Fonts: removing assert from legacy PushFont() to mirror new PushFont(). for consistency. 2025-06-25 16:23:06 +02:00
ocornut
d8c6953710 Fonts: comments. 2025-06-25 12:10:13 +02:00
ocornut
89b5a2c3d5 (Breaking) Fonts: removed ImFontFlags_DefaultToLegacySize. 2025-06-24 19:10:10 +02:00
ocornut
97e0d59619 (Breaking) Fonts: removed PushFontSize(), PopFontSize(). 2025-06-24 19:09:51 +02:00
ocornut
ca72eb0596 (Breaking) Fonts: obsolete PushFont() default parameter. 2025-06-24 19:09:28 +02:00
ocornut
0218ddd575 Fonts: moved GetFont(), GetFontSize(), GetFontBaked() to higher section. 2025-06-24 15:00:42 +02:00
ocornut
a49ddaac89 Fonts: add comments and examples for GlyphExcludeRanges[]. 2025-06-24 11:06:41 +02:00
ocornut
2f9c518ca8 Textures: ImTextureData::GetPixels() returns void* for clarity. 2025-06-20 15:17:13 +02:00
ocornut
3a964d18e0 Comments on ImGuiMod_XXXX and ImGuiKey_GamepadXXXX values. 2025-06-20 10:11:07 +02:00
ocornut
b2c73596ae InputText: fixed a buffer overrun that could happen when using dynamically resizing buffers. (#8689) 2025-06-17 20:11:22 +02:00
ocornut
08bb348142 Misc: removed static linkage from operators to facilitate using in C++ modules. (#8682, #8358) 2025-06-17 17:09:26 +02:00
ocornut
041abe8522 Revert "Misc: removed static linkage from operators to facilitate using in C++ modules. (#8682, #8358) [@radjkarl]"
This reverts commit 39a90ac4d6.
2025-06-17 14:57:39 +02:00
ocornut
39a90ac4d6 Misc: removed static linkage from operators to facilitate using in C++ modules. (#8682, #8358) [@radjkarl] 2025-06-17 14:52:34 +02:00
ocornut
96be957315 Docs: update Changelog, FAQ, Fonts docs. 2025-06-11 17:40:10 +02:00
ocornut
cc3d4cab21 (Breaking) renamed ImFontConfig::FontBuilderFlags -> FontLoaderFlags. ImFontAtlas::FontBuilderFlags -> FontLoaderFlags. ImGuiFreeTypeBuilderFlags -> ImGuiFreeTypeLoaderFlags. 2025-06-11 16:42:31 +02:00
ocornut
29fbf3c1ec Fonts: demote ImFont::GetFontBaked() as slighty internal. 2025-06-11 16:25:17 +02:00
ocornut
02f58b3207 Fonts: AddFont() functions now allow size_pixels==0.0f (only required when using certain functions)
Fonts: AddFont() funcitons allow size_pixels==0 for merged fonts.
2025-06-11 16:24:48 +02:00