fix: disable mobile drag, replace window.location.reload with router.refresh, use semantic icons

- Disable Muuri drag on mobile devices to prevent scroll conflicts
- Replace all remaining window.location.reload() with router.refresh() in settings/data, settings/general, and note-editor
- Replace duplicate X icons with semantic icons (Trash2 for fused badge, LogOut for leave share)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Sepehr Ramezani
2026-04-01 21:34:22 +02:00
parent 8f35bac56f
commit 377f0c739f
5 changed files with 13 additions and 10 deletions

View File

@@ -5,9 +5,11 @@ import { SettingsNav, SettingsSection, SettingToggle, SettingSelect } from '@/co
import { useLanguage } from '@/lib/i18n'
import { updateAISettings, getAISettings } from '@/app/actions/ai-settings'
import { toast } from 'sonner'
import { useRouter } from 'next/navigation'
export default function GeneralSettingsPage() {
const { t, setLanguage: setContextLanguage } = useLanguage()
const router = useRouter()
const [language, setLanguage] = useState('auto')
const [emailNotifications, setEmailNotifications] = useState(false)
const [desktopNotifications, setDesktopNotifications] = useState(false)
@@ -45,8 +47,8 @@ export default function GeneralSettingsPage() {
toast.success(t('profile.languageUpdateSuccess') || "Language updated")
}
// 3. Force reload to ensure all components update (server components, metadata, etc.)
setTimeout(() => window.location.reload(), 500)
// 3. Refresh server components to ensure all components update (metadata, etc.)
setTimeout(() => router.refresh(), 500)
}
const handleEmailNotificationsChange = async (enabled: boolean) => {