diff --git a/src/components/IllustratedHeaderPageLayout.js b/src/components/IllustratedHeaderPageLayout.js index be4cb12d935e..92a9c8b8552b 100644 --- a/src/components/IllustratedHeaderPageLayout.js +++ b/src/components/IllustratedHeaderPageLayout.js @@ -12,6 +12,7 @@ import * as StyleUtils from '../styles/StyleUtils'; import useWindowDimensions from '../hooks/useWindowDimensions'; import FixedFooter from './FixedFooter'; import useNetwork from '../hooks/useNetwork'; +import * as Browser from '../libs/Browser'; const propTypes = { ...headerWithBackButtonPropTypes, @@ -39,14 +40,16 @@ const defaultProps = { }; function IllustratedHeaderPageLayout({backgroundColor, children, illustration, footer, overlayContent, ...propsToPassToHeader}) { - const {windowHeight} = useWindowDimensions(); const {isOffline} = useNetwork(); + const {isSmallScreenWidth, windowHeight} = useWindowDimensions(); + const appBGColor = StyleUtils.getBackgroundColorStyle(themeColors.appBG); + return ( {({safeAreaPaddingBottomStyle}) => ( <> @@ -56,12 +59,19 @@ function IllustratedHeaderPageLayout({backgroundColor, children, illustration, f titleColor={backgroundColor === themeColors.appBG ? undefined : themeColors.textColorfulBackground} iconFill={backgroundColor === themeColors.appBG ? undefined : themeColors.iconColorfulBackground} /> - + + {/* Safari on ios/mac has a bug where overscrolling the page scrollview shows green the background color. This is a workaround to fix that. https://github.com/Expensify/App/issues/23422 */} + {Browser.isSafari() && ( + + + + + )} - + {!Browser.isSafari() && } {overlayContent && overlayContent()} - {children} + {children} {!_.isNull(footer) && {footer}} diff --git a/src/styles/styles.js b/src/styles/styles.js index e81e03726c78..cf05e6e20d62 100644 --- a/src/styles/styles.js +++ b/src/styles/styles.js @@ -3758,6 +3758,15 @@ const styles = (theme) => ({ right: 0, }), + dualColorOverscrollSpacer: { + position: 'absolute', + top: 0, + left: 0, + width: '100%', + height: '100%', + zIndex: -1, + }, + willChangeTransform: { willChange: 'transform', },