Skip to content
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 7 additions & 1 deletion android/src/main/java/com/swmansion/rnscreens/ScreenStack.kt
Original file line number Diff line number Diff line change
Expand Up @@ -256,7 +256,13 @@ class ScreenStack(

topScreenWrapper = newTop as? ScreenStackFragmentWrapper
stack.clear()
stack.addAll(screenWrappers.asSequence().map { it as ScreenStackFragmentWrapper })
stack.addAll(
screenWrappers
.asSequence()
.filter {
it.screen.activityState !== Screen.ActivityState.INACTIVE
}.map { it as ScreenStackFragmentWrapper },
)

turnOffA11yUnderTransparentScreen(visibleBottom)
transaction.commitNowAllowingStateLoss()
Expand Down
64 changes: 64 additions & 0 deletions apps/src/tests/Test2940.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
import * as React from 'react';
import { View, Text, Button } from 'react-native';
import {
createStaticNavigation,
useNavigation,
CommonActions,
NavigationContainer,
} from '@react-navigation/native';
import { createNativeStackNavigator } from '@react-navigation/native-stack';


const screens = ['A', 'B', 'C'];

const Screen = () => {
const navigation = useNavigation();

return (
<View style={{flex: 1, justifyContent: 'center', alignItems: 'center'}}>
<Button
onPress={() => {
navigation.goBack();
}}
title='Navigate home'
/>
{screens.map(screenName => (
<Button
key={`navigate-${screenName}`}
onPress={() => {
navigation.dispatch(
CommonActions.navigate(screenName)
);
}}
title={`Navigate ${screenName}`}
/>
))}
{screens.map(screenName => (
<Button
key={`preload-${screenName}`}
onPress={() => {
navigation.dispatch(
CommonActions.preload(screenName)
);
}}
title={`Preload ${screenName}`}
/>
))}
</View>
);
};

const Stack = createNativeStackNavigator({
screens: {
Home: Screen,
...Object.fromEntries(screens.map(screenName => [screenName, Screen])),
},
});

const Navigation = createStaticNavigation(Stack);

export default function App() {
return (
<Navigation />
);
}
1 change: 1 addition & 0 deletions apps/src/tests/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -138,6 +138,7 @@ export { default as Test2877 } from './Test2877'; // [E2E created](iOS): issue i
export { default as Test2895 } from './Test2895';
export { default as Test2899 } from './Test2899';
export { default as Test2926 } from './Test2926'; // [E2E created](iOS): PR related to iOS search bar
export { default as Test2940 } from './Test2940';
export { default as TestScreenAnimation } from './TestScreenAnimation';
export { default as TestScreenAnimationV5 } from './TestScreenAnimationV5';
export { default as TestHeader } from './TestHeader';
Expand Down
Loading