// Keyboard shortcuts for the Content Editor editor page. Inlined after the // main client script; all referenced functions are global at that point. // Ctrl/Cmd+S save · Ctrl/Cmd+P publish · Ctrl/Cmd+Shift+V versions · ? help // Plain typing in inputs never triggers actions — the handler requires the // modifier key (or, for '?', a non-editing target). function showShortcutsOverlay() { const existing = document.getElementById('shortcuts-overlay'); if (existing) { existing.remove(); return; } const overlay = document.createElement('div'); overlay.id = 'shortcuts-overlay'; overlay.style.cssText = 'position:fixed;inset:0;background:rgba(15,17,23,.75);z-index:300;display:flex;align-items:center;justify-content:center;padding:24px;'; overlay.innerHTML = `

⌨️ Gyorsbillentyűk

Ctrl/Cmd + S — Mentés
Ctrl/Cmd + P — Publikálás
Ctrl/Cmd + Shift + V — Verziók
? — ez a súgó (Esc: bezárás)
`; overlay.addEventListener('click', () => overlay.remove()); document.body.appendChild(overlay); } document.addEventListener('keydown', e => { // Esc closes the shortcut overlay if open if (e.key === 'Escape') { const overlay = document.getElementById('shortcuts-overlay'); if (overlay) { overlay.remove(); e.preventDefault(); } return; } const mod = e.ctrlKey || e.metaKey; if (mod && !e.shiftKey && !e.altKey && (e.key === 's' || e.key === 'S')) { e.preventDefault(); save(); return; } if (mod && !e.shiftKey && !e.altKey && (e.key === 'p' || e.key === 'P')) { e.preventDefault(); publish(); return; } if (mod && e.shiftKey && (e.key === 'v' || e.key === 'V')) { e.preventDefault(); window.open('/versions?file=' + encodeURIComponent(FILE), '_blank'); return; } if (!mod && !e.ctrlKey && !e.metaKey && !e.altKey && e.key === '?') { const target = e.target; const isEditing = target && (target.tagName === 'INPUT' || target.tagName === 'TEXTAREA' || target.isContentEditable); if (!isEditing) { e.preventDefault(); showShortcutsOverlay(); } } });