Activate plug-in when Photoshop is launched

We are currently working on a replacement of a CEP extension, that is part of our DAM Platform vjoon seven.

This new UXP plug-in will listen to the document open and close events. Upon close, it will bring up modal dialogs to control the check-in process. We do not need a panel or command in any menu.

To do so, we need our UXP plug-in to be started automatically when Photoshop is launched. With CEP this is no problem.

Looking at your UXP reference for entry points, there are life cycle hooks on the plug-in level: ‘create’ and ‘destroy’. Neither of them seem to work (in UXP 4.1.x).

But Adobe has removed CEP capabilities from the latest version of Photoshop (Silicon), so our customers can’t use our integration with that version of Photoshop, and we must find a solution.

We looked at two workarounds:

[1] Use a menu command to “activate” our UXP plug-in. However, this does not make sense, as users will always forget to select this command upon launch of Photoshop and it would be a horrible UX.

[2] We add a dummy panel without any useful functionally which will be kept open. Once opened and maybe minimized, it will act as a starter of our plug-in upon launch of Photoshop. However, this is a hack at a level that we usually would not pursue.

So we need a proper solution urgently. Please tell us how our UXP plug-in can be activated upon the launch of Photoshop.

Looking forward to hearing from you soon.

There is no pure UXP way to do that this time. And I even think that this feature was in the very first versions of PS but it was removed soon. That could indicate that there are no plans to support that.

I’ll let @Barkin chime in for sure here on how Ps intends to support plugins that need to launch at startup.

destroy would not work for your case anyway; the handlers must never block the host for any significant time – otherwise a malfunctioning plugin could prevent closure of the app.

The issue at heart is that starting plugins at launch does take additional time and most plugins don’t really need to be loaded until the user needs to interact with them (which is usually well after startup). We want users to have the ability to know when a plugin is impacting system/host performance, and there’s no mechanism for that currently (which is why it was removed initially).

We are working on features that will allow users to have more insight into plugins that might impact performance, and as those features are built out, it opens the doors to adding more features like launch-at-start back.

I’d encourage you to look at a way to use the panel & render some useful information in that way. Even just indicating that your plugin is running & actively receiving events could be useful for the user to know that things really are working correctly. The panel would not need to be large, and it wouldn’t need a lot of design around it, depending on what information you displayed.