diff --git a/mods/property-layout/mod.js b/mods/property-layout/mod.js index 10539da..5b5426a 100644 --- a/mods/property-layout/mod.js +++ b/mods/property-layout/mod.js @@ -43,16 +43,29 @@ module.exports = { 'propertylayout-hidden' ); const toggle = createElement( - '' + '' + ); + toggle.prepend( + createElement('') ); toggle.addEventListener('click', (event) => { - properties.classList.toggle('propertylayout-hidden'); - toggle.setAttribute( - 'data-action', - properties.classList.contains('propertylayout-hidden') + properties.style.maxHeight = properties.children[0].offsetHeight + 'px'; + setTimeout(() => { + properties.classList.toggle('propertylayout-hidden'); + toggle.setAttribute( + 'data-action', + properties.classList.contains('propertylayout-hidden') ? 'show' : 'hide' - ); + ); + }, 0); + }); + const propObserver = new MutationObserver(() => { + properties.style.maxHeight = ''; + }); + propObserver.observe(properties, { + childList: true, + subtree: true, }); if (properties.previousElementSibling) { properties.previousElementSibling.append(toggle);