Fix CSP-blocked command palette trigger (inline onclick -> addEventListener)
The ⌘K header button used an inline onclick handler, which the CSP (script-src-attr, nonce-based, no unsafe-inline) blocks, so clicking the button did nothing. Move the handler into the existing nonce'd script block and bind it via addEventListener on #lt-cmd-trigger. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -205,7 +205,6 @@ $_lt_assetVer = $GLOBALS['config']['ASSET_VERSION'] ?? '20260329';
|
|||||||
class="lt-btn lt-btn-ghost lt-btn-sm"
|
class="lt-btn lt-btn-ghost lt-btn-sm"
|
||||||
title="Command palette (Ctrl+K)"
|
title="Command palette (Ctrl+K)"
|
||||||
aria-label="Open command palette"
|
aria-label="Open command palette"
|
||||||
onclick="if(window.lt&<.cmdPalette)lt.cmdPalette.open()"
|
|
||||||
style="font-size:0.65rem;opacity:0.65;letter-spacing:0.03em;padding:0.2rem 0.45rem">⌕ K</button>
|
style="font-size:0.65rem;opacity:0.65;letter-spacing:0.03em;padding:0.2rem 0.45rem">⌕ K</button>
|
||||||
<button type="button" class="lt-theme-btn" id="lt-theme-btn"
|
<button type="button" class="lt-theme-btn" id="lt-theme-btn"
|
||||||
aria-label="Switch to light mode" title="Switch to light mode">☀</button>
|
aria-label="Switch to light mode" title="Switch to light mode">☀</button>
|
||||||
@@ -258,6 +257,13 @@ $_lt_assetVer = $GLOBALS['config']['ASSET_VERSION'] ?? '20260329';
|
|||||||
});
|
});
|
||||||
} catch(_) {}
|
} catch(_) {}
|
||||||
if (window.lt && lt.cmdPalette) lt.cmdPalette.init(commands);
|
if (window.lt && lt.cmdPalette) lt.cmdPalette.init(commands);
|
||||||
|
// Bind the header ⌘K trigger here (no inline onclick — CSP blocks inline handlers)
|
||||||
|
var cmdTrigger = document.getElementById('lt-cmd-trigger');
|
||||||
|
if (cmdTrigger) {
|
||||||
|
cmdTrigger.addEventListener('click', function() {
|
||||||
|
if (window.lt && lt.cmdPalette) lt.cmdPalette.open();
|
||||||
|
});
|
||||||
|
}
|
||||||
});
|
});
|
||||||
// Keyboard shortcut: Ctrl+K / Cmd+K
|
// Keyboard shortcut: Ctrl+K / Cmd+K
|
||||||
document.addEventListener('keydown', function(e) {
|
document.addEventListener('keydown', function(e) {
|
||||||
|
|||||||
Reference in New Issue
Block a user