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)  
				
					
						
							
							
								 
						
							
							
								041ef01b33 
								
							
								 
							
						 
						
							
							
								
								Removed redirecting functions/enums names that were marked obsolete in 1.61: InputFloat, InputFloat2, InputFloat3, InputFloat4 with int decimal_precision parameter. ( #648 ,  #712 )  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								0f13fdd177 
								
							
								 
							
						 
						
							
							
								
								Removed redirecting functions/enums names that were marked obsolete in 1.60: io.RenderDrawListsFn, IsAnyWindowFocused(), IsAnyWindowHovered(), etc.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								04de5ef819 
								
							
								 
							
						 
						
							
							
								
								Version 1.80 WIP  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								a38c6dfcc8 
								
							
								 
							
						 
						
							
							
								
								Internals: Added support for context hooks (for test engine or other extensions)  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								e5cb04b132 
								
							
								 
							
						 
						
							
							
								
								Version 1.79  
							
							... 
							
							
 
							
							+ Update readme and mission statement.
Removed "Minimize screen reel-estate usage", removed details on memory consumption (still very valid, just too much noise in a mission statement) 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								c6f9c558ec 
								
							
								 
							
						 
						
							
							
								
								CI: Use our own discord notifier.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								ae5b4991be 
								
									
								
							
								 
							
						 
						
							
							
								
								Docs: update gallery links. ( #3514 )  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								03b1e643b4 
								
							
								 
							
						 
						
							
							
								
								Docs: Funding link, Tweaks, Gallery links.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								12d9505534 
								
							
								 
							
						 
						
							
							
								
								CheckboxFlags: Display mixed-value/tristate marker when passed flags that have multiple bits set and stored value matches neither zero neither the full set.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								4fd43a8b64 
								
							
								 
							
						 
						
							
							
								
								Internals: removed NavLayerCurrentMask (redundant, add extra shift in ItemAdd().  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								014e5078a8 
								
							
								 
							
						 
						
							
							
								
								Demo: add a small easter egg when the 4x4 board of Selectable is filled + tweaked the demo.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								01cc666039 
								
							
								 
							
						 
						
							
							
								
								ImGuiListClipper: Renamed constructor parameters which created an ambiguous alternative to using the ImGuiListClipper::Begin() function, with misleading edge cases.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								6469b94304 
								
									
								
							
								 
							
						 
						
							
							
								
								Silence memset warning. ( #3505 )  
							
							... 
							
							
 
							
							Compiling the code as-is results in the following warning:
-->8--
imgui_freetype.cpp:341:72: warning: ‘void* memset(void*, int, size_t)’
        clearing an object of type ‘struct ImFontBuildSrcDataFT’ with no
        trivial copy-assignment; use assignment or value-initialization
        instead [-Wclass-memaccess]
  341 |     memset(src_tmp_array.Data, 0, (size_t)src_tmp_array.size_in_bytes());
      |                                                                        ^
imgui_freetype.cpp:302:8: note: ‘struct ImFontBuildSrcDataFT’ declared here
  302 | struct ImFontBuildSrcDataFT
      |        ^~~~~~~~~~~~~~~~~~~~
--8<--
This is caused by presence of ImVector<> directly in ImFontBuildSrcDataFT data
structure, as well as in the child ImBitVector. Since ImVector<> has a
constructor, the compiler infers that initialization by memset is not valid.
Such initialization is not a bug, however, as the default ImVector<> ctor just
sets the structure data members to 0, which is exactly what the memset does.
Casting the data structure address to void* pointer silences this warning. 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								7b1ab5b275 
								
							
								 
							
						 
						
							
							
								
								ImVector: Stricter bound-checking asserts. Fix warnings: trailing comma (old compilers), zealous preprocessor warnings.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								5f336ce8f8 
								
							
								 
							
						 
						
							
							
								
								Tab Bar: Fixed buffer underflow in TabBarLayout, introduced by  4a57a982b ( #3501 ,  #3291 )  
							
							... 
							
							
 
							
							+ Link to CI actions added in 3be352f 
							
						 
						
							ago%!(EXTRA string=5 years)