Skip to content
This repository was archived by the owner on Aug 13, 2024. It is now read-only.

Commit 906907e

Browse files
committed
feat!: drop 0.63.x
1 parent fb652e4 commit 906907e

File tree

3 files changed

+19
-8
lines changed

3 files changed

+19
-8
lines changed

README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,11 @@ A utility package that enables the use of `onStartReached` and `maintainVisibleC
88
npm install @sendbird/react-native-scrollview-enhancer
99
```
1010

11+
| React-Native version | react-native-scrollview-enhancer version |
12+
| -------------------- | ---------------------------------------- |
13+
| `>=0.64` | `0.2.x` |
14+
| `<=0.63` | `0.1.2` |
15+
1116
## Usage
1217

1318
You can use a scroll view components with `onStartReached` and `maintainVisibleContentPosition` applied as follows.

android/src/main/java/com/scrollviewenhancer/MaintainVisibleScrollPositionHelper.kt

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ import com.facebook.react.uimanager.ReactShadowNode
2222
import com.facebook.react.uimanager.UIImplementation.LayoutUpdateListener
2323
import com.facebook.react.uimanager.UIManagerHelper
2424
import com.facebook.react.uimanager.UIManagerModule
25-
import com.facebook.react.uimanager.UIManagerModuleListener
2625
import com.facebook.react.views.scroll.ReactScrollView
2726
import com.facebook.react.views.view.ReactViewGroup
2827
import java.lang.ref.WeakReference
@@ -61,7 +60,7 @@ abstract class MVCPHelper {
6160
class MaintainVisibleScrollPositionHelper(
6261
private val mScrollView: ReactScrollView,
6362
private val mHorizontal: Boolean = false
64-
): MVCPHelper(), UIManagerModuleListener, LayoutUpdateListener {
63+
): MVCPHelper(), UIManagerListener, LayoutUpdateListener {
6564
private var mFirstVisibleView: WeakReference<View>? = null
6665
private var mPrevFirstVisibleFrame: Rect? = null
6766
private var mListening: Boolean = false
@@ -83,7 +82,7 @@ class MaintainVisibleScrollPositionHelper(
8382
if (mListening) return
8483

8584
mListening = true
86-
uiManagerModule?.addUIManagerListener(this)
85+
uiManager.addUIManagerEventListener(this)
8786
uiManagerModule?.uiImplementation?.setLayoutUpdateListener(this)
8887
}
8988

@@ -94,7 +93,7 @@ class MaintainVisibleScrollPositionHelper(
9493
if (!mListening) return
9594

9695
mListening = false
97-
uiManagerModule?.removeUIManagerListener(this)
96+
uiManager.removeUIManagerEventListener(this)
9897
}
9998

10099
/**
@@ -151,11 +150,18 @@ class MaintainVisibleScrollPositionHelper(
151150
}
152151
}
153152

154-
// UIManagerModuleListener
155-
override fun willDispatchViewUpdates(p0: UIManagerModule?) {
153+
// UIManagerListener
154+
override fun willDispatchViewUpdates(uiManager: UIManager) {
156155
computeTargetView()
157156
}
158157

158+
override fun didDispatchMountItems(uiManager: UIManager) {
159+
// noop
160+
}
161+
162+
override fun didScheduleMountItems(uiManager: UIManager) {
163+
// noop
164+
}
159165

160166
// LayoutUpdateListener
161167
override fun onLayoutUpdated(p0: ReactShadowNode<out ReactShadowNode<*>>?) {

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,8 +83,8 @@
8383
"@types/react": "17.0.21"
8484
},
8585
"peerDependencies": {
86-
"react": "*",
87-
"react-native": "*"
86+
"react": ">=17.0.1",
87+
"react-native": ">=0.64.0"
8888
},
8989
"engines": {
9090
"node": ">= 16.0.0"

0 commit comments

Comments
 (0)