From 9564de4c5bd342161852568a6ed8c225979b5366 Mon Sep 17 00:00:00 2001
From: Stephanie Freitag <stephanie.freitag@holi.team>
Date: Wed, 29 Jan 2025 14:05:06 +0100
Subject: [PATCH] HOLI-10907: fix issue on web calling onEndReached too often

---
 core/screens/search/typesense/Search.tsx | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/core/screens/search/typesense/Search.tsx b/core/screens/search/typesense/Search.tsx
index 2320528e4d..764d77ed92 100644
--- a/core/screens/search/typesense/Search.tsx
+++ b/core/screens/search/typesense/Search.tsx
@@ -17,7 +17,7 @@ import { createStyleSheet } from 'holi-bricks/utils'
 import React, { useMemo } from 'react'
 import { useTranslation } from 'react-i18next'
 import { InstantSearch } from 'react-instantsearch-core'
-import { View } from 'react-native'
+import { Dimensions, Platform, View } from 'react-native'
 import TypesenseInstantSearchAdapter from 'typesense-instantsearch-adapter'
 import ErrorBoundary from '@holi/core/errors/components/ErrorBoundary'
 
@@ -67,6 +67,7 @@ export const Search = () => {
         preset="fixed"
         contentContainerPadding={{}}
         contentContainerStyle={{ flex: 1 }} // this is needed because flash list has no initial size, it calculates it while rendering.
+        style={styles.screen}
         headerOptions={{
           title: t('search.title'),
           headerTitleAlign: 'center',
@@ -91,6 +92,7 @@ export const Search = () => {
   )
 }
 
+const TOP_COMPONENT_HEIGHT = 144
 const stylesheet = createStyleSheet((theme) => ({
   filterContainer: {
     paddingTop: dimensions.spacingS,
@@ -98,4 +100,11 @@ const stylesheet = createStyleSheet((theme) => ({
     flex: 1,
     backgroundColor: theme.colors.bg.page,
   },
+  screen: {
+    ...Platform.select({
+      web: {
+        maxHeight: Dimensions.get('window').height - dimensions.topBarHeight - TOP_COMPONENT_HEIGHT,
+      },
+    }),
+  },
 }))
-- 
GitLab