Commit Graph

1905 Commits

Author SHA1 Message Date
ocornut
a93f7db875 Misc merge/small stuff from docking to reduce drift.
Among other things:
- merged cfd23957 (#7940, #7823), also see ac64b6563 (#6716): moved above on 2023/08/14 in both branches.
- moving the RenderDimmedBackgrounds() call, from f422e782, see 676497fe intently undoing ac64b65 -> confusing. (#6716)
2024-09-03 20:55:00 +02:00
Yan Pujante
30dcdcbe73 Backends: GLFW: Emscripten: use OpenURL() when available and using EMSCRIPTEN_USE_PORT_CONTRIB_GLFW3. Fixes popup blocked in some browsers. (#7915, #7660) 2024-09-03 19:32:00 +02:00
ocornut
4832027eb6 Examples: SDL3: Update for API changes: SDL_Init() returns 0 on failure. 2024-09-03 19:11:51 +02:00
Matt Guerrette
6a7319543c Backends: SDL3: following SDL3 reverting their change, result of SDL_GetGamepads must be freed. (#7918, #7898, #7807) 2024-09-03 18:50:10 +02:00
ocornut
ee9e3a2ed6 Tabs: avoid queuing a refocus when tab is already focused, which would have the side-effect of e.g. closing popup on a mouse release. (#7914)
+ Debug Log: add details about closed popups.
2024-09-03 18:34:18 +02:00
omar
4a06fe59b4
Update FONTS.md (#7944) 2024-09-03 15:32:40 +02:00
ocornut
864a2bf6b8 Tables: another attempt at making contents not overlap the bottom and right border in a scrolling table. (#6765, #3752, #7428) 2024-08-23 19:12:54 +02:00
ocornut
a131c3e611 Tables: revert a34071876 extending outer bottom/right border by 1, this is not the right solution. (#6765, #3752) 2024-08-23 18:24:44 +02:00
ocornut
0b9adc2c79 BeginChild: (BREAKING) renamed ImGuiChildFlags_Border to ImGuiChildFlags_Borders.
Amend 7713c2925 + renamed similar argument in other functions.
2024-08-23 15:28:42 +02:00
ocornut
1e939fcc32 Tooltips, Drag and Drop: made it possible to override BeginTooltip() position while inside a drag and drop source or target. (#6973) 2024-08-23 14:56:09 +02:00
ocornut
5de7f69cbb (BREAKING) Commented out obsolete ImageButton(). (#5533, #4471, #2464, #1390) 2024-08-22 20:12:23 +02:00
ocornut
214977e5fd IO: (BREAKING) moved io.GetClipboardTextFn, io.SetClipboardTextFn to platform_io.Platform_GetClipboardTextFn, platform_io.Platform_SetClipboardTextFn. 2024-08-22 20:12:23 +02:00
ocornut
e54f240ea0 IO: (BREAKING) moved io.PlatformLocaleDecimalPoint to platform_io.Platform_LocaleDecimalPoint. (#7389, #6719, #2278) 2024-08-22 20:12:12 +02:00
ocornut
9ff60ae31d IO: (BREAKING) moved GetIO().PlatformSetImeDataFn to GetPlatformIO(.Platform_SetImeDataFn. (#7660) 2024-08-22 20:11:55 +02:00
ocornut
ba2f4a2cd5 IO: (BREAKING) moved GetIO().PlatformOpenInShellFn to GetPlatformIO(.Platform_OpenInShellFn. (#7660) 2024-08-22 20:11:36 +02:00
ocornut
e6460722ea IO: Added GetPlatformIO(), ImGuiPlatformIO, currently empty. 2024-08-22 18:17:42 +02:00
ocornut
8e40104795 Backends: GLFW: passing null window to glfwGetClipboardString()/glfwSetClipboardString(). 2024-08-22 18:13:34 +02:00
ocornut
bf75504d7a Style: added PushStyleVarX(), PushStyleVarY() helpers to modify only one component of a ImVec2 var.
+ tweak existing function to early out on error.
2024-08-22 13:55:42 +02:00
ocornut
521f84a3a9 InputText: fixed an issue programmatically refocusing a multi-line input which was just active. (#4761, #7870)
Amend 66f0fb986, c5db276521
2024-08-21 14:26:53 +02:00
ocornut
8a946b69e9 InputText: allow callback to update buffer while in read-only mode (fix for imgui_memory_editor 0.54 in read-only mode).
See https://github.com/ocornut/imgui_club/pull/46
2024-08-21 13:26:33 +02:00
ocornut
e471206b08 Windows: adjust default ClipRect to better match rendering of thick borders. (#7887, #7888 + #3312, #7540, #3756, #6170, #6365) 2024-08-20 17:54:42 +02:00
ocornut
eb7201b902 Fonts: Made it possible to use PushFont()/PopFont() calls accross Begin() calls. (#3224, #3875, #6398, #7903) 2024-08-20 15:37:12 +02:00
ocornut
ecb1962013 IO, InputText: missing changelog entry (amend 092c88d) + readme note on missing features. 2024-08-20 12:15:54 +02:00
ocornut
2d99052d1d Backends: SDL2, SDL3: storing SDL_WindowID inside ImGuiViewport::PlatformHandle instead of SDL_Window*. (#7853)
This will be used to support filtering of events with multi-viewports.
2024-08-19 14:43:43 +02:00
ocornut
1b61d55079 Backends: SDL2, SDL3: ignore events of other SDL windows, amends + wrapping into a function as it'll be convenient for multi-viewport check. (#7853)
+ Misc typo fix.
2024-08-19 14:43:40 +02:00
ocornut
29fadad193 TextLink(), TextLinkOpenURL(): change mouse cursor to Hand shape when hovered. (#7885, #7660) 2024-08-13 14:30:35 +02:00
ocornut
9f8f5e1145 MultiSelect+TreeNode: default open behavior is OpenOnDoubleClick + OpenOnArrow when used in a multi-select context without any OpenOnXXX flags set. (#7850) 2024-08-01 17:28:47 +02:00
ocornut
2981a10c53 MultiSelect, TreeNode, Drag and Drop: fixed an issue where carrying a drag and drop payload over an already open tree node would select it. (#7850) 2024-08-01 17:16:13 +02:00
ocornut
71ee2ce367 Examples: GLFW: rework examples main loop to handle minimization without burning CPU or GPU by running unthrottled code. (#7844)
Backends: GLFW: added ImGui_ImplGlfw_Sleep() helper.
2024-07-31 17:33:24 +02:00
ocornut
887478793b Examples: SDL2 (all), SDL3 (all), Win32+OpenGL3: Rework examples main loop to handle minimization without burning CPU or GPU by running unthrottled code. (#7844) 2024-07-31 17:11:13 +02:00
ocornut
dcf54782d4 Version 1.91.WIP 2024-07-31 16:34:28 +02:00
ocornut
8199457a7d Version 1.91.0 2024-07-30 16:56:31 +02:00
ocornut
c2a3d5e47b Comments, minor tweaks to ImGuiTextFilter. 2024-07-29 22:34:34 +02:00
ocornut
df38704926 Added SetNextItemStorageID() for tree nodes. (#7553, #6990, #3823, #1131)
Undo/amend 7c6d4ff.
2024-07-29 22:31:52 +02:00
Rémi Hérilier
c7b9256097 Selectable: added ImGuiSelectableFlags_Highlight flag to highlight items independently from the hovered state. (#7820)
Demo: Make the Widget/List boxes show how to use forced highlighting.
2024-07-29 12:05:08 +02:00
Laurent Dufresne
96460a8a12 InputText: Added '\' and '/' as word seperator. (#7824, #7704)
Adding those seperators means that ctrl+(left|right)-arrows and ctrl+backspace will stop at slashes, which is more inline with how most software works and generally is very convenient when dealing with paths or urls.
2024-07-29 11:23:47 +02:00
ocornut
79e83d6535 Docs: misc update. 2024-07-29 11:17:31 +02:00
ocornut
692bee5f22 Added GetID(int) variant for consistency. (#7111) 2024-07-26 15:28:06 +02:00
ocornut
b3ba6b3095 Added io.ConfigNavSwapGamepadButtons to swap Activate/Cancel (A<>B) buttons, to match the typical "Nintendo/Japanese consoles" button layout when using Gamepad navigation. (#787, #5723) 2024-07-26 14:07:29 +02:00
ocornut
b20f62b162 Obsoleted GetContentRegionMax(). 2024-07-25 16:20:44 +02:00
ocornut
aad86b8756 Obsoleted GetWindowContentRegionMin() and GetWindowContentRegionMax().
You should never need those functions. You can do everything with GetCursorScreenPos() and GetContentRegionAvail().
2024-07-25 15:53:55 +02:00
ocornut
e3da939b86 Groups, Tables: fixed EndGroup() failing to correctly capture current table occupied size. (#7543)
See "layout_group_endtable" test.
2024-07-24 18:41:51 +02:00
ocornut
b67b375ae6 Debug Log: fixed incorrect checkbox layout when partially clipped., doesn't parse 64-bits hex value as ImGuiID lookups. 2024-07-24 16:04:10 +02:00
ocornut
97ff9bd370 Nav: fixed c licking window decorations (e.g. resize borders) from losing focused item when within a child window using ImGuiChildFlags_NavFlattened.
In essence, using ImGuiFocusRequestFlags_RestoreFocusedChild here is a way to reduce changes caused by FocusWindow(), but it could be done more neatly.
See amended "nav_flattened" test.
2024-07-22 15:04:25 +02:00
ocornut
c3dca77a19 Demo: rework Property Editor. 2024-07-22 14:49:16 +02:00
Thomas Stehle
da36336321 TabBar, Style: added style option for the size of the Tab-Bar Overline (#7804)
Amend 21bda2e.
2024-07-22 10:58:16 +02:00
ocornut
eb72b5a8ee Backends: SDL3: Update for API changes: SDL_GetGamepads() memory ownership change. (#7807) 2024-07-22 10:49:22 +02:00
ocornut
f9cda1fa24 Inputs: added SetItemKeyOwner(ImGuiKey key) in public API. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 2024-07-19 18:39:07 +02:00
ocornut
2546d0a0db Demo: moved ExampleTreeNode, ExampleMemberInfo above in the demo file. Tidying up index.
+ change ExampleTreeNode::UID from ImGuiID to int to not suggest that the user ID needs to be of a certain type
2024-07-19 14:52:24 +02:00
ocornut
02c31a8dd1 MultiSelect: added Changelog for the feature. Removed IMGUI_HAS_MULTI_SELECT. 2024-07-18 18:19:22 +02:00
ocornut
c2d21ab04f Backends: SDL3: Update for API changes: SDL_GetClipboardText() string ownership change. (#7801) 2024-07-18 14:02:27 +02:00
ocornut
8bab3eab6a Clipper: added SeekCursorForItem() function, for use when using ImGuiListClipper::Begin(INT_MAX). (#1311)
Tagging #3609 just in case we made a mistake introducing a regression (but tests are passing and have been extended).
2024-07-17 18:16:06 +02:00
ocornut
669021be4c Style: close button and collapse/window-menu button hover highlight made rectangular instead of round.
The reason they were round in the first place was to work better with rounded windows/frames.
However since the 4a8142449 rework #6749 we can naturally use a tigher bounding box and it seems to work ok either way.
2024-07-17 15:56:34 +02:00
ocornut
0e4dcfa552 Obsoleted PushTabStop()/PopTabStop() in favor of using new PushItemFlag()/PopItemFlag() with ImGuiItemFlags_NoTabStop. 2024-07-15 18:57:46 +02:00
ocornut
3de75138d1 (Breaking) Renamed ImGuiSelectableFlags_DontClosePopups to ImGuiSelectableFlags_NoAutoClosePopups. (#1379, #1468, #2200, #4936, #5216, #7302, #7573) 2024-07-15 18:46:34 +02:00
ocornut
0de88a928d Added ImGuiItemFlags_AutoClosePopups as a replacement for internal's ImGuiItemFlags_SelectableDontClosePopup. (#1379, #1468, #2200, #4936, #5216, #7302, #7573) 2024-07-15 18:46:34 +02:00
ocornut
b4ca869c40 (Breaking) Obsoleted PushButtonRepeat()/PopButtonRepeat() in favor of using new PushItemFlag()/PopItemFlag() with ImGuiItemFlags_ButtonRepeat. 2024-07-15 18:38:18 +02:00
ocornut
7e0800e718 Added PushItemFlag(), PopItemFlag(), ImGuiItemFlags. 2024-07-15 18:38:18 +02:00
ocornut
46691d172e Demo: Reworked "Property Editor" demo in a manner that more ressemble the tree data and struct description data that a real application would want to use. 2024-07-15 17:14:01 +02:00
wermi
df3a74389e Backends: SDL3: Update for API changes: SDL_GetProperty() change to SDL_GetPointerProperty(). (#7794) 2024-07-15 11:16:26 +02:00
ocornut
a8e96ae21a Backends: GLFW+Emscripten: Fixed build (#7647) 2024-07-08 22:26:14 +02:00
Yan Pujante
6816789a6b Backends: GLFW+Emscripten: (Breaking) Renamed ImGui_ImplGlfw_InstallEmscriptenCanvasResizeCallback() to ImGui_ImplGlfw_InstallEmscriptenCallbacks(), added GLFWwindow* parameter. (#7647, #7600)
+ Fixed Emscripten warning when using mouse wheel on some setups.
2024-07-08 22:02:48 +02:00
Aemony
9504068f66 Backends: Win32: fixed ImGuiMod_Super being mapped to VK_APPS instead of VK_LWIN||VK_RWIN (#7768, #4858, #2622)
Amend 075576744

The `ImGui_ImplWin32_UpdateKeyModifiers()` function maps `ImGuiMod_Super` to `VK_APPS`, the "Application" key located between the Right Windows (Super) and Right Control keys on the keyboard, see https://conemu.github.io/en/AppsKey.html

This means that when using `ImGui::GetIO().KeySuper` to try to get the down state of the `VK_RWIN` or `VK_LWIN` keys, it'll always return FALSE when either of those keys are held down, and only return TRUE when `VK_APPS` is held down.
2024-07-08 13:59:07 +02:00
ocornut
0a73c6ec3f Misc tweaks, comments. 2024-07-03 18:02:59 +02:00
ocornut
380b3559c6 Backends: GLFW,SDL2: Added ioPlatformOpenInShellFn handler for web/Emscripten versions. (#7660) 2024-07-02 18:06:19 +02:00
ocornut
5496050f5f Added TextLink(), TextLinkOpenURL() hyperlink widgets. (#7660) 2024-07-02 17:21:44 +02:00
ocornut
ddd4c9d6b9 Commented out obsolete ImGuiModFlags and ImGuiModFlags_XXX values (renamed to ImGuiKeyChord and ImGuiMod_XXX in 1.89). (#4921, #456) 2024-07-02 16:03:18 +02:00
ocornut
fb799bba7f (Breaking) IO, IME: renamed platform IME hook io.SetPlatformImeDataFn() -> io.PlatformSetImeDataFn() and added explicit context. 2024-07-02 15:48:32 +02:00
ocornut
8f36798035 IO: added io.PlatformOpenInShellFn handler to open a link/folder/file in OS shell, added IMGUI_DISABLE_DEFAULT_SHELL_FUNCTIONS. (#7660) 2024-07-02 15:36:08 +02:00
ocornut
7e0b3b9caf Debug Log: Added "Configure Outputs.." button. (#5855) 2024-07-02 12:10:33 +02:00
ocornut
a62794359a Debug Tools: Added IMGUI_DEBUG_LOG(), ImGui::DebugLog() in public API. (#5855) 2024-07-02 12:00:55 +02:00
ocornut
12f92518bc Backends: SDL3: Update for API changes: SDLK_x renames and SDLK_KP_x removals (#7761, #7762)
Also updated function signature in SDL2 backend to match and because it is expected we will use that data (as per #7672)
2024-07-02 11:36:13 +02:00
ocornut
84cc72f372 Version 1.91.0 WIP 2024-07-01 19:02:42 +02:00
ocornut
cb16be3a3f Version 1.90.9 2024-07-01 17:03:21 +02:00
ocornut
c554c402d3 IO: do not claim io.WantCaptureMouse=true on the mouse release frame of a button which was pressed over void. (#1392) 2024-07-01 16:13:38 +02:00
ocornut
50a0f18e6a imgui_freetype: fixed divide by zero while handling FT_PIXEL_MODE_BGRA glyphs. (#7267, #3369) 2024-07-01 14:58:35 +02:00
ocornut
dd5c30d2d7 Disabled: Reworked 1.90.8 behavior of Begin() not inheriting current BeginDisabled() state. Only tooltip are clearing that state. (#211, #7640) 2024-07-01 14:32:11 +02:00
ocornut
67216910fb Examples: SDL3: Remove use of SDL_HINT_IME_NATIVE_UI. 2024-07-01 12:10:54 +02:00
Max Ortner
ccf3ee674a Backends: SDL3: update for SDL_SetTextInputRect() -> SDL_SetTextInputArea() api change. (#7760, #7754) 2024-07-01 12:10:00 +02:00
ocornut
751bbf38ba Backends: SDLRenderer3: Update for SDL_RenderGeometryRaw() API changes. 2024-07-01 12:07:59 +02:00
Kevin Coghlan
372eebbeb2
Fix typo, rename ImGuisliderFlags_WrapAround flag to ImGuiSliderFlags_WrapAround. (#7752, #7749) 2024-06-28 18:06:16 +02:00
ocornut
0403096a9d Drags: added ImGuisliderFlags_WrapAround flag for DragInt(), DragFloat() etc. (#7749) 2024-06-28 15:59:36 +02:00
ocornut
404af57004 Backends: OpenGL2, OpenGL3: ImGui_ImplOpenGL3_NewFrame() recreates font texture if it has been destroyed by ImGui_ImplOpenGL3_DestroyFontsTexture(). (#7748)
Analogous to change to Vulkan backend in 1.90.
2024-06-28 15:08:54 +02:00
ocornut
77d582fa37 Windows: BeginChild(): fixed a glitch when during a resize of a child window which is tightly close to the boundaries of its parent. (#7706) 2024-06-27 18:04:24 +02:00
ocornut
953d40c929 Tables: moved TableGetHoveredColumn() to public API. (#7715, #3740) 2024-06-27 17:17:54 +02:00
ocornut
fbb903e158 Inputs: fixed using Shortcut() or SetNextItemShortcut() within a disabled block bypassing the disabled state. (#7726) 2024-06-27 16:37:33 +02:00
ocornut
7c2476986b Backends: SDL3: Update for SDL_StartTextInput()/SDL_StopTextInput() API changes. (#7735) 2024-06-26 14:45:25 +02:00
ocornut
32f9dfc126 Viewports: Backported 'void* ImGuiViewport::PlatformHandle' from docking branch for use by backends. 2024-06-26 14:32:48 +02:00
ocornut
eb1cc4b8b4 Metrics/Debugger: Browsing a Storage perform hover lookup on identifier. 2024-06-26 12:17:22 +02:00
Martin Ejdestig
a18fb406ac Backends: Vulkan: Remove Volk/ from volk.h #include directives (#7722, #6582, #4854) 2024-06-24 13:09:00 -07:00
Gary Geng
48e7e7bfe8
Backends: SDL3: Follow SDL3 removal of keysym field in SDL_KeyboardEvent (#7729) 2024-06-23 15:26:52 -07:00
cfillion
755bf2b8c2 (Breaking) Move ImGuiWindowFlags_NavFlattened to ImGuiChildFlags_NavFlattened. (#7687) 2024-06-21 16:00:57 -07:00
ocornut
8067d05f74 IO: added ClearInputMouse(). made ClearInputKeys() not clear mouse data. (#4921)
Amend 6aa408c6a
2024-06-21 10:16:54 -07:00
ocornut
77d9f80754 Drag and Drop: Added ImGuiDragDropFlags_PayloadNoCrossContext and ImGuiDragDropFlags_PayloadNoCrossProcess flags. 2024-06-20 11:37:10 -07:00
ocornut
8c318dc770 Drag and Drop: (Breaking) renamed ImGuiDragDropFlags_SourceAutoExpirePayload to ImGuiDragDropFlags_PayloadAutoExpire. (#1725, #143) 2024-06-20 11:36:45 -07:00
ocornut
50709454b3 Drag and Drop: BeginDragDropSource() with ImGuiDragDropFlags_SourceExtern assume a mouse button being pressed. (#143) 2024-06-19 19:08:20 -07:00
ocornut
8c517fee35 Drag and Drop: Fixes an issue when elapsing payload would be based on last payload frame instead of last drag source frame. 2024-06-19 14:42:27 -07:00
ocornut
32a037c030 Drag and Drop: BeginDragDropSource() with ImGuiDragDropFlags_SourceExtern. (#143)
Amend 0c6e260f7
2024-06-19 13:37:10 -07:00
ocornut
21bda2ed99 TabBar, Style: added ImGuiTabBarFlags_DrawSelectedOverline and ImGuiCol_TabSelectedOverline, ImGuiCol_TabDimmedSelectedOverline. 2024-06-18 17:41:43 -07:00
ocornut
1b9593e889 Style: (Breaking) renamed ImGuiCol_TabActive -> ImGuiCol_TabSelected, ImGuiCol_TabUnfocused -> ImGuiCol_TabDimmed, ImGuiCol_TabUnfocusedActive -> ImGuiCol_TabDimmedSelected.
Amend #261, #351
2024-06-18 17:37:29 -07:00