Bug 512093 - Last-sent message visually duplicated after pasting and sending an image
Summary: Last-sent message visually duplicated after pasting and sending an image
Status: REPORTED
Alias: None
Product: NeoChat
Classification: Applications
Component: General (other bugs)
Version First Reported In: git master
Platform: Flatpak Linux
: NOR normal
Target Milestone: ---
Assignee: Tobias Fella
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-11-14 18:39 UTC by Nate Graham
Modified: 2025-11-15 09:57 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments
Phantom duplicate message (244.35 KB, image/png)
2025-11-14 18:39 UTC, Nate Graham
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Nate Graham 2025-11-14 18:39:42 UTC
Created attachment 186792 [details]
Phantom duplicate message

STEPS TO REPRODUCE
0. Be using NeoChat's nightly Flatpak build (not sure if this makes a difference, but mentioning it anyway)
1. Take a screenshot with Spectacle and copy it to the clipboard
2. Switch to an open NeoChat window
3. In NeoChat, switch to "KDE Contributors' Chat" room
4. Type "lol somewhat cursed stacking" and press enter
5. Ctrl+V to paste the image and press Enter to send it


OBSERVED RESULT
"lol somewhat cursed stacking" shows up in the timeline twice! See attached screenshot.

The message wasn't actually sent twice, and if I switch to another room and back, the duplicate disappears.


SOFTWARE/OS VERSIONS
Operating System: KDE Linux 2025-11-14
KDE Plasma Version: 6.5.80
KDE Frameworks Version: 6.20.0
Qt Version: 6.10.0
Kernel Version: 6.17.7-arch1-2 (64-bit)
Graphics Platform: Wayland
Processors: 16 × AMD Ryzen 7 7840U w/ Radeon™ 780M Graphics
Memory: 17 GB of RAM (16.0 GB usable)
Graphics Processor: AMD Radeon 780M Graphics
Comment 1 Tobias Fella 2025-11-15 09:57:49 UTC
I've seen problems like that before, but never had it really reproducible. It's most likely something wrong witht the beginInsertRows/endInsertRows etc. calls in the timeline's model