diff --git a/CHANGELOG.md b/CHANGELOG.md index 1f48bf51aa..92f41dd789 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,10 @@ This project adheres to the Node [default version scheme](https://docs.npmjs.com ## [next-version] +### Fixed + +- UI: Fixed Camera Permissions Primer screen rendering issue on Safari 14.1 (desktop) without changing existing SDK layout structure. + ## [6.10.1] - 2021-07-05 ### Changed diff --git a/src/components/CameraPermissions/Primer/index.tsx b/src/components/CameraPermissions/Primer/index.tsx index d0b3e24702..d26cbcb0ec 100644 --- a/src/components/CameraPermissions/Primer/index.tsx +++ b/src/components/CameraPermissions/Primer/index.tsx @@ -1,6 +1,5 @@ import { h, FunctionComponent } from 'preact' import classNames from 'classnames' -import ScreenLayout from 'components/Theme/ScreenLayout' import PageTitle from 'components/PageTitle' import { Button } from '@onfido/castor-react' import { trackComponent } from 'Tracker' @@ -17,8 +16,18 @@ type PermissionsProps = { type Props = PermissionsProps & WithLocalisedProps & WithTrackingProps const Permissions: FunctionComponent = ({ onNext, translate }) => ( - + +
+
+
+
+

{translate('permission.body_cam')}

+
+
- } - > -
- -
-
-
-
-

{translate('permission.body_cam')}

-
- +
) export default trackComponent(localised(Permissions)) diff --git a/src/components/CameraPermissions/Primer/style.scss b/src/components/CameraPermissions/Primer/style.scss index 372e845196..5147a1d491 100644 --- a/src/components/CameraPermissions/Primer/style.scss +++ b/src/components/CameraPermissions/Primer/style.scss @@ -17,8 +17,19 @@ height: auto; width: 100%; font-size: var(--font-size-small); + display: flex; + flex-direction: column; + flex: 2 1 32 * $unit-x-small; min-height: 32 * $unit-x-small; max-width: 105.01 * $unit-x-small; + width: 100%; + padding: 10 * $unit-small; + margin: auto; + + // To fix Safari flexbox rendering issue by forcing the div to be rendered in a new composite layer, + // see https://stackoverflow.com/questions/65524383/flexbox-bug-on-safari -> https://stackoverflow.com/questions/19169089/weird-css-stretching-issue-in-ios7-safari-and-chrome + transform: translateZ(0); + @media (--small-viewport) { max-width: 79 * $unit-x-small; } @@ -26,6 +37,7 @@ .reasons { font-size: var(--font-size-small); + text-align: center; min-height: 42 * $unit-small; } @@ -46,6 +58,7 @@ @media (--small-viewport) { background-size: contain; flex-grow: 1; // prevents container height collapsing on iOS devices + height: 100%; } } diff --git a/src/components/PageTitle/style.scss b/src/components/PageTitle/style.scss index 5e642ee3aa..40e806da51 100644 --- a/src/components/PageTitle/style.scss +++ b/src/components/PageTitle/style.scss @@ -29,6 +29,11 @@ .titleWrapper { margin: 32 * $unit 0 16 * $unit; flex-shrink: 0; + + // To fix Safari flexbox rendering issue by forcing the div to be rendered in a new composite layer, + // see https://stackoverflow.com/questions/65524383/flexbox-bug-on-safari -> https://stackoverflow.com/questions/19169089/weird-css-stretching-issue-in-ios7-safari-and-chrome + transform: translateZ(0); + @media (--small-viewport) { margin: 0 0 16 * $unit; }