6017 Commits (a138855d569fd4f9490d7936b6b5ac26af259bcd)
 

Author SHA1 Message Date
ocornut a138855d56 Hotfix for PushFocusScope() being utterly wrong (until we split the stacks), Added asserts on PopID to help catch bugs, Added GC trigger. 4 years ago
ocornut 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.
4 years ago
ocornut 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
4 years ago
ocornut 7a135a763c Fix format warnings when using gnu printf extensions in a setup that supports them (gcc/mingw). (#3592) 4 years ago
ocornut dcfb986fa8 Made EndFrame() assertion for key modifiers being unchanged during the frame more lenient. (#3575) 4 years ago
Rokas Kupstys a3f79104df Examples: Apple+Metal: Forward events to OS key combinations like CMD+Q can work. (#3554) 4 years ago
Brandon DeRosier 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.
4 years ago
ocornut 61825c7735 Tab Bar: Fixed minor/unlikely bug skipping over a button when scrolling left with arrows + InputText: minor optimization. 4 years ago
顾起威 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) 4 years ago
ocornut 5789e69a62 Checkbox: Added CheckboxFlags() helper with int* type. Demo: removed extraneous casts. 4 years ago
ocornut 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.
4 years ago
ocornut 046057cebb Selectable: Avoid pushing span-column background if clipped. 4 years ago
ocornut 7a27b2a282 Update Readme, links to Useful Widgets, updated a gif. 4 years ago
ocornut 2bf5ca7ef2 ImDrawListClipper: avoid over reserving memory. 4 years ago
ocornut d6a2f7e95e Reduced padding + unused storage in ImDrawList (224->192 bytes) + zero-init ImDrawListSplitter and ImDrawList
+ Readme tweak
4 years ago
ocornut 2fa00656a4 Fix for IMGUI_DISABLE_METRICS_WINDOW 4 years ago
Albin Odervall b934b9bb86 Backends: OSX, Metal: Fix -Wshadow, -Wimplicit-float-conversion, and -Wsign-conversion warnings. (#3555) 4 years ago
Rokas Kupstys 9cca1b2e97 Replace UTF-8 decoder with one based on branchless version by Christopher Wellons. (not branchless anymore tho)
Decoding performance increase ~30%
4 years ago
ocornut 3777fbbd81 Renamed io.ConfigWindowsMemoryCompactTimer to io.ConfigMemoryCompactTimer as the feature will apply to other data structures. 4 years ago
ocornut 047d4c4500 Metrics: Extracted most functions.
+ avoid using full namesapce prefix
4 years ago
ocornut 044ed22379 Metrics: Fixed mishandling of ImDrawCmd::VtxOffset in wireframe mesh renderer + omitting trailing empty ImDrawCmd in count + relying on IdxOffset value. 4 years ago
M. Frink ~ Lemur a129621292
Doc: mention IMGUI_USE_WCHAR32 in fonts documentation (#3562) 4 years ago
Rokas Kupstys 6f57d58e82 Backends: OSX: Fix KeyPadEnter on MacOS. (#3554) 4 years ago
ocornut df35157397 Drag and Drop: Fix losing drop source ActiveID (and often source tooltip) when opening a TreeNode() or CollapsingHeader() while dragging. (#1738)
Amend 7b3d379, 8241cd62 etc.
4 years ago
ocornut b7530e5d04 Revert "Replace UTF-8 decoder with branchless version by Christopher Wellons." (#3558)
This reverts commit b3576dd354.
4 years ago
Rokas Kupstys 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.
4 years ago
Warren Moore bca4749346 Examples: Apple: Consolidated example_apple_metal to reduce class and file count (#1873, #3543) 4 years ago
ocornut 5292320110 Amend ffe8f0177f (#3544) + readme fixes 4 years ago
Louis Schnellbach ffe8f0177f Backends: OpenGL3: Backup/restore GL_PRIMITIVE_RESTART state (#3544) 4 years ago
Bill Six acb8ef2006
Examples: Vulkan: Fixed CMake include path. (#3550)
The backends directory was not included, so the build was failing.
4 years ago
ocornut e6b99a420b Tab Bar: Do not display a tooltip if the name already fits over a given tab. (#3521) 4 years ago
ocornut fbe74ed50c Tab Bar: zero clear more structures. 4 years ago
ocornut 8c9b3c9013 Tab Bar: Fixed using more than 128 tabs in a tab bar.
Using ImS16 consistently + some better packing to avoid struct growing size.
4 years ago
ocornut 748bd1ba9c Tab Bar: Restore cursor position in EndTabBar() when amending (amend f2f32602) + made LastTabItemIdx consistent ImS8 as other tab storage relies on same type 4 years ago
Black Cat! 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) 4 years ago
ocornut d015004f45 Rename colored>color in comments where possible (#3528) 4 years ago
xndcn 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
4 years ago
ocornut 31a144b60c Fix comments (#3534) 4 years ago
ocornut f2f326024c Tab Bar: Made it possible to append to an existing tab bar by calling BeginTabBar()/EndTabBar() again. 4 years ago
ocornut b1a18d82e3 Moving backends code from examples/ to backends/ (step 6: update markdown documentation) 4 years ago
ocornut a2a3d80f04 Moving backends code from examples/ to backends/ (step 5: move documentation to MD files) 4 years ago
ocornut a2d845f9dd Moving backends code from examples/ to backends/ (step 4: update documentation, much improvement) 4 years ago
ocornut a7e21fb05f Moving backends code from examples/ to backends/ (step 3: fixing project files) 4 years ago
ocornut 428f4fce70 Moving backends code from examples/ to backends/ (step 2: moving vulkan cruft) 4 years ago
ocornut d9b2fb7338 Moving backends code from examples/ to backends/ (step 1: moving source files) 4 years ago
ocornut 124c2608f1 Docs: Renamed all occurences of "binding" and "back-end" to "backend" in comments and documentations, for consistency. 4 years ago
ocornut 041ef01b33 Removed redirecting functions/enums names that were marked obsolete in 1.61: InputFloat, InputFloat2, InputFloat3, InputFloat4 with int decimal_precision parameter. (#648, #712) 4 years ago
ocornut 0f13fdd177 Removed redirecting functions/enums names that were marked obsolete in 1.60: io.RenderDrawListsFn, IsAnyWindowFocused(), IsAnyWindowHovered(), etc. 4 years ago
ocornut 04de5ef819 Version 1.80 WIP 4 years ago
ocornut a38c6dfcc8 Internals: Added support for context hooks (for test engine or other extensions) 4 years ago