@lodev09/react-native-true-sheet 3.0.0-beta.10 → 3.0.0-beta.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,6 +2,7 @@ package com.lodev09.truesheet
2
2
 
3
3
  import android.annotation.SuppressLint
4
4
  import android.view.View
5
+ import android.view.ViewGroup
5
6
  import android.view.ViewStructure
6
7
  import android.view.accessibility.AccessibilityEvent
7
8
  import androidx.annotation.UiThread
@@ -62,6 +63,9 @@ class TrueSheetView(private val reactContext: ThemedReactContext) :
62
63
  // Flag to prevent multiple pending sheet updates
63
64
  private var isSheetUpdatePending: Boolean = false
64
65
 
66
+ // Reference to parent sheet's controller (for stacking support)
67
+ private var parentViewController: TrueSheetViewController? = null
68
+
65
69
  init {
66
70
  reactContext.addLifecycleEventListener(this)
67
71
  viewController.delegate = this
@@ -90,17 +94,6 @@ class TrueSheetView(private val reactContext: ThemedReactContext) :
90
94
  TrueSheetModule.registerView(this, id)
91
95
  }
92
96
 
93
- override fun onDetachedFromWindow() {
94
- super.onDetachedFromWindow()
95
-
96
- // Don't unregister if we have active modals - we need the view for recovery
97
- if (viewController.hasActiveModals()) {
98
- return
99
- }
100
-
101
- onDropInstance()
102
- }
103
-
104
97
  /**
105
98
  * Called by the manager after all properties are set.
106
99
  * Reconfigures the sheet if it's currently presented.
@@ -197,6 +190,10 @@ class TrueSheetView(private val reactContext: ThemedReactContext) :
197
190
  override fun viewControllerDidDismiss() {
198
191
  val surfaceId = UIManagerHelper.getSurfaceId(this)
199
192
  eventDispatcher?.dispatchEvent(DidDismissEvent(surfaceId, id))
193
+
194
+ // Show parent sheet again if this was a stacked sheet
195
+ parentViewController?.showDialog()
196
+ parentViewController = null
200
197
  }
201
198
 
202
199
  override fun viewControllerDidChangeDetent(index: Int, position: Float) {
@@ -303,6 +300,17 @@ class TrueSheetView(private val reactContext: ThemedReactContext) :
303
300
 
304
301
  @UiThread
305
302
  fun present(detentIndex: Int, animated: Boolean = true, promiseCallback: () -> Unit) {
303
+ // Find and hide parent sheet if this sheet is nested inside another TrueSheet
304
+ // Only hide if parent is not expanded (otherwise it's already covering the screen)
305
+ if (!viewController.isPresented) {
306
+ parentViewController = findParentViewController()
307
+ if (parentViewController?.isExpanded == false) {
308
+ parentViewController?.hideDialog()
309
+ } else {
310
+ parentViewController = null
311
+ }
312
+ }
313
+
306
314
  viewController.presentPromise = promiseCallback
307
315
  viewController.present(detentIndex, animated)
308
316
  }
@@ -313,6 +321,21 @@ class TrueSheetView(private val reactContext: ThemedReactContext) :
313
321
  viewController.dismiss()
314
322
  }
315
323
 
324
+ /**
325
+ * Traverses up the view hierarchy to find a parent TrueSheetViewController.
326
+ * This is used to detect if this sheet is nested inside another TrueSheet's content.
327
+ */
328
+ private fun findParentViewController(): TrueSheetViewController? {
329
+ var current: ViewGroup? = parent as? ViewGroup
330
+ while (current != null) {
331
+ if (current is TrueSheetViewController) {
332
+ return current
333
+ }
334
+ current = current.parent as? ViewGroup
335
+ }
336
+ return null
337
+ }
338
+
316
339
  /**
317
340
  * Debounced sheet update to handle rapid content/header size changes.
318
341
  * Uses post to ensure all layout passes complete before reconfiguring.
@@ -186,8 +186,6 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
186
186
  */
187
187
  private var rnScreensObserver: RNScreensFragmentObserver? = null
188
188
 
189
- fun hasActiveModals(): Boolean = rnScreensObserver?.hasActiveModals() ?: false
190
-
191
189
  // ====================================================================
192
190
  // MARK: - Initialization
