ocornut
ee8941e0de
Backends: Allegro5: added ImGuiBackendFlags_RendererHasTextures support.
2025-06-11 15:41:05 +02:00
ocornut
16fe666e36
Backends: SDLGPU3: added ImGuiBackendFlags_RendererHasTextures support.
...
# Conflicts:
# backends/imgui_impl_sdlgpu3.cpp
# backends/imgui_impl_sdlgpu3.h
2025-06-11 15:38:14 +02:00
ocornut
e538883a20
Backends: SDL_Renderer3: added ImGuiBackendFlags_RendererHasTextures support.
2025-06-11 15:38:13 +02:00
ocornut
9fa65cd190
Backends: SDL_Renderer2: added ImGuiBackendFlags_RendererHasTextures support.
2025-06-11 15:37:50 +02:00
ocornut
abe294bfd0
Backends: Vulkan: added ImGuiBackendFlags_RendererHasTextures support.
...
# Conflicts:
# backends/imgui_impl_vulkan.cpp
2025-06-11 15:33:28 +02:00
ocornut
0430c55b84
Backends: OpenGL2: added ImGuiBackendFlags_RendererHasTextures support.
...
Removed ImGui_ImplOpenGL2_CreateFontsTexture() and ImGui_ImplOpenGL2_DestroyFontsTexture().
2025-06-11 15:30:45 +02:00
ocornut
dbb91a574f
Backends: OpenGL3: added ImGuiBackendFlags_RendererHasTextures support.
...
+ Removed ImGui_ImplOpenGL3_CreateFontsTexture() and ImGui_ImplOpenGL3_DestroyFontsTexture().
2025-06-11 15:29:14 +02:00
ocornut
eefe5d5aac
Backends: DirectX12: added ImGuiBackendFlags_RendererHasTextures support.
...
# Conflicts:
# backends/imgui_impl_dx12.cpp
2025-06-11 15:27:19 +02:00
ocornut
2d2b1bc1cc
Backends: DirectX10: added ImGuiBackendFlags_RendererHasTextures support.
...
# Conflicts:
# backends/imgui_impl_dx10.cpp
# backends/imgui_impl_dx10.h
2025-06-11 15:27:16 +02:00
ocornut
75efba7ec7
Backends: DirectX9: added ImGuiBackendFlags_RendererHasTextures support
...
# Conflicts:
# backends/imgui_impl_dx9.cpp
2025-06-11 15:27:11 +02:00
ocornut
372fd27e71
Backends: DirectX11: added ImGuiBackendFlags_RendererHasTextures support.
...
# Conflicts:
# backends/imgui_impl_dx11.cpp
2025-06-11 15:26:00 +02:00
ocornut
c20e160e0f
Textures: added texture list pointer in ImDrawData.
...
# Conflicts:
# imgui.h
2025-06-11 15:12:02 +02:00
ocornut and ocornut
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
ocornut
a21a2e855b
Textures: Single Textures[] array allows backend to not have to care about atlases.
...
# Conflicts:
# imgui.h
2025-06-11 15:05:49 +02:00
ocornut
ee357aaddf
Textures: Add ImTextureUserID_Invalid + introducing SetTexID().
...
Which gives us room for potentially updating ImDrawData during render.
2025-06-11 15:04:02 +02:00
ocornut
2cde9125d6
Fonts: Selecting font config source list done by shared code.
2025-06-11 15:04:02 +02:00
ocornut and ocornut
0f0473bf1c
Fonts, Textures: main code for ImGuiBackendFlags_RendererHasTextures feature.
...
# Conflicts:
# imgui.h
# imgui_demo.cpp
2025-06-11 15:03:46 +02:00
ocornut
191a728ecc
(Breaking) added ImTextureRef struct. Changed ImDrawCmd::TextureId to TexRef.
...
Softly breaking. May require support from language binding generator.
Rebased and reworked completely on 2025/03/19.
2025-06-11 15:02:36 +02:00
ocornut
b2f39318cb
Adding .cache to ignore list. ( #8674 )
2025-06-11 13:41:06 +02:00
Dylam De La Torre and ocornut
201899b611
Backends: OpenGL3: Fixed using non-existing features on GLES 3.20 which would push a GL error. ( #8664 )
...
* GL_PRIMITIVE_RESTART is not a valid enum for glEnable&co on GLES 3.20
* GL_CONTEXT_PROFILE_MASK is not a valid enum for glGetIntegerv on GLES 3.20
2025-06-04 23:48:56 +02:00
ocornut
c3d7ada9df
Demo: add indentation to simplify upcoming merges.
2025-06-04 22:27:34 +02:00
ocornut
91f72bbe1c
Demo: omit ImGui:: prefix from ShowStyleEditor(), ShowUserGuide() code.
2025-06-04 21:29:12 +02:00
ocornut
9485aeb5c8
Demo: changed default framed item width to use Min(GetFontSize() * 12, GetContentRegionAvail().x * 0.40f).
2025-06-04 17:35:45 +02:00
ocornut
e877f78b0e
TreeNode: minor amend to b7ab2b7. ( #2920 )
2025-06-02 20:57:21 +02:00
ocornut
ef503ab0c8
TreeNode: fixed out of bound access in ImGuiTreeNodeFlags_DrawLinesXXX feature. ( #2920 )
...
TreeNode behavior would read TreeRecordsClippedNodesY2Mask from an older node at same lebel, and write to g.TreeNodeStack.Data[-1].
2025-06-02 20:50:38 +02:00
ocornut
b7ab2b7523
TreeNode: fixed an issue where tree lines are not drawn on node opening frame. ( #2920 )
2025-06-02 20:47:02 +02:00
ocornut
69e1fb50ca
Docs: fixed missing commit credit. ( #8656 )
2025-05-30 21:59:13 +02:00
Romain Moret and ocornut
e6913f58b9
imgui_freetype: Update lunasvg API to support v3.0+ ( #8656 , #6842 , #6591 )
2025-05-30 21:58:25 +02:00
ocornut
c3a3a39e92
Nav: fixed abnormal clipping disable over large ranges, could lead to stall. ( #3841 , #1725 )
...
Amend 93cccd27f
2025-05-30 21:55:50 +02:00
ocornut
19289d587a
Nav: fixed scroll fallback (when there are no interactive widgets to jump to) not being enabled on windows with menu or title bar.
2025-05-30 21:54:33 +02:00
ocornut
c53c9a8644
Clipper: further mitigation/improvements for abnormally large contents ranges (larger than e.g. 2^31). ( #3609 , #8215 )
2025-05-30 21:53:25 +02:00
ocornut
87a6443c5b
Scroll: fixed contents size, scrollbar visibility and scrolling reet issue with abnormally large contents ranges. ( #3609 , #8215 )
2025-05-30 21:52:51 +02:00
ocornut
77f1d3b317
Refactor: move SetCurrentFont(), PushFont(), PopFont() to a section.
2025-05-26 19:32:28 +02:00
ocornut
407a0b972e
(Breaking) Fonts: CalcWordWrapPositionA() -> CalcWordWrapPosition(), takes size instead of scale.
...
This will be needed for upcoming changes.
2025-05-23 16:08:00 +02:00
ocornut
5f0acadf7d
RenderTextEllipsis() added breaking comments.
2025-05-20 18:06:12 +02:00
ocornut
143924bbf3
Image(), ImageWithBg(): added extra comments. ( #8131 , #8238 )
2025-05-20 17:53:17 +02:00
ocornut
1ffa7a40ac
TextLinkOpenURL(): added bool return value on click. ( #8645 , #8451 , #7660 )
2025-05-20 17:32:50 +02:00
ocornut
415dddf0fa
Tooltips: tooltips have a maximum size corresponding to host display/monitor size.
2025-05-19 18:42:55 +02:00
ocornut
10a0eb3e1c
Alter windows min/max size logic to prioritize enforcing size_max bounds rather than size_min.
...
Docking branch until now used the opposite, aka ImClamp(size_desired, size_min, ImMax(size_min, size_max));, will be standardized across branches.
2025-05-19 18:42:28 +02:00
ocornut
cdb5cbe6f8
(Breaking) Commented out ImGuiListClipper::ForceDisplayRangeByIndices() which was obsoleted in 1.89.6.
...
Amend ecb0aaa .
2025-05-15 17:44:27 +02:00
ocornut
d93d918eca
(Breaking) Commented out PushAllowKeyboardFocus()/PopAllowKeyboardFocus() which was obsoleted in 1.89.4. ( #3092 )
...
Amend e83fb46 .
2025-05-15 17:43:27 +02:00
ocornut
6d939fcedc
(Breaking) TreeNode: renamed ImGuiTreeNodeFlags_NavLeftJumpsBackHere to ImGuiTreeNodeFlags_NavLeftJumpsToParent for clarity. ( #1079 , #8639 )
2025-05-15 17:35:29 +02:00
ocornut
9361c35176
Backends: SDL2, SDL3: maximum room for sanitizer to not be zealous.
2025-05-15 15:36:42 +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
Pascal Thomet and ocornut
2df9e9b103
Examples: Apple: add Makefile for example_apple_metal, example_apple_opengl2. ( #8637 )
...
- Works only for macOS: use XCode for iOS
- It will produce a raw exe. It will not a produce an macOS application bundle (i.e a folder that includes exe and resources). To get app bundles, use the XCode project.
- An adjustment was required in main.mm (for macOS only), to ensure that the exe can run without any plist or storyboard under macOS
2025-05-14 18:23:31 +02:00
omar and GitHub
2fd474132d
Update pull_request_template.md
2025-05-14 16:53:36 +02:00
ocornut
4e487cfa99
stb_textedit: subsequent comments to match ocornut/stb branch. ( #8635 , #7925 )
2025-05-14 14:05:19 +02:00
ocornut
1387d356aa
stb_textedit: subsequent fixes for next/prev word impl (not used by imgui) + PageUp/Home/End (no side effect but more correct) ( #8635 , #7925 )
2025-05-14 13:38:36 +02:00
ocornut
5c3ac93335
stb_textedit: minor edits to match PR submitted upstream.
2025-05-14 13:17:53 +02:00
ocornut
61242e2e6a
InputText: fixed cursor positioning issue using up/down keys on non-ASCII text. ( #8635 , #7925 )
...
Bug introduced in abd07f6d30 .
Ref https://github.com/nothings/stb/issues/188
2025-05-14 11:37:55 +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
tamas-rabel and GitHub
b9ac32a0d5
Backends: DirectX12: Make sure texture sampling in the dx12 backend is not limited to the highest mip. ( #8631 )
2025-05-12 00:04:44 +02:00
ocornut
f484af34c2
Font: rename ImFont::AddRemapChar() parameters for clarity. ( #609 )
2025-05-08 18:05:05 +02:00
WSSDude and ocornut
ba513ba804
Backends: DX10, DX11, DX12: honor FramebufferScale. ( #8412 )
...
# Conflicts:
# backends/imgui_impl_dx11.cpp
# backends/imgui_impl_dx12.cpp
2025-05-07 19:19:30 +02:00
ocornut
bf68040dc5
Backends: Vulkan: fixed build with VK_NO_PROTOTYPES.
...
Amend bbc89b6 (#8600 )
2025-05-07 15:42:23 +02:00
ChrisTom-94 and ocornut
bbc89b6391
Backends: Vulkan: fixed validation errors during window detach in multi-viewport mode. ( #8600 , #8176 )
2025-05-07 15:23:03 +02:00
ocornut
64a5e27486
Docs: bad merge error.
2025-05-07 14:22:19 +02:00
ChrisTom-94 and ocornut
d1dc2a3298
Backends: Vulkan: Load dynamic rendering functions using vkGetDeviceProcAddr() + try both non-KHR and KHR versions. ( #8600 , #8326 , #8365 )
...
# Conflicts:
# backends/imgui_impl_vulkan.cpp
# docs/CHANGELOG.txt
2025-05-07 11:50:32 +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
c0dfd65d67
Backends: Win32: Fixed an issue where externally losing mouse capture (due to e.g. focus loss) would fail to claim it again the next subsequent click. ( #8594 )
2025-04-30 16:23:58 +02:00
ocornut
20066a8964
Examples: DirectX12+Win32: also test for IsIconic() for sleeping since we don't seem to get a DXGI_STATUS_OCCLUDED signal when minimized. ( #8603 )
...
Amend ec1d2be96f . (#2496 , #3907 , #6308 , #7615 )
This technically prevents multi-viewports from working with io.ConfigViewportsNoDefaultParent=true but this is a more fringe case to handle for our example app, better tradeoff imho to use IsIconic().
2025-04-30 11:30:06 +02:00
ocornut
3f8033324f
Demo: Dual List Box: fix sorting function, in theory should return 0 when equal. ( #8601 )
2025-04-30 11:10:58 +02:00
ocornut
75ddd9a6cd
Backends: SDLGPU3: added support for ImDrawCallback_ResetRenderState. ( #8599 )
2025-04-28 23:10:43 +02:00
Ryan Jensen and GitHub
b3c96bde8c
Demo: use IM_ARRAYSIZE more consistently InputText calls in demo window ( #8596 )
2025-04-26 16:10:00 +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
75964a9860
CI: run on ubuntu-latest.
2025-04-24 14:39:25 +02:00
ocornut
0fc4967ebc
Rework TextAligned() api to fix issues with baseline alignment + use standard CalcItemSize(). ( #7024 )
2025-04-23 15:08:57 +02:00
ocornut
aed1bcc12c
Rework TextAligned() api to take size input. ( #7024 )
2025-04-23 14:52:29 +02:00
ocornut
6a42d6b339
Added wp TextAligned() TextAlignedV(), TextAlignedExV() to internal API. ( #7024 )
2025-04-23 14:39:59 +02:00
ocornut
dcf0d8cab6
Tables: fixed TableHeader() eager vertical clipping of text. ( #6236 )
2025-04-22 18:34:56 +02:00
ocornut
7c6ce12fa4
Platform IME: minor amend to bf0f586 ( #8584 )
2025-04-22 11:24:02 +02:00
ocornut
bf0f586b69
Platform IME: added ImGuiPlatformImeData::WantTextInput, ViewportId. Backends: SDL3: honor WantTextInput. ( #8584 , #7492 , #6341 )
2025-04-22 11:21:02 +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
ocornut
97d85338e8
Tabs: adjust handling of ellipsis now that Close Button visibility changed. ( #8387 ) Internals: remove extra parameter to RenderTextEllipsis().
...
This requires RenderTextEllipsis() to use fine CPU-side clippoing.
Users of RenderTextEllipsis(): #7024 , #6236 , #5267 , #5745 , #4269 , #2775
2025-04-16 20:29:43 +02:00
ocornut
e4a865177e
ImFont: added cpu clip fine option for ImFont::RenderChar() (which is technically internal).
...
(toward #7024 )
2025-04-16 20:21:23 +02:00
ocornut
faea193800
Internals: minor refactor of TabItemLabelAndCloseButton(), should be no-op.
...
(minor thing toward #7024 )
2025-04-16 20:07:39 +02:00
ocornut
7ab4728a36
Error Handling: added better error report and recovery when calling EndFrame() or Render() without NewFrame().
2025-04-16 18:12:53 +02:00
ocornut
b23a216ecd
Examples: added SDL2+Vulkan, SDL3+Vulkan, GLFW+Vulkan makefiles. Amend ignore list. ( #2480 )
2025-04-16 15:04:14 +02:00
519q and ocornut
d3bb3336f5
Backends: OSX: remove duplicate variable. ( #8565 )
2025-04-14 14:12:48 +02:00
ocornut
3ab50c334a
TreeNode, Style: added style.TreeLinesRounding support. ( #2920 )
2025-04-10 19:26:29 +02:00
ocornut
9943137d1e
TreeNode: fixed non-opened clipped child node not moving Y2 marker. ( #2920 )
2025-04-10 17:25:06 +02:00
ocornut
ee0d96ac0d
TreeNode: extract code out of TreePop() into TreeNodeDrawLineToTreePop(). ( #2920 )
2025-04-10 17:00:29 +02:00
ocornut
8c977bf7b3
TreeNode, Tables: fixed ImGuiTreeNodeFlags_DrawLinesXXX feature when TreePop() is called in table: in no column or at top of row. ( #2920 )
2025-04-10 16:53:14 +02:00
ocornut
5311253468
TreeNode: ImGuiTreeNodeFlags_DrawLinesFull uses ToNodes Y2 when they are close (using a threshold). ( #2920 )
2025-04-10 16:03:39 +02:00
ocornut
ed50bb1676
TreeNode, Tables: fixed ImGuiTreeNodeFlags_DrawLinesXXX feature when TreePop() is called from a different column. ( #2920 )
2025-04-10 14:47:08 +02:00
ocornut
bbb0f0ade4
TreeNode: fixed incorrect clipping of arrow/bullet when using ImGuiTreeNodeFlags_SpanAllColumns.
2025-04-10 14:08:17 +02:00
ocornut
43caca05c2
TreeNode: DrawLines: tweak X2 offset to avoid losing line when ItemSpacing is large. ( #2920 )
2025-04-09 18:57:20 +02:00
ocornut
bcbbfdaad4
TreeNode: DrawLines: latch X1 offset during TreePush(). ( #2920 )
2025-04-09 18:56:56 +02:00
ocornut
5e7174dec6
TreeNode: removed TreeLinesSize > 0.0f optimization check. ( #2920 )
...
This is desirable but we'd need to avoid exposing 0.0f in style editor + assert on it.
2025-04-09 17:40:15 +02:00
Zane van Iperen and ocornut
74e453cf15
Backends: SDL2, SDL3: don't attempt to call SDL_CaptureMouse() on drivers where we don't call SDL_GetGlobalMouseState(). ( #8561 )
2025-04-09 14:58:32 +02:00
ocornut
789de09dda
TreeNode: extracted TreeNodeDrawLineToChildNode() for usage by custom widgets ( #2920 )
2025-04-09 12:04:09 +02:00
ocornut
39f34e1e58
TreeNode: Don't latch GetColorU32(ImGuiCol_TreeLines). ( #2920 )
...
Trade off doesn't seem worth it for large trees. User who really needs to alter colors can do it by adjusting Push/Pop locations.
2025-04-08 19:58:59 +02:00
ocornut
e5b218e6d1
TreeNode: added ImGuiTreeNodeFlags_DrawTreeXXX flags. ( #2920 )
...
# Conflicts:
# docs/CHANGELOG.txt
2025-04-08 19:58:59 +02:00
ocornut
faa03031b4
Windows: loosened code to handle ImGuiButtonFlags_FlattenChildren so that master matches docking. ( #8554 )
...
This essentially merges 059560d2 back into master.
2025-04-07 18:21:34 +02:00
ocornut
974bf58a21
Backends: Vulkan: Build and warning fixes. ( #8282 )
2025-04-07 17:39:00 +02:00