Skip to content

Conversation

@sebmarkbage
Copy link
Collaborator

Follow up to #32656.

Remove touchAction from SwipeRecognizer. I was under the wrong impression that this was only the touch-action applied to this particular element, but that parents would still win but in fact this blocks the parent from scrolling in the other direction. By specifying a fixed direction it also blocked rage-swiping in the other direction early on.

Disable pointer-events on view-transition so that the scroll can be hit. This means that touches hit below the items animating above. This allows swiping to happen again before momentum scroll has finished. Previously they were ignored. This only works as long as the SwipeRecognizer is itself not animating. This means you can now rage-swipe in both directions quickly.

I was under the wrong impression that this was only the action applied to
this particular element, but that parents would still win but in fact
this blocks the parent from scrolling in the other direction.
This means that touches hit below the items animating above.

This allows swiping to happen again before momentum scroll has finished.
Previously they were ignored.

This only works as long as the SwipeRecognizer is itself not animating.
@github-actions github-actions bot added the React Core Team Opened by a member of the React Core Team label Mar 18, 2025
@react-sizebot
Copy link

Comparing: 6584a6e...28feaf9

Critical size changes

Includes critical production bundles, as well as any change greater than 2%:

Name +/- Base Current +/- gzip Base gzip Current gzip
oss-stable/react-dom/cjs/react-dom.production.js = 6.68 kB 6.68 kB = 1.83 kB 1.83 kB
oss-stable/react-dom/cjs/react-dom-client.production.js = 517.29 kB 517.29 kB = 92.26 kB 92.26 kB
oss-experimental/react-dom/cjs/react-dom.production.js = 6.69 kB 6.69 kB = 1.83 kB 1.83 kB
oss-experimental/react-dom/cjs/react-dom-client.production.js = 608.06 kB 608.06 kB = 107.88 kB 107.88 kB
facebook-www/ReactDOM-prod.classic.js = 653.67 kB 653.67 kB = 115.18 kB 115.18 kB
facebook-www/ReactDOM-prod.modern.js = 643.95 kB 643.95 kB = 113.59 kB 113.59 kB

Significant size changes

Includes any change greater than 0.2%:

(No significant changes)

Generated by 🚫 dangerJS against 28feaf9

@sebmarkbage sebmarkbage merged commit c2a1961 into facebook:main Mar 18, 2025
196 checks passed
github-actions bot pushed a commit that referenced this pull request Mar 19, 2025
Follow up to #32656.

Remove touchAction from SwipeRecognizer. I was under the wrong
impression that this was only the touch-action applied to this
particular element, but that parents would still win but in fact this
blocks the parent from scrolling in the other direction. By specifying a
fixed direction it also blocked rage-swiping in the other direction
early on.

Disable pointer-events on view-transition so that the scroll can be hit.
This means that touches hit below the items animating above. This allows
swiping to happen again before momentum scroll has finished. Previously
they were ignored. This only works as long as the SwipeRecognizer is
itself not animating. This means you can now rage-swipe in both
directions quickly.

DiffTrain build for [c2a1961](c2a1961)
github-actions bot pushed a commit that referenced this pull request Mar 19, 2025
Follow up to #32656.

Remove touchAction from SwipeRecognizer. I was under the wrong
impression that this was only the touch-action applied to this
particular element, but that parents would still win but in fact this
blocks the parent from scrolling in the other direction. By specifying a
fixed direction it also blocked rage-swiping in the other direction
early on.

Disable pointer-events on view-transition so that the scroll can be hit.
This means that touches hit below the items animating above. This allows
swiping to happen again before momentum scroll has finished. Previously
they were ignored. This only works as long as the SwipeRecognizer is
itself not animating. This means you can now rage-swipe in both
directions quickly.

DiffTrain build for [c2a1961](c2a1961)

DiffTrain build for [646835f](646835f)
github-actions bot pushed a commit that referenced this pull request Mar 19, 2025
Follow up to #32656.

Remove touchAction from SwipeRecognizer. I was under the wrong
impression that this was only the touch-action applied to this
particular element, but that parents would still win but in fact this
blocks the parent from scrolling in the other direction. By specifying a
fixed direction it also blocked rage-swiping in the other direction
early on.

Disable pointer-events on view-transition so that the scroll can be hit.
This means that touches hit below the items animating above. This allows
swiping to happen again before momentum scroll has finished. Previously
they were ignored. This only works as long as the SwipeRecognizer is
itself not animating. This means you can now rage-swipe in both
directions quickly.

DiffTrain build for [c2a1961](c2a1961)

DiffTrain build for [646835f](646835f)

DiffTrain build for [db7dfe0](db7dfe0)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed React Core Team Opened by a member of the React Core Team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants