Icons matching themecolor for PS+ID?

I’m working on a multi-host plugin (PS+ID) and with a panel for which I’d like to match the toolbar icon color with the host theme color so it blends in nicely with the stock panel icons. As far as I’ve seen (but hopefully I’m mistaken :-)) there is no way to make an “single” icon that automatically adjusts its palette to the current theme color, right?

I mean for a single host it is not a huge deal, 2 sizes of 4 color variations for the themes, 8 in total, ok - well plus the plugin icon, with its 23 vs 24px size difference and that times 4 * 2, so 16 in total…, sigh a bit of a hassle, but sure, sure.

Now comes the real “fun” part though, InDesign actually uses different shades of gray than PS for its four themes (why Adobe??), so even if I can get the icons to match correctly for one app, they will look off for the other - yikes. This is a “bigger” problem because unless I missed something in the manifest there is no way to specify per-host icons?

Would transparent icon background help?

Regarding to host specific icons…

host or hosts properties (both should be valid) in manifest was designed to be an array with possibility to specify multiple different hosts. Where each object in array can have its own icon for plugin and its own entryPoints and each entrypoint its icon.

But last time I checked it wasn’t supported and refused to load with an array. UDT automatically converted array into object while packing plugin.

You could try this to get hints in manifest: Validator for UXP (Beta) - Visual Studio Marketplace

But maybe my schema is wrong and needs some changes.

Thanks for your insights @Jarda
Regarding transparent background, yes I have that unfortunately both the fore and background gray shades of the themes of PS and ID differ, so if I want to make a toolbar icon that matches the shades used in the hosts it seems I have to make a different variation for each one :slightly_frowning_face:

On your remarks on specifying an icon per host. I knew that host accepts an array, that is what I’m using right now. The other variation hosts (plural) causes an invalid manifest error in UDT for me btw. Also, setting anything other than the app and minVersion didn’t work. While looking at the manifest documentation (not sure how up to date this is) I did notice something I glanced over before:

Note: An array can ONLY be used during development. A single definition will be needed when submitting to the marketplace

Soo… that kind of throws a wrench into my whole idea of making a single plugin that can support both ID and PS :frowning:

I am curious as to why they added this option in the first place and why this limitation, it is not like it is amazingly helpful during development to begin with. But having a single plugin in the marketplace that can support multiple hosts most certainly is.

oof! Why indeed!

And, yes, we have a released Photoshop plug-in and are working on getting the first of several Adobe InDesign plug-ins created. The whole sharing of code is way more complicated than I feel like it should be.