Photoshop plugin icons display correctly on one computer/Photoshop version, but not another. Why?

I’m testing my plugin on two different computers + Photoshop versions, and for some reason, on one of them, the plugin icons work + display correctly – but on the other, they don’t show up at all.

Here’s the pertinent section of the manifest code + file structure:

    "manifestVersion": 4,
    "host": {
        "app": "PS",
        "minVersion": "22.0.0"
    },
    "icons": [
        { "width": 23, "height": 23, "path": "icons/layers-icon-23x23.png", "scale": [ 1, 2 ], "theme": [ "dark", "darkest" ], "species": [ "generic" ] },
        { "width": 23, "height": 23, "path": "icons/layers-icon-23x23-black.png", "scale": [ 1, 2 ], "theme": [ "lightest", "light" ], "species": [ "generic" ] }
    ],
    "entrypoints": [
        {
            "type": "panel",
            "id": "main",
            "label": {
                "default": "Test Plugin v1"
            },
            "icons": [
                {"width":23,"height":23,"path":"icons/layers-icon-23x23.png","scale":[1,2],"theme":["darkest","dark","medium"], "species": [ "chrome"]},
                {"width":23,"height":23,"path":"icons/layers-icon-23x23-black.png","scale":[1,2],"theme":["lightest","light"], "species": [ "chrome"]}
            ],
            "minimumSize": {"width": 290, "height": 200},
            "maximumSize": {"width": 290, "height": 600},
            "preferredDockedSize": {"width": 230, "height": 300},
            "preferredFloatingSize": {"width": 290, "height": 400}
        }
    ],

Then my image filenames, in the “icons” folder itself, are as follows:

layers-icon-23x23@1x.png
layers-icon-23x23-black@1x.png

Works fine on one computer, which is Photoshop version 22.4.2. Does not work on another computer, which is Photoshop version 23.5.2. Any idea why?

If I had to guess, it’s something to do with, different manifest requirements, across the different manifest versions / Photoshop releases, that cause it to work in the earlier versions but not work in the newer versions of Photoshop.

Thanks!

I am building my own UXP validator plugin for VS Code… and it thinks that icons property does not exist in entryPoints for manifestVersion: 4

But version 5 is ok with it.

Unless I’m missing something, I don’t know if that’s the cause of my issue. In my case, it is the older version of Photoshop that correctly displays the icons, whereas the newer one does not. What you’ve pointed out seems to indicate a potential problem with the older versions of Photoshop.

FYI I tried removing that icons part under the entryPoints section, to see if that would be a fix – and unfortunately it was not. Photoshop continues to not display the plugin icons in the newer version of Photoshop.

I am suggesting to upgrade to manifest version 5

I tried that and the icons are still not showing up on computer #2. I also tried updating that computer’s Photoshop version, from 23.5.2, to the most recent 24.7.0, and still no luck – the plugin icons are just not displaying. I have no clue why.

Upon further experimentation, I have no clue why, but changing the width + height parameters – for some unknown reason, appears to partially solve the problem (on CPU 2 using the newer version of Photoshop.

This works, in the plugin panel entrypoint section:

            "icons": [
                {"width":46,"height":46,"path":"icons/layers-icon-23x23.png","scale":[1,2],"theme":["darkest","dark","medium"]},
                {"width":46,"height":46,"path":"icons/layers-icon-23x23-black.png","scale":[1,2],"theme":["lightest","light"]}
            ],

This ALSO works, in that same entrypoint section:

            "icons": [
                {"width":48,"height":48,"path":"icons/layers-icon-24x24.png","scale":[1,2],"theme":["darkest","dark","medium"]},
                {"width":48,"height":48,"path":"icons/layers-icon-24x24-black.png","scale":[1,2],"theme":["lightest","light"]}
            ],

Interestingly, this does NOT work – regardless of what color theme I toggle. My expectation would be, using this, the dark theme icons wouldn’t show up, whereas the light theme icons would – but nope, it’s an all-or-nothing type deal, for some reason:

            "icons": [
                {"width":23,"height":23,"path":"icons/layers-icon-23x23.png","scale":[1,2],"theme":["darkest","dark","medium"]},
                {"width":46,"height":46,"path":"icons/layers-icon-23x23-black.png","scale":[1,2],"theme":["lightest","light"]}
            ],

Note that the main Plugins Panel, that shows all plugins, continues to not show the icon.

Ok I FINALLY figured it out. Initially I only had one icon image file in my folder, at the 23x23 dimensions. I followed Kerri Shots instructions explicitly on this point:

  1. Design your @1x scale icon at 23x23…
  2. Export your icons with @1x and @2x scales

Then I had these filenames in my icons folder:

layers-icon-23x23@1x.png (actual size = 23x23 pixels)
layers-icon-23x23@2x.png (actual size = 46x46 pixels)
layers-icon-23x23-black@1x.png (actual size = 23x23 pixels)
layers-icon-23x23-black@2x.png (actual size = 46x46 pixels)

I reverted the manifest back to the original, like so:

For the entrypoints/panel section:

            "icons": [
                {"width":23,"height":23,"path":"icons/layers-icon-23x23.png","scale":[1,2],"theme":["darkest","dark","medium"]},
                {"width":23,"height":23,"path":"icons/layers-icon-23x23-black.png","scale":[1,2],"theme":["lightest","light"]}
            ],

For the top-level of the manifest:

        {"width":23,"height":23,"path":"icons/layers-icon-23x23.png","scale":[1,2],"theme":["darkest","dark","medium"],"species":["generic"]},
        {"width":23,"height":23,"path":"icons/layers-icon-23x23-black.png","scale":[1,2],"theme":["lightest","light"],"species":["generic"]}

And NOW everything works.

1 Like