16 lines
469 B
TypeScript
16 lines
469 B
TypeScript
/* The open state of the reader's language menu, shared like the other popups:
|
|
the book's Esc handler defers to whatever popup is on top, and the menu
|
|
steps aside when search or settings opens — popups don't stack in this app. */
|
|
export function useLanguageMenu() {
|
|
const open = useState<boolean>('language-menu:open', () => false)
|
|
|
|
function show() {
|
|
open.value = true
|
|
}
|
|
function hide() {
|
|
open.value = false
|
|
}
|
|
|
|
return { open, show, hide }
|
|
}
|