Skip to content

Conversation

liamdebeasi
Copy link
Contributor

@liamdebeasi liamdebeasi commented Mar 13, 2024

Issue number: resolves #26234


What is the current behavior?

We use an IntersectionObserver to know when each picker column is visible so we can properly scroll the active option in each column into view. The IO callback passes an array of entries. Up until this PR, we have always grabbed the first entry in the array. The problem is that browsers will sometimes group multiple events into a single array. This means it's possible to have an event with isIntersecting: false and then another event with isIntersecting: true in the same callback. Since we always grabbed the first event we did not account for the instances where events were coalesced.

This resulted in column options sometimes not scrolling into view when presented via an overlay.

What is the new behavior?

  • Picker column now grabs the last event in the entries array. This represents the most recent threshold change.

Does this introduce a breaking change?

  • Yes
  • No

Other information

Dev build: 7.7.5-dev.11710347256.1954cae9

@github-actions github-actions bot added the package: core @ionic/core package label Mar 13, 2024
@liamdebeasi liamdebeasi marked this pull request as ready for review March 13, 2024 16:36
@liamdebeasi liamdebeasi requested review from a team and averyjohnston and removed request for a team March 13, 2024 16:36
@liamdebeasi liamdebeasi added this pull request to the merge queue Mar 13, 2024
Merged via the queue into main with commit 19c1bc1 Mar 13, 2024
@liamdebeasi liamdebeasi deleted the FW-2761 branch March 13, 2024 20:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

package: core @ionic/core package

2 participants