Skip to content
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

Guard against switching on and off overlay layers quickly #1729

Merged
merged 1 commit into from
Nov 22, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@

- Fix an issue searching for annotation metadata on items that a user doesn't have permissions to view ([#1723](../../pull/1723))
- Fix a typo in a column header ([#1727](../../pull/1727))
- Guard against switching on and off overlay layers quickly ([#1729](../../pull/1729))

## 1.30.2

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -255,7 +255,7 @@ def generateResult():
# could be used in its most default mode instead like so:
# result = json.dumps(element, separators=(',', ':'))
# Collect multiple elements before emitting them. This
# balances using less memoryand streaming right away with
# balances using less memory and streaming right away with
# efficiency in dumping the json. Experimentally, 100 is
# significantly faster than 10 and not much slower than 1000.
collect.append(element)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -415,9 +415,13 @@
restRequest({
url: `item/${overlayItemId}/tiles`
}).done((response) => {
// Since overlay layers are created asynchronously, we need to ensure that an attempt
// to draw the same overlays happening at roughly the same time does not create
// extra layers
// Since overlay layers are created asynchronously, we need
// to ensure that an attempt to draw the same overlays
// happening at roughly the same time does not create extra
// layers
if (!this.viewer) {
return;

Check warning on line 423 in girder_annotation/girder_large_image_annotation/web_client/views/imageViewerWidget/geojs.js

View check run for this annotation

Codecov / codecov/patch

girder_annotation/girder_large_image_annotation/web_client/views/imageViewerWidget/geojs.js#L423

Added line #L423 was not covered by tests
}
const conflictingLayers = this.viewer.layers().filter(
(layer) => layer.id() === overlay.id);
if (conflictingLayers.length > 0) {
Expand Down