diff options
author | dan <dan.abramov@gmail.com> | 2024-08-01 22:05:40 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-08-01 22:05:40 +0100 |
commit | 7f292abf51a4cd4e25702c33a3ed75f25be5b3a3 (patch) | |
tree | be64113565041e0676fd6569551304a0e96bb1b3 /src/view/screens/PreferencesFollowingFeed.tsx | |
parent | f056cb646e22d350bda79be8e8bfe808307e6516 (diff) | |
download | voidsky-7f292abf51a4cd4e25702c33a3ed75f25be5b3a3.tar.zst |
Always limit Following replies to the people you follow (#4868)
* Limit feed replies to people you follow * Remove dead code
Diffstat (limited to 'src/view/screens/PreferencesFollowingFeed.tsx')
-rw-r--r-- | src/view/screens/PreferencesFollowingFeed.tsx | 107 |
1 files changed, 2 insertions, 105 deletions
diff --git a/src/view/screens/PreferencesFollowingFeed.tsx b/src/view/screens/PreferencesFollowingFeed.tsx index daa2aba85..8aa4221e6 100644 --- a/src/view/screens/PreferencesFollowingFeed.tsx +++ b/src/view/screens/PreferencesFollowingFeed.tsx @@ -1,16 +1,13 @@ -import React, {useState} from 'react' +import React from 'react' import {StyleSheet, View} from 'react-native' import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' -import {msg, Plural, Trans} from '@lingui/macro' +import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {Slider} from '@miblanchard/react-native-slider' -import debounce from 'lodash.debounce' import {usePalette} from '#/lib/hooks/usePalette' import {useWebMediaQueries} from '#/lib/hooks/useWebMediaQueries' import {CommonNavigatorParams, NativeStackScreenProps} from '#/lib/routes/types' import {colors, s} from '#/lib/styles' -import {isWeb} from '#/platform/detection' import { usePreferencesQuery, useSetFeedViewPreferencesMutation, @@ -21,61 +18,6 @@ import {Text} from '#/view/com/util/text/Text' import {ScrollView} from '#/view/com/util/Views' import {atoms as a} from '#/alf' -function RepliesThresholdInput({ - enabled, - initialValue, -}: { - enabled: boolean - initialValue: number -}) { - const pal = usePalette('default') - const [value, setValue] = useState(initialValue) - const {mutate: setFeedViewPref} = useSetFeedViewPreferencesMutation() - const preValue = React.useRef(initialValue) - const save = React.useMemo( - () => - debounce( - threshold => - setFeedViewPref({ - hideRepliesByLikeCount: threshold, - }), - 500, - ), // debouce for 500ms - [setFeedViewPref], - ) - - return ( - <View style={[!enabled && styles.dimmed]}> - <Slider - value={value} - onValueChange={(v: number | number[]) => { - let threshold = Array.isArray(v) ? v[0] : v - if (threshold > preValue.current) threshold = Math.floor(threshold) - else threshold = Math.ceil(threshold) - - preValue.current = threshold - - setValue(threshold) - save(threshold) - }} - minimumValue={0} - maximumValue={25} - containerStyle={isWeb ? undefined : s.flex1} - disabled={!enabled} - thumbTintColor={colors.blue3} - /> - <Text type="xs" style={pal.text}> - <Plural - value={value} - _0="Show all replies" - one="Show replies with at least # like" - other="Show replies with at least # likes" - /> - </Text> - </View> - ) -} - type Props = NativeStackScreenProps< CommonNavigatorParams, 'PreferencesFollowingFeed' @@ -137,51 +79,6 @@ export function PreferencesFollowingFeed({}: Props) { } /> </View> - <View - style={[pal.viewLight, styles.card, !showReplies && styles.dimmed]}> - <Text type="title-sm" style={[pal.text, s.pb5]}> - <Trans>Reply Filters</Trans> - </Text> - <Text style={[pal.text, s.pb10]}> - <Trans> - Enable this setting to only see replies between people you - follow. - </Trans> - </Text> - <ToggleButton - type="default-light" - label={_(msg`Followed users only`)} - isSelected={Boolean( - variables?.hideRepliesByUnfollowed ?? - preferences?.feedViewPrefs?.hideRepliesByUnfollowed, - )} - onPress={ - showReplies - ? () => - setFeedViewPref({ - hideRepliesByUnfollowed: !( - variables?.hideRepliesByUnfollowed ?? - preferences?.feedViewPrefs?.hideRepliesByUnfollowed - ), - }) - : undefined - } - style={[s.mb10]} - /> - <Text style={[pal.text]}> - <Trans> - Adjust the number of likes a reply must have to be shown in your - feed. - </Trans> - </Text> - {preferences && ( - <RepliesThresholdInput - enabled={showReplies} - initialValue={preferences.feedViewPrefs.hideRepliesByLikeCount} - /> - )} - </View> - <View style={[pal.viewLight, styles.card]}> <Text type="title-sm" style={[pal.text, s.pb5]}> <Trans>Show Reposts</Trans> |