The FeedReader message widget already offered "Mark all as read"
(toolbar button + context menu) but had no way to mark every visible
message as unread again. Add the symmetric "Mark all as unread" entry
to the message context menu.
Factor the shared iterate-over-visible-items logic out of
markAllAsReadMsg() into setAllMsgAsReadUnread(bool read); the read and
unread slots now just call it. Like the existing "mark all as read", the
action honours the current filter (acts on non-hidden rows only) and
goes through the existing per-message setMessageRead() path, so no
backend change is required.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Reply to G10h4ck's second review pass on the CMake migration PR.
- FeedReader: revert the waitForToken interface->helper rename. libretroshare
defines WIN32_LEAN_AND_MEAN PUBLIC, inherited by the plugin on Windows, so
<windows.h> no longer pulls in the "interface" macro; the rename is unneeded.
- retroshare-gui: name the GUI executable "retroshare-gui" on all platforms
(RUNTIME_OUTPUT_NAME); clarify that the TARGET define is the single-instance
socket name, not the executable name.
- retroshare-gui: gate -Wno-deprecated(-declarations) behind a new
RS_WARN_DEPRECATED option, mirroring libretroshare.
- retroshare-gui: document direct deps (sam3, X11/XScreenSaver idle detection,
_FILE_OFFSET_BITS) and the librnp-transitive deps (botan, json-c, z, bz2).
- root: move the global Windows UNICODE/_UNICODE definition and the GCC>=15
error downgrade out of the global scope into per-target settings (bitdht,
and the legacy C submodules), applied after the subdirectories are added.
- root: document why the sam3 target is defined once at the top level.
- deploy-macos.sh / deploy-windows.sh: keep them (deployment is a first-class
step), document why the macdeployqt/windeployqt glue is needed, and update
the bundle/executable names for the rename (retroshare-gui).
- Stop tracking the convenience Makefile and build_retroshare.sh (CMake builds
everything itself); they remain available locally as untracked files.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Reply to the build-system review on the CMake migration PR.
CMake:
- retroshare-gui: bump project version 0.6.6 -> 0.6.7; restore
CMAKE_VERBOSE_MAKEFILE ON for development builds; reword
RS_USE_NATIVE_DIALOGS description without referring to qmake; document
why AUTOUIC is OFF and why the qmake_info.h shim exists.
- retroshare-gui: fix circles option name mismatch (if(RS_GXS_CIRCLES) ->
if(RS_GXSCIRCLES)) so RS_USE_CIRCLES is actually defined.
- VOIP, friendserver: drop OpenSSL (and ZLIB/BZip2 for friendserver) which
are not used directly and come transitively through libretroshare; keep
ws2_32 for the friendserver (direct Winsock use in network.cc) and drop
winmm/iphlpapi/mswsock.
- FeedReader: document OpenSSL as a direct dependency and the Windows-only
plugin link requirement.
- VOIP: document __STDC_CONSTANT_MACROS (required by the libav headers).
Source (kept, now with justifying comments; required to build cross-platform):
- p3FeedReader: parameter renamed interface -> helper ("interface" is a
reserved Windows SDK macro).
- PluginsPage, PluginManager, PluginManagerWidget, GxsGroupDialog: compile
fixes exposed by the modular build.
Reverted unrelated cosmetic renames (back to master, dropped from the PR):
- MessageComposer.cpp (grp2), RsNetUtil.cpp (lst2).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>