|
| 1 | +# `react-native` patches |
| 2 | + |
| 3 | +### [react-native+0.79.2+001+initial.patch](react-native+0.79.2+001+initial.patch) |
| 4 | + |
| 5 | +- Reason: Fixes keyboard flickering issue when opening/closing modals. When an input is blurred and a modal is opened, the `rootView` becomes the `firstResponder`, causing the system to retain an incorrect keyboard state. This leads to keyboard flickering when the modal is closed. The patch adds code to resign the `rootView`'s `firstResponder` status before presenting the modal to prevent this issue. |
| 6 | +- Upstream PR/issue: 🛑 |
| 7 | +- E/App issue: 🛑 |
| 8 | +- PR Introducing Patch: https://github.com/Expensify/App/pull/23994 |
| 9 | + |
| 10 | +### [react-native+0.79.2+002+fixMVCPAndroid.patch](react-native+0.79.2+002+fixMVCPAndroid.patch) |
| 11 | + |
| 12 | +- Reason: Fixes content jumping issues with `MaintainVisibleContentPosition` on Android, particularly in bidirectional pagination scenarios. The patch makes two key improvements: |
| 13 | + 1. Changes when the first visible view is calculated - now happens on scroll events instead of during Fabric's willMountItems lifecycle, which was causing incorrect updates |
| 14 | + 2. Improves first visible view selection logic to handle Fabric's z-index-based view reordering by finding the view with the smallest position that's still greater than the scroll position |
| 15 | +- Upstream PR/issue: https://github.com/facebook/react-native/pull/46247 |
| 16 | +- E/App issue: 🛑 |
| 17 | +- PR Introducing Patch: https://github.com/Expensify/App/pull/46315 (introduced), https://github.com/Expensify/App/pull/45289 (refactored) |
| 18 | + |
| 19 | +### [react-native+0.79.2+003+disableTextInputRecycling.patch](react-native+0.79.2+003+disableTextInputRecycling.patch) |
| 20 | + |
| 21 | +- Reason: Disables text input recycling to prevent issues with state of recycled component |
| 22 | +- Upstream PR/issue: 🛑 |
| 23 | +- E/App issue: 🛑 |
| 24 | +- PR Introducing Patch: https://github.com/Expensify/App/pull/13767 |
| 25 | + |
| 26 | +### [react-native+0.79.2+004+iOSFontResolution.patch](react-native+0.79.2+004+iOSFontResolution.patch) |
| 27 | + |
| 28 | +- Reason: Fixes font resolution issues on iOS by properly preserving font properties when loading fonts by name. When a font is loaded by its name, the patch now correctly extracts and uses its actual weight and style properties instead of ignoring them. |
| 29 | +- Upstream PR/issue: 🛑 |
| 30 | +- E/App issue: 🛑 |
| 31 | +- PR Introducing Patch: https://github.com/Expensify/App/pull/13767 |
| 32 | + |
| 33 | +### [react-native+0.79.2+005+resetAutoresizingOnView.patch](react-native+0.79.2+005+resetAutoresizingOnView.patch) |
| 34 | + |
| 35 | +- Reason: This is a workaround fix for an issue with `UIPageViewController` and Fabric's view recycling system. The problem occurs because pager-view was incorrectly using a Fabric-provided view as its content-view. This is problematic because `UIPageViewController` modifies its content view, and when Fabric later recycles this modified view, it can lead to unexpected layout issues. The patch addresses this by resetting the autoresizing mask on the view to prevent layout corruption when views are recycled. The root cause should be addressed in react-native-pager-view: https://github.com/callstack/react-native-pager-view/issues/819 |
| 36 | +- Upstream PR/issue: https://github.com/facebook/react-native/issues/42732 |
| 37 | +- E/App issue: 🛑 |
| 38 | +- PR Introducing Patch: https://github.com/Expensify/App/pull/13767 |
| 39 | + |
| 40 | +### [react-native+0.79.2+006+disableNonTranslucentStatusBar.patch](react-native+0.79.2+006+disableNonTranslucentStatusBar.patch) |
| 41 | + |
| 42 | +- Reason: Disables non-translucent status bar to fix UI issues |
| 43 | +- Upstream PR/issue: 🛑 |
| 44 | +- E/App issue: 🛑 |
| 45 | +- PR Introducing Patch: 🛑 |
| 46 | + |
| 47 | +### [react-native+0.79.2+007+TextInput.patch](react-native+0.79.2+007+TextInput.patch) |
| 48 | + |
| 49 | +- Reason: Fixes TextInput component issues |
| 50 | +- Upstream PR/issue: 🛑 |
| 51 | +- E/App issue: 🛑 |
| 52 | +- PR Introducing Patch: 🛑 |
| 53 | + |
| 54 | +### [react-native+0.79.2+008+iOSCoreAnimationBorderRendering.patch](react-native+0.79.2+008+iOSCoreAnimationBorderRendering.patch) |
| 55 | + |
| 56 | +- Reason: Fixes border rendering issues with Core Animation on iOS |
| 57 | +- Upstream PR/issue: 🛑 |
| 58 | +- E/App issue: 🛑 |
| 59 | +- PR Introducing Patch: 🛑 |
| 60 | + |
| 61 | +### [react-native+0.79.2+009+copyStateOnClone.patch](react-native+0.79.2+009+copyStateOnClone.patch) |
| 62 | + |
| 63 | +- Reason: Ensures state is properly copied when cloning components |
| 64 | +- Upstream PR/issue: 🛑 |
| 65 | +- E/App issue: 🛑 |
| 66 | +- PR Introducing Patch: 🛑 |
| 67 | + |
| 68 | +### [react-native+0.79.2+010+textinput-clear-command.patch](react-native+0.79.2+010+textinput-clear-command.patch) |
| 69 | + |
| 70 | +- Reason: Adds clear command functionality to TextInput |
| 71 | +- Upstream PR/issue: 🛑 |
| 72 | +- E/App issue: 🛑 |
| 73 | +- PR Introducing Patch: 🛑 |
| 74 | + |
| 75 | +### [react-native+0.79.2+011+Add-onPaste-to-TextInput.patch](react-native+0.79.2+011+Add-onPaste-to-TextInput.patch) |
| 76 | + |
| 77 | +- Reason: Adds onPaste event handler to TextInput component |
| 78 | +- Upstream PR/issue: 🛑 |
| 79 | +- E/App issue: 🛑 |
| 80 | +- PR Introducing Patch: 🛑 |
| 81 | + |
| 82 | +### [react-native+0.79.2+012+alert-style.patch](react-native+0.79.2+012+alert-style.patch) |
| 83 | + |
| 84 | +- Reason: Fixes alert styling issues |
| 85 | +- Upstream PR/issue: 🛑 |
| 86 | +- E/App issue: 🛑 |
| 87 | +- PR Introducing Patch: 🛑 |
| 88 | + |
| 89 | +### [react-native+0.79.2+013+fixNavigationAnimations.patch](react-native+0.79.2+013+fixNavigationAnimations.patch) |
| 90 | + |
| 91 | +- Reason: Fixes navigation animation issues |
| 92 | +- Upstream PR/issue: 🛑 |
| 93 | +- E/App issue: 🛑 |
| 94 | +- PR Introducing Patch: 🛑 |
| 95 | + |
| 96 | +### [react-native+0.79.2+014+fixScrollViewState.patch](react-native+0.79.2+014+fixScrollViewState.patch) |
| 97 | + |
| 98 | +- Reason: Fixes ScrollView state management issues |
| 99 | +- Upstream PR/issue: 🛑 |
| 100 | +- E/App issue: 🛑 |
| 101 | +- PR Introducing Patch: 🛑 |
| 102 | + |
| 103 | +### [react-native+0.79.2+015+redactAppParameters.patch](react-native+0.79.2+015+redactAppParameters.patch) |
| 104 | + |
| 105 | +- Reason: Adds redaction of sensitive app parameters |
| 106 | +- Upstream PR/issue: 🛑 |
| 107 | +- E/App issue: 🛑 |
| 108 | +- PR Introducing Patch: 🛑 |
| 109 | + |
| 110 | +### [react-native+0.79.2+016+android-keyboard-avoiding-view.patch](react-native+0.79.2+016+android-keyboard-avoiding-view.patch) |
| 111 | + |
| 112 | +- Reason: Fixes keyboard avoiding view behavior on Android |
| 113 | +- Upstream PR/issue: 🛑 |
| 114 | +- E/App issue: 🛑 |
| 115 | +- PR Introducing Patch: 🛑 |
| 116 | + |
| 117 | +### [react-native+0.79.2+017+fix-mask-persisting-recycling.patch](react-native+0.79.2+017+fix-mask-persisting-recycling.patch) |
| 118 | + |
| 119 | +- Reason: Fixes mask persisting and recycling issues |
| 120 | +- Upstream PR/issue: 🛑 |
| 121 | +- E/App issue: 🛑 |
| 122 | +- PR Introducing Patch: 🛑 |
| 123 | + |
| 124 | +### [react-native+0.79.2+018+fix-text-selecting-on-change.patch](react-native+0.79.2+018+fix-text-selecting-on-change.patch) |
| 125 | + |
| 126 | +- Reason: Fixes text selection issues during onChange events |
| 127 | +- Upstream PR/issue: 🛑 |
| 128 | +- E/App issue: 🛑 |
| 129 | +- PR Introducing Patch: 🛑 |
| 130 | + |
| 131 | +### [react-native+0.79.2+019+fix-scroll-view-jump.patch](react-native+0.79.2+019+fix-scroll-view-jump.patch) |
| 132 | + |
| 133 | +- Reason: Fixes ScrollView jumping issues |
| 134 | +- Upstream PR/issue: 🛑 |
| 135 | +- E/App issue: 🛑 |
| 136 | +- PR Introducing Patch: 🛑 |
| 137 | + |
| 138 | +### [react-native+0.79.2+020+fix-dropping-mutations-in-transactions.patch](react-native+0.79.2+020+fix-dropping-mutations-in-transactions.patch) |
| 139 | + |
| 140 | +- Reason: Fixes issues with dropping mutations in transactions |
| 141 | +- Upstream PR/issue: 🛑 |
| 142 | +- E/App issue: 🛑 |
| 143 | +- PR Introducing Patch: 🛑 |
| 144 | + |
| 145 | +### [react-native+0.79.2+021+fix-crash-when-deleting-expense.patch](react-native+0.79.2+021+fix-crash-when-deleting-expense.patch) |
| 146 | + |
| 147 | +- Reason: Fixes crash when deleting expenses |
| 148 | +- Upstream PR/issue: 🛑 |
| 149 | +- E/App issue: 🛑 |
| 150 | +- PR Introducing Patch: 🛑 |
| 151 | + |
| 152 | +### [react-native+0.79.2+022+fix-surface-stopped-before-started.patch](react-native+0.79.2+022+fix-surface-stopped-before-started.patch) |
| 153 | + |
| 154 | +- Reason: Fixes surface lifecycle issues where surface is stopped before being started |
| 155 | +- Upstream PR/issue: 🛑 |
| 156 | +- E/App issue: 🛑 |
| 157 | +- PR Introducing Patch: 🛑 |
| 158 | + |
| 159 | +### [react-native+0.79.2+023+publish-gradle.patch](react-native+0.79.2+023+publish-gradle.patch) |
| 160 | + |
| 161 | +- Reason: This patch customizes the Gradle publishing script to allow publishing our custom React Native artifacts to GitHub Packages. |
| 162 | +- Upstream PR/issue: 🛑 |
| 163 | +- E/App issue: 🛑 |
| 164 | +- PR Introducing Patch: https://github.com/Expensify/App/pull/59738 |
| 165 | + |
| 166 | +### [react-native+0.79.2+024+restore-old-line-height-algorithm.patch](react-native+0.79.2+024+restore-old-line-height-algorithm.patch) |
| 167 | + |
| 168 | +- Reason: This patch fixes line height calculation issues in Android text rendering by replacing the web-based CSS implementation with a priority-based approach that properly handles cases where font metrics exceed the specified line height, ensuring better text display consistency and preventing text clipping |
| 169 | +- Upstream PR/issue: 🛑 |
| 170 | +- E/App issue: 🛑 |
| 171 | +- PR Introducing Patch: https://github.com/Expensify/App/pull/60421 |
0 commit comments