mirror of
https://github.com/HarbourMasters/Shipwright
synced 2026-06-19 16:00:27 -04:00
00a51c6507
ImGui derives a control's ID from its visible label, and the menu search page renders every widget in a single scope. Randomizer options that share a label with an enhancement (e.g. "Blue Fire Arrows") therefore produced an ID conflict on the search page. Append a "##Randomizer" suffix to randomizer widget labels so their ImGui ID is unique. The option's own name is left untouched since it is used as a serialization key (spoiler logs, settings lookup); only the menu widget gets the suffix. SliderInt/SliderFloat draw their label themselves via ImGui::Text/CalcTextSize, which (unlike ImGui's labeled widgets) don't strip a "##" suffix, so add a visibleLabel with the suffix chopped off for display while keeping the full label for the unique ID. Co-authored-by: briaguya <70942617+briaguya0@users.noreply.github.com> Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>