diff options
author | dan <dan.abramov@gmail.com> | 2024-01-31 03:05:45 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-01-30 19:05:45 -0800 |
commit | 2b0f92c7e05f86e7f4c8588e2e6ddf61369b8d6c (patch) | |
tree | b957a68af6a71940a8dd1dcf819e4e532c86bad1 /src/view/com/util/List.web.tsx | |
parent | 7b683b617a410a38830933b57c38b9fa74f4a4c1 (diff) | |
download | voidsky-2b0f92c7e05f86e7f4c8588e2e6ddf61369b8d6c.tar.zst |
Workaround Safari content-visibility bug (#2699)
Diffstat (limited to 'src/view/com/util/List.web.tsx')
-rw-r--r-- | src/view/com/util/List.web.tsx | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/view/com/util/List.web.tsx b/src/view/com/util/List.web.tsx index 3e81a8c37..29bad2db8 100644 --- a/src/view/com/util/List.web.tsx +++ b/src/view/com/util/List.web.tsx @@ -300,6 +300,9 @@ export const List = memo(React.forwardRef(ListImpl)) as <ItemT>( props: ListProps<ItemT> & {ref?: React.Ref<ListMethods>}, ) => React.ReactElement +// https://stackoverflow.com/questions/7944460/detect-safari-browser +const isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent) + const styles = StyleSheet.create({ contentContainer: { borderLeftWidth: 1, @@ -313,7 +316,7 @@ const styles = StyleSheet.create({ }, row: { // @ts-ignore web only - contentVisibility: 'auto', + contentVisibility: isSafari ? '' : 'auto', // Safari support for this is buggy. }, minHeightViewport: { // @ts-ignore web only |