ocornut
467a1cd4a5
Misc: io.Framerate moving average now converge in 60 frames instead of 120. ( #5236 , #4138 )
2022-07-01 17:09:58 +02:00
Stephen H. Gerstacker
67410d53f7
Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). ( #5403 )
2022-06-30 20:16:45 +02:00
ocornut
609b935a8c
InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text.
2022-06-30 15:47:54 +02:00
ocornut
24dfe6db8a
Version 1.89 WIP
2022-06-27 16:55:55 +02:00
ocornut
9aae45eb4a
Version 1.88
...
(fix "Show Debug Log" checkbox in Metrics window)
2022-06-21 18:11:50 +02:00
ocornut
d51e5d2898
TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. ( #5262 )
...
Revert a small part of 4b97296
.
2022-06-21 17:20:06 +02:00
ocornut
c4b9101759
TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely.
...
Has been the case before but adding support for SetNextItemWidth() #5262 made this more noticeable.
2022-06-21 17:13:13 +02:00
ocornut
4b97296148
TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). ( #5262 )
2022-06-21 17:13:12 +02:00
ocornut
d3fd2630b7
Sliders: An initial click within the knob/grab doesn't shift its position. ( #1946 , #5328 ) + Adjust default GrabMinSize.
2022-06-20 18:13:10 +02:00
Rokas Kupstys
37a07858a9
Nav: Fixed inability to cancel nav in modal popups. ( #5400 )
2022-06-17 14:58:26 +02:00
ocornut
07efd7cc20
Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS.
2022-06-15 16:02:55 +02:00
ocornut
27343efb0b
Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx()
2022-06-15 15:25:07 +02:00
ocornut
ddcff10343
Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty.
2022-06-15 14:30:20 +02:00
ocornut
1d6e34f3f9
Debug: Added ShowDebugLogWindow().
...
Internal: renamed old IMGUI_DEBUG_LOG() to IMGUI_DEBUG_PRINT().
Amended once.
2022-06-13 19:05:55 +02:00
ocornut
076d8fc868
Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. ( #4449 )
2022-06-10 19:25:53 +02:00
Rokas Kupstys
0b1bcfcc20
Menus: Separate menu sets by nav layer. ( #3496 , #4797 ) + Demo: Remove incorrect and useless suggestion to use PushID().
...
Fixes a common case where opening menu in one nav layer and hovering a menu in another nav layer would open that menu without a click.
2022-06-08 17:17:54 +02:00
ocornut
a35e876978
InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. ( #4947 , #4949 )
2022-06-08 15:27:36 +02:00
ocornut
64d6c30562
InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. ( #4947 ) + Metrics: Added "InputText" section.
2022-06-07 15:34:21 +02:00
ocornut
65c4c0a490
IO: Added SetAppAcceptingEvents() function ( #4921 , #4858 )
2022-06-02 16:56:00 +02:00
Warren Moore
7354009a73
Backends: Metal: Fixed null dereference inside command buffer completion handler. ( #5363 , #5365 )
2022-06-01 00:40:22 +02:00
Rokas Kupstys
f58bd817e2
Tables: Fix drawcall merging of last column. ( #4843 , #4844 )
...
Amend 83d22f4e
2022-05-31 14:22:23 +02:00
Quantum
e23c5edd5f
Settings: Fixed out-of-bounds read when .ini file on disk is empty. ( #5351 )
2022-05-29 21:58:39 +02:00
ocornut
697ce2d67b
InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. ( #3008 )
...
Curiously very old, amend 83efdce
and bdbb2b2
. Using stb_ functions updated ->CurLenA without updating ->TextA, leading to `buf_display_end = buf_display + state->CurLenA;` in the display.
Since f3ab5e62
they are 1 case out of 4 which didn't apply back to ->TextA and this is essentially the one where we ensure appliance. Another solution would be to alter the lower display code, but applying to TextA makes things more consistent.
2022-05-25 18:39:00 +02:00
ocornut
ca222d30c8
Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. ( #4468 , #3381 , #2981 , #4825 , #4832 , #5127 )
...
Essentially reverts 389982eb
for non-Intel GPUs + update imgui_impl_opengl3_loader.h
Amended once (force-pushed).
2022-05-23 12:47:40 +02:00
ocornut
7bf07d2526
Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. ( #5304 , #4831 , #4480 , #533 )
2022-05-23 11:22:46 +02:00
ocornut
cb56b0b238
Removed leftover KeepAliveID() call in GetIDWithSeed() variant. ( #5181 ) + doc tweaks.
2022-05-23 10:51:01 +02:00
ocornut
e346059eef
IO: Fixed input queue trickling of mouse wheel events. ( #4921 , #4821 )
2022-05-18 14:16:02 +02:00
ocornut
60bea052a9
Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends)
2022-05-13 18:06:24 +02:00
Rokas Kupstys
b7686a88e9
Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states.
...
This change partially reverts 9770c8b21d
.
2022-05-13 18:03:18 +02:00
thedmd
507a87354b
DrawList: Circles disappear when using a radius < 0.5f ( #3491 )
...
Amend 051ce0765e
2022-05-13 17:22:35 +02:00
ocornut
9e0517a134
DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. ( #5249 , #5293 , #3491 )
...
Amend 8ed34af6f8
2022-05-13 17:19:51 +02:00
ocornut
6d27fecce1
Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph().
...
Helper to diagnose issues such as #4866 , #3558 , #3436 , #2233 , #1880 , #1780 , #905 , #832 , #762 , #726 , #609 , #565 , #307 )
2022-05-03 19:23:54 +02:00
stuartcarnie
e66fc22057
Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. ( #4821 )
...
Fix using NSKeyUp (#5268 ).
2022-05-03 14:35:08 +02:00
ocornut
26f817807c
Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. ( #5254 )
2022-05-03 12:51:51 +02:00
ocornut
3e5dde9a26
Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. ( #5276 )
2022-05-02 16:45:27 +02:00
cpichard
709bc03d6f
Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX ( #5260 , #5261 )
2022-04-30 15:34:40 +02:00
noisewuwei
e54db4ee70
Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. ( #5203 , #5221 , #4141 )
...
# Conflicts:
# docs/CHANGELOG.txt
2022-04-27 15:17:32 +02:00
ocornut
04689979b4
Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue ( #3632 )
2022-04-22 20:38:59 +02:00
Dima Koltun
b5b704d376
Windows: Fixed first-time windows appearing in negative coordinates. ( #5215 , #3414 )
...
Regression added in 6af92b05b
2022-04-22 20:24:44 +02:00
ocornut
5b29d14783
Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful.
...
+ minor unrelatedcomments.
2022-04-22 17:48:06 +02:00
Andrea Palmatè
14ca75d4e7
Backends: SDL, OpenGL3: Small fixes for AmigaOS4. ( #5190 ) + Allow redefining IM_COL32_XXX layout macros. ( #5190 , #767 , #844 )
2022-04-13 20:43:35 +02:00
ocornut
088487a3d4
Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. ( #5189 )
2022-04-13 12:34:13 +02:00
ocornut
90386780e3
Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. ( #5181 ).
2022-04-12 14:44:57 +02:00
ocornut
2c03aac6d3
Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type)
2022-04-05 15:45:00 +02:00
ocornut
a472e8834b
InputScalar: Automatically allow hexadecimal/scientific input when format is adequate.
2022-04-05 15:13:37 +02:00
ocornut
c521883be4
Sliders, Drags: Fixed manual input when using hexadecimal display format string. ( #5165 , #3133 )
...
InputScalar: Fixed manual input when using %03d style width in display format string.
(amended once)
2022-04-04 18:42:04 +02:00
ocornut
508c9aaf60
Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). ( #5165 , #3133 )
...
Ditched unnecessary code. When transitioning from float in 3e8087458
we added an unnecessary path there, which evolved in c5fb92955
.
2022-04-04 14:43:30 +02:00
ocornut
0dec430707
Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure.
2022-03-28 12:33:58 +02:00
ocornut
dfbe938e54
InputText: Fixed pressing Tab emitting two tabs characters. ( #2467 , #1336 )
...
Using Tab keys entirely now, ignoring Tab character. Technically affect who owns the repeat rate.
2022-03-24 12:04:49 +01:00
Rokas Kupstys
1ad8ad623e
Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11.
2022-03-23 16:09:42 +01:00
cfillion
7d7bf993bb
ImDrawList: Fix texture-based anti-aliasing with RGBA textures ( #5132 , #3245 )
...
When using an Alpha8 font texture, GetTexDataAsRGBA32 converts 0x00 to transparent white.
When using a RGBA32 font texture, ImFontAtlasBuildRenderLinesTexData was writing transparent black.
2022-03-23 16:00:39 +01:00
thedmd
3c07879504
Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key ( #5128 )
2022-03-22 18:48:52 +01:00
Rokas Kupstys
c5f67218bf
Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) ( #5012 , #5082 )
...
# Conflicts:
# backends/imgui_impl_sdl.cpp
# docs/CHANGELOG.txt
2022-03-22 18:08:39 +01:00
Sergiu Giurgiu
31e77eacdb
Backends: SDL: Add extra mouse buttons handling ( #5125 )
2022-03-22 16:59:46 +01:00
ocornut
6fae29679a
Examples: Emscripten: Fix build. ( #3632 )
2022-03-15 18:36:41 +07:00
ocornut
0cff5ac5a1
Updated stb_textedit.h from 1.20 to 1.26 (many fixes). ( #5075 )
2022-03-13 17:57:32 +07:00
ocornut
de451d4474
Updated stb_textedit.h from 1.13 to 1.14. ( #5075 )
...
(Our pageup/pagedown PR was merged, so this is essentially a no-op)
2022-03-13 13:23:03 +07:00
ocornut
279db55840
Updated stb_rect_pack.h from 1.00 to 1.01. ( #5075 )
...
(our STBRP__CDECL change was merged)
2022-03-13 13:23:00 +07:00
jakubtomsu
3deb92c2c5
Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path ( #5068 , #2954 )
2022-03-13 12:52:30 +07:00
ocornut
0f14933577
Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. ( #3955 , #3565 )
2022-03-01 18:47:03 +01:00
ocornut
54fb051e52
ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label.
2022-02-28 16:12:43 +01:00
ocornut
fa2b318dd6
IO: Fixed input queue trickling of interleaved keys/chars events when InputText() is not active. ( #4921 , #4858 )
2022-02-22 14:36:27 +01:00
ocornut
5659db5529
IO: Fixed backward-compatibility accesses to io.KeysDown[]. ( #4921 , #4858 )
...
+ Snuck in unrelated comments and removed the "fill once" comment (#5043 )
2022-02-21 21:31:01 +01:00
ocornut
29d462ebce
Set HoveredID even when g.NavDisableMouseHover is set by gamepad/keyboard navigation. This will facilitate the use of future InputOwner API based on HoveredID/ActiveID.
...
Note that this widen the small gap between polling g.HoveredID and using IsItemHovered() the later does various filtering.
Added IsItemHovered(ImGuiHoveredFlags_NoNavOverride) to disable that specific state redirect/filter.
Side-effect: fix EndGroup() use of combining HoveredId values when gamepad/keyboard nav is active. Unlikely to have user-visible side effect since IsItemHovered() would have filtered out anyway.
Side-effect: fix IsAnyItemHovered() when gamepad/keyboard is active (but this wasn't the primary intent of this change).
Side-effect: fix using SetItemUsingMouseWheel() while hovering an item and gamepad/keyboard is active. (#2891 )
2022-02-17 18:39:03 +01:00
ocornut
d9e60d29e1
Clipper: Fixed a regresssion when not calling End() + calling End() twice as well. ( #4822 )
2022-02-17 11:09:06 +01:00
ocornut
2dfa71fad5
Inputs: Fixed IsMouseClicked() repeat mode rate being half of keyboard repeat rate. Using KeyModAlt. Removed KeyModsPrev.
2022-02-16 20:08:58 +01:00
Konstantin Podsvirov
7ff41a78f9
Fonts: binary_to_compressed_c.cpp gained -nostatic option ( #5021 )
...
This allow to use added variables in other source files via extern declaration.
2022-02-16 17:02:33 +01:00
thedmd
b6b8f6634e
ImVector: Fixed erase() with empty range. ( #5009 )
2022-02-15 11:16:08 +01:00
Jeff Mears
71f98dd056
Declare ImVec2 and ImVec4 constructors as constexpr ( #4995 )
2022-02-11 12:27:27 +01:00
thedmd
4691fa0ed5
ImDrawList: PthArcTo: Add small tolerance when comparing angles ( #4993 )
2022-02-08 17:37:45 +01:00
ocornut
aa79d0cd2f
Stack Tool: Added option to copy item path to clipboard. ( #4631 )
2022-02-08 16:36:54 +01:00
ocornut
88de982071
Version 1.88 WIP
2022-02-08 14:45:26 +01:00
ocornut
c71a50deb5
Version 1.87
2022-02-07 18:16:54 +01:00
ocornut
e52bb147a7
Backends: GLFW: Added ImGui_ImplGlfw_InstallCallbacks()/ImGui_ImplGlfw_RestoreCallbacks(). ( #4981 )
2022-02-07 16:11:05 +01:00
Rokas Kupstys
40fd163a3b
Backends: OpenGL3: Fix OpenGL ES2 includes on Apple systems.
...
# Conflicts:
# backends/imgui_impl_opengl3.cpp
# docs/CHANGELOG.txt
2022-02-07 12:26:19 +01:00
ocornut
2554b512c0
Backends: OSX: Forward keyDown/keyUp events to OS when unused by Dear ImGui.
2022-02-07 11:55:24 +01:00
Clownacy
c6cab1f352
Backends: SDL: Added SDL_Renderer* parameter to ImGui_ImplSDL2_InitForSDLRenderer(). Use SDL_GetRendererOutputSize() instead of SDL_GL_GetDrawableSize() when bound to a SDL_Renderer. ( #4927 )
...
This is (kind of) an OpenGL-only function, which should be avoided when SDL2 isn't using OpenGL.
The only alternative that is recommended is SDL_GetRendererOutputSize, which limits this fix to the SDL_Renderer backend. Still, I think it's better than nothing.
I say that SDL_GL_GetDrawableSize is "kind of" OpenGL-only because it does technically work even when SDL2 isn't using OpenGL.
It's just that it becomes a shim to SDL_GetWindowSize, which is not suitable for high-DPI usage because it reflects the size of the window in screen coordinates, not actual pixels, so it really should be avoided when not using OpenGL.
2022-02-04 16:51:29 +01:00
Clownacy
c39192ba64
Backends: SDL_Renderer: Fix texture atlas format on big-endian hardware ( #4927 )
...
SDL_PIXELFORMAT_RGBA32 is intended for byte arrays where the channels
are specifically in the RGBA order. However, this is not what
GetTexDataAsRGBA32 does: rather, it constructs an array where each
pixel is an unsigned int in ABGR order. On little-endian platforms,
this does indeed result in an RGBA byte order, however, on big-endian
platforms, this results in an ABGR byte order, which does not match
the PIXELFORMAT enum.
What should be used is the SDL_PIXELFORMAT_ABGR8888 enum, which
specifies that the pixels are in native-endian ABGR, which they are.
2022-02-04 16:43:05 +01:00
rokups
551ab84c2d
Backends: OSX: Fix building with old Xcode versions.
...
Builds have failed on Xcode versions that do not yet support `@available` or do not have new APIs (that are unavailable on target OS version) defined at all. Using true build time version checks fixes these issues.
2022-01-31 14:41:56 +01:00
ocornut
49e38a5b32
Revert moving ImGuiKeyModFlags to internal.h (amendc906c65)
2022-01-28 15:53:09 +01:00
ocornut
c906c65cac
(BREAKING) Replaced AddKeyModsEvent() added by 790132a
in favor of unified key enum system. Backends: update most. ( #4921 , #4858 )
...
Sorry this is an unusual breaking but since we are WIP it is a good time to make a correction.
2022-01-27 17:46:48 +01:00
ocornut
075f4ac661
Don't merge ImDrawCmd which have had their IdxOffset changed to not be sequential. Fixed CTRL+Tab into an empty window causing artefacts on the highlight rectangle due to bad reordering on ImDrawCmd.
...
This is bit of a weird edge case adding weight to ImDrawCmd merging, if we could rework the mess in RenderDimmedBackgroundBehindWindow() we may be able to undo some of that.
2022-01-26 15:53:18 +01:00
ocornut
b17b2fb732
Popups: Fixed an issue when reopening a same popup multiple times would offset them by 1 pixel on the right. ( #4936 )
...
Passing explicit ImGuiPopupFlags_MouseButtonRight to OpenPopupOnItemClick() calls somehow document the unusual (due to legacy) default value.
2022-01-24 13:24:54 +01:00
thedmd
c2db4c2462
Demo: draw a section of keyboard in "Inputs > Keyboard, Gamepad & Navigation state" to visualize keys.
2022-01-21 15:25:23 +01:00
ocornut
69b697378b
Comments, tweaks.
2022-01-21 14:50:31 +01:00
ocornut
26e59c8742
Nav: Fixed gamepad navigation in wrapping popups not wrapping all the way. ( #4365 )
2022-01-21 14:41:34 +01:00
thedmd
5ea47d9560
Backends: OSX: Add full gamepad support using io.AddKeyEvent(), io.AddKeyAnalogEvent(), stopped writing to io.NavInputs[]. ( #4858 , #787 )
2022-01-20 17:25:49 +01:00
ocornut
39c3412f91
Backends: SDL: Add full gamepad support using io.AddKeyEvent(), io.AddKeyAnalogEvent(), stopped writing to io.NavInputs[]. ( #4858 , #787 )
2022-01-20 17:25:31 +01:00
ocornut
3d85433748
Backends: GLFW: Add full gamepad support using io.AddKeyEvent(), io.AddKeyAnalogEvent(), stopped writing to io.NavInputs[]. ( #4858 , #787 )
2022-01-20 17:25:15 +01:00
ocornut
9f8c599ca7
Backends: Win32: Add full gamepad support using io.AddKeyEvent(), io.AddKeyAnalogEvent(), stopped writing to io.NavInputs[]. ( #4858 , #787 )
2022-01-20 17:25:04 +01:00
ocornut
f33bb99821
IO: added AddKeyAnalogEvent() and support for ImGuiKey_GamepadXXXX. ( #4858 , #787 )
2022-01-20 17:24:52 +01:00
ocornut
ceb26bac48
Backends: Vulkan: Added support for ImTextureID as VkDescriptorSet, amends. ( #914 )
2022-01-20 15:53:28 +01:00
Rokas Kupstys
19471da3fd
Popups: Fix a crash when a new window is created after a modal on the same frame. ( #4920 )
2022-01-20 15:03:56 +01:00
ocornut
7ad42ff431
IO: renamed io.ConfigInputEventQueue to io.ConfigInputTrickleEventQueue. ( #4858 )
2022-01-19 18:45:57 +01:00
ocornut
26d04c948f
Tables: Fixed positioning of Sort icon on right-most column with some settings (not resizable + no borders). ( #4918 ).
2022-01-19 18:03:36 +01:00
ocornut
91ae56af45
Removed support for legacy arithmetic operators (+*/) when inputing text into a slider/drag. ( #4917 , #3184 )
2022-01-19 15:10:42 +01:00
ocornut
7374b96f5c
IO: Added input queue. ( #4858 , #2787 , #1992 , #3383 , #2525 , #1320 )
2022-01-17 17:36:55 +01:00
thedmd
b8e56dce83
IO: Added AddMousePosEvent(), AddMouseButtonEvent(), AddMouseWheelEvent() api + updated all Backends. ( #4858 ) (input queue code will be next commit)
...
Details: note that SDL, OSX and GLFW backends removed recording of MouseJustPressed[] which will be unnecessary with input queue (which is the NEXT commit). (#2787 , #1992 , #3383 , #2525 , #1320 )
2022-01-17 17:35:37 +01:00
ocornut
b6582a471a
Backends: OSX: Fix Game Controller nav mapping to use shoulder for both focusing and tweak speed. ( #4759 )
2022-01-17 16:22:32 +01:00
ocornut
0755767440
Backends: move io.AddKeyModsEvent() next to io.AddKeyEvent() submission, rely on mods from platform/source. ( #4858 ) + fix #2622 again broken by 746c9f7
...
Amended to submit modifiers before.
2022-01-17 15:21:17 +01:00