From 5907d43eb20a56100fb0b0b5ed99044aad400858 Mon Sep 17 00:00:00 2001 From: xmflsct Date: Thu, 17 Nov 2022 21:48:22 +0100 Subject: [PATCH] Fixed #463 --- src/screens/Compose.tsx | 5 ++- src/screens/Tabs/Me/Settings/Tooot.tsx | 56 ++++++++++++-------------- src/utils/navigation/navigators.ts | 1 + src/utils/slices/appSlice.ts | 2 +- 4 files changed, 31 insertions(+), 33 deletions(-) diff --git a/src/screens/Compose.tsx b/src/screens/Compose.tsx index 3c02df5e..cb3e5f3b 100644 --- a/src/screens/Compose.tsx +++ b/src/screens/Compose.tsx @@ -167,7 +167,10 @@ const ScreenCompose: React.FC> = ({ formatText({ textInput: 'text', composeDispatch, - content: params.accts.map(acct => `@${acct}`).join(' ') + ' ', + content: + (params.text && `${params.text}\n`) + + params.accts.map(acct => `@${acct}`).join(' ') + + ' ', disableDebounce: true }) break diff --git a/src/screens/Tabs/Me/Settings/Tooot.tsx b/src/screens/Tabs/Me/Settings/Tooot.tsx index e1c7087a..2c72f5ec 100644 --- a/src/screens/Tabs/Me/Settings/Tooot.tsx +++ b/src/screens/Tabs/Me/Settings/Tooot.tsx @@ -10,8 +10,11 @@ import * as WebBrowser from 'expo-web-browser' import React from 'react' import { useTranslation } from 'react-i18next' import { useSelector } from 'react-redux' -import { getInstanceActive } from '@utils/slices/instancesSlice' +import { getInstanceActive, getInstanceVersion } from '@utils/slices/instancesSlice' import { isDevelopment, isRelease } from '@utils/checkEnvironment' +import { Platform } from 'react-native' +import Constants from 'expo-constants' +import { getExpoToken } from '@utils/slices/appSlice' const SettingsTooot: React.FC = () => { const instanceActive = useSelector(getInstanceActive) @@ -19,16 +22,15 @@ const SettingsTooot: React.FC = () => { const { colors } = useTheme() const { t } = useTranslation('screenTabs') + const instanceVersion = useSelector(getInstanceVersion, () => true) + const expoToken = useSelector(getExpoToken) + return ( + } iconBack='ChevronRight' onPress={() => { @@ -38,13 +40,7 @@ const SettingsTooot: React.FC = () => { /> - } + content={} iconBack='ChevronRight' onPress={() => { analytics('settings_support_press') @@ -54,37 +50,35 @@ const SettingsTooot: React.FC = () => { {isDevelopment || isRelease ? ( - } + content={} iconBack='ChevronRight' onPress={() => { analytics('settings_review_press') - StoreReview?.isAvailableAsync().then(() => - StoreReview?.requestReview() - ) + StoreReview?.isAvailableAsync().then(() => StoreReview?.requestReview()) }} /> ) : null} - } + content={} iconBack='ChevronRight' onPress={() => { if (instanceActive !== -1) { navigation.navigate('Screen-Compose', { type: 'conversation', - accts: ['tooot@xmflsct.com'] + accts: ['tooot@xmflsct.com'], + text: + '[' + + `${Platform.OS}/${Platform.Version}` + + ' - ' + + (Constants.expoConfig?.version ? `t/${Constants.expoConfig?.version}` : '') + + ' - ' + + (instanceVersion ? `m/${instanceVersion}` : '') + + ' - ' + + (expoToken + ? `e/${expoToken.replace(/^ExponentPushToken\[/, '').replace(/\]$/, '')}` + : '') + + ']' }) } else { WebBrowser.openBrowserAsync('https://social.xmflsct.com/@tooot') diff --git a/src/utils/navigation/navigators.ts b/src/utils/navigation/navigators.ts index ba77c50e..f75eaba8 100644 --- a/src/utils/navigation/navigators.ts +++ b/src/utils/navigation/navigators.ts @@ -38,6 +38,7 @@ export type RootStackParamList = { | { type: 'conversation' accts: Mastodon.Account['acct'][] + text?: string // For contacting tooot only } | { type: 'share' diff --git a/src/utils/slices/appSlice.ts b/src/utils/slices/appSlice.ts index 19dcf27a..37c9f5db 100644 --- a/src/utils/slices/appSlice.ts +++ b/src/utils/slices/appSlice.ts @@ -9,7 +9,7 @@ export const retrieveExpoToken = createAsyncThunk( 'app/expoToken', async (): Promise => { if (isDevelopment) { - return 'DEVELOPMENT_TOKEN_1' + return 'ExponentPushToken[DEVELOPMENT_1]' } const res = await Notifications.getExpoPushTokenAsync({