Conversation
There was a problem hiding this comment.
Pull request overview
This PR restores a jQuery-based surface-pick callback path so that pickerfun provided to cortex.webgl.show(...) is invoked from Python when the user clicks on the surface in the WebGL viewer (fixing #598).
Changes:
- Update the
/pickerTornado handler to accept voxel coordinates asx,y,zplusvertexandhemi, and callpickerfun(voxel, vertex, hemi). - Add a default
PickPosition.prototype.callbackimplementation that triggers a GET to/pickeron each pick. - Update
show()’spickerfundocstring / default callback behavior.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
cortex/webgl/view.py |
Updates picker callback contract and server-side /picker argument parsing/callback invocation. |
cortex/webgl/resources/js/facepick.js |
Restores a jQuery $.get("/picker?...") request on picks by defining a default callback. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review. Take the survey.
| callback: function(vec, hemi, ptidx) { | ||
| $.get("/picker?voxel=" + vec.x + "," + vec.y + "," + vec.z + "&vertex=" + ptidx + "&hemi=" + hemi); | ||
| }, |
There was a problem hiding this comment.
Defining callback on the prototype makes this.callback !== undefined always true, so every pick will now trigger a GET to /picker. This is a behavior change for static exports (python_interface=False) or any deployment without a /picker route, where clicks will start generating failing network requests (and potentially CORS/console noise). Consider only installing/enabling this callback when the Python picker endpoint is actually available (e.g., when running in python_interface mode, or when a callback was explicitly provided).
8eabb16 to
43a256d
Compare
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This restores the old jQuery mechanism from 77a24b5 . I don't know what the pros/cons are of this versus the
notifymechanism from legacy (3595800).Fixes #598 .