@ -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 )