8119759329 
								
							
								 
							
						 
						
							
							
								
								Internals: extracted stack checking code into a ImGuiStackSizes helper struct + added test for FocusScope  
							
							... 
							
							
 
							
							+ renamed g.ColorModifiers > g.ColorStack, g.StyleModifiers > g.StyleVarStack 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								6e94013a3d 
								
							
								 
							
						 
						
							
							
								
								Made ItemFlagsStack and GroupStack shared stacks.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								12ba6f4606 
								
							
								 
							
						 
						
							
							
								
								Fix PushFocusScopeID() + using shared stack. Renamed GetFocusScopeID() to GetFocusedFocusScope() - the two existing functions name are very error prone.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								a3e8dc3f34 
								
							
								 
							
						 
						
							
							
								
								CI: Fix deployment of PVS-Studio license + fix reported error.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								a138855d56 
								
							
								 
							
						 
						
							
							
								
								Hotfix for PushFocusScope() being utterly wrong (until we split the stacks), Added asserts on PopID to help catch bugs, Added GC trigger.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								78f1d2d319 
								
							
								 
							
						 
						
							
							
								
								ImDrawListSplitter: create first draw cmd on demand + Internals: fix incorrect ImBitArraySetBitRange() (only used by tables)  
							
							... 
							
							
 
							
							Make it cheaper to allocate unused draw cmd, can't measure perf difference other our stress tests. 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								13258f5957 
								
							
								 
							
						 
						
							
							
								
								Internals: zero-clearing ImGuiWindow / ImGuiWindowTempData for simplicity. (amend)  
							
							... 
							
							
 
							
							All the non-zero fields previously initialized in ImGuiWindowTempData() are in fact setup in Begin: FocusCounterRegular, FocusCounterTabStop, TextWrapPos, LayoutType, ParentLayoutType 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								7a135a763c 
								
							
								 
							
						 
						
							
							
								
								Fix format warnings when using gnu printf extensions in a setup that supports them (gcc/mingw). ( #3592 )  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								dcfb986fa8 
								
							
								 
							
						 
						
							
							
								
								Made EndFrame() assertion for key modifiers being unchanged during the frame more lenient. ( #3575 )  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								a3f79104df 
								
							
								 
							
						 
						
							
							
								
								Examples: Apple+Metal: Forward events to OS key combinations like CMD+Q can work. ( #3554 )  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								6a0e85c561 
								
							
								 
							
						 
						
							
							
								
								Backends: Vulkan: Add override for the subpass to reference during VkPipeline creation. ( #3579 )  
							
							... 
							
							
 
							
							This allows for binding the pipeline/sending draw commands
(via `ImGui_ImplVulkan_RenderDrawData`) against any subpass, rather than
being restricted to only the first subpass.
Without this, attempting to bind the pipeline against a subpass other than
the first one results in validation layer errors and, at worst, some drivers
failing if the subpass attachments differ. 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								61825c7735 
								
							
								 
							
						 
						
							
							
								
								Tab Bar: Fixed minor/unlikely bug skipping over a button when scrolling left with arrows + InputText: minor optimization.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								2785ac0ee3 
								
							
								 
							
						 
						
							
							
								
								InputText: Fixed updating cursor/selection position when a callback alters the buffer in a way where the byte count is unchanged but the decoded character count changes. ( #3587 )  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								5789e69a62 
								
							
								 
							
						 
						
							
							
								
								Checkbox: Added CheckboxFlags() helper with int* type. Demo: removed extraneous casts.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								5f97809cab 
								
							
								 
							
						 
						
							
							
								
								Misc tidying up (zero-clear structures, more unused default in ClipRetFullscreen, NavApplyItemToResult() coding style fix)  
							
							... 
							
							
 
							
							Zero-clearing more structures
Remove arbitrary default ClipRetFullscreen value in ImDrawListSharedData.
Nav extracted NavApplyItemToResult() function.
Coding style fixes in OSX Backends. 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								046057cebb 
								
							
								 
							
						 
						
							
							
								
								Selectable: Avoid pushing span-column background if clipped.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								7a27b2a282 
								
							
								 
							
						 
						
							
							
								
								Update Readme, links to Useful Widgets, updated a gif.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								2bf5ca7ef2 
								
							
								 
							
						 
						
							
							
								
								ImDrawListClipper: avoid over reserving memory.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								d6a2f7e95e 
								
							
								 
							
						 
						
							
							
								
								Reduced padding + unused storage in ImDrawList (224->192 bytes) + zero-init ImDrawListSplitter and ImDrawList  
							
							... 
							
							
 
							
							+ Readme tweak 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								2fa00656a4 
								
							
								 
							
						 
						
							
							
								
								Fix for IMGUI_DISABLE_METRICS_WINDOW  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								b934b9bb86 
								
							
								 
							
						 
						
							
							
								
								Backends: OSX, Metal: Fix -Wshadow, -Wimplicit-float-conversion, and -Wsign-conversion warnings. ( #3555 )  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								9cca1b2e97 
								
							
								 
							
						 
						
							
							
								
								Replace UTF-8 decoder with one based on branchless version by Christopher Wellons. (not branchless anymore tho)  
							
							... 
							
							
 
							
							Decoding performance increase ~30% 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								3777fbbd81 
								
							
								 
							
						 
						
							
							
								
								Renamed io.ConfigWindowsMemoryCompactTimer to io.ConfigMemoryCompactTimer as the feature will apply to other data structures.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								047d4c4500 
								
							
								 
							
						 
						
							
							
								
								Metrics: Extracted most functions.  
							
							... 
							
							
 
							
							+ avoid using full namesapce prefix 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								044ed22379 
								
							
								 
							
						 
						
							
							
								
								Metrics: Fixed mishandling of ImDrawCmd::VtxOffset in wireframe mesh renderer + omitting trailing empty ImDrawCmd in count + relying on IdxOffset value.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								a129621292 
								
									
								
							
								 
							
						 
						
							
							
								
								Doc: mention IMGUI_USE_WCHAR32 in fonts documentation ( #3562 )  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								6f57d58e82 
								
							
								 
							
						 
						
							
							
								
								Backends: OSX: Fix KeyPadEnter on MacOS. ( #3554 )  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								df35157397 
								
							
								 
							
						 
						
							
							
								
								Drag and Drop: Fix losing drop source ActiveID (and often source tooltip) when opening a TreeNode() or CollapsingHeader() while dragging. ( #1738 )  
							
							... 
							
							
 
							
							Amend 7b3d3798241cd62 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								b7530e5d04 
								
							
								 
							
						 
						
							
							
								
								Revert "Replace UTF-8 decoder with branchless version by Christopher Wellons." ( #3558 )  
							
							... 
							
							
 
							
							This reverts commit b3576dd354 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								b3576dd354 
								
							
								 
							
						 
						
							
							
								
								Replace UTF-8 decoder with branchless version by Christopher Wellons.  
							
							... 
							
							
 
							
							Decoding performance increase ranges from 30-40%.
Changes:
* Errors handling near the end of string changed. If input does not contain enough bytes, decoder returns `IM_UNICODE_CODEPOINT_INVALID`, consuming all remaining bytes while old decoder consumed only one byte.
Guarantees:
* At least one byte is consumed, if input had at least one byte available.
* Number of consumed bytes will never seek past end of string.
Requirements:
* `in_text` is a valid pointer.
* String pointed by `in_text` must be zero-terminated, or `in_text_end` is not NULL. 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								bca4749346 
								
							
								 
							
						 
						
							
							
								
								Examples: Apple: Consolidated example_apple_metal to reduce class and file count ( #1873 ,  #3543 )  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								5292320110 
								
							
								 
							
						 
						
							
							
								
								Amend  ffe8f0177f ( #3544 ) + readme fixes  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								ffe8f0177f 
								
							
								 
							
						 
						
							
							
								
								Backends: OpenGL3: Backup/restore GL_PRIMITIVE_RESTART state ( #3544 )  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								acb8ef2006 
								
									
								
							
								 
							
						 
						
							
							
								
								Examples: Vulkan: Fixed CMake include path. ( #3550 )  
							
							... 
							
							
 
							
							The backends directory was not included, so the build was failing. 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								e6b99a420b 
								
							
								 
							
						 
						
							
							
								
								Tab Bar: Do not display a tooltip if the name already fits over a given tab. ( #3521 )  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								fbe74ed50c 
								
							
								 
							
						 
						
							
							
								
								Tab Bar: zero clear more structures.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								8c9b3c9013 
								
							
								 
							
						 
						
							
							
								
								Tab Bar: Fixed using more than 128 tabs in a tab bar.  
							
							... 
							
							
 
							
							Using ImS16 consistently + some better packing to avoid struct growing size. 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								748bd1ba9c 
								
							
								 
							
						 
						
							
							
								
								Tab Bar: Restore cursor position in EndTabBar() when amending (amend  f2f32602) + made LastTabItemIdx consistent ImS8 as other tab storage relies on same type  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								c9fafd5ea4 
								
							
								 
							
						 
						
							
							
								
								Drag and Drop: Fix drag and drop to tie same-size drop targets by choosen the later one. Fixes dragging into a full-window-sized dockspace inside a zero-padded window. ( #3519 ,  #2717 )  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								d015004f45 
								
							
								 
							
						 
						
							
							
								
								Rename colored>color in comments where possible ( #3528 )  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								127f132447 
								
							
								 
							
						 
						
							
							
								
								Backends: OpenGL3: Add compatibility of GL_VERSION for GL 2.x ( #3530 )  
							
							... 
							
							
 
							
							GL_MAJOR_VERSION and GL_MINOR_VERSION are available on GL 3.0 and above.
So we have to parse GL_VERSION under GL 2.x 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								31a144b60c 
								
							
								 
							
						 
						
							
							
								
								Fix comments ( #3534 )  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								f2f326024c 
								
							
								 
							
						 
						
							
							
								
								Tab Bar: Made it possible to append to an existing tab bar by calling BeginTabBar()/EndTabBar() again.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								b1a18d82e3 
								
							
								 
							
						 
						
							
							
								
								Moving backends code from examples/ to backends/ (step 6: update markdown documentation)  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								a2a3d80f04 
								
							
								 
							
						 
						
							
							
								
								Moving backends code from examples/ to backends/ (step 5: move documentation to MD files)  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								a2d845f9dd 
								
							
								 
							
						 
						
							
							
								
								Moving backends code from examples/ to backends/ (step 4: update documentation, much improvement)  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								a7e21fb05f 
								
							
								 
							
						 
						
							
							
								
								Moving backends code from examples/ to backends/ (step 3: fixing project files)  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								428f4fce70 
								
							
								 
							
						 
						
							
							
								
								Moving backends code from examples/ to backends/ (step 2: moving vulkan cruft)  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								d9b2fb7338 
								
							
								 
							
						 
						
							
							
								
								Moving backends code from examples/ to backends/ (step 1: moving source files)  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								124c2608f1 
								
							
								 
							
						 
						
							
							
								
								Docs: Renamed all occurences of "binding" and "back-end" to "backend" in comments and documentations, for consistency.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)