193
191
  // ====================================================================
@@ -319,12 +317,12 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
319
317
  reactContext = reactContext,
320
318
  onModalPresented = {
321
319
  if (isPresented) {
322
- dialog?.window?.decorView?.visibility = View.INVISIBLE
320
+ hideDialog()
323
321
  }
324
322
  },
325
323
  onModalDismissed = {
326
324
  if (isPresented) {
327
- dialog?.window?.decorView?.visibility = View.VISIBLE
325
+ showDialog()
328
326
  }
329
327
  }
330
328
  )
@@ -336,6 +334,35 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
336
334
  rnScreensObserver = null
337
335
  }
338
336
 
337
+ // ====================================================================
338
+ // MARK: - Dialog Visibility (for stacking)
339
+ // ====================================================================
340
+
341
+ /**
342
+ * Returns true if the sheet's top is at or above the status bar.
343
+ */
344
+ val isExpanded: Boolean
345
+ get() {
346
+ val sheetTop = bottomSheetView?.top ?: return false
347
+ return sheetTop <= statusBarHeight
348
+ }
349
+
350
+ /**
351
+ * Hides the dialog without dismissing it.
352
+ * Used when another TrueSheet presents on top.
353
+ */
354
+ fun hideDialog() {
355
+ dialog?.window?.decorView?.visibility = View.INVISIBLE
356
+ }
357
+
358
+ /**
359
+ * Shows a previously hidden dialog.
360
+ * Used when the sheet on top dismisses.
361
+ */
362
+ fun showDialog() {
363
+ dialog?.window?.decorView?.visibility = View.VISIBLE
364
+ }
365
+
339
366
  // ====================================================================
340
367
  // MARK: - Presentation
341
368
  // ====================================================================
@@ -19,11 +19,6 @@ class RNScreensFragmentObserver(
19
19
  private var fragmentLifecycleCallback: FragmentManager.FragmentLifecycleCallbacks? = null
20
20
  private val activeModalFragments: MutableSet<Fragment> = mutableSetOf()
21
21
 
22
- /**
23
- * Check if there are active modal fragments being tracked.
24
- */
25
- fun hasActiveModals(): Boolean = activeModalFragments.isNotEmpty()
26
-
27
22
  /**
28
23
  * Start observing fragment lifecycle events.
29
24
  */
@@ -126,46 +126,53 @@ using namespace facebook::react;
126
126
  }
127
127
  }
128
128
 
