From 03adaa3f815f7e0ea6141d0d92794c973cd61799 Mon Sep 17 00:00:00 2001 From: Diego Mello Date: Thu, 18 Apr 2019 10:43:44 -0300 Subject: [PATCH] Lock drawer when stack is not on root screen (#825) --- app/index.js | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/app/index.js b/app/index.js index e86460e09..bf2b55fd4 100644 --- a/app/index.js +++ b/app/index.js @@ -129,18 +129,48 @@ const ChatsStack = createStackNavigator({ defaultNavigationOptions: defaultHeader }); +ChatsStack.navigationOptions = ({ navigation }) => { + let drawerLockMode = 'unlocked'; + if (navigation.state.index > 0) { + drawerLockMode = 'locked-closed'; + } + return { + drawerLockMode + }; +}; + const ProfileStack = createStackNavigator({ ProfileView }, { defaultNavigationOptions: defaultHeader }); +ProfileView.navigationOptions = ({ navigation }) => { + let drawerLockMode = 'unlocked'; + if (navigation.state.index > 0) { + drawerLockMode = 'locked-closed'; + } + return { + drawerLockMode + }; +}; + const SettingsStack = createStackNavigator({ SettingsView }, { defaultNavigationOptions: defaultHeader }); +SettingsStack.navigationOptions = ({ navigation }) => { + let drawerLockMode = 'unlocked'; + if (navigation.state.index > 0) { + drawerLockMode = 'locked-closed'; + } + return { + drawerLockMode + }; +}; + const ChatsDrawer = createDrawerNavigator({ ChatsStack, ProfileStack,