Skip to content

Commit a9c1252

Browse files
committed
fix(receive): elements not pressable on Android
1 parent 827fe4a commit a9c1252

File tree

2 files changed

+25
-7
lines changed

2 files changed

+25
-7
lines changed

e2e/slashtags.e2e.js

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,9 @@ d('Profile and Contacts', () => {
8383
await element(by.id('ProfileAddLink')).tap();
8484

8585
await element(by.id('LinkLabelInput')).typeText('LINK-LABEL');
86+
await sleep(300); // wait for keyboard
8687
await element(by.id('LinkValueInput')).typeText('link-value');
88+
await sleep(300); // wait for keyboard
8789
await element(by.id('SaveLink')).tap();
8890
await waitFor(element(by.id('SaveLink'))).not.toBeVisible();
8991
await expect(element(by.text('LINK-LABEL'))).toExist();
@@ -137,6 +139,13 @@ d('Profile and Contacts', () => {
137139
.withTimeout(30000);
138140
await expect(element(by.text(satoshi.name))).toExist();
139141
await expect(element(by.text(satoshi.bio))).toExist();
142+
143+
// Android: keyboard is not dismissed after adding contact in e2e
144+
if (device.getPlatform() === 'android') {
145+
await element(by.id('NameInput')).tapReturnKey();
146+
await sleep(300); // wait for keyboard to hide
147+
}
148+
140149
await element(by.id('SaveContactButton')).tap();
141150
await expect(element(by.text('WEBSITE'))).toExist();
142151
await expect(element(by.text(satoshi.website))).toExist();
@@ -152,6 +161,14 @@ d('Profile and Contacts', () => {
152161
.withTimeout(30000);
153162
await expect(element(by.text(hal.name1))).toExist();
154163
await element(by.id('NameInput')).replaceText(hal.name2);
164+
await sleep(300); // wait for keyboard to hide
165+
166+
// Android: keyboard is not dismissed after adding contact in e2e
167+
if (device.getPlatform() === 'android') {
168+
await element(by.id('NameInput')).tapReturnKey();
169+
await sleep(300); // wait for keyboard to hide
170+
}
171+
155172
await element(by.id('SaveContactButton')).tap();
156173
await expect(element(by.text(hal.name2.toUpperCase()))).toExist();
157174
await element(by.id('NavigationClose')).tap();

src/screens/Wallets/Receive/ReceiveDetails.tsx

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import React, { ReactElement, memo, useState, useEffect } from 'react';
22
import { useTranslation } from 'react-i18next';
3-
import { Image, StyleSheet, View } from 'react-native';
4-
import { FadeIn, FadeOut } from 'react-native-reanimated';
3+
import { Image, Platform, StyleSheet, View } from 'react-native';
4+
import Animated, { FadeIn, FadeOut } from 'react-native-reanimated';
55

66
import BottomSheetNavigationHeader from '../../../components/BottomSheetNavigationHeader';
77
import GradientView from '../../../components/GradientView';
@@ -27,7 +27,7 @@ import {
2727
updatePendingInvoice,
2828
} from '../../../store/slices/metadata';
2929
import { removeInvoiceTag, updateInvoice } from '../../../store/slices/receive';
30-
import { AnimatedView, BottomSheetTextInput } from '../../../styles/components';
30+
import { BottomSheetTextInput } from '../../../styles/components';
3131
import { TagIcon } from '../../../styles/icons';
3232
import { Caption13Up } from '../../../styles/text';
3333
import { estimateOrderFee } from '../../../utils/blocktank';
@@ -174,11 +174,12 @@ const ReceiveDetails = ({
174174
</View>
175175

176176
{!keyboardShown && (
177-
<AnimatedView
177+
<Animated.View
178178
style={styles.bottom}
179-
color="transparent"
180179
entering={FadeIn}
181-
exiting={FadeOut}>
180+
// FadeOut causing a bug on Android
181+
exiting={Platform.OS === 'ios' ? FadeOut : undefined}
182+
>
182183
<Caption13Up style={styles.label} color="secondary">
183184
{t('tags')}
184185
</Caption13Up>
@@ -209,7 +210,7 @@ const ReceiveDetails = ({
209210
<Image style={styles.image} source={imageSrc} />
210211
</View>
211212
)}
212-
</AnimatedView>
213+
</Animated.View>
213214
)}
214215

215216
<View style={styles.buttonContainer}>

0 commit comments

Comments
 (0)