Commit Graph
32109 Commits
Author SHA1 Message Date
tarunrajput 202b965fed add emitObjectProp in parser primitives (#37872)
Summary:
Part of https://github.com/facebook/react-native/issues/34872
> Create a function emitObjectProp(name: string, optional: boolean) in parser-primitives.js. Factor out the code from [Flow](https://github.com/facebook/react-native/blob/d8ced6f8953cd896471983714e722caf50783960/packages/react-native-codegen/src/parsers/flow/components/events.js#L84-L93) and [TypeScript](https://github.com/facebook/react-native/blob/d8ced6f8953cd896471983714e722caf50783960/packages/react-native-codegen/src/parsers/typescript/components/events.js#L87-L96) into that function. Use that function in the original call site.

## Changelog:

<!-- Help reviewers and the release process by writing your own changelog entry.

Pick one each for the category and type tags:

[ANDROID|GENERAL|IOS|INTERNAL] [BREAKING|ADDED|CHANGED|DEPRECATED|REMOVED|FIXED|SECURITY] - Message

For more details, see:
https://reactnative.dev/contributing/changelogs-in-pull-requests
-->

[Internal][Changed]: Add emitObjectProp in parser primitives

Pull Request resolved: https://github.com/facebook/react-native/pull/37872

Test Plan:
```shell
yarn test react-native-codegen
```

Reviewed By: cipolleschi

Differential Revision: D46715634

Pulled By: rshest

fbshipit-source-id: 6c58002df132bc5b05a10a19f8611819d7179cb1
2023-06-14 11:53:02 -07:00
Ruslan Shestopalyuk 44755726ed Performance.measure: handle the case with a single startMark argument correctly (#37888)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37888

# Changelog:
[Internal] -

There was one particular permutation of input arguments to `Performance.measure` that wasn't handled correctly on the native side, namely when there is only the start mark argument present, but not the end time/mark, e.g.:
```
Performance.measure('myMeasure', 'someStartMark');
```

In this case, [according to the standard](https://developer.mozilla.org/en-US/docs/Web/API/Performance/measure), the end time should be taken as the current one:
> The end timestamp is one of:
> ...
>  -the value returned by Performance.now(), if no end mark is specified or can be determined from other values.

It was taken as 0 instead, making the total duration negative and consequently getting it filtered out by the default `durationThreshold` of 0.

I've added a corresponding missing clause in the native unit tests. This also required a slight extension to the `PerformanceObserver` API to allow for mocking the current timestamp provider.

Reviewed By: rubennorte

Differential Revision: D46728261

fbshipit-source-id: bd904d9c93707fa04c1a0ddb30802691e253c106
2023-06-14 11:20:10 -07:00
Pranav Yadav 377a8b70ee Add README to RN Template App, added when npx react-native@latest init <AppName> (#37521)
Summary:
[skip-ci]
I noticed that; when a _new_ RN App is created using RN CLI there is ***NO*** *README* file added to the project.
Having a simple README file explaining what type of project it is, for example how other web projects do it, such as long lived `create-react-app`, now widely used `create-next-app`, etc.

Why not for React Native App then?

This PR; Adds README file to RN Template App ⚡, which should be added to the project when a new project is created using RN CLI.

### Website PR: https://github.com/facebook/react-native-website/pull/3732 🚀😇

bypass-github-export-checks

## Changelog:

[INTERNAL] [ADDED] - Add README to RN Template App ⚡

Pull Request resolved: https://github.com/facebook/react-native/pull/37521

Test Plan: - The README file should be included in the newly created RN App using RN CLI

Reviewed By: NickGerleman

Differential Revision: D46075719

Pulled By: cipolleschi

fbshipit-source-id: efcccc09d72c57a065b36de6e787594082000e15
2023-06-14 10:33:23 -07:00
Lorenzo Sciandra 8d694c8e09 add 0.71.11 changelog (#37887)
Summary:
Adds changelog for new patch.

## Changelog:

<!-- Help reviewers and the release process by writing your own changelog entry. For an example, see:
https://reactnative.dev/contributing/changelogs-in-pull-requests
-->

[Internal] [Changed] - add changelog entry for 0.71.11

Pull Request resolved: https://github.com/facebook/react-native/pull/37887

Test Plan: N/A

Reviewed By: dmytrorykun

Differential Revision: D46727332

Pulled By: cipolleschi

fbshipit-source-id: 169f37efa629771cd7fd1796e575f92abac26d9e
2023-06-14 10:31:13 -07:00
Riccardo Cipolleschi daa99fe5e7 Cleanup, remove the PRODUCTION flag (#37882)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37882

After some progressive changes, we can finally remove the PRODUCTION flag from the codebase.

## Changelog:
[iOS][Removed] - Remove PRODUCTION flag from iOS build logic

Reviewed By: cortinico, dmytrorykun

Differential Revision: D46726208

fbshipit-source-id: 407268779be8de32c5a6c15ba220a60b7cb9ced7
2023-06-14 10:10:16 -07:00
Riccardo Cipolleschi 332be0f0c8 download hermes-engine when the configuration change (#37850)
Summary:
Currently, we ask users to reinstall the pods using the `PRODUCTION` flag when they want to either profile their app or prepare a release.

This way of working with the Release mode is not standard. One of the reason why we introduced it was to provide a different binary for Hermes and reinstalling the pods was the quickest way.

With this change, we are deferring the decision on when Hermes should be installed for apps to the moment where the app is actually build by the system.

These changes are not applied to Nightlies, when a specific tarball is passed to the cocoapods using the `HERMES_ENGINE_TARBALL_PATH` env var, and when hermes is built from source as in these scenarios we are usually not interested in building for Release.

The system is also smart enough not to redownload the tarball if the configuration does not change. It assumes that the default configuration when the pods are installed for the first time is Debug.

## Changelog:

[IOS] [CHANGED] - Download the right `hermes-engine` configuration at build time.

Pull Request resolved: https://github.com/facebook/react-native/pull/37850

Test Plan:
- CircleCI green for the Release template jobs
- Tested locally modifying the `hermes-utils` to force specific versions.
- Tested locally with RNTestProject

Reviewed By: dmytrorykun

Differential Revision: D46687390

Pulled By: cipolleschi

fbshipit-source-id: 375406e0ab351a5d1f5d5146e724f5ed0cd77949
2023-06-14 10:10:16 -07:00
Ruslan Shestopalyuk b3cc19ce64 Add @Nullable annotations to ViewUtils (#37877)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37877

# Changelog:
[Internal] -

A quick follow-up to https://github.com/facebook/react-native/pull/37851

There was a suggestion to add `Nullable` annotations, but the change had already landed at that point, so putting up another one.

Reviewed By: cortinico

Differential Revision: D46721095

fbshipit-source-id: 7361dec852160126c861ee2b22db240e586cc452
2023-06-14 09:47:52 -07:00
Riccardo Cipolleschi de6bfec82a Disable bitcode from Hermes (#37868)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37868

Thanks to the help of the community, we discovered that we can safely disable the bitcode setting in Hermes.

Community testing reported that the tarball size get reduced from ~500 Mb to ~25 Mb, a x20 reduction

## Changelog:
[iOS][Changed] - Disabled bitcode for Hermes prebuilts

Reviewed By: dmytrorykun

Differential Revision: D46704633

fbshipit-source-id: a6624110f27eb9f18e6b57ed28aa2f86804d45e7
2023-06-14 07:46:07 -07:00
Luna Wei be348528e6 Delete validation in set-rn-version (#37814)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37814

Changelog: [Internal] - deleting file validation, do we need this?

Reviewed By: NickGerleman

Differential Revision: D46584771

fbshipit-source-id: 69a8853872b2b1582318a2e65d9919e2b50b2475
2023-06-14 07:44:51 -07:00
Luna Wei 31eb235a6a Fix set-rn-version (#37854)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37854

Changelog: [Internal] - Fix `saveFiles` in set-rn-version, incorrect function invoke

Reviewed By: NickGerleman

Differential Revision: D46582168

fbshipit-source-id: 944e182a88a1aa79bbf47d36ef8395c21dfefb24
2023-06-14 07:44:51 -07:00
Ethan Gill af99a6890b Update TODO task numbers for Binding.cpp (#37844)
Summary:
Changelog: [Internal]

Pull Request resolved: https://github.com/facebook/react-native/pull/37844

T132338609 (open) is the Android equivalent of T130208323 (closed)

Reviewed By: javache, luluwu2032

Differential Revision: D46682202

fbshipit-source-id: 8fb5061367af8b62d2889ccbd5f3e90824d9302d
2023-06-14 05:21:49 -07:00
Intl Scheduler 168f8a526a translation auto-update for i18n/anna.config.json on master
Summary:
Chronos Job Instance ID: 1125907899375459
Sandcastle Job Instance ID: 36028797991662582
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46722124

fbshipit-source-id: 7f205866265c1a0fdf738a6ea64dc909293b6f85
2023-06-14 04:52:51 -07:00
Intl Scheduler 406fb0edcf translation auto-update for i18n/adsmanager.config.json on master
Summary:
Chronos Job Instance ID: 1125907899375459
Sandcastle Job Instance ID: 36028797991662582
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46722119

fbshipit-source-id: 4377e640f5e8337ac67734b4d6bf244a22c9c24e
2023-06-14 04:52:51 -07:00
Intl Scheduler 2eb6e975e1 translation auto-update for i18n/fb4a.config.json on master
Summary:
Chronos Job Instance ID: 1125907899375459
Sandcastle Job Instance ID: 36028797991662582
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46722111

fbshipit-source-id: 867dec5275f09c568c8de2ea54ce7ceb5441c73e
2023-06-14 04:52:51 -07:00
Intl Scheduler 994547a9f4 translation auto-update for i18n/instagram.config.json on master
Summary:
Chronos Job Instance ID: 1125907899375459
Sandcastle Job Instance ID: 36028797991662582
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46722128

fbshipit-source-id: 18b2bfef14410db7655c9af8dfd102feafc395eb
2023-06-14 04:52:51 -07:00
Intl Scheduler d1f158b103 translation auto-update for i18n/pages-manager.config.json on master
Summary:
Chronos Job Instance ID: 1125907899375459
Sandcastle Job Instance ID: 36028797991662582
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46722113

fbshipit-source-id: 2c9ccb5614b51bc33f9915b441a4731b0cec4979
2023-06-14 04:52:51 -07:00
Intl Scheduler 7caa327643 translation auto-update for i18n/portal_workplacelive_on_portal.config.json on master
Summary:
Chronos Job Instance ID: 1125907899375459
Sandcastle Job Instance ID: 36028797991662582
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46722126

fbshipit-source-id: cbdaa8940a1743482f38e05d24b93371551cebd1
2023-06-14 04:52:51 -07:00
Intl Scheduler 06b2c7eb55 translation auto-update for i18n/oculus-mirage.config.json on master
Summary:
Chronos Job Instance ID: 1125907899375459
Sandcastle Job Instance ID: 36028797991662582
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46722114

fbshipit-source-id: 9259e4403318f1cecd3fc1cf4ac145e7eaec3b63
2023-06-14 04:52:51 -07:00
jaroslawmichalik af4a0336e9 Convert JavaOnlyArrayTest to Kotlin (#37855)
Summary:
Part of https://github.com/facebook/react-native/issues/37708

## Changelog:
[Internal] [Changed] - Convert JavaOnlyArrayTest to Kotlin

Pull Request resolved: https://github.com/facebook/react-native/pull/37855

Reviewed By: cortinico

Differential Revision: D46697501

Pulled By: rshest

fbshipit-source-id: edc3906c41af4936eacdeb95502cc62f80ae89c8
2023-06-14 02:07:53 -07:00
Intl Scheduler b03c5affdb translation auto-update for Apps/Wilde/scripts/intl-config.json on master
Summary:
Chronos Job Instance ID: 1125907899298431
Sandcastle Job Instance ID: 974117684
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46712473

fbshipit-source-id: 59819cf17e00294b9ca34f71a5a8675458f7795c
2023-06-13 20:27:17 -07:00
Genki Kondo c870a529fe Trigger rerender on animation complete (#37836)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37836

When using the native driver for animations that involve layout changes (ie. translateY and other transforms, but not styles such as opacity), because it bypasses Fabric, the new coordinates are not updated so the Pressability responder region/tap target is incorrect.

Prior diffs ensure that upon completion of natively driven animations, the final values are synced to the JS side AnimatedValue nodes. In this diff, on completion of a natively driven animation, AnimatedProps.update() is called, which in turn calls the value update callback on AnimatedProps, which [triggers a rerender (via setState)](https://www.internalfb.com/code/fbsource/[566daad5db45807260a8af1f85385ca86aebf894]/xplat/js/react-native-github/packages/react-native/Libraries/Animated/useAnimatedProps.js?lines=80) which has the effect of pushing the latest animated values to Fabric.

Alternative considered was using setNativeProps, but that approach was dropped as setNativeProps was only introduced to make migration easier and should not be used for new code, as per sammy-SC.

Changelog:
[General][Fixed] - When animating using native driver, trigger rerender on animation completion in order to update Pressability responder regions

Reviewed By: javache

Differential Revision: D46655246

fbshipit-source-id: b008c24f9d016be4b145ba799fffae5f55fab787
2023-06-13 18:33:55 -07:00
David Vacca 0c520e0f43 Back out "Move BridgelessReactPackage to com.facebook.react package"
Summary:
Original commit changeset: ac172d22a6d7

Original Phabricator Diff: D46408934

bypass-github-export-checks

changelog: [internal] internal

Reviewed By: NickGerleman

Differential Revision: D46699758

fbshipit-source-id: aa428924eff28e188f963c84c5b7d3a036b9ccf7
2023-06-13 17:00:20 -07:00
Vincent Riemer 9e50185d97 Back out "Add plumbing/boilerplate for an iOS implementation of the gotpointercapture and lostpointercapture events" (#37861)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37861

Changelog: [Internal] - Back out of "Add plumbing/boilerplate for an iOS implementation of the `gotpointercapture` and `lostpointercapture` events"

Original commit changeset: c9da5691d399

Original Phabricator Diff: D44977499

This diff appears to be causing issues as reported on T155721480 related to the file `RawPropsKeyMap.cpp` which, while I haven't figured out exactly why this is occurring, confirmed that this diff is causing the issue. In order to buy myself some more time as I diagnose this I'm backing the changes out in this diff.

Reviewed By: adanoff

Differential Revision: D46691035

fbshipit-source-id: 383b46732a3fad24a50e18ab948c96ce9bfe429e
2023-06-13 16:39:08 -07:00
Rubén Norte a53e81ead9 Define FabricUIManager as an interface instead of as an object (#37849)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37849

The typing for `FabricUIManager` makes more sense as an interface (the same way we type native modules) than as an object, as the underlying implementation used to be a host object where properties were actually not enumerable, etc. This replaces that with a definition more aligned with how we actually use it.

This also allows us to extend the mock with testing specific methods more easily (like in D45278720).

Changelog: [internal]

Reviewed By: javache

Differential Revision: D46684044

fbshipit-source-id: 379cc3f95a7cbae733ed6a3a57e68b33efd21d34
2023-06-13 16:36:04 -07:00
Rubén Norte b46992de8a Type mock.contexts correctly in Jest (#37847)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37847

Jest supports accessing the contexts used to call mock functions (the `this` value) but we're not typing that correctly in the definitions in React Native. This changes that.

Changelog: [internal]

Reviewed By: javache

Differential Revision: D46684043

fbshipit-source-id: ff121e0726748788591e7d061a39fde238c1ddbe
2023-06-13 16:36:04 -07:00
Aymane Missouri 1e332b8630 convert HeaderUtilTest to kotlin (#37829)
Summary:
This PR converts HeaderUtilTest.java to Kotlin as requested in https://github.com/facebook/react-native/issues/37708.

## Changelog:

[INTERNAL] [CHANGED] - Convert HeaderUtilTest to Kotlin

Pull Request resolved: https://github.com/facebook/react-native/pull/37829

Test Plan:
Run ./gradlew :packages:react-native:ReactAndroid:test.
All tests should pass.

Reviewed By: mdvacca

Differential Revision: D46647152

Pulled By: cortinico

fbshipit-source-id: a05108c4cae28526ac55f4f273673221e3ff4cf1
2023-06-13 16:20:02 -07:00
Nick Gerleman a7e5c96a3d Localize Talkback strings (#37856)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37856

These strings are spoken to the user when using an ascessibility role or state not natively supported by Talkback.

We can enable these for translation by removing flags to disable localization, and adding descriptions to each string. These are derived from MDN for ARIA (used for iOS strings), along with Android and iOS documentation.

Note that this was explicitly disabled as part of D15087192 because of creating spam which was hitting the GitHub repo, but when translation was enabled for the dev menu, this ended up being a non-issue after initial translation. And we really do want these to be localized.

Changelog:
[Android][Fixed] - Localize Talkback strings

Reviewed By: cortinico

Differential Revision: D46692127

fbshipit-source-id: 6da4a181e03f46bad850e4385b94155695a142a8
2023-06-13 15:50:01 -07:00
Nick Gerleman 75a5ec05bd Descriptive CocoaPods error if CMake is not installed (#37839)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37839

The CocoaPods build assumes that a `cmake` command is present during `pod install`. It acts gracefully if it is not and propagates an empty string path, leading to a confusing error during the build, and requiring a `pod deintegrate` after CMake is installed because of when the binary is set.

This replaces the usage with `Pod::Executable::which!`, the built-in CocoaPods method of finding an executable from `PATH` which errors out the build if not found. This will cause a failure during `pod install`, when we are looking for the command, and specify that `cmake` is the missing executable.

This branch is only taken for source builds, so this will not show up in the cases where we do not need CocoaPods.

Changelog:
[iOS][Fixed] - Descriptive Cocoapods Error if CMake is not installed

Reviewed By: cipolleschi

Differential Revision: D46670007

fbshipit-source-id: d508743d51f9b99e1bce7d4d3cef6395d5abf46d
2023-06-13 14:38:13 -07:00
Phillip Pan a4dae044df test RCTInstance initialization (#37860)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37860

Changelog: [Internal]

Reviewed By: cipolleschi

Differential Revision: D46547013

fbshipit-source-id: 2b1593799ce2b5d29e7ea6df4373ff6c92b51065
2023-06-13 14:24:12 -07:00
Phillip Pan be2b0e2d8a lift out ShimRCTInstance to RCTTestUtils (#37859)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37859

Changelog: [Internal]

as title

Reviewed By: cipolleschi

Differential Revision: D46547014

fbshipit-source-id: ca89d659d24fa0fcef1c39fc47fc758cee34f7d8
2023-06-13 14:24:12 -07:00
Phillip Pan 03c978d2cc add unit test for start method on RCTHost (#37858)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37858

Changelog: [Internal]

in this diff, i add a test that runs `start` validates that the lifecycle `hostDidStart:` is called as a result.

notably, i created a custom shim for `RCTInstance` to completely stub out its behavior.

Reviewed By: cipolleschi

Differential Revision: D46508066

fbshipit-source-id: e815aee64d06b160f2cbdc52720a8e698d11c680
2023-06-13 14:24:12 -07:00
Luna Wei d631e0d9e9 test-e2e-local dont launch emulator if device connected (#37862)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37862

Changelog: [Internal] - Don't launch android emulator if you already have a device connected.

Reviewed By: cortinico

Differential Revision: D46688735

fbshipit-source-id: 1256792f96ef6989465e7cbe43385469502b46fe
2023-06-13 13:28:12 -07:00
Ruslan Shestopalyuk 922681f15b Add getTestId into views/common (#37851)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37851

## Changelog
[Internal] -

The `testId` value in practice can be used for other things than e2e tests - e.g. there is already a use case for Accessibility, but also we may want to log it as an extra data point with e.g. performance metrics.

This exposes a helper function to extract a `testId` from a view.

Differential Revision: D46684365

fbshipit-source-id: 17602307c468a906ef4d0679e826dbcd1eb651b7
2023-06-13 11:54:54 -07:00
Nick Gerleman 09d357c0df Fix undefined symbols _FBcoreLocalexxHash48 and _RCTLocalizedStringFromKey in OSS (#37838)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37838

We see a linker failure in the OSS build because our header exports C-style functions (not ObjC), that Objective C will assume are C ABI, but we build them as C++ functions.

Internally these are all marked as `extern "C"`, so to not deviate I did the same here to expose these always as plain C functions.

Changelog: [Internal]

Reviewed By: cipolleschi

Differential Revision: D46671506

fbshipit-source-id: 5b3005074303763d55801c4d24ac9250b96d45ba
2023-06-13 08:06:24 -07:00
Gabriel Donadel b5f52216b0 Add getObjectProperties function to Parser (#37789)
Summary:
[Codegen 128] This PR add a `getObjectProperties` function to the Parser interface, which returns the properties of an object represented by a type annotation as requested on https://github.com/facebook/react-native/issues/34872

## Changelog:

[INTERNAL] [ADDED] - Add getObjectProperties function to codegen Parser

Pull Request resolved: https://github.com/facebook/react-native/pull/37789

Test Plan: Run `yarn jest react-native-codegen` and ensure CI is green

Reviewed By: cipolleschi

Differential Revision: D46584748

Pulled By: rshest

fbshipit-source-id: 7f509b6f8754472a9b3048214345dc94265604ba
2023-06-13 07:45:47 -07:00
Luna Wei e82bb7beb5 rn-ci-e2e-test CircleCI using wrong parameters (#37852)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37852

Changelog: [Internal] - rn-ci-e2e-test is running on CircleCI but has been passing in the wrong parameter with `--version` -- which didn't evaluate the script, it would early exit as `--version` is a reserved parameter in yargs.

You can see if you do `node scripts/set-rn-version.js --help`

When I fixed this [here](https://www.internalfb.com/diff/D46511840?dst_version_fbid=827076485041949&transaction_fbid=625055476222975), forgot to pass `build-type` parameter

This will fix the broken testjs e2e builds here: https://app.circleci.com/pipelines/github/facebook/react-native/25703/workflows/11a41ba1-c731-44e4-b515-a8b209ae0848/jobs/732035

Reviewed By: rshest

Differential Revision: D46672741

fbshipit-source-id: 4a189127e4d0545192a03c1e7abc995dff6f83ae
2023-06-13 07:32:13 -07:00
Gabriel Donadel 9c9945a5bf Revert "fix: border width top/bottom not matching the border radius" (#37840)
Summary:
In an effort to fix https://github.com/facebook/react-native/issues/37753, this PR reverts the changes introduced by https://github.com/facebook/react-native/commit/cd6a91343ee24af83c7437b3f2449b41e97760e9 and https://github.com/facebook/react-native/commit/1d5103227851ab92de889d5e7e910393b5d8743a so border-radius width calculations work as expected

## Changelog:

[ANDROID] [FIXED] - Fix border-radius width calculations

Pull Request resolved: https://github.com/facebook/react-native/pull/37840

Test Plan:
Test border colors along with border-radius through RNTester
<img width="538" alt="image" src="https://github.com/facebook/react-native/assets/11707729/4b148d4b-35dc-4737-be00-c5ff156b0865">

Reviewed By: dmytrorykun

Differential Revision: D46684071

Pulled By: cipolleschi

fbshipit-source-id: cf7a80d0d63009b457f03d690b632e332a9b4a02
2023-06-13 07:29:02 -07:00
Pieter De Baets 3006a33baf Remove unused CookieHandler from ForwardingCookieHandler (#37775)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37775

Most of this code was made irrelevant when we dropped support for API < 21 in D24548084.

Changelog: [Internal]

Reviewed By: NickGerleman

Differential Revision: D46557892

fbshipit-source-id: 6af85a24d476fe1010eb62126b4c5e9df14a0ea2
2023-06-13 05:30:20 -07:00
TatianaKapos efc5f73f27 Specify float value in ParagraphLayoutManager (#37660)
Summary:
React-Native-Windows had to override this file because we treat certain warning as errors. This fix adds in the "f suffix" to remove the unspecified float error.

## Changelog:
[GENERAL] [FIXED] - Specify float value in ParagraphLayoutManager

Pull Request resolved: https://github.com/facebook/react-native/pull/37660

Test Plan: Tested with RNW tests

Reviewed By: NickGerleman

Differential Revision: D46560099

Pulled By: javache

fbshipit-source-id: de593cbe60677533f5194ab8fd7e650607b5829e
2023-06-13 05:30:16 -07:00
David Vacca 3f7507bae9 Move BridgelessReactPackage to com.facebook.react package (#37697)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37697

Move BridgelessReactPackage to com.facebook.react package.
This is necessary because BridgelessReactPackage is a core package that needs to be part of RN (and should not be re-defined by all apps)

I will revisit naming in a later diff

bypass-github-export-checks

changelog: [internal] internal

Reviewed By: cortinico, philIip

Differential Revision: D46408934

fbshipit-source-id: ac172d22a6d70c9d33d2e119da93b25736d85383
2023-06-12 20:19:06 -07:00
David Vacca 8351b08088 Fix lint warnings (#37699)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37699

Fix lint warnings

bypass-github-export-checks

changelog: [internal] internal

Reviewed By: cortinico, philIip

Differential Revision: D46407027

fbshipit-source-id: 80acd2a811f712be6a4b228ec3450dcbdf0d3ce3
2023-06-12 20:19:06 -07:00
David Vacca f821797e51 Reduce visibility of NativeModule methods in ReactHost (#37692)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37692

In this diff I'm reducing visibility of NativeModule methods in ReactHost (from public to package)

bypass-github-export-checks

changelog: [internal] ineternal

Reviewed By: cortinico, philIip, RSNara

Differential Revision: D46296987

fbshipit-source-id: d50ff9f855c71ee9565f0bc81ffe8be2fd0e2368
2023-06-12 20:19:06 -07:00
David Vacca 579d11ca9e Rename ReactHost.preload -> ReactHost.start (#37694)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37694

Rename ReactHost.preload -> ReactHost.start to adhere to stable api

bypass-github-export-checks

changelog: [internal] internal

Reviewed By: RSNara

Differential Revision: D46294685

fbshipit-source-id: 683683a557c28759db8925e0c0dd6629463511eb
2023-06-12 20:19:06 -07:00
Vincent Riemer 001e182f08 Add PointerEventCaptureMouse WPT test (#37603)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37603

Changelog: [Internal] - Add PointerEventCaptureMouse WPT test

This diff introduces a port of the wpt test "pointerevent_capture_mouse" (https://github.com/web-platform-tests/wpt/blob/master/pointerevents/pointerevent_capture_mouse.html) in preparation of validating our pointer capture implementation.

Reviewed By: adanoff

Differential Revision: D46230497

fbshipit-source-id: ebdfaad23935b96d35da98e30bd326ae1b50759a
2023-06-12 19:27:14 -07:00
Vincent Riemer 1ae1cc01ab Add plumbing/boilerplate for an iOS implementation of the gotpointercapture and lostpointercapture events (#37602)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37602

Changelog: [Internal] - Add plumbing/boilerplate for an iOS implementation of the `gotpointercapture` and `lostpointercapture` events

This diff simply adds the boilerplate necessary to hook up the `gotpointercapture` and `lostpointercapture` events to the fabric iOS touch handler. This diff does not contain any actual implementation of their behavior as that will occur in future diffs.

Reviewed By: yungsters

Differential Revision: D44977499

fbshipit-source-id: c9da5691d399f612f1980c7692c4ca62877901a9
2023-06-12 19:27:14 -07:00
Bernhard Owen Josephus 83d7a48a46 Resubmit D46501420 (#37790)
Summary:
Multiline text in Android shows some extra space. It's easily noticeable when you set the text `alignSelf` to `flex-start`. This is because we are using `layout.getLineWidth` which will include trailing whitespace.
<img width="300" alt="image" src="https://github.com/facebook/react-native/assets/50919443/8939092b-caef-4ad8-9b34-2ccef5d20968">

Based on Android doc, `getLineMax` exclude trailing whitespace.
<img width="625" alt="image" src="https://github.com/facebook/react-native/assets/50919443/0b32e842-5fab-4fc7-8fd9-299877b9c553">

## Changelog:

<!-- Help reviewers and the release process by writing your own changelog entry.

Pick one each for the category and type tags:

[ANDROID] [FIXED] - Exclude trailing whitespace from newline character on measuring text line width

For more details, see:
https://reactnative.dev/contributing/changelogs-in-pull-requests
-->

[ANDROID] [FIXED] - Exclude trailing whitespace from newline character on measuring text line width

Pull Request resolved: https://github.com/facebook/react-native/pull/37790

Test Plan:
After applying the changes:
<img width="300" alt="image" src="https://github.com/facebook/react-native/assets/50919443/bfbf52b0-7e7d-4c89-8958-6af38d8bc1c7">

Code snippet:
```
<Text style={{backgroundColor: 'red', alignSelf: 'flex-start', color: 'white'}}>
    1{'\n'}
</Text>
```

Reviewed By: cortinico

Differential Revision: D46586516

Pulled By: NickGerleman

fbshipit-source-id: 3ea9c150ad92082f9b4d1da453ba0ef04b09ce51
2023-06-12 15:28:56 -07:00
Nick Gerleman 1f45459414 Localize Voiceover strings in Fabric (#37679)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37679

This reuses the localizations from the last diff on the stack, on top of the new logic added with D45797554.

Changelog:
[iOS][Fixed] - Localize Voiceover strings in Fabric

Reviewed By: philIip

Differential Revision: D46426571

fbshipit-source-id: 7e6adc9eff5e6387299e95b6ea5eba8e2607386a
2023-06-12 15:22:05 -07:00
Nick Gerleman 0e99b19257 RCTLocalizedString: Replace usages of AccessibilityResources (#37680)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37680

Changelog:
[iOS][Fixed] - Localize Voiceover strings in Paper

## Stack

React Native on iOS adds strings to Voiceover interactions to supply more information to users . Internally, and out-of-the-box externally, these are today always announced in English instead of being localized.

This stack adds a limited new internal API, `RCTLocalizedString(string, description)` to allow auto-translated strings which are consumed by both Meta and OSS.

Reviewed By: cipolleschi

Differential Revision: D46415273

fbshipit-source-id: 4174e38cef4eee251fa2d59e10763cde8e8681ad
2023-06-12 15:22:05 -07:00
Nick Gerleman f83ca12c40 RCTLocalizedString: Extract FBTs to bundle for CocoaPods (#37678)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37678

## Stack

React Native on iOS adds strings to Voiceover interactions to supply more information to users . Internally, and out-of-the-box externally, these are today always announced in English instead of being localized.

This stack adds a limited new internal API, `RCTLocalizedString(string, description)` to allow auto-translated strings which are consumed by both Meta and OSS.

Reviewed By: cipolleschi

Differential Revision: D46414630

fbshipit-source-id: 1137182dbbd89d959b3d143ce534229968bdb8f7
2023-06-12 15:22:05 -07:00
Nick Gerleman 9b47148dd8 RCTLocalizedString: Add RCTLocalizedString (#37677)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37677

## Stack

React Native on iOS adds strings to Voiceover interactions to supply more information to users . Internally, and out-of-the-box externally, these are today always announced in English instead of being localized.

This stack adds a limited new internal API, `RCTLocalizedString(string, description)` to allow auto-translated strings which are consumed by both Meta and OSS.

Reviewed By: shwanton

Differential Revision: D46414631

fbshipit-source-id: 567a3500d39c1cb830e050edb1a644e3d8d502d3
2023-06-12 15:22:05 -07:00