ocornut
8877eab393
Docs: Describe IMGUI_DISABLE_FILE_FUNCTIONS in imconfig ( #3628 , #2734 )
2021-05-21 18:44:22 +02:00
ocornut
b474bff6c6
Nav: Fixed single frame CTRL+Tab from properly enabling the menu layer of target window if it doesn't have other active layers.
2021-05-21 18:39:17 +02:00
ocornut
5d77b6f274
Docs: update links, sponsors
2021-05-21 15:24:57 +02:00
ocornut
45f5ed52c1
Menus: made MenuItem() in a menu bar reflect the 'selected' argument with a highlight. ( #4128 )
2021-05-20 15:00:36 +02:00
ocornut
fd06dc511f
Backends: GLFW: Adding bound check in KeyCallback because GLFW appears to send -1 on some setups. [ #4124 ]
2021-05-19 19:03:15 +02:00
ocornut
4181ccceea
Backends: WebGPU: Fix build, amend 3c72e51. ( #3761 )
2021-05-19 18:50:31 +02:00
ocornut
e7e170c534
InputText: Internal renaming to use our own types to clarify code a little bit.
2021-05-18 14:48:54 +02:00
ocornut
26a1bbfe1e
InputText: Fixed CTRL+Arrow or OSX double-click leaking the presence of spaces when ImGuiInputTextFlags_Password is used. ( #4155 , #4156 ) [@michael-swan]
2021-05-18 14:46:25 +02:00
ocornut
41030cbfe2
Tweak computation of io.Framerate so it is less biased toward high-values in the first 120 frames. ( #4138 )
2021-05-16 20:37:38 +02:00
ocornut
4ce6bd8cff
Tables: sharing splitter and sort buffers between tables, reducing memory footprints. ( #3740 )
...
+ GC pass on that data.
2021-05-07 20:49:52 +02:00
ocornut
32c453ae53
Tables: sharing transient buffers between tables, reducing memory footprints. ( #3740 )
2021-05-07 20:49:52 +02:00
ocornut
84545dbe6f
Disabling some of MSVC most aggressive Debug runtime checks for some simple/low-level functions
...
(e.g. ImVec2, ImVector) leading to a 10-20% increase of performances with MSVC "default" Debug settings.
2021-05-06 13:04:35 +02:00
ocornut
393941ceea
Refactor focusable/tabbalbe item registration toward allowing to handle it prior to clipping (not yet the case) ( #343 , #4079 )
...
Now performed in ItemAdd(). It can't be trivially moved above clipping effectively because it would require us to scroll to be useful, meaning we'd be better off locking the bounding box a frame earlier. Still wip.
As-is this commit has no value for end-user, but it's a reengineering that moves us closer to the solution. + Internals: moved internal flags.
2021-04-30 22:40:02 +02:00
ocornut
2c3f25d2d9
Nav: Fixed Tabbing initial activation from skipping the first item if it is tabbable through. ( #787 )
2021-04-30 21:49:40 +02:00
ocornut
9b90639577
Internals: ItemFlags is a shared resource as advertised. Fix Begin/PushItemFlags/End sequence (mostly for consistency)
2021-04-30 21:34:17 +02:00
ocornut
10a1c5b021
TestEngine: fixed wrong flags passed to ItemInfo queries. Was luckily/misleadingly not causing issues as the test-engine flags we tested were upper bits not colliding with the other type.
...
Moved those flags higher as well. (unrelated to the fix itself)
2021-04-30 19:32:41 +02:00
ocornut
788e91aece
Fixes for MSVC static analyzers (wider range of versions). ( #3938 , #4073 ) + warning fix ( #4089 ) + comments.
2021-04-30 18:21:07 +02:00
ocornut
89162a04f4
Fixes for PVS Studio and MSVC static analyzers. Using a macro to suppress single-use MSVC false positives. ( #3938 , #4073 )
2021-04-29 21:20:32 +02:00
ocornut
d28535f351
Fixes for Visual Studio 2019 static analyzers. ( #3938 , #4073 ) + two minor edge case were invalid scalar input (e.g. a sign only) would return buffer as modified.
2021-04-29 17:10:27 +02:00
ocornut
2dec7b3301
InputText: Align caret/cursor to pixel coordinates. ( #4080 )
2021-04-27 13:31:32 +02:00
ocornut
7cdb3850e7
CI: test with ImTextureID as pointer to catch accidental reuse of const ( #4060 )
2021-04-26 10:18:28 +02:00
ocornut
b493cae8c9
Nav: Fixed pressing Escape to leave menu layer while in a popup or child window. ( #787 )
2021-04-23 19:17:20 +02:00
ocornut
4540177ce7
Nav: clear activeid on menu toggle (so pressing Alt leaving an InputText will steal ActiveID. Previously wouldn't not, but ButtonBehavior() hover logic would not show Menu layer item as hovered when ActiveId != 0). ( #787 )
...
(Adjacent to #370 )
2021-04-23 18:50:46 +02:00
ocornut
e61e8aea9c
Nav: clear navid in NavInitWindow() when window is marked with ImGuiWindowFlags_NoNavInputs. ( #787 )
...
(no expected side-effects, maybe consistency, but those NavLastIds[] values would likely have been 0 already)
2021-04-23 18:50:46 +02:00
ocornut
daf97832f1
Internals: Nav: renaming.
2021-04-23 18:39:08 +02:00
ocornut
06545c4f2a
Backends: DirectX9: explicitely setting up more graphics states to increase compatibility with unusual non-default states. ( #4063 )
...
Added D3DRS_FILLMODE, D3DRS_ZWRITEENABLE, D3DRS_RANGEFOGENABLE, D3DRS_SPECULARENABLE, D3DRS_STENCILENABLE, D3DRS_CLIPPING. Reordered some to match order in DX9 headers.
2021-04-23 18:39:07 +02:00
ocornut
bfc4a3347a
Nav: Fixed using SetItemDefaultFocus() on windows with _NavFlattened flag + tools in metrics.
2021-04-22 16:21:29 +02:00
ocornut
25fbff2156
ImDrawList: Revert alteration of normal scaling threshold, for now prioritize preserving property of limiting extents. ( #4053 , #3366 , #2964 , #2868 , #2518 , #2183 )
...
Amend fdda8b8
2021-04-19 14:58:54 +02:00
ocornut
fdda8b8c12
ImDrawList: Fixed/improved thickness of thick strokes with sharp angles. ( #4053 , #3366 , #2964 , #2868 , #2518 , #2183 )
2021-04-19 14:03:21 +02:00
ocornut
936f53229d
Internals: maintaining focus order inside windows + only storing root windows in WindowsFocusOrder[] array. (toward #2304 )
2021-04-16 19:28:24 +02:00
ocornut
770f9daab3
Tables: Better preserve column data (mainly widths) when columns count changes. ( #4046 ) + .ini skips columns with no data.
2021-04-16 18:30:11 +02:00
ocornut
5fed6bdc72
Demo: Improved popups demo and comments.
2021-04-15 15:58:12 +02:00
ocornut
7c9c5dbe9a
Internals: Added ImFloorSigned() + use our own ImFloorSigned() for stb_truetype, compared as matching output for variety of font data. ( #2884 )
2021-04-15 14:27:45 +02:00
ocornut
858ea17eba
Backends: DirectX10, DirectX11: fixed a crash when backing/restoring state if nothing is bound when entering the rendering function. ( #4045 )
2021-04-15 13:29:42 +02:00
ocornut
b957300260
Documentation tweaks ( #4042 )
2021-04-14 15:46:55 +02:00
ocornut
d6a5cc7934
Metrics: hotfix (fix 6ba13349 + f08566b4, #4005 )
2021-04-07 17:57:14 +02:00
ocornut
c283a1da5b
Fixed clipping of multi-line value text when label is single-line + Fixed vertical alignment of single-line value text when label is multi-line. ( #4004 )
2021-04-06 18:35:06 +02:00
ocornut
92b7b1f72b
Scrolling: Fix mouse wheel axis swap when using SHIFT on macOS (system already does it). ( #4010 )
2021-04-06 17:51:21 +02:00
ocornut
00d570e280
Added OpenPopup() ImGuiID overload ( #3993 , #331 )
2021-04-01 17:18:18 +02:00
ocornut
f0fc822837
Fix popup positioning, broken by 84e6fe4. ( #3991 , #3982 )
2021-03-31 19:09:08 +02:00
ocornut
2403ed92a3
Added build/ to gitignore ( #3027 ), Examples: SDL2: Link with shell32.lib required by SDL2main.lib since SDL 2.0.12. [ #3988 , #3884 ] + added batch file for SDL+Vulkan.
2021-03-31 16:19:44 +02:00
ocornut
3c7177c6a7
Internals: storing WindowsHoverPadding in context for external access. + Docs update binaries
2021-03-31 16:06:36 +02:00
ocornut
45c45d2506
Internals: shallow tidying up of the old resize border structure. Make them match the ImGuiDir order. Split GetWindowResizeID() into GetWindowResizeCornerID() and GetWindowResizeBorderID().
2021-03-30 16:44:47 +02:00
ocornut
84e6fe4fc7
Fix IsWindowAppearing() from returning true twice in most cases. ( #3982 , #1497 , #1061 )
2021-03-29 19:45:55 +02:00
ocornut
951c84969b
Popups: fix comment about OpenPopupOnItemClick(). ( #3981 )
2021-03-29 15:49:40 +02:00
ocornut
1dcd3a45cc
ColorEdit4: Alpha default to 255 (instead of 0) when omitted in hex input. ( #3973 )
...
Courtesy of @squadack
2021-03-26 11:34:07 +01:00
ocornut
688e06490e
TabBar: Amend previous commit. Fix tab reordering when tab bar has scrolling.
...
Some tidying up with helpers + honor 16-bit offsets as with other tab bar features (unlikely single reorder can reach that but consistent)
2021-03-25 19:16:24 +01:00
ocornut
a58271c079
Internals: extracted a more reusable BeginViewportSideBar() out of BeginMainMenuBar(). ( #3966 , #3518 )
...
Complement ca34c81c in docking branch which removed assumption that we can't tell size ahead of Begin().
2021-03-25 16:20:42 +01:00
ocornut
aa5431fde2
Tables: Expose TableSetColumnEnabled() in public api. ( #3935 )
2021-03-24 14:36:01 +01:00
ocornut
6f360d6040
Examples: Win32: using a more explicit loop for PeekMessage polling to make the code easier to copy and paste and less error-prone.
2021-03-23 18:22:27 +01:00
ocornut
1491d2c916
Backends: Win32: Clearing keyboard down array when losing focus (WM_KILLFOCUS). ( #2062 , #3532 , #3961 )
2021-03-23 16:48:10 +01:00
ocornut
59da01901e
Scrolling: Fix scroll tracking with e.g. SetScrollHereX/Y() when WindowPadding < ItemSpacing. Fix scroll snapping on edge of scroll region when both scrollbars are enabled.
...
CalcNextScrollFromScrollTargetAndClamp() fixed snapping edge calculation missing ScrollbarSizes.y
2021-03-19 16:58:23 +01:00
ocornut
6e4770ea5c
Examples: Vulkan: Rebuild swapchain on VK_SUBOPTIMAL_KHR. ( #3881 )
...
Ref https://vulkan-tutorial.com/Drawing_a_triangle/Swap_chain_recreation#page_Suboptimal-or-out-of-date-swap-chain
2021-03-18 18:12:52 +01:00
ocornut
61a0908713
Tables comments + Backends: DirectX9: calling IDirect3DStateBlock9::Capture() after CreateStateBlock() which appears to workaround/fix state restoring issues. . ( #3857 )
2021-03-18 18:04:52 +01:00
ocornut
412d6f7efe
Fixes zealous MSVC static analyzers warnings ( #3938 )
...
Other unfixed as I'm not happy with caving to false positives of every analyzers.
2021-03-18 16:10:25 +01:00
ocornut
a1a39c632a
Version 1.83 WIP
2021-03-16 14:45:30 +01:00
ocornut
4bf646e4b0
Drags, Sliders, Inputs: Specifying a NULL format to Float functions default them to "%.3f" to be consistent with the compile-time default. ( #3922 )
2021-03-16 12:59:35 +01:00
ocornut
35b1148efb
Version 1.82
2021-03-15 20:26:48 +01:00
ocornut
352f64697c
Internals: rename legagy tab focus fields to TabFocusXXXX for clarity + removed one unnecessary FocusWindow() call.
2021-03-15 20:10:08 +01:00
ocornut
d94644261d
Drags, Sliders: Support ImGuiSliderFlags_Logarithmic flag with integers. Because why not? ( #3786 )
...
Renamed is_decimal to is_floating_point.
2021-03-15 12:21:37 +01:00
ocornut
287bd9b984
InputText: renamed ImGuiInputTextFlags_AlwaysInsertMode to ImGuiInputTextFlags_AlwaysOverwrite. ( #2863 )
2021-03-12 18:23:30 +01:00
ocornut
033dfd9d35
ImDrawFlags: rework/revert c2d6d26 + 39432bf in a way that is closer to old version and back to opt-in but with default 0 = all corners.
2021-03-12 16:31:46 +01:00
ocornut
fdc2324d9a
Moved 'misc/natvis/imgui.natvis' to 'misc/debuggers/imgui.natvis'
2021-03-11 16:21:46 +01:00
ocornut
39432bfd9c
Amend 0c93238a ImDrawList: upgraded AddRect(), AddRectFilled(), PathRect() to use general ImDrawFlags instead of ImDrawCornersFlags
2021-03-11 16:03:45 +01:00
ocornut
8b9fedba28
Moved Obsolete function block lower in the file + obsoleted old SetScrollHere (->SetScrollHereY)
2021-03-11 12:16:52 +01:00
ocornut
8ed34af6f8
ImDrawList: clarified that PathArcTo()/PathArcToFast() cannot take radius < 0.0f. ( #3491 ) + changed poor-man ceiling in _CalcCircleAutoSegmentCount() to use 0.999999f to reduce gaps
...
Previously it sorts of accidentally worked but would lead to counter-clockwise paths which and have an effect on anti-aliasing.
2021-03-11 10:51:20 +01:00
ocornut
6ba1334903
Nav: internals: renaming ImGuiInputSource so it is not specific to nav. Comments.
2021-03-10 16:36:39 +01:00
ocornut
a64e0eb3a4
Nav: merged SetNavID() and SetNavIDWithRectRel() to improve sanity, moved flags overwrite off them. ( #787 )
2021-03-09 17:21:01 +01:00
ocornut
1c9cc7c117
Nav: tweaks so docking can use same code. NavRestoreLayer restore nav id but Menu key typicallys clears it for menu layer (+ less relying on _ChildWindow flag).
2021-03-09 16:57:13 +01:00
ocornut
4bb5a36f90
Nav: do not clear per-window NavId when window reappears. Process NavInit regardless of current highllight state. Consistently set g.NavLayer in SetNavID(). ( #787 )
2021-03-09 12:39:18 +01:00
ocornut
954b06afe2
Drag and Drop: can use BeginDragDropSource() for other than the left mouse button ( #1637 , #3885 )
...
As long as the item has an ID (for ID-less items will add new functionalities later.
Amend 2c3c5125
2021-03-08 15:50:53 +01:00
ocornut
e842b196df
Amend sanitization of format strings. Support ' without stb_printf. Simpler loops, will also be used for ImStrv branch. ( 8ee77f1) ( #3604 )
...
Widgets: Sliders: Fix a bug where numbers after format specifier (eg. %d123) would cause RoundScalarWithFormatT() return incorrect value.
2021-03-05 18:27:35 +01:00
ocornut
fdebb2e093
Internals: removed HoveredRootWindow, tweak IsWindowHovered().
2021-03-05 15:56:59 +01:00
ocornut
ee643b2ad9
IsItemHovered(): fixed return value false positive when used after EndChild(), EndGroup() or widgets using either... ( #3851 , #1370 )
...
...when the hovered location is located within a child window, e.g. InputTextMultiline().
This is intended to have no side effects, but brace yourself for the possible comeback..
This essentially makes IsItemHovered() not accept hover from child windows, but EndChild/EndGroup are forwarded.
More or less should fix/revert c76f014292 which was a revert of 344d48be3
2021-03-04 19:59:59 +01:00
ocornut
3e6dfd3c1a
ImDrawList: AddImageRounded() compare texid from cmdheader as with other functions. + Made the ImGuiMemAllocFunc / ImGuiMemFreeFunc consistent with our other typedefs ( #3836 )
2021-03-04 14:29:01 +01:00
ocornut
8dd692c29c
Android: Amend backend and examples with minor consistency tweaks. ( #3446 )
2021-03-04 11:07:03 +01:00
ocornut
d8c88bd943
Tables: Fixed unaligned accesses when using TableSetBgColor(ImGuiTableBgTarget_CellBg). ( #3872 )
...
ImSpanAllocator: Support for alignment.
2021-03-04 09:52:03 +01:00
ocornut
1ddaff83d8
Demo: Tweak inputs display.
2021-03-03 18:45:52 +01:00
ocornut
662535f357
Backends: DX9: Fix handling of colored textures ( #3844 , #3868 )
2021-03-03 18:34:07 +01:00
ocornut
25679a411e
Window, Nav: Fixed crash when calling SetWindowFocus(NULL) as the time a new window appears. ( #3865 )
2021-03-02 18:23:08 +01:00
ocornut
4537d98d46
Backends: DX9: Fix to support colored glyphs, using newly introduced 'TexPixelsUseColors' info. ( #3369 , #3844 )
2021-03-02 15:04:34 +01:00
ocornut
23ab4978e4
ImFontAtlas: Added 'bool TexPixelsUseColors' output to help backend decide of underlying texture format. ( #3369 , #3844 )
2021-03-02 15:04:34 +01:00
ocornut
760c394707
Added links to Discussions. Closed Discord, yeah! ( #2748 )
2021-02-25 00:47:37 +01:00
ocornut
3776ba565f
Internals: TabBar: minor tweaks and renaming.
2021-02-24 19:40:15 +01:00
ocornut
6f4b9c65ae
Added commentary about DLL boundaries. Added GetAllocatorFunctions(). Tidying up. ( #3836 )
2021-02-24 19:38:39 +01:00
ocornut
9b32f7bf2d
Fix example_null Makefile for Mingw ( #2590 )
2021-02-22 14:44:06 +01:00
ocornut
edf135c18d
Win32+MinGW: Re-enabled IME functions by default even under MinGW. ( #2590 , #738 )
2021-02-22 14:39:44 +01:00
ocornut
a8f76c23a4
Window: Shrink close button hit-testing region when it covers an abnormally high portion of the window visible area (e.g. when window is collapsed and moved in a corner)to facilitate moving the window away. ( #3825 )
2021-02-18 17:23:10 +01:00
ocornut
0ecdf8167c
DragScalar: Fixed crash when using DragScalar() directly with ImGuiSliderFlags_AlwaysClamp + only one of either p_min or p_max set. ( #3824 ) [@harry75369]
2021-02-18 16:12:41 +01:00
ocornut
c154629152
Backends: Win32: Added ImGui_ImplWin32_EnableAlphaCompositing() helper. ( #2766 , #3447 )
...
Pragma linking with dwmapi.lib (Vista-era, ~9 kb). MinGW users will need to link with -ldwmapi.
2021-02-18 16:04:11 +01:00
ocornut
6a161b8789
Examples: Reworked setup of clear color to be compatible with transparent values. ( #2693 , #2764 , #2766 , #2873 , #3447 , #3813 , #3816 )
2021-02-18 11:38:41 +01:00
ocornut
bda12e5fdd
Backends: Rework blending equation to preserve alpha in output buffer accross all backends. ( #2693 , #2764 , #2766 , #2873 , #3447 , #3813 , #3816 )
...
Some of the viewport ideas from #2766 are not in there yet (e.g. Vulkan: setting compositeAlpha based on cap.supportedCompositeAlpha)
2021-02-18 11:38:41 +01:00
ocornut
27a5bdb916
Backends: Win32: Fixed ImGui_ImplWin32_EnableDpiAwareness() attempting to get SetProcessDpiAwareness from shcore.dll on Windows 8 whereas it is only supported on Windows 8.1.
...
+ Added other helpers for reference (unused currently, other features will want them)
2021-02-17 19:41:41 +01:00
ocornut
fb15d8c858
Improve on automatic circle segment count calculation. ( #3808 ) Amends
2021-02-17 14:22:31 +01:00
ocornut
b47aa46d81
Tables: TableSetupColumn() user id uses ImGuiID as intended (typedef ImU32). internals: added GetCurrentTable(), LeftMostEnabledColumn. Demo/docs tweaks.
2021-02-17 12:18:22 +01:00
ocornut
30b7545841
Version 1.82 WIP
2021-02-15 18:10:14 +01:00
ocornut
61b19489f1
Made a change to CalcWindowSizeAfterConstraint() which MSVC optimizer seems to trip on. (read on)
...
We seldomly modify a local ImVec2 passed as parameter. This should be perfectly legal but libigl stumbled on a what may be a MSVC optimizer bug?
Only seven function in the codebase modify as 'ImVec2 parameter' but this is the only static one (and fairly small that is) which may tempt optimizer to perform optimizations over caller-callee boundaries?
While we can't explain it fully yet and I assume it may haunt us back someday. Might also be chain reaction from some unobvious UB but can't see it right now...
Link: https://github.com/libigl/libigl/issues/1669
2021-02-12 16:34:22 +01:00
ocornut
4df57136e9
Version 1.81
2021-02-10 21:16:58 +01:00
ocornut
647a308ad3
Backends: GLFW: Add ImGui_ImplGlfw_InitForOther() instead of ImGui_ImplGlfw_InitForWebGPU() so it can be used for e.g. DX11. ( #3632 )
...
Amend dff0044
2021-02-10 17:27:33 +01:00
ocornut
f14042ca78
Viewports Added ImGui::GetMainViewport() as a way to get the bounds and work area of the host display. ( #3789 , #1542 )
...
Viewports: Backport a few constructs from 'docking' branch.
Viewports: Added ImGuiViewportFlags_IsPlatformWindow, ImGuiViewportFlags_IsPlatformMonitor, ImGuiViewportFlags_OwnedByApp (none of them were in docking branch yet). ImGuiViewportFlags_IsPlatformMonitor is merely there to convey future intent, not yet used.
Reduce uses of io.DisplaySize.
MainMenuBar: Backport work area handling code from 'docking' branch.
Metrics: Backported "Viewports" debug visualizer from 'docking' branch.
Demo: Rework 'Examples->Fullscreen Window'.
Demo: 'Simple Overlay' demo now moves under main menu-bar (if any) using GetMainViewport()'s work area.
2021-02-10 16:09:53 +01:00