Skip to content

feat: Add clip-path support for iOS - #58543

Open
marcinszalski-callstack wants to merge 5 commits into
react:mainfrom
marcinszalski-callstack:feat/clip-path-ios
Open

marcinszalski-callstack wants to merge 5 commits into
react:mainfrom
marcinszalski-callstack:feat/clip-path-ios

Conversation

@marcinszalski-callstack

Copy link
Copy Markdown

Summary:

This PR adds support for clip-path CSS attribute for JS. It follows CSS spec described here. It does not provide support for SVG source (<clip-source> values), what can be added in the additional PR if needed. Supported syntax is [<basic-shape>] || <geometry-box>] with almost full support of every basic shape (<basic-shape> = circle | ellipse | rect | polygon | inset | xywh) and references boxes (<geometry-box> = margin-box | border-box | padding-box | content-box | fill-box | stoke-box | view-box).

Work has been split into three PRs for more convenient reviewing process. This part adds iOS support for clipping, path and bounds calculations, native CSS parser.

Changelog:

[IOS] [ADDED] - Add clip-path support for iOS

Test Plan:

Merge JS and Android PRs and run RNTester app.

  • Test Clip Path screen in RNTester app (ClipPathExample.js)
  • C++ CSS parser tests (CSSClipPathTest.cpp)
image

@meta-cla meta-cla Bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Sep 15, 2026
@marcinszalski-callstack

Copy link
Copy Markdown
Author

continuation of the previous PR by Kamil: 54700

@facebook-github-tools facebook-github-tools Bot added the Shared with Meta Applied via automation to indicate that an Issue or Pull Request has been shared with the team. label Sep 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. Shared with Meta Applied via automation to indicate that an Issue or Pull Request has been shared with the team.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant