Bluesky app fork with some witchin' additions 💫
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Don't use mask for android at all (#2445)

* Don't use mask for android at all

* Remove old Android check

authored by

Eric Bailey and committed by
GitHub
da575a63 15f3c679

+33 -7
+33 -7
src/Splash.tsx
··· 2 2 import {View, StyleSheet, Image as RNImage} from 'react-native' 3 3 import * as SplashScreen from 'expo-splash-screen' 4 4 import {Image} from 'expo-image' 5 - import {platformApiLevel} from 'expo-device' 6 5 import Animated, { 7 6 interpolate, 8 7 runOnJS, ··· 14 13 import MaskedView from '@react-native-masked-view/masked-view' 15 14 import {useSafeAreaInsets} from 'react-native-safe-area-context' 16 15 import Svg, {Path, SvgProps} from 'react-native-svg' 16 + 17 + import {isAndroid} from '#/platform/detection' 17 18 18 19 // @ts-ignore 19 20 import splashImagePointer from '../assets/splash.png' ··· 54 55 const [isLayoutReady, setIsLayoutReady] = React.useState(false) 55 56 const isReady = props.isReady && isImageLoaded && isLayoutReady 56 57 57 - const logoAnimations = useAnimatedStyle(() => { 58 + const logoAnimation = useAnimatedStyle(() => { 58 59 return { 59 60 transform: [ 60 61 { ··· 64 65 scale: interpolate( 65 66 outroLogo.value, 66 67 [0, 0.08, 1], 67 - [1, 0.8, 400], 68 + [1, 0.8, 500], 68 69 'clamp', 69 70 ), 70 71 }, ··· 72 73 opacity: interpolate(intro.value, [0, 1], [0, 1], 'clamp'), 73 74 } 74 75 }) 76 + const logoWrapperAnimation = useAnimatedStyle(() => { 77 + return { 78 + opacity: interpolate( 79 + outroAppOpacity.value, 80 + [0, 0.1, 0.2, 1], 81 + [1, 1, 0, 0], 82 + 'clamp', 83 + ), 84 + } 85 + }) 75 86 76 87 const appAnimation = useAnimatedStyle(() => { 77 88 return { ··· 82 93 ], 83 94 opacity: interpolate( 84 95 outroAppOpacity.value, 85 - [0, 0.08, 0.15, 1], 96 + [0, 0.1, 0.2, 1], 86 97 [0, 0, 1, 1], 87 98 'clamp', 88 99 ), ··· 137 148 /> 138 149 )} 139 150 140 - {platformApiLevel && platformApiLevel <= 25 ? ( 151 + {isAndroid ? ( 141 152 // Use a simple fade on older versions of android (work around a bug) 142 153 <> 143 154 <Animated.View style={[{flex: 1}, appAnimation]}> 144 155 {props.children} 145 156 </Animated.View> 157 + 158 + {!isAnimationComplete && ( 159 + <Animated.View 160 + style={[ 161 + StyleSheet.absoluteFillObject, 162 + logoWrapperAnimation, 163 + { 164 + flex: 1, 165 + justifyContent: 'center', 166 + alignItems: 'center', 167 + transform: [{translateY: -(insets.top / 2)}, {scale: 0.1}], // scale from 1000px to 100px 168 + }, 169 + ]}> 170 + <AnimatedLogo style={[{opacity: 0}, logoAnimation]} /> 171 + </Animated.View> 172 + )} 146 173 </> 147 174 ) : ( 148 175 <MaskedView 149 - androidRenderingMode="software" 150 176 style={[StyleSheet.absoluteFillObject]} 151 177 maskElement={ 152 178 <Animated.View ··· 160 186 transform: [{translateY: -(insets.top / 2)}, {scale: 0.1}], // scale from 1000px to 100px 161 187 }, 162 188 ]}> 163 - <AnimatedLogo style={[logoAnimations]} /> 189 + <AnimatedLogo style={[logoAnimation]} /> 164 190 </Animated.View> 165 191 }> 166 192 {!isAnimationComplete && (