File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 11/* eslint-disable prettier/prettier */
22import React from 'react' ;
3+ import { Platform } from 'react-native' ;
34import { NavigationComponent , Options , OptionsTopBarButton } from 'react-native-navigation' ;
45import Root from '../components/Root' ;
56import Button from '../components/Button' ;
@@ -139,17 +140,23 @@ export default class ButtonOptions extends NavigationComponent {
139140 ) ;
140141 }
141142
142- toggleBack = ( ) => {
143+ toggleBack = ( ) => {
143144 this . backButtonVisibile = ! this . backButtonVisibile ;
144- Navigation . mergeOptions ( this . props . componentId , {
145- topBar :{
146- backButton :{
147- testID :BACK_BUTTON ,
148- visible :this . backButtonVisibile
149- }
150- }
151- } )
152- }
145+ Navigation . mergeOptions ( this . props . componentId , {
146+ topBar : {
147+ backButton : {
148+ testID : BACK_BUTTON ,
149+ visible : this . backButtonVisibile ,
150+ } ,
151+ // iOS: leftButtons replace the back chevron slot, so the back button
152+ // can't render unless leftButtons are cleared. Android's back
153+ // affordance is independent of leftButtons.
154+ ...( Platform . OS === 'ios' && this . backButtonVisibile
155+ ? { leftButtons : [ ] }
156+ : { } ) ,
157+ } ,
158+ } ) ;
159+ } ;
153160
154161 setRightButtons = ( ) =>
155162 Navigation . mergeOptions ( this , {
You can’t perform that action at this time.
0 commit comments