Commit Graph

335 Commits

Author SHA1 Message Date
7812e836e4 Backends: Vulkan: Support for dynamic_rendering (#5446, #5037)
Co-authored-by: Caio Oliveira <cmarcelo@gmail.com>
Simplified for master branch.

# Conflicts:
#	backends/imgui_impl_vulkan.cpp
2023-07-04 14:01:27 +02:00
cb5542bce5 Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 2023-06-20 15:30:52 +02:00
884e3fd21f Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) 2023-06-12 11:58:17 +02:00
dec082ff97 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508)
Amend dd9db5e8 + 39f7248d4
2023-06-12 11:45:11 +02:00
b476184574 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 2023-05-30 20:36:07 +02:00
0b57c07c79 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286)
This is mostly a duplicate of SDL2 version with a few changes:
SDL_GetRenderScale -> SDL_RenderGetScale
SDL_ScaleModeLinear -> SDL_SCALEMODE_LINEAR
2023-05-30 20:30:30 +02:00
b709b02e96 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 2023-05-30 20:15:31 +02:00
88e7d773df Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 2023-05-30 20:11:19 +02:00
52e19113f3 Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 2023-05-23 11:43:16 +02:00
39f7248d4a Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375)
Amended given addition of GlProfileIsES3 in dd9db5e
2023-05-09 15:17:18 +02:00
dd9db5e889 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 2023-05-09 15:09:47 +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
5dc6013713 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 2023-05-04 17:06:36 +02:00
a89590b425 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 2023-04-20 10:38:45 +02:00
9308cfdcfb Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 2023-04-19 16:28:15 +02:00
a566ecc58f Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553)
Removed mulit-viewpot stuff in this commit on master, will be re-added separately.
2023-04-19 16:22:53 +02:00
a338b78eb9 Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) 2023-04-19 11:55:40 +02:00
d0836aa89a Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) 2023-04-19 11:55:36 +02:00
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
f304603e13 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 2023-04-17 14:44:56 +02:00
d81f2ae4fb Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188)
Add gamma correction uniform
Group uniforms in a single binding
The second binding was not satisfying the minimum
BufferBindingType::Uniform alignment (256) and since this alignment is
large it is more idiomatic to group uniforms tegether.

Also ensures that the size of the uniform buffer is aligned to 16 bytes.
2023-04-11 16:03:26 +02:00
e67f2f4791 Backends: WebGPU: Align buffer sizes upon creation. (#6188)
Amend from original pr to use a macro.
2023-04-11 15:46:05 +02:00
cbdac1e150 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends.
In theory supporting multiple contexts (untested).
2023-04-11 15:25:21 +02:00
506f7e0074 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 2023-04-11 11:33:50 +02:00
9203883bbe Comments + Metal using SetTexID(0) for consistency. 2023-04-11 11:22:42 +02:00
e92b29ad53 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314)
Also marked "mouse" input in example_apple_metal's UIKit micro-backend as being touch input.

# Conflicts:
#	docs/CHANGELOG.txt
2023-04-11 10:14:53 +02:00
db4c4e3321 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 2023-04-11 10:01:53 +02:00
a7703fe6f7 Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953)
Amend 734c6af187
2023-04-06 19:12:10 +02:00
f070497cbd Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702)
SDL doesn't distinguish Pen yet, but we don't need it as much as TouchScreen which will alter trickling.
2023-04-04 20:19:01 +02:00
8a6911b894 Backends: Fixes zealous warnings (#5760) 2023-03-23 18:18:52 +01:00
7dcf129b3b Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 2023-03-23 13:27:55 +01:00
91577c7f51 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 2023-03-16 11:59:45 +01:00
0d606968d8 Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 2023-03-15 12:25:34 +01:00
e39c2552ac Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) 2023-03-14 16:00:29 +01:00
66b762577c Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) 2023-03-06 11:55:55 +01:00
2496b973f9 Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) 2023-02-23 15:07:15 +01:00
5d74891285 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 2023-02-15 18:11:41 +01:00
b0c1816664 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530)
GL_MAJOR_VERSION and GL_MINOR_VERSION are available on GL 3.0 and above.
So we have to parse GL_VERSION under GL 2.x
Reference https://www.khronos.org/opengl/wiki/OpenGL_Context#Context_information_queries
Regressed since 459de65477
See https://github.com/ocornut/imgui/pull/3530
2023-02-14 15:39:49 +01:00
85395b76b0 CI: Update versions.
Backends: GLFW: Warning fix under Linux.
2023-02-07 20:17:18 +01:00
fac19e1883 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 2023-02-07 19:29:44 +01:00
734c6af187 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 2023-02-07 18:50:12 +01:00
13fbd99491 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146)
More update upcoming in docking branch.
2023-02-07 16:07:53 +01:00
d9bf80f655 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146)
NO OTHER CHANGES. This WILL NOT compile with SDL3.
This intermediate commit designed to make it easier to visualize the meaningful channges commit in the next commit.
2023-02-07 13:32:38 +01:00
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
1b27ac982f Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146)
+ CI: Update Windows CI to update SDL 2.26.3 instead of 2.0.10
2023-02-07 12:04:38 +01:00
a085581057 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 2023-02-03 17:53:53 +01:00
265b88273e Backends: Fixed pragma warning with old GCC. 2023-02-03 16:14:49 +01:00
d0b1aaa076 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096)
Namely, GLFW JS emulation seems to quantize values to a min of -1/+1 which breaks modern OSX/Windows emulating smoothness with stepping wheels (slow steps are sending sub-1.0 values)
+ Massage changelog.
2023-02-03 15:05:39 +01:00
6584de4a78 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 2023-02-02 21:28:28 +01:00
1f1861dae6 Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096)
+ Missing changelog entries.
2023-02-02 19:18:58 +01:00