Delay translation until the loading spinner appears
This commit is contained in:
@@ -194,10 +194,7 @@ export function Provider({children}: React.PropsWithChildren<unknown>) {
|
|||||||
await googleTranslate(text, targetLangCode, sourceLangCode)
|
await googleTranslate(text, targetLangCode, sourceLangCode)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
setTranslationState(prev => ({
|
const translateAfterAnimation = async () => {
|
||||||
...prev,
|
|
||||||
[key]: {status: 'loading'},
|
|
||||||
}))
|
|
||||||
try {
|
try {
|
||||||
const result = await attemptTranslation(
|
const result = await attemptTranslation(
|
||||||
text,
|
text,
|
||||||
@@ -237,6 +234,15 @@ export function Provider({children}: React.PropsWithChildren<unknown>) {
|
|||||||
}))
|
}))
|
||||||
await googleTranslate(text, targetLangCode, sourceLangCode)
|
await googleTranslate(text, targetLangCode, sourceLangCode)
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
LayoutAnimation.configureNext(
|
||||||
|
LayoutAnimation.Presets.easeInEaseOut,
|
||||||
|
() => void translateAfterAnimation(),
|
||||||
|
)
|
||||||
|
setTranslationState(prev => ({
|
||||||
|
...prev,
|
||||||
|
[key]: {status: 'loading'},
|
||||||
|
}))
|
||||||
},
|
},
|
||||||
[ax, googleTranslate],
|
[ax, googleTranslate],
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user