diff --git a/packages/react-navigation/src/views/Header/Header.js b/packages/react-navigation/src/views/Header/Header.js index 5de1f1d3..77f63db2 100644 --- a/packages/react-navigation/src/views/Header/Header.js +++ b/packages/react-navigation/src/views/Header/Header.js @@ -277,6 +277,11 @@ class Header extends React.PureComponent { const { scene } = props; const { index, isStale, key } = scene; + // Never render a modular back button on the first screen in a stack. + if (index === 0) { + return; + } + const offset = this.props.navigation.state.index - index; if (Math.abs(offset) > 2) { diff --git a/packages/react-navigation/src/views/Header/ModularHeaderBackButton.js b/packages/react-navigation/src/views/Header/ModularHeaderBackButton.js index 21b135f5..ee9b3908 100644 --- a/packages/react-navigation/src/views/Header/ModularHeaderBackButton.js +++ b/packages/react-navigation/src/views/Header/ModularHeaderBackButton.js @@ -42,7 +42,7 @@ class ModularHeaderBackButton extends React.PureComponent { // TODO: When we've sorted out measuring in the header, let's revisit this. // This is clearly a bad workaround. - if (backButtonTitle.length > 8) { + if (backButtonTitle && backButtonTitle.length > 8) { backButtonTitle = truncatedTitle; }