visgl / visgl/deck.gl

Adding an MVTLayer breaks attribute transitions on Safari (MacOS + iOS)

Open
#6,436 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
TypeScript
Stars
14.6k
Forks
2.3k
Avg merge
2d 9h
Merged PRs (30d)
42

Description

Description

After an MVTLayer loads its tiles, attribute transitions on other layers don't work or update. These layers stay in their pre-transition state. This only happens on Safari (both MacOS and iOS).

Expected Behavior

I expect attribute transitions to work regardless of the presence of an MVTLayer tile.

Repro Steps
  • Open the CodePen that reproduces the behaviour in Safari.
  • Insert your MapBox API token on line 3 (the issue doesn't come up if there is no token supplied, because tiles will fail to load and thus no tiles are added to trigger the bug).
  • Click on the map. The circles transition to a bigger radius.
  • Change addMVTLayer on line 4 to true.
  • After the map tiles load, click on the map once more. The circles don't transition but stay small.
  • The above procedure can be repeated in Firefox of Chrome, and the circles will transition there.
Environment
  • Framework Version: 8.6.4
  • Browser Version: Safari 15.1
  • OS: MacOS 12.0.1 / iOS 15.1

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the linked CodePen and reproduce the issue in Safari 15.1 with addMVTLayer enabled, then compare the same steps in Firefox or Chrome. Trace the interaction between MVTLayer tile loading and attribute transitions; done means the circles transition after clicking even when MVT tiles have loaded.

Written by the indexing model from the issue text.

Assessment

Tech stack
macos, typescript
Domain
computer-graphics, frontend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.