Comply with Play Store policy

This commit is contained in:
Zhiyuan Zheng 2022-06-10 19:41:51 +02:00
parent 7adc09f624
commit 52b8414b7e
2 changed files with 57 additions and 27 deletions

View File

@ -1,6 +1,5 @@
import Button from '@components/Button' import Button from '@components/Button'
import Icon from '@components/Icon' import Icon from '@components/Icon'
import { useAccessibility } from '@utils/accessibility/AccessibilityManager'
import { useAppsQuery } from '@utils/queryHooks/apps' import { useAppsQuery } from '@utils/queryHooks/apps'
import { useInstanceQuery } from '@utils/queryHooks/instance' import { useInstanceQuery } from '@utils/queryHooks/instance'
import { getInstances } from '@utils/slices/instancesSlice' import { getInstances } from '@utils/slices/instancesSlice'
@ -9,7 +8,7 @@ import { useTheme } from '@utils/styles/ThemeManager'
import * as WebBrowser from 'expo-web-browser' import * as WebBrowser from 'expo-web-browser'
import { debounce } from 'lodash' import { debounce } from 'lodash'
import React, { RefObject, useCallback, useMemo, useState } from 'react' import React, { RefObject, useCallback, useMemo, useState } from 'react'
import { useTranslation } from 'react-i18next' import { Trans, useTranslation } from 'react-i18next'
import { import {
Alert, Alert,
Image, Image,
@ -39,7 +38,6 @@ const ComponentInstance: React.FC<Props> = ({
}) => { }) => {
const { t } = useTranslation('componentInstance') const { t } = useTranslation('componentInstance')
const { colors, mode } = useTheme() const { colors, mode } = useTheme()
const { screenReaderEnabled } = useAccessibility()
const instances = useSelector(getInstances, () => true) const instances = useSelector(getInstances, () => true)
const [domain, setDomain] = useState<string>() const [domain, setDomain] = useState<string>()
@ -247,7 +245,7 @@ const ComponentInstance: React.FC<Props> = ({
style={{ style={{
flexDirection: 'row', flexDirection: 'row',
marginHorizontal: StyleConstants.Spacing.Global.PagePadding, marginHorizontal: StyleConstants.Spacing.Global.PagePadding,
marginVertical: StyleConstants.Spacing.M marginTop: StyleConstants.Spacing.M
}} }}
> >
<Icon <Icon
@ -265,29 +263,59 @@ const ComponentInstance: React.FC<Props> = ({
<CustomText <CustomText
fontStyle='S' fontStyle='S'
style={{ flex: 1, color: colors.secondary }} style={{ flex: 1, color: colors.secondary }}
accessibilityRole='link'
onPress={() => {
if (screenReaderEnabled) {
analytics('view_privacy')
WebBrowser.openBrowserAsync(
'https://tooot.app/privacy-policy'
)
}
}}
> >
{t('server.disclaimer.base')} {t('server.disclaimer.base')}
<CustomText </CustomText>
accessible </View>
style={{ color: colors.blue }} <View
onPress={() => { style={{
analytics('view_privacy') flexDirection: 'row',
WebBrowser.openBrowserAsync( marginHorizontal: StyleConstants.Spacing.Global.PagePadding,
'https://tooot.app/privacy-policy' marginBottom: StyleConstants.Spacing.M
) }}
}} >
> <Icon
{t('server.disclaimer.privacy')} name='CheckSquare'
</CustomText> size={StyleConstants.Font.Size.S}
color={colors.secondary}
style={{
marginTop:
(StyleConstants.Font.LineHeight.S -
StyleConstants.Font.Size.S) /
2,
marginRight: StyleConstants.Spacing.XS
}}
/>
<CustomText
fontStyle='S'
style={{ flex: 1, color: colors.secondary }}
accessibilityRole='link'
>
<Trans
i18nKey='componentInstance:server.terms.base'
components={[
<CustomText
accessible
style={{ color: colors.blue }}
onPress={() => {
analytics('view_privacy')
WebBrowser.openBrowserAsync(
'https://tooot.app/privacy-policy'
)
}}
/>,
<CustomText
accessible
style={{ color: colors.blue }}
onPress={() => {
analytics('view_tos')
WebBrowser.openBrowserAsync(
'https://tooot.app/terms-of-service'
)
}}
/>
]}
/>
</CustomText> </CustomText>
</View> </View>
</View> </View>

View File

@ -11,8 +11,10 @@
"domains": "Universes" "domains": "Universes"
}, },
"disclaimer": { "disclaimer": {
"base": "Logging in process uses system broswer that, your account information won't be visible to tooot app. Read more ", "base": "Logging in process uses system broswer that, your account information won't be visible to tooot app."
"privacy": "privacy policy" },
"terms": {
"base": "By logging in, you agree to the <0>privacy policy</0> and <1>terms of service</1>."
} }
}, },
"update": { "update": {