ocornut
f9571ce4d3
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_dx12.cpp
# docs/CHANGELOG.txt
# imgui.cpp
2025-10-13 15:13:06 +02:00
Rémy Tassoux
9be4f150ef
Backends: DirectX12: Reuse texture upload buffer and grow it only when necessary. ( #9002 )
2025-10-13 13:19:37 +02:00
Rémy Tassoux
8d9c903919
Backends: DirectX12: remove unused members. ( #8998 )
...
Unused in docking branch. Leftover from a merge.
2025-10-13 13:10:01 +02:00
ocornut
8de97d14d8
Backends: DX10, DX11: avoid ImGui_ImplXXXX_SwapBuffers() handlers for secondary viewports crashing if SwapChain could not be created.
...
It's not really clear when that would fail but someone privately reported, and since we allow failure in ImGui_ImplDX11_CreateWindow() it makes sense to allow it here.
2025-10-10 18:31:20 +02:00
ocornut
5af650fc6d
Examples: GLFW+WGPU: various tweaks to reduce diff with #8381
2025-10-09 19:24:17 +02:00
ocornut
a0a6639fb5
Viewports: rename ImGuiBackendFlags_HasParentViewportId->ImGuiBackendFlags_HasParentViewport. ( #8948 )
...
Introduced yesterday by 50a8bb2 .
2025-10-02 16:20:24 +02:00
ocornut
0f7f6284d7
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
2025-10-01 18:41:16 +02: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
9809b0b061
Textures: Fixed not updating ImTextureData's RefCount when destroying a context using a shared ImFontAtlas. ( #8975 )
2025-10-01 14:59:53 +02:00
ocornut
3563f1e270
Viewports: store ImGuiViewport* ParentViewport pointer as well. Backends: SDL3, Win32: use this pointer to reduce lookups. ( #8948 )
2025-09-30 18:42:57 +02:00
ocornut
50a8bb2711
Viewports: added ImGuiBackendFlags_HasParentViewportId backend flag. ( #8948 )
2025-09-30 17:38:06 +02:00
ocornut
b4514ce64a
Backends: DirectX12: enable swapchain tearing if available. ( #8965 )
2025-09-29 18:36:35 +02:00
ocornut
3dafd9e898
Backends: DirectX12: enable swapchain tearing if available. ( #8965 )
2025-09-29 18:36:13 +02:00
ocornut
bd9a37bc60
Backends: DX12: Use one fence instead of one by viewport. (docking) ( #8961 )
2025-09-29 16:27:22 +02:00
Rémy Tassoux
778aadca65
Backends: DX12: Rework synchronization logic. (docking) ( #8961 )
2025-09-29 16:27:22 +02:00
ocornut
1aa91ac426
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_dx12.cpp
2025-09-29 16:16:16 +02:00
Rémy Tassoux
5ce903af6e
Backends: DX12: Use one fence instead of one by viewport. (master) ( #8961 )
2025-09-29 16:15:46 +02:00
ocornut
3ff195f702
Backends: DX12: let bd->FrameIndex start at 0 to match docking. ( #8961 )
2025-09-29 16:12:33 +02:00
ocornut
e459e5bf0a
Backends: GLFW: fixed build on platform that are neither Windows, macOS or known Unixes. ( #8969 , #8920 , #8921 )
...
Fix 10d0162 .
x
2025-09-29 16:12:33 +02:00
Rémy Tassoux
217bc445ff
Backends: DirectX12: reuse a command list and allocator for texture uploads. ( #8963 , #8465 )
2025-09-29 15:45:17 +02:00
ocornut
1f020e526a
Backends: Vulkan: ImGui_ImplVulkan_CreatePipeline() for secondary viewport always use the RenderPass created by the ImGui_ImplVulkanH_CreateOrResizeWindow(). ( #8946 , #8110 )
2025-09-29 15:28:38 +02:00
ocornut
bad3c14ff6
Backends: Vulkan: SwapChainImageUsage assume VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT which is added automatically. ( #8946 , #8110 , #8111 , #8686 )
...
Amend e4e3c2c .
2025-09-29 14:57:03 +02:00
ocornut
e4e3c2cc23
Backends: Vulkan: amends for docking. Add PipelineInfoForViewports and SwapChainImageUsage. ( #8946 , #8110 , #8111 , #8686 )
2025-09-26 18:46:17 +02:00
ocornut
f3e85310e7
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_vulkan.cpp
# backends/imgui_impl_vulkan.h
# docs/CHANGELOG.txt
2025-09-26 18:33:38 +02:00
ocornut
3470e6112b
(Breaking) Backends: Vulkan: moved fields in ImGui_ImplVulkan_InitInfo: RenderPass, Subpass, MSAASamples, PipelineRenderingCreateInfo. ( #8946 , #8110 , #8111 , #8686 )
2025-09-26 18:23:51 +02:00
ocornut
e312b99296
(Breaking) Backends: Vulkan: renamed ImGui_ImplVulkan_MainPipelineCreateInfo to ImGui_ImplVulkan_PipelineInfo. ( #8110 , #8111 )
2025-09-26 18:18:33 +02:00
ocornut
cc0a6690bf
Backends: Vulkan: minor internal renames/tweaks to reduce further patches. ( #8946 , #8110 , #8111 , #8686 )
2025-09-26 18:12:47 +02:00
ocornut
5fe962216a
(Breaking) Backends: Vulkan: added 'VkImageUsageFlags image_usage' parameter to ImGui_ImplVulkanH_CreateOrResizeWindow(). ( #8946 , #8110 , #8111 , #8686 )
...
Default to VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT.
2025-09-26 18:12:47 +02:00
johan0A
01686c6294
Backends: Vulkan: added a way to specify custom vertex/fragment shaders. ( #8585 , #8271 )
2025-09-26 15:44:02 +02:00
David Maas
15c88c4941
Backends: DX10, DX11, DX12: Disabled DXGI's Alt+Enter default behavior on secondary viewports. ( #4350 )
...
Removed use of DXGI_MWA_NO_PRINT_SCREEN from original PR.
2025-09-25 17:30:32 +02:00
ocornut
940627d008
Backends: SDL2: Fixed build for Emscripten and SDL_HAS_CAPTURE_AND_GLOBAL_MOUSE=0 platforms.
...
Amend e06b5df .
2025-09-24 15:29:00 +02:00
ocornut
719ea9c228
Comments
2025-09-24 15:00:24 +02:00
ocornut
e285ecca09
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_dx10.cpp
# backends/imgui_impl_dx11.cpp
# backends/imgui_impl_dx12.cpp
# backends/imgui_impl_dx9.cpp
# backends/imgui_impl_glfw.cpp
# backends/imgui_impl_metal.mm
# backends/imgui_impl_opengl2.cpp
# backends/imgui_impl_opengl3.cpp
# backends/imgui_impl_osx.mm
# backends/imgui_impl_sdl2.cpp
# backends/imgui_impl_sdl3.cpp
# backends/imgui_impl_sdlgpu3.cpp
# backends/imgui_impl_vulkan.cpp
# backends/imgui_impl_win32.cpp
# docs/CHANGELOG.txt
# imgui.cpp
# imgui.h
2025-09-24 14:54:46 +02:00
ocornut
f61a7ef222
Backends: SDL2,SDL3: avoid using the SDL_GetGlobalMouseState() path when one of our window is hovered. Fix mouse coordinate issue in fullscreen apps with macOS notch + better X11 perfs. ( #7919 , #7786 )
2025-09-24 14:48:33 +02:00
ocornut
e06b5dfe12
Backends: SDL2,SDL3: Shallow tweaks.
...
Toward fallback focused mouse handler to be a closer match docking version.
2025-09-24 14:41:10 +02:00
ocornut
5f6eaa5278
Backends: Win32: minor optimization not submitting gamepad input if packet number has not changed. ( #8556 )
...
To be honest I don't believe this is valuable as an optimization, but it makes debug stepping a little nicer.
2025-09-23 16:30:07 +02:00
Olivier Gerard
e639ff392c
Backends: Vulkna: added ImGui_ImplVulkan_GetWindowDataFromViewport() accessor/helper. ( #8946 , #8940 )
2025-09-22 21:46:43 +02:00
ocornut
301e652376
Backends: OpenGL3: fixed GL loader to work on Haiku OS which does not support. ( #8952 )
2025-09-22 16:04:59 +02:00
ocornut
a1c0836bec
Viewports: changed default value of io.ConfigViewportsNoDefaultParent to true. ( #8948 , #3152 , #2871 )
2025-09-22 15:56:10 +02:00
ocornut
aa9476a38a
IO: added ImGuiPlatformIO::ClearPlatformHandlers(), ClearRendererHandlers(). Backends: call those on Shutdown(). ( #8945 , #2769 )
...
# Conflicts:
# backends/imgui_impl_dx10.cpp
# backends/imgui_impl_dx11.cpp
# backends/imgui_impl_dx12.cpp
# backends/imgui_impl_dx9.cpp
# backends/imgui_impl_glfw.cpp
# backends/imgui_impl_metal.mm
# backends/imgui_impl_opengl2.cpp
# backends/imgui_impl_opengl3.cpp
# backends/imgui_impl_osx.mm
# backends/imgui_impl_sdl2.cpp
# backends/imgui_impl_sdl3.cpp
# backends/imgui_impl_sdlgpu3.cpp
# backends/imgui_impl_vulkan.cpp
# backends/imgui_impl_win32.cpp
# docs/CHANGELOG.txt
# imgui.h
2025-09-18 17:02:44 +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
3dd51651e3
Backends: DX12: rename internal functions to match other backends.
2025-09-18 16:51:40 +02:00
ocornut
34bff4672c
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_glfw.cpp
# backends/imgui_impl_sdl2.cpp
# backends/imgui_impl_sdl3.cpp
# docs/CHANGELOG.txt
# examples/example_glfw_metal/main.mm
# examples/example_glfw_opengl2/main.cpp
# examples/example_glfw_vulkan/main.cpp
# examples/example_win32_opengl3/main.cpp
# examples/example_win32_vulkan/main.cpp
# imgui.h
2025-09-17 18:48:39 +02:00
ocornut
6274ca4266
Backends: GLFW: fixed build for Emscripten which doesn't expose glfw3native.h.
...
Amend 10d0162
2025-09-15 19:28:01 +02:00
ocornut
d92c8c6aff
Backends: SDL2: Content Scales are always reported as 1.0 on Wayland. ( #8921 )
...
SDL_GetDisplayDPI() seems generally broken on X11/Wayland, but our logs shows that on Wayland we get both a content scale from SDL_GetDisplayDPI() and a framebuffer scale.
2025-09-15 19:20:56 +02:00
ocornut
72c00f39c1
Backends: GLFW: fix ImGui_ImplGlfw_IsWayland() amend broken 10d0162. ( #8921 , #8920 )
...
Accidentally broke this while shuffling code...
2025-09-15 19:16:05 +02:00
ocornut
2675b7ca26
Backends: GLFW: Content Scales always reported as 1.0 on Wayland, FramebufferScale always reported as 1.0 on X11. ( #8920 , #8921 )
2025-09-15 18:55:09 +02:00
ocornut
10d0162378
Backends: GLFW: added ImGui_ImplGlfw_IsWayland(). ( #8921 , #8920 )
...
(technically presently untested but we've researched this)
2025-09-15 18:40:22 +02:00
ocornut
22a6a83c54
Backends: SDL3: use SDL_GetWindowDisplayScale() on Mac to output DisplayFrameBufferScale. The function is more reliable during resolution changes e.g. going fullscreen. ( #8703 , #4414 )
2025-09-15 15:16:42 +02:00
ocornut
a4cd45f44c
Backends: GLFW: fixed imgui_impl_glfw.cpp being affected by X headers '#define Status' leak since 6b2cdf2. ( #8884 )
2025-09-12 19:51:31 +02:00