Merge verified Odysseus fixes

This commit is contained in:
pewdiepie-archdaemon
2026-07-23 14:49:02 +00:00
parent 4c9a8ca115
commit d8a2059df8
117 changed files with 15693 additions and 3191 deletions
+8 -3
View File
@@ -71,10 +71,15 @@ export function wireTopbar(deps) {
// original IDs so the standalone handlers below wire to them
// unchanged.
{
const saveBtn = document.getElementById('ge-save-menu-btn');
const saveMenu = document.getElementById('ge-save-menu');
const editorRoot = document.getElementById('gallery-editor-container') || document;
const saveBtn = editorRoot.querySelector('#ge-save-menu-btn');
const saveWrap = saveBtn?.closest('.ge-save-wrap');
const saveMenu = saveWrap?.querySelector('#ge-save-menu');
if (saveBtn && saveMenu) {
const saveTopbar = saveBtn.closest('.ge-topbar');
document.querySelectorAll('body > #ge-save-menu').forEach((menu) => {
if (menu !== saveMenu) menu.remove();
});
// Reparent the menu to <body>. Without this, the menu inherits
// the gallery modal's containing block (the modal applies a
// `transform: scale(...)` for its enter animation — and any
@@ -105,7 +110,7 @@ export function wireTopbar(deps) {
saveMenu.addEventListener('click', () => { setSaveMenuOpen(false); });
window.addEventListener('resize', () => { if (!saveMenu.hidden) positionSaveMenu(); });
registerDocClickAway((e) => {
if (!saveMenu.hidden && !saveMenu.contains(e.target) && e.target !== saveBtn) {
if (!saveMenu.hidden && !saveMenu.contains(e.target) && !saveBtn.contains(e.target)) {
setSaveMenuOpen(false);
}
});