1068 Commits (8d3906365db5b4c18758e3fd5cb05fb5356350af)

Author SHA1 Message Date
thedmd b6b8f6634e ImVector: Fixed erase() with empty range. (#5009) 3 years ago
Jeff Mears 71f98dd056 Declare ImVec2 and ImVec4 constructors as constexpr (#4995) 3 years ago
thedmd 4691fa0ed5 ImDrawList: PthArcTo: Add small tolerance when comparing angles (#4993) 3 years ago
ocornut aa79d0cd2f Stack Tool: Added option to copy item path to clipboard. (#4631) 3 years ago
ocornut 88de982071 Version 1.88 WIP 3 years ago
ocornut c71a50deb5 Version 1.87 3 years ago
ocornut e52bb147a7 Backends: GLFW: Added ImGui_ImplGlfw_InstallCallbacks()/ImGui_ImplGlfw_RestoreCallbacks(). (#4981) 3 years ago
Rokas Kupstys 40fd163a3b Backends: OpenGL3: Fix OpenGL ES2 includes on Apple systems.
# Conflicts:
#	backends/imgui_impl_opengl3.cpp
#	docs/CHANGELOG.txt
3 years ago
ocornut 2554b512c0 Backends: OSX: Forward keyDown/keyUp events to OS when unused by Dear ImGui. 3 years ago
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.
3 years ago
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.
3 years ago
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.
3 years ago
Clownacy 422902dbda Correct typos (#4954, #4955), use IM_STATIC_ASSERT now that old pre-C++11 macro has been obsoleted. 3 years ago
ocornut 49e38a5b32 Revert moving ImGuiKeyModFlags to internal.h (amendc906c65) 3 years ago
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.
3 years ago
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.
3 years ago
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.
3 years ago
ocornut cda3db1449 Backends: SDL: Fixed key mapping for ImGuiKey_Menu (#4921) + misc typos (#4928) 3 years ago
Clownacy 4fb0c1f963
Correct some typos in FAQ.md (#4924) 3 years ago
thedmd c2db4c2462 Demo: draw a section of keyboard in "Inputs > Keyboard, Gamepad & Navigation state" to visualize keys. 3 years ago
ocornut 69b697378b Comments, tweaks. 3 years ago
ocornut 26e59c8742 Nav: Fixed gamepad navigation in wrapping popups not wrapping all the way. (#4365) 3 years ago
thedmd 5ea47d9560 Backends: OSX: Add full gamepad support using io.AddKeyEvent(), io.AddKeyAnalogEvent(), stopped writing to io.NavInputs[]. (#4858, #787) 3 years ago
ocornut 39c3412f91 Backends: SDL: Add full gamepad support using io.AddKeyEvent(), io.AddKeyAnalogEvent(), stopped writing to io.NavInputs[]. (#4858, #787) 3 years ago
ocornut 3d85433748 Backends: GLFW: Add full gamepad support using io.AddKeyEvent(), io.AddKeyAnalogEvent(), stopped writing to io.NavInputs[]. (#4858, #787) 3 years ago
ocornut 9f8c599ca7 Backends: Win32: Add full gamepad support using io.AddKeyEvent(), io.AddKeyAnalogEvent(), stopped writing to io.NavInputs[]. (#4858, #787) 3 years ago
ocornut f33bb99821 IO: added AddKeyAnalogEvent() and support for ImGuiKey_GamepadXXXX. (#4858, #787) 3 years ago
ocornut ceb26bac48 Backends: Vulkan: Added support for ImTextureID as VkDescriptorSet, amends. (#914) 3 years ago
Rokas Kupstys 19471da3fd Popups: Fix a crash when a new window is created after a modal on the same frame. (#4920) 3 years ago
ocornut 7ad42ff431 IO: renamed io.ConfigInputEventQueue to io.ConfigInputTrickleEventQueue. (#4858) 3 years ago
ocornut 26d04c948f Tables: Fixed positioning of Sort icon on right-most column with some settings (not resizable + no borders). (#4918). 3 years ago
ocornut 91ae56af45 Removed support for legacy arithmetic operators (+*/) when inputing text into a slider/drag. (#4917, #3184) 3 years ago
ocornut 673f5e588d IO: moved fields to put more focus on the new functions + update misc docs/references + update main.mm in Apple+Metal example (#4858) 3 years ago
ocornut 7374b96f5c IO: Added input queue. (#4858, #2787, #1992, #3383, #2525, #1320) 3 years ago
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)
3 years ago
ocornut b6582a471a Backends: OSX: Fix Game Controller nav mapping to use shoulder for both focusing and tweak speed. (#4759) 3 years ago
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.
3 years ago
ocornut eb823655af Removed support for pre-C++11 compilers. We'll stop supporting VS2010. (#4537)
Build all
3 years ago
Adheesh Trivedi f84c93d834
Update BACKENDS.md (#4909) 3 years ago
ocornut 6188e94108 Examples: Vulkan: fill Subpass and MSAASamples to increase discoverability (#4886) + IO docs update (#4858)
https://github.com/mosra/magnum-integration/pull/89
3 years ago
ocornut 200a8f1ea2 Backends: GLFW: Update mouse inputs using glfwSetCursorPosCallback() (breaking) + fallback to provide it when focused but not hovered/captured + update MousePos before MouseButtons.
+ Allegro5 remove unnecessary clear.
3 years ago
ocornut 98ce013242 Backends: SDL: Update mouse inputs using SDL_MOUSEMOTION/SDL_WINDOWEVENT_LEAVE + fallback to provide it when focused but not hovered/captured + update MousePos before MouseButtons. 3 years ago
ocornut bf4de2a46b Backends: Win32: Update mouse inputs using WM_MOUSEMOVE/WM_MOUSELEAVE + fallback to provide it when focused but not hovered/captured + update MousePos before Key Modifiers. 3 years ago
ocornut 7f8a89c25c Backends: Win32, SDL: maintain MouseButtonsDown instead of using IsAnyMouseDown(). Internals: added GetInputSourceName(). 3 years ago
Liu Liu 457d4b7b72 Backends: OSX: Adedd basic IME support for macOS. (#3108, #2598) 3 years ago
Théo Monnom 0818a42396 Backend: WebGPU: Fixed incorrect size parameters in WGPU backend (#4891)
+ squash SDL alignment bits.
3 years ago
ocornut e8172fdfbc Rename io.AddKeyModEvent() -> io.AddKeyModsEvent() and updated backends accordingly. (#2625, #4858)
Amend 790132a (breaking)
3 years ago
thedmd fe646ea591 Backends: SDL2: Update to use io.AddEventKey() will full key map (#2625, #4858) + created localized key (using keycode instead of scancode) (#456)
Legacy indexing stills uses Scancode
3 years ago
ocornut bf08c13e9b Inputs: Extra Keys / AddKeyEvent(): bidirectional mapping, basic CI, simplify backends, asserts on misuses, tested backward compat. (#2625, #4858, #2787)
(edit: simplified backends merged into previous commits to make history clearer)
3 years ago
ocornut afffcd5810 Inputs: rename ImGuiKey_KeyPadEnter > ImGuiKey_KeypadEnter (#2625) 3 years ago