Commit Graph

9194 Commits

Author SHA1 Message Date
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
Miolith
853a46e021 Backends: Vulkan: fixed texture update corruption introduced in 1.92.0. (#8801, #8755, #8840, #8465)
Fix abe294bfd0
2025-07-27 19:33:30 +09:00
Ori Avtalion
075ad676aa Demo: Fix '= =' typo in text (#8836) 2025-07-25 17:36:23 +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
Shi Yan
8403c49484 Examples: SDL3+Metal: Added example. (#8827, #8825) 2025-07-23 15:58:13 +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
scribam
7babc24ad4 CI: Add SDL3 builds to MacOS and Windows. (#8819, #8778) 2025-07-22 16:52:20 +09:00
scribam
c96e9c8273 CI: Update Windows CI to use a more recent SDL2. (#8819, #8778) 2025-07-22 16:51:20 +09:00
Tim-Rex
4a51295c9e Backends: OpenGL3: add and call embedded loader shutdown in ImGui_ImplOpenGL3_Shutdown(). (#8792)
Include update of imgui_impl_opengl3_loader.h as submitted to gl3w_stripped repository, which adds imgl3wShutdown().
2025-07-22 16:46:35 +09:00
gomkyung2
9c392896b7 Misc: removed more redundant inline static linkage from imgui_internal.h. (#8813, #8682, #8358) 2025-07-22 16:31:10 +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
Rhys Pounder
3401dbde92 Docs: Fixed typo. (#8817) 2025-07-21 15:42:16 +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
336d9212fc Backends: using range-for to iterate draw_data->CmdLists[]. 2025-07-11 17:41:52 +02:00
ocornut
79d88e2d0b Error Handling, Tables: TableGetSortSpecs() silently return NULL when no table (matching most other table getters). TableSetBgColor() uses IM_ASSERT_USER_ERROR. 2025-07-11 16:57:43 +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
c680f54e6c FIxed IsWindowFocused() using wrong flag types (harmless as values were identical). (#8786) 2025-07-10 18:42:39 +02:00
ocornut
4d745bc602 Version 1.92.2 WIP 2025-07-10 18:41:05 +02:00
ocornut
5d4126876b Version 1.92.1 v1.92.1 2025-07-09 18:53:58 +02:00
ocornut
0ba02a4ed6 Debug Tools: added IMGUI_DEBUG_HIGHLIGHT_ALL_ID_CONFLICTS. (#8651, #7961, #7669) 2025-07-09 18:45:58 +02:00
ocornut
f39b138487 Internals: rename DebugDrawIdConflicts -> DebugDrawIdConflictsId. 2025-07-09 18:24:14 +02:00
ocornut
d9b758661f Misc comments to facilitate update for people who nilly-willy copied entire chunks of internal widgets to create their own. 2025-07-09 16:30:53 +02:00
Pascal Thomet
ed7d965818 Examples: GLFW+OpenGL3, GLFW+WGPU: Emscripten Makefiles uses port contrib.glfw3 (#8742)
This unofficial port offers a better support for HighDPI.
See
- https://emscripten.org/docs/compiling/Contrib-Ports.html
- https://github.com/pongasoft/emscripten-glfw
2025-07-08 15:57:22 +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
7c51c0e3de Docs: misc update. (#8727, #8764) 2025-07-08 11:59:32 +02:00
ocornut
c0d02e5ae4 Backends: Vulkan: forgot to update Changelog. (#8772) 2025-07-07 17:02:07 +02:00
Moses Miller
032e1397d9 Backends: Vulkan: use separate barrier for buffer. (#8772) 2025-07-07 16:58:42 +02:00
Moses Miller
c2d9b07533 Backends: Vulkan: fixed texture synchronization. (#8772) 2025-07-07 16:58:41 +02:00
ocornut
4ef1145241 Fonts: fixed dynamically changing font loader from losing Fallback and Ellipsis glyphs. (#8763)
Only the call to ImFontAtlasBuildSetupFontLoader() is the notable change. The change in ImFontAtlasFontInitOutput() is merely to use an existing helper function.
2025-07-07 16:54:08 +02:00
ocornut
57a93e1a19 Backends: Allegro5: fixed texture update broken on some platforms where ALLEGRO_LOCK_WRITEONLY needed all texels to be rewritten. (#8770) 2025-07-07 15:36:24 +02:00