Repository navigation
We're excited to release React Native Windows 0.85.0 targeting React Native 0.85!
This release is built on React Native 0.85.3.
This release includes the commits to React Native Windows from 04/01/2026 – 10/19/2026.
Requirements
- Visual Studio 2026 is required for RNW 0.85: Upgrade to Visual Studio 2026 (#16170)
- Projects now build against .NET 10: Upgrade projects to .NET 10 (#16226)
- Upgraded to Windows App SDK 1.8 (1.8.260508005): Upgrade to Microsoft.WindowsAppSDK 1.8.260508005 (#16225)
⚠️ Breaking Changes & Upgrade Notes
- New Architecture only — the legacy architecture has been removed; apps on the old architecture must migrate to Fabric / the New Architecture: Enable RCT_REMOVE_LEGACY_ARCH (#16157)
- WebSocket internals unified — the legacy
WinRTWebSocketResourceandJSBigStringResourceDllwere removed; internal, but custom native forks touching these may need updates: Remove old WinRTWebSocketResource implementation (#16229), Remove JSBigStringResourceDll, and unify WebsocketResource (#16159)
✨ New Features & Enhancements
- Adds
hideTitleBarandhideBorderprops to Modal: Add hideTitleBar and hideBorder to Modal (#16108) - Implements
outlinestyle properties on View: Implement outline properties on view (#16074) - Adds
onAuxClickevent support: Add onAuxClick event (6ca3cc9) - Adds ability to make TurboModules eager init: Add ability to make TurboModules eager init (#16093)
- Shows tooltip on keyboard focus and enforces a single visible tooltip: Show tooltip on keyboard focus, enforce single visible tooltip (#16123)
- Exposes
ReactNativeWindowfromReactNativeWin32App: Expose ReactNativeWindow from ReactNativeWin32App (#16214)
🔧 Reliability & Stability
Text & input
- Fixes text input scaling with different screen scales: Fix: text input scaling with different screen scales (#16288)
- Fixes Unicode text length calculation: fix: Unicode Text length Calculation (#16219)
- Fixes multiline TextInput crash from
TxDrawD2Dreentrancy: Fix multiline TextInput crash from TxDrawD2D reentrancy (#16003) - Fixes x86 assert when using custom align: Fix assert in x86 when using custom align (#16152)
Touch, pointer & ScrollView
- Improves touch event handling reliability and performance: Fix touch event handling, improve reliability, and optimize performance (#16048)
- Fixes ScrollView Pressables stuck / dead tap on high-DPI displays: Fix ScrollView Pressables stuck and dead tap on high-DPI displays (#16140)
- Fixes ScrollView keyboard scroll drift on long key press: Fix ScrollView keyboard scroll drift on long key press (#15988)
- Cancels zombie touch state on ScrollView pointer-capture loss: fix: cancel zombie touch state on ScrollView pointer capture loss (#16100), fix: cancel active touches in onPointerCaptureLost (#16086)
- Uses
IsPrimary()for touch pointerisPrimary: fix: use IsPrimary() for touch pointer isPrimary instead of hardcoded id (#16099) - Maps Windows touch pointer IDs to small JS-safe identifiers: fix: map Windows touch pointer IDs to small JS-safe identifiers in CompositionEventHandler (#16081)
Rendering & views
- Fixes some issues with rounded borders: Fix some issues with rounded borders (#16051)
- Fixes Image not consistently re-rendering on source change: Image does not consistently rerender on image source change (#16107)
- Fixes null dereference in
get_SelectionContainerwhen no selection container exists: fix: null dereference in get_SelectionContainer (#16091) - Fixes Modal title bar contrast when the native window is inactive: Fix inactive Modal title bar contrast (#16449)
Accessibility
- Raises UI Automation selection events when
accessibilityState.selectedchanges: Raise UIA events for selection changes (#16447)
Runtime & stability
- Fixes crash attempting to get runtime when shutting down instance: Fix crash attempting to get runtime when shutting down instance (#16238)
- Fixes race condition that can cause the callinvoker to get a null runtime: Race condition can cause the callinvoker to get a null runtime (#16186)
- Fixes WebSocket
binaryTypehandling for binary messages: fix: WebSocket binaryType handling (#16173)
⚡ Performance
- Text rendering performance improvement: Text rendering perf improvement (#16083)
🧰 CLI & Templates
run-windowscan start Metro on a custom port: fix: allow run-windows to start Metro on custom port (#16126)- More consistent template config between ship/debug builds: Update template to have more consistent config between ship/debug (#16165)
- Template imports
Microsoft.Cpp.Default.propsbefore settingReactNativeWindowsDir: Template should import Microsoft.Cpp.Default.props before setting ReactNativeWindowsDir (#16146) - NativeModule templates work with clang: Fix NativeModule templates to work with clang (#15917)
Also includes routine dependency updates (boost 1.84, hermes-windows, PowerShell 7) and CI/build infrastructure improvements. Full changelog: 0.84-stable...0.85-stable.