Repository navigation
Mitigate WebGL context loss due to canvas limits - #90
Merged
Merged
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
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.
Aladin and the Plotly lightcurves use WebGL contexts when rendering their canvas. There is a finite limit to these contexts allowed by browsers, which means once the limit is exceeded, old contexts will silently be lost. Typically, this is a result of a user having several source pages open in different tabs, so returning to a tab with a lost context is especially confusing. For instance, the user that first noticed this issue was seeing blank lightcurves with still-working plot hovers.
This branch aims to mitigate this issue by:
Note that this issue seems less likely to surface on Firefox than on Chrome and Safari. I was unable to replicate the original bug on Firefox, even with 20-ish source pages open, but was able to do so on Chrome and Safari with just a few tabs open (after engaging with the lightcurve).