forked from austinhoag/neuroglancer
-
Notifications
You must be signed in to change notification settings - Fork 1
Merge upstream google fork #1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
austinhoag
wants to merge
732
commits into
BrainCOGS:master
Choose a base branch
from
google:master
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Previously, the client and server could become desynchronized due to a 412 response.
This reduces code duplication and eliminates some asyncio-related warnings.
…dit (#465) * auto reloading the graphene mesh manifest requests for ~10 minutes after an edit with exponential backoff * trying to reduce flicker * improved getMeshSource function to always return the correct source for layers with more than one datasource * Revert "trying to reduce flicker" This reverts commit 0302038. * removed debugging lines
…trollable UI parameter (#495) feat: add samples per ray to UI
…#500) * fix(state_share): new method to include credentials for state sharing due to chrome introducing restrictions on setting protocols using the URL API * cleaned up state url credential fix code
Previously, panel movement was detected only indirectly, based on resize and scroll events, leading to the possibility that a panel would not be redrawn when necessary if a panel moves without a resize or scroll event occurring. With this change, panel movement is detected directly using IntersectionObserver.
Previously, if an input element happens to become focused while a tool is active, the key combination (e.g. shift+key) being held was incorrectly interpreted as input. With this change, such input is prevented by ignoring key events while the tool is active.
prettier is now used for formatting, and biome is now used for linting.
Previously, coordinate bounds approximately, but not exactly, equal to an integer or half-integer were handled poorly. In particular, the lower/upper bounds could end up off by 1 from the expected value, and voxelCenterAtIntegerCoordinates could end up false when it was expected to be true, leading to coordinates snapping to the boundary between two voxels, rather than the center, as expected. With this change, coordinate bounds within 1e-3 of an integer or half-integer are handled properly. Fixes #719.
Now that there is support in the major browsers for bigint and optimization of the uint64 as bigint case, the custom Uint64 class can be removed.
Co-authored-by: Sean Martin <[email protected]> Co-authored-by: Aiga115 <[email protected]>
This fixes the following error reported at #743 frontend.ts:328 Uncaught TypeError: Cannot read properties of undefined (reading 'chunkManager') at updateChunk (frontend.ts:328:31) # webpack://neuroglancer/src/chunk_manager/frontend.ts at RPC.<anonymous> (frontend.ts:348:3) at RPC.target.onmessage (worker_rpc.ts:174:40)
…splay Previously, optional modifiers in a binding like "alt?+control?+shift+keya" would result in 4 separate help entries for each of the 4 combinations. With this change, the optional modifiers are excluded altogether, as they already were from the binding tooltips, resulting in a single help entry for "shift+keya". Additionally, patterns like "shift+key[a-z]" -> "tool-[A-Z]" and "[1-9]" -> "toggle-layer-[1-9]" resulted in each binding being displayed separately. With this change, the pattern is recognized and displayed as a single entry. These changes together make the help display much, much more concise.
… make inputs clearer (#736) Co-authored-by: Aiga115 <[email protected]>
…ider archived layers (#748)
Co-authored-by: Sean Martin <[email protected]>
Previously, if a given cross-section view selected a cross section slightly below the lower bound, or (almost) exactly at the upper bound of a volume, all chunks could be considered out of bounds. Instead, the positions should be set such that the cross-section is at the center of a voxel, rather than right at the boundary, and the "position snapping" logic in Neuroglancer tries to ensure that. However, there are various cases under which such cross-sections may be accidentally requested: - User specifies an explicit position in the state at integer coordinates for a dimension where voxel centers are at half-integers. - Due to floating point imprecision, a position exactly at the lower bound ends up slightly below the lower bound. - Due to the OME-Zarr voxel center confusion bug in Neuroglancer when OME-Zarr support was first added, old Neuroglancer states may have positions right on the volume boundary, especially for singleton dimensions. This commit ensures that in these boundary cases, a chunk is still rendered to avoid user confusion.
Previously, panels for Python prefetch states inadvertently did not have their bounds correctly calculated, leading to a width and height of zero, which meant that data was not correctly prefetched.
also combine two if statements into one
…ing on the code visibility (#768)
…rom JSON state (#774) A given panel "flex group" (column/row) may contain both visible and non-visible panels. Previously, the presence of a non-visible panel could result in the size not being correctly restored from the JSON state. With this change: - The size of the flex group is taken from the first visible panel, rather than the first visible or non-visible panel. - When the first visible panel is added to a flex group that was previously hidden (due to not containing any visible panels), its size is set to the size of the newly visible panel. This means that two panels in the same flex group can maintain different sizes (e.g. the "settings" and "layer list" panels), as long as both are not visible at the same time. If both become visible at the same time, the second one to become visible will have its size reset to the size of the other panel. Fixes #773.
* Refactor parameter parsing to make it more easily extensible * Use catch-all arguments for render parameters In order to keep up to date with api additions, parameters that are piped through to render as optional ?-style parameters are captured by a generic dictionary instead of dedicated single fields. * Enable autocompletion for (dummy) query parameters * Dynamically generate list of optional parameters * Enable PNG rendering For some reason, the 8-bit version requires a "channel" argument of 4, while the 16-bit version requires 1. * Apply automatic formatter fixes * Return built-in parameters' hints even if api cannot be fetched * Run format checker * Include review comments from @neomorphic
This addreses two bugs in the calculation of clip bounds for rendered panels: - Previously, rendered panels were clipped to the bounding rects of all ancestors without taking into account `overflow-x` and `overflow-y`. With this change, `overflow-x` and `overflow-y` are correctly taken into account. - IntersectionObserver can fail to register changes in bounds due to scrolling. With this commit, scroll events directly trigger recalculation of bounds. Fixes #777
…state (#785) Co-authored-by: Chris Jordan <[email protected]>
… bytes received (#802) If the buffer is exactly 8 bytes — which is the case for an empty spatial index chunk — then the code would throw an "Expected at least 8 bytes" error, due to the use of a `<=` comparison rather than `<`. This commit fixes that bug.
To support special nodes like "<UUID>:master" (which means "the most distant unlocked descendant of <UUID>"), use only "<UUID>" for the validity lookup. If it is valid, then DVID itself will resolve the part after the ':'. DVID Data source urls can now be formatted like this: dvid://https://dvid.janelia.org/f3969:master/segmentation
* fix(ui): correct tool palette checkbox title Also clarify intended behaviour of message. Current was probably mixed up because enableTitle could be the title when enabled or the message shown to indicate how to enable * style: format
* fix:(python): allow defaults to inform properties and allow color strings * docs(python): extend num properties in writer * lint: fix mypy type error
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.