Add multi line messages supports

This commit is contained in:
2025-11-28 17:15:33 +01:00
parent 4b30d67706
commit 123e069d18

View File

@@ -44,7 +44,7 @@ export function RoomMessagesList(p: {
// Automatically scroll to bottom when number of messages change // Automatically scroll to bottom when number of messages change
React.useEffect(() => { React.useEffect(() => {
if (messagesEndRef) if (messagesEndRef)
messagesEndRef.current?.scrollIntoView({ behavior: "smooth" }); messagesEndRef.current?.scrollIntoView({ behavior: "instant" });
}, [p.mgr.messages.length]); }, [p.mgr.messages.length]);
return ( return (
@@ -200,6 +200,8 @@ function RoomMessage(p: {
maxWidth: "100%", maxWidth: "100%",
transition: "all 0.01s ease-in", transition: "all 0.01s ease-in",
position: "relative", position: "relative",
display: "flex",
flexDirection: "row",
}} }}
component="div" component="div"
sx={{ sx={{
@@ -214,23 +216,26 @@ function RoomMessage(p: {
> >
<Typography variant="caption"> <Typography variant="caption">
&nbsp; {p.message.time_sent_dayjs.format("HH:mm")} &nbsp; {p.message.time_sent_dayjs.format("HH:mm")}
</Typography>{" "} </Typography>
&nbsp;&nbsp;&nbsp;
{p.message.image ? ( {/** Message itself */}
<img <div style={{ marginLeft: "15px", whiteSpace: "pre-wrap" }}>
onClick={() => setShowImageFullScreen(true)} {p.message.image ? (
src={MatrixApiEvent.GetEventFileURL( <img
p.room, onClick={() => setShowImageFullScreen(true)}
p.message.event_id, src={MatrixApiEvent.GetEventFileURL(
true p.room,
)} p.message.event_id,
style={{ true
maxWidth: "200px", )}
}} style={{
/> maxWidth: "200px",
) : ( }}
p.message.content />
)} ) : (
p.message.content
)}
</div>
<ButtonGroup <ButtonGroup
className="buttons" className="buttons"
size="small" size="small"
@@ -362,6 +367,7 @@ function RoomMessage(p: {
type="text" type="text"
fullWidth fullWidth
variant="standard" variant="standard"
multiline
value={editMessage} value={editMessage}
onChange={(e) => setEditMessage(e.target.value)} onChange={(e) => setEditMessage(e.target.value)}
/> />