diff --git a/docs/CHANGELOG.txt b/docs/CHANGELOG.txt
index 5975e9155..2a55e2413 100644
--- a/docs/CHANGELOG.txt
+++ b/docs/CHANGELOG.txt
@@ -68,6 +68,10 @@ Breaking changes:
Other changes:
+- This is the last release we are thoroughly testing with VS2015 + Windows SDK 8.1.
+ Example projects have been transitioned to VS2019 + Windows SDK 10. The library
+ as of today still compiles and works fine with VS2015, but onward we may break
+ support more often.
- Fixed IsItemDeactivatedAfterEdit() signal being broken for Checkbox(),
RadioButton(), Selectable(). Regression from 2025/01/13. (#8370)
- Windows: Fixed an issue where BeginChild() inside a collapsed Begin()
@@ -121,6 +125,8 @@ Other changes:
by showing the filter inside the combo contents. (#718)
- Examples: SDL3: Added comments to clarify setup for users of the unfortunate
SDL_MAIN_USE_CALLBACKS feature. (#8455)
+- Examples: Updated all .vcxproj from VS2015 to VS2019 (toolset v140 to v142),
+ and from Windows SDK 8.1 to Windows SDK 10 ("latest" setting).
- IO: Added ImGuiKey_Oem102 to ImGuiKey enum. (#7136, #7201, #7206, #7306, #8468)
- Backends: reworked key handlers to use/prioritize untranslated scancodes instead of
translated keycodes when dealing with OEM keys which are too difficult to find a reliable
diff --git a/examples/example_allegro5/example_allegro5.vcxproj b/examples/example_allegro5/example_allegro5.vcxproj
index 02f6a4741..220095e78 100644
--- a/examples/example_allegro5/example_allegro5.vcxproj
+++ b/examples/example_allegro5/example_allegro5.vcxproj
@@ -21,34 +21,34 @@
{73F235B5-7D31-4FC6-8682-DDC5A097B9C1}
example_allegro5
- 8.1
+ 10.0
Application
true
MultiByte
- v140
+ v142
Application
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
diff --git a/examples/example_glfw_opengl2/example_glfw_opengl2.vcxproj b/examples/example_glfw_opengl2/example_glfw_opengl2.vcxproj
index 2aa25506e..6d373337c 100644
--- a/examples/example_glfw_opengl2/example_glfw_opengl2.vcxproj
+++ b/examples/example_glfw_opengl2/example_glfw_opengl2.vcxproj
@@ -21,34 +21,34 @@
{9CDA7840-B7A5-496D-A527-E95571496D18}
example_glfw_opengl2
- 8.1
+ 10.0
Application
true
MultiByte
- v140
+ v142
Application
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
diff --git a/examples/example_glfw_opengl3/example_glfw_opengl3.vcxproj b/examples/example_glfw_opengl3/example_glfw_opengl3.vcxproj
index 4bd503afe..400007757 100644
--- a/examples/example_glfw_opengl3/example_glfw_opengl3.vcxproj
+++ b/examples/example_glfw_opengl3/example_glfw_opengl3.vcxproj
@@ -21,34 +21,34 @@
{4a1fb5ea-22f5-42a8-ab92-1d2df5d47fb9}
example_glfw_opengl3
- 8.1
+ 10.0
Application
true
MultiByte
- v140
+ v142
Application
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
diff --git a/examples/example_glfw_vulkan/example_glfw_vulkan.vcxproj b/examples/example_glfw_vulkan/example_glfw_vulkan.vcxproj
index a81d328df..d2ff07e9b 100644
--- a/examples/example_glfw_vulkan/example_glfw_vulkan.vcxproj
+++ b/examples/example_glfw_vulkan/example_glfw_vulkan.vcxproj
@@ -21,34 +21,34 @@
{57E2DF5A-6FC8-45BB-99DD-91A18C646E80}
example_glfw_vulkan
- 8.1
+ 10.0
Application
true
MultiByte
- v140
+ v142
Application
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
diff --git a/examples/example_glut_opengl2/example_glut_opengl2.vcxproj b/examples/example_glut_opengl2/example_glut_opengl2.vcxproj
index c56452b26..5c773c818 100644
--- a/examples/example_glut_opengl2/example_glut_opengl2.vcxproj
+++ b/examples/example_glut_opengl2/example_glut_opengl2.vcxproj
@@ -21,34 +21,34 @@
{F90D0333-5FB1-440D-918D-DD39A1B5187E}
example_glut_opengl2
- 8.1
+ 10.0
Application
true
MultiByte
- v140
+ v142
Application
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
diff --git a/examples/example_sdl2_directx11/example_sdl2_directx11.vcxproj b/examples/example_sdl2_directx11/example_sdl2_directx11.vcxproj
index c23800c9e..5a8daf1bd 100644
--- a/examples/example_sdl2_directx11/example_sdl2_directx11.vcxproj
+++ b/examples/example_sdl2_directx11/example_sdl2_directx11.vcxproj
@@ -21,7 +21,7 @@
{9E1987E3-1F19-45CA-B9C9-D31E791836D8}
example_sdl2_directx11
- 8.1
+ 10.0
example_sdl2_directx11
@@ -29,27 +29,27 @@
Application
true
MultiByte
- v140
+ v142
Application
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
diff --git a/examples/example_sdl2_opengl2/example_sdl2_opengl2.vcxproj b/examples/example_sdl2_opengl2/example_sdl2_opengl2.vcxproj
index 036463f96..b033c322f 100644
--- a/examples/example_sdl2_opengl2/example_sdl2_opengl2.vcxproj
+++ b/examples/example_sdl2_opengl2/example_sdl2_opengl2.vcxproj
@@ -21,34 +21,34 @@
{2AE17FDE-F7F3-4CAC-ADAB-0710EDA4F741}
example_sdl2_opengl2
- 8.1
+ 10.0
Application
true
MultiByte
- v140
+ v142
Application
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
diff --git a/examples/example_sdl2_opengl3/example_sdl2_opengl3.vcxproj b/examples/example_sdl2_opengl3/example_sdl2_opengl3.vcxproj
index 6a81c6770..faf5874b3 100644
--- a/examples/example_sdl2_opengl3/example_sdl2_opengl3.vcxproj
+++ b/examples/example_sdl2_opengl3/example_sdl2_opengl3.vcxproj
@@ -21,34 +21,34 @@
{BBAEB705-1669-40F3-8567-04CF6A991F4C}
example_sdl2_opengl3
- 8.1
+ 10.0
Application
true
MultiByte
- v140
+ v142
Application
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
diff --git a/examples/example_sdl2_sdlrenderer2/example_sdl2_sdlrenderer2.vcxproj b/examples/example_sdl2_sdlrenderer2/example_sdl2_sdlrenderer2.vcxproj
index cf2c890bb..7d3cd4eb5 100644
--- a/examples/example_sdl2_sdlrenderer2/example_sdl2_sdlrenderer2.vcxproj
+++ b/examples/example_sdl2_sdlrenderer2/example_sdl2_sdlrenderer2.vcxproj
@@ -21,7 +21,7 @@
{0C0B2BEA-311F-473C-9652-87923EF639E3}
example_sdl2_sdlrenderer2
- 8.1
+ 10.0
example_sdl2_sdlrenderer2
@@ -29,27 +29,27 @@
Application
true
MultiByte
- v140
+ v142
Application
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
@@ -184,4 +184,4 @@
-
+
\ No newline at end of file
diff --git a/examples/example_sdl2_vulkan/example_sdl2_vulkan.vcxproj b/examples/example_sdl2_vulkan/example_sdl2_vulkan.vcxproj
index bcf99a46c..07a60ac72 100644
--- a/examples/example_sdl2_vulkan/example_sdl2_vulkan.vcxproj
+++ b/examples/example_sdl2_vulkan/example_sdl2_vulkan.vcxproj
@@ -21,34 +21,34 @@
{BAE3D0B5-9695-4EB1-AD0F-75890EB4A3B3}
example_sdl2_vulkan
- 8.1
+ 10.0
Application
true
MultiByte
- v140
+ v142
Application
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
@@ -187,4 +187,4 @@
-
+
\ No newline at end of file
diff --git a/examples/example_sdl3_opengl3/example_sdl3_opengl3.vcxproj b/examples/example_sdl3_opengl3/example_sdl3_opengl3.vcxproj
index 051f87d76..2f14fdf80 100644
--- a/examples/example_sdl3_opengl3/example_sdl3_opengl3.vcxproj
+++ b/examples/example_sdl3_opengl3/example_sdl3_opengl3.vcxproj
@@ -21,34 +21,34 @@
{84AAA301-84FE-428B-9E3E-817BC8123C0C}
example_sdl3_opengl3
- 8.1
+ 10.0
Application
true
MultiByte
- v140
+ v142
Application
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
diff --git a/examples/example_sdl3_sdlgpu3/example_sdl3_sdlgpu3.vcxproj b/examples/example_sdl3_sdlgpu3/example_sdl3_sdlgpu3.vcxproj
index 3d034f52c..01a38f336 100644
--- a/examples/example_sdl3_sdlgpu3/example_sdl3_sdlgpu3.vcxproj
+++ b/examples/example_sdl3_sdlgpu3/example_sdl3_sdlgpu3.vcxproj
@@ -21,34 +21,34 @@
{c22cb6f8-39a5-4dda-90ed-4aca4e81e1e5}
example_sdl3_sdlgpu3
- 8.1
+ 10.0
Application
true
MultiByte
- v140
+ v142
Application
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
@@ -186,4 +186,4 @@
-
+
\ No newline at end of file
diff --git a/examples/example_sdl3_sdlrenderer3/example_sdl3_sdlrenderer3.vcxproj b/examples/example_sdl3_sdlrenderer3/example_sdl3_sdlrenderer3.vcxproj
index 8b71324cc..4793e537c 100644
--- a/examples/example_sdl3_sdlrenderer3/example_sdl3_sdlrenderer3.vcxproj
+++ b/examples/example_sdl3_sdlrenderer3/example_sdl3_sdlrenderer3.vcxproj
@@ -21,34 +21,34 @@
{C0290D21-3AD2-4A35-ABBC-A2F5F48326DA}
example_sdl3_opengl3
- 8.1
+ 10.0
Application
true
MultiByte
- v140
+ v142
Application
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
diff --git a/examples/example_sdl3_vulkan/example_sdl3_vulkan.vcxproj b/examples/example_sdl3_vulkan/example_sdl3_vulkan.vcxproj
index d48e4aff3..294377784 100644
--- a/examples/example_sdl3_vulkan/example_sdl3_vulkan.vcxproj
+++ b/examples/example_sdl3_vulkan/example_sdl3_vulkan.vcxproj
@@ -21,34 +21,34 @@
{663A7E89-1E42-4222-921C-177F5B5910DF}
example_sdl3_vulkan
- 8.1
+ 10.0
Application
true
MultiByte
- v140
+ v142
Application
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
Application
false
true
MultiByte
- v140
+ v142
diff --git a/examples/example_win32_directx10/example_win32_directx10.vcxproj b/examples/example_win32_directx10/example_win32_directx10.vcxproj
index d11aed883..8fe6d10b5 100644
--- a/examples/example_win32_directx10/example_win32_directx10.vcxproj
+++ b/examples/example_win32_directx10/example_win32_directx10.vcxproj
@@ -21,34 +21,34 @@
{345A953E-A004-4648-B442-DC5F9F11068C}
example_win32_directx10
- 8.1
+ 10.0
Application
true
Unicode
- v140
+ v142
Application
true
Unicode
- v140
+ v142
Application
false
true
Unicode
- v140
+ v142
Application
false
true
Unicode
- v140
+ v142
diff --git a/examples/example_win32_directx11/example_win32_directx11.vcxproj b/examples/example_win32_directx11/example_win32_directx11.vcxproj
index bace6a2c8..79cdbaea7 100644
--- a/examples/example_win32_directx11/example_win32_directx11.vcxproj
+++ b/examples/example_win32_directx11/example_win32_directx11.vcxproj
@@ -21,33 +21,34 @@
{9F316E83-5AE5-4939-A723-305A94F48005}
example_win32_directx11
+ 10.0
Application
true
Unicode
- v140
+ v142
Application
true
Unicode
- v140
+ v142
Application
false
true
Unicode
- v140
+ v142
Application
false
true
Unicode
- v140
+ v142
diff --git a/examples/example_win32_directx12/example_win32_directx12.vcxproj b/examples/example_win32_directx12/example_win32_directx12.vcxproj
index bb98c4141..c4b81e76f 100644
--- a/examples/example_win32_directx12/example_win32_directx12.vcxproj
+++ b/examples/example_win32_directx12/example_win32_directx12.vcxproj
@@ -21,34 +21,34 @@
{b4cf9797-519d-4afe-a8f4-5141a6b521d3}
example_win32_directx12
- 10.0.20348.0
+ 10.0
Application
true
Unicode
- v140
+ v142
Application
true
Unicode
- v140
+ v142
Application
false
true
Unicode
- v140
+ v142
Application
false
true
Unicode
- v140
+ v142
diff --git a/examples/example_win32_directx9/example_win32_directx9.vcxproj b/examples/example_win32_directx9/example_win32_directx9.vcxproj
index 8c3f99589..346ec1efc 100644
--- a/examples/example_win32_directx9/example_win32_directx9.vcxproj
+++ b/examples/example_win32_directx9/example_win32_directx9.vcxproj
@@ -21,34 +21,34 @@
{4165A294-21F2-44CA-9B38-E3F935ABADF5}
example_win32_directx9
- 8.1
+ 10.0
Application
true
Unicode
- v140
+ v142
Application
true
Unicode
- v140
+ v142
Application
false
true
Unicode
- v140
+ v142
Application
false
true
Unicode
- v140
+ v142
diff --git a/examples/example_win32_opengl3/example_win32_opengl3.vcxproj b/examples/example_win32_opengl3/example_win32_opengl3.vcxproj
index 98fc38fd3..9848d62c6 100644
--- a/examples/example_win32_opengl3/example_win32_opengl3.vcxproj
+++ b/examples/example_win32_opengl3/example_win32_opengl3.vcxproj
@@ -21,34 +21,34 @@
{C624E5FF-D4FE-4D35-9164-B8A91864F98E}
example_win32_opengl2
- 8.1
+ 10.0
Application
true
Unicode
- v140
+ v142
Application
true
Unicode
- v140
+ v142
Application
false
true
Unicode
- v140
+ v142
Application
false
true
Unicode
- v140
+ v142
diff --git a/examples/example_win32_vulkan/example_win32_vulkan.vcxproj b/examples/example_win32_vulkan/example_win32_vulkan.vcxproj
index dab8afd4e..604f8a817 100644
--- a/examples/example_win32_vulkan/example_win32_vulkan.vcxproj
+++ b/examples/example_win32_vulkan/example_win32_vulkan.vcxproj
@@ -21,33 +21,34 @@
{0A1E32DF-E0F4-4CCE-B3DC-9644C503BD88}
example_win32_directx11
+ 10.0
Application
true
Unicode
- v140
+ v142
Application
true
Unicode
- v140
+ v142
Application
false
true
Unicode
- v140
+ v142
Application
false
true
Unicode
- v140
+ v142