Compare commits
1 Commits
luggage-li
...
luggage-li
| Author | SHA1 | Date | |
|---|---|---|---|
| bd500674a0 |
1
TODO.md
1
TODO.md
@@ -38,3 +38,4 @@ Improving & Fixing Bugs (V3)
|
|||||||
- [x] Added check-up stats (correct/bad/pending) and persisted per snapshot
|
- [x] Added check-up stats (correct/bad/pending) and persisted per snapshot
|
||||||
- [x] Extra UI polish pass (spacing, cards, hierarchy)
|
- [x] Extra UI polish pass (spacing, cards, hierarchy)
|
||||||
- [x] Centered and enlarged edit/check-up modals to fully overlay nav
|
- [x] Centered and enlarged edit/check-up modals to fully overlay nav
|
||||||
|
- [x] Fixed modal keyboard glitching (stable centered keyboard-aware layout)
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ export default function CheckupFixModal({
|
|||||||
return (
|
return (
|
||||||
<Modal visible={visible} animationType="slide" transparent>
|
<Modal visible={visible} animationType="slide" transparent>
|
||||||
<View style={styles.modalBackdrop}>
|
<View style={styles.modalBackdrop}>
|
||||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'padding' : 'height'} style={styles.modalKeyboardWrap}>
|
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'padding' : undefined} style={styles.modalKeyboardWrap}>
|
||||||
<View style={styles.modalCard}>
|
<View style={styles.modalCard}>
|
||||||
<View style={styles.sectionRow}>
|
<View style={styles.sectionRow}>
|
||||||
<Text style={styles.sectionTitle}>Update for this Check-Up</Text>
|
<Text style={styles.sectionTitle}>Update for this Check-Up</Text>
|
||||||
@@ -24,7 +24,12 @@ export default function CheckupFixModal({
|
|||||||
</Pressable>
|
</Pressable>
|
||||||
</View>
|
</View>
|
||||||
|
|
||||||
<ScrollView keyboardShouldPersistTaps="handled" showsVerticalScrollIndicator={false}>
|
<ScrollView
|
||||||
|
keyboardShouldPersistTaps="handled"
|
||||||
|
keyboardDismissMode="interactive"
|
||||||
|
contentContainerStyle={{ paddingBottom: 12 }}
|
||||||
|
showsVerticalScrollIndicator={false}
|
||||||
|
>
|
||||||
<Field label="Status">
|
<Field label="Status">
|
||||||
<ChipGroup
|
<ChipGroup
|
||||||
options={ITEM_STATUSES}
|
options={ITEM_STATUSES}
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ export default function ItemModal({
|
|||||||
return (
|
return (
|
||||||
<Modal visible={visible} animationType="slide" transparent>
|
<Modal visible={visible} animationType="slide" transparent>
|
||||||
<View style={styles.modalBackdrop}>
|
<View style={styles.modalBackdrop}>
|
||||||
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'padding' : 'height'} style={styles.modalKeyboardWrap}>
|
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'padding' : undefined} style={styles.modalKeyboardWrap}>
|
||||||
<View style={styles.modalCard}>
|
<View style={styles.modalCard}>
|
||||||
<View style={styles.sectionRow}>
|
<View style={styles.sectionRow}>
|
||||||
<Text style={styles.sectionTitle}>{itemForm.id ? 'Update Item' : 'Add Item'}</Text>
|
<Text style={styles.sectionTitle}>{itemForm.id ? 'Update Item' : 'Add Item'}</Text>
|
||||||
@@ -25,7 +25,12 @@ export default function ItemModal({
|
|||||||
</Pressable>
|
</Pressable>
|
||||||
</View>
|
</View>
|
||||||
|
|
||||||
<ScrollView keyboardShouldPersistTaps="handled" showsVerticalScrollIndicator={false}>
|
<ScrollView
|
||||||
|
keyboardShouldPersistTaps="handled"
|
||||||
|
keyboardDismissMode="interactive"
|
||||||
|
contentContainerStyle={{ paddingBottom: 12 }}
|
||||||
|
showsVerticalScrollIndicator={false}
|
||||||
|
>
|
||||||
<Field label="Name">
|
<Field label="Name">
|
||||||
<TextInput
|
<TextInput
|
||||||
style={styles.input}
|
style={styles.input}
|
||||||
|
|||||||
@@ -400,17 +400,17 @@ export const styles = StyleSheet.create({
|
|||||||
modalBackdrop: {
|
modalBackdrop: {
|
||||||
flex: 1,
|
flex: 1,
|
||||||
backgroundColor: 'rgba(2,6,23,0.72)',
|
backgroundColor: 'rgba(2,6,23,0.72)',
|
||||||
justifyContent: 'center',
|
|
||||||
alignItems: 'center',
|
|
||||||
paddingHorizontal: 12,
|
paddingHorizontal: 12,
|
||||||
},
|
},
|
||||||
modalKeyboardWrap: {
|
modalKeyboardWrap: {
|
||||||
|
flex: 1,
|
||||||
width: '100%',
|
width: '100%',
|
||||||
alignItems: 'center',
|
alignItems: 'center',
|
||||||
|
justifyContent: 'center',
|
||||||
},
|
},
|
||||||
modalCard: {
|
modalCard: {
|
||||||
width: '96%',
|
width: '96%',
|
||||||
maxHeight: '92%',
|
maxHeight: '90%',
|
||||||
backgroundColor: '#0f172a',
|
backgroundColor: '#0f172a',
|
||||||
borderRadius: 20,
|
borderRadius: 20,
|
||||||
borderWidth: 1,
|
borderWidth: 1,
|
||||||
|
|||||||
Reference in New Issue
Block a user