diff options
Diffstat (limited to 'src/view/com')
-rw-r--r-- | src/view/com/algos/AlgoItem.tsx | 15 | ||||
-rw-r--r-- | src/view/com/pager/FeedsTabBarMobile.tsx | 8 |
2 files changed, 15 insertions, 8 deletions
diff --git a/src/view/com/algos/AlgoItem.tsx b/src/view/com/algos/AlgoItem.tsx index f7d320530..b52a7e00d 100644 --- a/src/view/com/algos/AlgoItem.tsx +++ b/src/view/com/algos/AlgoItem.tsx @@ -13,7 +13,7 @@ import {UserAvatar} from '../util/UserAvatar' import {Button} from '../util/forms/Button' import {observer} from 'mobx-react-lite' import {AlgoItemModel} from 'state/models/feeds/algo/algo-item' -import {useNavigation} from '@react-navigation/native' +import {useFocusEffect, useNavigation} from '@react-navigation/native' import {NavigationProp} from 'lib/routes/types' import {useStores} from 'state/index' import {HeartIconSolid} from 'lib/icons' @@ -34,6 +34,11 @@ const AlgoItem = observer( const pal = usePalette('default') const navigation = useNavigation<NavigationProp>() + // TODO: this is pretty hacky, but it works for now + useFocusEffect(() => { + item.reload() + }) + return ( <TouchableOpacity accessibilityRole="button" @@ -78,14 +83,12 @@ const AlgoItem = observer( </View> <View> <Button - type="inverted" + type={item.isSaved ? 'default' : 'inverted'} onPress={() => { if (item.data.viewer?.saved) { - item.unsave() - store.me.savedFeeds.removeFeed(item.data.uri) + store.me.savedFeeds.unsave(item) } else { - item.save() - store.me.savedFeeds.addFeed(item) + store.me.savedFeeds.save(item) } }} label={item.data.viewer?.saved ? 'Unsave' : 'Save'} diff --git a/src/view/com/pager/FeedsTabBarMobile.tsx b/src/view/com/pager/FeedsTabBarMobile.tsx index 3d1ed2c10..0952cb14c 100644 --- a/src/view/com/pager/FeedsTabBarMobile.tsx +++ b/src/view/com/pager/FeedsTabBarMobile.tsx @@ -33,8 +33,12 @@ export const FeedsTabBar = observer( }, [store]) const items = useMemo( - () => ['Following', "What's hot", ...store.me.savedFeeds.listOfFeedNames], - [store.me.savedFeeds.listOfFeedNames], + () => [ + 'Following', + "What's hot", + ...store.me.savedFeeds.listOfPinnedFeedNames, + ], + [store.me.savedFeeds.listOfPinnedFeedNames], ) return ( |