I’ve built my html for a UXP panel for Photoshop with placeholder text. In the panel show function I’m reading translations from a file and then poking those into the textContent of each sp-label or sp-menu-item element.
This approach works fine with modal dialogs, presumably because all the text is amended before calling uxpShowModal. And it works fine for sp-label fields in a panel. But it doesn’t work well for items within a menu. If I drop down the menu I can see the options have been translated, but the value shown when the menu is not opened is the placeholder text.
In this example the upper-case ‘AUTO’ is placeholder text and the picker is dropped down below it. The translation ‘Auto’ is clearly selected, but just releasing the drop-down does not change the ‘AUTO’ to ‘Auto’.
In case it’s relevant I’m using sp-menu-item inside sp-menu, inside sp-picker.
I’ve tried doing this replacement in a panel create or show function, or in a plugin create function, all specified in entrypoints.setup. They all fail in the same way.
If I walk the sp-picker item in UDT the innerHTML and textContent for all elements looks correct. I’m guessing that this is a caching issue of some kind, but I have not been able to find any way around it. Any suggestions as to what I’m missing here, or how to dynamically add the translations some other way?