feat: Disable zoom and setup mobile viewport

This commit is contained in:
Vanalite 2025-09-18 15:42:22 +07:00
parent 15d56e8e7e
commit f76387ac6a

View File

@ -8,6 +8,47 @@ import { routeTree } from './routeTree.gen'
import './index.css'
import './i18n'
// Mobile-specific viewport and styling setup
const setupMobileViewport = () => {
// Check if running on mobile platform (iOS/Android via Tauri)
const isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent) ||
window.matchMedia('(max-width: 768px)').matches
if (isMobile) {
// Update viewport meta tag to disable zoom
let viewportMeta = document.querySelector('meta[name="viewport"]')
if (viewportMeta) {
viewportMeta.setAttribute('content',
'width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover'
)
}
// Add mobile-specific styles for status bar
const style = document.createElement('style')
style.textContent = `
body {
padding-top: env(safe-area-inset-top);
padding-bottom: env(safe-area-inset-bottom);
padding-left: env(safe-area-inset-left);
padding-right: env(safe-area-inset-right);
}
#root {
min-height: calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom));
}
/* Prevent zoom on input focus */
input, textarea, select {
font-size: 16px !important;
}
`
document.head.appendChild(style)
}
}
// Initialize mobile setup
setupMobileViewport()
// Create a new router instance
const router = createRouter({ routeTree })