about summary refs log tree commit diff
path: root/src/view/screens
diff options
context:
space:
mode:
Diffstat (limited to 'src/view/screens')
-rw-r--r--src/view/screens/Home.tsx8
-rw-r--r--src/view/screens/SavedFeeds.tsx50
2 files changed, 45 insertions, 13 deletions
diff --git a/src/view/screens/Home.tsx b/src/view/screens/Home.tsx
index ab765e9cd..2aade5e1a 100644
--- a/src/view/screens/Home.tsx
+++ b/src/view/screens/Home.tsx
@@ -16,7 +16,6 @@ import {LoadLatestBtn} from '../com/util/load-latest/LoadLatestBtn'
 import {FeedsTabBar} from '../com/pager/FeedsTabBar'
 import {Pager, PagerRef, RenderTabBarFnProps} from 'view/com/pager/Pager'
 import {FAB} from '../com/util/fab/FAB'
-import {SavedFeeds} from 'view/com/feeds/SavedFeeds'
 import {useStores} from 'state/index'
 import {s} from 'lib/styles'
 import {useOnMainScroll} from 'lib/hooks/useOnMainScroll'
@@ -24,7 +23,7 @@ import {useAnalytics} from 'lib/analytics'
 import {ComposeIcon2} from 'lib/icons'
 import {isDesktopWeb} from 'platform/detection'
 
-const HEADER_OFFSET = isDesktopWeb ? 50 : 40
+const HEADER_OFFSET = isDesktopWeb ? 50 : 74
 const POLL_FREQ = 30e3 // 30sec
 
 type Props = NativeStackScreenProps<HomeTabNavigatorParams, 'Home'>
@@ -127,11 +126,6 @@ export const HomeScreen = withAuthRequired(
             />
           )
         })}
-        <SavedFeeds
-          key={String(2 + store.me.savedFeeds.pinned.length)}
-          headerOffset={HEADER_OFFSET}
-          isPageFocused={selectedPage === 2 + store.me.savedFeeds.pinned.length}
-        />
       </Pager>
     )
   }),
diff --git a/src/view/screens/SavedFeeds.tsx b/src/view/screens/SavedFeeds.tsx
index e305e6305..b3a48b427 100644
--- a/src/view/screens/SavedFeeds.tsx
+++ b/src/view/screens/SavedFeeds.tsx
@@ -29,6 +29,7 @@ import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome'
 import {CustomFeedModel} from 'state/models/feeds/custom-feed'
 import * as Toast from 'view/com/util/Toast'
 import {Haptics} from 'lib/haptics'
+import {Link, TextLink} from 'view/com/util/Link'
 
 type Props = NativeStackScreenProps<CommonNavigatorParams, 'SavedFeeds'>
 
@@ -65,11 +66,36 @@ export const SavedFeeds = withAuthRequired(
 
     const renderListFooterComponent = useCallback(() => {
       return (
-        <View style={styles.footer}>
+        <>
+          <View style={[styles.footerLinks, pal.border]}>
+            <Link style={[styles.footerLink, pal.border]} href="/search/feeds">
+              <FontAwesomeIcon
+                icon="search"
+                size={18}
+                color={pal.colors.icon}
+              />
+              <Text type="lg-medium" style={pal.textLight}>
+                Discover new feeds
+              </Text>
+            </Link>
+          </View>
+          <View style={styles.footerText}>
+            <Text type="sm" style={pal.textLight}>
+              Feeds are custom algorithms that users build with a little coding
+              expertise.{' '}
+              <TextLink
+                type="sm"
+                style={pal.link}
+                href="https://github.com/bluesky-social/feed-generator"
+                text="See this guide"
+              />{' '}
+              for more information.
+            </Text>
+          </View>
           {savedFeeds.isLoading && <ActivityIndicator />}
-        </View>
+        </>
       )
-    }, [savedFeeds])
+    }, [pal, savedFeeds.isLoading])
 
     const onRefresh = useCallback(() => savedFeeds.refresh(), [savedFeeds])
 
@@ -224,9 +250,6 @@ const styles = StyleSheet.create({
     borderRightWidth: 1,
     minHeight: '100vh',
   },
-  footer: {
-    paddingVertical: 20,
-  },
   empty: {
     paddingHorizontal: 20,
     paddingVertical: 20,
@@ -252,4 +275,19 @@ const styles = StyleSheet.create({
   noBorder: {
     borderTopWidth: 0,
   },
+  footerText: {
+    paddingHorizontal: 26,
+    paddingVertical: 22,
+  },
+  footerLinks: {
+    borderBottomWidth: 1,
+    borderTopWidth: 0,
+  },
+  footerLink: {
+    flexDirection: 'row',
+    borderTopWidth: 1,
+    paddingHorizontal: 26,
+    paddingVertical: 18,
+    gap: 18,
+  },
 })