-
Notifications
You must be signed in to change notification settings - Fork 74
DevTools Snippets
The following DevTools snippets can make working with Spaces/Design Space easier.
Instructions for installing and using snippets are here.
Print out the command name and action descriptors of events being played in native Photoshop.
(This snippet is integrated into Design Spaces. Toggle this feature from menu Debug > Log Descriptor Events
)
Write out all get and play commands being sent to Photoshop, and their responses
(This snippet is integrated into Design Spaces. Toggle this feature from menu Debug > Log Descriptor Events
)
Yet another snippet to echo notifications in Design Space (from this page).
var psNotifierHandler = function(err, type, info) {console.log("ps-notification:'" + type + "' info:" + JSON.stringify(info));};
_spaces.setNotifier(_spaces.notifierGroup.PHOTOSHOP, {}, psNotifierHandler);
The following snippet will turn on classic Photoshop overlay, without switching to classic Photoshop (will break UI and certain functionality!)
window._spacesToggled = (window._spacesToggled === undefined) ? true : window._spacesToggled;
(function () {
var ui = require("adapter").ps.ui;
var flux = require("js/main").getController().flux;
if (window._spacesToggled) {
ui.setClassicChromeVisibility(true);
ui.installMenu({}, {});
} else {
ui.setClassicChromeVisibility(false);
flux.actions.menu.beforeStartup();
}
window._spacesToggled = !window._spacesToggled;
}());
Print out the currently selected layer's descriptor
(This snippet is integrated into Design Spaces. Load the helper from menu Debug > Load Debugging Helpers
and run _getSelectedLayers()
)
Load Flux to a variable for use in console
(This snippet is integrated into Design Spaces. Load the helper from menu Debug > Load Debugging Helpers
and run _getFluxInstance()
)
This snippet will print out request/response of all transform commands
/**
* This snippet will print any of the transform commands we're sending Photoshop
* and their results
**/
(function () {
var Descriptor = require("adapter/ps/descriptor");
log = require("js/util/log");
log.enableAll();
var originalBatchPlay = Descriptor.batchPlay;
Descriptor.batchPlay = function (commands, options, batchOptions) {
commands.forEach(function (command) {
if (command.name === "transform") {
log.debug("Transform command being sent:");
log.debug(JSON.stringify(command, null, " "));
}
});
return originalBatchPlay.call(Descriptor, commands, options, batchOptions).then(function (result) {
result.forEach(function (res) {
if (res.hasOwnProperty("freeTransformCenterState")) {
log.debug("Transform result from Photoshop:");
log.debug(JSON.stringify(res, null, " "));
};
});
return result;
}).catch(function (err) {
log.debug(err);
log.debug(JSON.stringify(commands, null, " "));
});
};
}());
This snippet is integrated into Design Spaces. Toggle this feature from menu Debug > Log Highlights Events