diff --git a/src/scripts/firefox-scroll.js b/src/scripts/firefox-scroll.js new file mode 100644 index 0000000..5f62468 --- /dev/null +++ b/src/scripts/firefox-scroll.js @@ -0,0 +1,55 @@ +document.addEventListener("DOMContentLoaded", () => { + const resizeChat = () => { + let chatBox = Array.from(document.querySelectorAll("solid-xmpp-chat")) + .map((el) => el.shadowRoot ? el.shadowRoot.getElementById("conversejs") : false) + .filter((el) => el) + .pop(); + if (chatBox) { + let chatTextArea = chatBox.querySelector(".message-form-container"); + let ischatTextArea = setInterval(() => { + chatTextArea = chatBox.querySelector(".message-form-container"); + if (chatTextArea) { + clearInterval(ischatTextArea); + if ( + chatBox.getBoundingClientRect().height - + chatTextArea.getBoundingClientRect().height != + chatTextArea.offsetTop + ) { + let viewportChat = Array.from( + document.querySelectorAll("#viewport .chat-view") + ); + viewportChat.forEach( + (c) => (c.style.height = "calc(100vh - 106px - 57px - 4px)") + ); + } + } + }, 15); + } + }; + resizeChat(); + + let isbody = setInterval(() => { + if (document.body) { + clearInterval(isbody); + resizeChat(); + } + }, 15); + + window.addEventListener("load", () => { + setTimeout(() => { + resizeChat(); + }, 0); + }); + + window.addEventListener("resize", () => { + setTimeout(() => { + resizeChat(); + }, 0); + }); + + document.addEventListener("navigate", () => { + setTimeout(() => { + resizeChat(); + }, 0); + }); +}); \ No newline at end of file diff --git a/src/styles/base/table.scss b/src/styles/base/table.scss index 9fb19b7..c6b7e37 100644 --- a/src/styles/base/table.scss +++ b/src/styles/base/table.scss @@ -49,6 +49,9 @@ text-align: center; vertical-align: middle; } + solid-multiple[name="user.communities"] { + text-align: left; + } } }