Vlad and ocornut
dee9b15bbe
Backends: Metal: add sampler states and DrawCallback_SetSamplerLinear / DrawCallback_SetSamplerNearest callbacks. ( #9381 , #9371 , #9378 )
2026-04-28 15:09:23 +02:00
ocornut
86ebb3bc11
Backends: removed samplers from ImGui_ImplDX10_RenderState, ImGui_ImplDX11_RenderState + fixed all Changelogs. ( #9378 )
2026-04-23 22:03:11 +02:00
ocornut
7e7f3adb80
Removed DrawCallback_SetSamplerCustom feature for now. Too unreliable to get working everywhere. ( #9378 )
2026-04-23 21:50:52 +02:00
omar and ocornut
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
f2f843c113
Fixed some extremely zealous warnings (GCC -Wconversion, -Wdouble-promotion)
...
(amend a1e0552 )
2026-04-23 17:23:43 +02:00
ocornut
b065713cec
Backends: OpenGL2/3, SDLRenderer2/3, DirectX9, Metal: moved Init/Shutdown code lower in the file.
...
Allows to point to local functions without forward declaring them.
2026-04-23 15:53:28 +02:00
Andy Grundman and ocornut
4b80d409e7
Backends: Metal: use a dedicated bufferCacheLock to avoid crashing when bufferCache is replaced by a new object while being used for synchronize(). ( #9367 )
...
This also removes the dispatch onto main when adding the finished buffers back into the cache. This operation should be fine to run on any thread as long as it's inside the sync block.
2026-04-14 17:14:08 +02:00
hunam and ocornut
49df3116bc
Backends: Metal: avoid redundant vertex buffer bind in SetupRenderState. ( #9343 )
2026-04-03 19:14:23 +02:00
ocornut
0500e546b5
Backends: DX9, Metal, SDLRenderer2/3: fixed more assumptions that ImTextureID_Invald == 0 + Amend Changelogs. ( #9310 , #9293 )
2026-03-19 11:47:01 +01:00
ocornut
9ce41a92c3
Misc/shallow merges from docking branch to reduce small drift.
2026-01-08 14:31:25 +01:00
ocornut
fc4105c8a8
Backends: DX9,DX10,DX11,DX12,Metal,Vulkan,WGPU,SDLRenderer2,SDLRenderer3: ensure that a texture in _WantDestroy state always turn to _Destroyed. ( #8977 )
...
Amend 9809b0b . Strictly speaking this is not necessary anymore but it seems generally sane to promote this.
2025-10-01 17:49:22 +02:00
ocornut
d4f722d5b2
IO: added ImGuiPlatformIO::ClearPlatformHandlers(), ClearRendererHandlers(). Backends: call those on Shutdown(). ( #8945 , #2769 )
2025-09-18 16:58:50 +02:00
ocornut
336d9212fc
Backends: using range-for to iterate draw_data->CmdLists[].
2025-07-11 17:41:52 +02:00
thedmd and ocornut
26c017d5ea
Backends: Metal: added ImGuiBackendFlags_RendererHasTextures support.
...
# Conflicts:
# backends/imgui_impl_metal.h
# backends/imgui_impl_metal.mm
2025-06-11 15:41:05 +02:00
ocornut
5dd84082ab
InputTextWithHint(): Fixed buffer overflow when user callback modifies the buffer contents in a way that alters hint visibility. ( #8368 )
2025-02-03 15:11:22 +01:00
ocornut
204cebc8fc
Backends: Metal: Fixed a crash on application resources. ( #8367 , #7419 ) [@anszom]
2025-02-03 14:21:53 +01:00
Daniel Walz and GitHub
e7fb97208a
Backends: Metal: Added missing IM_UNUSED ( #8302 )
2025-01-09 23:12:07 +01:00
Selim Sandal and ocornut
e6a7c7689f
Backends: Metal: Fixed memory leaks. ( #8276 , #8166 )
2025-01-08 12:03:18 +01:00
ocornut
d0021e1621
Backends: Metal: Fixed resource leak when using multiple contexts. ( #7419 )
2025-01-06 15:01:59 +01:00
ocornut
43fbd7ce84
Backends: standardized top of file comments.
2024-12-05 12:43:04 +01:00
ocornut
419a9ada16
Ignore clang warning Wnontrivial-memaccess ( #8129 , #8135 )
...
Amend 88e2327
Use void* cast in backend where the memset are infrequent.
2024-11-07 19:08:37 +01:00
Maya Warrier and GitHub
88e232739b
Ignore clang warning Wnontrivial-memaccess ( #8129 )
...
Produced when memset(this, ..) is used on a non-trivially copyable type
2024-11-05 10:44:39 +01:00
ocornut
c3629adbeb
Backends: Metal: fixed ImTextureID cast. ( #1641 )
...
Amend 92b9498
2024-10-08 14:34:41 +02:00
ocornut
9bd5d8a240
Backends: misc renaming of locals. Use 'draw_list' instead of 'cmd_list'. Avoid using 'ctx'.
...
This is likely to trigger merging issues. If it does, best to always get "theirs" and rename in there.
2024-10-07 17:57:11 +02:00
ocornut
5e23680454
Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. ( #7568 )
2024-05-13 15:07:13 +02:00
ocornut
d15574ce2a
Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! ( #6275 )
...
Better standardized similar checks in other backends.
2024-05-07 16:53:03 +02:00
ocornut
ab522dd18c
Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. ( #4537 )
2023-11-09 16:44:39 +01:00
ocornut
357f752bed
Docs: add more links to the top of every examples and backends files.
2023-09-11 14:01:40 +02:00
ocornut
33e13c85e1
Backends: Made all backends sources files support global IMGUI_DISABLE. ( #6601 )
2023-07-13 11:27:52 +02:00
70cca1eac0
Backends: avoid null dereference in metal and osx shutdown ( #6385 , #6334 )
...
Co-authored-by: Alexander Rath <alex@ist.besonders.cool >
2023-05-04 17:18:29 +02:00
Gereon V and ocornut
055e71518e
Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. ( #6334 , #6335 )
...
Amended with fix for missing clear for ImGuiBackendFlags_HasGamepad.
2023-04-17 14:57:12 +02:00
ocornut
9203883bbe
Comments + Metal using SetTexID(0) for consistency.
2023-04-11 11:22:42 +02:00
ocornut
e816bc6723
Merge misc changes from docking branch to reduce small drift.
...
In particular:
- imgui.cpp : move UpdateInputEvents() higher in NewFrame() to match docking + update RenderMouseCursor() to match.
- imgui_draw.cpp: ImDrawList::_ResetForNewFrame() change from c807192ab
- Backends: SDL2. Add MouseWindowID + change SDL_CaptureMouse() test to match docking branch. Not strictly necessary but aimed at reducing drift because we go on and fork this file.
+ moved responsability of checking valid names to TabBarGetTabName() to simplify both branches.
2023-02-07 13:22:23 +01:00
David Chavez and ocornut
21b5fac57a
Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' ( #5603 )
2022-08-23 12:52:45 +02:00
luigifcruz and ocornut
82e10f1b61
Backends: Metal: Add dispatch synchronization. ( #5447 )
2022-07-05 15:24:37 +02:00
Stephen H. Gerstacker and ocornut
67410d53f7
Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). ( #5403 )
2022-06-30 20:16:45 +02:00
Warren Moore and ocornut
7354009a73
Backends: Metal: Fixed null dereference inside command buffer completion handler. ( #5363 , #5365 )
2022-06-01 00:40:22 +02:00
rokups and ocornut
d768b8c812
Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events.
...
'#if __has_feature(objc_arc)' was removed as callback gets required reference via ImGui_ImplMetal_GetBackendData() so that weakref is not really needed.
2022-05-04 16:40:35 +02:00
stuartcarnie and ocornut
d58b8414b9
Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. ( #4821 )
...
+ Rename ImGuiFocusObserver. Docking branch will use it for more than focus.
2022-05-03 12:12:03 +02:00
noisewuwei and ocornut
e54db4ee70
Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. ( #5203 , #5221 , #4141 )
...
# Conflicts:
# docs/CHANGELOG.txt
2022-04-27 15:17:32 +02:00
ocornut
f7f30476d5
Added comments about requirement for bilinear filtering. ( #5156 , #3245 ) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). ( #4927 )
2022-04-07 14:28:08 +02:00
2d76b09d2e
Backends: Metal: Conditional check, amend 7602277 ( #5122 , #5123 )
...
Co-authored-by: Wvader <34067397+wvader@users.noreply.github.com >
2022-03-28 10:58:27 +02:00
Wvader and ocornut
7602277c86
Backends: Metal: Remove weak ref ( #5122 , #5123 )
2022-03-22 17:24:51 +01:00
ocornut
efa50f72a7
Backends: Metal: Ignore ImDrawCmd where ElemCount == 0. ( #4857 )
2022-01-03 22:14:19 +01:00
luigifcruz and ocornut
41e39ea6e1
Backends: Metal: Add Metal C++ bindings support. ( #4824 , #4746 )
2021-12-30 15:04:03 +01:00
ocornut
440824d431
Backends: Fixed early out on empty clip rect. In particular, DX12 backend would warn about it (others not so much). ( #4775 , #4464 )
...
Amend/fix 2b0bd40b
2021-11-30 21:48:29 +01:00
Rokas Kupstys and ocornut
2b0bd40b99
Backends: Metal: Fixed a crash when clipping rect larger than framebuffer is submitted. ( #4464 )
...
Backends: Normalize clipping rect handling across backends.
+ Squashed amends.
2021-08-24 18:23:13 +02:00
ocornut
838c16533d
Backends: Comments.
2021-05-27 13:59:35 +02:00
thedmd and ocornut
3c72e5142b
Backends: Replace direct access to TextureId with GetTexID() call in ImDrawCmd. ( #3761 )
2021-05-19 18:39:18 +02:00
ocornut
bda12e5fdd
Backends: Rework blending equation to preserve alpha in output buffer accross all backends. ( #2693 , #2764 , #2766 , #2873 , #3447 , #3813 , #3816 )
...
Some of the viewport ideas from #2766 are not in there yet (e.g. Vulkan: setting compositeAlpha based on cap.supportedCompositeAlpha)
2021-02-18 11:38:41 +01:00