Skip to content

Merge the latest origin RNW into ZB RNW - #6

Draft
owenjeon wants to merge 381 commits into
zigbang:masterfrom
necolas:master
Draft

owenjeon wants to merge 381 commits into
zigbang:masterfrom
necolas:master

Conversation

@owenjeon

@owenjeon owenjeon commented Apr 4, 2022

Copy link
Copy Markdown

No description provided.

@owenjeon
owenjeon marked this pull request as draft April 17, 2022 15:57
@necolas
necolas force-pushed the master branch 3 times, most recently from 2114416 to 06c14c4 Compare July 6, 2022 23:32
dependabot Bot and others added 25 commits March 20, 2023 11:10
Bumps [webpack](https://github.com/webpack/webpack) from 5.73.0 to 5.76.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](webpack/webpack@v5.73.0...v5.76.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
* Support React 18 concurrency and constraints.
* Add new render / hydrate functions.
* Remove uses of findNodeHandle.
* Expose ability to unmount an application once ran.

Fix #1529
Close #2330
Encourage use of existing array syntax for multiple styles. Eventually
we'll want to remove the compose() API to simplify the overall styling API.
And remove deprecated AppState.removeListener API

Fix #2378
Previously deprecated, and not supported in the React Native Fabric
architecture.

Close #1935
Animated should now work with compiled and extracted styles. The
original styles are passed to components, rather than being flattened
into a new object that cannot be used by the style runtime to either
lookup the results of StyleSheet.create calls or consume extracted
styles. Inline styles that use AnimatedValue are moved into a seperate
object that is appended to the original styles.

Fix #2387
The resizeMode and tintColor props should be used instead. The styles
will be removed in a future release.

Fix #2383
These components have been replaced by Pressable and will be removed
from React Native.

Fix #2382
Port ScrollView from legacy createReactClass to ES6 Class syntax.
* Add support for 'aria-*' and 'role' props.
* Add support for 'id' and 'tabIndex' props.
* Add support for 'pointerEvents' and 'userSelect' styles.
* Deprecate 'accessibility*' props.
* Deprecate 'nativeId' and 'focusable' props.
* Deprecate 'pointerEvents' and 'selectable' props.

Ref #2379
* Add support for 'enterKeyHint' prop.
* Add support for 'inputMode' prop.
* Add support for 'readOnly' prop.
* Add support for 'rows' prop.
* Deprecate 'keyboardType' prop.
* Deprecate 'returnKeyType' prop.
* Deprecate 'editable' prop.
* Deprecate 'numberOfLines' prop.

Ref #2379
* Add support for space-separated values.
* Deprecate array values.

Ref #2379
* Add support for verticalAlign style.
* Deprecate textAlignVertical style.

Ref #2379
Use space-separated values per W3C standard.

Ref #2379
* Support logical styles like 'marginInlineStart' and
  'insetInlineStart' via polyfills.
* Deprecate non-standard 'marginStart' etc. properties.

Ref #2379
This patch reorganizes the style compiler so that the 'preprocess' step
is responsible for all the work needed to transform any non-standard CSS
from React Native into a form that can be 'compiled' to rules for the
CSSStyleSheet.

Over time the 'preprocess' step should eventually be unnecessary as
React Native aligns its APIs with CSS APIs. And any external style
compilers should be able to run the 'preprocess' function over the style
input to produce valid CSS as input for the compiler.
Adds support for PointerEvent prop handlers and removes `onClickCapture`.

Ref #2377
Match default Text rendering in React Native.

Fix #2498
zoontek and others added 30 commits November 4, 2026 16:56
A ScrollView with scrollEnabled={false} set "touch-action: none". This blocked pinch-zoom on it, and blocked scrolling of the page or a parent ScrollView when a drag started on it.

"overflow: hidden" already stops the user from scrolling the ScrollView.
Touch on it now goes to the parent, as on Android.

Fix #2148
…tes it (#2879)

* [fix] Modal: trap focus and handle Escape from the commit that activates it

A modal becomes active, and gets role="dialog", in a render after it
shows. Its focus trap and its Escape listener were set up in passive
effects, which run a task after that render commits. In between:

- A click inside the modal can lose its focus. The previously focused
  element's blur handler may set state (Pressable does), which makes
  React flush the pending effects mid focus change. The trap then sees
  focus outside the modal, focuses its first focusable element, and the
  browser drops the click's own focus change.
- The modal below still has its Escape listener with active=true, so an
  Escape closes the modal below instead of the new top one.

Both effects are now layout effects (SSR-safe, via
modules/useLayoutEffect), so they take effect in the same commit as
role="dialog".

* review

---------

Co-authored-by: Ioannis <2973490+ilazaridis@users.noreply.github.com>
Co-authored-by: Mathieu Acthernoene <zoontek@gmail.com>
Apply the textAlign prop as a style. A textAlign value in style takes precedence over the prop, as in React Native.

Fix #2593
locationX and locationY were the offset from the bounding client rect. That rect includes ancestor transforms, so the values were wrong in a scaled view. They are now divided by the scale (rect size / offset size). Differences below 1px are ignored, because the offset size is rounded.

Fix #2619
When a modal opens, its focus trap focuses the first focusable element. Safari scrolls that element into view, which overrides the initial scroll position of a ScrollView or FlatList (e.g. initialScrollIndex). This first focus now uses preventScroll. Later focus moves, such as Tab wrap-around, still scroll the element into view.

Fix #2544
… first group

Hydration expected the first rule of the style sheet element to be a group marker. A rule placed before it, such as a page's own rule or an `@layer` block, made it throw. These rules are now ignored.
Close on keydown instead of keyup. When the app closed the top modal on keydown, the modal below became active and closed on the keyup of the same key press.
Escape is now ignored on key repeat and when the keydown event was handled with preventDefault().

Closes #2862
…s both Pressables

When the pointer left a nested Pressable, the outer Pressable always started its hover again, even when the pointer had also left the outer one. The outer Pressable then got onHoverIn and onHoverOut together, for example when the pointer moved off both in one move, or when an overlay opened under the pointer.
An ancestor now starts its hover again only when it contains the element the pointer moved into.

Closes #2947
The wrapper View added around each child for scroll snapping was a column, so a horizontal child with height: '100%' (like a FlatList item) collapsed to 0.
The wrapper now uses the row direction in horizontal mode.

Fix #1299
If a Pressable unmounted while Enter was held, its document keyup listener stayed attached. Releasing Enter then called onPressOut on the unmounted component.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.