(not an issue, more of a question)
Just noticed named child windows are windows called "
Why is the hexa representation of the id (window->GetID(str_id)) required at the child window name? Isn't parent_name/child_name enough? (Why?)
(I get it on the anonymous child case)
Good question @franciscod, I looked into it and the commit history and couldn't find any valid reason for doing that, so I changed it. Thanks!
Wheeeee, glad I asked it :D You're welcome!
I think the ID hash might be necessary for child windows to respect the ID stack. Consider the following example:
for (int i = 0; i < 4; ++i)
{
ImGui::PushID(i);
ImGui::BeginChild("foo", ImVec2(100, 100), true);
ImGui::Text("bar %d", i);
ImGui::EndChild();
ImGui::PopID();
}
I'd expect that to create four separate child windows, since although the child windows share a name they are each in their own ID scope. Instead, currently* the above code comes out like this:

If I revert 84fbc49 then it looks like I'd expect:

Is my expectation of how this code should behave wrong, or is the original code actually useful after all?
*I'm currently on revision d69b2a1 (v1.63 WIP from 1st August 2018), but I don't think this particular code has changed since then from a quick look.
Thanks @jadwallis.
You are right and this is indeed a breaking change.
I think the change _might_ be acceptable as is however, because you can always use BeginChild(GetID("blah")...); if you need the unique ID scope.
Additionally, there are two other documentation issues:
@jadwallis I have now undoed the change done in 84fbc4940, it was an error on my part. Thanks for pointing it out. The change was explicitly introduced in 1.50 (see #894, #713) and accidentally reverted following the discussion on this thread. It should now be fixed again. My bad!
Thanks @ocornut! :)