Fabric 7.0.72 "LoL Apples" type of dropdowns broken
MeeniMc opened this issue ยท 3 comments
Summary
The "LoL Apple" dropdown menus do not work properly when clicked.
Replicate
- Install MC 1.19, Fabric Loader 0.14.8, Fabric API 0.56.3, Mod Menu 4.0.0
- Launch Game, click "Mods", Change "Libraries" to visible, Open the Cloth-config mockup config screen
- Click a "lol Apple" field, a dropdown showing only a "minecraft:apple" opens, it can't be closed and don't select anything
- Click the text of a "lol apple" field, removing all text (backspace) lets the dropdown populate with options
- click one of the options, the text field fills-up with the option, but the dropdown is now in the bugged stage 3. with this new option instead
- in any case, the option is not saved, closing the config screen and reopening the config screen will show all options reset to "minecraft:apple".
Trivia
Bug found while using BetterAdvancements, but actually reproducible with the mockup config screen integrated in cloth config
So, after a bit of digging into the code base, I think I have an idea of whats going on here:
- The "lol Apple" field in question simply provides a list of valid options: thus, when you have a full (valid) key already entered, the only valid option it can give you is the item matching that key
- Whether it should even remain a drop-down when a only a single option with 100% identify is available is up for debate (imo it shouldn't), but that is how it is right now.
- The Config also lacks any and all code to both save (to either in-code variables or a file) and load (from a file) any values displayed in the Config GUI. In fact, there is no config file for this menu at all within the game! Hence, resetting the config GUI (and by extension the game itself) will not conserve changes made, and this seems to be by design.
- Personally I would like to see this added to the example (so mod devs have a general idea of what needs to be done for configured changes to be conserved across restarts), but I suspect this was omitted as the wiki tells you how to add code to conserve changes, and AutoConfig provides file saving/loading for you.
In short; this behavior appears to be by design within the context of the example config.