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
ocornut
37b18acdf5
Backends: GLFW: improve multi-viewport behavior in tiling WMs (X11). Amends. ( #8884 , #8474 , #8289 )
2025-09-10 20:28:30 +02:00
ikos3k
6b2cdf29bc
Backends: GLFW: improve multi-viewport behavior in tiling WMs (X11) ( #8884 , #8474 , #8289 )
...
- Implement _NET_WM_WINDOW_TYPE_DIALOG for viewports
- Fix override_redirect for proper WM control
- Tested on i3wm and xfce4
2025-09-10 20:04:04 +02:00
ocornut
3dcd17f402
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_dx12.cpp
2025-09-10 19:02:44 +02:00
ocornut
2841c5135d
Backends: OpenGL3: add GL_NEAREST and samplers functions in loader.
2025-09-08 17:24:39 +02:00
ocornut
bf52f4a83c
Backends: OpenGL3: added HasBindSampler storage for readability and consistency.
2025-09-08 17:23:48 +02:00
ocornut
14e076c5bb
Backends: Internal renaming of samplers.
2025-09-08 16:02:23 +02:00
ocornut
ab760992ad
Merge branch 'master' into docking
2025-09-08 13:35:24 +02:00
fgungor
bed08daede
Backends: SDLGPU3: fixed double assignment. ( #8924 )
2025-09-08 11:32:38 +02:00
fdsa
09ebcf1779
Docs: fixed mismatched parentheses & other small changes. ( #8922 )
2025-09-08 11:30:14 +02:00
ocornut
a959617d2e
Backends: Vulkan: rewrite pColorAttachmentFormats deep-copy to avoid issues when calling multiple times. ( #8282 , #8110 )
2025-09-04 18:14:59 +02:00
ocornut
02af06ea5f
Backends: Vulkan: rewrite pColorAttachmentFormats deep-copy to avoid issues when calling multiple times. ( #8282 , #8110 )
2025-09-04 18:14:28 +02:00
Ronan Cailleau
f937a32742
Backends: Vulkan: added ImGui_ImplVulkan_CreateMainPipeline() - amend for docking branch. (8110, 8111, 8053)
2025-09-04 18:06:46 +02:00
ocornut
fdcd351488
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_vulkan.cpp
2025-09-04 18:06:35 +02:00
ocornut
026d47cd35
Backends: Vulkan: store pColorAttachmentFormats deep-copy into an ImVector. ( #8282 , #8110 )
2025-09-04 18:05:58 +02:00
ocornut
c63714822f
Backends: Vulkan: reorder InitInfo fields.
2025-09-04 18:05:15 +02:00
ocornut
26aa81a8b1
Backends: Vulkan: misc amends (makes ImGui_ImplVulkan_MainPipelineCreateInfo::PipelineRenderingCreateInfo consistent with InitInfo). ( #8110 , #8111 , #8053 )
2025-09-04 18:05:15 +02:00
ocornut
1ecc34a0b1
Backends: Vulkan: misc amends (e.g. changelog, coding style). (8110, 8111, 8053)
...
# Conflicts:
# backends/imgui_impl_vulkan.cpp
2025-09-04 18:04:20 +02:00
ocornut
ee03cef14f
Backends: Vulkan: revert using a struct for ImGui_ImplVulkan_CreatePipeline() for now. ( #8110 , #8111 , #8053 )
2025-09-04 18:00:05 +02:00
Ronan Cailleau
e51d93e2f5
Backends: Vulkan: added ImGui_ImplVulkan_CreateMainPipeline(). ( #8110 , #8111 , #8053 )
...
- Added ImGui_ImplVulkan_CreateMainPipeline(...) to explicitly re-create the main window pipeline (when some of its properties are changed).
- Does not implicitly use ImGui_ImplVulkan_InitInfo::PipelineRenderingCreateInfo, but a function parameter.
- The main window pipeline is created only if possible during ImGui_ImplVulkan_Init(...) (if a render pass or rendering info are given), else it should be created with ImGui_ImplVulkan_ReCreateMainPipeline(...)
- ImGui_ImplVulkan_CreatePipeline now takes a struct rather than (too) many parameters (and returns the created pipeline).
2025-09-04 18:00:05 +02:00
ocornut
4d216d4510
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_sdlgpu3.cpp
2025-08-27 18:57:56 +02:00
ocornut
515c0b526f
Backends: SDL_GPU: typo + changelog. ( #8892 )
2025-08-20 18:53:25 +02:00
PTSVU
03e39ca7f5
Backends: SDL_GPU: add swapchain parameters to ImGui_ImplSDLGPU3_InitInfo. ( #8892 )
...
(docking branch commit)
2025-08-20 18:51:50 +02:00
PTSVU
7c6fa8f8f7
Backends: SDL_GPU: add swapchain parameters to ImGui_ImplSDLGPU3_InitInfo. ( #8892 )
...
(master branch commit, values are not used)
2025-08-20 18:43:04 +02:00
ocornut
160e3683ab
Merge branch 'master' into docking
2025-08-13 17:31:15 +02:00
ocornut
02f654cbce
Backends: Allegro5: fixed missing support for ImGuiKey_PrintScreen under Windows.
2025-08-12 20:02:08 +02:00
ocornut
e1baadba84
Backends: Allegro5: Fixed texture format setup. ( #8770 , #8465 )
...
Amend/fix ee8941e .
2025-08-12 15:02:58 +02:00
ocornut
e2a662eed8
Backends: Allegro5: fixed use of obsolete IM_OFFSETOF().
2025-08-12 11:41:11 +02:00
ocornut
e1a93805db
Backends: Allegro5: Added ImGui_ImplAllegro5_SetDisplay().
2025-08-12 11:33:10 +02:00
ocornut
cbf9e3f554
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_sdlgpu3.cpp
# imgui.cpp
2025-08-08 15:51:56 +02:00
ocornut
b6614f6c7c
Backends: SDL_GPU3: removed ImGui_ImplSDLGPU3_Texture struct extraneous indirection now that we only need to store SDL_GPUTexture*. ( #8866 , #8163 , #7998 , #7988 , #8465 )
2025-08-08 15:51:17 +02:00
ocornut
9ee3d731b5
Backends: SDL_GPU3: changed ImTextureID type from SDL_GPUTextureSamplerBinding* to SDL_GPUTexture*. Added ImGui_ImplSDLGPU3_RenderState. ( #8866 , #8163 , #7998 , #7988 )
2025-08-08 15:51:16 +02:00
Michael Böhme
90025a62c7
Backends: Vulkan: Avoid calling vkCmdBindDescriptorSets() when texture has not changed. ( #8666 )
2025-08-04 18:10:00 +09:00
ocornut
34debc733f
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_vulkan.cpp
# imgui.h
2025-07-27 20:35:25 +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
ocornut
fe1cee0837
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_opengl2.cpp
# backends/imgui_impl_opengl3.cpp
# imgui.cpp
2025-07-22 18:38:50 +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
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
c99ac2451f
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_glfw.cpp
# backends/imgui_impl_sdl2.cpp
# backends/imgui_impl_vulkan.cpp
2025-07-08 17:25: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
ee8fd5325a
Backends: OSX: Fixed multi-viewport handling broken in 1.92.0. ( #8644 , #8777 )
2025-07-08 13:38:37 +02:00