Fix action menu positioning
This commit is contained in:
@@ -977,6 +977,25 @@
|
||||
document.addEventListener('click', e=>{
|
||||
document.querySelectorAll('.bu-action-menu[open]').forEach(menu=>{ if(!menu.contains(e.target)) menu.removeAttribute('open'); });
|
||||
});
|
||||
content.addEventListener('toggle', e=>{
|
||||
const menu=e.target.closest?.('.bu-action-menu');
|
||||
if(!menu) return;
|
||||
const row=menu.closest('tr');
|
||||
row?.classList.toggle('bu-menu-open',menu.open);
|
||||
menu.classList.remove('open-up');
|
||||
if(!menu.open) return;
|
||||
content.querySelectorAll('.bu-action-menu[open]').forEach(other=>{ if(other!==menu) other.removeAttribute('open'); });
|
||||
requestAnimationFrame(()=>{
|
||||
const summary=menu.querySelector('summary');
|
||||
const popover=menu.querySelector('.bu-action-menu-popover');
|
||||
if(!summary||!popover) return;
|
||||
const rect=summary.getBoundingClientRect();
|
||||
const needed=Math.min(popover.scrollHeight,430);
|
||||
const below=window.innerHeight-rect.bottom-12;
|
||||
const above=rect.top-12;
|
||||
menu.classList.toggle('open-up',below<needed&&above>below);
|
||||
});
|
||||
},true);
|
||||
content.addEventListener('change', e => {
|
||||
if (e.target.name === 'type' && e.target.closest('#bu-repo-form')) {
|
||||
renderRepositorySpecific(e.target.value);
|
||||
|
||||
Reference in New Issue
Block a user