100 Commits
Author SHA1 Message Date
omarandocornut 0a811e8ea1 Backends: DX9, DX10, DX11, DX12, Allegro5, OpenGL2, OpenGL3, SDLRenderer2, SDLRenderer3, SDLGPU3, Vulkan: added standard draw callbacks when possible. (#9378) 2026-04-23 21:50:45 +02:00
ocornut 689f837afa IO: added comments near ImGuiConfigFlags to refer to other fields. (#3379) 2026-03-30 13:04:38 +02:00
ocornut 97075fae4b Clipper: always pulls current context on ImGuiListClipper::Begin(). (#9324, #5856)
Marked Ctx as internal in the comments.
2026-03-30 12:53:30 +02:00
ocornut c91bcea7a8 Backends: SDLGPU3: fixed missing release of TexSamplerNearest. (#9196)
Amend/fix 8b86c939c7
2026-01-25 13:30:28 +01:00
ocornut c6e54c7ab5 Comments about input queue being close to be supporting multi-thread. (#5772) 2026-01-25 13:29:21 +01:00
ocornut 791ad9b82d InvisibleButton: allow calling with size (0,0) to fit to available content size. (#9166, #7623) 2026-01-13 16:15:48 +01:00
ocornut 960921f03a Happy new year! 2026-01-03 01:07:58 +01:00
omarandocornut fc89c61089 Hashing: handling of "###" operator to reset to seed within a string identifier doesn't include the "###" characters in the output hash anymore.
This has various simplifying properties.
Need a test engine update too.
+ Demo: removed misleading/unnecessary usage of ###.
2025-12-11 23:02:20 +01:00
ocornut ee48fad09d Internals: rename ImStableVector's BLOCK_SIZE to avoid conflict with Linux header defines. (#9088) 2025-11-21 19:47:03 +01:00
ocornut 26ff93dadc Examples: NULL: fixed msvc project. 2025-11-20 14:51:25 +01:00
ocornut a484fd2b56 Examples: Win32+OpenGL3: enable DPI awareness. (#9083) 2025-11-20 14:50:08 +01:00
ocornut b46f099a3f Backends: GLFW: fixed building on Linux platforms where Wayland headers are not available. (#9024, #8969, #8921, #8920) 2025-10-20 23:57:09 +02:00
ocornut e2a662eed8 Backends: Allegro5: fixed use of obsolete IM_OFFSETOF(). 2025-08-12 11:41:11 +02:00
ocornut e1a93805db Backends: Allegro5: Added ImGui_ImplAllegro5_SetDisplay(). 2025-08-12 11:33:10 +02:00
ocornut af920e1e6f Version 1.92.3 WIP 2025-08-12 11:30:41 +02:00
ocornut 284283615b InputText: minor tweak to an expression.
Primarily to make PVS Studio static analysis go silent but it is a perfectly valid suggestion.
2025-08-06 10:48:01 +09:00
ocornut 7e701c18c8 Fonts: fixed an issue when a font using MergeMode has a reference size specified but the target font doesn't. 2025-08-04 18:21:38 +09:00
ocornut 902b8cc39a Examples: SDL3+SDL_GPU: use SDL_GPU_PRESENTMODE_VSYNC present mode. (#8830) 2025-08-04 15:30:25 +09:00
ocornut 250bd66b76 Tabs: fixed ImGuiTabBarFlags_FittingPolicyScroll not triggering (regression in 3ef6c84). (#3421, #8800) 2025-08-04 15:19:16 +09:00
ocornut c14d83d4e0 Tabs: made scrolling buttons never keyboard/gamepad navigation candidates. 2025-08-04 15:12:23 +09:00
ocornut 7d5fef8642 Nav: fixed a bug where GamepadMenu couldn't toggle between main and menu layer while navigating a Modal window. (#8834)
Amend 901d432cb but for Gamepad.
2025-08-04 15:06:14 +09:00
ocornut 320c94bfaa Tabs: when scrolling is enabled, track selected tabs when resizing down parent container. (#3421, #8800) 2025-07-31 23:42:30 +09:00
ocornut 3ef6c8410a Tabs: added new fitting policy ImGuiTabBarFlags_FittingPolicyMixed, new default. (#3421, #8800) 2025-07-31 23:42:25 +09:00
ocornut cc1fbcc9a9 Fonts: undo change done in b884533 since 19d1ad0 made them unnecessary. (#8794, #8850) 2025-07-31 23:04:35 +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 7bb9db501c Tabs: fixed 046a8ea (commited a modified file). 2025-07-31 22:05:19 +09:00
ocornut 046a8eae0f Tabs: fixed tab bar underline not drawing below scroll buttons. (#6820, #4859, #5022, #5239)
Fix ef8ff1b5d8 which accidentally meant we are using BarRect after it may have been modified by TabBarScrollingButtons().
2025-07-31 22:04:01 +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 2ab3946ecb Windows: add StopMouseMovingWindow(), partial merge 80d78fa from docking. 2025-07-30 18:46:49 +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 c6c0c3be08 Docs: amend 1.92.0 logs on the fact that font->CalcTextSizeA() used to be thread-safe. 2025-07-27 20:15:21 +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 19d1ad04f4 Fonts: stop using stb_truetype.h implementation functions. Fix using IMGUI_DISABLE_STB_TRUETYPE_IMPLEMENTATION. (#8794) 2025-07-23 16:42:00 +09:00
ocornut b884533957 Document/workaround an issue using IMGUI_DISABLE_STB_TRUETYPE_IMPLEMENTATION since 1.92.0. (#8794) 2025-07-23 16:30:30 +09:00
ocornut 174f37bdaf Fixed building with IMGUI_DISABLE_DEBUG_TOOLS only. (#8796) 2025-07-23 16:17:35 +09:00
ocornut 4f00774006 Examples: SDL3+Metal: Amend example. (#8827, #8825)
Amend 8403c49
2025-07-23 16:11:47 +09:00
ocornut 06ab541e2f CI: Adjust policies to more frequently build Win64 SDL3+SDL_Renderer, SDL3+SDL_GPU, and tweak others. 2025-07-22 17:01:26 +09:00
ocornut ea613e181c Windows: fixed an issue where resizable child windows would emit border logic when hidden/non-visible. (#8815)
This makes more sense in docking branch but may be merged in master right away.
2025-07-22 16:22:53 +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 c9e0208de4 Textures: moved UpdateTexturesNewFrame(), UpdateTexturesEndFrame() to a more suitable location in the file. 2025-07-21 15:35:53 +09:00
ocornut 57a816ae60 Texutres: minor comments, tweaks. 2025-07-21 15:27:17 +09:00
ocornut 643f0e3abf Backends: OpenGL3: restore update path on non-WebGL non-ES targets that doesn't require a CPU copy. (#8802, #8465)
Amend/fix dbb91a5
2025-07-15 14:34:40 +02:00
ocornut 8744d10235 Backends: OpenGL2, OpenGL3: set GL_UNPACK_ALIGNMENT to 1 before updating textures. (#8802) 2025-07-15 14:30:50 +02:00
ocornut 7c51c0e3de Docs: misc update. (#8727, #8764) 2025-07-08 11:59:32 +02:00
ocornut 8c61ee5498 Tables: fixed comments about DisableDefaultContextMenu. (#8746) 2025-06-29 18:05:28 +02:00
ocornut d99ab9f903 Backends: SDL2: undef Status for X11. (#8751) 2025-06-28 17:15:18 +02:00
ocornut de7625b8c2 Docs: tweak/fixed comments. (#8750, #8749) 2025-06-28 17:12:05 +02:00
ocornut 0dc2885f3e InputText: fix for InsertChars() to work on read-only buffer. (#8714, #8689, #8242)
Ill defined feature but memory editor use InsertChars etc on a read-only buffer.
`if (init_state)` block of InputTextEx() intentionally does not resize TextA, as unneeded.
Amend b2c73596ae
Amend e900571
2025-06-22 13:04:51 +02:00
ocornut afe20dc9b6 Backends: warning fix. 2025-06-20 15:23:52 +02:00
ocornut e97e55adbc Backends: Fixed various warnings discovered when using MinGW GCC 15/Clang on latest backends.
dx12: 'ImGui_ImplDX12_Data* bd' shadowed local in spite of being in lambda.
2025-06-20 15:18:00 +02:00
ocornut 2f9c518ca8 Textures: ImTextureData::GetPixels() returns void* for clarity. 2025-06-20 15:17:13 +02:00
ocornut 9a50c09172 Bsckends: SDL2, GLFW: fixed ImGui_ImplXXXX_GetContentScaleXXX functions never using SDL 2.0.4 & GLFW 3.3 path in master.
Amend 9da3e6696a, 8269924c (was broken for master)
2025-06-20 14:38:33 +02:00
ocornut 3a964d18e0 Comments on ImGuiMod_XXXX and ImGuiKey_GamepadXXXX values. 2025-06-20 10:11:07 +02:00
ocornut 8d6e66d38c Backends: DX10, DX11, DX12, OpenGL3, Vulkan, WGPU: Assert when CreateDeviceObjects() calls return false. 2025-06-20 09:49:53 +02:00
ocornut f7dabede8b Backends: Allegro5: Fixed missing invisible mouse cursor, broken by ee8941e0d. 2025-06-20 09:49:53 +02:00
ocornut f633a60581 Backends: GLFW: Added support for multiple Dear ImGui contexts. (#8676, #8239, #8069) 2025-06-18 16:46:37 +02:00
ocornut d290e583c5 Backends: GLFW: fixed WndProc relying on current context. (#8676, #8239, #8069)
This makes the backend closer to support multi-context.
2025-06-18 16:39:57 +02:00
ocornut c56e8b4964 imgui_freetype: fixed NULL that creeped in instead of nullptr. 2025-06-18 15:31:00 +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 12626b85c4 InputText: minor changes to match for both insert chars paths to look more similar. 2025-06-17 19:24:45 +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 f2e4e80391 Windows: BeginChild(): fixed being unable to combine manual resize on one axis and automatic resize on the other axis. (#8690)
+ removed obsolete TODO entries.
2025-06-17 14:01:01 +02:00
ocornut fe048efeab DrawList, Fonts: fixed PushFont()/AddImage() not restoring correct atlas texture id when using multiple atlas (#8694)
This also needs 24f7328.
2025-06-17 12:06:14 +02:00
ocornut 24f7328e5f DrawList, Fonts: fixed ImFontAtlasTextureRepack() overwriting draw list shared data UV's etc. even when not bound. (#8694, #8465)
ImFontAtlasUpdateDrawListsSharedData() call from ImFontAtlasTextureRepack() would trigger this.
For simplicity we also track current atlas in ImDrawListSharedData, but we could probably use Font->ContainerAtlas.
2025-06-17 12:06:05 +02:00
ocornutandocornut 39f6c793b3 Fonts: proof of concept support for user textures.
# Conflicts:
#	imgui.h
#	imgui_internal.h
2025-06-11 15:59:19 +02:00
ocornutandocornut fad5280d4c Fonts: fixed broken support for legacy backend due to a mismatch with initial pre-build baked id. 2025-06-11 15:57:44 +02:00
ocornutandocornut 4dec946ae6 Fonts: don't pretend to half recover from OOM for now + debug log filename on load failure. 2025-06-11 15:57:35 +02:00
ocornutandocornut 8140a9d8a6 Fonts: comments on ImTextureData fields. 2025-06-11 15:57:35 +02:00
ocornutandocornut 42e7bb80b6 imgui_freetype: removed anonymous namespace + extracting two functions outside of ImGui_ImplFreeType_FontSrcData. 2025-06-11 15:57:28 +02:00
ocornutandocornut 6a455e1281 imgui_freetype: moving data out of ImGui_ImplFreeType_FontSrcData.
The reasoning behind that we would ideally transition ImGui_ImplFreeType_FontSrcData to be shared between fonts using same source.
2025-06-11 15:57:28 +02:00
ocornutandocornut fc87081133 Fonts: fixed GetCustomRectUV().
Fixing typo. Broken by fe598f7
2025-06-11 15:55:38 +02:00
ocornutandocornut e41bf16ff1 Fonts: fixed ImTextureID() being zero-cleared instead of using ImTextureUserID_Invalid. . 2025-06-11 15:53:42 +02:00
ocornutandocornut 7ac1bff482 Fonts: fixed an issue calling legacy ImFontAtlas::Clear(). 2025-06-11 15:52:12 +02:00
ocornutandocornut 144f444217 Fonts: fixed memory leaks, shutting down font loader, and on AddFont() failure in FreeType backend. 2025-06-11 15:52:12 +02:00
ocornutandocornut 8ea0ae454f Fonts: fixed a bug using size specified by secondary font sources. 2025-06-11 15:52:12 +02:00
ocornutandocornut e98a314e06 Textures: Added ImTextureData::UsedRect.
# Conflicts:
#	imgui_internal.h
2025-06-11 15:51:19 +02:00
ocornutandocornut 2bf6879dae Fonts: tidying up font scale logic.
# Conflicts:
#	imgui_internal.h
2025-06-11 15:51:18 +02:00
ocornutandocornut 066b24d741 Fonts: Fixed _OnChangedTextureID() asserting when calling on e.g. finalized drawlists. 2025-06-11 15:47:34 +02:00
ocornutandocornut a2bc3d81c2 Fonts: Fixed support for multiple contexts. 2025-06-11 15:43:07 +02:00
ocornutandocornut 43cc3fc8b1 Fonts: optimization bake FallbackAdvanceX into IndexAdvanceX[]. 2025-06-11 15:42:54 +02:00
ocornutandocornut 4f27792ffe (Breaking) Removed atlas->TexDesiredWidth now unnecessary (github 327) 2025-06-11 15:42:54 +02:00
ocornutandocornut b670f799d5 Fonts: use TexGlyphPadding. Fixed packing issues. Removed old code. 2025-06-11 15:41:21 +02:00
ocornutandocornut 0f553c57bd Fonts: AddFont() actually does the work, so we can handle errors & return an accurate return value. 2025-06-11 15:41:21 +02:00
ocornutandocornut 208705368e Textures: Adding a RefCount to textures so backend can avoid destroying them on shutdown if atlas is shared. 2025-06-11 15:05:51 +02:00
ocornutandocornut 0f0473bf1c Fonts, Textures: main code for ImGuiBackendFlags_RendererHasTextures feature.
# Conflicts:
#	imgui.h
#	imgui_demo.cpp
2025-06-11 15:03:46 +02:00
ocornut b5a73033ab Examples: Apple: Amend build scripts and gitignore, fix misc OSX warnings. (#8637)
# Conflicts:
#	backends/imgui_impl_metal.mm
2025-05-14 18:23:31 +02:00
ocornut 08689c51a9 Backends: GLFW, SDL2, SDL3: include GLFW/SDL version number in io.BackendPlatformName.
# Conflicts:
#	backends/imgui_impl_sdl2.cpp
#	backends/imgui_impl_sdl3.cpp
2025-05-13 15:50:51 +02:00
ocornut 4a6ba95392 Backends: SDL3: Comments (#6146) 2025-05-12 19:19:30 +02:00
ocornut 46235e91f6 Examples: SDL3: specify SDL_WINDOW_HIGH_PIXEL_DENSITY and make centering consistent + call SDL_RenderScale(). 2025-05-05 20:04:32 +02:00
ocornut afd3a36f69 Demo: added basic Fonts section under main demo (same as Metrics one) for visibility. 2025-05-05 19:39:56 +02:00
ocornut c5e2bb7cd1 Backends: SDLGPU3: Fixed creating atlas texture earlier than other backends.
# Conflicts:
#	backends/imgui_impl_sdlgpu3.cpp
2025-05-05 19:20:12 +02:00
ocornut e3bfaab3f7 Examples: update xcode projects. 2025-05-05 18:38:55 +02:00
ocornut 75ddd9a6cd Backends: SDLGPU3: added support for ImDrawCallback_ResetRenderState. (#8599) 2025-04-28 23:10:43 +02:00
ocornut cbb8edb0b7 Tables: fixed an assert when combining Tables, Frozen Rows, Clipper and BeginMultiSelect() in a certain order. (#8595, #8250)
The table->CurrentColumn != -1 test in BeginMultiSelect() was affected. It would have been possible to amend the test with table->IsInsideRow but this seems generally saner.

Docs: fixed typo. (#8592)
2025-04-26 15:44:51 +02:00
ocornut af987eb117 Backends: DX12: build fix for Clang. (#8582) 2025-04-20 11:24:30 +02:00
ocornut 69d572bb10 Fonts: reworked text ellipsis logic to ensure a "..." is always displayed instead of a single character. (#7024)
Requires 97d85338e8 and e4a865177e
2025-04-16 20:30:29 +02:00