disable nav-bar drag when menu is open

This commit is contained in:
Araxeus
2023-03-03 23:37:24 +02:00
parent 8bfbbca044
commit 83d7befc45

View File

@ -44,6 +44,7 @@ module.exports = (options) => {
const playPageObserver = new MutationObserver(setNavbarMargin); const playPageObserver = new MutationObserver(setNavbarMargin);
playPageObserver.observe($('ytmusic-app-layout'), { attributeFilter: ['player-page-open_', 'playerPageOpen_'] }) playPageObserver.observe($('ytmusic-app-layout'), { attributeFilter: ['player-page-open_', 'playerPageOpen_'] })
setupSearchOpenObserver(); setupSearchOpenObserver();
setupMenuOpenObserver();
}, { once: true, passive: true }) }, { once: true, passive: true })
}; };
@ -55,6 +56,15 @@ function setupSearchOpenObserver() {
searchOpenObserver.observe($('ytmusic-search-box'), { attributeFilter: ["opened"] }) searchOpenObserver.observe($('ytmusic-search-box'), { attributeFilter: ["opened"] })
} }
function setupMenuOpenObserver() {
const menuOpenObserver = new MutationObserver(mutations => {
$('#nav-bar-background').style.webkitAppRegion =
Array.from($('.cet-menubar').childNodes).some(c => c.classList.contains('open')) ?
'no-drag' : 'drag';
});
menuOpenObserver.observe($('.cet-menubar'), { subtree: true, attributeFilter: ["class"] })
}
function setNavbarMargin() { function setNavbarMargin() {
$('#nav-bar-background').style.right = $('#nav-bar-background').style.right =
$('ytmusic-app-layout').playerPageOpen_ ? $('ytmusic-app-layout').playerPageOpen_ ?