Skip to main content
harmonious_hamster
Participating Frequently
June 30, 2025
Open for Voting

Spot Healing Brush: Sample Current & Below

  • June 30, 2025
  • 8 replies
  • 426 views

 The Spot Healing Brush was a breathrough tool in Photoshop and remains to be one of my favorites. However, it does not support a feature that the "regular" Healing Brush has: Sample Current & Below layers. Instead, it can optionally Sample All Layers [or only current layer] as a checkbox. Can Sample Current & Below layers be added as an option for the Spot Healing Brush, similar to the Healing Brush's drop-down menu implementation? 

 

This allows one to place hand-drawn retouching notes on a layer above the retouching layer. The current workaround is to manually toggle the visibility of layers above, which is not efficient. Screenshots of the current (2025 & Beta / 26.5.0 & 26.6.0) UI options attached. Thanks much!

8 replies

Stephen Marsh
Community Expert
Community Expert
July 7, 2025

@harmonious_hamster - I have added my vote to add "sample: current and below" to spot healing as it's invaluable in the healing tool.

 

 


@harmonious_hamster wrote:

there are screenshots in the original post, showing the inconsistent "sample all layers" and "sample current & below" options between the tools. This thread was inteded to be a feature request, and I appreciate that you took time to make other suggestions, but I'm not interested in further discussing workarounds. 


 

I was referring to screenshots of your layer structure with the retouching notes, not the healing tool and spot healing tool options. Anyway, as you are not interested in discussing alternatives until Adobe possibly address this issue, that is all good. The discussion around alternatives was not intended as a distraction or alternative to having the feature request idea developed.

harmonious_hamster
Participating Frequently
July 7, 2025

@Stephen Marsh there are screenshots in the original post, showing the inconsistent "sample all layers" and "sample current & below" options between the tools. This thread was inteded to be a feature request, and I appreciate that you took time to make other suggestions, but I'm not interested in further discussing workarounds. 

Stephen Marsh
Community Expert
Community Expert
July 4, 2025

I'm obviously missing something. As only the Notes layer visibility is toggled off/on, there is no affect on the visibility of other layers.

 

Do you want to toggle off/on the Notes layer and all layers above the notes layer?

 

What am I missing in your description? Perhaps a screenshot would help to illustrate.

 

It is possible to store variables between script executions using uniquely named environment variables , which persist until Photoshop is exited/quit. I have had inconsistent results using them and usually write/read from a plain TXT file, JSON file or XML file. As you mention, one could use metadata, however, I don't like that approach.

harmonious_hamster
Participating Frequently
July 3, 2025
quote

Not so, depending on the code only the nominated layer's visibilty will be toggled off/on, without selecting or affecting layers above or below the nominated layer.

 

Assuming that the target layer was named "Notes":

 

// Modified from a script from Chuck Uebele
var toggleLayer = activeDocument.layers.getByName("Notes");
toggleLayer.visible = toggleLayer.visible === false;

 

Or:

 

// by rcraighead
app.activeDocument.layers.getByName('Notes').visible ^= 1;

 

A custom keyboard shortcut can then be applied to an installed script.


The trouble is that this assumes the layer is named a certain way, so it doesn't remember which layers were already off. While naming the layers a certain way is an option, and I also commented that myself, one would want to cycle through all layers above the current layer instead of searching for one and XOR'ing it off. 

 

As a similar workaround, the script could append a certain character or string to layers that were already off as a note to keep them off when the script runs again. I have written a very similar script to this in the past and could reference that.

 

My comment about remembering which layers were off was more rooted in that I don't believe there is a way to store JavaScript variables between instances of running the script. The only thing that comes to mind, without renaming the layers, is storing the layer names in a hidden place like the metadata, notes, or external file, but that seems like a messy solution to me.

 

Please correct me if I'm wrong, though! 

Stephen Marsh
Community Expert
Community Expert
July 3, 2025
quote

but note that I don't think it would be possible for the script to remember which layers were already off above the current layer, so the script would turn those back on.


By @harmonious_hamster

 

 

Not so, depending on the code only the nominated layer's visibilty will be toggled off/on, without selecting or affecting layers above or below the nominated layer.

 

Assuming that the target layer was named "Notes":

 

// Modified from a script from Chuck Uebele
var toggleLayer = activeDocument.layers.getByName("Notes");
toggleLayer.visible = toggleLayer.visible === false;

 

Or:

 

// by rcraighead
app.activeDocument.layers.getByName('Notes').visible ^= 1;

 

A custom keyboard shortcut can then be applied to an installed script.

 

harmonious_hamster
Participating Frequently
July 1, 2025

Another way to account for the script issue is naming the layers a certain way, like including any certain set of characters, like a bullet • in the front.

harmonious_hamster
Participating Frequently
July 1, 2025

Thanks Stephen! This is a good workaround, and I can write a script to do that, but I would still prefer the built-in functionality for the most seamless and efficient workflow.

 

My current use case only involves toggling one layer, so a script is overkill. I can offer to write a script for anyone else interested, but note that I don't think it would be possible for the script to remember which layers were already off above the current layer, so the script would turn those back on. A possible method to account for this would be locking the layers turned off, and the script would skip over them. I don't remember if layer colors are scriptable, but assigning a certain layer color could be another solution if supported.

Stephen Marsh
Community Expert
Community Expert
July 1, 2025

If it would help, an action or script could be used to toggle the visibility of the notes layer if it had a consistent name or position in the layer stack. This could be driven via a keyboard shortcut.

 

Current & Below is super useful for ignoring adjustment layers without having to turn them off.