react-native-screens 4.26.0 → 4.26.2
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.
- package/android/src/main/java/com/swmansion/rnscreens/gamma/tabs/container/TabsContainer.kt +4 -6
- package/android/src/main/java/com/swmansion/rnscreens/stack/views/ScreensCoordinatorLayout.kt +10 -0
- package/ios/gamma/split/RNSSplitHostController.swift +15 -0
- package/lib/typescript/fabric/ScreenStackHeaderConfigNativeComponent.d.ts +4 -4
- package/lib/typescript/fabric/ScreenStackHeaderConfigNativeComponent.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/fabric/ScreenStackHeaderConfigNativeComponent.ts +4 -4
|
@@ -686,12 +686,10 @@ class TabsContainer internal constructor(
|
|
|
686
686
|
.filter { it in tabsModel }
|
|
687
687
|
.toList()
|
|
688
688
|
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
fragmentsWithAttachedUI.first() === selectedTab
|
|
694
|
-
) {
|
|
689
|
+
// We expect at most a single fragment added (detached fragments are not returned from
|
|
690
|
+
// FragmentManager.getFragments call) and it being the currently selected tab.
|
|
691
|
+
val isInUpToDateState = currentFragments.size == 1 && currentFragments.first() === selectedTab
|
|
692
|
+
if (isInUpToDateState) {
|
|
695
693
|
return
|
|
696
694
|
} else if (currentFragments.isEmpty()) {
|
|
697
695
|
applyInitialStateToFragmentManagerSync(selectedTab)
|
package/android/src/main/java/com/swmansion/rnscreens/stack/views/ScreensCoordinatorLayout.kt
CHANGED
|
@@ -88,6 +88,16 @@ internal class ScreensCoordinatorLayout(
|
|
|
88
88
|
}
|
|
89
89
|
}
|
|
90
90
|
|
|
91
|
+
override fun clearAnimation() {
|
|
92
|
+
// Called when the system aborts a transition (e.g., fast forward/backward navigation).
|
|
93
|
+
// We must reset our manual finalization flags here to ensure our `onAnimationEnd` listener
|
|
94
|
+
// doesn't detach the view that the should be kept alive after navigating back.
|
|
95
|
+
blockFrameworkTransitionFinalization = false
|
|
96
|
+
needsTransitionFinalization = false
|
|
97
|
+
|
|
98
|
+
super.clearAnimation()
|
|
99
|
+
}
|
|
100
|
+
|
|
91
101
|
/**
|
|
92
102
|
* This method implements a workaround for RN's autoFocus functionality. Because of the way
|
|
93
103
|
* autoFocus is implemented it dismisses soft keyboard in fragment transition
|
|
@@ -541,6 +541,21 @@ extension RNSSplitHostController: UISplitViewControllerDelegate {
|
|
|
541
541
|
if self.displayMode != displayMode {
|
|
542
542
|
reactEventEmitter.emitOnDisplayModeWillChange(from: self.displayMode, to: displayMode)
|
|
543
543
|
}
|
|
544
|
+
|
|
545
|
+
let notifyColumnPositioningDidChange = { [weak self] in
|
|
546
|
+
guard let self = self else { return }
|
|
547
|
+
for controller in self.splitScreenControllers {
|
|
548
|
+
controller.columnPositioningDidChangeIn(splitViewController: self)
|
|
549
|
+
}
|
|
550
|
+
}
|
|
551
|
+
|
|
552
|
+
if let coordinator = svc.transitionCoordinator {
|
|
553
|
+
coordinator.animate(alongsideTransition: nil) { _ in
|
|
554
|
+
notifyColumnPositioningDidChange()
|
|
555
|
+
}
|
|
556
|
+
} else {
|
|
557
|
+
notifyColumnPositioningDidChange()
|
|
558
|
+
}
|
|
544
559
|
}
|
|
545
560
|
|
|
546
561
|
public func splitViewController(
|
|
@@ -48,10 +48,10 @@ export interface NativeProps extends ViewProps {
|
|
|
48
48
|
onPressHeaderBarButtonMenuItem?: CT.DirectEventHandler<OnPressHeaderBarButtonMenuItemEvent> | undefined;
|
|
49
49
|
synchronousShadowStateUpdatesEnabled?: CT.WithDefault<boolean, true>;
|
|
50
50
|
userInterfaceStyle?: CT.WithDefault<UserInterfaceStyle, 'unspecified'>;
|
|
51
|
-
consumeTopInset?: boolean
|
|
52
|
-
consumeLeftInset?: boolean
|
|
53
|
-
consumeRightInset?: boolean
|
|
54
|
-
consumeBottomInset?: boolean
|
|
51
|
+
consumeTopInset?: CT.WithDefault<boolean, false>;
|
|
52
|
+
consumeLeftInset?: CT.WithDefault<boolean, true>;
|
|
53
|
+
consumeRightInset?: CT.WithDefault<boolean, true>;
|
|
54
|
+
consumeBottomInset?: CT.WithDefault<boolean, true>;
|
|
55
55
|
legacyTopInsetBehavior?: boolean | undefined;
|
|
56
56
|
}
|
|
57
57
|
declare const _default: import("react-native").HostComponent<NativeProps>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScreenStackHeaderConfigNativeComponent.d.ts","sourceRoot":"","sources":["../../../src/fabric/ScreenStackHeaderConfigNativeComponent.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ScreenStackHeaderConfigNativeComponent.d.ts","sourceRoot":"","sources":["../../../src/fabric/ScreenStackHeaderConfigNativeComponent.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-screens",
|
|
3
|
-
"version": "4.26.
|
|
3
|
+
"version": "4.26.2",
|
|
4
4
|
"description": "Native navigation primitives for your React Native app.",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"submodules": "git submodule update --init --recursive && (cd react-navigation && yarn && yarn build && cd ../)",
|
|
@@ -76,7 +76,7 @@
|
|
|
76
76
|
},
|
|
77
77
|
"peerDependencies": {
|
|
78
78
|
"react": "*",
|
|
79
|
-
"react-native": "
|
|
79
|
+
"react-native": "*"
|
|
80
80
|
},
|
|
81
81
|
"devDependencies": {
|
|
82
82
|
"@babel/core": "^7.25.2",
|
|
@@ -84,10 +84,10 @@ export interface NativeProps extends ViewProps {
|
|
|
84
84
|
|
|
85
85
|
// Experimental
|
|
86
86
|
userInterfaceStyle?: CT.WithDefault<UserInterfaceStyle, 'unspecified'>;
|
|
87
|
-
consumeTopInset?: boolean
|
|
88
|
-
consumeLeftInset?: boolean
|
|
89
|
-
consumeRightInset?: boolean
|
|
90
|
-
consumeBottomInset?: boolean
|
|
87
|
+
consumeTopInset?: CT.WithDefault<boolean, false>;
|
|
88
|
+
consumeLeftInset?: CT.WithDefault<boolean, true>;
|
|
89
|
+
consumeRightInset?: CT.WithDefault<boolean, true>;
|
|
90
|
+
consumeBottomInset?: CT.WithDefault<boolean, true>;
|
|
91
91
|
legacyTopInsetBehavior?: boolean | undefined;
|
|
92
92
|
}
|
|
93
93
|
|