Skip to content

[Pressable] pointerEvents "box-only" and "box-none" broken #3904

Description

@gigobyte

Description

Only iOS is affected, Android and Web look to be fine.
Only iOS and Android are affected, Web looks to be fine.

box-only

<Pressable
  style={{ width: 100, height: 80, backgroundColor: 'red' }}
  onPress={() => Alert.alert('outer')}
  pointerEvents="box-only"
>
  <Pressable
    style={{ width: 50, height: 50, backgroundColor: 'green' }}
    onPress={() => Alert.alert('inner')}
  />
</Pressable>

Expected result: clicking on the inner alerts "outer", clicking on the outer alerts "outer"
Actual result: clicking on the inner alerts nothing, clicking on the outer alerts nothing

box-none

 <Pressable
  style={{ width: 100, height: 80, backgroundColor: 'red' }}
  onPress={() => Alert.alert('outer')}
  pointerEvents="box-none"
>
  <Pressable
    style={{ width: 50, height: 50, backgroundColor: 'green' }}
    onPress={() => Alert.alert('inner')}
  />
</Pressable>

Expected result: clicking on the inner alerts "inner", clicking on the outer alerts nothing
Actual result: clicking on the inner alerts "inner", clicking on the outer alerts"outer"

Steps to reproduce

In the description

A link to a Gist, an Expo Snack or a link to a repository based on this template that reproduces the bug.

n/a

Gesture Handler version

2.30.0

Also reproducible on 2.28.0

React Native version

0.82.0

Platforms

Web, iOS

JavaScript runtime

None

Workflow

None

Architecture

New Architecture (Fabric)

Build type

None

Device

None

Device model

No response

Acknowledgements

Yes

Activity

  1. github-actions commented on Jan 7, 2026

    @github-actions

    Hey! 👋

    The issue doesn't seem to contain a minimal reproduction.

    Could you provide a snack or a link to a GitHub repository under your username that reproduces the problem?

  2. changed the title [-][Pressable] pointerEvents "box-only" and "box-none" broken in latest version[/-] [+][Pressable] pointerEvents "box-only" and "box-none" broken[/+] on Jan 8, 2026
  3. Titozzz commented on Jan 8, 2026

    @Titozzz

    duplicate of #3891 ?

  4. m-bert commented on Jan 20, 2026

    @m-bert
    Collaborator

    Hi @gigobyte! Thanks for reporting this issue. Have you checked #3925? Also, have you tried this on android? I know it says that

    Android and Web look to be fine.

    but from my tests it looks like it is also broken.

  5. gigobyte commented on Jan 20, 2026

    @gigobyte
    ContributorAuthor

    @m-bert

    but from my tests it looks like it is also broken.

    You are correct, it's also broken on Android but in a different way, which is why I assumed it was working when I was testing the sample code. For example, box-only works like none on iOS but like auto/undefined on Android.

  6. huextrat commented on Jan 21, 2026

    @huextrat
    Contributor

    You can apply this fix for Android if you need to make it works: #3927

    As soon as the iOS fix is merged, I will update the Android PR. There will be a small change because of codegen.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions