Commit Graph

7776 Commits

Author SHA1 Message Date
ocornut f104967c68 Comments 2024-02-08 12:10:14 +01:00
ocornut 06ce312745 InputText: Internal: added reload from user-buf feature. (#2890)
Very highly requested feature (#6962, #5219, #3290, #4627, #5054, #3878, #2881, #1506, #1216, #968).
Also useful for interactive completion/selection popups (#2057, #718)
Based on @kudaba PR. Design for Inputtext V2 should make this obsolete.
2024-02-07 22:04:18 +01:00
Bruce Mitchener f50ddc431e
Fixed some typos. (#7282) 2024-02-01 18:30:00 +01:00
Bruce Mitchener 6172c22c5d
CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 2024-02-01 16:07:29 +01:00
ocornut 96839b445e Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other.
See test "inputs_owner_single_mod"
2024-01-25 16:51:07 +01:00
ocornut 7194756370 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) 2024-01-25 15:42:19 +01:00
Peter0x44 f1960b60c1 Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266)
There are two issues here - first, this macro uses AT&T specific syntax with $, which is not necessary. Also, some assemblers (nasm) emit different bytes for "int 3" and "int3", so it's better to use "int3" (cd 03 vs cc)

More importantly, GDB has some failing assertion whenever stepping after hitting an "int3" instruction. This makes it practically useless, as is. For some reason, putting a nop afterwards as a workaround is okay.

Related discussions:
https://sourceware.org/bugzilla/show_bug.cgi?id=31194
https://lists.sr.ht/~skeeto/public-inbox/%3C2d3d7662a361ddd049f7dc65b94cecdd%40disroot.org%3E
2024-01-25 11:48:16 +01:00
ocornut 8491cf36ad Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed.
Amend fc134f5
2024-01-24 18:53:36 +01:00
ocornut 9176eedf24 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 2024-01-24 18:51:00 +01:00
ocornut 1509842107 Backends: OpenGL3: Shallow tweak of compile-time extensions detection.
Detect polygon mode using same method as others (not define/symbol).
IMGUI_IMPL_OPENGL_MAY_HAVE_EXTENSIONS -> IMGUI_IMPL_OPENGL_HAS_EXTENSIONS
2024-01-24 15:21:46 +01:00
Clément Gallet 1ce41f6218 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253)
Amended with (bd->GlVersion >= 210) checks.
2024-01-24 15:01:59 +01:00
ocornut 81e0be856a Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) 2024-01-24 14:27:43 +01:00
ocornut a201af7354 Added SetNextItemShortcut() wip function. (#456)
Mark widget as hovered. Amend d10641b.
2024-01-22 18:38:54 +01:00
ocornut 4c2c09450a Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456)
Amend d10641b
2024-01-22 18:26:45 +01:00
ocornut 5b5e9bd0cb Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 2024-01-22 17:43:58 +01:00
ocornut 7c3fa7d049 Refactor: moved section in imgui_internal.h 2024-01-22 17:42:00 +01:00
rajveermalviya 9266c0d2d1 Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 2024-01-22 15:37:00 +01:00
ocornut 595eb86624 Changelog, comment, minor data compaction 2024-01-22 15:27:36 +01:00
ocornut 6850194f60 CI: Fixes WGPU example build. 2024-01-22 15:01:21 +01:00
ocornut 5fc0a361b2 Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 2024-01-22 14:54:45 +01:00
ocornut 831d42c1ab Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) 2024-01-22 14:53:30 +01:00
ocornut e3c7ff944d Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually.
Also aimed at reducing diff for https://github.com/ocornut/imgui/pull/7132 tho this will lead in conflict.
2024-01-22 14:37:53 +01:00
Frank McCoy 15908502ed Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 2024-01-22 11:15:14 +01:00
Michał Cichoń 788747f863
Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 2024-01-22 10:45:41 +01:00
ocornut 763100b385 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) 2024-01-19 18:37:21 +01:00
ocornut c7edb446ca Shortcut(): always test ownership.
- It doesn't sense to test route without ownership (which may be overrided by code not using routing)
- It also wouldn't be possible to call Shortcut() with _None anyway, since successful routing sets ownership.
Tangential to experiments for #7237
2024-01-19 16:40:24 +01:00
ocornut 1844f903d5 Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut
InputText: no need to call SetShortcutRouting() directly.
Tangential to experiments for #7237
2024-01-19 16:22:45 +01:00
ocornut 5ddfbb80d8 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2024-01-19 14:52:33 +01:00
ocornut 2f48337335 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. 2024-01-19 14:50:38 +01:00
ocornut d7c2a0e38f Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 2024-01-17 18:21:04 +01:00
ocornut 3b828d3701 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2)
Diff not ideal (in Fork it looks like ItemSize is moved) but understandable at a glance.
2024-01-17 17:34:28 +01:00
ocornut ff5f3aa38b Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1)
Moved KeepAliveID() as well for increased locality.
Adding dummy ItemAdd() placeholder to facilitate diffing (otherwise single commit single diff is a mess).
2024-01-17 17:32:50 +01:00
ocornut 1a48a63446 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 2024-01-17 15:55:36 +01:00
ocornut 33fabdf392 Scrollbar() doesn't forcefully mark itself as hovered when held.
Weirdly as old as when dinosaurs roamed earth, aka first commit (per-1.0).
+ Minor alignment in both sense of the term :) Reduce padding in ImGuiNextItemData.
2024-01-17 15:47:14 +01:00
ocornut d431d85839 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) 2024-01-17 15:33:12 +01:00
ocornut f0d1f61fa5 Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 2024-01-17 15:23:30 +01:00
ocornut 095665977f Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId.
Aimed at allowing activating another item with a shortcut without losing NavId.
Initial logic from c2cb2a69, with minor amends db5f1b79c, cea78cc57.
2024-01-17 14:52:05 +01:00
ocornut d10641b04a Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 2024-01-17 14:02:07 +01:00
ocornut 03417cc77d Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 2024-01-17 13:26:02 +01:00
ocornut 5fdcdf7080 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 2024-01-16 17:51:14 +01:00
ocornut 80d5cb1ab1 Comments around ImGuiInputFlags. 2024-01-16 16:25:08 +01:00
ocornut 1cc0eb4d32 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 2024-01-16 12:32:00 +01:00
ocornut 46e5f44ec8 Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456)
Amend d474836
Begin: tweak clearing of CurrentWindow as FocusWindow() relies on it now.
Addded SetWindowParentWindowForFocusRoute() helper.
2024-01-16 11:39:41 +01:00
ocornut e0c8c80ada Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 2024-01-15 17:33:47 +01:00
ocornut 4b20a0217e Internals: add window to FocusScopeStack. (#6798) 2024-01-15 17:33:47 +01:00
ocornut 2156db7a07 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) 2024-01-15 17:33:23 +01:00
ocornut dd0efdc637 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226)
Amend 70f2aaff
2024-01-15 17:32:11 +01:00
ocornut 8a3dfda8d0 Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'.
Amend 3a90dc38 (#2589, #2598, #3108, #3113, #3653, #4642)
2024-01-15 11:30:52 +01:00
ocornut 6228c2e1ec Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 2024-01-11 20:22:37 +01:00
ocornut 70bb6d1e79 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 2024-01-11 14:57:38 +01:00