fix for breakage around forwarding review

This commit is contained in:
or-else
2022-05-12 18:29:21 -07:00
parent 5087a70d5e
commit a9e4f644a2
7 changed files with 33 additions and 38 deletions
+8 -12
View File
@@ -226,16 +226,6 @@ class MessagesView extends React.Component {
} else if (nextProps.topic != prevState.topic) { } else if (nextProps.topic != prevState.topic) {
const topic = nextProps.tinode.getTopic(nextProps.topic); const topic = nextProps.tinode.getTopic(nextProps.topic);
let reply = null;
if (nextProps.forwardMessage) {
// We are forwarding a message. Show preview.
const preview = nextProps.forwardMessage.preview;
reply = {
content: preview,
seq: null
};
}
nextState = { nextState = {
topic: nextProps.topic, topic: nextProps.topic,
docPreview: null, docPreview: null,
@@ -244,11 +234,18 @@ class MessagesView extends React.Component {
typingIndicator: false, typingIndicator: false,
scrollPosition: 0, scrollPosition: 0,
fetchingMessages: false, fetchingMessages: false,
reply: reply,
showGoToLastButton: false, showGoToLastButton: false,
deleted: topic._deleted deleted: topic._deleted
}; };
if (nextProps.forwardMessage) {
// We are forwarding a message. Show preview.
nextState.reply = {
content: nextProps.forwardMessage.preview,
seq: null
};
}
if (topic) { if (topic) {
// Topic exists. // Topic exists.
const subs = []; const subs = [];
@@ -926,7 +923,6 @@ class MessagesView extends React.Component {
// seq: seq ID of the source message // seq: seq ID of the source message
// context: message content. // context: message content.
// forwarded: true if the source message is also a forwarded message.
// senderId: UID of the sender of the source message. // senderId: UID of the sender of the source message.
// senderName: full name of the sender of the original message. // senderName: full name of the sender of the original message.
handlePickReply(seq, content, senderId, senderName) { handlePickReply(seq, content, senderId, senderName) {
+1 -1
View File
@@ -217,7 +217,7 @@ export default class AudioPlayer extends React.PureComponent {
} }
handleError(err) { handleError(err) {
console.log(err); console.error(err);
} }
handleSeek(e) { handleSeek(e) {
+6 -5
View File
@@ -84,7 +84,8 @@ class SendMessage extends React.PureComponent {
if (prevProps.topicName != this.props.topicName) { if (prevProps.topicName != this.props.topicName) {
this.setState({message: '', audioRec: false, quote: null}); this.setState({message: '', audioRec: false, quote: null});
} else if (prevProps.reply != this.props.reply) { }
if (prevProps.reply != this.props.reply) {
this.setState({quote: this.formatReply()}); this.setState({quote: this.formatReply()});
} }
} }
@@ -196,17 +197,17 @@ class SendMessage extends React.PureComponent {
formatMessage(messages[this.props.messagePrompt]) : formatMessage(messages[this.props.messagePrompt]) :
formatMessage(messages.type_new_message)); formatMessage(messages.type_new_message));
const quote = const quote = this.state.quote ?
(<div id="reply-quote-preview"> (<div id="reply-quote-preview">
<div className="cancel"> <div className="cancel">
<a href="#" onClick={(e) => {e.preventDefault(); this.props.onCancelReply();}}><i className="material-icons gray">close</i></a> <a href="#" onClick={(e) => {e.preventDefault(); this.props.onCancelReply();}}><i className="material-icons gray">close</i></a>
</div> </div>
{this.state.quote} {this.state.quote}
</div>); </div>) : null;
const audioEnabled = this.state.audioAvailable && this.props.onAttachAudio; const audioEnabled = this.state.audioAvailable && this.props.onAttachAudio;
return ( return (
<div id="send-message-wrapper"> <div id="send-message-wrapper">
{this.state.quote && !this.props.noInput ? quote : null} {!this.props.noInput ? quote : null}
<div id="send-message-panel"> <div id="send-message-panel">
{!this.props.disabled ? {!this.props.disabled ?
<> <>
@@ -222,7 +223,7 @@ class SendMessage extends React.PureComponent {
: :
null} null}
{this.props.noInput ? {this.props.noInput ?
(this.state.quote ? quote : <div className="hr thin" />) : (quote || <div className="hr thin" />) :
(this.state.audioRec ? (this.state.audioRec ?
<AudioRecorder <AudioRecorder
onDeleted={_ => this.setState({audioRec: false})} onDeleted={_ => this.setState({audioRec: false})}
+15 -17
View File
@@ -5564,16 +5564,6 @@ class MessagesView extends (react__WEBPACK_IMPORTED_MODULE_0___default().Compone
}; };
} else if (nextProps.topic != prevState.topic) { } else if (nextProps.topic != prevState.topic) {
const topic = nextProps.tinode.getTopic(nextProps.topic); const topic = nextProps.tinode.getTopic(nextProps.topic);
let reply = null;
if (nextProps.forwardMessage) {
const preview = nextProps.forwardMessage.preview;
reply = {
content: preview,
seq: null
};
}
nextState = { nextState = {
topic: nextProps.topic, topic: nextProps.topic,
docPreview: null, docPreview: null,
@@ -5582,11 +5572,17 @@ class MessagesView extends (react__WEBPACK_IMPORTED_MODULE_0___default().Compone
typingIndicator: false, typingIndicator: false,
scrollPosition: 0, scrollPosition: 0,
fetchingMessages: false, fetchingMessages: false,
reply: reply,
showGoToLastButton: false, showGoToLastButton: false,
deleted: topic._deleted deleted: topic._deleted
}; };
if (nextProps.forwardMessage) {
nextState.reply = {
content: nextProps.forwardMessage.preview,
seq: null
};
}
if (topic) { if (topic) {
const subs = []; const subs = [];
@@ -9896,7 +9892,7 @@ class AudioPlayer extends (react__WEBPACK_IMPORTED_MODULE_0___default().PureComp
} }
handleError(err) { handleError(err) {
console.log(err); console.error(err);
} }
handleSeek(e) { handleSeek(e) {
@@ -14708,7 +14704,9 @@ class SendMessage extends (react__WEBPACK_IMPORTED_MODULE_0___default().PureComp
audioRec: false, audioRec: false,
quote: null quote: null
}); });
} else if (prevProps.reply != this.props.reply) { }
if (prevProps.reply != this.props.reply) {
this.setState({ this.setState({
quote: this.formatReply() quote: this.formatReply()
}); });
@@ -14819,7 +14817,7 @@ class SendMessage extends (react__WEBPACK_IMPORTED_MODULE_0___default().PureComp
formatMessage formatMessage
} = this.props.intl; } = this.props.intl;
const prompt = this.props.disabled ? formatMessage(messages.messaging_disabled) : this.props.messagePrompt ? formatMessage(messages[this.props.messagePrompt]) : formatMessage(messages.type_new_message); const prompt = this.props.disabled ? formatMessage(messages.messaging_disabled) : this.props.messagePrompt ? formatMessage(messages[this.props.messagePrompt]) : formatMessage(messages.type_new_message);
const quote = react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", { const quote = this.state.quote ? react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
id: "reply-quote-preview" id: "reply-quote-preview"
}, react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", { }, react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
className: "cancel" className: "cancel"
@@ -14831,11 +14829,11 @@ class SendMessage extends (react__WEBPACK_IMPORTED_MODULE_0___default().PureComp
} }
}, react__WEBPACK_IMPORTED_MODULE_0___default().createElement("i", { }, react__WEBPACK_IMPORTED_MODULE_0___default().createElement("i", {
className: "material-icons gray" className: "material-icons gray"
}, "close"))), this.state.quote); }, "close"))), this.state.quote) : null;
const audioEnabled = this.state.audioAvailable && this.props.onAttachAudio; const audioEnabled = this.state.audioAvailable && this.props.onAttachAudio;
return react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", { return react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
id: "send-message-wrapper" id: "send-message-wrapper"
}, this.state.quote && !this.props.noInput ? quote : null, react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", { }, !this.props.noInput ? quote : null, react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
id: "send-message-panel" id: "send-message-panel"
}, !this.props.disabled ? react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, this.props.onAttachFile && !this.state.audioRec ? react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", { }, !this.props.disabled ? react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, this.props.onAttachFile && !this.state.audioRec ? react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
href: "#", href: "#",
@@ -14855,7 +14853,7 @@ class SendMessage extends (react__WEBPACK_IMPORTED_MODULE_0___default().PureComp
title: "Attach file" title: "Attach file"
}, react__WEBPACK_IMPORTED_MODULE_0___default().createElement("i", { }, react__WEBPACK_IMPORTED_MODULE_0___default().createElement("i", {
className: "material-icons secondary" className: "material-icons secondary"
}, "attach_file"))) : null, this.props.noInput ? this.state.quote ? quote : react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", { }, "attach_file"))) : null, this.props.noInput ? quote || react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
className: "hr thin" className: "hr thin"
}) : this.state.audioRec ? react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_audio_recorder_jsx__WEBPACK_IMPORTED_MODULE_3__["default"], { }) : this.state.audioRec ? react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_audio_recorder_jsx__WEBPACK_IMPORTED_MODULE_3__["default"], {
onDeleted: _ => this.setState({ onDeleted: _ => this.setState({
+1 -1
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long