chore: update app configurations and screens
This commit is contained in:
@@ -272,6 +272,15 @@ export default function CameraScreen({
|
||||
}
|
||||
};
|
||||
|
||||
const handleCancel = useCallback(() => {
|
||||
if (burstTimerRef.current) {
|
||||
clearTimeout(burstTimerRef.current);
|
||||
}
|
||||
setHasStarted(false);
|
||||
setIsCapturing(false);
|
||||
onCancel();
|
||||
}, [onCancel]);
|
||||
|
||||
const handleSettingsTap = () => {
|
||||
setEnteredPassword('');
|
||||
setErrorText('');
|
||||
@@ -327,24 +336,13 @@ export default function CameraScreen({
|
||||
<FontAwesomeIcon icon={faUserGear} size={22} color={THEME.colors.accent} />
|
||||
</TouchableOpacity>
|
||||
|
||||
<View style={styles.welcomeBox}>
|
||||
<Text style={styles.logo}>SCHNAPPIX</Text>
|
||||
<Text style={styles.welcomeTitle}>{welcomeText}</Text>
|
||||
|
||||
<View style={styles.divider} />
|
||||
|
||||
<LinearGradient
|
||||
colors={THEME.gradient.primary}
|
||||
start={{ x: 0, y: 0.5 }}
|
||||
end={{ x: 1, y: 0.5 }}
|
||||
style={styles.startButton}
|
||||
>
|
||||
<FontAwesomeIcon icon={faCameraRetro} size={20} color={THEME.colors.text} style={{ marginRight: 10 }} />
|
||||
<Text style={styles.startButtonText}>ZUM STARTEN ÜBERALL TIPPEN</Text>
|
||||
</LinearGradient>
|
||||
|
||||
<Text style={styles.welcomeFooter}>Fotos machen • Collage erstellen • Sofort drucken</Text>
|
||||
</View>
|
||||
{/* Header Event Text */}
|
||||
<Text style={styles.headerTitle}>{welcomeText}</Text>
|
||||
|
||||
{/* Footer Instructions */}
|
||||
<Text style={styles.footerInstructions}>
|
||||
ZUM STARTEN TIPPEN • Fotos machen • Collage • Drucken
|
||||
</Text>
|
||||
|
||||
{/* Password Prompt Modal */}
|
||||
<Modal
|
||||
@@ -459,7 +457,7 @@ export default function CameraScreen({
|
||||
|
||||
{/* Cancel Button */}
|
||||
{!isCapturing && !isBurstWaiting && (
|
||||
<TouchableOpacity style={styles.backButton} onPress={onCancel}>
|
||||
<TouchableOpacity style={styles.backButton} onPress={handleCancel}>
|
||||
<FontAwesomeIcon icon={faXmark} size={16} color={THEME.colors.text} style={{ marginRight: 6 }} />
|
||||
<Text style={styles.backButtonText}>ABBRECHEN</Text>
|
||||
</TouchableOpacity>
|
||||
@@ -530,10 +528,12 @@ const styles = StyleSheet.create({
|
||||
zIndex: 9999,
|
||||
},
|
||||
idleOverlayContainer: {
|
||||
flex: 1,
|
||||
justifyContent: 'center',
|
||||
alignItems: 'center',
|
||||
backgroundColor: 'rgba(5, 5, 16, 0.25)',
|
||||
position: 'absolute',
|
||||
top: 0,
|
||||
left: 0,
|
||||
right: 0,
|
||||
bottom: 0,
|
||||
backgroundColor: 'transparent',
|
||||
},
|
||||
captureOverlayContainer: {
|
||||
flex: 1,
|
||||
@@ -554,73 +554,31 @@ const styles = StyleSheet.create({
|
||||
alignItems: 'center',
|
||||
zIndex: 999,
|
||||
},
|
||||
welcomeBox: {
|
||||
alignItems: 'center',
|
||||
padding: THEME.spacing.xl,
|
||||
borderRadius: THEME.borderRadius.lg,
|
||||
backgroundColor: 'rgba(5, 5, 16, 0.85)',
|
||||
borderWidth: 1,
|
||||
borderColor: THEME.colors.gradientBorder,
|
||||
width: '60%',
|
||||
shadowColor: THEME.colors.gradientGlow,
|
||||
shadowOffset: { width: 0, height: 0 },
|
||||
shadowOpacity: 0.4,
|
||||
shadowRadius: 30,
|
||||
elevation: 10,
|
||||
},
|
||||
logo: {
|
||||
fontSize: 54,
|
||||
headerTitle: {
|
||||
position: 'absolute',
|
||||
top: 40,
|
||||
width: '100%',
|
||||
textAlign: 'center',
|
||||
fontSize: 48,
|
||||
fontWeight: '900',
|
||||
color: THEME.colors.accent,
|
||||
letterSpacing: 8,
|
||||
marginBottom: THEME.spacing.sm,
|
||||
letterSpacing: 6,
|
||||
textShadowColor: THEME.colors.cyanGlow,
|
||||
textShadowOffset: { width: 0, height: 0 },
|
||||
textShadowRadius: 25,
|
||||
},
|
||||
welcomeTitle: {
|
||||
fontSize: 22,
|
||||
color: THEME.colors.text,
|
||||
footerInstructions: {
|
||||
position: 'absolute',
|
||||
bottom: 40,
|
||||
width: '100%',
|
||||
textAlign: 'center',
|
||||
marginBottom: THEME.spacing.lg,
|
||||
letterSpacing: 1,
|
||||
},
|
||||
divider: {
|
||||
width: 60,
|
||||
height: 3,
|
||||
backgroundColor: THEME.colors.accent,
|
||||
marginBottom: THEME.spacing.xl,
|
||||
borderRadius: THEME.borderRadius.sm,
|
||||
shadowColor: THEME.colors.accent,
|
||||
shadowOffset: { width: 0, height: 0 },
|
||||
shadowOpacity: 0.8,
|
||||
shadowRadius: 8,
|
||||
},
|
||||
startButton: {
|
||||
flexDirection: 'row',
|
||||
alignItems: 'center',
|
||||
justifyContent: 'center',
|
||||
paddingVertical: THEME.spacing.md,
|
||||
paddingHorizontal: THEME.spacing.xl,
|
||||
borderRadius: THEME.borderRadius.round,
|
||||
marginBottom: THEME.spacing.xl,
|
||||
overflow: 'hidden',
|
||||
shadowColor: THEME.colors.gradientGlow,
|
||||
shadowOffset: { width: 0, height: 4 },
|
||||
shadowOpacity: 0.6,
|
||||
shadowRadius: 14,
|
||||
elevation: 8,
|
||||
},
|
||||
startButtonText: {
|
||||
color: THEME.colors.text,
|
||||
fontSize: 18,
|
||||
fontSize: 20,
|
||||
fontWeight: 'bold',
|
||||
color: THEME.colors.text,
|
||||
letterSpacing: 2,
|
||||
},
|
||||
welcomeFooter: {
|
||||
fontSize: 14,
|
||||
color: THEME.colors.textMuted,
|
||||
letterSpacing: 1,
|
||||
textShadowColor: 'rgba(0,0,0,0.9)',
|
||||
textShadowOffset: { width: 0, height: 2 },
|
||||
textShadowRadius: 15,
|
||||
},
|
||||
hudContainer: {
|
||||
position: 'absolute',
|
||||
@@ -838,6 +796,8 @@ const styles = StyleSheet.create({
|
||||
},
|
||||
confirmGradient: {
|
||||
flex: 1,
|
||||
width: '100%',
|
||||
height: '100%',
|
||||
alignItems: 'center',
|
||||
justifyContent: 'center',
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user