Commit Graph

660 Commits

Author SHA1 Message Date
ocornut 4e7c05504a Renamed IM_ARRAYSIZE() -> IM_COUNTOF(). Kept legacy name for now.
build / Build - Windows (push) Has been cancelled
build / Build - Linux (push) Has been cancelled
build / Build - MacOS (push) Has been cancelled
build / Build - iOS (push) Has been cancelled
build / Build - Emscripten (push) Has been cancelled
build / Build - Android (push) Has been cancelled
build / Test - Windows (push) Has been cancelled
build / Test - Linux (push) Has been cancelled
build / Test - MacOS (push) Has been cancelled
2025-12-17 14:30:01 +01:00
ocornut bd6f48fe20 Backends: OpenGL3: Fixed embedded loader multiple init/shutdown cycles broken on some platforms. (#8792, #9112)
build / Build - Windows (push) Has been cancelled
build / Build - Linux (push) Has been cancelled
build / Build - MacOS (push) Has been cancelled
build / Build - iOS (push) Has been cancelled
build / Build - Emscripten (push) Has been cancelled
build / Build - Android (push) Has been cancelled
build / Test - Windows (push) Has been cancelled
build / Test - Linux (push) Has been cancelled
build / Test - MacOS (push) Has been cancelled
2025-12-11 18:28:23 +01:00
ocornut a07b2828ce Backends: GLFW: add IMGUI_IMPL_GLFW_DISABLE_X11 / IMGUI_IMPL_GLFW_DISABLE_WAYLAND. (#9109, #9116)
cc #8884, #8474, #8289
2025-12-10 18:57:02 +01:00
ocornut 9a4fd69f6d Backends: GLFW: avoid repeated glfwSetCursor()/glfwSetInputMode() calls when unnecessary. 2025-12-10 18:35:22 +01:00
ulhc d27dce58cd Backends: Win32: handle WM_IME_CHAR/WM_IME_COMPOSITION messages to support Unicode inputs on MBCS Windows. (#9099, #3653, #5961)
build / Build - Windows (push) Has been cancelled
build / Build - Linux (push) Has been cancelled
build / Build - MacOS (push) Has been cancelled
build / Build - iOS (push) Has been cancelled
build / Build - Emscripten (push) Has been cancelled
build / Build - Android (push) Has been cancelled
build / Test - Windows (push) Has been cancelled
build / Test - Linux (push) Has been cancelled
build / Test - MacOS (push) Has been cancelled
2025-12-03 13:34:57 +01:00
ocornut 87b193399e Backends: Win32: change param to MultiByteToWideChar() to be consistent (should be no-op?).
Amend 0a7054c7e4 (#5725, #1807, #471, #2815, #1060 + #9099, #3653, #5961)
2025-12-03 13:30:59 +01:00
ocornut 75db81cf08 Backends: SDL_GPU3: select between metallib and MSL shaders based on availability. (#9076)
Amend fd887f5
2025-11-26 15:05:05 +01:00
Leon Lysak fd887f5241 Backends: SDL_GPU3: use MSL on macOS and MetalLib on iOS to fix shader compatibility. (#9076)
Edit original PR to keep metallib shader binary since next commit is going to use them.
2025-11-26 15:01:03 +01:00
ocornut 3a45bae9dc Backends: Vulkan: helper for creating a swapchain selects VkSwapchainCreateInfoKHR's compositeAlpha based on cap.supportedCompositeAlpha. (#8784)
build / Build - Windows (push) Has been cancelled
build / Build - Linux (push) Has been cancelled
build / Build - MacOS (push) Has been cancelled
build / Build - iOS (push) Has been cancelled
build / Build - Emscripten (push) Has been cancelled
build / Build - Android (push) Has been cancelled
build / Test - Windows (push) Has been cancelled
build / Test - Linux (push) Has been cancelled
build / Test - MacOS (push) Has been cancelled
scheduled / scheduled (push) Has been cancelled
2025-11-24 18:11:23 +01:00
ocornut 6ae32c696a Backends: fixed misc zealous Clang warnings. 2025-11-18 16:34:35 +01:00
ocornut cfb48969af Examples: CI: backtrack and make example_null embed backend: simpler for all sorts of quick build scripts. 2025-11-17 16:38:07 +01:00
ocornut 0cf5b93a0a CI, Backends: fixes for example_null building. Add consistent IMGUI_IMPL_API in backend. 2025-11-17 16:18:12 +01:00
ocornut b885382a63 Backends: Null: added imgui_impl_null platform/renderer backend. 2025-11-17 15:28:03 +01:00
ocornut 9e15ebb402 Backends: GLFW: fixed last ImGui_ImplGlfw_Shutdown() call not immediately clearing the context map. (#9075, #8676, #8239, #8069)
Amend/fix f633a6058
2025-11-17 13:38:17 +01:00
ocornut 86daa8930e Backends, Examples: WebGPU: simplified ifndef (#8381)
build / Windows (push) Has been cancelled
build / Linux (push) Has been cancelled
build / MacOS (push) Has been cancelled
build / iOS (push) Has been cancelled
build / Emscripten (push) Has been cancelled
build / Android (push) Has been cancelled
scheduled / scheduled (push) Has been cancelled
2025-11-07 13:24:16 +01:00
Clownacy 59db6ceeb1 Backends: GLFW: lower minimum requirement from GLFW 3.1 to GLFW 3.0. (#9055) 2025-11-06 15:25:11 +01:00
ocornut e674f57bb6 Backends: SDL3: Fixed an issue with missing characters events when an already active text field changes viewports. (#9054)
build / Windows (push) Has been cancelled
build / Linux (push) Has been cancelled
build / MacOS (push) Has been cancelled
build / iOS (push) Has been cancelled
build / Emscripten (push) Has been cancelled
build / Android (push) Has been cancelled
Always use SDL_GetKeyboardFocus().
(tried to defer ImGui_ImplSDL3_PlatformSetImeData() processing for when OS-window is available but it didn't actually work because we don't systemetically OS-focus new viewports and SDL3 only sent characters to keyboard focused window.)
2025-11-05 19:15:47 +01:00
BrutPitt 3cc8b470a6 Backends, Examples: WebGPU: header optimization. Added the code for using Dawn “pre-built” library. (#8381) 2025-11-03 19:05:28 +01:00
BrutPitt c5b2a848fa Backends: WebGPU: added smaller and debug helpers. (#8381, #8831, #8567, #8191, #7435) 2025-10-31 19:10:23 +01:00
BrutPitt d0e3b1d4e2 Backends: WebGPU: added ImGui_ImplWGPU_CreateWGPUSurfaceHelper(). (#8381, #8831, #8567, #8191, #7435) 2025-10-31 19:10:23 +01:00
ocornut 130c3e6b75 Backends: Vulkan: tweak comments. (#9041) 2025-10-30 16:04:21 +01:00
ocornut 0ba9fedf1a Win32: Revert 1.92.4 change of comparing dwPacketNumber. (#8556) 2025-10-29 16:29:47 +01:00
ocornut c72d0b2cbb Backends: Vulkan: SwapChainImageUsage assume VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT which is added automatically. (#8946, #8110, #8111, #8686)
build / Windows (push) Has been cancelled
build / Linux (push) Has been cancelled
build / MacOS (push) Has been cancelled
build / iOS (push) Has been cancelled
build / Emscripten (push) Has been cancelled
build / Android (push) Has been cancelled
scheduled / scheduled (push) Has been cancelled
Merge bad3c14 which was accidentally only pushed to docking. No important side effect.
2025-10-23 21:04:48 +02:00
ocornut bdb8243602 Backends: SDl3: Fixed Platform_OpenInShellFn() return value. (#9027) 2025-10-22 13:33:36 +02:00
ocornut b46f099a3f Backends: GLFW: fixed building on Linux platforms where Wayland headers are not available. (#9024, #8969, #8921, #8920)
scheduled / scheduled (push) Has been cancelled
build / Windows (push) Has been cancelled
build / Linux (push) Has been cancelled
build / MacOS (push) Has been cancelled
build / iOS (push) Has been cancelled
build / Emscripten (push) Has been cancelled
build / Android (push) Has been cancelled
2025-10-20 23:57:09 +02:00
mwlasiuk 065f9e0269 Backends: Vulkan: added IMGUI_IMPL_VULKAN_VOLK_FILENAME. (#9008, #7722, #6582, #4854)
build / Windows (push) Has been cancelled
build / Linux (push) Has been cancelled
build / MacOS (push) Has been cancelled
build / iOS (push) Has been cancelled
build / Emscripten (push) Has been cancelled
build / Android (push) Has been cancelled
scheduled / scheduled (push) Has been cancelled
2025-10-16 20:36:30 +02:00
BrutPitt 3dc511c71d Backends: WebGPU: update to compile with Dawn and Emscripten's 4.0.10+ '--use-port=emdawnwebgpu' ports. (#8381, #8898) 2025-10-16 18:16:28 +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
ocornut 5af650fc6d Examples: GLFW+WGPU: various tweaks to reduce diff with #8381
build / Windows (push) Has been cancelled
build / Linux (push) Has been cancelled
build / MacOS (push) Has been cancelled
build / iOS (push) Has been cancelled
build / Emscripten (push) Has been cancelled
build / Android (push) Has been cancelled
scheduled / scheduled (push) Has been cancelled
2025-10-09 19:24:17 +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)
build / Windows (push) Has been cancelled
build / Linux (push) Has been cancelled
build / MacOS (push) Has been cancelled
build / iOS (push) Has been cancelled
build / Emscripten (push) Has been cancelled
build / Android (push) Has been cancelled
2025-10-01 14:59:53 +02:00
ocornut 3dafd9e898 Backends: DirectX12: enable swapchain tearing if available. (#8965)
build / Windows (push) Has been cancelled
build / Linux (push) Has been cancelled
build / MacOS (push) Has been cancelled
build / iOS (push) Has been cancelled
build / Emscripten (push) Has been cancelled
build / Android (push) Has been cancelled
scheduled / scheduled (push) Has been cancelled
2025-09-29 18:36:13 +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 3470e6112b (Breaking) Backends: Vulkan: moved fields in ImGui_ImplVulkan_InitInfo: RenderPass, Subpass, MSAASamples, PipelineRenderingCreateInfo. (#8946, #8110, #8111, #8686)
build / Windows (push) Has been cancelled
build / Linux (push) Has been cancelled
build / MacOS (push) Has been cancelled
build / iOS (push) Has been cancelled
build / Emscripten (push) Has been cancelled
build / Android (push) Has been cancelled
scheduled / scheduled (push) Has been cancelled
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)
build / Windows (push) Has been cancelled
build / Linux (push) Has been cancelled
build / MacOS (push) Has been cancelled
build / iOS (push) Has been cancelled
build / Emscripten (push) Has been cancelled
build / Android (push) Has been cancelled
2025-09-26 15:44:02 +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 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
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 d4f722d5b2 IO: added ImGuiPlatformIO::ClearPlatformHandlers(), ClearRendererHandlers(). Backends: call those on Shutdown(). (#8945, #2769) 2025-09-18 16:58:50 +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