280e51f53 restricted the dataChanged() refresh to the affected post unless more than 5 messages changed, in which case it refreshes the whole view. But changed_msgs counts message ids, and a post carries one id per stored version of itself, all sharing one read status: marking a single post read or unread on a post edited 46 times queued 47 ids and triggered the whole-model refresh. Measured on a 8259 post forum: one click, one row repainted, 1072 ms of frozen GUI in the dataChanged() handling; with this fix the same click costs about 1 ms. Count the changed rows separately and size the refresh on that. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .github/workflows | ||
| .reuse | ||
| build_scripts | ||
| data | ||
| jsonapi-generator | ||
| libbitdht@4355ea96b2 | ||
| libretroshare@cafaaa1964 | ||
| LICENSES | ||
| openpgpsdk@40db9d6bfe | ||
| plugins | ||
| retroshare-friendserver | ||
| retroshare-gui | ||
| retroshare-service | ||
| retroshare-webui@a28d77fe9a | ||
| supportlibs | ||
| tests | ||
| .gitignore | ||
| .gitlab-ci.yml | ||
| .gitmodules | ||
| .travis.yml | ||
| BUILD-cmake.md | ||
| CMakeLists.txt | ||
| COPYING | ||
| README.md | ||
| retroshare.pri | ||
| RetroShare.pro | ||
RetroShare
RetroShare is a decentralized, private, secure, cross-platform, communication toolkit. RetroShare provides file sharing, chat, messages, forums, channels, boards and more.
Get the source
Clone this repository, enter the directory and then get the submodules with the following command
git submodule update --init --remote --force libbitdht/ libretroshare/ openpgpsdk/
Compilation
Short of comprehensive and updated documentation on how to build RetroShare (for the many supported platforms it runs on), scripts and recipes are provided in the aim of creating packages for the supported platforms (and more) in the build_scripts directory of this repository.
Compilation on Windows
Follow this file : WindowsMSys2_InstallGuide
With QtCreator : Windows-QtCreator-InstallGuide
Compilation on MacOSX
Follow this file : MacOS_X_InstallGuide
Compilation on Linux
Follow this file : Linux_InstallGuide
Releases
Latest release here
Other Builds RetroShare Downloads