ocornut
0397321be0
Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. ( #4388 , #4921 )
2023-05-09 20:28:08 +02:00
ocornut
6656553fa4
Nav: Record/restore preferred position on each given axis.
...
Tagging #6344 #6003 #2694 #1688 as it relates to scoring, however this doesn't technically fix any of them fully yet.
But e.g. once we restore axial path for #2694 this commit will allow going back and forth to initial location.
2023-05-09 17:26:27 +02:00
Jason Millard and ocornut
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
ocornut
dd9db5e889
Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. ( #6375 )
2023-05-09 15:09:47 +02:00
ocornut
6cdedf5834
Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. ( #6405 )
2023-05-09 12:04:04 +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
ocornut
5dc6013713
Backends: SDL3: Fixed build on Emscripten/iOS/Android. ( #6391 )
2023-05-04 17:06:36 +02:00
ocornut
7c291ba31b
Tables: Fixed command merging when compiling with VS2013. ( #6377 )
2023-04-28 13:58:59 +02:00
cfillion and ocornut
085fa42b7d
Adedd workaround for GCC erroneous/zealous warning ( #5343 )
2023-04-27 19:16:00 +02:00
ocornut
031e152d29
Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. ( #6374 )
2023-04-27 14:57:09 +02:00
ocornut
15da1a9abc
Fixed misleading local name ( #4493 ) + minor typo ( #6369 )
2023-04-25 16:39:02 +02:00
Koostosh and ocornut
fd943182bd
ImVec2: Added unary minus operator ( #6368 )
2023-04-25 16:24:50 +02:00
ocornut
d3ad2f357f
Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. ( #3496 , #4797 )
...
Amend 48f26333
2023-04-25 12:17:37 +02:00
ocornut
b47507951e
Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer.
2023-04-24 21:00:00 +02:00
ocornut
eed7b0e9c5
Nav: remove other-axis clamping, now that columns themselves are clamped. ( #2221 )
...
Amend 00d3f92 + older f2d14724 , 0cc20fca8
+ Add ImGuiNavMoveFlags_WrapMask_ for good measure.
2023-04-24 20:04:05 +02:00
ocornut
da3d7e1587
Focus: added an early out in FocusWindow() for the common case.
2023-04-24 12:18:55 +02:00
kimidaisuki22 and ocornut
565aa0b763
Examples: Vulkan: pick integrated GPU if nothing else is available. ( #6359 )
2023-04-24 12:17:49 +02:00
Daniel Petrovic and GitHub
0fbf2888e7
Examples: example_glut_opengl2: Fixed compilation issue ( #6361 )
2023-04-23 10:39:13 +02:00
ocornut
4d42450a73
Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). ( #6357 , #4317 )
2023-04-21 19:07:45 +02:00
ocornut
01ca196530
Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. ( #6357 )
...
# Conflicts:
# imgui.cpp
2023-04-21 19:07:08 +02:00
ocornut
30eceaf95f
Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). ( #6357 , #4317 )
2023-04-21 19:06:11 +02:00
ocornut
f0fe1957a8
Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge.
2023-04-21 19:05:58 +02:00
ocornut
00d3f9295e
Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. ( #2221 )
2023-04-20 16:42:52 +02:00
ocornut
8d9e50c807
Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results.
2023-04-20 16:04:05 +02:00
ocornut
662ce46971
Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line.
2023-04-20 14:52:59 +02:00
ocornut
a89590b425
Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc ( #3218 )
2023-04-20 10:38:45 +02:00
ocornut
9308cfdcfb
Examples: Amend Win32/Winapi + OpenGL example. ( #3218 , #5170 and #6086 , #2772 , #2600 , #2359 , #2022 , #1553 )
2023-04-19 16:28:15 +02:00
Mark Jansen and ocornut
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
ocornut
a338b78eb9
Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. ( #6333 )
2023-04-19 11:55:40 +02:00
Gereon V and ocornut
d0836aa89a
Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. ( #6333 )
2023-04-19 11:55:36 +02:00
ocornut
d6a7aca2f4
Nav: Debug: tweak debug facilities.
2023-04-18 15:47:29 +02:00
lukaasm and ocornut
0948cfc19e
InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. ( #6341 )
2023-04-18 11:35:12 +02:00
lukaasm and ocornut
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
Faisal Arshed and GitHub
f94a8344f6
Fix minor typos in FAQ ( #6328 )
2023-04-17 15:00:10 +02:00
Gereon V and ocornut
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 and ocornut
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
ba98667c65
Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. ( #6109 , #6172 , #6101 )
2023-04-13 16:08:51 +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 and ocornut
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 and ocornut
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
18d72a9142
Inputs: added a unique event identifier in ImGuiInputEvent.
2023-04-11 15:07:42 +02:00
Michael Martz and ocornut
506f7e0074
Using nullptr in locations where warning disable is not convenient. ( #6313 , #4537 )
2023-04-11 11:33:50 +02:00
ocornut
9203883bbe
Comments + Metal using SetTexID(0) for consistency.
2023-04-11 11:22:42 +02:00
David Maas and ocornut
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 and GitHub
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
8738ed88f0
Fixed FindWindowSettingsByID() being able to return a deleted setting.
2023-04-06 18:50:24 +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
9a1e09eb1f
Fixed ImVec2 operator[] warning.in Clang. ( #6272 )
...
Added by a38e3c2
2023-04-04 19:26:48 +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
e8206db829
InputText: Fixed crash introduced by 5a2b1e848 ( #6292 , #4714 )
2023-04-02 17:29:56 +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
84fd0c7ff4
Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel.
2023-03-29 17:09:58 +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
f65bcf481a
Docs: added details and link to wiki from imgui_stdlib to increase discoverability.
2023-03-23 19:03:17 +01:00
ocornut
8a6911b894
Backends: Fixes zealous warnings ( #5760 )
2023-03-23 18:18:52 +01:00
ocornut
7dcf129b3b
Backends: OpenGL3: Properly restoring "no shader program bound". ( #6267 , #6220 , #6224 )
2023-03-23 13:27:55 +01:00
AJ Weeks and ocornut
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 and ocornut
9ac94ff001
ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. ( #6254 , #5200 )
...
Amend f6460970
2023-03-21 17:47:56 +01:00
ocornut
d885094be3
Demo: stop relying on internal function.
2023-03-21 16:50:10 +01:00
ocornut
e55a0ef107
IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. ( #6199 , #6256 , #4921 , #5856 )
2023-03-21 14:32:37 +01:00
cfillion and ocornut
7269498ecc
IO: actually fixed adding events from inactive context ( #6199 , #6256 , #4921 , #5856 )
2023-03-21 14:19:59 +01:00
David Briscoe and ocornut
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
314e6443c9
Internals: removed ImGuiInputSource_Nav enum,
...
Essentially finishing the work of removing Nav a dual input source (with e.g. removal of NavInput[]).
2023-03-16 20:28:05 +01:00
ocornut
5d4a8978bd
Docs: added all older versions to Changelog.
2023-03-16 15:15:15 +01:00
ocornut
c501c2d4cd
Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case.
2023-03-16 15:15:12 +01:00
Aiekick and ocornut
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
Ambrose Bonnaire-Sergeant and GitHub
8b6e021f35
Demo: Fixed typos. ( #6247 )
2023-03-15 15:55:47 +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
552969e33e
BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code.
...
Amend 3b2f617
2023-03-14 14:28:41 +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 and ocornut
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
ocornut
b5f9381036
Made internal clipboard/IME handlers not rely on implicit GImGui context ( #5856 )
...
Code in SetPlatformImeDataFn_DefaultImpl amends 3a90dc389 by temporarily setting field in caller site.
2023-03-08 16:21:33 +01:00
Marc Delorme and ocornut
c8ad25caa6
Make classes not depend on the implicit GImGui context ( #5856 , #6199 ): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes
...
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.
This commit modifies ImGuiInputTextCallback, ImGuiListClipper and ImGuiStackSize so those classes do not to depend on GImGui context anymore.
About ImGuiInputTextCallback:
- ImGuiInputTextCallback depends on ImGuiContext because it has a
`InsertChars` method adding character to `g.InputTextState`
- To make ImGuiInputTextCallback aware of which context to use, the
appropriate context is given as argument of ImGuiInputTextCallback
constructor.
About ImGuiListClipper:
- ImGuiListClipper apply to a context through its `Begin`, `End`, and `Step`
method.
- To make ImGuiListClipper aware of which context to use, the
appropriate context is given as argument of ImGuiListClipper
constructor.
- Since the behavior is different than previously the class has been
renamed ImGuiListClipperEx
- In order to preserve backward compatibility, a subclass of ImGuiListClipperEx
named ImGuiListClipper has been defined and forward the implicit context
to ImGuiListClipperEx parent.
About ImGuiTextFilter:
- ImGuiTextFilter depends on the implicit context because the Draw(..)
method call ImGui::InputText(...)
- Instead from that commit the Draw(...) method takes an explicit context
as first argument
- Since the behavior is different than previously the class has been
renamed ImGuiTextFilterEx
- In order to preserve backward compatibility, a subclass of ImGuiTextFilterEx
named ImGuiTextFilter has been defined. This subclass has a draw method
override which and forward the implicit context to the parent class Draw(...)
About ImGuiStackSizes:
- ImGuiStackSizes was depending on ImGuiContext because of its
`SetToCurrentState` and `CompareWithCurrentState` method
- ImGuiStackSizes is an helper object use
for comparing state of context. It does not necessarily need to
compare the same context. For that reason, as opposed to previous
classes it takes the context it wants to compare to as argument of
its method.
- For this occasion `SetToCurrentState` and `CompareWithCurrentState`
have been renamed `SetToContextState` and `CompareWithContextState`
to match the new method signature.
ImGuiListClipper
ImGuiInputTextCallbackData
2023-03-08 15:55:38 +01:00
Marc Delorme and ocornut
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
ocornut
b4b79584d1
Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo.
2023-03-07 14:40:55 +01:00
duddel and ocornut
57d0fcd021
Examples: Fix Android example build for Gradle 8. ( #6229 )
2023-03-07 14:01:20 +01:00