From d7790bb7ef8368dfb815430206543a6640c9ee2f Mon Sep 17 00:00:00 2001 From: Ricky Stretch Date: Sat, 28 Mar 2026 11:27:36 -0400 Subject: [PATCH] chrome mobile autofill bug fix --- frontend/src/components/BrandingModal.jsx | 4 +-- frontend/src/components/GroupInfoModal.jsx | 6 ++--- frontend/src/components/MobileEventForm.jsx | 18 ++++++------- frontend/src/components/NewChatModal.jsx | 4 +-- frontend/src/components/ProfileModal.jsx | 6 ++--- frontend/src/components/SchedulePage.jsx | 28 ++++++++++----------- frontend/src/components/SettingsModal.jsx | 4 +-- frontend/src/pages/GroupManagerPage.jsx | 6 ++--- frontend/src/pages/UserManagerPage.jsx | 10 ++++---- 9 files changed, 43 insertions(+), 43 deletions(-) diff --git a/frontend/src/components/BrandingModal.jsx b/frontend/src/components/BrandingModal.jsx index a326bc1..07c86a9 100644 --- a/frontend/src/components/BrandingModal.jsx +++ b/frontend/src/components/BrandingModal.jsx @@ -235,7 +235,7 @@ function CustomPicker({ initial, onSet, onBack }) { width: 110, background: 'var(--surface)', color: 'var(--text-primary)', }} - placeholder="#000000" autoComplete="new-password" /> + placeholder="#000000" autoComplete="off" /> Chosen colour @@ -455,7 +455,7 @@ export default function BrandingModal({ onClose }) { className="input flex-1" value={appName} maxLength={16} - onChange={e => setAppName(e.target.value)} autoComplete="new-password" onKeyDown={e => e.key === 'Enter' && handleSaveName()} /> + onChange={e => setAppName(e.target.value)} autoComplete="off" onKeyDown={e => e.key === 'Enter' && handleSaveName()} />

diff --git a/frontend/src/components/GroupInfoModal.jsx b/frontend/src/components/GroupInfoModal.jsx index 34985fd..6606944 100644 --- a/frontend/src/components/GroupInfoModal.jsx +++ b/frontend/src/components/GroupInfoModal.jsx @@ -134,7 +134,7 @@ export default function GroupInfoModal({ group, onClose, onUpdated, onBack }) {

{editing ? (
- setNewName(e.target.value)} autoComplete="new-password" onKeyDown={e => e.key === 'Enter' && handleRename()} autoComplete="new-password" autoCorrect="off" autoCapitalize="off" spellCheck={false} /> + setNewName(e.target.value)} autoComplete="off" onKeyDown={e => e.key === 'Enter' && handleRename()} autoCorrect="off" autoCapitalize="off" spellCheck={false} />
@@ -165,7 +165,7 @@ export default function GroupInfoModal({ group, onClose, onUpdated, onBack }) { setCustomName(e.target.value)} autoComplete="new-password" placeholder={group.owner_name_original || group.name} + onChange={e => setCustomName(e.target.value)} autoComplete="off" placeholder={group.owner_name_original || group.name} onKeyDown={e => e.key === 'Enter' && handleCustomName()} /> {customName.trim() !== savedCustomName ? (
{canManage && (
- setAddSearch(e.target.value)} /> + setAddSearch(e.target.value)} /> {addResults.length > 0 && addSearch && (
{addResults.filter(u => !members.find(m => m.id === u.id)).map(u => ( diff --git a/frontend/src/components/MobileEventForm.jsx b/frontend/src/components/MobileEventForm.jsx index 28702aa..9eec73a 100644 --- a/frontend/src/components/MobileEventForm.jsx +++ b/frontend/src/components/MobileEventForm.jsx @@ -105,7 +105,7 @@ function TimeInputMobile({ value, onChange }) { onFocus={() => setOpen(true)} onBlur={e => setTimeout(() => commit(e.target.value), 150)} onKeyDown={e => { if (e.key === 'Enter') { e.preventDefault(); commit(inputVal); } if (e.key === 'Escape') { setInputVal(fmt12(value)); setOpen(false); } }} - autoComplete="new-password" + autoComplete="off" style={{ fontSize: 15, color: 'var(--primary)', fontWeight: 600, background: 'transparent', border: 'none', outline: 'none', cursor: 'text', width: 90 }} /> {open && ( @@ -255,7 +255,7 @@ function RecurrenceSheet({ value, onChange, onClose }) {
Repeats every
- upd('interval',Math.max(1,parseInt(e.target.value)||1))} style={{ width:70,textAlign:'center',fontSize:16 }}/> + upd('interval',Math.max(1,parseInt(e.target.value)||1))} autoComplete="off" style={{ width:70,textAlign:'center',fontSize:16 }}/> @@ -282,8 +282,8 @@ function RecurrenceSheet({ value, onChange, onClose }) { {(customRule.ends||'never')===val&&
}
{lbl} - {val==='on'&&(customRule.ends||'never')==='on'&& upd('endDate',e.target.value)} style={{ width:150 }}/>} - {val==='after'&&(customRule.ends||'never')==='after'&&<> upd('endCount',parseInt(e.target.value)||1)} style={{ width:64,textAlign:'center' }}/>occurrences} + {val==='on'&&(customRule.ends||'never')==='on'&& upd('endDate',e.target.value)} autoComplete="off" style={{ width:150 }}/>} + {val==='after'&&(customRule.ends||'never')==='after'&&<> upd('endCount',parseInt(e.target.value)||1)} autoComplete="off" style={{ width:64,textAlign:'center' }}/>occurrences}
))}
@@ -478,7 +478,7 @@ export default function MobileEventForm({ event, eventTypes, userGroups, selecte
{/* Title */}
- setTitle(e.target.value)} autoComplete="new-password" placeholder="Add title" autoComplete="new-password" autoCorrect="off" autoCapitalize="sentences" spellCheck={false} style={{ width:'100%',border:'none',background:'transparent',fontSize:22,fontWeight:700,color:'var(--text-primary)',outline:'none' }}/> + setTitle(e.target.value)} autoComplete="off" placeholder="Add title" autoCorrect="off" autoCapitalize="sentences" spellCheck={false} style={{ width:'100%',border:'none',background:'transparent',fontSize:22,fontWeight:700,color:'var(--text-primary)',outline:'none' }}/>
{/* Event Type */} @@ -567,12 +567,12 @@ export default function MobileEventForm({ event, eventTypes, userGroups, selecte {/* Location */} }> - setLocation(e.target.value)} autoComplete="new-password" placeholder="Add location" autoComplete="new-password" autoCorrect="off" autoCapitalize="off" spellCheck={false} style={{ width:'100%',border:'none',background:'transparent',fontSize:15,color:'var(--text-primary)',outline:'none' }}/> + setLocation(e.target.value)} autoComplete="off" placeholder="Add location" autoCorrect="off" autoCapitalize="off" spellCheck={false} style={{ width:'100%',border:'none',background:'transparent',fontSize:15,color:'var(--text-primary)',outline:'none' }}/> {/* Description */} } border={false}> -