feat: fullscreen composable, roadmap update, and future plans doc

This commit is contained in:
2026-06-09 10:47:14 +08:00
parent 4bfdfbc27d
commit 655b9a23d0
4 changed files with 113 additions and 11 deletions

View File

@@ -0,0 +1,28 @@
import { ref, onMounted, onUnmounted } from 'vue'
export function useFullscreen() {
const isFullscreen = ref(false)
function sync() {
isFullscreen.value = !!document.fullscreenElement
}
async function toggle() {
if (!document.fullscreenElement) {
await document.documentElement.requestFullscreen().catch(() => {})
} else {
await document.exitFullscreen()
}
}
onMounted(() => {
document.addEventListener('fullscreenchange', sync)
sync()
})
onUnmounted(() => {
document.removeEventListener('fullscreenchange', sync)
})
return { isFullscreen, toggle }
}