mirror of
https://github.com/Drezil/imgui.git
synced 2024-11-25 13:07:01 +00:00
InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787)
+ Added test in ImGuiTestSuite: "widgets_inputtext_multiline_enter"
This commit is contained in:
parent
bd63a9f056
commit
0e1ce76ea8
@ -58,6 +58,8 @@ Other changes:
|
|||||||
it does, this has been a common pitfall leading to more or less subtle issues. (#3164, #3309, #6800)
|
it does, this has been a common pitfall leading to more or less subtle issues. (#3164, #3309, #6800)
|
||||||
- InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer.
|
- InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer.
|
||||||
(regression from 1.89.2, only happened in some states). (#6783, #6000)
|
(regression from 1.89.2, only happened in some states). (#6783, #6000)
|
||||||
|
- InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't
|
||||||
|
be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787)
|
||||||
- BeginListBox(): Fixed not consuming SetNextWindowXXX data when returning false.
|
- BeginListBox(): Fixed not consuming SetNextWindowXXX data when returning false.
|
||||||
- MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously
|
- MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously
|
||||||
register contents size in a way that would affect the scrolling layer.
|
register contents size in a way that would affect the scrolling layer.
|
||||||
|
2
imgui.h
2
imgui.h
@ -26,7 +26,7 @@
|
|||||||
// Library Version
|
// Library Version
|
||||||
// (Integer encoded as XYYZZ for use in #if preprocessor conditionals, e.g. '#if IMGUI_VERSION_NUM >= 12345')
|
// (Integer encoded as XYYZZ for use in #if preprocessor conditionals, e.g. '#if IMGUI_VERSION_NUM >= 12345')
|
||||||
#define IMGUI_VERSION "1.90 WIP"
|
#define IMGUI_VERSION "1.90 WIP"
|
||||||
#define IMGUI_VERSION_NUM 18991
|
#define IMGUI_VERSION_NUM 18992
|
||||||
#define IMGUI_HAS_TABLE
|
#define IMGUI_HAS_TABLE
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -4124,13 +4124,18 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_
|
|||||||
item_data_backup = g.LastItemData;
|
item_data_backup = g.LastItemData;
|
||||||
window->DC.CursorPos = backup_pos;
|
window->DC.CursorPos = backup_pos;
|
||||||
|
|
||||||
|
// Prevent NavActivate reactivating in BeginChild().
|
||||||
|
const ImGuiID backup_activate_id = g.NavActivateId;
|
||||||
|
if (g.ActiveId == id) // Prevent reactivation
|
||||||
|
g.NavActivateId = 0;
|
||||||
|
|
||||||
// We reproduce the contents of BeginChildFrame() in order to provide 'label' so our window internal data are easier to read/debug.
|
// We reproduce the contents of BeginChildFrame() in order to provide 'label' so our window internal data are easier to read/debug.
|
||||||
// FIXME-NAV: Pressing NavActivate will trigger general child activation right before triggering our own below. Harmless but bizarre.
|
|
||||||
PushStyleColor(ImGuiCol_ChildBg, style.Colors[ImGuiCol_FrameBg]);
|
PushStyleColor(ImGuiCol_ChildBg, style.Colors[ImGuiCol_FrameBg]);
|
||||||
PushStyleVar(ImGuiStyleVar_ChildRounding, style.FrameRounding);
|
PushStyleVar(ImGuiStyleVar_ChildRounding, style.FrameRounding);
|
||||||
PushStyleVar(ImGuiStyleVar_ChildBorderSize, style.FrameBorderSize);
|
PushStyleVar(ImGuiStyleVar_ChildBorderSize, style.FrameBorderSize);
|
||||||
PushStyleVar(ImGuiStyleVar_WindowPadding, ImVec2(0, 0)); // Ensure no clip rect so mouse hover can reach FramePadding edges
|
PushStyleVar(ImGuiStyleVar_WindowPadding, ImVec2(0, 0)); // Ensure no clip rect so mouse hover can reach FramePadding edges
|
||||||
bool child_visible = BeginChildEx(label, id, frame_bb.GetSize(), true, ImGuiWindowFlags_NoMove);
|
bool child_visible = BeginChildEx(label, id, frame_bb.GetSize(), true, ImGuiWindowFlags_NoMove);
|
||||||
|
g.NavActivateId = backup_activate_id;
|
||||||
PopStyleVar(3);
|
PopStyleVar(3);
|
||||||
PopStyleColor();
|
PopStyleColor();
|
||||||
if (!child_visible)
|
if (!child_visible)
|
||||||
|
Loading…
Reference in New Issue
Block a user