Answered
Get LayerMask histogram by layer ID
I have this working action manager function that identifies an empty mask (all black). But it uses the currently selected layer as a reference. I would like to change this function to work with an layer ID, without selecting the layer, but I can't seem to get it to work.
Working script:
function actionManagerUserMaskEmpty(){
var maskEmpty = false;
var totalPixels = app.activeDocument.width * app.activeDocument.height;
var r1 = new ActionReference();
r1.putEnumerated(charIDToTypeID('Chnl'), charIDToTypeID('Chnl'), charIDToTypeID('Msk '));
var layerMaskProperties = executeActionGet(r1);
var histogramArray = layerMaskProperties.getList(charIDToTypeID('Hstg'));
var blackValue = histogramArray.getInteger(0);
if (blackValue === totalPixels) {
maskEmpty = true;
}
return maskEmpty;
}
alert(actionManagerUserMaskEmpty())