129
+ - (RCTScrollViewComponentView *)findScrollViewInSubviews:(NSArray<UIView *> *)subviews {
130
+ for (UIView *subview in subviews) {
131
+ if ([subview isKindOfClass:RCTScrollViewComponentView.class]) {
132
+ return (RCTScrollViewComponentView *)subview;
133
+ }
134
+ }
135
+ return nil;
136
+ }
137
+
129
138
  - (RCTScrollViewComponentView *)findScrollView:(UIView **)outTopSibling {
130
139
  if (self.subviews.count == 0) {
131
140
  return nil;
132
141
  }
133
142
 
134
- RCTScrollViewComponentView *scrollView = nil;
135
143
  UIView *topSibling = nil;
136
144
 
137
145
  // Check first-level children for scroll views (ScrollView or FlatList)
138
- for (UIView *subview in self.subviews) {
139
- if ([subview isKindOfClass:RCTScrollViewComponentView.class]) {
140
- scrollView = (RCTScrollViewComponentView *)subview;
141
-
142
- // Find the view positioned directly above this ScrollView by frame position
143
- if (self.subviews.count > 1) {
144
- CGFloat scrollViewTop = CGRectGetMinY(scrollView.frame);
145
- CGFloat closestDistance = CGFLOAT_MAX;
146
-
147
- for (UIView *sibling in self.subviews) {
148
- // Skip the ScrollView itself
149
- if (sibling == scrollView) {
150
- continue;
151
- }
152
-
153
- CGFloat siblingBottom = CGRectGetMaxY(sibling.frame);
154
-
155
- // Check if this sibling is positioned above the ScrollView
156
- if (siblingBottom <= scrollViewTop) {
157
- CGFloat distance = scrollViewTop - siblingBottom;
158
-
159
- // Find the closest view above (smallest distance)
160
- if (distance < closestDistance) {
161
- closestDistance = distance;
162
- topSibling = sibling;
163
- }
164
- }
165
- }
146
+ RCTScrollViewComponentView *scrollView = [self findScrollViewInSubviews:self.subviews];
147
+
148
+ // If not found, check second level (grandchildren)
149
+ if (!scrollView) {
150
+ for (UIView *subview in self.subviews) {
151
+ scrollView = [self findScrollViewInSubviews:subview.subviews];
152
+ if (scrollView) {
153
+ break;
166
154
  }
155
+ }
156
+ }
167
157
 
168
- break; // Found ScrollView, no need to continue
158
+ // Find the view positioned directly above the ScrollView (only for first-level)
159
+ if (scrollView && scrollView.superview == self && self.subviews.count > 1) {
160
+ CGFloat scrollViewTop = CGRectGetMinY(scrollView.frame);
161
+ CGFloat closestDistance = CGFLOAT_MAX;
162
+
163
+ for (UIView *sibling in self.subviews) {
164
+ if (sibling == scrollView) {
165
+ continue;
166
+ }
167
+
168
+ CGFloat siblingBottom = CGRectGetMaxY(sibling.frame);
169
+ if (siblingBottom <= scrollViewTop) {
170
+ CGFloat distance = scrollViewTop - siblingBottom;
171
+ if (distance < closestDistance) {
172
+ closestDistance = distance;
173
+ topSibling = sibling;
174
+ }
175
+ }
169
176
  }
170
177
  }
171
178
 
@@ -274,6 +274,12 @@ export class TrueSheet extends PureComponent {
274
274
  // Clamp to maximum of 1
275
275
  return Math.min(1, detent);
276
276
  });
277
+ const containerStyle = this.props.scrollable && Platform.select({
278
+ android: styles.scrollableAndroidContainer
279
+ });
280
+ const contentStyle = this.props.scrollable && Platform.select({
281
+ android: styles.scrollableContent
282
+ });
277
283
  return /*#__PURE__*/_jsx(TrueSheetViewNativeComponent, {
278
284
  ...rest,
279
285
  ref: this.nativeRef,
@@ -304,13 +310,11 @@ export class TrueSheet extends PureComponent {
304
310
  onDragEnd: this.onDragEnd,
305
311
  onPositionChange: this.onPositionChange,
306
312
  children: this.state.shouldRenderNativeView && /*#__PURE__*/_jsxs(TrueSheetContainerViewNativeComponent, {
307
- style: this.props.scrollable && Platform.select({
308
- android: styles.scrollableContainer
309
- }),
313
+ style: containerStyle,
310
314
  children: [header && /*#__PURE__*/_jsx(TrueSheetHeaderViewNativeComponent, {
311
315
  children: /*#__PURE__*/isValidElement(header) ? header : /*#__PURE__*/createElement(header)
312
316
  }), /*#__PURE__*/_jsx(TrueSheetContentViewNativeComponent, {
313
- style: [style, this.props.scrollable && styles.scrollableContent],
317
+ style: [style, contentStyle],
314
318
  children: children
315
319
  }), footer && /*#__PURE__*/_jsx(TrueSheetFooterViewNativeComponent, {
316
320
  style: styles.footer,
@@ -322,11 +326,17 @@ export class TrueSheet extends PureComponent {
322
326
  }
323
327
  const styles = StyleSheet.create({
324
328
  sheetView: {
329
+ zIndex: -9999,
325
330
  position: 'absolute',
326
- width: '100%',
327
- zIndex: -9999
331
+ top: 0,
332
+ left: 0,
333
+ right: 0,
334
+ // Android needs a fixed bottom to avoid jumping content
335
+ bottom: Platform.select({
336
+ android: 0
337
+ })
328
338
  },
329
- scrollableContainer: {
339
+ scrollableAndroidContainer: {
330
340
  position: 'absolute',
331
341
  top: 0,
332
342
  left: 0,
@@ -1 +1 @@
1
- {"version":3,"names":["PureComponent","createRef","isValidElement","createElement","TrueSheetViewNativeComponent","TrueSheetContainerViewNativeComponent","TrueSheetContentViewNativeComponent","TrueSheetHeaderViewNativeComponent","TrueSheetFooterViewNativeComponent","TrueSheetModule","Platform","processColor","StyleSheet","findNodeHandle","jsx","_jsx","jsxs","_jsxs","LINKING_ERROR","select","ios","default","Error","TrueSheet","displayName","instances","presentationResolver","constructor","props","nativeRef","validateDetents","shouldRenderImmediately","initialDetentIndex","undefined","state","shouldRenderNativeView","onMount","bind","onWillDismiss","onDidDismiss","onWillPresent","onDidPresent","onDetentChange","onDragBegin","onDragChange","onDragEnd","onPositionChange","detents","length","console","warn","forEach","detent","index","detentsLength","Math","min","getInstance","name","instance","handle","nodeHandle","current","present","dismiss","resize","registerInstance","unregisterInstance","event","setState","Promise","resolve","presentByRef","dismissByRef","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","render","backgroundColor","dismissible","grabber","dimmed","initialDetentAnimated","keyboardMode","dimmedDetentIndex","blurTint","cornerRadius","maxHeight","edgeToEdgeFullScreen","scrollable","pageSizing","children","style","header","footer","rest","resolvedDetents","slice","map","ref","styles","sheetView","background","android","scrollableContainer","scrollableContent","create","position","width","zIndex","top","left","right","bottom","flexGrow","flexBasis"],"sourceRoot":"../../src","sources":["TrueSheet.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["PureComponent","createRef","isValidElement","createElement","TrueSheetViewNativeComponent","TrueSheetContainerViewNativeComponent","TrueSheetContentViewNativeComponent","TrueSheetHeaderViewNativeComponent","TrueSheetFooterViewNativeComponent","TrueSheetModule","Platform","processColor","StyleSheet","findNodeHandle","jsx","_jsx","jsxs","_jsxs","LINKING_ERROR","select","ios","default","Error","TrueSheet","displayName","instances","presentationResolver","constructor","props","nativeRef","validateDetents","shouldRenderImmediately","initialDetentIndex","undefined","state","shouldRenderNativeView","onMount","bind","onWillDismiss","onDidDismiss","onWillPresent","onDidPresent","onDetentChange","onDragBegin","onDragChange","onDragEnd","onPositionChange","detents","length","console","warn","forEach","detent","index","detentsLength","Math","min","getInstance","name","instance","handle","nodeHandle","current","present","dismiss","resize","registerInstance","unregisterInstance","event","setState","Promise","resolve","presentByRef","dismissByRef","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","render","backgroundColor","dismissible","grabber","dimmed","initialDetentAnimated","keyboardMode","dimmedDetentIndex","blurTint","cornerRadius","maxHeight","edgeToEdgeFullScreen","scrollable","pageSizing","children","style","header","footer","rest","resolvedDetents","slice","map","containerStyle","android","styles","scrollableAndroidContainer","contentStyle","scrollableContent","ref","sheetView","background","create","zIndex","position","top","left","right","bottom","flexGrow","flexBasis"],"sourceRoot":"../../src","sources":["TrueSheet.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"TrueSheet.d.ts","sourceRoot":"","sources":["../../../src/TrueSheet.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAGb,KAAK,SAAS,EAIf,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EACV,cAAc,EAWf,MAAM,mBAAmB,CAAC;AAwB3B,UAAU,cAAc;IACtB,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAED,qBAAa,SAAU,SAAQ,aAAa,CAAC,cAAc,EAAE,cAAc,CAAC;IAC1E,WAAW,SAAe;IAE1B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8B;IAExD;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAqC;IAEtE;;OAEG;IACH,OAAO,CAAC,oBAAoB,CAA6B;gBAE7C,KAAK,EAAE,cAAc;IA2BjC,OAAO,CAAC,eAAe;IAkCvB,OAAO,CAAC,MAAM,CAAC,WAAW;IAU1B,OAAO,KAAK,MAAM,GAOjB;IAED;;;;;;OAMG;WACiB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAS3E;;;;;OAKG;WACiB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASxD;;;;;;OAMG;WACiB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAStE,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,gBAAgB;IAIxB;;;OAGG;IACU,OAAO,CAAC,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBtD;;;OAGG;IACU,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrC,iBAAiB,IAAI,IAAI;IAIzB,kBAAkB,CAAC,SAAS,EAAE,cAAc,GAAG,IAAI;IASnD,oBAAoB,IAAI,IAAI;IAO5B,MAAM,IAAI,SAAS;CA4FpB"}
1
+ {"version":3,"file":"TrueSheet.d.ts","sourceRoot":"","sources":["../../../src/TrueSheet.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAGb,KAAK,SAAS,EAIf,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EACV,cAAc,EAWf,MAAM,mBAAmB,CAAC;AAwB3B,UAAU,cAAc;IACtB,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAED,qBAAa,SAAU,SAAQ,aAAa,CAAC,cAAc,EAAE,cAAc,CAAC;IAC1E,WAAW,SAAe;IAE1B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8B;IAExD;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAqC;IAEtE;;OAEG;IACH,OAAO,CAAC,oBAAoB,CAA6B;gBAE7C,KAAK,EAAE,cAAc;IA2BjC,OAAO,CAAC,eAAe;IAkCvB,OAAO,CAAC,MAAM,CAAC,WAAW;IAU1B,OAAO,KAAK,MAAM,GAOjB;IAED;;;;;;OAMG;WACiB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAS3E;;;;;OAKG;WACiB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASxD;;;;;;OAMG;WACiB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAStE,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,gBAAgB;IAIxB;;;OAGG;IACU,OAAO,CAAC,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBtD;;;OAGG;IACU,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrC,iBAAiB,IAAI,IAAI;IAIzB,kBAAkB,CAAC,SAAS,EAAE,cAAc,GAAG,IAAI;IASnD,oBAAoB,IAAI,IAAI;IAO5B,MAAM,IAAI,SAAS;CAkGpB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lodev09/react-native-true-sheet",
3
- "version": "3.0.0-beta.10",
3
+ "version": "3.0.0-beta.12",
4
4
  "description": "The true native bottom sheet experience for your React Native Apps.",
5
5
  "source": "./src/index.ts",
6
6
  "main": "./lib/module/index.js",
package/src/TrueSheet.tsx CHANGED
@@ -343,6 +343,18 @@ export class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetState> {
343
343
  return Math.min(1, detent);
344
344
  });
345
345
 
346
+ const containerStyle =
347
+ this.props.scrollable &&
348
+ Platform.select({
349
+ android: styles.scrollableAndroidContainer,
350
+ });
351
+
352
+ const contentStyle =
353
+ this.props.scrollable &&
354
+ Platform.select({
355
+ android: styles.scrollableContent,
356
+ });
357
+
346
358
  return (
347
359
  <TrueSheetViewNativeComponent
348
360
  {...rest}
@@ -375,19 +387,13 @@ export class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetState> {
375
387
  onPositionChange={this.onPositionChange}
376
388
  >
377
389
  {this.state.shouldRenderNativeView && (
378
- <TrueSheetContainerViewNativeComponent
379
- style={
380
- this.props.scrollable && Platform.select({ android: styles.scrollableContainer })
381
- }
382
- >
390
+ <TrueSheetContainerViewNativeComponent style={containerStyle}>
383
391
  {header && (
384
392
  <TrueSheetHeaderViewNativeComponent>
385
393
  {isValidElement(header) ? header : createElement(header)}
386
394
  </TrueSheetHeaderViewNativeComponent>
387
395
  )}
388
- <TrueSheetContentViewNativeComponent
389
- style={[style, this.props.scrollable && styles.scrollableContent]}
390
- >
396
+ <TrueSheetContentViewNativeComponent style={[style, contentStyle]}>
391
397
  {children}
392
398
  </TrueSheetContentViewNativeComponent>
393
399
  {footer && (
@@ -404,11 +410,16 @@ export class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetState> {
404
410
 
405
411
  const styles = StyleSheet.create({
406
412
  sheetView: {
407
- position: 'absolute',
408
- width: '100%',
409
413
  zIndex: -9999,
414
+ position: 'absolute',
415
+ top: 0,
416
+ left: 0,
417
+ right: 0,
418
+
419
+ // Android needs a fixed bottom to avoid jumping content
420
+ bottom: Platform.select({ android: 0 }),
410
421
  },
411
- scrollableContainer: {
422
+ scrollableAndroidContainer: {
412
423
  position: 'absolute',
413
424
  top: 0,
414
425
  left: 0,