Commit Graph

1181 Commits

Author SHA1 Message Date
lukaasm
0948cfc19e InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) 2023-04-18 11:35:12 +02:00
lukaasm
e49d31a1c9 Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) 2023-04-18 11:25:07 +02:00
Gereon V
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
Gereon V
f304603e13 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 2023-04-17 14:44:56 +02:00
ocornut
064153fca4 Version 1.89.6 WIP 2023-04-17 14:40:00 +02:00
ocornut
1ebb913827 Version 1.89.5 2023-04-13 16:17:49 +02:00
ocornut
6324280432 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101)
Enable VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME, VK_KHR_PORTABILITY_ENUMERATION_EXTENSION_NAME, VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR
2023-04-13 15:48:19 +02:00
ocornut
995f92a456 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows.
+ Added ImGuiDebugLogFlags_EventSelection unused in this branch.
2023-04-12 21:38:47 +02:00
Elie Michel
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
Elie Michel
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
ocornut
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
ocornut
9203883bbe Comments + Metal using SetTexID(0) for consistency. 2023-04-11 11:22:42 +02:00
David Maas
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
David
db4c4e3321
Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 2023-04-11 10:01:53 +02:00
ocornut
a7703fe6f7 Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953)
Amend 734c6af187
2023-04-06 19:12:10 +02:00
ocornut
47a07d8476 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304)
+ Demo: use BeginDisabled() block in BackendFlags section.
I'd still consider this undefined behavior as some combination may not work properly, but let's fix things while we can as we encounter them.
2023-04-05 18:34:49 +02:00
ocornut
c9fe7ebc7b IO: Input queue trickling adjustment for touch screens. (#2702, #4921)
+ amend two comments in imgui.h
2023-04-04 21:05:27 +02:00
ocornut
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
ocornut
a16f99c6a2 IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 2023-04-04 20:18:57 +02:00
ocornut
13931fd851 Redirecting domain name
Tired of paying/maintaining two domains names and .org tend to be fluctuating + changing host company for sponsoring.
2023-04-03 15:07:20 +02:00
ocornut
5f301914a0 TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 2023-03-29 17:10:03 +02:00
ocornut
a38e3c222f Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272)
Note that this is not BayesBug's exact intended solution, so issues would be my responsibility ;)
Amended.
2023-03-29 12:51:41 +02:00
ocornut
7dcf129b3b Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 2023-03-23 13:27:55 +01:00
AJ Weeks
821814b450 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) 2023-03-22 20:48:47 +01:00
ocornut
89d09070e3 Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) 2023-03-22 15:42:14 +01:00
ocornut
c98bad042d ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 2023-03-21 17:48:09 +01:00
PanForPancakes
9ac94ff001 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200)
Amend f6460970
2023-03-21 17:47:56 +01:00
cfillion
7269498ecc IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 2023-03-21 14:19:59 +01:00
David Briscoe
cac76b2754 Slider, Drags: skip %+ and %# format flags for scanning. (#6259)
(There are two additional unhandled flags that only affect padding: '-' and ' '. Formatting flags don't make sense in a SliderInt's format string, so I've omitted them)
2023-03-21 12:09:38 +01:00
ocornut
5a2b1e8482 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714)
Altered ItemAdd() clipping rule to keep previous-frame ActiveId unclipped to support that late commit.

Also, MarkItemEdited() may in theory need to do:
if (g.ActiveIdPreviousFrame == id)
        g.ActiveIdPreviousFrameHasBeenEditedBefore = true;
But this should already be set so not adding now.
2023-03-16 21:12:57 +01:00
ocornut
5d4a8978bd Docs: added all older versions to Changelog. 2023-03-16 15:15:15 +01:00
Aiekick
91577c7f51 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 2023-03-16 11:59:45 +01:00
ocornut
301c956039 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 2023-03-15 17:09:09 +01:00
ocornut
ae4dad09b5 Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 2023-03-15 15:04:07 +01:00
ocornut
0d606968d8 Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 2023-03-15 12:25:34 +01:00
ocornut
24a44b9abe Version 1.89.5 WIP 2023-03-15 12:25:20 +01:00
ocornut
f3f6295d53 Version 1.89.4
Commented out obsolete enums/functions names: ImGuiSliderFlags_ClampOnInput, ImGuiInputTextFlags_AlwaysInsertMode, ImDrawList::AddBezierCurve(), ImDrawList::PathBezierCurveTo()()
2023-03-14 16:36:19 +01:00
ocornut
e39c2552ac Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) 2023-03-14 16:00:29 +01:00
ocornut
cc2177de15 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 2023-03-14 15:25:13 +01:00
ocornut
c426e32247 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects.
- Afaik the "to allow ImGuiListClipper to function" was added early during Tables development (prior to commit 55) and later replaced by support in ImGuiListCipper, it seems unnecessary.
- Also removed RowPosY2 being accted in TableEndCell().
+ Comments about 2bb9e35 + fix example bb224c8
2023-03-13 16:26:38 +01:00
domgho
6ca1556d02 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 2023-03-10 19:12:04 +01:00
ocornut
bb224c8aa1 Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2023-03-10 18:35:52 +01:00
ocornut
2bb9e35a48 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) 2023-03-10 18:35:52 +01:00
ocornut
e83fb468c6 Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) 2023-03-09 18:53:57 +01:00
ocornut
a322122f74 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active.
(regresion from 1.89) + removed unnecessary if block in NavProcessItem()
2023-03-09 16:24:03 +01:00
ocornut
3b2f617652 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo.
Add SetWindowHiddendAndSkipItemsForCurrentFrame().
2023-03-09 15:16:40 +01:00
Marc Delorme
10ace228bc Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO
This commit is a preparation toward adding ImGui apis with explicit context
and making ImGui applications being able to use multiple context at the same time
whatever their concurrency model.

About ImGuiIO:
- ImGuiIO depends on ImGuiContext because some of its method want to event to `g.InputEventQueue`.
- To make ImGuiIO aware of the context to use, context which creates the ImGuiIO is given as argument of ImGuiIO constructor.
- The assert `IM_ASSERT(&g.IO == this && "Can only add events to current context.")` has been removed since it does not make sense anymore

NOTE: ImGuiIO could be completely independent of ImGuiContext if the InputEventQueue was moved from ImGuiContext to ImGuiIO, but since
ImGuiIO is a public class it would expose InputEvent type. Solving this problem is out of the current scope, but it is interesting to notice.
2023-03-08 15:39:22 +01:00
ocornut
5a1e6b60a2 Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) 2023-03-08 14:03:58 +01:00
ocornut
c9a53aa74d Nav: Made Enter key submit the same type of Activation event as Space key. (#5606)
Instead of adding NavActivateInputId support in ButtonBehavior() started untangling the mess.
2023-03-07 18:41:49 +01:00
duddel
57d0fcd021 Examples: Fix Android example build for Gradle 8. (#6229) 2023-03-07 14:01:20 +01:00