Today I spent a lot of time bugfixing, optimizing, and testing for edge cases (e.g. if you put an item in a container, it sends two messages to remove/update the item and container in your inventory, which, if received at the same time by the client, would desync the inventory screen because it was updating the list of items instantly, but the list of visible UI nodes in the grid only at the end of a frame, causing the first UI node to be selected twice, meaning the second one didn't get deleted... and so on). Part of the new client's functionality is that, unlike Game Maker, it is constantly tracking and updating all your stuff (inventory, equipment, effects, etc) rather than fetching them every time the relevant UI panel is opened, since there is no real reason not to (the client was sending the data in real time anyway in case you had the panel open). This is a good thing, but can lead to some desynced states if things aren't programmed properly, and the only way to fix them is to log out and back in and get a fresh state... I'm sure I'll have to fix a few bugs like that when everyone starts playing with the new client and does all the stuff I didn't think about during testing.
At any rate, I still found the time to build the UI for editing descriptions, so... here it is. Enjoy. Next time: crafting menu, as we transition back into re-implementing skills.