diff options
author | mightymop <totzkotz@gmail.com> | 2021-09-27 12:17:42 +0300 |
---|---|---|
committer | sualko <klaus@jsxc.org> | 2021-12-29 17:49:45 +0300 |
commit | a4c182f00ab13e831109fff170e5c8b9fc07f81b (patch) | |
tree | d5e11d4c5ced4bae1801b5cfc8b9601194aad62d | |
parent | d6517b1253db24071f32c6e4579ef17aa6212f6f (diff) |
fix(mam): show "Load Button" if messare area is empty
and show button, if chat history was cleared
fix scroll
-rw-r--r-- | src/plugins/mam/Plugin.ts | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/plugins/mam/Plugin.ts b/src/plugins/mam/Plugin.ts index 2f4dbfc3..ca54aa62 100644 --- a/src/plugins/mam/Plugin.ts +++ b/src/plugins/mam/Plugin.ts @@ -150,7 +150,11 @@ export default class MessageArchiveManagementPlugin extends AbstractPlugin { element.append(spanElement); messageAreaElement.on('scroll', function () { - if (messageAreaElement.height() + this.scrollTop < 42 && !archive.isExhausted()) { + let scrollTop : number = messageAreaElement[0].scrollTop; + if (scrollTop<0) + scrollTop=scrollTop*(-1); + + if (((messageAreaElement[0].clientHeight + 42 > messageAreaElement[0].scrollHeight - scrollTop) && !archive.isExhausted())||messageAreaElement.text().trim().length===0) { element.addClass(classNameShow); } else { element.removeClass(classNameShow); @@ -159,6 +163,12 @@ export default class MessageArchiveManagementPlugin extends AbstractPlugin { messageAreaElement.trigger('scroll'); + messageAreaElement.on("DOMSubtreeModified",function(e){ + if ($(this).text().trim().length===0){ + $(this).parent().find('.jsxc-mam-load-more').addClass('jsxc-show'); + } + }); + if (!archive.isExhausted()) { chatWindowElement.addClass(classNameMamEnable); } |