Browse Source

fix bounce issue

q-apps
Phillip Lang Martinez 2 years ago
parent
commit
66d94cfc52
  1. 14
      qortal-ui-plugins/plugins/core/components/ChatPage.js
  2. 10
      qortal-ui-plugins/plugins/utils/replace-messages-edited.js

14
qortal-ui-plugins/plugins/core/components/ChatPage.js

@ -887,6 +887,7 @@ class ChatPage extends LitElement {
async getOldMessage(scrollElement) { async getOldMessage(scrollElement) {
if (this.isReceipient) { if (this.isReceipient) {
const getInitialMessages = await parentEpml.request('apiCall', { const getInitialMessages = await parentEpml.request('apiCall', {
type: 'api', type: 'api',
@ -910,8 +911,12 @@ class ChatPage extends LitElement {
- b.timestamp - b.timestamp
}) })
await this.getUpdateComplete(); await this.getUpdateComplete();
const marginElements = Array.from(this.shadowRoot.querySelector('chat-scroller').shadowRoot.querySelectorAll('message-template'));
scrollElement.scrollIntoView({ behavior: 'auto', block: 'center' }); const findElement = marginElements.find((item)=> item.messageObj.reference === scrollElement.messageObj.reference)
if(findElement){
findElement.scrollIntoView({ behavior: 'auto', block: 'center' });
}
} else { } else {
const getInitialMessages = await parentEpml.request('apiCall', { const getInitialMessages = await parentEpml.request('apiCall', {
@ -937,8 +942,13 @@ class ChatPage extends LitElement {
- b.timestamp - b.timestamp
}) })
await this.getUpdateComplete(); await this.getUpdateComplete();
const marginElements = Array.from(this.shadowRoot.querySelector('chat-scroller').shadowRoot.querySelectorAll('message-template'));
const findElement = marginElements.find((item)=> item.messageObj.reference === scrollElement.messageObj.reference)
if(findElement){
findElement.scrollIntoView({ behavior: 'auto', block: 'center' });
}
scrollElement.scrollIntoView({ behavior: 'auto', block: 'center' });
} }

10
qortal-ui-plugins/plugins/utils/replace-messages-edited.js

@ -17,13 +17,9 @@ export const replaceMessagesEdited = async ({
url: `/chat/messages?chatreference=${msg.reference}&reverse=true${msgQuery}`, url: `/chat/messages?chatreference=${msg.reference}&reverse=true${msgQuery}`,
}) })
console.log({response})
if (response && Array.isArray(response) && response.length !== 0) { if (response && Array.isArray(response) && response.length !== 0) {
let responseItem = { ...response[0] } let responseItem = { ...response[0] }
console.log('right before')
const decodeResponseItem = decodeMessageFunc(responseItem, isReceipient, _publicKey) const decodeResponseItem = decodeMessageFunc(responseItem, isReceipient, _publicKey)
console.log({decodeResponseItem})
delete decodeResponseItem.timestamp delete decodeResponseItem.timestamp
msgItem = { msgItem = {
...msg, ...msg,
@ -43,24 +39,20 @@ export const replaceMessagesEdited = async ({
try { try {
parsedMessageObj = JSON.parse(msg.decodedMessage) parsedMessageObj = JSON.parse(msg.decodedMessage)
} catch (error) { } catch (error) {
console.log('error', {parsedMessageObj}) console.log('error')
return msg return msg
} }
console.log('noerror')
let msgItem = msg let msgItem = msg
try { try {
let msgQuery = `&involving=${msg.recipient}&involving=${msg.sender}` let msgQuery = `&involving=${msg.recipient}&involving=${msg.sender}`
if (!isReceipient) { if (!isReceipient) {
msgQuery = `&txGroupId=${msg.txGroupId}` msgQuery = `&txGroupId=${msg.txGroupId}`
} }
console.log({parsedMessageObj})
if (parsedMessageObj.repliedTo) { if (parsedMessageObj.repliedTo) {
const response = await parentEpml.request("apiCall", { const response = await parentEpml.request("apiCall", {
type: "api", type: "api",
url: `/chat/messages?chatreference=${parsedMessageObj.repliedTo}&reverse=true${msgQuery}`, url: `/chat/messages?chatreference=${parsedMessageObj.repliedTo}&reverse=true${msgQuery}`,
}) })
console.log({response2: response})
if ( if (
response && response &&
Array.isArray(response) && Array.isArray(response) &&

Loading…
Cancel
Save